From 497295cbe2694d334a139ca5f52233642dc9a791 Mon Sep 17 00:00:00 2001 From: angelosa Date: Mon, 14 Oct 2024 21:40:10 +0200 Subject: nec/pc9801_v.cpp: beast3 uses PCG LR from the tile attribute alias --- src/mame/nec/pc9801_v.cpp | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src/mame/nec/pc9801_v.cpp b/src/mame/nec/pc9801_v.cpp index f7570b4f2d2..a828fee5bca 100644 --- a/src/mame/nec/pc9801_v.cpp +++ b/src/mame/nec/pc9801_v.cpp @@ -112,14 +112,16 @@ void pc9801_state::draw_text(bitmap_rgb32 &bitmap, uint32_t addr, int y, int wd, // Trusted with alice, animjv3, akitsuka, apros ... //kanji_lr = (knj_tile & 0x80) >> 7; //kanji_lr |= (tile & 0x80) >> 7; // tokisg3 + // ... but then ginga and gage expects working LR for PCG depending on the attribute. + // beast3 uses tile bit 7 for the heart shaped char displayed on first screen. + const u8 pcg_lr = (BIT(knj_tile, 7) || BIT(tile, 7)); tile &= 0x7f; tile <<= 8; tile |= (knj_tile & 0x7f); kanji_sel = 1; - // ginga and gage wants to dispatch PCG depending on the attribute - if((tile & 0xfe00) == 0x5600) + if((tile & 0x7e00) == 0x5600) { - tile_lr = knj_tile & 0x80 ? 1 : 0; + tile_lr = pcg_lr; x_step = 1; } else if((tile & 0x7c00) == 0x0800) // 8x16 charset selector -- cgit v1.2.3