From 78ff4ebf63f2ebca1e067e823765f1d4d636fc0c Mon Sep 17 00:00:00 2001 From: Alex Marshall Date: Wed, 4 Mar 2015 22:36:12 -0800 Subject: Add Daioh loctest and remove hacked Daioh set. Add Daioh (location test version) [CoolMod, trap15] Remove Daioh (set 1) and replace with Daioh (set 2). Set 1 was a hack and probably should not have been accepted. --- src/mame/drivers/seta.c | 221 ++++++++++++++++++++++++++++++++++++++++++++---- src/mame/mame.lst | 2 +- 2 files changed, 207 insertions(+), 16 deletions(-) diff --git a/src/mame/drivers/seta.c b/src/mame/drivers/seta.c index 3bfabbdd046..a6bd0c09f6e 100644 --- a/src/mame/drivers/seta.c +++ b/src/mame/drivers/seta.c @@ -2255,6 +2255,41 @@ static ADDRESS_MAP_START( daioh_map, AS_PROGRAM, 16, seta_state ) ADDRESS_MAP_END +/*************************************************************************** + Daioh (location test version) +***************************************************************************/ + +static ADDRESS_MAP_START( daiohloc_map, AS_PROGRAM, 16, seta_state ) + AM_RANGE(0x000000, 0x1fffff) AM_ROM AM_MIRROR(0x080000) // ROM + AM_RANGE(0x200000, 0x20ffff) AM_RAM // RAM + AM_RANGE(0x400000, 0x400001) AM_READ_PORT("P1") // P1 + AM_RANGE(0x400002, 0x400003) AM_READ_PORT("P2") // P2 + AM_RANGE(0x400004, 0x400005) AM_READ_PORT("COINS") // Coins + AM_RANGE(0x500000, 0x500005) AM_RAM_WRITE(seta_vregs_w) AM_SHARE("vregs") // Coin Lockout + Video Registers + AM_RANGE(0x500006, 0x500007) AM_READ_PORT("EXTRA") // Buttons 4,5,6 + AM_RANGE(0x600000, 0x600003) AM_READ(seta_dsw_r ) // DSW + AM_RANGE(0x700000, 0x7003ff) AM_RAM + AM_RANGE(0x700400, 0x700fff) AM_RAM AM_SHARE("paletteram") // Palette + AM_RANGE(0x701000, 0x70ffff) AM_RAM // + AM_RANGE(0x800000, 0x803fff) AM_RAM_WRITE(seta_vram_0_w) AM_SHARE("vram_0") // VRAM 0&1 + AM_RANGE(0x804000, 0x80ffff) AM_RAM // + AM_RANGE(0x880000, 0x883fff) AM_RAM_WRITE(seta_vram_2_w) AM_SHARE("vram_2") // VRAM 2&3 + AM_RANGE(0x884000, 0x88ffff) AM_RAM // + AM_RANGE(0x900000, 0x900005) AM_RAM AM_SHARE("vctrl_0") // VRAM 0&1 Ctrl + AM_RANGE(0x980000, 0x980005) AM_RAM AM_SHARE("vctrl_2") // VRAM 2&3 Ctrl + AM_RANGE(0xa00000, 0xa005ff) AM_RAM AM_DEVREADWRITE("spritegen", seta001_device, spriteylow_r16, spriteylow_w16) // Sprites Y + AM_RANGE(0xa00600, 0xa00607) AM_RAM AM_DEVREADWRITE("spritegen", seta001_device, spritectrl_r16, spritectrl_w16) + + AM_RANGE(0xa80000, 0xa80001) AM_RAM // ? 0x4000 + AM_RANGE(0xb00000, 0xb03fff) AM_RAM AM_DEVREADWRITE("spritegen", seta001_device, spritecode_r16, spritecode_w16) // Sprites Code + X + Attr + AM_RANGE(0xb04000, 0xb13fff) AM_RAM + AM_RANGE(0xc00000, 0xc03fff) AM_DEVREADWRITE("x1snd", x1_010_device, word_r, word_w) // Sound + AM_RANGE(0xd00000, 0xd00007) AM_WRITENOP // ? + AM_RANGE(0xe00000, 0xe00001) AM_WRITENOP // ? VBlank IRQ Ack + AM_RANGE(0xf00000, 0xf00001) AM_WRITENOP // ? Sound IRQ Ack +ADDRESS_MAP_END + + /*************************************************************************** Dragon Unit, Quiz Kokology, Quiz Kokology 2, Strike Gunner ***************************************************************************/ @@ -3779,6 +3814,85 @@ static INPUT_PORTS_START( daioh ) PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_UNKNOWN ) INPUT_PORTS_END +/*************************************************************************** + Daioh (location test version) +***************************************************************************/ + +static INPUT_PORTS_START( daiohloc ) + PORT_START("P1") + JOY_TYPE1_3BUTTONS(1) + + PORT_START("P2") + JOY_TYPE1_3BUTTONS(2) + + PORT_START("DSW") + PORT_DIPNAME( 0x0007, 0x0007, DEF_STR( Coin_A ) ) PORT_DIPLOCATION("SW2:1,2,3") + PORT_DIPSETTING( 0x0001, DEF_STR( 4C_1C ) ) + PORT_DIPSETTING( 0x0002, DEF_STR( 3C_1C ) ) + PORT_DIPSETTING( 0x0004, DEF_STR( 2C_1C ) ) + PORT_DIPSETTING( 0x0007, DEF_STR( 1C_1C ) ) + PORT_DIPSETTING( 0x0003, DEF_STR( 2C_3C ) ) + PORT_DIPSETTING( 0x0006, DEF_STR( 1C_2C ) ) + PORT_DIPSETTING( 0x0005, DEF_STR( 1C_3C ) ) + PORT_DIPSETTING( 0x0000, DEF_STR( Free_Play ) ) + PORT_DIPNAME( 0x0038, 0x0038, DEF_STR( Coin_B ) ) PORT_DIPLOCATION("SW2:4,5,6") + PORT_DIPSETTING( 0x0008, DEF_STR( 4C_1C ) ) + PORT_DIPSETTING( 0x0010, DEF_STR( 3C_1C ) ) + PORT_DIPSETTING( 0x0020, DEF_STR( 2C_1C ) ) + PORT_DIPSETTING( 0x0038, DEF_STR( 1C_1C ) ) + PORT_DIPSETTING( 0x0018, DEF_STR( 2C_3C ) ) + PORT_DIPSETTING( 0x0030, DEF_STR( 1C_2C ) ) + PORT_DIPSETTING( 0x0028, DEF_STR( 1C_3C ) ) + PORT_DIPSETTING( 0x0000, DEF_STR( Free_Play ) ) + PORT_DIPNAME( 0x0040, 0x0040, DEF_STR( Demo_Sounds ) ) PORT_DIPLOCATION("SW2:7") + PORT_DIPSETTING( 0x0000, DEF_STR( Off ) ) + PORT_DIPSETTING( 0x0040, DEF_STR( On ) ) + PORT_DIPNAME( 0x0080, 0x0000, "Auto Shot" ) PORT_DIPLOCATION("SW2:8") + PORT_DIPSETTING( 0x0080, DEF_STR( Off ) ) + PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) + + PORT_DIPNAME( 0x0100, 0x0100, DEF_STR( Flip_Screen ) ) PORT_DIPLOCATION("SW1:1") + PORT_DIPSETTING( 0x0100, DEF_STR( Off ) ) + PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) + PORT_SERVICE_DIPLOC( 0x0200, IP_ACTIVE_LOW, "SW1:2" ) + PORT_DIPNAME( 0x0c00, 0x0c00, DEF_STR( Difficulty ) ) PORT_DIPLOCATION("SW1:3,4") + PORT_DIPSETTING( 0x0800, DEF_STR( Easy ) ) + PORT_DIPSETTING( 0x0c00, DEF_STR( Normal ) ) + PORT_DIPSETTING( 0x0400, DEF_STR( Hard ) ) + PORT_DIPSETTING( 0x0000, DEF_STR( Hardest ) ) + PORT_DIPNAME( 0x3000, 0x3000, DEF_STR( Lives ) ) PORT_DIPLOCATION("SW1:5,6") + PORT_DIPSETTING( 0x0000, "1" ) + PORT_DIPSETTING( 0x1000, "2" ) + PORT_DIPSETTING( 0x3000, "3" ) + PORT_DIPSETTING( 0x2000, "5" ) + PORT_DIPNAME( 0xc000, 0xc000, DEF_STR( Bonus_Life ) ) PORT_DIPLOCATION("SW1:7,8") + PORT_DIPSETTING( 0x8000, "100k and every 600k" ) + PORT_DIPSETTING( 0xc000, "200k and every 800k" ) + PORT_DIPSETTING( 0x4000, "300k and 1000k only" ) + PORT_DIPSETTING( 0x0000, "500k Only" ) + + PORT_START("COINS") + PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_IMPULSE(5) + PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_COIN2 ) PORT_IMPULSE(5) + PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_SERVICE1 ) + PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_UNKNOWN ) + + PORT_DIPNAME( 0x00F0, 0x0000, "Country" ) PORT_DIPLOCATION("SW3:1,2,3,4") + PORT_DIPSETTING( 0x0080, "USA (6 buttons)" ) // any setting other than 0 is USA + PORT_DIPSETTING( 0x0000, "Japan (2 buttons)" ) + + PORT_START("EXTRA") + PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_PLAYER(1) + PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_PLAYER(1) + PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_PLAYER(1) + PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_PLAYER(2) + PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_PLAYER(2) + PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_PLAYER(2) + PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_UNKNOWN ) + PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_UNKNOWN ) +INPUT_PORTS_END + + /*************************************************************************** Dragon Unit ***************************************************************************/ @@ -7347,6 +7461,16 @@ static GFXDECODE_START( msgundam ) GFXDECODE_ENTRY( "gfx3", 0, layout_packed, 512*1, 32 ) // [2] Layer 2 GFXDECODE_END +/*************************************************************************** + Daioh (location test version) +***************************************************************************/ + +static GFXDECODE_START( daiohloc ) + GFXDECODE_ENTRY( "gfx1", 0, layout_planes, 512*0, 32 ) // [0] Sprites + GFXDECODE_ENTRY( "gfx2", 0, layout_planes_2roms_split, 512*2, 32 ) // [1] Layer 1 + GFXDECODE_ENTRY( "gfx3", 0, layout_planes_2roms_split, 512*1, 32 ) // [2] Layer 2 +GFXDECODE_END + /*************************************************************************** Quiz Kokology 2 ***************************************************************************/ @@ -8083,6 +8207,44 @@ static MACHINE_CONFIG_START( daioh, seta_state ) MCFG_SOUND_ROUTE(1, "rspeaker", 1.0) MACHINE_CONFIG_END + +/*************************************************************************** + Daioh (location test version) +***************************************************************************/ + +static MACHINE_CONFIG_START( daiohloc, seta_state ) + + /* basic machine hardware */ + MCFG_CPU_ADD("maincpu", M68000, XTAL_16MHz) /* 16 MHz, MC68000-16, Verified from PCB */ + MCFG_CPU_PROGRAM_MAP(daiohloc_map) + MCFG_TIMER_DRIVER_ADD_SCANLINE("scantimer", seta_state, seta_interrupt_1_and_2, "screen", 0, 1) + + MCFG_DEVICE_ADD("spritegen", SETA001_SPRITE, 0) + MCFG_SETA001_SPRITE_GFXDECODE("gfxdecode") + MCFG_SETA001_SPRITE_PALETTE("palette") + + /* video hardware */ + MCFG_SCREEN_ADD("screen", RASTER) + MCFG_SCREEN_REFRESH_RATE(57.42) /* verified on PCB */ + MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0)) + MCFG_SCREEN_SIZE(64*8, 32*8) + MCFG_SCREEN_VISIBLE_AREA(0*8, 48*8-1, 1*8, 31*8-1) + MCFG_SCREEN_UPDATE_DRIVER(seta_state, screen_update_seta) + MCFG_SCREEN_PALETTE("palette") + + MCFG_GFXDECODE_ADD("gfxdecode", "palette", daiohloc) + MCFG_PALETTE_ADD("palette", 512 * 3) /* sprites, layer1, layer2 */ + + MCFG_VIDEO_START_OVERRIDE(seta_state,seta_2_layers) + + /* sound hardware */ + MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker") + + MCFG_SOUND_ADD("x1snd", X1_010, XTAL_16MHz) /* 16 MHz, Verified from PCB audio */ + MCFG_SOUND_ROUTE(0, "lspeaker", 1.0) + MCFG_SOUND_ROUTE(1, "rspeaker", 1.0) +MACHINE_CONFIG_END + /*************************************************************************** Dragon Unit, Quiz Kokology, Strike Gunner ***************************************************************************/ @@ -10166,8 +10328,8 @@ ROM_END ROM_START( daioh ) ROM_REGION( 0x100000, "maincpu", 0 ) /* 68000 Code */ - ROM_LOAD16_BYTE( "fg001001.u3", 0x000000, 0x080000, CRC(e1ef3007) SHA1(864349efac3e3dc3ccdeb892fed285c73aea3997) ) - ROM_LOAD16_BYTE( "fg001002.u4", 0x000001, 0x080000, CRC(5e3481f9) SHA1(7585a7e56392fc2b13d466cf262383dd68d6d995) ) + ROM_LOAD16_BYTE( "fg1-001.u3", 0x000000, 0x080000, CRC(104ae74a) SHA1(928c467e3ff98285a4828a927d851fcdf296849b) ) + ROM_LOAD16_BYTE( "fg1-002.u4", 0x000001, 0x080000, CRC(e39a4e67) SHA1(c3f47e9d407f32dbfaf209d29b4446e4de8829a2) ) ROM_REGION( 0x200000, "gfx1", 0 ) /* Sprites */ ROM_LOAD( "fg1-004", 0x000000, 0x100000, CRC(9ab0533e) SHA1(b260ceb2b3e140971419329bee07a020171794f7) ) @@ -10183,23 +10345,52 @@ ROM_START( daioh ) ROM_LOAD( "fg1-007", 0x000000, 0x100000, CRC(4a2fe9e0) SHA1(e55b6f301f842ff5d3c7a0041856695ac1d8a78f) ) ROM_END -ROM_START( daioha ) - ROM_REGION( 0x100000, "maincpu", 0 ) /* 68000 Code */ - ROM_LOAD16_BYTE( "fg1-001.u3", 0x000000, 0x080000, CRC(104ae74a) SHA1(928c467e3ff98285a4828a927d851fcdf296849b) ) - ROM_LOAD16_BYTE( "fg1-002.u4", 0x000001, 0x080000, CRC(e39a4e67) SHA1(c3f47e9d407f32dbfaf209d29b4446e4de8829a2) ) +ROM_START( daiohloc ) + ROM_REGION( 0x200000, "maincpu", 0 ) /* 68000 Code */ + ROM_LOAD16_BYTE( "prg_even.u3", 0x000000, 0x040000, CRC(3c97b976) SHA1(5850bf71b594a25f3e2de16f2933078c4a0dc518) ) + ROM_LOAD16_BYTE( "prg_odd.u4", 0x000001, 0x040000, CRC(aed2b87e) SHA1(d5b81614fbbda8a75418e69eb481e5adf38b4ebf) ) + ROM_LOAD16_BYTE( "data_even.u103", 0x100000, 0x040000, CRC(e07776ef) SHA1(5e75dd35fd8eae98182a9798a8b3eceb3e33b780) ) + ROM_LOAD16_BYTE( "data_odd.u102", 0x100001, 0x040000, CRC(b75b9a5c) SHA1(4c187105fe5253cc86862df1f3970fa45d4f7317) ) ROM_REGION( 0x200000, "gfx1", 0 ) /* Sprites */ - ROM_LOAD( "fg1-004", 0x000000, 0x100000, CRC(9ab0533e) SHA1(b260ceb2b3e140971419329bee07a020171794f7) ) - ROM_LOAD( "fg1-003", 0x100000, 0x100000, CRC(1c9d51e2) SHA1(1d6236ab28d11676386834fd6e405fd40198e924) ) + ROM_LOAD( "obj_2.u146", 0x000000, 0x040000, CRC(77560a03) SHA1(f766b56a88d49e4b41c9ed3c68e5478991033b5b) ) + ROM_LOAD( "obj_6.u147", 0x040000, 0x040000, CRC(081f5fb1) SHA1(2fc6816704f7c42627ec47edd0e2ea88e7088101) ) + ROM_LOAD( "obj_3.u144", 0x080000, 0x040000, CRC(d33ca640) SHA1(3d278cb46f2eabd03851ee470adfae5313988a27) ) + ROM_LOAD( "obj_7.u145", 0x0C0000, 0x040000, CRC(e878ac92) SHA1(fc67cbefb050bfbc96f3350bb3d76bf0206e6553) ) + ROM_LOAD( "obj_0.u142", 0x100000, 0x040000, CRC(78f45582) SHA1(021e635ba365558d9bf37a3b33b4c42b63119f0c) ) + ROM_LOAD( "obj_4.u143", 0x140000, 0x040000, CRC(d387de72) SHA1(22f40a2daa98e52d6990aa52f9fde2cd66ad40d8) ) + ROM_LOAD( "obj_1.u140", 0x180000, 0x040000, CRC(8ff6c5a9) SHA1(a2d188d44c8671282bf53f7927e099a212c0ed51) ) + ROM_LOAD( "obj_5.u141", 0x1C0000, 0x040000, CRC(6a671757) SHA1(aa6c2f916f1ca70514f1bb5754545171d8991456) ) - ROM_REGION( 0x200000, "gfx2", 0 ) /* Layer 1 */ - ROM_LOAD( "fg1-005", 0x000000, 0x200000, CRC(c25159b9) SHA1(4c9da3233223508389c3c0f277a00aedfc860da4) ) + ROM_REGION( 0x200000, "gfx2", 0 ) /* Layer 1 */ + ROM_LOAD( "bg1_1.u150", 0x000000, 0x080000, CRC(d5793a2f) SHA1(0623d51d405fde69622f1e15512fd8fc41209a59) ) + ROM_LOAD( "bg1_3.u151", 0x080000, 0x080000, CRC(6456fae1) SHA1(ce839e68342b62be61e29255ebdd8ddbd2b67a71) ) + ROM_LOAD( "bg1_0.u148", 0x100000, 0x080000, CRC(bec48d7a) SHA1(9fdcc8f461e48cb4244827bead980ad48acdfbd8) ) + ROM_LOAD( "bg1_2.u149", 0x180000, 0x080000, CRC(5e674c30) SHA1(8f2e264df7d0b4f2a5a54d86dd0b3106d0ff7c15) ) - ROM_REGION( 0x200000, "gfx3", 0 ) /* Layer 2 */ - ROM_LOAD( "fg1-006", 0x000000, 0x200000, CRC(2052c39a) SHA1(83a444a76e68aa711b0e25a5aa963ca876a6357e) ) + ROM_REGION( 0x200000, "gfx3", 0 ) /* Layer 2 */ + ROM_LOAD( "bg2_1.u166", 0x000000, 0x080000, CRC(9274123b) SHA1(b58e107a5bd222e454fd435d515e57cab52e6593) ) + ROM_LOAD( "bg2_3.u167", 0x080000, 0x080000, CRC(d3d68aa1) SHA1(14b0e4fd9bbdc2b6a99147dd6f6143d609d9110b) ) + ROM_LOAD( "bg2_0.u164", 0x100000, 0x080000, CRC(7e46a10e) SHA1(a8576f7a140b065b88a0dab648f7b31c75fec006) ) + ROM_LOAD( "bg2_2.u165", 0x180000, 0x080000, CRC(3119189b) SHA1(3a45ec8db30659d7fd47090cb137df05bbdc1c86) ) ROM_REGION( 0x100000, "x1snd", 0 ) /* Samples */ - ROM_LOAD( "fg1-007", 0x000000, 0x100000, CRC(4a2fe9e0) SHA1(e55b6f301f842ff5d3c7a0041856695ac1d8a78f) ) + ROM_LOAD( "snd0.u156", 0x000000, 0x020000, CRC(4d253547) SHA1(87cda11dc86bc121cb8fb0e574006c3627158f51) ) + ROM_LOAD( "snd1.u157", 0x020000, 0x020000, CRC(79b56e22) SHA1(4b6c62e96dc1e8fb6dc0a76c505f9d805ef4684f) ) + ROM_LOAD( "snd2.u158", 0x040000, 0x020000, CRC(bc8de02a) SHA1(503c2c9f9ce029701e6a5b134d9407ab06e28913) ) + ROM_LOAD( "snd3.u159", 0x060000, 0x020000, CRC(939777fd) SHA1(3dd1b89a4f81f745c68037c568c885fe1403ed31) ) + ROM_LOAD( "snd4.u160", 0x080000, 0x020000, CRC(7b97716d) SHA1(6693e81dc008317c6a985558624f5d5cf00785e9) ) + ROM_LOAD( "snd5.u161", 0x0A0000, 0x020000, CRC(294e1cc9) SHA1(5faef5eb9f15c23686c2f66646c6f6724e7c611f) ) + ROM_LOAD( "snd6.u162", 0x0C0000, 0x020000, CRC(ecab073b) SHA1(f991fb9d9d4ffe24b67b233850ef0727dc6329b6) ) + ROM_LOAD( "snd7.u163", 0x0E0000, 0x020000, CRC(1b7ea768) SHA1(7dfa8cbcb839c76f3f9eefd6abbc2b424c3d970a) ) + + ROM_REGION( 0xC00, "pals", 0 ) + ROM_LOAD( "con1x.u35", 0x000000, 0x104, CRC(ce8b57d9) SHA1(e433a8cee4f964123595f904170793e152290be1) ) + ROM_LOAD( "con2x.u36", 0x000200, 0x104, CRC(0b18db9e) SHA1(80e6aacb1455e15c6e665feaec8711070c14a901) ) + ROM_LOAD( "dec1x.u14", 0x000400, 0x104, CRC(d197abfe) SHA1(93f08d879c339ec00598383723912d7d0eab306c) ) + ROM_LOAD( "dec2x.u206", 0x000600, 0x104, CRC(35afbba8) SHA1(ce1cc0f75467a1ce6444250d741e70c2ed8d4c14) ) + ROM_LOAD( "pcon2.u110", 0x000800, 0x104, CRC(082882c2) SHA1(78385047ed8b1e2c11926c5ce8dea40450b0d0b0) ) + ROM_LOAD( "sc.u116", 0x000A00, 0x104, CRC(e57bfde9) SHA1(33632d007c8e48d756fc920985f82ae32dcd63e6) ) ROM_END ROM_START( msgundam ) @@ -11324,8 +11515,8 @@ GAME( 1992, zingzipbl,zingzip, zingzipbl,zingzip, driver_device, 0, ROT GAME( 1993, atehate, 0, atehate, atehate, driver_device, 0, ROT0, "Athena", "Athena no Hatena ?", 0 ) -GAME( 1993, daioh, 0, daioh, daioh, driver_device, 0, ROT270, "Athena", "Daioh (set 1)", 0 ) -GAME( 1993, daioha, daioh, daioh, daioh, driver_device, 0, ROT270, "Athena", "Daioh (set 2)", 0 ) +GAME( 1993, daioh, 0, daioh, daioh, driver_device, 0, ROT270, "Athena", "Daioh", 0 ) +GAME( 1993, daiohloc, daioh, daiohloc, daiohloc, driver_device, 0, ROT270, "Athena", "Daioh (location test ver)", 0 ) GAME( 1993, jjsquawk, 0, jjsquawk, jjsquawk, driver_device, 0, ROT0, "Athena / Able", "J. J. Squawkers", GAME_IMPERFECT_SOUND ) GAME( 1993, jjsquawkb,jjsquawk, jjsquawb, jjsquawk, driver_device, 0, ROT0, "bootleg", "J. J. Squawkers (bootleg)", GAME_IMPERFECT_SOUND ) diff --git a/src/mame/mame.lst b/src/mame/mame.lst index 1e9348c324b..0f407fc35c4 100644 --- a/src/mame/mame.lst +++ b/src/mame/mame.lst @@ -9059,7 +9059,7 @@ madshark // (c) 1993 Allumer msgundam // (c) 1993 Banpresto msgundam1 // (c) 1993 Banpresto daioh // (C) 1993 Athena -daioha // (C) 1993 Athena +daiohloc // (C) 1993 Athena (location test version) oisipuzl // (c) 1993 SunSoft / Atlus triplfun // bootleg utoukond // (c) 1993 Banpresto + Tsuburaya Prod. -- cgit v1.2.3 From cb6401fd5929c6751da08cca1b7189ac09f4ce68 Mon Sep 17 00:00:00 2001 From: Alex Marshall Date: Thu, 5 Mar 2015 00:39:20 -0800 Subject: Re-added old daioh set as 'daioh1' with note. --- src/mame/drivers/seta.c | 46 +++++++++++++++++++++++++++++++++++++++------- src/mame/mame.lst | 1 + 2 files changed, 40 insertions(+), 7 deletions(-) diff --git a/src/mame/drivers/seta.c b/src/mame/drivers/seta.c index a6bd0c09f6e..0e4891e37e1 100644 --- a/src/mame/drivers/seta.c +++ b/src/mame/drivers/seta.c @@ -10328,21 +10328,52 @@ ROM_END ROM_START( daioh ) ROM_REGION( 0x100000, "maincpu", 0 ) /* 68000 Code */ - ROM_LOAD16_BYTE( "fg1-001.u3", 0x000000, 0x080000, CRC(104ae74a) SHA1(928c467e3ff98285a4828a927d851fcdf296849b) ) - ROM_LOAD16_BYTE( "fg1-002.u4", 0x000001, 0x080000, CRC(e39a4e67) SHA1(c3f47e9d407f32dbfaf209d29b4446e4de8829a2) ) + ROM_LOAD16_BYTE( "fg-001-001.u3", 0x000000, 0x080000, CRC(104ae74a) SHA1(928c467e3ff98285a4828a927d851fcdf296849b) ) + ROM_LOAD16_BYTE( "fg-001-002.u4", 0x000001, 0x080000, CRC(e39a4e67) SHA1(c3f47e9d407f32dbfaf209d29b4446e4de8829a2) ) ROM_REGION( 0x200000, "gfx1", 0 ) /* Sprites */ - ROM_LOAD( "fg1-004", 0x000000, 0x100000, CRC(9ab0533e) SHA1(b260ceb2b3e140971419329bee07a020171794f7) ) - ROM_LOAD( "fg1-003", 0x100000, 0x100000, CRC(1c9d51e2) SHA1(1d6236ab28d11676386834fd6e405fd40198e924) ) + ROM_LOAD( "fg-001-004", 0x000000, 0x100000, CRC(9ab0533e) SHA1(b260ceb2b3e140971419329bee07a020171794f7) ) + ROM_LOAD( "fg-001-003", 0x100000, 0x100000, CRC(1c9d51e2) SHA1(1d6236ab28d11676386834fd6e405fd40198e924) ) ROM_REGION( 0x200000, "gfx2", 0 ) /* Layer 1 */ - ROM_LOAD( "fg1-005", 0x000000, 0x200000, CRC(c25159b9) SHA1(4c9da3233223508389c3c0f277a00aedfc860da4) ) + ROM_LOAD( "fg-001-005", 0x000000, 0x200000, CRC(c25159b9) SHA1(4c9da3233223508389c3c0f277a00aedfc860da4) ) ROM_REGION( 0x200000, "gfx3", 0 ) /* Layer 2 */ - ROM_LOAD( "fg1-006", 0x000000, 0x200000, CRC(2052c39a) SHA1(83a444a76e68aa711b0e25a5aa963ca876a6357e) ) + ROM_LOAD( "fg-001-006", 0x000000, 0x200000, CRC(2052c39a) SHA1(83a444a76e68aa711b0e25a5aa963ca876a6357e) ) ROM_REGION( 0x100000, "x1snd", 0 ) /* Samples */ - ROM_LOAD( "fg1-007", 0x000000, 0x100000, CRC(4a2fe9e0) SHA1(e55b6f301f842ff5d3c7a0041856695ac1d8a78f) ) + ROM_LOAD( "fg-001-007", 0x000000, 0x100000, CRC(4a2fe9e0) SHA1(e55b6f301f842ff5d3c7a0041856695ac1d8a78f) ) +ROM_END + +/* +The changes between this set and the parent set are very minimal. It is potentially a hack/bootleg. + +Overview of the changes: +- the vector table has been changed to make bus error and address error go somewhere other than a hard lock + - the new destination is a newly inserted RTE that's located at the first NOP in the code that would've affected nothing +- there's a change in a jumptable at $23A28 that pushes the destination PC into the original function, but not into a different one + - which would make no sense from an official build unless they possibly lost the source +- at $23DF2 a fairly large chunk of code has been rewritten, with a bunch of NOPs added for padding +- there are various changes around that change things like "ADDI $20, D0" to "MOVE $7F, D0" + - these are after doing real computation with D0, so it seems strange +*/ +ROM_START( daioh1 ) + ROM_REGION( 0x100000, "maincpu", 0 ) /* 68000 Code */ + ROM_LOAD16_BYTE( "fg-001-001.bin", 0x000000, 0x080000, CRC(e1ef3007) SHA1(864349efac3e3dc3ccdeb892fed285c73aea3997) ) + ROM_LOAD16_BYTE( "fg-001-002.bin", 0x000001, 0x080000, CRC(5e3481f9) SHA1(7585a7e56392fc2b13d466cf262383dd68d6d995) ) + + ROM_REGION( 0x200000, "gfx1", 0 ) /* Sprites */ + ROM_LOAD( "fg-001-004", 0x000000, 0x100000, CRC(9ab0533e) SHA1(b260ceb2b3e140971419329bee07a020171794f7) ) + ROM_LOAD( "fg-001-003", 0x100000, 0x100000, CRC(1c9d51e2) SHA1(1d6236ab28d11676386834fd6e405fd40198e924) ) + + ROM_REGION( 0x200000, "gfx2", 0 ) /* Layer 1 */ + ROM_LOAD( "fg-001-005", 0x000000, 0x200000, CRC(c25159b9) SHA1(4c9da3233223508389c3c0f277a00aedfc860da4) ) + + ROM_REGION( 0x200000, "gfx3", 0 ) /* Layer 2 */ + ROM_LOAD( "fg-001-006", 0x000000, 0x200000, CRC(2052c39a) SHA1(83a444a76e68aa711b0e25a5aa963ca876a6357e) ) + + ROM_REGION( 0x100000, "x1snd", 0 ) /* Samples */ + ROM_LOAD( "fg-001-007", 0x000000, 0x100000, CRC(4a2fe9e0) SHA1(e55b6f301f842ff5d3c7a0041856695ac1d8a78f) ) ROM_END ROM_START( daiohloc ) @@ -11516,6 +11547,7 @@ GAME( 1992, zingzipbl,zingzip, zingzipbl,zingzip, driver_device, 0, ROT GAME( 1993, atehate, 0, atehate, atehate, driver_device, 0, ROT0, "Athena", "Athena no Hatena ?", 0 ) GAME( 1993, daioh, 0, daioh, daioh, driver_device, 0, ROT270, "Athena", "Daioh", 0 ) +GAME( 1993, daioh1, daioh, daioh, daioh, driver_device, 0, ROT270, "Athena", "Daioh (set 1)", 0 ) GAME( 1993, daiohloc, daioh, daiohloc, daiohloc, driver_device, 0, ROT270, "Athena", "Daioh (location test ver)", 0 ) GAME( 1993, jjsquawk, 0, jjsquawk, jjsquawk, driver_device, 0, ROT0, "Athena / Able", "J. J. Squawkers", GAME_IMPERFECT_SOUND ) diff --git a/src/mame/mame.lst b/src/mame/mame.lst index 0f407fc35c4..46a1d271ae4 100644 --- a/src/mame/mame.lst +++ b/src/mame/mame.lst @@ -9059,6 +9059,7 @@ madshark // (c) 1993 Allumer msgundam // (c) 1993 Banpresto msgundam1 // (c) 1993 Banpresto daioh // (C) 1993 Athena +daioh1 // (C) 1993 Athena daiohloc // (C) 1993 Athena (location test version) oisipuzl // (c) 1993 SunSoft / Atlus triplfun // bootleg -- cgit v1.2.3