100% correct double-lores rendering -- Many thanks to the French Touch for their Ansi Story! :-)

(yes, the split mode used on the "flip disk" screen also works... ;-)
This commit is contained in:
Brendan Robert 2015-02-09 01:13:14 -06:00
parent f65dee7c00
commit af8466ca54
1 changed files with 5 additions and 3 deletions

View File

@ -141,16 +141,18 @@ public class VideoNTSC extends VideoDHGR {
c2 >>= 4;
}
if ((xOffset & 0x01) == 0) {
int pat = c1 | c1 << 4 | c2 << 8 | (c2 & 3) << 12;
int pat = c1 | (c1 & 7) << 4;
pat |= c2 << 7 | (c2 & 7) << 11;
scanline[pos] = pat;
} else {
int pat = scanline[pos];
pat |= (c1 & 12) << 12 | c1 << 16 | c2 << 20 | c2 << 24;
pat |= (c1 & 12) << 12 | c1 << 16 | (c1 & 1) << 20;
pat |= (c2 & 12) << 19 | c2 << 23 | (c2 & 1) << 27;
scanline[pos] = pat;
pos++;
}
}
private void doDisplay(WritableImage screen, int xOffset, int y, int dhgrWord) {
if (pos >= 20) {
pos -= 20;