static int Cps2LoadSplit(unsigned char* Tile, int nNum, int nShift) { unsigned char *Rom = NULL; int nRomLen = 0; unsigned char *pt, *pr; LoadUpSplit(&Rom, &nRomLen, nNum); if (Rom == NULL) { return 1; } // Go through each section pt = Tile; pr = Rom; for (int b = 0; b < nRomLen >> 19; b++) { Cps2Load100000(pt, pr, nShift); pt += 0x100000; Cps2Load100000(pt, pr + 2, nShift); pt += 0x100000; pr += 0x80000; } free(Rom); return 0; }
static INT32 Cps2LoadSplit(UINT8* Tile, INT32 nNum, INT32 nShift, INT32 nNumRomsGroup) { UINT8 *Rom = NULL; INT32 nRomLen = 0; UINT8 *pt, *pr; LoadUpSplit(&Rom, &nRomLen, nNum, nNumRomsGroup); if (Rom == NULL) { return 1; } // Go through each section pt = Tile; pr = Rom; for (INT32 b = 0; b < nRomLen >> 19; b++) { Cps2Load100000(pt, pr, nShift); pt += 0x100000; Cps2Load100000(pt, pr + 2, nShift); pt += 0x100000; pr += 0x80000; } BurnFree(Rom); return 0; }