FUTURE SPYを解析してみた

ここらへんを参考にして、SEGA GENESIS COLLECTIONを解析してみる。

http://mamedev.org/source/src/mame/drivers/zaxxon.c.html

ZAXXONがSCRAMBLEベースなら、FUTURE SPYはXEVIOUSベースかな?

 1242  ROM_START( futspy )
 1243      ROM_REGION( 0x6000, "maincpu", 0 )
 1244      ROM_LOAD( "fs_snd.u27",   0x0000, 0x2000, CRC(7578fe7f) SHA1(ab42bdf74b07c1ba5337c3d34647d3ee16f9db05) )
 1245      ROM_LOAD( "fs_snd.u28",   0x2000, 0x2000, CRC(8ade203c) SHA1(f095f4019befff7af4203c886ef42357f79592a1) )
 1246      ROM_LOAD( "fs_snd.u29",   0x4000, 0x1000, CRC(734299c3) SHA1(12acf71d9d00e0e0df29c4d8c397ad407266b364) )
 1247  
 1248      ROM_REGION( 0x1000, "gfx_tx", 0 )
 1249      ROM_LOAD( "fs_snd.u68",   0x0000, 0x0800, CRC(305fae2d) SHA1(fbe89feff0fb2d4515000d1b73b7c91aac4e0b67) )
 1250      ROM_LOAD( "fs_snd.u69",   0x0800, 0x0800, CRC(3c5658c0) SHA1(70ac44b9334b086cdecd73f5f7820a0bf8ae2629) )
 1251  
 1252      ROM_REGION( 0x6000, "gfx_bg", 0 )
 1253      ROM_LOAD( "fs_vid.u113",  0x0000, 0x2000, CRC(36d2bdf6) SHA1(c27835055beedf61ba644070f8920b6008d99040) )
 1254      ROM_LOAD( "fs_vid.u112",  0x2000, 0x2000, CRC(3740946a) SHA1(e7579dd91628a811a60a8d8a5b407728b74aa17e) )
 1255      ROM_LOAD( "fs_vid.u111",  0x4000, 0x2000, CRC(4cd4df98) SHA1(3ae4b2d0a79069e0de81596805bcf1a9ae7912cf) )
 1256  
 1257      ROM_REGION( 0xc000, "gfx_spr", 0 )
 1258      ROM_LOAD( "fs_vid.u77",   0x0000, 0x4000, CRC(1b93c9ec) SHA1(4b1d3b7e35d65cc3b96eb4f2e98c59e779bcb1c1) )
 1259      ROM_LOAD( "fs_vid.u78",   0x4000, 0x4000, CRC(50e55262) SHA1(363acbde7b37a2358b3e53cfc08c9bd5dee73d55) )
 1260      ROM_LOAD( "fs_vid.u79",   0x8000, 0x4000, CRC(bfb02e3e) SHA1(f53bcec46b8c7d26e9ab01c821a8d1578b85f786) )
 1261  
 1262      ROM_REGION( 0x8000, "tilemap_dat", 0 )
 1263      ROM_LOAD( "fs_vid.u91",   0x0000, 0x2000, CRC(86da01f4) SHA1(954e4be1b0e24c8bc88c2b328e3a0e32005bb7b2) )
 1264      ROM_LOAD( "fs_vid.u90",   0x2000, 0x2000, CRC(2bd41d2d) SHA1(efb74b4bce31c7868ab6438e07b02b0539d35120) )
 1265      ROM_LOAD( "fs_vid.u93",   0x4000, 0x2000, CRC(b82b4997) SHA1(263f74aab47fc4e516b2111eaa94beea61c5fbe5) )
 1266      ROM_LOAD( "fs_vid.u92",   0x6000, 0x2000, CRC(af4015af) SHA1(6ed01a42d395ada6f2442b68f901fe61b04c8e44) )
 1267  
 1268      ROM_REGION( 0x0200, "proms", 0 )
 1269      ROM_LOAD( "futrprom.u98", 0x0000, 0x0100, CRC(9ba2acaa) SHA1(20e0257ca531ddc398b3aab861c7b5c41b659d40) )
 1270      ROM_LOAD( "futrprom.u72", 0x0100, 0x0100, CRC(f9e26790) SHA1(339f27e0126312d35211b5ce533f293b58851c1d) )
 1271  ROM_END

結果1つのROM以外はCRC32が一致しました!

>crc FUTURESP.SR 7578fe7f 2000
crc32=7578fe7f,size=2000
crc32=7578fe7f,addr=9000-afff

>crc FUTURESP.SR 8ade203c 2000
crc32=8ade203c,size=2000
crc32=8ade203c,addr=b000-cfff

>crc FUTURESP.SR 734299c3 2000
crc32=734299c3,size=2000

失敗したので位置とサイズで切り出す。その他のROMは全てCRC32が一致しました!

>cut FUTURESP.SR d000 2000
start=0000d000,size=2000
crc32=ddabde73,addr=d000-efff

(省略)

>crc FUTURESP.SR f9e26790 100
crc32=f9e26790,size=0100
crc32=f9e26790,addr=29100-291ff

MAMEで起動して遊びます。

>mame -window -resolution 512x448 futspy

f:id:tanam:20140720004011p:image:w360

f:id:tanam:20140720004012p:image:w360