mirror of
https://github.com/holub/mame
synced 2025-04-22 08:22:15 +03:00
Video DRAM read-back ports added.
This commit is contained in:
parent
ce099f6b22
commit
3c8d2d8597
@ -89,6 +89,8 @@ public:
|
||||
{ }
|
||||
|
||||
DECLARE_WRITE8_MEMBER(ctrl_w);
|
||||
DECLARE_READ8_MEMBER(video_ram_read_reg1);
|
||||
DECLARE_READ8_MEMBER(video_ram_read_reg2);
|
||||
DECLARE_WRITE8_MEMBER(fdc_sel0_w);
|
||||
DECLARE_READ8_MEMBER(fdc_sel0_r);
|
||||
DECLARE_WRITE8_MEMBER(fdc_sel1_w);
|
||||
@ -157,6 +159,76 @@ WRITE8_MEMBER( squale_state::ctrl_w )
|
||||
m_ef9365->set_color_filler(data & 0xF);
|
||||
}
|
||||
|
||||
READ8_MEMBER( squale_state::video_ram_read_reg1 )
|
||||
{
|
||||
UINT8 data;
|
||||
int p;
|
||||
|
||||
//D7 D0
|
||||
//I2R2G2B2 I3R3G3B3
|
||||
|
||||
data = 0x00;
|
||||
|
||||
for(p = 0; p < 4 ; p++)
|
||||
{
|
||||
if( m_ef9365->get_last_readback_word(p, 0) & 8 )
|
||||
{
|
||||
data |= (0x01 << p);
|
||||
}
|
||||
}
|
||||
|
||||
data = data << 4;
|
||||
|
||||
for(p = 0; p < 4 ; p++)
|
||||
{
|
||||
if( m_ef9365->get_last_readback_word(p, 0) & 4 )
|
||||
{
|
||||
data |= (0x01 << p);
|
||||
}
|
||||
}
|
||||
|
||||
#ifdef DBGMODE
|
||||
printf("read video_ram_read_reg1 reg : 0x%X\n",data);
|
||||
#endif
|
||||
|
||||
return data;
|
||||
}
|
||||
|
||||
READ8_MEMBER( squale_state::video_ram_read_reg2 )
|
||||
{
|
||||
UINT8 data;
|
||||
int p;
|
||||
|
||||
//D7 D0
|
||||
//I0R0G0B0 I1R1G1B1
|
||||
|
||||
data = 0x00;
|
||||
|
||||
for(p = 0; p < 4 ; p++)
|
||||
{
|
||||
if( m_ef9365->get_last_readback_word(p, 0) & 2 )
|
||||
{
|
||||
data |= (0x01 << p);
|
||||
}
|
||||
}
|
||||
|
||||
data = data << 4;
|
||||
|
||||
for(p = 0; p < 4 ; p++)
|
||||
{
|
||||
if( m_ef9365->get_last_readback_word(p, 0) & 1 )
|
||||
{
|
||||
data |= (0x01 << p);
|
||||
}
|
||||
}
|
||||
|
||||
#ifdef DBGMODE
|
||||
printf("read video_ram_read_reg2 reg : 0x%X\n",data);
|
||||
#endif
|
||||
|
||||
return data;
|
||||
}
|
||||
|
||||
/**********************************
|
||||
* Floppy controller I/O Handlers *
|
||||
***********************************/
|
||||
@ -542,6 +614,8 @@ static ADDRESS_MAP_START(squale_mem, AS_PROGRAM, 8, squale_state)
|
||||
AM_RANGE(0x0000,0xefff) AM_RAM
|
||||
AM_RANGE(0xf000,0xf00f) AM_DEVREADWRITE("ef9365", ef9365_device, data_r, data_w)
|
||||
AM_RANGE(0xf010,0xf01f) AM_WRITE( ctrl_w )
|
||||
AM_RANGE(0xf020,0xf02f) AM_READ( video_ram_read_reg1 )
|
||||
AM_RANGE(0xf030,0xf03f) AM_READ( video_ram_read_reg2 )
|
||||
AM_RANGE(0xf044,0xf047) AM_DEVREADWRITE("pia_u75", pia6821_device, read, write)
|
||||
AM_RANGE(0xf048,0xf04b) AM_DEVREADWRITE("pia_u72", pia6821_device, read, write)
|
||||
AM_RANGE(0xf050,0xf05f) AM_DEVREADWRITE("ef6850", acia6850_device, data_r, data_w)
|
||||
|
Loading…
Reference in New Issue
Block a user