(MESS) radio86 et al: Tagmap cleanup. (nw)

This commit is contained in:
Curt Coder 2013-01-25 19:28:41 +00:00
parent b98423d51c
commit ac0d9f3485
2 changed files with 12 additions and 4 deletions

View File

@ -17,6 +17,8 @@ public:
radio86_state(const machine_config &mconfig, device_type type, const char *tag)
: driver_device(mconfig, type, tag) { }
virtual void video_start();
UINT8 m_tape_value;
UINT8 m_mikrosha_font_page;
int m_keyboard_mask;
@ -24,6 +26,7 @@ public:
UINT8 m_romdisk_lsb;
UINT8 m_romdisk_msb;
UINT8 m_disk_sel;
const UINT8 *m_charmap;
DECLARE_READ8_MEMBER(radio_cpu_state_r);
DECLARE_READ8_MEMBER(radio_io_r);
DECLARE_WRITE8_MEMBER(radio_io_w);

View File

@ -16,7 +16,7 @@ I8275_DISPLAY_PIXELS(radio86_display_pixels)
radio86_state *state = device->machine().driver_data<radio86_state>();
int i;
const rgb_t *palette = palette_entry_list_raw(bitmap.palette());
UINT8 *charmap = state->memregion("gfx1")->base();
const UINT8 *charmap = state->m_charmap;
UINT8 pixels = charmap[(linecount & 7) + (charcode << 3)] ^ 0xff;
if (vsp) {
pixels = 0;
@ -38,7 +38,7 @@ I8275_DISPLAY_PIXELS(mikrosha_display_pixels)
radio86_state *state = device->machine().driver_data<radio86_state>();
int i;
const rgb_t *palette = palette_entry_list_raw(bitmap.palette());
UINT8 *charmap = state->memregion("gfx1")->base() + (state->m_mikrosha_font_page & 1) * 0x400;
const UINT8 *charmap = state->m_charmap + (state->m_mikrosha_font_page & 1) * 0x400;
UINT8 pixels = charmap[(linecount & 7) + (charcode << 3)] ^ 0xff;
if (vsp) {
pixels = 0;
@ -59,7 +59,7 @@ I8275_DISPLAY_PIXELS(apogee_display_pixels)
radio86_state *state = device->machine().driver_data<radio86_state>();
int i;
const rgb_t *palette = palette_entry_list_raw(bitmap.palette());
UINT8 *charmap = state->memregion("gfx1")->base() + (gpa & 1) * 0x400;
const UINT8 *charmap = state->m_charmap + (gpa & 1) * 0x400;
UINT8 pixels = charmap[(linecount & 7) + (charcode << 3)] ^ 0xff;
if (vsp) {
pixels = 0;
@ -80,7 +80,7 @@ I8275_DISPLAY_PIXELS(partner_display_pixels)
radio86_state *state = device->machine().driver_data<radio86_state>();
int i;
const rgb_t *palette = palette_entry_list_raw(bitmap.palette());
UINT8 *charmap = state->memregion("gfx1")->base() + 0x400 * (gpa * 2 + hlgt);
const UINT8 *charmap = state->m_charmap + 0x400 * (gpa * 2 + hlgt);
UINT8 pixels = charmap[(linecount & 7) + (charcode << 3)] ^ 0xff;
if (vsp) {
pixels = 0;
@ -106,3 +106,8 @@ PALETTE_INIT_MEMBER(radio86_state,radio86)
{
palette_set_colors(machine(), 0, radio86_palette, ARRAY_LENGTH(radio86_palette));
}
void radio86_state::video_start()
{
m_charmap = memregion("gfx1")->base();
}