• Welcome to Valhalla Legends Archive.
 

need help porting to vb

Started by Killa, December 06, 2003, 11:39 AM

Previous topic - Next topic

Killa

i lack expierence in C and i would like this function in vb so if anyone could help me port it id appreciate it or if somone already has if they could post it.


//----------------------------------------------------------------------
// Packet Decompression Tables
//----------------------------------------------------------------------

unsigned int CharIndex[] = {
  0x0247, 0x0236, 0x0225, 0x0214, 0x0203, 0x01F2, 0x01E1, 0x01D0,
  0x01BF, 0x01AE, 0x019D, 0x018C, 0x017B, 0x016A, 0x0161, 0x0158,
  0x014F, 0x0146, 0x013D, 0x0134, 0x012B, 0x0122, 0x0119, 0x0110,
  0x0107, 0x00FE, 0x00F5, 0x00EC, 0x00E3, 0x00DA, 0x00D1, 0x00C8,
  0x00BF, 0x00B6, 0x00AD, 0x00A8, 0x00A3, 0x009E, 0x0099, 0x0094,
  0x008F, 0x008A, 0x0085, 0x0080, 0x007B, 0x0076, 0x0071, 0x006C,
  0x0069, 0x0066, 0x0063, 0x0060, 0x005D, 0x005A, 0x0057, 0x0054,
  0x0051, 0x004E, 0x004B, 0x0048, 0x0045, 0x0042, 0x003F, 0x003F,
  0x003C, 0x003C, 0x0039, 0x0039, 0x0036, 0x0036, 0x0033, 0x0033,
  0x0030, 0x0030, 0x002D, 0x002D, 0x002A, 0x002A, 0x0027, 0x0027,
  0x0024, 0x0024, 0x0021, 0x0021, 0x001E, 0x001E, 0x001B, 0x001B,
  0x0018, 0x0018, 0x0015, 0x0015, 0x0012, 0x0012, 0x0012, 0x0012,
  0x000F, 0x000F, 0x000F, 0x000F, 0x000C, 0x000C, 0x000C, 0x000C,
  0x0009, 0x0009, 0x0009, 0x0009, 0x0006, 0x0006, 0x0006, 0x0006,
  0x0003, 0x0003, 0x0003, 0x0003, 0x0003, 0x0003, 0x0003, 0x0003,
  0x0003, 0x0003, 0x0003, 0x0003, 0x0003, 0x0003, 0x0003, 0x0003,
  0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
  0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
  0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
  0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
  0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
  0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
  0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
  0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
  0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
  0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
  0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
  0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
  0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
  0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
  0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
  0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000
};


unsigned char CharTable[] = {
  0x00,0x00,0x01,0x00,0x01,0x04,0x00,0xFF,0x06,0x00,0x14,0x06,
  0x00,0x13,0x06,0x00,0x05,0x06,0x00,0x02,0x06,0x00,0x80,0x07,
  0x00,0x6D,0x07,0x00,0x69,0x07,0x00,0x68,0x07,0x00,0x67,0x07,
  0x00,0x1E,0x07,0x00,0x15,0x07,0x00,0x12,0x07,0x00,0x0D,0x07,
  0x00,0x0A,0x07,0x00,0x08,0x07,0x00,0x07,0x07,0x00,0x06,0x07,
  0x00,0x04,0x07,0x00,0x03,0x07,0x00,0x6C,0x08,0x00,0x51,0x08,
  0x00,0x20,0x08,0x00,0x1F,0x08,0x00,0x1D,0x08,0x00,0x18,0x08,
  0x00,0x17,0x08,0x00,0x16,0x08,0x00,0x11,0x08,0x00,0x10,0x08,
  0x00,0x0F,0x08,0x00,0x0C,0x08,0x00,0x0B,0x08,0x00,0x09,0x08,
  0x01,0x96,0x09,0x97,0x09,0x01,0x90,0x09,0x95,0x09,0x01,0x64,
  0x09,0x6B,0x09,0x01,0x62,0x09,0x63,0x09,0x01,0x56,0x09,0x58,
  0x09,0x01,0x52,0x09,0x55,0x09,0x01,0x4D,0x09,0x50,0x09,0x01,
  0x45,0x09,0x4C,0x09,0x01,0x40,0x09,0x43,0x09,0x01,0x31,0x09,
  0x3B,0x09,0x01,0x28,0x09,0x30,0x09,0x01,0x1A,0x09,0x25,0x09,
  0x01,0x0E,0x09,0x19,0x09,0x02,0xE2,0x0A,0xE8,0x0A,0xF0,0x0A,
  0xF8,0x0A,0x02,0xC0,0x0A,0xC2,0x0A,0xCE,0x0A,0xE0,0x0A,0x02,
  0xA0,0x0A,0xA2,0x0A,0xB0,0x0A,0xB8,0x0A,0x02,0x8A,0x0A,0x8F,
  0x0A,0x93,0x0A,0x98,0x0A,0x02,0x81,0x0A,0x82,0x0A,0x83,0x0A,
  0x89,0x0A,0x02,0x7C,0x0A,0x7D,0x0A,0x7E,0x0A,0x7F,0x0A,0x02,
  0x77,0x0A,0x78,0x0A,0x79,0x0A,0x7A,0x0A,0x02,0x73,0x0A,0x74,
  0x0A,0x75,0x0A,0x76,0x0A,0x02,0x6E,0x0A,0x6F,0x0A,0x70,0x0A,
  0x72,0x0A,0x02,0x61,0x0A,0x65,0x0A,0x66,0x0A,0x6A,0x0A,0x02,
  0x5D,0x0A,0x5E,0x0A,0x5F,0x0A,0x60,0x0A,0x02,0x57,0x0A,0x59,
  0x0A,0x5A,0x0A,0x5B,0x0A,0x02,0x4A,0x0A,0x4B,0x0A,0x4E,0x0A,
  0x53,0x0A,0x02,0x46,0x0A,0x47,0x0A,0x48,0x0A,0x49,0x0A,0x02,
  0x3F,0x0A,0x41,0x0A,0x42,0x0A,0x44,0x0A,0x02,0x3A,0x0A,0x3C,
  0x0A,0x3D,0x0A,0x3E,0x0A,0x02,0x36,0x0A,0x37,0x0A,0x38,0x0A,
  0x39,0x0A,0x02,0x32,0x0A,0x33,0x0A,0x34,0x0A,0x35,0x0A,0x02,
  0x2B,0x0A,0x2C,0x0A,0x2D,0x0A,0x2E,0x0A,0x02,0x26,0x0A,0x27,
  0x0A,0x29,0x0A,0x2A,0x0A,0x02,0x21,0x0A,0x22,0x0A,0x23,0x0A,
  0x24,0x0A,0x03,0xFB,0x0B,0xFC,0x0B,0xFD,0x0B,0xFE,0x0B,0x1B,
  0x0A,0x1B,0x0A,0x1C,0x0A,0x1C,0x0A,0x03,0xF2,0x0B,0xF3,0x0B,
  0xF4,0x0B,0xF5,0x0B,0xF6,0x0B,0xF7,0x0B,0xF9,0x0B,0xFA,0x0B,
  0x03,0xE9,0x0B,0xEA,0x0B,0xEB,0x0B,0xEC,0x0B,0xED,0x0B,0xEE,
  0x0B,0xEF,0x0B,0xF1,0x0B,0x03,0xDE,0x0B,0xDF,0x0B,0xE1,0x0B,
  0xE3,0x0B,0xE4,0x0B,0xE5,0x0B,0xE6,0x0B,0xE7,0x0B,0x03,0xD6,
  0x0B,0xD7,0x0B,0xD8,0x0B,0xD9,0x0B,0xDA,0x0B,0xDB,0x0B,0xDC,
  0x0B,0xDD,0x0B,0x03,0xCD,0x0B,0xCF,0x0B,0xD0,0x0B,0xD1,0x0B,
  0xD2,0x0B,0xD3,0x0B,0xD4,0x0B,0xD5,0x0B,0x03,0xC5,0x0B,0xC6,
  0x0B,0xC7,0x0B,0xC8,0x0B,0xC9,0x0B,0xCA,0x0B,0xCB,0x0B,0xCC,
  0x0B,0x03,0xBB,0x0B,0xBC,0x0B,0xBD,0x0B,0xBE,0x0B,0xBF,0x0B,
  0xC1,0x0B,0xC3,0x0B,0xC4,0x0B,0x03,0xB2,0x0B,0xB3,0x0B,0xB4,
  0x0B,0xB5,0x0B,0xB6,0x0B,0xB7,0x0B,0xB9,0x0B,0xBA,0x0B,0x03,
  0xA9,0x0B,0xAA,0x0B,0xAB,0x0B,0xAC,0x0B,0xAD,0x0B,0xAE,0x0B,
  0xAF,0x0B,0xB1,0x0B,0x03,0x9F,0x0B,0xA1,0x0B,0xA3,0x0B,0xA4,
  0x0B,0xA5,0x0B,0xA6,0x0B,0xA7,0x0B,0xA8,0x0B,0x03,0x92,0x0B,
  0x94,0x0B,0x99,0x0B,0x9A,0x0B,0x9B,0x0B,0x9C,0x0B,0x9D,0x0B,
  0x9E,0x0B,0x03,0x86,0x0B,0x87,0x0B,0x88,0x0B,0x8B,0x0B,0x8C,
  0x0B,0x8D,0x0B,0x8E,0x0B,0x91,0x0B,0x03,0x2F,0x0B,0x4F,0x0B,
  0x54,0x0B,0x5C,0x0B,0x71,0x0B,0x7B,0x0B,0x84,0x0B,0x85,0x0B
};

