mirror of
https://github.com/holub/mame
synced 2025-10-08 01:28:00 +03:00
removed some more dead code + cleaned up some function names
to clarify their usage. nw.
This commit is contained in:
parent
00580e6211
commit
74dbffb0ba
@ -57,54 +57,6 @@ Bugs:
|
|||||||
|
|
||||||
#define MASTER_CLOCK 53693100
|
#define MASTER_CLOCK 53693100
|
||||||
|
|
||||||
// Interrupt handler - from drivers/segasyse.c
|
|
||||||
#if 0
|
|
||||||
static UINT8 segae_vintpending;
|
|
||||||
static UINT8 segae_hintpending;
|
|
||||||
static UINT8 *segae_vdp_regs[]; /* pointer to vdp's registers */
|
|
||||||
|
|
||||||
static UINT8 hintcount; /* line interrupt counter, decreased each scanline */
|
|
||||||
|
|
||||||
static INTERRUPT_GEN (megaplay_bios_irq)
|
|
||||||
{
|
|
||||||
int sline;
|
|
||||||
sline = device->m_screen->vpos();
|
|
||||||
|
|
||||||
if (sline ==0) {
|
|
||||||
hintcount = segae_vdp_regs[0][10];
|
|
||||||
}
|
|
||||||
|
|
||||||
if (sline <= 192) {
|
|
||||||
// if (sline != 192) segae_drawscanline(sline,1,1);
|
|
||||||
|
|
||||||
if (sline == 192)
|
|
||||||
segae_vintpending = 1;
|
|
||||||
|
|
||||||
if (hintcount == 0) {
|
|
||||||
hintcount = segae_vdp_regs[0][10];
|
|
||||||
segae_hintpending = 1;
|
|
||||||
|
|
||||||
if ((segae_vdp_regs[0][0] & 0x10)) {
|
|
||||||
device->execute().set_input_line(0, HOLD_LINE);
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
} else {
|
|
||||||
hintcount--;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if (sline > 192) {
|
|
||||||
hintcount = segae_vdp_regs[0][10];
|
|
||||||
|
|
||||||
if ( (sline<0xe0) && (segae_vintpending) ) {
|
|
||||||
device->execute().set_input_line(0, HOLD_LINE);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
static INPUT_PORTS_START ( megaplay )
|
static INPUT_PORTS_START ( megaplay )
|
||||||
PORT_INCLUDE( md_common )
|
PORT_INCLUDE( md_common )
|
||||||
|
|
||||||
@ -372,12 +324,12 @@ INPUT_PORTS_END
|
|||||||
|
|
||||||
/*MEGAPLAY specific*/
|
/*MEGAPLAY specific*/
|
||||||
|
|
||||||
READ8_MEMBER(mplay_state::megaplay_bios_banksel_r )
|
READ8_MEMBER(mplay_state::megaplay_bios_banksel_r)
|
||||||
{
|
{
|
||||||
return m_bios_bank;
|
return m_bios_bank;
|
||||||
}
|
}
|
||||||
|
|
||||||
WRITE8_MEMBER(mplay_state::megaplay_bios_banksel_w )
|
WRITE8_MEMBER(mplay_state::megaplay_bios_banksel_w)
|
||||||
{
|
{
|
||||||
/* Multi-slot note:
|
/* Multi-slot note:
|
||||||
Bits 0 and 1 appear to determine the selected game slot.
|
Bits 0 and 1 appear to determine the selected game slot.
|
||||||
@ -389,12 +341,12 @@ WRITE8_MEMBER(mplay_state::megaplay_bios_banksel_w )
|
|||||||
// logerror("BIOS: ROM bank %i selected [0x%02x]\n",bios_bank >> 6, data);
|
// logerror("BIOS: ROM bank %i selected [0x%02x]\n",bios_bank >> 6, data);
|
||||||
}
|
}
|
||||||
|
|
||||||
READ8_MEMBER(mplay_state::megaplay_bios_gamesel_r )
|
READ8_MEMBER(mplay_state::megaplay_bios_gamesel_r)
|
||||||
{
|
{
|
||||||
return m_bios_6403;
|
return m_bios_6403;
|
||||||
}
|
}
|
||||||
|
|
||||||
WRITE8_MEMBER(mplay_state::megaplay_bios_gamesel_w )
|
WRITE8_MEMBER(mplay_state::megaplay_bios_gamesel_w)
|
||||||
{
|
{
|
||||||
m_bios_6403 = data;
|
m_bios_6403 = data;
|
||||||
|
|
||||||
@ -402,7 +354,7 @@ WRITE8_MEMBER(mplay_state::megaplay_bios_gamesel_w )
|
|||||||
m_bios_mode = data & 0x10;
|
m_bios_mode = data & 0x10;
|
||||||
}
|
}
|
||||||
|
|
||||||
WRITE16_MEMBER(mplay_state::megaplay_io_write )
|
WRITE16_MEMBER(mplay_state::megaplay_io_write)
|
||||||
{
|
{
|
||||||
if (offset == 0x03)
|
if (offset == 0x03)
|
||||||
m_megadrive_io_data_regs[2] = (data & m_megadrive_io_ctrl_regs[2]) | (m_megadrive_io_data_regs[2] & ~m_megadrive_io_ctrl_regs[2]);
|
m_megadrive_io_data_regs[2] = (data & m_megadrive_io_ctrl_regs[2]) | (m_megadrive_io_data_regs[2] & ~m_megadrive_io_ctrl_regs[2]);
|
||||||
@ -410,7 +362,7 @@ WRITE16_MEMBER(mplay_state::megaplay_io_write )
|
|||||||
megadriv_68k_io_write(space, offset & 0x1f, data, 0xffff);
|
megadriv_68k_io_write(space, offset & 0x1f, data, 0xffff);
|
||||||
}
|
}
|
||||||
|
|
||||||
READ16_MEMBER(mplay_state::megaplay_io_read )
|
READ16_MEMBER(mplay_state::megaplay_io_read)
|
||||||
{
|
{
|
||||||
if (offset == 0x03)
|
if (offset == 0x03)
|
||||||
return m_megadrive_io_data_regs[2];
|
return m_megadrive_io_data_regs[2];
|
||||||
@ -418,7 +370,7 @@ READ16_MEMBER(mplay_state::megaplay_io_read )
|
|||||||
return megadriv_68k_io_read(space, offset & 0x1f, 0xffff);
|
return megadriv_68k_io_read(space, offset & 0x1f, 0xffff);
|
||||||
}
|
}
|
||||||
|
|
||||||
READ8_MEMBER(mplay_state::bank_r )
|
READ8_MEMBER(mplay_state::bank_r)
|
||||||
{
|
{
|
||||||
UINT8* bank = memregion("mtbios")->base();
|
UINT8* bank = memregion("mtbios")->base();
|
||||||
UINT32 fulladdress = m_mp_bios_bank_addr + offset;
|
UINT32 fulladdress = m_mp_bios_bank_addr + offset;
|
||||||
@ -458,7 +410,7 @@ READ8_MEMBER(mplay_state::bank_r )
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
WRITE8_MEMBER(mplay_state::bank_w )
|
WRITE8_MEMBER(mplay_state::bank_w)
|
||||||
{
|
{
|
||||||
UINT32 fulladdress = m_mp_bios_bank_addr + offset;
|
UINT32 fulladdress = m_mp_bios_bank_addr + offset;
|
||||||
|
|
||||||
@ -489,38 +441,38 @@ WRITE8_MEMBER(mplay_state::bank_w )
|
|||||||
/* Megaplay BIOS handles regs[2] at start in a different way compared to megadrive */
|
/* Megaplay BIOS handles regs[2] at start in a different way compared to megadrive */
|
||||||
/* other io data/ctrl regs are dealt with exactly like in the console */
|
/* other io data/ctrl regs are dealt with exactly like in the console */
|
||||||
|
|
||||||
READ8_MEMBER(mplay_state::megaplay_bios_6402_r )
|
READ8_MEMBER(mplay_state::megaplay_bios_6402_r)
|
||||||
{
|
{
|
||||||
return m_megadrive_io_data_regs[2];// & 0xfe;
|
return m_megadrive_io_data_regs[2];// & 0xfe;
|
||||||
}
|
}
|
||||||
|
|
||||||
WRITE8_MEMBER(mplay_state::megaplay_bios_6402_w )
|
WRITE8_MEMBER(mplay_state::megaplay_bios_6402_w)
|
||||||
{
|
{
|
||||||
m_megadrive_io_data_regs[2] = (m_megadrive_io_data_regs[2] & 0x07) | ((data & 0x70) >> 1);
|
m_megadrive_io_data_regs[2] = (m_megadrive_io_data_regs[2] & 0x07) | ((data & 0x70) >> 1);
|
||||||
// logerror("BIOS: 0x6402 write: 0x%02x\n", data);
|
// logerror("BIOS: 0x6402 write: 0x%02x\n", data);
|
||||||
}
|
}
|
||||||
|
|
||||||
READ8_MEMBER(mplay_state::megaplay_bios_6204_r )
|
READ8_MEMBER(mplay_state::megaplay_bios_6204_r)
|
||||||
{
|
{
|
||||||
return m_megadrive_io_data_regs[2];
|
return m_megadrive_io_data_regs[2];
|
||||||
// return (m_bios_width & 0xf8) + (m_bios_6204 & 0x07);
|
// return (m_bios_width & 0xf8) + (m_bios_6204 & 0x07);
|
||||||
}
|
}
|
||||||
|
|
||||||
WRITE8_MEMBER(mplay_state::megaplay_bios_width_w )
|
WRITE8_MEMBER(mplay_state::megaplay_bios_width_w)
|
||||||
{
|
{
|
||||||
m_bios_width = data;
|
m_bios_width = data;
|
||||||
m_megadrive_io_data_regs[2] = (m_megadrive_io_data_regs[2] & 0x07) | ((data & 0xf8));
|
m_megadrive_io_data_regs[2] = (m_megadrive_io_data_regs[2] & 0x07) | ((data & 0xf8));
|
||||||
// logerror("BIOS: 0x6204 - Width write: %02x\n", data);
|
// logerror("BIOS: 0x6204 - Width write: %02x\n", data);
|
||||||
}
|
}
|
||||||
|
|
||||||
READ8_MEMBER(mplay_state::megaplay_bios_6404_r )
|
READ8_MEMBER(mplay_state::megaplay_bios_6404_r)
|
||||||
{
|
{
|
||||||
// logerror("BIOS: 0x6404 read: returned 0x%02x\n",bios_6404 | (bios_6403 & 0x10) >> 4);
|
// logerror("BIOS: 0x6404 read: returned 0x%02x\n",bios_6404 | (bios_6403 & 0x10) >> 4);
|
||||||
return (m_bios_6404 & 0xfe) | ((m_bios_6403 & 0x10) >> 4);
|
return (m_bios_6404 & 0xfe) | ((m_bios_6403 & 0x10) >> 4);
|
||||||
// return m_bios_6404 | (m_bios_6403 & 0x10) >> 4;
|
// return m_bios_6404 | (m_bios_6403 & 0x10) >> 4;
|
||||||
}
|
}
|
||||||
|
|
||||||
WRITE8_MEMBER(mplay_state::megaplay_bios_6404_w )
|
WRITE8_MEMBER(mplay_state::megaplay_bios_6404_w)
|
||||||
{
|
{
|
||||||
if(((m_bios_6404 & 0x0c) == 0x00) && ((data & 0x0c) == 0x0c))
|
if(((m_bios_6404 & 0x0c) == 0x00) && ((data & 0x0c) == 0x0c))
|
||||||
m_maincpu->set_input_line(INPUT_LINE_RESET, PULSE_LINE);
|
m_maincpu->set_input_line(INPUT_LINE_RESET, PULSE_LINE);
|
||||||
@ -529,7 +481,7 @@ WRITE8_MEMBER(mplay_state::megaplay_bios_6404_w )
|
|||||||
// logerror("BIOS: 0x6404 write: 0x%02x\n", data);
|
// logerror("BIOS: 0x6404 write: 0x%02x\n", data);
|
||||||
}
|
}
|
||||||
|
|
||||||
READ8_MEMBER(mplay_state::megaplay_bios_6600_r )
|
READ8_MEMBER(mplay_state::megaplay_bios_6600_r)
|
||||||
{
|
{
|
||||||
/* Multi-slot note:
|
/* Multi-slot note:
|
||||||
0x6600 appears to be used to check for extra slots being used.
|
0x6600 appears to be used to check for extra slots being used.
|
||||||
@ -540,13 +492,13 @@ READ8_MEMBER(mplay_state::megaplay_bios_6600_r )
|
|||||||
return m_bios_6600;// & 0xfe;
|
return m_bios_6600;// & 0xfe;
|
||||||
}
|
}
|
||||||
|
|
||||||
WRITE8_MEMBER(mplay_state::megaplay_bios_6600_w )
|
WRITE8_MEMBER(mplay_state::megaplay_bios_6600_w)
|
||||||
{
|
{
|
||||||
m_bios_6600 = data;
|
m_bios_6600 = data;
|
||||||
// logerror("BIOS: 0x6600 write: 0x%02x\n",data);
|
// logerror("BIOS: 0x6600 write: 0x%02x\n",data);
|
||||||
}
|
}
|
||||||
|
|
||||||
WRITE8_MEMBER(mplay_state::megaplay_game_w )
|
WRITE8_MEMBER(mplay_state::megaplay_game_w)
|
||||||
{
|
{
|
||||||
if (m_readpos == 1)
|
if (m_readpos == 1)
|
||||||
m_game_banksel = 0;
|
m_game_banksel = 0;
|
||||||
@ -600,14 +552,12 @@ VIDEO_START_MEMBER(mplay_state,megplay)
|
|||||||
{
|
{
|
||||||
//printf("megplay vs\n");
|
//printf("megplay vs\n");
|
||||||
VIDEO_START_CALL_MEMBER(megadriv);
|
VIDEO_START_CALL_MEMBER(megadriv);
|
||||||
// VIDEO_START_CALL_MEMBER(megaplay_normal);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
UINT32 mplay_state::screen_update_megplay(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect)
|
UINT32 mplay_state::screen_update_megplay(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect)
|
||||||
{
|
{
|
||||||
//printf("megplay vu\n");
|
//printf("megplay vu\n");
|
||||||
screen_update_megadriv(screen,bitmap,cliprect);
|
screen_update_megadriv(screen,bitmap,cliprect);
|
||||||
// screen_update_megaplay_normal(screen,bitmap,cliprect);
|
|
||||||
screen_update_megaplay_bios(screen,bitmap,cliprect);
|
screen_update_megaplay_bios(screen,bitmap,cliprect);
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
@ -871,8 +821,7 @@ DRIVER_INIT_MEMBER(mplay_state,megaplay)
|
|||||||
/* instead of a RAM mirror the 68k sees the extra ram of the 2nd z80 too */
|
/* instead of a RAM mirror the 68k sees the extra ram of the 2nd z80 too */
|
||||||
m_maincpu->space(AS_PROGRAM).install_readwrite_handler(0xa02000, 0xa03fff, read16_delegate(FUNC(mplay_state::megadriv_68k_read_z80_extra_ram),this), write16_delegate(FUNC(mplay_state::megadriv_68k_write_z80_extra_ram),this));
|
m_maincpu->space(AS_PROGRAM).install_readwrite_handler(0xa02000, 0xa03fff, read16_delegate(FUNC(mplay_state::megadriv_68k_read_z80_extra_ram),this), write16_delegate(FUNC(mplay_state::megadriv_68k_write_z80_extra_ram),this));
|
||||||
|
|
||||||
init_megatech_bios();
|
init_megaplay_legacy_overlay();
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
@ -273,15 +273,13 @@ TIMER_CALLBACK_MEMBER(mtech_state::megatech_z80_stop_state )
|
|||||||
machine().device("ymsnd")->reset();
|
machine().device("ymsnd")->reset();
|
||||||
|
|
||||||
megadriv_stop_scanline_timer();// stop the scanline timer for the genesis vdp... it can be restarted in video eof when needed
|
megadriv_stop_scanline_timer();// stop the scanline timer for the genesis vdp... it can be restarted in video eof when needed
|
||||||
segae_md_sms_stop_scanline_timer();// stop the scanline timer for the sms vdp
|
megatech_sms_stop_scanline_timer();// stop the scanline timer for the sms vdp
|
||||||
|
|
||||||
|
|
||||||
/* if the regions exist we're fine */
|
/* if the regions exist we're fine */
|
||||||
if (game_region)
|
if (game_region)
|
||||||
{
|
{
|
||||||
{
|
timer_set(attotime::zero, TIMER_Z80_RUN_STATE, param);
|
||||||
timer_set(attotime::zero, TIMER_Z80_RUN_STATE, param);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
@ -324,13 +322,11 @@ WRITE8_MEMBER(mtech_state::bios_ctrl_w )
|
|||||||
{
|
{
|
||||||
if (offset == 1)
|
if (offset == 1)
|
||||||
{
|
{
|
||||||
output_set_value("Alarm_sound", data>>7 & 0x01);
|
output_set_value("Alarm_sound", BIT(data, 7));
|
||||||
m_bios_ctrl_inputs = data & 0x04; // Genesis/SMS input ports disable bit
|
m_bios_ctrl_inputs = data & 0x04; // Genesis/SMS input ports disable bit
|
||||||
}
|
}
|
||||||
else if (offset == 2)
|
else if (offset == 2)
|
||||||
{
|
output_set_value("Flash_screen", BIT(data, 1));
|
||||||
output_set_value("Flash_screen", data>>1 & 0x01);
|
|
||||||
}
|
|
||||||
|
|
||||||
m_bios_ctrl[offset] = data;
|
m_bios_ctrl[offset] = data;
|
||||||
}
|
}
|
||||||
@ -351,14 +347,9 @@ WRITE8_MEMBER(mtech_state::megatech_z80_write_68k_banked_data )
|
|||||||
space68k.write_byte(m_mt_bank_addr + offset,data);
|
space68k.write_byte(m_mt_bank_addr + offset,data);
|
||||||
}
|
}
|
||||||
|
|
||||||
void mtech_state::megatech_z80_bank_w(UINT16 data)
|
|
||||||
{
|
|
||||||
m_mt_bank_addr = ((m_mt_bank_addr >> 1) | (data << 23)) & 0xff8000;
|
|
||||||
}
|
|
||||||
|
|
||||||
WRITE8_MEMBER(mtech_state::mt_z80_bank_w )
|
WRITE8_MEMBER(mtech_state::mt_z80_bank_w )
|
||||||
{
|
{
|
||||||
megatech_z80_bank_w(data & 1);
|
m_mt_bank_addr = ((m_mt_bank_addr >> 1) | (data << 23)) & 0xff8000;
|
||||||
}
|
}
|
||||||
|
|
||||||
READ8_MEMBER(mtech_state::megatech_banked_ram_r )
|
READ8_MEMBER(mtech_state::megatech_banked_ram_r )
|
||||||
@ -452,7 +443,7 @@ UINT32 mtech_state::screen_update_mtnew(screen_device &screen, bitmap_rgb32 &bit
|
|||||||
if (!m_current_game_is_sms)
|
if (!m_current_game_is_sms)
|
||||||
screen_update_megadriv(screen, bitmap, cliprect);
|
screen_update_megadriv(screen, bitmap, cliprect);
|
||||||
else
|
else
|
||||||
screen_update_megatech_md_sms(screen, bitmap, cliprect);
|
screen_update_megatech_sms(screen, bitmap, cliprect);
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -335,10 +335,9 @@ public:
|
|||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
UINT32 screen_update_megatech_bios(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
|
|
||||||
UINT32 screen_update_megaplay_bios(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
|
UINT32 screen_update_megaplay_bios(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
|
||||||
UINT32 screen_update_megatech_md_sms(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
|
UINT32 screen_update_megatech_sms(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
|
||||||
void init_megatech_bios();
|
void init_megaplay_legacy_overlay();
|
||||||
DECLARE_MACHINE_RESET(megatech_bios);
|
DECLARE_MACHINE_RESET(megatech_bios);
|
||||||
DECLARE_MACHINE_RESET(megatech_md_sms);
|
DECLARE_MACHINE_RESET(megatech_md_sms);
|
||||||
void screen_eof_megatech_bios(screen_device &screen, bool state);
|
void screen_eof_megatech_bios(screen_device &screen, bool state);
|
||||||
@ -351,7 +350,7 @@ public:
|
|||||||
DECLARE_WRITE8_MEMBER( sms_vdp_ctrl_w );
|
DECLARE_WRITE8_MEMBER( sms_vdp_ctrl_w );
|
||||||
|
|
||||||
void init_for_megadrive();
|
void init_for_megadrive();
|
||||||
void segae_md_sms_stop_scanline_timer();
|
void megatech_sms_stop_scanline_timer();
|
||||||
void megatech_set_genz80_as_sms_standard_map(const char* tag);
|
void megatech_set_genz80_as_sms_standard_map(const char* tag);
|
||||||
private:
|
private:
|
||||||
|
|
||||||
@ -516,7 +515,6 @@ public:
|
|||||||
DECLARE_WRITE8_MEMBER( bios_ctrl_w );
|
DECLARE_WRITE8_MEMBER( bios_ctrl_w );
|
||||||
DECLARE_READ8_MEMBER( megatech_z80_read_68k_banked_data );
|
DECLARE_READ8_MEMBER( megatech_z80_read_68k_banked_data );
|
||||||
DECLARE_WRITE8_MEMBER( megatech_z80_write_68k_banked_data );
|
DECLARE_WRITE8_MEMBER( megatech_z80_write_68k_banked_data );
|
||||||
void megatech_z80_bank_w(UINT16 data);
|
|
||||||
DECLARE_WRITE8_MEMBER( mt_z80_bank_w );
|
DECLARE_WRITE8_MEMBER( mt_z80_bank_w );
|
||||||
DECLARE_READ8_MEMBER( megatech_banked_ram_r );
|
DECLARE_READ8_MEMBER( megatech_banked_ram_r );
|
||||||
DECLARE_WRITE8_MEMBER( megatech_banked_ram_w );
|
DECLARE_WRITE8_MEMBER( megatech_banked_ram_w );
|
||||||
|
@ -320,7 +320,7 @@ void *segamsys_state::start_vdp(int type)
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* stop timer and clear ram.. used on megatech when we switch between genesis and sms mode */
|
/* stop timer and clear ram.. used on megatech when we switch between genesis and sms mode */
|
||||||
void segamsys_state::segae_md_sms_stop_scanline_timer()
|
void segamsys_state::megatech_sms_stop_scanline_timer()
|
||||||
{
|
{
|
||||||
md_sms_vdp->sms_scanline_timer->adjust(attotime::never);
|
md_sms_vdp->sms_scanline_timer->adjust(attotime::never);
|
||||||
memset(md_sms_vdp->vram,0x00,0x4000);
|
memset(md_sms_vdp->vram,0x00,0x4000);
|
||||||
@ -974,7 +974,7 @@ void segamsys_state::screen_eof_megatech_bios(screen_device &screen, bool state)
|
|||||||
end_of_frame(screen, vdp1);
|
end_of_frame(screen, vdp1);
|
||||||
}
|
}
|
||||||
|
|
||||||
UINT32 segamsys_state::screen_update_megatech_md_sms(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect)
|
UINT32 segamsys_state::screen_update_megatech_sms(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect)
|
||||||
{
|
{
|
||||||
int x,y;
|
int x,y;
|
||||||
|
|
||||||
@ -993,24 +993,6 @@ UINT32 segamsys_state::screen_update_megatech_md_sms(screen_device &screen, bitm
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
UINT32 segamsys_state::screen_update_megatech_bios(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect)
|
|
||||||
{
|
|
||||||
int x,y;
|
|
||||||
|
|
||||||
for (y=0;y<224;y++)
|
|
||||||
{
|
|
||||||
UINT32* lineptr = &bitmap.pix32(y);
|
|
||||||
UINT32* srcptr = &vdp1->r_bitmap->pix32(y);
|
|
||||||
|
|
||||||
for (x=0;x<256;x++)
|
|
||||||
{
|
|
||||||
lineptr[x]=srcptr[x];
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
UINT32 segamsys_state::screen_update_megaplay_bios(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect)
|
UINT32 segamsys_state::screen_update_megaplay_bios(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect)
|
||||||
{
|
{
|
||||||
int x,y;
|
int x,y;
|
||||||
@ -1045,7 +1027,7 @@ void segamsys_state::init_for_megadrive()
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
void segamsys_state::init_megatech_bios()
|
void segamsys_state::init_megaplay_legacy_overlay()
|
||||||
{
|
{
|
||||||
vdp1 = (struct sms_vdp *)start_vdp(SMS2_VDP);
|
vdp1 = (struct sms_vdp *)start_vdp(SMS2_VDP);
|
||||||
vdp1->set_irq = segamsys_state::sms_vdp_cpu2_irq_callback;
|
vdp1->set_irq = segamsys_state::sms_vdp_cpu2_irq_callback;
|
||||||
@ -1142,7 +1124,7 @@ void segamsys_state::megatech_set_genz80_as_sms_standard_ports(const char* tag)
|
|||||||
io.install_readwrite_handler(0x0000, 0xffff, read8_delegate(FUNC(segamsys_state::z80_unmapped_port_r),this), write8_delegate(FUNC(segamsys_state::sms_z80_unmapped_port_w),this));
|
io.install_readwrite_handler(0x0000, 0xffff, read8_delegate(FUNC(segamsys_state::z80_unmapped_port_r),this), write8_delegate(FUNC(segamsys_state::sms_z80_unmapped_port_w),this));
|
||||||
|
|
||||||
io.install_read_handler (0x7e, 0x7e, read8_delegate(FUNC(segamsys_state::md_sms_vdp_vcounter_r),this));
|
io.install_read_handler (0x7e, 0x7e, read8_delegate(FUNC(segamsys_state::md_sms_vdp_vcounter_r),this));
|
||||||
io.install_write_handler (0x7e, 0x7f, write8_delegate(FUNC(sn76496_device::write),sn));
|
io.install_write_handler (0x7e, 0x7f, write8_delegate(FUNC(sn76496_device::write),sn));
|
||||||
io.install_readwrite_handler (0xbe, 0xbe, read8_delegate(FUNC(segamsys_state::md_sms_vdp_data_r),this), write8_delegate(FUNC(segamsys_state::md_sms_vdp_data_w),this));
|
io.install_readwrite_handler (0xbe, 0xbe, read8_delegate(FUNC(segamsys_state::md_sms_vdp_data_r),this), write8_delegate(FUNC(segamsys_state::md_sms_vdp_data_w),this));
|
||||||
io.install_readwrite_handler (0xbf, 0xbf, read8_delegate(FUNC(segamsys_state::md_sms_vdp_ctrl_r),this), write8_delegate(FUNC(segamsys_state::md_sms_vdp_ctrl_w),this));
|
io.install_readwrite_handler (0xbf, 0xbf, read8_delegate(FUNC(segamsys_state::md_sms_vdp_ctrl_r),this), write8_delegate(FUNC(segamsys_state::md_sms_vdp_ctrl_w),this));
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user