--- xmil/vram/makechr.c 2004/08/08 09:12:06 1.2 +++ xmil/vram/makechr.c 2004/08/13 06:49:31 1.5 @@ -2,13 +2,11 @@ #include "pccore.h" #include "iocore.h" #include "vram.h" +#include "makescrn.h" #include "makesub.h" #include "font.h" -extern BYTE blinktest; - - void makechr8(UINT8 *dst, UINT pos, UINT count, REG8 udtmp) { REG8 atr; @@ -18,8 +16,8 @@ const UINT8 *pat; MAKETXTFN fn; atr = tram[TRAM_ATR + pos]; - if (atr & blinktest) { - atr ^= X1ATR_REVERSE; + if (atr & makescrn.blinktest) { + atr ^= TRAMATR_REVERSE; } if (udtmp & 0x10) { pos = LOW11(pos - 1); @@ -45,11 +43,11 @@ const UINT8 *pat; } else { // PCG if (!(knj & 0x90)) { // PCGの出力 - pat = pcg.d.b[ank]; + pat = pcg.d + (ank << 3); fn = maketxt8fn[udtmp & 15]; } else { // 16ドットPCGの出力 - pat = pcg.d.b[ank & (~1)]; + pat = pcg.d + ((ank & (~1)) << 3); fn = makeknj8fn[udtmp & 15]; } makeatr_pcg8(dst, count, pat, atr, fn); @@ -65,8 +63,8 @@ const UINT8 *pat; MAKETXTFN fn; atr = tram[TRAM_ATR + pos]; - if (atr & blinktest) { - atr ^= X1ATR_REVERSE; + if (atr & makescrn.blinktest) { + atr ^= TRAMATR_REVERSE; } if (udtmp & 0x10) { pos = LOW11(pos - 1); @@ -92,11 +90,11 @@ const UINT8 *pat; } else { // PCG if (!(knj & 0x90)) { // PCGの出力 - pat = pcg.d.b[ank]; + pat = pcg.d + (ank << 3); fn = makepcg16fn[udtmp & 15]; } else { // 16ドットPCGの出力 - pat = pcg.d.b[ank & (~1)]; + pat = pcg.d + ((ank & (~1)) << 3); fn = maketxt16fn[udtmp & 15]; } makeatr_pcg16(dst, count, pat, atr, fn);