unsigned int BitMasks[] = {
  0x0000,0x0001,0x0003,0x0007,0x000F,0x001F,0x003F,0x007F,
  0x00FF,0x01FF,0x03FF,0x07FF,0x0FFF,0x1FFF,0x3FFF,0x7FFF
};

//----------------------------------------------------------------------
// GamePacketSize
//   Calculates the size of a compressed game packet.
//  
// data: [in] pointer to received packet
// size: [out] pointer to size
// returns: the offset to the data.
//----------------------------------------------------------------------

unsigned char *GamePacketSize(unsigned char *data, unsigned int *size,
                            unsigned int *offset)
{
  unsigned int a;

  if (data
< 0xF0) {
      *size = data
- 1;
      *offset = 1;
      return &data[1];
  }

  a = (data
& 0xF) << 8;
  *size = a + data[1] - 2;
  *offset = 2;
  return &data[2];
}

//----------------------------------------------------------------------
// GamePacketDecode
//   Decompress a d2gs packet into data.
//   Note: packets come in clumps. A single compressed packet may have
//   several game packets, and its up to you to figure it out.
//
// indata: [in] compressed packet (without size byte)
// insize: [in] length of indata
// outdata: [out] output buffer
// outmax: [in] size of output buffer
// outsize: [out] location to store size of decoded data
// returns: 1 on successf decode, 0 if not enough room
//----------------------------------------------------------------------

int GamePacketDecode(unsigned char *indata, unsigned int insize,
                   unsigned char *outdata, unsigned int outmax,
                   unsigned int *outsize)
{
  unsigned int a, b, c, d;
  unsigned int maxcnt, index, cnt;
  unsigned char *outptr, *inptr;
  int size;

  b = 0;

  size = insize;
  inptr = indata;

  maxcnt = outmax;
  outptr = outdata;
  cnt = 0x20;

  while (1) {

      if (cnt >= 0x8) {
          while (size > 0 && cnt >= 8) {
              cnt -= 0x8;
              size--;
              a = *inptr++ << cnt;
              b |= a;
          };
      }

      index = CharIndex[b >> 0x18];
      a = CharTable[index];
      d = (b >> (0x18 - a)) & BitMasks[a];
      c = CharTable[index + 2*d + 2];

      cnt += c;
      if (cnt > 0x20) {
          *outsize = outmax - maxcnt;
          return 1;
      }

      if (maxcnt-- == 0)
          return 0;

      a = CharTable[index + 2*d + 1];
      *outptr++ = (unsigned char)a;

      b <<= (c & 0xFF);
  }

  assert(0);
  return 0;
}


warz

Make a .dll in C, and just use that? No porting needed

Grok

If you're going to post someone else's work, give credit to the original author.

Banana fanna fo fanna

I would...but...I'm not typing all that.

iago

Sure, let me just spend my entire morning banging that out in VB! haha but seriously, it would probably take you less time to learn C++ than for me to convert that.
This'll make an interesting test for broken AV:
QuoteX5O!P%@AP[4\PZX54(P^)7CC)7}$EICAR-STANDARD-ANTIVIRUS-TEST-FILE!$H+H*


Adron

#5
I don't think it'd take that long to port it. Maybe 1-5 hours work? What's your hourly rate?

Edit:

It sounds like boring work and nothing I really want to do, but send me this and I'll get right on porting that thing ;)

TheMinistered

Adron, how do you plan on doing the bitwise shifts without a c++ dll? in pure vb? haha?

Killa

when porting it what exactly should i do with these huge tables?



