From a55c6752e3b3e3c4d24a4987ba7dc4a7aafbd824 Mon Sep 17 00:00:00 2001 From: Ivan Vangelista Date: Tue, 15 Jan 2019 18:01:21 +0100 Subject: new not working machine ---------------------------------- FreeWay (V5.12) [Guru] new not working clone ------------------------------------ Queen Bee (Brazil, Ver. 202) [Guru] --- src/mame/drivers/amusco.cpp | 57 +++++++++++++++++++++++++++++++++++-------- src/mame/drivers/subsino2.cpp | 45 ++++++++++++++++++++++++++++++++-- src/mame/mame.lst | 2 ++ 3 files changed, 92 insertions(+), 12 deletions(-) diff --git a/src/mame/drivers/amusco.cpp b/src/mame/drivers/amusco.cpp index e349c69ccc5..7ce94b6a86a 100644 --- a/src/mame/drivers/amusco.cpp +++ b/src/mame/drivers/amusco.cpp @@ -117,6 +117,7 @@ public: void amusco(machine_config &config); void draw88pkr(machine_config &config); + void freeway(machine_config &config); DECLARE_WRITE_LINE_MEMBER(coin_irq); @@ -141,6 +142,7 @@ private: void amusco_mem_map(address_map &map); void amusco_io_map(address_map &map); + void freeway_mem_map(address_map &map); std::unique_ptr m_videoram; tilemap_t *m_bg_tilemap; @@ -212,7 +214,13 @@ void amusco_state::machine_start() void amusco_state::amusco_mem_map(address_map &map) { map(0x00000, 0x0ffff).ram(); - map(0xf8000, 0xfffff).rom(); + map(0xf8000, 0xfffff).rom().region("maincpu", 0); +} + +void amusco_state::freeway_mem_map(address_map &map) +{ + map(0x00000, 0x0ffff).ram(); + map(0xf0000, 0xfffff).rom().region("maincpu", 0); } READ8_MEMBER( amusco_state::mc6845_r) @@ -599,19 +607,27 @@ MACHINE_CONFIG_START(amusco_state::amusco) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.80) MACHINE_CONFIG_END -MACHINE_CONFIG_START(amusco_state::draw88pkr) +void amusco_state::draw88pkr(machine_config &config) +{ amusco(config); //MCFG_DEVICE_MODIFY("ppi_outputs") // Some bits are definitely different -MACHINE_CONFIG_END +} + +void amusco_state::freeway(machine_config &config) +{ + amusco(config); + m_maincpu->set_addrmap(AS_PROGRAM, &amusco_state::freeway_mem_map); + //TODO: everything +} /************************* * Rom Load * *************************/ ROM_START( amusco ) - ROM_REGION( 0x100000, "maincpu", 0 ) - ROM_LOAD( "pk_v1.4_u42.u42", 0xf8000, 0x08000, CRC(bf57d7b1) SHA1(fc8b062b12c241c6c096325f728305316b80be8b) ) + ROM_REGION( 0x8000, "maincpu", 0 ) + ROM_LOAD( "pk_v1.4_u42.u42", 0x0000, 0x8000, CRC(bf57d7b1) SHA1(fc8b062b12c241c6c096325f728305316b80be8b) ) ROM_REGION( 0xc000, "gfx1", 0 ) ROM_LOAD( "char_a_u35.u35", 0x0000, 0x4000, CRC(ded67ef6) SHA1(da7326c190211e956e5a5f763d5045615bb8ffb3) ) @@ -638,8 +654,8 @@ ROM_END */ ROM_START( draw88pkr ) - ROM_REGION( 0x100000, "maincpu", 0 ) - ROM_LOAD( "u42.bin", 0xf8000, 0x08000, CRC(e98a7cfd) SHA1(8dc581c3e0cfd78bd33fbbbafd40307cf66f154d) ) + ROM_REGION( 0x8000, "maincpu", 0 ) + ROM_LOAD( "u42.bin", 0x0000, 0x8000, CRC(e98a7cfd) SHA1(8dc581c3e0cfd78bd33fbbbafd40307cf66f154d) ) ROM_REGION( 0xc000, "gfx1", 0 ) ROM_LOAD( "u35.bin", 0x0000, 0x4000, CRC(f608019a) SHA1(f0c5e10a03f39976d9bc6e8bc9f78e30ffefa03e) ) @@ -647,11 +663,32 @@ ROM_START( draw88pkr ) ROM_LOAD( "u37.bin", 0x8000, 0x4000, CRC(6e23b9f2) SHA1(6916828d84d1ecb44dc454e6786f97801a8550c7) ) ROM_END +// this might better fit another driver +// 8088 CPU +// Intel 8254 Programmable Interval Timer +// Intel 8259 +// 2x 8k SRAM +// 1x 32k SRAM +// 6845 video chip +// 5 roms +// Oscillator 10 MHz + +ROM_START( freeway ) + ROM_REGION( 0x10000, "maincpu", 0 ) + ROM_LOAD( "vip88.bin", 0x00000, 0x10000, CRC(aeba6d5e) SHA1(bb84f7040bf1b6976cb2c50b1ffdc59ae88df223) ) + + ROM_REGION( 0x20000, "gfx1", 0 ) // loading might be wrong + ROM_LOAD( "sb_51.bin", 0x00000, 0x8000, CRC(d25bd328) SHA1(b8c692298f6dc5fd5ae2f9e7701e14b0436a95bb) ) // xxx0xxxxxxxxxxx = 0xFF + ROM_LOAD( "sb_52.bin", 0x08000, 0x8000, CRC(f2b33acd) SHA1(e4786b4f00871d771aadacd9d6ec767691f4d939) ) + ROM_LOAD( "sb_53.bin", 0x10000, 0x8000, CRC(50407ae6) SHA1(2c6c4803905bed5f27c6783f99a24f8dee62c19b) ) + ROM_LOAD( "sb_cor.bin", 0x18000, 0x8000, CRC(5f86a160) SHA1(f21b7e0e6a407371c252d6fde6fcb32a2682824c) ) // 00000xxxxxxxxxx = 0xFF +ROM_END /************************* * Game Drivers * *************************/ -/* YEAR NAME PARENT MACHINE INPUT CLASS INIT ROT COMPANY FULLNAME FLAGS LAYOUT */ -GAMEL( 1987, amusco, 0, amusco, amusco, amusco_state, empty_init, ROT0, "Amusco", "American Music Poker (V1.4)", MACHINE_IMPERFECT_COLORS | MACHINE_NODEVICE_PRINTER, layout_amusco ) // palette totally wrong -GAMEL( 1988, draw88pkr, 0, draw88pkr, draw88pkr, amusco_state, empty_init, ROT0, "BTE, Inc.", "Draw 88 Poker (V2.0)", MACHINE_IMPERFECT_COLORS | MACHINE_NODEVICE_PRINTER, layout_amusco ) // palette totally wrong +/* YEAR NAME PARENT MACHINE INPUT CLASS INIT ROT COMPANY FULLNAME FLAGS LAYOUT */ +GAMEL( 1987, amusco, 0, amusco, amusco, amusco_state, empty_init, ROT0, "Amusco", "American Music Poker (V1.4)", MACHINE_IMPERFECT_COLORS | MACHINE_NODEVICE_PRINTER, layout_amusco ) // palette totally wrong +GAMEL( 1988, draw88pkr, 0, draw88pkr, draw88pkr, amusco_state, empty_init, ROT0, "BTE, Inc.", "Draw 88 Poker (V2.0)", MACHINE_IMPERFECT_COLORS | MACHINE_NODEVICE_PRINTER, layout_amusco ) // palette totally wrong +GAMEL( 1999, freeway, 0, draw88pkr, draw88pkr, amusco_state, empty_init, ROT0, "NVC Electronica", "FreeWay (V5.12)", MACHINE_IS_SKELETON | MACHINE_NODEVICE_PRINTER, layout_amusco ) // might need an own driver diff --git a/src/mame/drivers/subsino2.cpp b/src/mame/drivers/subsino2.cpp index 911cfd63099..13b9903abe6 100644 --- a/src/mame/drivers/subsino2.cpp +++ b/src/mame/drivers/subsino2.cpp @@ -22,6 +22,7 @@ Year Game CPU Sound Custom 1999 Bishou Jan H8/3044** SS9904 SS9601, SS9802, SS9803 HM86171 RAMDAC, Battery 1999 X-Train/P-Train AM188-EM M6295 SS9601, SS9802, SS9803 HM86171 RAMDAC, Battery 2000 New 2001 H8/3044** SS9904 SS9601, SS9802, SS9803 HM86171 RAMDAC, Battery +2001 Queen Bee H8/3044** SS9804 SS9601, SS9802, SS9803 HM86171 RAMDAC, Battery 2001 Humlan's Lyckohjul H8/3044** SS9804 SS9601, SS9802, SS9803 HM86171 RAMDAC, Battery 2002 Super Queen Bee H8/3044** ? ? ? 2006 X-Plan AM188-EM M6295 SS9601, SS9802, SS9803 HM86171 RAMDAC, Battery @@ -114,6 +115,7 @@ public: void init_bishjan(); void init_new2001(); + void init_queenbee(); void init_humlan(); void init_squeenb(); void init_xtrain(); @@ -2700,6 +2702,44 @@ void subsino2_state::init_new2001() /*************************************************************************** +Queen Bee +(c) 2001 Subsino + +no ROM labels available + +***************************************************************************/ + +ROM_START( queenbee ) + ROM_REGION( 0x80000, "maincpu", 0 ) // H8/3044 + ROM_LOAD( "u21", 0x00000, 0x40000, CRC(23e0ad8f) SHA1(d913ebd249c471ab36aabe515a8b36bb3590c1ca) ) + ROM_FILL( 0x40000, 0x40000, 0xff ) + + ROM_REGION( 0x200000, "tilemap", 0 ) // this PCB has a single surface mounted ROM, which hasn't been dumped. + ROM_LOAD( "gfx", 0x000000, 0x200000, NO_DUMP ) + // following ROMs are taken from humlan for testing, it doesn't seem to be a case of just differently split ROMs. + // ROM_LOAD32_BYTE( "hlj__truemax_3_v402.u25", 0x000000, 0x80000, CRC(dfc8d795) SHA1(93e0fe271c7390596f73092720befe11d8354838) ) + // ROM_LOAD32_BYTE( "hlj__truemax_4_v402.u26", 0x000001, 0x80000, CRC(31c774d6) SHA1(13fcdb42f5fd7d0cadd3fd7030037c21b7585f0f) ) + // ROM_LOAD32_BYTE( "hlj__truemax_5_v402.u27", 0x000002, 0x80000, CRC(28e14be8) SHA1(778906427175ca50ad5b0a7c5978c36ed29ef994) ) + // ROM_LOAD32_BYTE( "hlj__truemax_6_v402.u28", 0x000003, 0x80000, CRC(d1c7ae17) SHA1(3ddb8ad38eeb5ab0a944d7d26cfb890a4327ef2e) ) + + ROM_REGION( 0x40000, "samples", 0 ) + ROM_LOAD( "u9", 0x000000, 0x40000, NO_DUMP ) +ROM_END + +void subsino2_state::init_queenbee() +{ + uint16_t *rom = (uint16_t*)memregion("maincpu")->base(); + + // patch serial protection test (ERROR 093099 otherwise) + rom[0x1826/2] = 0x4066; + + // rts -> rte + rom[0x3902/2] = 0x5670; // IRQ 8 + rom[0x3a56/2] = 0x5670; // IRQ 0 +} + +/*************************************************************************** + Humlan's Lyckohjul (Sweden, V402) (c) 2001 Subsino & Truemax @@ -3224,5 +3264,6 @@ GAME( 1999, ptrain, 0, xtrain, xtrain, subsino2_state, init_ptrain, GAME( 1999, bishjan, 0, bishjan, bishjan, subsino2_state, init_bishjan, ROT0, "Subsino", "Bishou Jan (Japan, Ver. 203)", MACHINE_NO_SOUND ) GAME( 2000, new2001, 0, new2001, new2001, subsino2_state, init_new2001, ROT0, "Subsino", "New 2001 (Italy, Ver. 200N)", MACHINE_NO_SOUND ) GAME( 2006, xplan, 0, xplan, xplan, subsino2_state, init_xplan, ROT0, "Subsino", "X-Plan (Ver. 101)", 0 ) -GAME( 2001, humlan, 0, humlan, humlan, subsino2_state, init_humlan, ROT0, "Subsino (Truemax license)", "Humlan's Lyckohjul (Sweden, Ver. 402)", MACHINE_NO_SOUND | MACHINE_IMPERFECT_GRAPHICS ) -GAME( 2002, squeenb, 0, humlan, humlan, subsino2_state, init_squeenb, ROT0, "Subsino", "Super Queen Bee (Ver. 101)", MACHINE_NO_SOUND | MACHINE_IMPERFECT_GRAPHICS ) +GAME( 2001, queenbee, 0, humlan, humlan, subsino2_state, init_queenbee, ROT0, "Subsino", "Queen Bee (Brazil, Ver. 202)", MACHINE_NOT_WORKING | MACHINE_NO_SOUND | MACHINE_IMPERFECT_GRAPHICS ) // severe timing issues, only program ROM available +GAME( 2001, humlan, queenbee, humlan, humlan, subsino2_state, init_humlan, ROT0, "Subsino (Truemax license)", "Humlan's Lyckohjul (Sweden, Ver. 402)", MACHINE_NOT_WORKING | MACHINE_NO_SOUND | MACHINE_IMPERFECT_GRAPHICS ) // severe timing issues +GAME( 2002, squeenb, 0, humlan, humlan, subsino2_state, init_squeenb, ROT0, "Subsino", "Super Queen Bee (Ver. 101)", MACHINE_NOT_WORKING | MACHINE_NO_SOUND | MACHINE_IMPERFECT_GRAPHICS ) // severe timing issues diff --git a/src/mame/mame.lst b/src/mame/mame.lst index 30856c03d7f..4bdd7c3b0c7 100644 --- a/src/mame/mame.lst +++ b/src/mame/mame.lst @@ -1264,6 +1264,7 @@ kccomp // VEB KC compact @source:amusco.cpp amusco // 1987, Amusco. draw88pkr // 1988, BTE, Inc. +freeway @source:amust.cpp amust // @@ -36233,6 +36234,7 @@ humlan // (c) 2001 Subsino & Truemax mtrain // (c) 1996 Subsino new2001 // (c) 2000 Subsino ptrain // (c) 1999 Subsino +queenbee // (c) 2001 Subsino saklove // (c) 1998 Subsino squeenb // (c) 2002 Subsino wtrnymph // (c) 1996 Subsino -- cgit v1.2.3