Photo Y2K / Real and Fake (V105)
static struct BurnRomInfo photoy2kRomDesc[] = {
{ "p0701_v105.u2", 0x200000, 0xfab142e0, 1 | BRF_PRG | BRF_ESS }, // 0 68K Code
{ "t0700.rom", 0x080000, 0x93943b4d, 2 | BRF_GRA }, // 1 Tile data
{ "a0700.l", 0x400000, 0x26a9ae9c, 3 | BRF_GRA }, // 2 Sprite Color Data
{ "a0700.h", 0x400000, 0x79bc1fc1, 3 | BRF_GRA }, // 3
{ "a0701.l", 0x400000, 0x23607f81, 3 | BRF_GRA }, // 4
{ "a0701.h", 0x400000, 0x5f2efd37, 3 | BRF_GRA }, // 5
{ "a0702.rom", 0x080000, 0x42239e1b, 3 | BRF_GRA }, // 6
{ "b0700.l", 0x400000, 0xaf096904, 4 | BRF_GRA }, // 7 Sprite Masks & Color Indexes
{ "b0700.h", 0x400000, 0x6d53de26, 4 | BRF_GRA }, // 8
{ "cgv101.rom", 0x020000, 0xda02ec3e, 4 | BRF_GRA }, // 9
{ "m0700.rom", 0x080000, 0xacc7afce, 5 | BRF_SND }, // 10 Samples
{ "igs027a_photoy2k_v100_china.asic", 0x004000, 0x1a0b68f6, 7 | BRF_PRG | BRF_ESS }, // 11 Internal ARM7 Rom
};
STDROMPICKEXT(photoy2k, photoy2k, pgm)
STD_ROM_FN(photoy2k)
int photoy2kInit()
{
pPgmInitCallback = pgm_decrypt_photoy2k;
Arm7SetIdleLoopAddress(0x000001f4);
int nRet = pgmInit();
if (nRet == 0) {
install_protection_kovsh();
}
return nRet;
}
struct BurnDriver BurnDrvPhotoy2k = {
"photoy2k", NULL, "pgm", "1999",
"Photo Y2K\0Real and Fake (V105)\0", NULL, "IGS", "PolyGameMaster",
L"Photo Y2K\0\u30EA\u30A2\u30EB\u30A2\u30F3\u30C9 \u30D5\u30A7\u30A4\u30AF\0\u5927\u5BB6\u6765 \u627E\u78B4\0\u8D85\u7EA7 \u6BD4\u4E00\u6BD4 (V105)\0", NULL, NULL, NULL,
BDF_GAME_WORKING, 4, HARDWARE_IGS_PGM | HARDWARE_IGS_USE_ARM_CPU, GBF_PUZZLE, 0,
NULL, photoy2kRomInfo, photoy2kRomName, pgmInputInfo, photoy2kDIPInfo,
photoy2kInit, pgmExit, pgmFrame, pgmDraw, pgmScan, 0, NULL, NULL, NULL, &nPgmPalRecalc, 0x1200,
448, 224, 4, 3
};