unsigned int CharIndex[] = {
 0x0247, 0x0236, 0x0225, 0x0214, 0x0203, 0x01F2, 0x01E1, 0x01D0,
 0x01BF, 0x01AE, 0x019D, 0x018C, 0x017B, 0x016A, 0x0161, 0x0158,
 0x014F, 0x0146, 0x013D, 0x0134, 0x012B, 0x0122, 0x0119, 0x0110,
 0x0107, 0x00FE, 0x00F5, 0x00EC, 0x00E3, 0x00DA, 0x00D1, 0x00C8,
 0x00BF, 0x00B6, 0x00AD, 0x00A8, 0x00A3, 0x009E, 0x0099, 0x0094,
 0x008F, 0x008A, 0x0085, 0x0080, 0x007B, 0x0076, 0x0071, 0x006C,
 0x0069, 0x0066, 0x0063, 0x0060, 0x005D, 0x005A, 0x0057, 0x0054,
 0x0051, 0x004E, 0x004B, 0x0048, 0x0045, 0x0042, 0x003F, 0x003F,
 0x003C, 0x003C, 0x0039, 0x0039, 0x0036, 0x0036, 0x0033, 0x0033,
 0x0030, 0x0030, 0x002D, 0x002D, 0x002A, 0x002A, 0x0027, 0x0027,
 0x0024, 0x0024, 0x0021, 0x0021, 0x001E, 0x001E, 0x001B, 0x001B,
 0x0018, 0x0018, 0x0015, 0x0015, 0x0012, 0x0012, 0x0012, 0x0012,
 0x000F, 0x000F, 0x000F, 0x000F, 0x000C, 0x000C, 0x000C, 0x000C,
 0x0009, 0x0009, 0x0009, 0x0009, 0x0006, 0x0006, 0x0006, 0x0006,
 0x0003, 0x0003, 0x0003, 0x0003, 0x0003, 0x0003, 0x0003, 0x0003,
 0x0003, 0x0003, 0x0003, 0x0003, 0x0003, 0x0003, 0x0003, 0x0003,
 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000
};


unsigned char CharTable[] = {
 0x00,0x00,0x01,0x00,0x01,0x04,0x00,0xFF,0x06,0x00,0x14,0x06,
 0x00,0x13,0x06,0x00,0x05,0x06,0x00,0x02,0x06,0x00,0x80,0x07,
 0x00,0x6D,0x07,0x00,0x69,0x07,0x00,0x68,0x07,0x00,0x67,0x07,
 0x00,0x1E,0x07,0x00,0x15,0x07,0x00,0x12,0x07,0x00,0x0D,0x07,
 0x00,0x0A,0x07,0x00,0x08,0x07,0x00,0x07,0x07,0x00,0x06,0x07,
 0x00,0x04,0x07,0x00,0x03,0x07,0x00,0x6C,0x08,0x00,0x51,0x08,
 0x00,0x20,0x08,0x00,0x1F,0x08,0x00,0x1D,0x08,0x00,0x18,0x08,
 0x00,0x17,0x08,0x00,0x16,0x08,0x00,0x11,0x08,0x00,0x10,0x08,
 0x00,0x0F,0x08,0x00,0x0C,0x08,0x00,0x0B,0x08,0x00,0x09,0x08,
 0x01,0x96,0x09,0x97,0x09,0x01,0x90,0x09,0x95,0x09,0x01,0x64,
 0x09,0x6B,0x09,0x01,0x62,0x09,0x63,0x09,0x01,0x56,0x09,0x58,
 0x09,0x01,0x52,0x09,0x55,0x09,0x01,0x4D,0x09,0x50,0x09,0x01,
 0x45,0x09,0x4C,0x09,0x01,0x40,0x09,0x43,0x09,0x01,0x31,0x09,
 0x3B,0x09,0x01,0x28,0x09,0x30,0x09,0x01,0x1A,0x09,0x25,0x09,
 0x01,0x0E,0x09,0x19,0x09,0x02,0xE2,0x0A,0xE8,0x0A,0xF0,0x0A,
 0xF8,0x0A,0x02,0xC0,0x0A,0xC2,0x0A,0xCE,0x0A,0xE0,0x0A,0x02,
 0xA0,0x0A,0xA2,0x0A,0xB0,0x0A,0xB8,0x0A,0x02,0x8A,0x0A,0x8F,
 0x0A,0x93,0x0A,0x98,0x0A,0x02,0x81,0x0A,0x82,0x0A,0x83,0x0A,
 0x89,0x0A,0x02,0x7C,0x0A,0x7D,0x0A,0x7E,0x0A,0x7F,0x0A,0x02,
 0x77,0x0A,0x78,0x0A,0x79,0x0A,0x7A,0x0A,0x02,0x73,0x0A,0x74,
 0x0A,0x75,0x0A,0x76,0x0A,0x02,0x6E,0x0A,0x6F,0x0A,0x70,0x0A,
 0x72,0x0A,0x02,0x61,0x0A,0x65,0x0A,0x66,0x0A,0x6A,0x0A,0x02,
 0x5D,0x0A,0x5E,0x0A,0x5F,0x0A,0x60,0x0A,0x02,0x57,0x0A,0x59,
 0x0A,0x5A,0x0A,0x5B,0x0A,0x02,0x4A,0x0A,0x4B,0x0A,0x4E,0x0A,
 0x53,0x0A,0x02,0x46,0x0A,0x47,0x0A,0x48,0x0A,0x49,0x0A,0x02,
 0x3F,0x0A,0x41,0x0A,0x42,0x0A,0x44,0x0A,0x02,0x3A,0x0A,0x3C,
 0x0A,0x3D,0x0A,0x3E,0x0A,0x02,0x36,0x0A,0x37,0x0A,0x38,0x0A,
 0x39,0x0A,0x02,0x32,0x0A,0x33,0x0A,0x34,0x0A,0x35,0x0A,0x02,
 0x2B,0x0A,0x2C,0x0A,0x2D,0x0A,0x2E,0x0A,0x02,0x26,0x0A,0x27,
 0x0A,0x29,0x0A,0x2A,0x0A,0x02,0x21,0x0A,0x22,0x0A,0x23,0x0A,
 0x24,0x0A,0x03,0xFB,0x0B,0xFC,0x0B,0xFD,0x0B,0xFE,0x0B,0x1B,
 0x0A,0x1B,0x0A,0x1C,0x0A,0x1C,0x0A,0x03,0xF2,0x0B,0xF3,0x0B,
 0xF4,0x0B,0xF5,0x0B,0xF6,0x0B,0xF7,0x0B,0xF9,0x0B,0xFA,0x0B,
 0x03,0xE9,0x0B,0xEA,0x0B,0xEB,0x0B,0xEC,0x0B,0xED,0x0B,0xEE,
 0x0B,0xEF,0x0B,0xF1,0x0B,0x03,0xDE,0x0B,0xDF,0x0B,0xE1,0x0B,
 0xE3,0x0B,0xE4,0x0B,0xE5,0x0B,0xE6,0x0B,0xE7,0x0B,0x03,0xD6,
 0x0B,0xD7,0x0B,0xD8,0x0B,0xD9,0x0B,0xDA,0x0B,0xDB,0x0B,0xDC,
 0x0B,0xDD,0x0B,0x03,0xCD,0x0B,0xCF,0x0B,0xD0,0x0B,0xD1,0x0B,
 0xD2,0x0B,0xD3,0x0B,0xD4,0x0B,0xD5,0x0B,0x03,0xC5,0x0B,0xC6,
 0x0B,0xC7,0x0B,0xC8,0x0B,0xC9,0x0B,0xCA,0x0B,0xCB,0x0B,0xCC,
 0x0B,0x03,0xBB,0x0B,0xBC,0x0B,0xBD,0x0B,0xBE,0x0B,0xBF,0x0B,
 0xC1,0x0B,0xC3,0x0B,0xC4,0x0B,0x03,0xB2,0x0B,0xB3,0x0B,0xB4,
 0x0B,0xB5,0x0B,0xB6,0x0B,0xB7,0x0B,0xB9,0x0B,0xBA,0x0B,0x03,
 0xA9,0x0B,0xAA,0x0B,0xAB,0x0B,0xAC,0x0B,0xAD,0x0B,0xAE,0x0B,
 0xAF,0x0B,0xB1,0x0B,0x03,0x9F,0x0B,0xA1,0x0B,0xA3,0x0B,0xA4,
 0x0B,0xA5,0x0B,0xA6,0x0B,0xA7,0x0B,0xA8,0x0B,0x03,0x92,0x0B,
 0x94,0x0B,0x99,0x0B,0x9A,0x0B,0x9B,0x0B,0x9C,0x0B,0x9D,0x0B,
 0x9E,0x0B,0x03,0x86,0x0B,0x87,0x0B,0x88,0x0B,0x8B,0x0B,0x8C,
 0x0B,0x8D,0x0B,0x8E,0x0B,0x91,0x0B,0x03,0x2F,0x0B,0x4F,0x0B,
 0x54,0x0B,0x5C,0x0B,0x71,0x0B,0x7B,0x0B,0x84,0x0B,0x85,0x0B
};

