diff --git a/src/mame/drivers/segas24.cpp b/src/mame/drivers/segas24.cpp index b26e0b60cf6..11d9975a551 100644 --- a/src/mame/drivers/segas24.cpp +++ b/src/mame/drivers/segas24.cpp @@ -376,6 +376,8 @@ enum { void segas24_state::fdc_init() { + m_fdc_track_side = 0; + m_fdc_mode = 0; m_fdc_status = 0; m_fdc_track = 0; m_fdc_sector = 0; @@ -386,6 +388,18 @@ void segas24_state::fdc_init() m_fdc_index_count = 0; } +void segas24_state::device_post_load() +{ + switch(m_fdc_mode) { + case 0x9: + case 0xb: + m_fdc_pt = &m_floppy[m_track_size*(2*m_fdc_phys_track+m_fdc_track_side) + (m_track_size - m_fdc_span)]; + break; + default: + break; + } +} + READ16_MEMBER( segas24_state::fdc_r ) { if(!m_track_size) @@ -445,21 +459,26 @@ WRITE16_MEMBER( segas24_state::fdc_w ) m_fdc_status = m_fdc_track ? 0 : 4; break; case 0x9: - FDC_LOG(("Read multiple [%02x] %d..%d side %d track %d\n", data, m_fdc_sector, m_fdc_sector+m_fdc_data-1, data & 8 ? 1 : 0, m_fdc_phys_track)); - m_fdc_pt = &m_floppy[m_track_size*(2*m_fdc_phys_track+(data & 8 ? 1 : 0))]; + m_fdc_track_side = (data & 8 ? 1 : 0); + m_fdc_mode = 0x9; + FDC_LOG(("Read multiple [%02x] %d..%d side %d track %d\n", data, m_fdc_sector, m_fdc_sector+m_fdc_data-1, m_fdc_track_side, m_fdc_phys_track)); + m_fdc_pt = &m_floppy[m_track_size*(2*m_fdc_phys_track+m_fdc_track_side)]; m_fdc_span = m_track_size; m_fdc_status = 3; m_fdc_drq = true; m_fdc_data = *m_fdc_pt; break; case 0xb: - FDC_LOG(("Write multiple [%02x] %d..%d side %d track %d\n", data, m_fdc_sector, m_fdc_sector+m_fdc_data-1, data & 8 ? 1 : 0, m_fdc_phys_track)); - m_fdc_pt = &m_floppy[m_track_size*(2*m_fdc_phys_track+(data & 8 ? 1 : 0))]; + m_fdc_track_side = (data & 8 ? 1 : 0); + m_fdc_mode = 0xb; + FDC_LOG(("Write multiple [%02x] %d..%d side %d track %d\n", data, m_fdc_sector, m_fdc_sector+m_fdc_data-1, m_fdc_track_side, m_fdc_phys_track)); + m_fdc_pt = &m_floppy[m_track_size*(2*m_fdc_phys_track+m_fdc_track_side)]; m_fdc_span = m_track_size; m_fdc_status = 3; m_fdc_drq = true; break; case 0xd: + m_fdc_mode = 0xd; FDC_LOG(("FDC: Forced interrupt\n")); m_fdc_span = 0; m_fdc_drq = false; @@ -661,22 +680,20 @@ void segas24_state::reset_bank() { if (m_romboard != nullptr) { - membank("bank1")->set_entry(m_curbank & 15); - membank("bank2")->set_entry(m_curbank & 15); + m_rombank[0]->set_entry(m_curbank & 15); + m_rombank[1]->set_entry(m_curbank & 15); } } -READ16_MEMBER( segas24_state::curbank_r ) +READ8_MEMBER( segas24_state::curbank_r ) { return m_curbank; } -WRITE16_MEMBER( segas24_state::curbank_w ) +WRITE8_MEMBER( segas24_state::curbank_w ) { - if(ACCESSING_BITS_0_7) { - m_curbank = data & 0xff; - reset_bank(); - } + m_curbank = data; + reset_bank(); } READ8_MEMBER( segas24_state::frc_mode_r ) @@ -719,33 +736,29 @@ const uint8_t segas24_state::s_quizmeku_mlt[8] = { 0, 3, 2, 4, 6, 1, 7, 5 }; const uint8_t segas24_state::s_dcclub_mlt[8] = { 4, 7, 3, 0, 2, 6, 5, 1 }; -READ16_MEMBER( segas24_state::mlatch_r ) +READ8_MEMBER( segas24_state::mlatch_r ) { return m_mlatch; } -WRITE16_MEMBER( segas24_state::mlatch_w ) +WRITE8_MEMBER( segas24_state::mlatch_w ) { - if(ACCESSING_BITS_0_7) { - int i; - uint8_t mxor = 0; - if(!m_mlatch_table) { - logerror("Protection: magic latch accessed but no table loaded %s\n", machine().describe_context()); - return; - } + int i; + uint8_t mxor = 0; + if(!m_mlatch_table) { + logerror("Protection: magic latch accessed but no table loaded %s\n", machine().describe_context()); + return; + } - data &= 0xff; - - if(data != 0xff) { - for(i=0; i<8; i++) - if(m_mlatch & (1<("floppy_nvram")->set_base(&m_floppy[0], 2*m_track_size); - - if (m_romboard != nullptr) + if ((m_romboard != nullptr) && (m_rombank[0] != nullptr) && (m_rombank[1] != nullptr)) { uint8_t *usr1 = m_romboard->base(); - membank("bank1")->configure_entries(0, 16, usr1, 0x40000); - membank("bank2")->configure_entries(0, 16, usr1, 0x40000); + m_rombank[0]->configure_entries(0, 16, usr1, 0x40000); + m_rombank[1]->configure_entries(0, 16, usr1, 0x40000); + + save_item(NAME(m_curbank)); } + + if (m_track_size) + { + subdevice("floppy_nvram")->set_base(&m_floppy[0], 2*m_track_size); + + save_item(NAME(m_fdc_track_side)); + save_item(NAME(m_fdc_mode)); + save_item(NAME(m_fdc_status)); + save_item(NAME(m_fdc_track)); + save_item(NAME(m_fdc_sector)); + save_item(NAME(m_fdc_data)); + save_item(NAME(m_fdc_phys_track)); + save_item(NAME(m_fdc_irq)); + save_item(NAME(m_fdc_drq)); + save_item(NAME(m_fdc_span)); + save_item(NAME(m_fdc_index_count)); + } + + save_item(NAME(m_mlatch)); + + save_item(NAME(m_irq_tdata)); + save_item(NAME(m_irq_tval)); + save_item(NAME(m_irq_tmode)); + save_item(NAME(m_irq_allow0)); + save_item(NAME(m_irq_allow1)); + save_item(NAME(m_irq_timer_pend0)); + save_item(NAME(m_irq_timer_pend1)); + save_item(NAME(m_irq_yms)); + save_item(NAME(m_irq_vblank)); + save_item(NAME(m_irq_sprite)); + + save_item(NAME(m_frc_mode)); + + save_item(NAME(m_cnt1)); } void segas24_state::machine_reset() @@ -1198,12 +1250,15 @@ void segas24_state::machine_reset() m_subcpu->set_input_line(INPUT_LINE_HALT, ASSERT_LINE); m_cnt1 = true; fdc_init(); - m_curbank = 0; - reset_bank(); irq_init(); m_mlatch = 0x00; m_frc_mode = 0; m_frc_cnt_timer->reset(); + if ((m_romboard != nullptr) && (m_rombank[0] != nullptr) && (m_rombank[1] != nullptr)) + { + m_curbank = 0; + reset_bank(); + } } /************************************* @@ -1864,12 +1919,12 @@ INPUT_PORTS_END MACHINE_CONFIG_START(segas24_state::system24) /* basic machine hardware */ - MCFG_DEVICE_ADD("maincpu", M68000, MASTER_CLOCK/2) - MCFG_DEVICE_PROGRAM_MAP(system24_cpu1_map) + M68000(config, m_maincpu, MASTER_CLOCK/2); + m_maincpu->set_addrmap(AS_PROGRAM, &segas24_state::cpu1_map); MCFG_TIMER_DRIVER_ADD_SCANLINE("scantimer", segas24_state, irq_vbl, "screen", 0, 1) - MCFG_DEVICE_ADD("subcpu", M68000, MASTER_CLOCK/2) - MCFG_DEVICE_PROGRAM_MAP(system24_cpu2_map) + M68000(config, m_subcpu, MASTER_CLOCK/2); + m_subcpu->set_addrmap(AS_PROGRAM, &segas24_state::cpu2_map); MCFG_QUANTUM_TIME(attotime::from_hz(6000)) @@ -1898,7 +1953,7 @@ MACHINE_CONFIG_START(segas24_state::system24) MCFG_SCREEN_ADD("screen", RASTER) MCFG_SCREEN_VIDEO_ATTRIBUTES(VIDEO_UPDATE_AFTER_VBLANK) MCFG_SCREEN_RAW_PARAMS(VIDEO_CLOCK/2, 656, 0/*+69*/, 496/*+69*/, 424, 0/*+25*/, 384/*+25*/) - MCFG_SCREEN_UPDATE_DRIVER(segas24_state, screen_update_system24) + MCFG_SCREEN_UPDATE_DRIVER(segas24_state, screen_update) MCFG_SCREEN_PALETTE("palette") MCFG_PALETTE_ADD("palette", 8192*2) @@ -1916,9 +1971,16 @@ MACHINE_CONFIG_START(segas24_state::system24) MCFG_SOUND_ROUTE(0, "dac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE(0, "dac", -1.0, DAC_VREF_NEG_INPUT) MACHINE_CONFIG_END -void segas24_state::mahmajn(machine_config &config) +void segas24_state::system24_rom(machine_config &config) { system24(config); + m_maincpu->set_addrmap(AS_PROGRAM, &segas24_state::rombd_cpu1_map); + m_subcpu->set_addrmap(AS_PROGRAM, &segas24_state::rombd_cpu2_map); +} + +void segas24_state::mahmajn(machine_config &config) +{ + system24_rom(config); sega_315_5296_device &io(*subdevice("io")); io.in_pa_callback().set(FUNC(segas24_state::mahmajn_input_line_r)); io.in_pc_callback().set(FUNC(segas24_state::mahmajn_inputs_r)); @@ -1931,12 +1993,17 @@ void segas24_state::system24_floppy(machine_config &config) NVRAM(config, "floppy_nvram", nvram_device::DEFAULT_NONE); } +void segas24_state::system24_floppy_rom(machine_config &config) +{ + system24_floppy(config); + m_maincpu->set_addrmap(AS_PROGRAM, &segas24_state::rombd_cpu1_map); + m_subcpu->set_addrmap(AS_PROGRAM, &segas24_state::rombd_cpu2_map); +} + MACHINE_CONFIG_START(segas24_state::system24_floppy_hotrod) system24_floppy(config); - MCFG_DEVICE_MODIFY("maincpu") - MCFG_DEVICE_PROGRAM_MAP(hotrod_cpu1_map) - MCFG_DEVICE_MODIFY("subcpu") - MCFG_DEVICE_PROGRAM_MAP(hotrod_cpu2_map) + m_maincpu->set_addrmap(AS_PROGRAM, &segas24_state::hotrod_cpu1_map); + m_subcpu->set_addrmap(AS_PROGRAM, &segas24_state::hotrod_cpu2_map); upd4701_device &upd1(UPD4701A(config, "upd1")); // IC4 on 834-6510 I/O board upd1.set_portx_tag("DIAL1"); @@ -1955,19 +2022,18 @@ MACHINE_CONFIG_START(segas24_state::system24_floppy_hotrod) MCFG_DEVICE_ADD("adc2", MSM6253, 0) // IC2 - 33k/33p R/C clock MACHINE_CONFIG_END -MACHINE_CONFIG_START(segas24_state::system24_floppy_fd1094) +void segas24_state::system24_floppy_fd1094(machine_config &config) +{ system24_floppy(config); - MCFG_DEVICE_REPLACE("subcpu", FD1094, MASTER_CLOCK/2) - MCFG_DEVICE_PROGRAM_MAP(system24_cpu2_map) - MCFG_DEVICE_OPCODES_MAP(decrypted_opcodes_map) -MACHINE_CONFIG_END + FD1094(config.replace(), m_subcpu, MASTER_CLOCK/2); + m_subcpu->set_addrmap(AS_PROGRAM, &segas24_state::cpu2_map); + m_subcpu->set_addrmap(AS_OPCODES, &segas24_state::decrypted_opcodes_map); +} MACHINE_CONFIG_START(segas24_state::system24_floppy_fd_upd) system24_floppy_fd1094(config); - MCFG_DEVICE_MODIFY("maincpu") - MCFG_DEVICE_PROGRAM_MAP(roughrac_cpu1_map) - MCFG_DEVICE_MODIFY("subcpu") - MCFG_DEVICE_PROGRAM_MAP(roughrac_cpu2_map) + m_maincpu->set_addrmap(AS_PROGRAM, &segas24_state::roughrac_cpu1_map); + m_subcpu->set_addrmap(AS_PROGRAM, &segas24_state::roughrac_cpu2_map); upd4701_device &upd4701(UPD4701A(config, "upd4701")); // IC4 on 834-6510 I/O board upd4701.set_portx_tag("DIAL1"); @@ -1976,7 +2042,7 @@ MACHINE_CONFIG_END void segas24_state::dcclub(machine_config &config) { - system24(config); + system24_rom(config); sega_315_5296_device &io(*subdevice("io")); io.in_pa_callback().set(FUNC(segas24_state::dcclub_p1_r)); io.in_pc_callback().set(FUNC(segas24_state::dcclub_p3_r)); @@ -2368,6 +2434,7 @@ void segas24_state::init_mahmajn() m_mlatch_table = s_mahmajn_mlt; m_track_size = 0; m_cur_input_line = 0; + save_item(NAME(m_cur_input_line)); } void segas24_state::init_mahmajn2() @@ -2375,6 +2442,7 @@ void segas24_state::init_mahmajn2() m_mlatch_table = s_mahmajn2_mlt; m_track_size = 0; m_cur_input_line = 0; + save_item(NAME(m_cur_input_line)); } void segas24_state::init_hotrod() @@ -2484,17 +2552,17 @@ void segas24_state::init_roughrac() /* 05 */GAME( 1989, sgmastc, sgmast, system24_floppy_fd1094, sgmast, segas24_state, init_sgmast, ROT0, "Sega", "Jumbo Ozaki Super Masters Golf (World, Floppy Based, FD1094 317-0058-05c)", MACHINE_IMPERFECT_GRAPHICS ) // some gfx offset / colour probs? /* 05 */GAME( 1989, sgmastj, sgmast, system24_floppy_fd_upd, sgmastj, segas24_state, init_sgmast, ROT0, "Sega", "Jumbo Ozaki Super Masters Golf (Japan, Floppy Based, FD1094 317-0058-05b)", MACHINE_IMPERFECT_GRAPHICS ) // some gfx offset / colour probs? /* 06 */GAME( 1990, roughrac, 0, system24_floppy_fd_upd, roughrac, segas24_state, init_roughrac, ROT0, "Sega", "Rough Racer (Japan, Floppy Based, FD1094 317-0058-06b)", 0 ) -/* 07 */GAME( 1990, bnzabros, 0, system24_floppy, bnzabros, segas24_state, init_bnzabros, ROT0, "Sega", "Bonanza Bros (US, Floppy DS3-5000-07d? Based)", 0 ) -/* 07 */GAME( 1990, bnzabrosj, bnzabros, system24_floppy, bnzabros, segas24_state, init_bnzabros, ROT0, "Sega", "Bonanza Bros (Japan, Floppy DS3-5000-07b Based)", 0 ) +/* 07 */GAME( 1990, bnzabros, 0, system24_floppy_rom, bnzabros, segas24_state, init_bnzabros, ROT0, "Sega", "Bonanza Bros (US, Floppy DS3-5000-07d? Based)", 0 ) +/* 07 */GAME( 1990, bnzabrosj, bnzabros, system24_floppy_rom, bnzabros, segas24_state, init_bnzabros, ROT0, "Sega", "Bonanza Bros (Japan, Floppy DS3-5000-07b Based)", 0 ) /* 08 */GAME( 1991, qsww, 0, system24_floppy_fd1094, qsww, segas24_state, init_qsww, ROT0, "Sega", "Quiz Syukudai wo Wasuremashita (Japan, Floppy Based, FD1094 317-0058-08b)", MACHINE_IMPERFECT_GRAPHICS ) // wrong bg colour on title /* 09 */GAME( 1991, dcclubfd, dcclub, system24_floppy_dcclub, dcclub, segas24_state, init_dcclubfd, ROT0, "Sega", "Dynamic Country Club (US, Floppy Based, FD1094 317-0058-09d)", 0 ) -// YEAR NAME PARENT MACHINE INPUT CLASS INIT MONITOR COMPANY FULLNAME FLAGS +// YEAR NAME PARENT MACHINE INPUT CLASS INIT MONITOR COMPANY FULLNAME FLAGS /* ROM Based */ -GAME( 1991, dcclub, 0, dcclub, dcclub, segas24_state, init_dcclub, ROT0, "Sega", "Dynamic Country Club (World, ROM Based)", 0 ) -GAME( 1991, dcclubj, dcclub, dcclub, dcclub, segas24_state, init_dcclub, ROT0, "Sega", "Dynamic Country Club (Japan, ROM Based)", 0 ) -GAME( 1991, qrouka, 0, system24, qrouka, segas24_state, init_qrouka, ROT0, "Sega", "Quiz Rouka Ni Tattenasai (Japan, ROM Based)", 0 ) -GAME( 1992, quizmeku, 0, system24, quizmeku, segas24_state, init_quizmeku, ROT0, "Sega", "Quiz Mekurumeku Story (Japan, ROM Based)", 0 ) /* Released in 05.1993 */ -GAME( 1992, mahmajn, 0, mahmajn, mahmajn, segas24_state, init_mahmajn, ROT0, "Sega", "Tokoro San no MahMahjan (Japan, ROM Based)", 0 ) -GAME( 1994, qgh, 0, system24, qgh, segas24_state, init_qgh, ROT0, "Sega", "Quiz Ghost Hunter (Japan, ROM Based)", 0 ) -GAME( 1994, mahmajn2, 0, mahmajn, mahmajn, segas24_state, init_mahmajn2, ROT0, "Sega", "Tokoro San no MahMahjan 2 (Japan, ROM Based)", 0 ) +GAME( 1991, dcclub, 0, dcclub, dcclub, segas24_state, init_dcclub, ROT0, "Sega", "Dynamic Country Club (World, ROM Based)", 0 ) +GAME( 1991, dcclubj, dcclub, dcclub, dcclub, segas24_state, init_dcclub, ROT0, "Sega", "Dynamic Country Club (Japan, ROM Based)", 0 ) +GAME( 1991, qrouka, 0, system24_rom, qrouka, segas24_state, init_qrouka, ROT0, "Sega", "Quiz Rouka Ni Tattenasai (Japan, ROM Based)", 0 ) +GAME( 1992, quizmeku, 0, system24_rom, quizmeku, segas24_state, init_quizmeku, ROT0, "Sega", "Quiz Mekurumeku Story (Japan, ROM Based)", 0 ) /* Released in 05.1993 */ +GAME( 1992, mahmajn, 0, mahmajn, mahmajn, segas24_state, init_mahmajn, ROT0, "Sega", "Tokoro San no MahMahjan (Japan, ROM Based)", 0 ) +GAME( 1994, qgh, 0, system24_rom, qgh, segas24_state, init_qgh, ROT0, "Sega", "Quiz Ghost Hunter (Japan, ROM Based)", 0 ) +GAME( 1994, mahmajn2, 0, mahmajn, mahmajn, segas24_state, init_mahmajn2, ROT0, "Sega", "Tokoro San no MahMahjan 2 (Japan, ROM Based)", 0 ) diff --git a/src/mame/includes/segas24.h b/src/mame/includes/segas24.h index 071a08b1aa4..e348f368a7e 100644 --- a/src/mame/includes/segas24.h +++ b/src/mame/includes/segas24.h @@ -23,9 +23,10 @@ public: , m_subcpu(*this, "subcpu") , m_screen(*this, "screen") , m_palette(*this, "palette") - , m_generic_paletteram_16(*this, "paletteram") + , m_paletteram(*this, "paletteram") , m_romboard(*this, "romboard") , m_floppy(*this, "floppy") + , m_rombank(*this, "rombank%u", 1U) , m_irq_timer(*this, "irq_timer") , m_irq_timer_clear(*this, "irq_timer_clear") , m_frc_cnt_timer(*this, "frc_timer") @@ -58,24 +59,31 @@ public: void init_qsww(); void init_sgmast(); - void mahmajn(machine_config &config); - void system24_floppy_fd_upd(machine_config &config); - void system24_floppy(machine_config &config); - void system24_floppy_fd1094(machine_config &config); void dcclub(machine_config &config); + void mahmajn(machine_config &config); + void system24_floppy(machine_config &config); void system24_floppy_dcclub(machine_config &config); + void system24_floppy_fd1094(machine_config &config); + void system24_floppy_fd_upd(machine_config &config); void system24_floppy_hotrod(machine_config &config); + void system24_floppy_rom(machine_config &config); + void system24_rom(machine_config &config); void system24(machine_config &config); +protected: + virtual void device_post_load() override; + private: required_device m_maincpu; required_device m_subcpu; required_device m_screen; required_device m_palette; - required_shared_ptr m_generic_paletteram_16; + required_shared_ptr m_paletteram; optional_memory_region m_romboard; optional_region_ptr m_floppy; + optional_memory_bank_array<2> m_rombank; + static const uint8_t s_mahmajn_mlt[8]; static const uint8_t s_mahmajn2_mlt[8]; static const uint8_t s_qgh_mlt[8]; @@ -84,6 +92,8 @@ private: static const uint8_t s_quizmeku_mlt[8]; static const uint8_t s_dcclub_mlt[8]; + uint8_t m_fdc_track_side; + uint8_t m_fdc_mode; int m_fdc_status; int m_fdc_track; int m_fdc_sector; @@ -121,22 +131,22 @@ private: required_device m_vmixer; DECLARE_WRITE_LINE_MEMBER(irq_ym); - DECLARE_READ16_MEMBER( sys16_paletteram_r ); - DECLARE_WRITE16_MEMBER( sys16_paletteram_w ); + DECLARE_READ16_MEMBER( paletteram_r ); + DECLARE_WRITE16_MEMBER( paletteram_w ); DECLARE_READ16_MEMBER( irq_r ); DECLARE_WRITE16_MEMBER( irq_w ); DECLARE_READ16_MEMBER( fdc_r ); DECLARE_WRITE16_MEMBER( fdc_w ); DECLARE_READ16_MEMBER( fdc_status_r ); DECLARE_WRITE16_MEMBER( fdc_ctrl_w ); - DECLARE_READ16_MEMBER( curbank_r ); - DECLARE_WRITE16_MEMBER( curbank_w ); + DECLARE_READ8_MEMBER( curbank_r ); + DECLARE_WRITE8_MEMBER( curbank_w ); DECLARE_READ8_MEMBER( frc_mode_r ); DECLARE_WRITE8_MEMBER( frc_mode_w ); DECLARE_READ8_MEMBER( frc_r ); DECLARE_WRITE8_MEMBER( frc_w ); - DECLARE_READ16_MEMBER( mlatch_r ); - DECLARE_WRITE16_MEMBER( mlatch_w ); + DECLARE_READ8_MEMBER( mlatch_r ); + DECLARE_WRITE8_MEMBER( mlatch_w ); DECLARE_READ16_MEMBER( iod_r ); DECLARE_WRITE16_MEMBER( iod_w ); @@ -157,7 +167,7 @@ private: WRITE_LINE_MEMBER(cnt1); virtual void machine_start() override; virtual void machine_reset() override; - uint32_t screen_update_system24(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); + uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); TIMER_DEVICE_CALLBACK_MEMBER(irq_timer_cb); TIMER_DEVICE_CALLBACK_MEMBER(irq_timer_clear_cb); TIMER_DEVICE_CALLBACK_MEMBER(irq_frc_cb); @@ -172,13 +182,19 @@ private: optional_ioport m_paddle; optional_ioport_array<8> m_mj_inputs; + void common_map(address_map &map); + void cpu1_map(address_map &map); + void cpu2_map(address_map &map); void decrypted_opcodes_map(address_map &map); + void hotrod_common_map(address_map &map); void hotrod_cpu1_map(address_map &map); void hotrod_cpu2_map(address_map &map); + void rombd_common_map(address_map &map); + void rombd_cpu1_map(address_map &map); + void rombd_cpu2_map(address_map &map); + void roughrac_common_map(address_map &map); void roughrac_cpu1_map(address_map &map); void roughrac_cpu2_map(address_map &map); - void system24_cpu1_map(address_map &map); - void system24_cpu2_map(address_map &map); }; #endif // MAME_INCLUDES_SEGAS24_H diff --git a/src/mame/video/segas24.cpp b/src/mame/video/segas24.cpp index 64f0d989e38..3234b1eb6cd 100644 --- a/src/mame/video/segas24.cpp +++ b/src/mame/video/segas24.cpp @@ -30,7 +30,7 @@ namespace { }; } -uint32_t segas24_state::screen_update_system24(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect) +uint32_t segas24_state::screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect) { if(m_vmixer->get_reg(13) & 1) { bitmap.fill(m_palette->black_pen());