From 65d7c097619033520bfd5b0f12839b2c14585d7b Mon Sep 17 00:00:00 2001 From: hap Date: Wed, 3 Jul 2024 13:44:05 +0200 Subject: mm1,mephisto3: reorder parent/clones New working clones ------------------ Mephisto II (set 3) [Berger] Mephisto ESB II (ESB II board) [hap, Berger] --- src/mame/apple/apple2gs.cpp | 32 +++---- src/mame/hegenerglaser/brikett.cpp | 187 +++++++++++++++++++++++++------------ src/mame/hegenerglaser/mm1.cpp | 12 +-- src/mame/mame.lst | 6 +- 4 files changed, 155 insertions(+), 82 deletions(-) diff --git a/src/mame/apple/apple2gs.cpp b/src/mame/apple/apple2gs.cpp index a2bad0d7f25..62982b55f71 100644 --- a/src/mame/apple/apple2gs.cpp +++ b/src/mame/apple/apple2gs.cpp @@ -839,11 +839,11 @@ void apple2gs_state::machine_reset() m_ramrd = false; m_ramwrt = false; m_ioudis = true; - m_video->set_newvideo(0x01); // verified on ROM03 hardware + m_video->set_newvideo(0x01); // verified on ROM03 hardware m_clock_frame = 0; m_slot_irq = false; m_clkdata = 0; - m_clock_control =0; + m_clock_control = 0; m_shadow = 0x00; m_speed = 0x80; @@ -1214,20 +1214,20 @@ void apple2gs_state::lc_update(int offset, bool writing) { bool old_lcram = m_lcram; - //any even access disables pre-write and writing + // any even access disables pre-write and writing if ((offset & 1) == 0) { m_lcprewrite = false; m_lcwriteenable = false; } - //any write disables pre-write - //has no effect on write-enable if writing was enabled already + // any write disables pre-write + // has no effect on write-enable if writing was enabled already if (writing == true) { m_lcprewrite = false; } - //first odd read enables pre-write, second one enables writing + // first odd read enables pre-write, second one enables writing else if ((offset & 1) == 1) { if (m_lcprewrite == false) @@ -1315,7 +1315,7 @@ void apple2gs_state::do_io(int offset) case 0x20: break; - case 0x28: // ROMSWITCH - not used by the IIgs firmware or SSW, but does exist at least on ROM 0/1 (need to test on ROM 3 hw) + case 0x28: // ROMSWITCH - not used by the IIgs firmware or SSW, but does exist at least on ROM 0/1 (need to test on ROM 3 hw) if (!m_is_rom3) { m_romswitch = !m_romswitch; @@ -2226,7 +2226,7 @@ u8 apple2gs_state::c080_r(offs_t offset) slow_cycle(); - offset &= 0x7F; + offset &= 0x7f; slot = offset / 0x10; if (slot == 0) @@ -2281,7 +2281,7 @@ void apple2gs_state::c080_w(offs_t offset, u8 data) slow_cycle(); - offset &= 0x7F; + offset &= 0x7f; slot = offset / 0x10; if (slot == 0) @@ -3177,8 +3177,8 @@ void apple2gs_state::apple2gs_map(address_map &map) map(0x000400, 0x0007ff).view(m_b0_0400bank); m_b0_0400bank[0](0x0400, 0x07ff).rw(FUNC(apple2gs_state::b0ram0400_r), FUNC(apple2gs_state::b0ram0400_w)); // wr 0 rd 0 - m_b0_0400bank[1](0x0400, 0x07ff).rw(FUNC(apple2gs_state::b1ram0400_r), FUNC(apple2gs_state::b0ram0400_w)); // wr 0 rd 1 - m_b0_0400bank[2](0x0400, 0x07ff).rw(FUNC(apple2gs_state::b0ram0400_r), FUNC(apple2gs_state::b1ram0400_w)); // wr 1 rd 0 + m_b0_0400bank[1](0x0400, 0x07ff).rw(FUNC(apple2gs_state::b1ram0400_r), FUNC(apple2gs_state::b0ram0400_w)); // wr 0 rd 1 + m_b0_0400bank[2](0x0400, 0x07ff).rw(FUNC(apple2gs_state::b0ram0400_r), FUNC(apple2gs_state::b1ram0400_w)); // wr 1 rd 0 m_b0_0400bank[3](0x0400, 0x07ff).rw(FUNC(apple2gs_state::b1ram0400_r), FUNC(apple2gs_state::b1ram0400_w)); // wr 1 rd 1 map(0x000800, 0x001fff).view(m_b0_0800bank); @@ -4025,11 +4025,11 @@ ROM_END } // Anonymous namespace -/* YEAR NAME PARENT COMPAT MACHINE INPUT CLASS INIT COMPANY FULLNAME */ +/* YEAR NAME PARENT COMPAT MACHINE INPUT CLASS INIT COMPANY FULLNAME */ COMP( 1989, apple2gs, 0, apple2, apple2gs, apple2gsrom3, apple2gs_state, rom3_init, "Apple Computer", "Apple IIgs (ROM03)", MACHINE_SUPPORTS_SAVE ) COMP( 198?, apple2gsr3p, apple2gs, 0, apple2gs, apple2gsrom3, apple2gs_state, rom3_init, "Apple Computer", "Apple IIgs (ROM03 prototype)", MACHINE_NOT_WORKING ) -COMP( 1987, apple2gsr1, apple2gs, 0, apple2gsr1, apple2gs, apple2gs_state, rom1_init, "Apple Computer", "Apple IIgs (ROM01)", MACHINE_SUPPORTS_SAVE ) -COMP( 1986, apple2gsr0, apple2gs, 0, apple2gsr1, apple2gs, apple2gs_state, rom1_init, "Apple Computer", "Apple IIgs (ROM00)", MACHINE_SUPPORTS_SAVE ) -COMP( 1986, apple2gsr0p, apple2gs, 0, apple2gsr1, apple2gs, apple2gs_state, rom1_init, "Apple Computer", "Apple IIgs (ROM00 prototype 6/19/1986)", MACHINE_SUPPORTS_SAVE ) -COMP( 1986, apple2gsr0p2, apple2gs, 0, apple2gsr1, apple2gs, apple2gs_state, rom1_init, "Apple Computer", "Apple IIgs (ROM00 prototype 3/10/1986)", MACHINE_SUPPORTS_SAVE ) +COMP( 1987, apple2gsr1, apple2gs, 0, apple2gsr1, apple2gs, apple2gs_state, rom1_init, "Apple Computer", "Apple IIgs (ROM01)", MACHINE_SUPPORTS_SAVE ) +COMP( 1986, apple2gsr0, apple2gs, 0, apple2gsr1, apple2gs, apple2gs_state, rom1_init, "Apple Computer", "Apple IIgs (ROM00)", MACHINE_SUPPORTS_SAVE ) +COMP( 1986, apple2gsr0p, apple2gs, 0, apple2gsr1, apple2gs, apple2gs_state, rom1_init, "Apple Computer", "Apple IIgs (ROM00 prototype 6/19/1986)", MACHINE_SUPPORTS_SAVE ) +COMP( 1986, apple2gsr0p2, apple2gs, 0, apple2gsr1, apple2gs, apple2gs_state, rom1_init, "Apple Computer", "Apple IIgs (ROM00 prototype 3/10/1986)", MACHINE_SUPPORTS_SAVE ) COMP( 1991, apple2gsmt, apple2gs, 0, apple2gsmt, apple2gsrom3, apple2gs_state, rom3_init, "Apple Computer", "Apple IIgs (1991 Mark Twain prototype)", MACHINE_NOT_WORKING | MACHINE_SUPPORTS_SAVE ) diff --git a/src/mame/hegenerglaser/brikett.cpp b/src/mame/hegenerglaser/brikett.cpp index 981fd338782..74983ee61ed 100644 --- a/src/mame/hegenerglaser/brikett.cpp +++ b/src/mame/hegenerglaser/brikett.cpp @@ -60,17 +60,23 @@ Mephisto III program module: - DM74LS373N (latch) - HCF4556BE (chip select?) -ESB 6000 chessboard: -- PCB label: DH 5000 00111 12 B -- CD4017, 74373, 74374 +ESB II interface (via module slot): +- PCB label: DH 5000 00 111 01 +- CD4001, 3*74373, MDP1603-331G (resistor array) + +ESB 6000 interface (via external port): +- PCB label: DH 5000 00 111 12 +- TC4081, TC4082, TC4017, 74373, 74374 + +ESB II/6000 chessboard: - 64 reed switches (magnet sensors) - 64 leds + power led ESB 3000 hardware is probably same as ESB 6000. There are no other known external port peripherals. -The Brikett was also used in the 1983 Mephisto Excalibur, but the hardware -is completely different, based on a 68000. +The Brikett (sans PCB) was also used in the 1983 Mephisto Excalibur, but the +hardware is completely different, based on a 68000. BTANB: - bad bug in mephistoj opening library: e4 e6 / d4 d5 / Nd2 c5 / exd5 Qd1xd5, @@ -86,7 +92,6 @@ BTANB: #include "machine/cdp1852.h" #include "machine/clock.h" #include "machine/sensorboard.h" -#include "machine/timer.h" #include "sound/dac.h" #include "video/pwm.h" @@ -113,7 +118,6 @@ public: m_display(*this, "display"), m_led_pwm(*this, "led_pwm"), m_dac(*this, "dac"), - m_speaker_off(*this, "speaker_off"), m_inputs(*this, "IN.%u", 0) { } @@ -124,7 +128,8 @@ public: void mephisto(machine_config &config); void mephistoj(machine_config &config); void mephisto2(machine_config &config); - void mephisto2e(machine_config &config); + void mephistoe2(machine_config &config); + void mephistoe2a(machine_config &config); void mephisto3(machine_config &config); protected: @@ -140,9 +145,9 @@ private: required_device m_display; optional_device m_led_pwm; required_device m_dac; - required_device m_speaker_off; optional_ioport_array<4+2> m_inputs; + emu_timer *m_speaker_off; bool m_reset = false; u8 m_esb_led = 0; u8 m_esb_row = 0; @@ -152,7 +157,8 @@ private: void mephisto_map(address_map &map); void mephistoj_map(address_map &map); void mephisto2_map(address_map &map); - void mephisto2e_map(address_map &map); + void mephistoe2_map(address_map &map); + void mephistoe2a_map(address_map &map); void mephisto3_map(address_map &map); void mephisto_io(address_map &map); void mephistoj_io(address_map &map); @@ -162,10 +168,12 @@ private: u8 input_r(offs_t offset); u8 sound_r(); - void esb_w(u8 data); - int esb_r(); + void esb2_w(offs_t offset, u8 data); + u8 esb2_r(offs_t offset); + void esb6_w(u8 data); + int esb6_r(); - TIMER_DEVICE_CALLBACK_MEMBER(speaker_off) { m_dac->write(0); } + TIMER_CALLBACK_MEMBER(speaker_off) { m_dac->write(0); } }; @@ -176,6 +184,8 @@ private: void brikett_state::machine_start() { + m_speaker_off = timer_alloc(FUNC(brikett_state::speaker_off), this); + // register for savestates save_item(NAME(m_reset)); save_item(NAME(m_esb_led)); @@ -251,9 +261,30 @@ u8 brikett_state::input_r(offs_t offset) } -// ESB 6000 +// ESB II board + +void brikett_state::esb2_w(offs_t offset, u8 data) +{ + // a0-a7,d0-d7: chessboard leds + m_led_pwm->matrix(~offset, m_inputs[5].read_safe(0) ? data : 0); +} + +u8 brikett_state::esb2_r(offs_t offset) +{ + u8 data = 0; + + // a0-a7,d0-d7: read chessboard + for (int i = 0; i < 8; i++) + if (BIT(~offset, i)) + data |= m_board->read_rank(i); + + return m_inputs[5].read_safe(0) ? ~data : 0; +} + + +// ESB 6000 board -void brikett_state::esb_w(u8 data) +void brikett_state::esb6_w(u8 data) { // CDP1852 SR + DO0-DO7 goes to external port, to chessboard if (!m_inputs[5].read_safe(0)) @@ -263,7 +294,7 @@ void brikett_state::esb_w(u8 data) return; } - // SR clocks CD4017 + // SR clocks TC4017 // 4017 Q0: N/C // 4017 Q1 + d0-d7: 74374 to led data // 4017 Q2 + d0-d7: 74373 to row select @@ -284,10 +315,10 @@ void brikett_state::esb_w(u8 data) m_led_pwm->matrix(~m_esb_row, m_esb_led); } -int brikett_state::esb_r() +int brikett_state::esb6_r() { // EF1: read chessboard sensor - if (m_board && m_inputs[5].read_safe(0)) + if (m_inputs[5].read_safe(0)) return (m_board->read_file(m_esb_select - 2) & ~m_esb_row) ? 0 : 1; else return 0; @@ -320,12 +351,18 @@ void brikett_state::mephisto2_map(address_map &map) map(0xf000, 0xf3ff).ram(); } -void brikett_state::mephisto2e_map(address_map &map) +void brikett_state::mephistoe2_map(address_map &map) { mephisto2_map(map); map(0x3000, 0x3fff).rom(); } +void brikett_state::mephistoe2a_map(address_map &map) +{ + mephistoe2_map(map); + map(0xbf00, 0xbfff).rw(FUNC(brikett_state::esb2_r), FUNC(brikett_state::esb2_w)); +} + void brikett_state::mephisto3_map(address_map &map) { mephisto_map(map); @@ -398,17 +435,26 @@ static INPUT_PORTS_START( mephistoj ) PORT_BIT(0x01, IP_ACTIVE_HIGH, IPT_UNUSED) INPUT_PORTS_END -static INPUT_PORTS_START( mephisto2e ) +static INPUT_PORTS_START( mephistoe2 ) PORT_INCLUDE( mephisto ) PORT_START("IN.5") // optional - PORT_CONFNAME( 0x01, 0x01, "ESB 6000" ) + PORT_CONFNAME( 0x01, 0x01, "ESB 6000 Board" ) + PORT_CONFSETTING( 0x00, DEF_STR( Off ) ) + PORT_CONFSETTING( 0x01, DEF_STR( On ) ) +INPUT_PORTS_END + +static INPUT_PORTS_START( mephistoe2a ) + PORT_INCLUDE( mephistoe2 ) + + PORT_MODIFY("IN.5") // optional + PORT_CONFNAME( 0x01, 0x01, "ESB II Board" ) PORT_CONFSETTING( 0x00, DEF_STR( Off ) ) PORT_CONFSETTING( 0x01, DEF_STR( On ) ) INPUT_PORTS_END static INPUT_PORTS_START( mephisto3 ) - PORT_INCLUDE( mephisto2e ) + PORT_INCLUDE( mephistoe2 ) PORT_MODIFY("IN.0") PORT_BIT(0x04, IP_ACTIVE_HIGH, IPT_KEYPAD) PORT_CODE(KEYCODE_ENTER) PORT_CODE(KEYCODE_ENTER_PAD) PORT_NAME("ENT") @@ -458,8 +504,6 @@ void brikett_state::mephistoj(machine_config &config) // sound hardware SPEAKER(config, "speaker").front_center(); DAC_1BIT(config, m_dac).add_route(ALL_OUTPUTS, "speaker", 0.25); - - TIMER(config, m_speaker_off).configure_generic(FUNC(brikett_state::speaker_off)); } void brikett_state::mephisto(machine_config &config) @@ -491,14 +535,12 @@ void brikett_state::mephisto2(machine_config &config) m_maincpu->set_addrmap(AS_PROGRAM, &brikett_state::mephisto2_map); } -void brikett_state::mephisto2e(machine_config &config) +void brikett_state::mephistoe2a(machine_config &config) { mephisto2(config); // basic machine hardware - m_maincpu->set_addrmap(AS_PROGRAM, &brikett_state::mephisto2e_map); - m_maincpu->ef1_cb().set(FUNC(brikett_state::esb_r)); - m_extport->do_cb().set(FUNC(brikett_state::esb_w)); + m_maincpu->set_addrmap(AS_PROGRAM, &brikett_state::mephistoe2a_map); SENSORBOARD(config, m_board).set_type(sensorboard_device::MAGNETS); m_board->init_cb().set(m_board, FUNC(sensorboard_device::preset_chess)); @@ -508,9 +550,19 @@ void brikett_state::mephisto2e(machine_config &config) config.set_default_layout(layout_mephisto_esb2); } +void brikett_state::mephistoe2(machine_config &config) +{ + mephistoe2a(config); + + // basic machine hardware + m_maincpu->set_addrmap(AS_PROGRAM, &brikett_state::mephistoe2_map); + m_maincpu->ef1_cb().set(FUNC(brikett_state::esb6_r)); + m_extport->do_cb().set(FUNC(brikett_state::esb6_w)); +} + void brikett_state::mephisto3(machine_config &config) { - mephisto2e(config); + mephistoe2(config); // basic machine hardware m_maincpu->set_clock(6.144_MHz_XTAL); @@ -526,7 +578,7 @@ void brikett_state::mephisto3(machine_config &config) ROM Definitions *******************************************************************************/ -ROM_START( mephisto ) // ROM serials 911xx have same contents, some modules have both 898xx and 911xx chips +ROM_START( mephisto ) // module s/n 00226xx (898xx Mask ROMs), 01011xx (911xx Mask ROMs) ROM_REGION( 0x10000, "maincpu", 0 ) ROM_LOAD("89810", 0x0000, 0x0400, CRC(6816be9e) SHA1(f5f1d5084925fe239f5b2ecf4724751e0dc4fc51) ) // CDP1833CE, also seen with label 91143 ROM_LOAD("89811", 0x0400, 0x0400, CRC(15febc73) SHA1(10353a7f021993f2cf7d509a928425617e1786fb) ) // " or 91144 @@ -534,6 +586,7 @@ ROM_START( mephisto ) // ROM serials 911xx have same contents, some modules have ROM_LOAD("89813", 0x0c00, 0x0400, CRC(62da3d89) SHA1(a7f9ada7037e0bd61420358c147b2f57ee47ebcb) ) // " or 91146 ROM_LOAD("89814", 0x1000, 0x0400, CRC(8e212d9c) SHA1(5df221ce8ca4fbb74f34f31738db4c2efee7fb01) ) // " or 91163 ROM_LOAD("89815", 0x1400, 0x0400, CRC(072e0b01) SHA1(5b1074932b3f21ab01392250061c093de4af3624) ) // " or 91147 + // 911xx Mask ROMs have the same contents as 898xx Mask ROMs, some modules have both 898xx and 911xx ROM_END ROM_START( mephisto1x ) @@ -549,51 +602,67 @@ ROM_START( mephistoj ) ROM_END -ROM_START( mephisto2 ) // cartridge s/n 0302446 +ROM_START( mephisto2 ) // module s/n 01142xx (HN462532G EPROMs), 00476xx (TC5334P Mask ROMs) ROM_REGION( 0x10000, "maincpu", 0 ) - ROM_LOAD("5619_03_351.1", 0x0000, 0x1000, CRC(5b13d7bf) SHA1(e1b7dee278a03f75e8a1554715fca4c7fbbc1cb8) ) // TC5334P - ROM_LOAD("5620_03_352.2", 0x1000, 0x1000, CRC(e93bf521) SHA1(42f9adce0d5e25b1b9d10217f8e3e0994d7b70d5) ) // " - ROM_LOAD("5621_03_353.3", 0x2000, 0x1000, CRC(430dac62) SHA1(a0e23fcb4cfa27778a9398bd4994a7792e4541d0) ) // " + ROM_LOAD("4005_02_351_02.1", 0x0000, 0x1000, CRC(5b13d7bf) SHA1(e1b7dee278a03f75e8a1554715fca4c7fbbc1cb8) ) // HN462532G + ROM_LOAD("4005_02_351_02.2", 0x1000, 0x1000, CRC(e93bf521) SHA1(42f9adce0d5e25b1b9d10217f8e3e0994d7b70d5) ) // " + ROM_LOAD("4005_02_351_02.3", 0x2000, 0x1000, CRC(430dac62) SHA1(a0e23fcb4cfa27778a9398bd4994a7792e4541d0) ) // " + // TC5334P Mask ROM contents is the same (labels 5619 03 351, 5620 03 351, 5621 03 351) ROM_END -ROM_START( mephisto2a ) // cartridge s/n 0037011 +ROM_START( mephisto2a ) // module s/n 01085xx ROM_REGION( 0x10000, "maincpu", 0 ) ROM_LOAD("4005_02_351_01.1", 0x0000, 0x1000, CRC(5b13d7bf) SHA1(e1b7dee278a03f75e8a1554715fca4c7fbbc1cb8) ) // HN462532G ROM_LOAD("4005_02_352_01.2", 0x1000, 0x1000, CRC(da88b62f) SHA1(f5e71521ba8ab0b481e4725ffa706b1c157424b5) ) // " ROM_LOAD("4005_02_353_01.3", 0x2000, 0x1000, CRC(1f933d33) SHA1(5d5bfd40158354830c434f4c8b4ff1cac8ab4f5c) ) // " ROM_END +ROM_START( mephisto2b ) // module s/n 01070xx + ROM_REGION( 0x10000, "maincpu", 0 ) + ROM_LOAD("4005_02_351_00.1", 0x0000, 0x1000, CRC(5b13d7bf) SHA1(e1b7dee278a03f75e8a1554715fca4c7fbbc1cb8) ) // HN462532G + ROM_LOAD("4005_02_352_00.2", 0x1000, 0x1000, CRC(da88b62f) SHA1(f5e71521ba8ab0b481e4725ffa706b1c157424b5) ) // " + ROM_LOAD("4005_02_353_00.3", 0x2000, 0x1000, CRC(23f9eee4) SHA1(c86d63d3c720ba4ae2a12d3b68356cffacae9592) ) // " +ROM_END + -ROM_START( mephisto2e ) +ROM_START( mephistoe2 ) // module s/n (0)0111xx ROM_REGION( 0x10000, "maincpu", 0 ) - ROM_LOAD("251-11.1", 0x0000, 0x1000, CRC(3c8e2631) SHA1(5960e47f0659b1e5f164107069738e730e3ff255) ) // M2532A + ROM_LOAD("251-11.1", 0x0000, 0x1000, CRC(3c8e2631) SHA1(5960e47f0659b1e5f164107069738e730e3ff255) ) // TMS2532JL-35 ROM_LOAD("252-10.2", 0x1000, 0x1000, CRC(832b053e) SHA1(b0dfe857c38f13a4b04ac67a8a46f37c962a8629) ) // " ROM_LOAD("253-09.3", 0x2000, 0x1000, CRC(00788b63) SHA1(cf94dc19ef85b359989410e7824280c59433fca9) ) // " ROM_LOAD("254-09.4", 0x3000, 0x1000, CRC(d6be47a6) SHA1(3d577036111c026292b6c445efcb126cf7a6a472) ) // " ROM_END - -ROM_START( mephisto3 ) +ROM_START( mephistoe2a ) // module s/n 00065xx ROM_REGION( 0x10000, "maincpu", 0 ) - ROM_LOAD("101", 0x0000, 0x4000, CRC(923de04f) SHA1(ca7cb3e29aeb3432a815c9d58bb0ed45e7302581) ) // HN4827128G-45 or D27128-4 - ROM_LOAD("201", 0x4000, 0x4000, CRC(0c3cb8fa) SHA1(31449422142c19fc71474a057fc5d6af8a86be7d) ) // " + ROM_LOAD("5000_00_251_01.1", 0x0000, 0x1000, CRC(cebf66be) SHA1(7793ba80159a8ae857a1b35d270bb6972fef0563) ) // HN462532G + ROM_LOAD("5000_00_252_01.2", 0x1000, 0x1000, CRC(66f38992) SHA1(2f9007985ce350a8ee82797a66f37bb9a4de36a4) ) // " + ROM_LOAD("5000_00_253_01.3", 0x2000, 0x1000, CRC(1b685892) SHA1(af197e62e8a47a6244f7c2261929847f483775e5) ) // " + ROM_LOAD("5000_00_254_01.4", 0x3000, 0x1000, CRC(e455845d) SHA1(871e2b2b7e75b6ee09d3e027e1b4e5a24ce4c550) ) // " ROM_END -ROM_START( mephisto3a ) + +ROM_START( mephisto3 ) // module s/n 05072xx ROM_REGION( 0x10000, "maincpu", 0 ) - ROM_LOAD("107", 0x0000, 0x4000, CRC(52c072b8) SHA1(938dfaa18d751f06f42be16dedb7d32d010023b2) ) // HN4827128G-25 - ROM_LOAD("207", 0x4000, 0x4000, CRC(9b45c350) SHA1(96a11f740c657a915a9ce3fa417a59f4e064a10b) ) // " + ROM_LOAD("g81", 0x0000, 0x8000, CRC(7b49475d) SHA1(30193153f0c259294b47e95d3e33834e40a94821) ) // HN613256P ROM_END -ROM_START( mephisto3b ) +ROM_START( mephisto3a ) // module s/n 00744xx ROM_REGION( 0x10000, "maincpu", 0 ) ROM_LOAD("109", 0x0000, 0x4000, CRC(02f9e37d) SHA1(1911d45c0c8db030d129c4d2b25572678835112a) ) // D27128-4 ROM_LOAD("209", 0x4000, 0x4000, CRC(0f217caf) SHA1(5aa77157af51a73e0654c344636ea2887bc45d42) ) // " ROM_END -ROM_START( mephisto3c ) +ROM_START( mephisto3b ) // module s/n 00737xx ROM_REGION( 0x10000, "maincpu", 0 ) - ROM_LOAD("g81", 0x0000, 0x8000, CRC(7b49475d) SHA1(30193153f0c259294b47e95d3e33834e40a94821) ) // HN613256P + ROM_LOAD("107", 0x0000, 0x4000, CRC(52c072b8) SHA1(938dfaa18d751f06f42be16dedb7d32d010023b2) ) // HN4827128G-25 + ROM_LOAD("207", 0x4000, 0x4000, CRC(9b45c350) SHA1(96a11f740c657a915a9ce3fa417a59f4e064a10b) ) // " +ROM_END + +ROM_START( mephisto3c ) // module s/n 00711xx + ROM_REGION( 0x10000, "maincpu", 0 ) + ROM_LOAD("101", 0x0000, 0x4000, CRC(923de04f) SHA1(ca7cb3e29aeb3432a815c9d58bb0ed45e7302581) ) // HN4827128G-45 or D27128-4 + ROM_LOAD("201", 0x4000, 0x4000, CRC(0c3cb8fa) SHA1(31449422142c19fc71474a057fc5d6af8a86be7d) ) // " ROM_END } // anonymous namespace @@ -604,18 +673,20 @@ ROM_END Drivers *******************************************************************************/ -// YEAR NAME PARENT COMPAT MACHINE INPUT STATE INIT COMPANY, FULLNAME, FLAGS -SYST( 1980, mephisto, 0, 0, mephisto, mephisto, brikett_state, empty_init, "Hegener + Glaser", "Mephisto", MACHINE_SUPPORTS_SAVE ) +// YEAR NAME PARENT COMPAT MACHINE INPUT STATE INIT COMPANY, FULLNAME, FLAGS +SYST( 1980, mephisto, 0, 0, mephisto, mephisto, brikett_state, empty_init, "Hegener + Glaser", "Mephisto", MACHINE_SUPPORTS_SAVE ) -SYST( 1981, mephisto1x, 0, 0, mephisto2, mephisto, brikett_state, empty_init, "Hegener + Glaser", "Mephisto 1X", MACHINE_SUPPORTS_SAVE ) -SYST( 1982, mephistoj, 0, 0, mephistoj, mephistoj, brikett_state, empty_init, "Hegener + Glaser", "Mephisto Junior (1982 version)", MACHINE_SUPPORTS_SAVE ) // there's also a "Mephisto Junior" from 1990 +SYST( 1981, mephisto1x, 0, 0, mephisto2, mephisto, brikett_state, empty_init, "Hegener + Glaser", "Mephisto 1X", MACHINE_SUPPORTS_SAVE ) +SYST( 1982, mephistoj, 0, 0, mephistoj, mephistoj, brikett_state, empty_init, "Hegener + Glaser", "Mephisto Junior (1982 version)", MACHINE_SUPPORTS_SAVE ) // there's also a "Mephisto Junior" from 1990 -SYST( 1981, mephisto2, 0, 0, mephisto2, mephisto, brikett_state, empty_init, "Hegener + Glaser", "Mephisto II (set 1)", MACHINE_SUPPORTS_SAVE ) -SYST( 1981, mephisto2a, mephisto2, 0, mephisto2, mephisto, brikett_state, empty_init, "Hegener + Glaser", "Mephisto II (set 2)", MACHINE_SUPPORTS_SAVE ) +SYST( 1981, mephisto2, 0, 0, mephisto2, mephisto, brikett_state, empty_init, "Hegener + Glaser", "Mephisto II (set 1)", MACHINE_SUPPORTS_SAVE ) +SYST( 1981, mephisto2a, mephisto2, 0, mephisto2, mephisto, brikett_state, empty_init, "Hegener + Glaser", "Mephisto II (set 2)", MACHINE_SUPPORTS_SAVE ) +SYST( 1981, mephisto2b, mephisto2, 0, mephisto2, mephisto, brikett_state, empty_init, "Hegener + Glaser", "Mephisto II (set 3)", MACHINE_SUPPORTS_SAVE ) -SYST( 1981, mephisto2e, 0, 0, mephisto2e, mephisto2e, brikett_state, empty_init, "Hegener + Glaser", "Mephisto ESB II", MACHINE_SUPPORTS_SAVE ) +SYST( 1981, mephistoe2, 0, 0, mephistoe2, mephistoe2, brikett_state, empty_init, "Hegener + Glaser", "Mephisto ESB II (ESB 6000 board)", MACHINE_SUPPORTS_SAVE ) +SYST( 1981, mephistoe2a, mephistoe2, 0, mephistoe2a, mephistoe2a, brikett_state, empty_init, "Hegener + Glaser", "Mephisto ESB II (ESB II board)", MACHINE_SUPPORTS_SAVE ) -SYST( 1983, mephisto3, 0, 0, mephisto3, mephisto3, brikett_state, empty_init, "Hegener + Glaser", "Mephisto III (set 1)", MACHINE_SUPPORTS_SAVE ) -SYST( 1983, mephisto3a, mephisto3, 0, mephisto3, mephisto3, brikett_state, empty_init, "Hegener + Glaser", "Mephisto III (set 2)", MACHINE_SUPPORTS_SAVE ) -SYST( 1983, mephisto3b, mephisto3, 0, mephisto3, mephisto3, brikett_state, empty_init, "Hegener + Glaser", "Mephisto III (set 3)", MACHINE_SUPPORTS_SAVE ) -SYST( 1983, mephisto3c, mephisto3, 0, mephisto3, mephisto3, brikett_state, empty_init, "Hegener + Glaser", "Mephisto III (set 4)", MACHINE_SUPPORTS_SAVE ) +SYST( 1983, mephisto3, 0, 0, mephisto3, mephisto3, brikett_state, empty_init, "Hegener + Glaser", "Mephisto III (set 1)", MACHINE_SUPPORTS_SAVE ) +SYST( 1983, mephisto3a, mephisto3, 0, mephisto3, mephisto3, brikett_state, empty_init, "Hegener + Glaser", "Mephisto III (set 2)", MACHINE_SUPPORTS_SAVE ) +SYST( 1983, mephisto3b, mephisto3, 0, mephisto3, mephisto3, brikett_state, empty_init, "Hegener + Glaser", "Mephisto III (set 3)", MACHINE_SUPPORTS_SAVE ) +SYST( 1983, mephisto3c, mephisto3, 0, mephisto3, mephisto3, brikett_state, empty_init, "Hegener + Glaser", "Mephisto III (set 4)", MACHINE_SUPPORTS_SAVE ) diff --git a/src/mame/hegenerglaser/mm1.cpp b/src/mame/hegenerglaser/mm1.cpp index 635420f1aef..af11a53bac3 100644 --- a/src/mame/hegenerglaser/mm1.cpp +++ b/src/mame/hegenerglaser/mm1.cpp @@ -296,13 +296,13 @@ void mm1_state::mm1(machine_config &config) ROM_START( mm1 ) ROM_REGION( 0x10000, "maincpu", 0 ) - ROM_LOAD("114", 0x0000, 0x4000, CRC(208b4c43) SHA1(48f891d614fa643f47d099f94aff15a44c2efc07) ) // D27128 - ROM_LOAD("214", 0x4000, 0x4000, CRC(93734e49) SHA1(9ad6c191074c4122300f059e2ef9cfeff7b81463) ) // " + ROM_LOAD("mm1b.bin", 0x0000, 0x8000, CRC(90bf840e) SHA1(cdec6b02c1352b2a00d66964989a17c2b81ec79e) ) // HN613256P ROM_END -ROM_START( mm1b ) +ROM_START( mm1a ) ROM_REGION( 0x10000, "maincpu", 0 ) - ROM_LOAD("mm1b.bin", 0x0000, 0x8000, CRC(90bf840e) SHA1(cdec6b02c1352b2a00d66964989a17c2b81ec79e) ) // HN613256P + ROM_LOAD("114", 0x0000, 0x4000, CRC(208b4c43) SHA1(48f891d614fa643f47d099f94aff15a44c2efc07) ) // D27128 + ROM_LOAD("214", 0x4000, 0x4000, CRC(93734e49) SHA1(9ad6c191074c4122300f059e2ef9cfeff7b81463) ) // " ROM_END @@ -320,7 +320,7 @@ ROM_END *******************************************************************************/ // YEAR NAME PARENT COMPAT MACHINE INPUT CLASS INIT COMPANY, FULLNAME, FLAGS -SYST( 1983, mm1, 0, 0, mm1, mm1, mm1_state, empty_init, "Hegener + Glaser", "Mephisto MM I (ver. A)", MACHINE_SUPPORTS_SAVE ) -SYST( 1983, mm1b, mm1, 0, mm1, mm1, mm1_state, empty_init, "Hegener + Glaser", "Mephisto MM I (ver. B)", MACHINE_SUPPORTS_SAVE ) +SYST( 1983, mm1, 0, 0, mm1, mm1, mm1_state, empty_init, "Hegener + Glaser", "Mephisto MM I (ver. B)", MACHINE_SUPPORTS_SAVE ) +SYST( 1983, mm1a, mm1, 0, mm1, mm1, mm1_state, empty_init, "Hegener + Glaser", "Mephisto MM I (ver. A)", MACHINE_SUPPORTS_SAVE ) SYST( 1984, mmirage, 0, 0, mirage, mirage, mm1_state, empty_init, "Hegener + Glaser", "Mephisto Mirage", MACHINE_SUPPORTS_SAVE ) diff --git a/src/mame/mame.lst b/src/mame/mame.lst index a982cf2a247..41b8b0d72dd 100644 --- a/src/mame/mame.lst +++ b/src/mame/mame.lst @@ -19505,11 +19505,13 @@ mephisto mephisto1x mephisto2 mephisto2a -mephisto2e +mephisto2b mephisto3 mephisto3a mephisto3b mephisto3c +mephistoe2 +mephistoe2a mephistoj @source:hegenerglaser/europa.cpp @@ -19528,7 +19530,7 @@ nshort // 1993 Mephisto Nigel Short @source:hegenerglaser/mm1.cpp mm1 -mm1b +mm1a mmirage @source:hegenerglaser/mm2.cpp -- cgit v1.2.3