unsigned int BitMasks[] = {
 0x0000,0x0001,0x0003,0x0007,0x000F,0x001F,0x003F,0x007F,
 0x00FF,0x01FF,0x03FF,0x07FF,0x0FFF,0x1FFF,0x3FFF,0x7FFF
};



im unsure as to what i should change them into for them to function properly

Adron

Quote from: TheMinistered on December 07, 2003, 09:35 AM
Adron, how do you plan on doing the bitwise shifts without a c++ dll? in pure vb? haha?

Those aren't a problem. They won't be as good performance as if done in c++, but it'll work.

UserLoser.

Hmm


Private CharIndex(0 To 255) As Long
Private CharTable(0 To 599) As Long
Private BitMasks(0 To 15) As Long

Public Sub InitTables()
   BitMasks(0) = &H0
   BitMasks(1) = &H1
   BitMasks(2) = &H3
   BitMasks(3) = &H7
   BitMasks(4) = &HF
   BitMasks(5) = &H1F
   BitMasks(6) = &H3F
   BitMasks(7) = &H7F
   BitMasks(8) = &HFF
   BitMasks(9) = &H1FF
   BitMasks(10) = &H3FF
   BitMasks(11) = &H7FF
   BitMasks(12) = &HFFF
   BitMasks(13) = &H1FFF
   BitMasks(14) = &H3FFF
   BitMasks(15) = &H7FFF
   CharIndex(0) = &H247
   CharIndex(1) = &H236
   CharIndex(2) = &H225
   CharIndex(3) = &H214
   CharIndex(4) = &H203
   CharIndex(5) = &H1F2
   CharIndex(6) = &H1E1
   CharIndex(7) = &H1D0
   CharIndex(8) = &H1BF
   CharIndex(9) = &H1AE
   CharIndex(10) = &H19D
   CharIndex(11) = &H18C
   CharIndex(12) = &H17B
   CharIndex(13) = &H16A
   CharIndex(14) = &H161
   CharIndex(15) = &H158
   CharIndex(16) = &H14F
   CharIndex(17) = &H146
   CharIndex(18) = &H13D
   CharIndex(19) = &H134
   CharIndex(20) = &H12B
   CharIndex(21) = &H122
   CharIndex(22) = &H119
   CharIndex(23) = &H110
   CharIndex(24) = &H107
   CharIndex(25) = &HFE
   CharIndex(26) = &HF5
   CharIndex(27) = &HEC
   CharIndex(28) = &HE3
   CharIndex(29) = &HDA
   CharIndex(30) = &HD1
   CharIndex(31) = &HC8
   CharIndex(32) = &HBF
   CharIndex(33) = &HB6
   CharIndex(34) = &HAD
   CharIndex(35) = &HA8
   CharIndex(36) = &HA3
   CharIndex(37) = &H9E
   CharIndex(38) = &H99
   CharIndex(39) = &H94
   CharIndex(40) = &H8F
   CharIndex(41) = &H8A
   CharIndex(42) = &H85
   CharIndex(43) = &H80
   CharIndex(44) = &H7B
   CharIndex(45) = &H76
   CharIndex(46) = &H71
   CharIndex(47) = &H6C
   CharIndex(48) = &H69
   CharIndex(49) = &H66
   CharIndex(50) = &H63
   CharIndex(51) = &H60
   CharIndex(52) = &H5D
   CharIndex(53) = &H5A
   CharIndex(54) = &H57
   CharIndex(55) = &H54
   CharIndex(56) = &H51
   CharIndex(57) = &H4E
   CharIndex(58) = &H4B
   CharIndex(59) = &H48
   CharIndex(60) = &H45
   CharIndex(61) = &H42
   CharIndex(62) = &H3F
   CharIndex(63) = &H3F
   CharIndex(64) = &H3C
   CharIndex(65) = &H3C
   CharIndex(66) = &H39
   CharIndex(67) = &H39
   CharIndex(68) = &H36
   CharIndex(69) = &H36
   CharIndex(70) = &H33
   CharIndex(71) = &H33
   CharIndex(72) = &H30
   CharIndex(73) = &H30
   CharIndex(74) = &H2D
   CharIndex(75) = &H2D
   CharIndex(76) = &H2A
   CharIndex(77) = &H2A
   CharIndex(78) = &H27
   CharIndex(79) = &H27
   CharIndex(80) = &H24
   CharIndex(81) = &H24
   CharIndex(82) = &H21
   CharIndex(83) = &H21
   CharIndex(84) = &H1E
   CharIndex(85) = &H1E
   CharIndex(86) = &H1B
   CharIndex(87) = &H1B
   CharIndex(88) = &H18
   CharIndex(89) = &H18
   CharIndex(90) = &H15
   CharIndex(91) = &H15
   CharIndex(92) = &H12
   CharIndex(93) = &H12
   CharIndex(94) = &H12
   CharIndex(95) = &H12
   CharIndex(96) = &HF
   CharIndex(97) = &HF
   CharIndex(98) = &HF
   CharIndex(99) = &HF
   CharIndex(100) = &HC
   CharIndex(101) = &HC
   CharIndex(102) = &HC
   CharIndex(103) = &HC
   CharIndex(104) = &H9
   CharIndex(105) = &H9
   CharIndex(106) = &H9
   CharIndex(107) = &H9
   CharIndex(108) = &H6
   CharIndex(109) = &H6
   CharIndex(110) = &H6
   CharIndex(111) = &H6
   CharIndex(112) = &H3
   CharIndex(113) = &H3
   CharIndex(114) = &H3
   CharIndex(115) = &H3
   CharIndex(116) = &H3
   CharIndex(117) = &H3
   CharIndex(118) = &H3
   CharIndex(119) = &H3
   CharIndex(120) = &H3
   CharIndex(121) = &H3
   CharIndex(122) = &H3
   CharIndex(123) = &H3
   CharIndex(124) = &H3
   CharIndex(125) = &H3
   CharIndex(126) = &H3
   CharIndex(127) = &H3
   CharIndex(128) = &H0
   CharIndex(129) = &H0
   CharIndex(130) = &H0
   CharIndex(131) = &H0
   CharIndex(132) = &H0
   CharIndex(133) = &H0
   CharIndex(134) = &H0
   CharIndex(135) = &H0
   CharIndex(136) = &H0
   CharIndex(137) = &H0
   CharIndex(138) = &H0
   CharIndex(139) = &H0
   CharIndex(140) = &H0
   CharIndex(141) = &H0
   CharIndex(142) = &H0
   CharIndex(143) = &H0
   CharIndex(144) = &H0
   CharIndex(145) = &H0
   CharIndex(146) = &H0
   CharIndex(147) = &H0
   CharIndex(148) = &H0
   CharIndex(149) = &H0
   CharIndex(150) = &H0
   CharIndex(151) = &H0
   CharIndex(152) = &H0
   CharIndex(153) = &H0
   CharIndex(154) = &H0
   CharIndex(155) = &H0
   CharIndex(156) = &H0
   CharIndex(157) = &H0
   CharIndex(158) = &H0
   CharIndex(159) = &H0
   CharIndex(160) = &H0
   CharIndex(161) = &H0
   CharIndex(162) = &H0
   CharIndex(163) = &H0
   CharIndex(164) = &H0
   CharIndex(165) = &H0
   CharIndex(166) = &H0
   CharIndex(167) = &H0
   CharIndex(168) = &H0
   CharIndex(169) = &H0
   CharIndex(170) = &H0
   CharIndex(171) = &H0
   CharIndex(172) = &H0
   CharIndex(173) = &H0
   CharIndex(174) = &H0
   CharIndex(175) = &H0
   CharIndex(176) = &H0
   CharIndex(177) = &H0
   CharIndex(178) = &H0
   CharIndex(179) = &H0
   CharIndex(180) = &H0
   CharIndex(181) = &H0
   CharIndex(182) = &H0
   CharIndex(183) = &H0
   CharIndex(184) = &H0
   CharIndex(185) = &H0
   CharIndex(186) = &H0
   CharIndex(187) = &H0
   CharIndex(188) = &H0
   CharIndex(189) = &H0
   CharIndex(190) = &H0
   CharIndex(191) = &H0
   CharIndex(192) = &H0
   CharIndex(193) = &H0
   CharIndex(194) = &H0
   CharIndex(195) = &H0
   CharIndex(196) = &H0
   CharIndex(197) = &H0
   CharIndex(198) = &H0
   CharIndex(199) = &H0
   CharIndex(200) = &H0
   CharIndex(201) = &H0
   CharIndex(202) = &H0
   CharIndex(203) = &H0
   CharIndex(204) = &H0
   CharIndex(205) = &H0
   CharIndex(206) = &H0
   CharIndex(207) = &H0
   CharIndex(208) = &H0
   CharIndex(209) = &H0
   CharIndex(210) = &H0
   CharIndex(211) = &H0
   CharIndex(212) = &H0
   CharIndex(213) = &H0
   CharIndex(214) = &H0
   CharIndex(215) = &H0
   CharIndex(216) = &H0
   CharIndex(217) = &H0
   CharIndex(218) = &H0
   CharIndex(219) = &H0
   CharIndex(220) = &H0
   CharIndex(221) = &H0
   CharIndex(222) = &H0
   CharIndex(223) = &H0
   CharIndex(224) = &H0
   CharIndex(225) = &H0
   CharIndex(226) = &H0
   CharIndex(227) = &H0
   CharIndex(228) = &H0
   CharIndex(229) = &H0
   CharIndex(230) = &H0
   CharIndex(231) = &H0
   CharIndex(232) = &H0
   CharIndex(233) = &H0
   CharIndex(234) = &H0
   CharIndex(235) = &H0
   CharIndex(236) = &H0
   CharIndex(237) = &H0
   CharIndex(238) = &H0
   CharIndex(239) = &H0
   CharIndex(240) = &H0
   CharIndex(241) = &H0
   CharIndex(242) = &H0
   CharIndex(243) = &H0
   CharIndex(244) = &H0
   CharIndex(245) = &H0
   CharIndex(246) = &H0
   CharIndex(247) = &H0
   CharIndex(248) = &H0
   CharIndex(249) = &H0
   CharIndex(250) = &H0
   CharIndex(251) = &H0
   CharIndex(252) = &H0
   CharIndex(253) = &H0
   CharIndex(254) = &H0
   CharIndex(255) = &H0
   CharTable(0) = &H0
   CharTable(1) = &H0
   CharTable(2) = &H1
   CharTable(3) = &H0
   CharTable(4) = &H1
   CharTable(5) = &H4
   CharTable(6) = &H0
   CharTable(7) = &HFF
   CharTable(8) = &H6
   CharTable(9) = &H0
   CharTable(10) = &H14
   CharTable(11) = &H6
   CharTable(12) = &H0
   CharTable(13) = &H13
   CharTable(14) = &H6
   CharTable(15) = &H0
   CharTable(16) = &H5
   CharTable(17) = &H6
   CharTable(18) = &H0
   CharTable(19) = &H2
   CharTable(20) = &H6
   CharTable(21) = &H0
   CharTable(22) = &H80
   CharTable(23) = &H7
   CharTable(24) = &H0
   CharTable(25) = &H6D
   CharTable(26) = &H7
   CharTable(27) = &H0
   CharTable(28) = &H69
   CharTable(29) = &H7
   CharTable(30) = &H0
   CharTable(31) = &H68
   CharTable(32) = &H7
   CharTable(33) = &H0
   CharTable(34) = &H67
   CharTable(35) = &H7
   CharTable(36) = &H0
   CharTable(37) = &H1E
   CharTable(38) = &H7
   CharTable(39) = &H0
   CharTable(40) = &H15
   CharTable(41) = &H7
   CharTable(42) = &H0
   CharTable(43) = &H12
   CharTable(44) = &H7
   CharTable(45) = &H0
   CharTable(46) = &HD
   CharTable(47) = &H7
   CharTable(48) = &H0
   CharTable(49) = &HA
   CharTable(50) = &H7
   CharTable(51) = &H0
   CharTable(52) = &H8
   CharTable(53) = &H7
   CharTable(54) = &H0
   CharTable(55) = &H7
   CharTable(56) = &H7
   CharTable(57) = &H0
   CharTable(58) = &H6
   CharTable(59) = &H7
   CharTable(60) = &H0
   CharTable(61) = &H4
   CharTable(62) = &H7
   CharTable(63) = &H0
   CharTable(64) = &H3
   CharTable(65) = &H7
   CharTable(66) = &H0
   CharTable(67) = &H6C
   CharTable(68) = &H8
   CharTable(69) = &H0
   CharTable(70) = &H51
   CharTable(71) = &H8
   CharTable(72) = &H0
   CharTable(73) = &H20
   CharTable(74) = &H8
   CharTable(75) = &H0
   CharTable(76) = &H1F
   CharTable(77) = &H8
   CharTable(78) = &H0
   CharTable(79) = &H1D
   CharTable(80) = &H8
   CharTable(81) = &H0
   CharTable(82) = &H18
   CharTable(83) = &H8
   CharTable(84) = &H0
   CharTable(85) = &H17
   CharTable(86) = &H8
   CharTable(87) = &H0
   CharTable(88) = &H16
   CharTable(89) = &H8
   CharTable(90) = &H0
   CharTable(91) = &H11
   CharTable(92) = &H8
   CharTable(93) = &H0
   CharTable(94) = &H10
   CharTable(95) = &H8
   CharTable(96) = &H0
   CharTable(97) = &HF
   CharTable(98) = &H8
   CharTable(99) = &H0
   CharTable(100) = &HC
   CharTable(101) = &H8
   CharTable(102) = &H0
   CharTable(103) = &HB
   CharTable(104) = &H8
   CharTable(105) = &H0
   CharTable(106) = &H9
   CharTable(107) = &H8
   CharTable(108) = &H1
   CharTable(109) = &H96
   CharTable(110) = &H9
   CharTable(111) = &H97
   CharTable(112) = &H9
   CharTable(113) = &H1
   CharTable(114) = &H90
   CharTable(115) = &H9
   CharTable(116) = &H95
   CharTable(117) = &H9
   CharTable(118) = &H1
   CharTable(119) = &H64
   CharTable(120) = &H9
   CharTable(121) = &H6B
   CharTable(122) = &H9
   CharTable(123) = &H1
   CharTable(124) = &H62
   CharTable(125) = &H9
   CharTable(126) = &H63
   CharTable(127) = &H9
   CharTable(128) = &H1
   CharTable(129) = &H56
   CharTable(130) = &H9
   CharTable(131) = &H58
   CharTable(132) = &H9
   CharTable(133) = &H1
   CharTable(134) = &H52
   CharTable(135) = &H9
   CharTable(136) = &H55
   CharTable(137) = &H9
   CharTable(138) = &H1
   CharTable(139) = &H4D
   CharTable(140) = &H9
   CharTable(141) = &H50
   CharTable(142) = &H9
   CharTable(143) = &H1
   CharTable(144) = &H45
   CharTable(145) = &H9
   CharTable(146) = &H4C
   CharTable(147) = &H9
   CharTable(148) = &H1
   CharTable(149) = &H40
   CharTable(150) = &H9
   CharTable(151) = &H43
   CharTable(152) = &H9
   CharTable(153) = &H1
   CharTable(154) = &H31
   CharTable(155) = &H9
   CharTable(156) = &H3B
   CharTable(157) = &H9
   CharTable(158) = &H1
   CharTable(159) = &H28
   CharTable(160) = &H9
   CharTable(161) = &H30
   CharTable(162) = &H9
   CharTable(163) = &H1
   CharTable(164) = &H1A
   CharTable(165) = &H9
   CharTable(166) = &H25
   CharTable(167) = &H9
   CharTable(168) = &H1
   CharTable(169) = &HE
   CharTable(170) = &H9
   CharTable(171) = &H19
   CharTable(172) = &H9
   CharTable(173) = &H2
   CharTable(174) = &HE2
   CharTable(175) = &HA
   CharTable(176) = &HE8
   CharTable(177) = &HA
   CharTable(178) = &HF0
   CharTable(179) = &HA
   CharTable(180) = &HF8
   CharTable(181) = &HA
   CharTable(182) = &H2
   CharTable(183) = &HC0
   CharTable(184) = &HA
   CharTable(185) = &HC2
   CharTable(186) = &HA
   CharTable(187) = &HCE
   CharTable(188) = &HA
   CharTable(189) = &HE0
   CharTable(190) = &HA
   CharTable(191) = &H2
   CharTable(192) = &HA0
   CharTable(193) = &HA
   CharTable(194) = &HA2
   CharTable(195) = &HA
   CharTable(196) = &HB0
   CharTable(197) = &HA
   CharTable(198) = &HB8
   CharTable(199) = &HA
   CharTable(200) = &H2
   CharTable(201) = &H8A
   CharTable(202) = &HA
   CharTable(203) = &H8F
   CharTable(204) = &HA
   CharTable(205) = &H93
   CharTable(206) = &HA
   CharTable(207) = &H98
   CharTable(208) = &HA
   CharTable(209) = &H2
   CharTable(210) = &H81
   CharTable(211) = &HA
   CharTable(212) = &H82
   CharTable(213) = &HA
   CharTable(214) = &H83
   CharTable(215) = &HA
   CharTable(216) = &H89
   CharTable(217) = &HA
   CharTable(218) = &H2
   CharTable(219) = &H7C
   CharTable(220) = &HA
   CharTable(221) = &H7D
   CharTable(222) = &HA
   CharTable(223) = &H7E
   CharTable(224) = &HA
   CharTable(225) = &H7F
   CharTable(226) = &HA
   CharTable(227) = &H2
   CharTable(228) = &H77
   CharTable(229) = &HA
   CharTable(230) = &H78
   CharTable(231) = &HA
   CharTable(232) = &H79
   CharTable(233) = &HA
   CharTable(234) = &H7A
   CharTable(235) = &HA
   CharTable(236) = &H2
   CharTable(237) = &H73
   CharTable(238) = &HA
   CharTable(239) = &H74
   CharTable(240) = &HA
   CharTable(241) = &H75
   CharTable(242) = &HA
   CharTable(243) = &H76
   CharTable(244) = &HA
   CharTable(245) = &H2
   CharTable(246) = &H6E
   CharTable(247) = &HA
   CharTable(248) = &H6F
   CharTable(249) = &HA
   CharTable(250) = &H70
   CharTable(251) = &HA
   CharTable(252) = &H72
   CharTable(253) = &HA
   CharTable(254) = &H2
   CharTable(255) = &H61
   CharTable(256) = &HA
   CharTable(257) = &H65
   CharTable(258) = &HA
   CharTable(259) = &H66
   CharTable(260) = &HA
   CharTable(261) = &H6A
   CharTable(262) = &HA
   CharTable(263) = &H2
   CharTable(264) = &H5D
   CharTable(265) = &HA
   CharTable(266) = &H5E
   CharTable(267) = &HA
   CharTable(268) = &H5F
   CharTable(269) = &HA
   CharTable(270) = &H60
   CharTable(271) = &HA
   CharTable(272) = &H2
   CharTable(273) = &H57
   CharTable(274) = &HA
   CharTable(275) = &H59
   CharTable(276) = &HA
   CharTable(277) = &H5A
   CharTable(278) = &HA
   CharTable(279) = &H5B
   CharTable(280) = &HA
   CharTable(281) = &H2
   CharTable(282) = &H4A
   CharTable(283) = &HA
   CharTable(284) = &H4B
   CharTable(285) = &HA
   CharTable(286) = &H4E
   CharTable(287) = &HA
   CharTable(288) = &H53
   CharTable(289) = &HA
   CharTable(290) = &H2
   CharTable(291) = &H46
   CharTable(292) = &HA
   CharTable(293) = &H47
   CharTable(294) = &HA
   CharTable(295) = &H48
   CharTable(296) = &HA
   CharTable(297) = &H49
   CharTable(298) = &HA
   CharTable(299) = &H2
   CharTable(300) = &H3F
   CharTable(301) = &HA
   CharTable(302) = &H41
   CharTable(303) = &HA
   CharTable(304) = &H42
   CharTable(305) = &HA
   CharTable(306) = &H44
   CharTable(307) = &HA
   CharTable(308) = &H2
   CharTable(309) = &H3A
   CharTable(310) = &HA
   CharTable(311) = &H3C
   CharTable(312) = &HA
   CharTable(313) = &H3D
   CharTable(314) = &HA
   CharTable(315) = &H3E
   CharTable(316) = &HA
   CharTable(317) = &H2
   CharTable(318) = &H36
   CharTable(319) = &HA
   CharTable(320) = &H37
   CharTable(321) = &HA
   CharTable(322) = &H38
   CharTable(323) = &HA
   CharTable(324) = &H39
   CharTable(325) = &HA
   CharTable(326) = &H2
   CharTable(327) = &H32
   CharTable(328) = &HA
   CharTable(329) = &H33
   CharTable(330) = &HA
   CharTable(331) = &H34
   CharTable(332) = &HA
   CharTable(333) = &H35
   CharTable(334) = &HA
   CharTable(335) = &H2
   CharTable(336) = &H2B
   CharTable(337) = &HA
   CharTable(338) = &H2C
   CharTable(339) = &HA
   CharTable(340) = &H2D
   CharTable(341) = &HA
   CharTable(342) = &H2E
   CharTable(343) = &HA
   CharTable(344) = &H2
   CharTable(345) = &H26
   CharTable(346) = &HA
   CharTable(347) = &H27
   CharTable(348) = &HA
   CharTable(349) = &H29
   CharTable(350) = &HA
   CharTable(351) = &H2A
   CharTable(352) = &HA
   CharTable(353) = &H2
   CharTable(354) = &H21
   CharTable(355) = &HA
   CharTable(356) = &H22
   CharTable(357) = &HA
   CharTable(358) = &H23
   CharTable(359) = &HA
   CharTable(360) = &H24
   CharTable(361) = &HA
   CharTable(362) = &H3
   CharTable(363) = &HFB
   CharTable(364) = &HB
   CharTable(365) = &HFC
   CharTable(366) = &HB
   CharTable(367) = &HFD
   CharTable(368) = &HB
   CharTable(369) = &HFE
   CharTable(370) = &HB
   CharTable(371) = &H1B
   CharTable(372) = &HA
   CharTable(373) = &H1B
   CharTable(374) = &HA
   CharTable(375) = &H1C
   CharTable(376) = &HA
   CharTable(377) = &H1C
   CharTable(378) = &HA
   CharTable(379) = &H3
   CharTable(380) = &HF2
   CharTable(381) = &HB
   CharTable(382) = &HF3
   CharTable(383) = &HB
   CharTable(384) = &HF4
   CharTable(385) = &HB
   CharTable(386) = &HF5
   CharTable(387) = &HB
   CharTable(388) = &HF6
   CharTable(389) = &HB
   CharTable(390) = &HF7
   CharTable(391) = &HB
   CharTable(392) = &HF9
   CharTable(393) = &HB
   CharTable(394) = &HFA
   CharTable(395) = &HB
   CharTable(396) = &H3
   CharTable(397) = &HE9
   CharTable(398) = &HB
   CharTable(399) = &HEA
   CharTable(400) = &HB
   CharTable(401) = &HEB
   CharTable(402) = &HB
   CharTable(403) = &HEC
   CharTable(404) = &HB
   CharTable(405) = &HED
   CharTable(406) = &HB
   CharTable(407) = &HEE
   CharTable(408) = &HB
   CharTable(409) = &HEF
   CharTable(410) = &HB
   CharTable(411) = &HF1
   CharTable(412) = &HB
   CharTable(413) = &H3
   CharTable(414) = &HDE
   CharTable(415) = &HB
   CharTable(416) = &HDF
   CharTable(417) = &HB
   CharTable(418) = &HE1
   CharTable(419) = &HB
   CharTable(420) = &HE3
   CharTable(421) = &HB
   CharTable(422) = &HE4
   CharTable(423) = &HB
   CharTable(424) = &HE5
   CharTable(425) = &HB
   CharTable(426) = &HE6
   CharTable(427) = &HB
   CharTable(428) = &HE7
   CharTable(429) = &HB
   CharTable(430) = &H3
   CharTable(431) = &HD6
   CharTable(432) = &HB
   CharTable(433) = &HD7
   CharTable(434) = &HB
   CharTable(435) = &HD8
   CharTable(436) = &HB
   CharTable(437) = &HD9
   CharTable(438) = &HB
   CharTable(439) = &HDA
   CharTable(440) = &HB
   CharTable(441) = &HDB
   CharTable(442) = &HB
   CharTable(443) = &HDC
   CharTable(444) = &HB
   CharTable(445) = &HDD
   CharTable(446) = &HB
   CharTable(447) = &H3
   CharTable(448) = &HCD
   CharTable(449) = &HB
   CharTable(450) = &HCF
   CharTable(451) = &HB
   CharTable(452) = &HD0
   CharTable(453) = &HB
   CharTable(454) = &HD1
   CharTable(455) = &HB
   CharTable(456) = &HD2
   CharTable(457) = &HB
   CharTable(458) = &HD3
   CharTable(459) = &HB
   CharTable(460) = &HD4
   CharTable(461) = &HB
   CharTable(462) = &HD5
   CharTable(463) = &HB
   CharTable(464) = &H3
   CharTable(465) = &HC5
   CharTable(466) = &HB
   CharTable(467) = &HC6
   CharTable(468) = &HB
   CharTable(469) = &HC7
   CharTable(470) = &HB
   CharTable(471) = &HC8
   CharTable(472) = &HB
   CharTable(473) = &HC9
   CharTable(474) = &HB
   CharTable(475) = &HCA
   CharTable(476) = &HB
   CharTable(477) = &HCB
   CharTable(478) = &HB
   CharTable(479) = &HCC
   CharTable(480) = &HB
   CharTable(481) = &H3
   CharTable(482) = &HBB
   CharTable(483) = &HB
   CharTable(484) = &HBC
   CharTable(485) = &HB
   CharTable(486) = &HBD
   CharTable(487) = &HB
   CharTable(488) = &HBE
   CharTable(489) = &HB
   CharTable(490) = &HBF
   CharTable(491) = &HB
   CharTable(492) = &HC1
   CharTable(493) = &HB
   CharTable(494) = &HC3
   CharTable(495) = &HB
   CharTable(496) = &HC4
   CharTable(497) = &HB
   CharTable(498) = &H3
   CharTable(499) = &HB2
   CharTable(500) = &HB
   CharTable(501) = &HB3
   CharTable(502) = &HB
   CharTable(503) = &HB4
   CharTable(504) = &HB
   CharTable(505) = &HB5
   CharTable(506) = &HB
   CharTable(507) = &HB6
   CharTable(508) = &HB
   CharTable(509) = &HB7
   CharTable(510) = &HB
   CharTable(511) = &HB9
   CharTable(512) = &HB
   CharTable(513) = &HBA
   CharTable(514) = &HB
   CharTable(515) = &H3
   CharTable(516) = &HA9
   CharTable(517) = &HB
   CharTable(518) = &HAA
   CharTable(519) = &HB
   CharTable(520) = &HAB
   CharTable(521) = &HB
   CharTable(522) = &HAC
   CharTable(523) = &HB
   CharTable(524) = &HAD
   CharTable(525) = &HB
   CharTable(526) = &HAE
   CharTable(527) = &HB
   CharTable(528) = &HAF
   CharTable(529) = &HB
   CharTable(530) = &HB1
   CharTable(531) = &HB
   CharTable(532) = &H3
   CharTable(533) = &H9F
   CharTable(534) = &HB
   CharTable(535) = &HA1
   CharTable(536) = &HB
   CharTable(537) = &HA3
   CharTable(538) = &HB
   CharTable(539) = &HA4
   CharTable(540) = &HB
   CharTable(541) = &HA5
   CharTable(542) = &HB
   CharTable(543) = &HA6
   CharTable(544) = &HB
   CharTable(545) = &HA7
   CharTable(546) = &HB
   CharTable(547) = &HA8
   CharTable(548) = &HB
   CharTable(549) = &H3
   CharTable(550) = &H92
   CharTable(551) = &HB
   CharTable(552) = &H94
   CharTable(553) = &HB
   CharTable(554) = &H99
   CharTable(555) = &HB
   CharTable(556) = &H9A
   CharTable(557) = &HB
   CharTable(558) = &H9B
   CharTable(559) = &HB
   CharTable(560) = &H9C
   CharTable(561) = &HB
   CharTable(562) = &H9D
   CharTable(563) = &HB
   CharTable(564) = &H9E
   CharTable(565) = &HB
   CharTable(566) = &H3
   CharTable(567) = &H86
   CharTable(568) = &HB
   CharTable(569) = &H87
   CharTable(570) = &HB
   CharTable(571) = &H88
   CharTable(572) = &HB
   CharTable(573) = &H8B
   CharTable(574) = &HB
   CharTable(575) = &H8C
   CharTable(576) = &HB
   CharTable(577) = &H8D
   CharTable(578) = &HB
   CharTable(579) = &H8E
   CharTable(580) = &HB
   CharTable(581) = &H91
   CharTable(582) = &HB
   CharTable(583) = &H3
   CharTable(584) = &H2F
   CharTable(585) = &HB
   CharTable(586) = &H4F
   CharTable(587) = &HB
   CharTable(588) = &H54
   CharTable(589) = &HB
   CharTable(590) = &H5C
   CharTable(591) = &HB
   CharTable(592) = &H71
   CharTable(593) = &HB
   CharTable(594) = &H7B
   CharTable(595) = &HB
   CharTable(596) = &H84
   CharTable(597) = &HB
   CharTable(598) = &H85
   CharTable(599) = &HB
End Sub

iago

nonono!

You got the variable types all wrong.  Retype!
This'll make an interesting test for broken AV:
QuoteX5O!P%@AP[4\PZX54(P^)7CC)7}$EICAR-STANDARD-ANTIVIRUS-TEST-FILE!$H+H*


Spht

Userloser, I gave you a better way of doing that. Paste.

UserLoser.

Quote from: Spht on December 07, 2003, 05:17 PM
Userloser, I gave you a better way of doing that. Paste.

i don't have your better way of doing it anymore

Spht

Quote from: UserLoser. on December 08, 2003, 06:08 PM
Quote from: Spht on December 07, 2003, 05:17 PM
Userloser, I gave you a better way of doing that. Paste.

i don't have your better way of doing it anymore

Deleted what I gave you and decided to go with your total crap code instead?

Killa

can you post it spht? or do you not have it anymore or somthing