abc800c, abc800m: Fixed HR graphics. [Curt Coder]
This commit is contained in:
parent
24fe3eb644
commit
cfcb2417b6
@ -189,8 +189,8 @@ license:CC0
|
|||||||
<info name="serial" value="68 20018-41" />
|
<info name="serial" value="68 20018-41" />
|
||||||
|
|
||||||
<part name="flop" interface="floppy_5_25">
|
<part name="flop" interface="floppy_5_25">
|
||||||
<dataarea name="flop" size="85140">
|
<dataarea name="flop" size="163840">
|
||||||
<rom name="demo11.td0" size="85140" crc="77fd2490" sha1="ba953cf6496633c449b2b49ad707469a763e1fd3"/>
|
<rom name="demo11.dsk" size="163840" crc="f57d142d" sha1="f9c67904ddc8fa598353dcdcd8c0bc3eb4e91524"/>
|
||||||
</dataarea>
|
</dataarea>
|
||||||
</part>
|
</part>
|
||||||
</software>
|
</software>
|
||||||
|
@ -193,7 +193,7 @@ READ8_MEMBER( abc800_state::read )
|
|||||||
{
|
{
|
||||||
uint8_t data = 0xff;
|
uint8_t data = 0xff;
|
||||||
|
|
||||||
if (offset < 0x4000 && !m_keydtr)
|
if (offset < 0x4000 && (!m_keydtr || m_fetch_charram))
|
||||||
{
|
{
|
||||||
data = m_video_ram[offset];
|
data = m_video_ram[offset];
|
||||||
}
|
}
|
||||||
@ -219,7 +219,7 @@ READ8_MEMBER( abc800_state::read )
|
|||||||
|
|
||||||
WRITE8_MEMBER( abc800_state::write )
|
WRITE8_MEMBER( abc800_state::write )
|
||||||
{
|
{
|
||||||
if (offset < 0x4000 && !m_keydtr)
|
if (offset < 0x4000 && (!m_keydtr || m_fetch_charram))
|
||||||
{
|
{
|
||||||
m_video_ram[offset] = data;
|
m_video_ram[offset] = data;
|
||||||
}
|
}
|
||||||
@ -1121,7 +1121,7 @@ void abc800c_state::abc800c(machine_config &config)
|
|||||||
subdevice<abcbus_slot_device>(ABCBUS_TAG)->set_default_option("abc830");
|
subdevice<abcbus_slot_device>(ABCBUS_TAG)->set_default_option("abc830");
|
||||||
|
|
||||||
// internal ram
|
// internal ram
|
||||||
RAM(config, RAM_TAG).set_default_size("16K").set_extra_options("32K");
|
RAM(config, RAM_TAG).set_default_size("32K");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -1150,7 +1150,7 @@ void abc800m_state::abc800m(machine_config &config)
|
|||||||
subdevice<abcbus_slot_device>(ABCBUS_TAG)->set_default_option("abc830");
|
subdevice<abcbus_slot_device>(ABCBUS_TAG)->set_default_option("abc830");
|
||||||
|
|
||||||
// internal ram
|
// internal ram
|
||||||
RAM(config, RAM_TAG).set_default_size("16K").set_extra_options("32K");
|
RAM(config, RAM_TAG).set_default_size("32K");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -12,10 +12,9 @@
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
// these are needed because the MC6845 emulation does
|
// this is needed because the MC6845 emulation does
|
||||||
// not position the active display area correctly
|
// not position the active display area correctly
|
||||||
#define HORIZONTAL_PORCH_HACK 115
|
#define HORIZONTAL_PORCH_HACK 115
|
||||||
#define VERTICAL_PORCH_HACK 29
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@ -188,7 +187,7 @@ void abc800m_state::hr_update(bitmap_rgb32 &bitmap, const rectangle &cliprect)
|
|||||||
|
|
||||||
const pen_t *pen = m_palette->pens();
|
const pen_t *pen = m_palette->pens();
|
||||||
|
|
||||||
for (int y = m_hrs + VERTICAL_PORCH_HACK; y < std::min(cliprect.max_y + 1, m_hrs + VERTICAL_PORCH_HACK + 240); y++)
|
for (int y = m_hrs; y < std::min(cliprect.max_y + 1, m_hrs + 240); y++)
|
||||||
{
|
{
|
||||||
int x = HORIZONTAL_PORCH_HACK;
|
int x = HORIZONTAL_PORCH_HACK;
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user