summaryrefslogtreecommitdiffstatshomepage
path: root/src
diff options
context:
space:
mode:
author Curt Coder <curtcoder@mail.com>2017-02-21 14:22:58 +0200
committer Curt Coder <curtcoder@mail.com>2017-02-21 14:22:58 +0200
commitf26dcf5f177129dfc1de8d920090981500b320bf (patch)
treeb69bbf9286f8980dba87a929f8ef87267c5cd403 /src
parent9fa456eaffc429bf2337ab922103155caa41e915 (diff)
abc80: Fixed graphics characters, hiresinv demo is now fully working. [Curt Coder]
Diffstat (limited to 'src')
-rw-r--r--src/mame/drivers/abc80.cpp3
-rw-r--r--src/mame/video/abc80.cpp18
2 files changed, 10 insertions, 11 deletions
diff --git a/src/mame/drivers/abc80.cpp b/src/mame/drivers/abc80.cpp
index 600fec01c75..f52b903183d 100644
--- a/src/mame/drivers/abc80.cpp
+++ b/src/mame/drivers/abc80.cpp
@@ -65,7 +65,6 @@ Notes:
TODO:
- - hiresinv graphics artifacts
- proper keyboard controller emulation
- MyAB TKN80 80-column card
- GeJo 80-column card
@@ -625,4 +624,4 @@ ROM_END
//**************************************************************************
// YEAR NAME PARENT COMPAT MACHINE INPUT INIT COMPANY FULLNAME FLAGS
-COMP( 1978, abc80, 0, 0, abc80, abc80, driver_device, 0, "Luxor Datorer AB", "ABC 80", MACHINE_SUPPORTS_SAVE | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_KEYBOARD )
+COMP( 1978, abc80, 0, 0, abc80, abc80, driver_device, 0, "Luxor Datorer AB", "ABC 80", MACHINE_SUPPORTS_SAVE | MACHINE_IMPERFECT_KEYBOARD )
diff --git a/src/mame/video/abc80.cpp b/src/mame/video/abc80.cpp
index 9209ecc0e7d..6ddf52f709f 100644
--- a/src/mame/video/abc80.cpp
+++ b/src/mame/video/abc80.cpp
@@ -101,15 +101,15 @@ void abc80_state::draw_scanline(bitmap_rgb32 &bitmap, int y)
if (l < 3) r0 = 0; else if (l < 7) r1 = 0; else r2 = 0;
- int c0 = BIT(videoram_data, 0) | r0;
- int c1 = BIT(videoram_data, 1) | r0;
- int c2 = BIT(videoram_data, 2) | r1;
- int c3 = BIT(videoram_data, 3) | r1;
- int c4 = BIT(videoram_data, 4) | r2;
- int c5 = BIT(videoram_data, 6) | r2;
-
- if (!(c0 & c2 & c4)) data |= 0xe0;
- if (!(c1 & c3 & c5)) data |= 0x1c;
+ int c0 = BIT(videoram_data, 0) || r0;
+ int c1 = BIT(videoram_data, 1) || r0;
+ int c2 = BIT(videoram_data, 2) || r1;
+ int c3 = BIT(videoram_data, 3) || r1;
+ int c4 = BIT(videoram_data, 4) || r2;
+ int c5 = BIT(videoram_data, 6) || r2;
+
+ if (c0 && c2 && c4) data |= 0xe0;
+ if (c1 && c3 && c5) data |= 0x1c;
}
else
{