From 5063cf1bb4484ae4cb857094e3ebaadad724c6a1 Mon Sep 17 00:00:00 2001 From: Cacodemon345 Date: Fri, 8 Jul 2022 00:17:46 +0600 Subject: [PATCH] PGC: Properly draw 40x25 CGA text mode --- src/video/vid_pgc.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/video/vid_pgc.c b/src/video/vid_pgc.c index e956cb12e..d810536b3 100644 --- a/src/video/vid_pgc.c +++ b/src/video/vid_pgc.c @@ -2363,7 +2363,12 @@ pgc_cga_text(pgc_t *dev, int w) val = cols[(fontdatm[chr + dev->fontbase][sc] & (1 << (c ^ 7))) ? 1 : 0] ^ 0x0f; else val = cols[(fontdatm[chr + dev->fontbase][sc] & (1 << (c ^ 7))) ? 1 : 0]; - buffer32->line[dev->displine][(x * cw) + c] = val; + if (cw == 8) /* 80x25 CGA text screen. */ + buffer32->line[dev->displine][(x * cw) + c] = val; + else { /* 40x25 CGA text screen. */ + buffer32->line[dev->displine][(x * cw) + (c * 2)] = val; + buffer32->line[dev->displine][(x * cw) + (c * 2) + 1] = val; + } } ma++;