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