u16 data = (CPUReadByte(source++)<<8) | CPUReadByte(source++);
u16 data = CPUReadByte(source++) << 8; data |= CPUReadByte(source++);
void BIOS_LZ77UnCompWram(){#ifdef DEV_VERSION  if(systemVerbose & VERBOSE_SWI) {    log("LZ77UnCompWram: 0x%08x,0x%08x (VCOUNT=%d)\n", reg[0].I, reg[1].I,        VCOUNT);  }#endif    u32 source = reg[0].I;  u32 dest = reg[1].I;  u32 header = CPUReadMemory(source);  source += 4;  if(((source & 0xe000000) == 0) ||     ((source + ((header >> 8) & 0x1fffff)) & 0xe000000) == 0)    return;      int len = header >> 8;  while(len > 0) {    u8 d = CPUReadByte(source++);    if(d) {      for(int i = 0; i < 8; i++) {        if(d & 0x80) {          u16 data = (CPUReadByte(source++)<<8) | CPUReadByte(source++);          int length = (data >> 12) + 3;          int offset = (data & 0x0FFF);          u32 windowOffset = dest - offset - 1;          for(int i = 0; i < length; i++) {            CPUWriteByte(dest++, CPUReadByte(windowOffset++));            len--;            if(len == 0)              return;          }        } else {          CPUWriteByte(dest++, CPUReadByte(source++));          len--;          if(len == 0)            return;        }        d <<= 1;      }    } else {      for(int i = 0; i < 8; i++) {        CPUWriteByte(dest++, CPUReadByte(source++));        len--;        if(len == 0)          return;      }    }  }}