trunk/src/mame/drivers/seta.c
| r244786 | r244787 | |
| 52 | 52 | P0-081A (BP933KA) 93 Mobile Suit Gundam Banpresto |
| 53 | 53 | P0-083A (BP931) 93 Ultra Toukon Densetsu Banpresto / Tsuburaya Prod. |
| 54 | 54 | P0-092A 93 Daioh Athena |
| 55 | P0-072-2 (prototype) 93 Daioh(prototype) Athena |
| 55 | 56 | P0-096A (BP934KA) 93 Kamen Rider Banpresto |
| 56 | 57 | P0-097A 93 Oishii Puzzle .. Sunsoft + Atlus |
| 57 | 58 | bootleg 9? Triple Fun (4) bootleg (Comad?) |
| r244786 | r244787 | |
| 2259 | 2260 | Daioh (location test version) |
| 2260 | 2261 | ***************************************************************************/ |
| 2261 | 2262 | |
| 2262 | | static ADDRESS_MAP_START( daiohloc_map, AS_PROGRAM, 16, seta_state ) |
| 2263 | static ADDRESS_MAP_START( daiohp_map, AS_PROGRAM, 16, seta_state ) |
| 2263 | 2264 | AM_RANGE(0x000000, 0x1fffff) AM_ROM AM_MIRROR(0x080000) // ROM |
| 2264 | 2265 | AM_RANGE(0x200000, 0x20ffff) AM_RAM // RAM |
| 2265 | 2266 | AM_RANGE(0x400000, 0x400001) AM_READ_PORT("P1") // P1 |
| r244786 | r244787 | |
| 3815 | 3816 | INPUT_PORTS_END |
| 3816 | 3817 | |
| 3817 | 3818 | /*************************************************************************** |
| 3818 | | Daioh (location test version) |
| 3819 | Daioh (prototype) |
| 3819 | 3820 | ***************************************************************************/ |
| 3820 | 3821 | |
| 3821 | | static INPUT_PORTS_START( daiohloc ) |
| 3822 | static INPUT_PORTS_START( daiohp ) |
| 3822 | 3823 | PORT_START("P1") |
| 3823 | 3824 | JOY_TYPE1_3BUTTONS(1) |
| 3824 | 3825 | |
| r244786 | r244787 | |
| 7465 | 7466 | Daioh (location test version) |
| 7466 | 7467 | ***************************************************************************/ |
| 7467 | 7468 | |
| 7468 | | static GFXDECODE_START( daiohloc ) |
| 7469 | static GFXDECODE_START( daiohp ) |
| 7469 | 7470 | GFXDECODE_ENTRY( "gfx1", 0, layout_planes, 512*0, 32 ) // [0] Sprites |
| 7470 | 7471 | GFXDECODE_ENTRY( "gfx2", 0, layout_planes_2roms_split, 512*2, 32 ) // [1] Layer 1 |
| 7471 | 7472 | GFXDECODE_ENTRY( "gfx3", 0, layout_planes_2roms_split, 512*1, 32 ) // [2] Layer 2 |
| r244786 | r244787 | |
| 8209 | 8210 | |
| 8210 | 8211 | |
| 8211 | 8212 | /*************************************************************************** |
| 8212 | | Daioh (location test version) |
| 8213 | Daioh (prototype) |
| 8213 | 8214 | ***************************************************************************/ |
| 8214 | 8215 | |
| 8215 | | static MACHINE_CONFIG_START( daiohloc, seta_state ) |
| 8216 | static MACHINE_CONFIG_START( daiohp, seta_state ) |
| 8216 | 8217 | |
| 8217 | 8218 | /* basic machine hardware */ |
| 8218 | 8219 | MCFG_CPU_ADD("maincpu", M68000, XTAL_16MHz) /* 16 MHz, MC68000-16, Verified from PCB */ |
| 8219 | | MCFG_CPU_PROGRAM_MAP(daiohloc_map) |
| 8220 | MCFG_CPU_PROGRAM_MAP(daiohp_map) |
| 8220 | 8221 | MCFG_TIMER_DRIVER_ADD_SCANLINE("scantimer", seta_state, seta_interrupt_1_and_2, "screen", 0, 1) |
| 8221 | 8222 | |
| 8222 | 8223 | MCFG_DEVICE_ADD("spritegen", SETA001_SPRITE, 0) |
| r244786 | r244787 | |
| 8232 | 8233 | MCFG_SCREEN_UPDATE_DRIVER(seta_state, screen_update_seta) |
| 8233 | 8234 | MCFG_SCREEN_PALETTE("palette") |
| 8234 | 8235 | |
| 8235 | | MCFG_GFXDECODE_ADD("gfxdecode", "palette", daiohloc) |
| 8236 | MCFG_GFXDECODE_ADD("gfxdecode", "palette", daiohp) |
| 8236 | 8237 | MCFG_PALETTE_ADD("palette", 512 * 3) /* sprites, layer1, layer2 */ |
| 8237 | 8238 | |
| 8238 | 8239 | MCFG_VIDEO_START_OVERRIDE(seta_state,seta_2_layers) |
| r244786 | r244787 | |
| 10326 | 10327 | ROM_LOAD( "fs001004.pcm", 0x000000, 0x100000, CRC(f9344ce5) SHA1(cffbc235f3a8e9a5004e671d924affd321ec9eed) ) |
| 10327 | 10328 | ROM_END |
| 10328 | 10329 | |
| 10330 | /* |
| 10331 | The changes between the set daioh and daioha are very minimal, the main game effects are: |
| 10332 | |
| 10333 | - Fixes the crashing bug in the US version caused by pressing Shot1 and Shot2 in weird orders and timings. |
| 10334 | - 1UP, and 2UPs no longer spawn "randomly". (Only the fixed extend items exist, and the 1UPs from score) |
| 10335 | - After picking up a max powerup, a 1UP or a 2UP, daoiha sets the "item timer" to a random value. |
| 10336 | daioh always sets it to 0x7F. |
| 10337 | - The powerups spawned from picking up an additional max powerup are no longer random, but feeds from the |
| 10338 | original "spawn item" function (thus, it advances the "item timer") |
| 10339 | |
| 10340 | So it's a bug fix version which also makes the game a little harder by limiting the spawning of 1ups |
| 10341 | */ |
| 10342 | |
| 10329 | 10343 | ROM_START( daioh ) |
| 10330 | 10344 | ROM_REGION( 0x100000, "maincpu", 0 ) /* 68000 Code */ |
| 10331 | | ROM_LOAD16_BYTE( "fg-001-001.u3", 0x000000, 0x080000, CRC(104ae74a) SHA1(928c467e3ff98285a4828a927d851fcdf296849b) ) |
| 10332 | | ROM_LOAD16_BYTE( "fg-001-002.u4", 0x000001, 0x080000, CRC(e39a4e67) SHA1(c3f47e9d407f32dbfaf209d29b4446e4de8829a2) ) |
| 10345 | ROM_LOAD16_BYTE( "fg001001.u3", 0x000000, 0x080000, CRC(e1ef3007) SHA1(864349efac3e3dc3ccdeb892fed285c73aea3997) ) |
| 10346 | ROM_LOAD16_BYTE( "fg001002.u4", 0x000001, 0x080000, CRC(5e3481f9) SHA1(7585a7e56392fc2b13d466cf262383dd68d6d995) ) |
| 10333 | 10347 | |
| 10334 | 10348 | ROM_REGION( 0x200000, "gfx1", 0 ) /* Sprites */ |
| 10335 | 10349 | ROM_LOAD( "fg-001-004", 0x000000, 0x100000, CRC(9ab0533e) SHA1(b260ceb2b3e140971419329bee07a020171794f7) ) |
| r244786 | r244787 | |
| 10345 | 10359 | ROM_LOAD( "fg-001-007", 0x000000, 0x100000, CRC(4a2fe9e0) SHA1(e55b6f301f842ff5d3c7a0041856695ac1d8a78f) ) |
| 10346 | 10360 | ROM_END |
| 10347 | 10361 | |
| 10348 | | /* |
| 10349 | | The changes between this set and the parent set are very minimal. It is potentially a hack/bootleg. |
| 10350 | | |
| 10351 | | Overview of the changes: |
| 10352 | | - the vector table has been changed to make bus error and address error go somewhere other than a hard lock |
| 10353 | | - the new destination is a newly inserted RTE that's located at the first NOP in the code that would've affected nothing |
| 10354 | | - there's a change in a jumptable at $23A28 that pushes the destination PC into the original function, but not into a different one |
| 10355 | | - which would make no sense from an official build unless they possibly lost the source |
| 10356 | | - at $23DF2 a fairly large chunk of code has been rewritten, with a bunch of NOPs added for padding |
| 10357 | | - there are various changes around that change things like "ADDI $20, D0" to "MOVE $7F, D0" |
| 10358 | | - these are after doing real computation with D0, so it seems strange |
| 10359 | | */ |
| 10360 | | ROM_START( daioh1 ) |
| 10362 | ROM_START( daioha ) |
| 10361 | 10363 | ROM_REGION( 0x100000, "maincpu", 0 ) /* 68000 Code */ |
| 10362 | | ROM_LOAD16_BYTE( "fg-001-001.bin", 0x000000, 0x080000, CRC(e1ef3007) SHA1(864349efac3e3dc3ccdeb892fed285c73aea3997) ) |
| 10363 | | ROM_LOAD16_BYTE( "fg-001-002.bin", 0x000001, 0x080000, CRC(5e3481f9) SHA1(7585a7e56392fc2b13d466cf262383dd68d6d995) ) |
| 10364 | ROM_LOAD16_BYTE( "fg-001-001.u3", 0x000000, 0x080000, CRC(104ae74a) SHA1(928c467e3ff98285a4828a927d851fcdf296849b) ) |
| 10365 | ROM_LOAD16_BYTE( "fg-001-002.u4", 0x000001, 0x080000, CRC(e39a4e67) SHA1(c3f47e9d407f32dbfaf209d29b4446e4de8829a2) ) |
| 10364 | 10366 | |
| 10365 | 10367 | ROM_REGION( 0x200000, "gfx1", 0 ) /* Sprites */ |
| 10366 | 10368 | ROM_LOAD( "fg-001-004", 0x000000, 0x100000, CRC(9ab0533e) SHA1(b260ceb2b3e140971419329bee07a020171794f7) ) |
| r244786 | r244787 | |
| 10376 | 10378 | ROM_LOAD( "fg-001-007", 0x000000, 0x100000, CRC(4a2fe9e0) SHA1(e55b6f301f842ff5d3c7a0041856695ac1d8a78f) ) |
| 10377 | 10379 | ROM_END |
| 10378 | 10380 | |
| 10379 | | ROM_START( daiohloc ) |
| 10381 | ROM_START( daiohp ) /* Found on the same P0-072-2 PCB as the Blandia prototype */ |
| 10380 | 10382 | ROM_REGION( 0x200000, "maincpu", 0 ) /* 68000 Code */ |
| 10381 | | ROM_LOAD16_BYTE( "prg_even.u3", 0x000000, 0x040000, CRC(3c97b976) SHA1(5850bf71b594a25f3e2de16f2933078c4a0dc518) ) |
| 10382 | | ROM_LOAD16_BYTE( "prg_odd.u4", 0x000001, 0x040000, CRC(aed2b87e) SHA1(d5b81614fbbda8a75418e69eb481e5adf38b4ebf) ) |
| 10383 | ROM_LOAD16_BYTE( "prg_even.u3", 0x000000, 0x040000, CRC(3c97b976) SHA1(5850bf71b594a25f3e2de16f2933078c4a0dc518) ) |
| 10384 | ROM_LOAD16_BYTE( "prg_odd.u4", 0x000001, 0x040000, CRC(aed2b87e) SHA1(d5b81614fbbda8a75418e69eb481e5adf38b4ebf) ) |
| 10383 | 10385 | ROM_LOAD16_BYTE( "data_even.u103", 0x100000, 0x040000, CRC(e07776ef) SHA1(5e75dd35fd8eae98182a9798a8b3eceb3e33b780) ) |
| 10384 | 10386 | ROM_LOAD16_BYTE( "data_odd.u102", 0x100001, 0x040000, CRC(b75b9a5c) SHA1(4c187105fe5253cc86862df1f3970fa45d4f7317) ) |
| 10385 | 10387 | |
| r244786 | r244787 | |
| 11547 | 11549 | GAME( 1993, atehate, 0, atehate, atehate, driver_device, 0, ROT0, "Athena", "Athena no Hatena ?", 0 ) |
| 11548 | 11550 | |
| 11549 | 11551 | GAME( 1993, daioh, 0, daioh, daioh, driver_device, 0, ROT270, "Athena", "Daioh", 0 ) |
| 11550 | | GAME( 1993, daioh1, daioh, daioh, daioh, driver_device, 0, ROT270, "Athena", "Daioh (hack?)", 0 ) // possible hack or bugfix made without source, see notes near romdef |
| 11551 | | GAME( 1993, daiohloc, daioh, daiohloc, daiohloc, driver_device, 0, ROT270, "Athena", "Daioh (location test ver)", 0 ) |
| 11552 | GAME( 1993, daioha, daioh, daioh, daioh, driver_device, 0, ROT270, "Athena", "Daioh (earlier)", 0 ) |
| 11553 | GAME( 1993, daiohp, daioh, daiohp, daiohp, driver_device, 0, ROT270, "Athena", "Daioh (prototype)", 0 ) |
| 11552 | 11554 | |
| 11553 | 11555 | GAME( 1993, jjsquawk, 0, jjsquawk, jjsquawk, driver_device, 0, ROT0, "Athena / Able", "J. J. Squawkers", GAME_IMPERFECT_SOUND ) |
| 11554 | 11556 | GAME( 1993, jjsquawkb,jjsquawk, jjsquawb, jjsquawk, driver_device, 0, ROT0, "bootleg", "J. J. Squawkers (bootleg)", GAME_IMPERFECT_SOUND ) |