From 81afd96c046192e414dc9a05ad90462b23e96aec Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Deuc=D0=B5?= <shurd@sasktel.net> Date: Thu, 13 May 2021 21:35:20 -0400 Subject: [PATCH] Align into columns, and add aspect ratios for more modes. I really need to do a sweep through and update all the aspect ratios now that the data actually matters. --- src/conio/vidmodes.c | 108 +++++++++++++++++++++---------------------- src/conio/x_events.c | 1 + 2 files changed, 55 insertions(+), 54 deletions(-) diff --git a/src/conio/vidmodes.c b/src/conio/vidmodes.c index 778707c2ff..f804377efd 100644 --- a/src/conio/vidmodes.c +++ b/src/conio/vidmodes.c @@ -11,112 +11,112 @@ // TODO: Pretty much all the 1:1 aspect ratios are wrong... struct video_params vparams[] = { /* BW 40x25 */ - {BW40, GREYSCALE_PALETTE, 40, 25, 14, 15, 16, 8, 1, 7, 0, 1, 1, 320, 200}, + {BW40, GREYSCALE_PALETTE, 40, 25, 14, 15, 16, 8, 1, 7, 0, 833, 1000, 320, 200}, /* CO 40x25 */ - {C40, COLOUR_PALETTE, 40, 25, 14, 15, 16, 8, 1, 7, 0, 1, 1, 320, 200}, + {C40, COLOUR_PALETTE, 40, 25, 14, 15, 16, 8, 1, 7, 0, 833, 1000, 320, 200}, /* BW 80x25 */ - {BW80, GREYSCALE_PALETTE, 80, 25, 14, 15, 16, 8, 1, 7, 0, 1, 1, 640, 400}, + {BW80, GREYSCALE_PALETTE, 80, 25, 14, 15, 16, 8, 1, 7, 0, 833, 1000, 640, 400}, /* CO 80x25 */ - {C80, COLOUR_PALETTE, 80, 25, 14, 15, 16, 8, 1, 7, 0, 833, 1000, 640, 400}, + {C80, COLOUR_PALETTE, 80, 25, 14, 15, 16, 8, 1, 7, 0, 833, 1000, 640, 400}, /* MONO */ - {MONO, 0, 80, 25, 14, 15, 16, 8, 1, 7, 0, 1, 1, 640, 400}, + {MONO, 0, 80, 25, 14, 15, 16, 8, 1, 7, 0, 833, 1000, 640, 400}, /* CO 40x14 */ - {C40X14, COLOUR_PALETTE, 40, 14, 14, 15, 16, 8, 1, 7, 0, 1, 1, 320, 224}, + {C40X14, COLOUR_PALETTE, 40, 14, 14, 15, 16, 8, 1, 7, 0, 1, 1, 320, 224}, /* CO 40x21 */ - {C40X21, COLOUR_PALETTE, 40, 21, 14, 15, 16, 8, 1, 7, 0, 1, 1, 320, 336}, + {C40X21, COLOUR_PALETTE, 40, 21, 14, 15, 16, 8, 1, 7, 0, 1, 1, 320, 336}, /* CO 40x28 */ - {C40X28, COLOUR_PALETTE, 40, 28, 12, 13, 14, 8, 1, 7, 0, 1, 1, 320, 392}, + {C40X28, COLOUR_PALETTE, 40, 28, 12, 13, 14, 8, 1, 7, 0, 1, 1, 320, 392}, /* CO 40x43 */ - {C40X43, COLOUR_PALETTE, 40, 43, 7, 7, 8, 8, 1, 7, 0, 1, 1, 320, 774}, + {C40X43, COLOUR_PALETTE, 40, 43, 7, 7, 8, 8, 1, 7, 0, 1, 1, 320, 774}, /* CO 40x50 */ - {C40X50, COLOUR_PALETTE, 40, 50, 7, 7, 8, 8, 1, 7, 0, 1, 1, 320, 400}, + {C40X50, COLOUR_PALETTE, 40, 50, 7, 7, 8, 8, 1, 7, 0, 1, 1, 320, 400}, /* CO 40x60 */ - {C40X60, COLOUR_PALETTE, 40, 60, 7, 7, 8, 8, 1, 7, 0, 1, 1, 320, 480}, + {C40X60, COLOUR_PALETTE, 40, 60, 7, 7, 8, 8, 1, 7, 0, 1, 1, 320, 480}, /* CO 80x14 */ - {C80X14, COLOUR_PALETTE, 80, 14, 14, 15, 16, 8, 1, 7, 0, 1, 1, 640, 224}, + {C80X14, COLOUR_PALETTE, 80, 14, 14, 15, 16, 8, 1, 7, 0, 1, 1, 640, 224}, /* CO 80x21 */ - {C80X21, COLOUR_PALETTE, 80, 21, 14, 15, 16, 8, 1, 7, 0, 1, 1, 640, 336}, + {C80X21, COLOUR_PALETTE, 80, 21, 14, 15, 16, 8, 1, 7, 0, 1, 1, 640, 336}, /* CO 80x28 */ - {C80X28, COLOUR_PALETTE, 80, 28, 12, 13, 14, 8, 1, 7, 0, 1, 1, 640, 392}, + {C80X28, COLOUR_PALETTE, 80, 28, 12, 13, 14, 8, 1, 7, 0, 1, 1, 640, 392}, /* CO 80x30 */ - {C80X30, COLOUR_PALETTE, 80, 30, 14, 15, 16, 8, 1, 7, 0, 1, 1, 640, 480}, + {C80X30, COLOUR_PALETTE, 80, 30, 14, 15, 16, 8, 1, 7, 0, 1, 1, 640, 480}, /* CO 80x43 */ - {C80X43, COLOUR_PALETTE, 80, 43, 7, 7, 8, 8, 1, 7, 0, 729, 1000, 640, 350}, + {C80X43, COLOUR_PALETTE, 80, 43, 7, 7, 8, 8, 1, 7, 0, 729, 1000, 640, 350}, /* EGA 80x25 */ - {EGA80X25, COLOUR_PALETTE, 80, 25, 12, 13, 14, 8, 1, 7, 0, 729, 1000, 640, 350}, + {EGA80X25, COLOUR_PALETTE, 80, 25, 12, 13, 14, 8, 1, 7, 0, 729, 1000, 640, 350}, /* CO 80x50 */ - {C80X50, COLOUR_PALETTE, 80, 50, 7, 7, 8, 8, 1, 7, 0, 1, 1, 640, 400}, + {C80X50, COLOUR_PALETTE, 80, 50, 7, 7, 8, 8, 1, 7, 0, 833, 1000, 640, 400}, /* CO 80x60 */ - {C80X60, COLOUR_PALETTE, 80, 60, 7, 7, 8, 8, 1, 7, 0, 1, 1, 640, 480}, + {C80X60, COLOUR_PALETTE, 80, 60, 7, 7, 8, 8, 1, 7, 0, 1, 1, 640, 480}, /* B 40x14 */ - {BW40X14, GREYSCALE_PALETTE, 40, 14, 14, 15, 16, 8, 1, 7, 0, 1, 1, 320, 224}, + {BW40X14, GREYSCALE_PALETTE, 40, 14, 14, 15, 16, 8, 1, 7, 0, 1, 1, 320, 224}, /* BW 40x21 */ - {BW40X21, GREYSCALE_PALETTE, 40, 21, 14, 15, 16, 8, 1, 7, 0, 1, 1, 320, 336}, + {BW40X21, GREYSCALE_PALETTE, 40, 21, 14, 15, 16, 8, 1, 7, 0, 1, 1, 320, 336}, /* BW 40x28 */ - {BW40X28, GREYSCALE_PALETTE, 40, 28, 12, 13, 14, 8, 1, 7, 0, 1, 1, 320, 392}, + {BW40X28, GREYSCALE_PALETTE, 40, 28, 12, 13, 14, 8, 1, 7, 0, 1, 1, 320, 392}, /* BW 40x43 */ - {BW40X43, GREYSCALE_PALETTE, 40, 43, 7, 7, 14, 8, 1, 7, 0, 1, 1, 320, 350}, + {BW40X43, GREYSCALE_PALETTE, 40, 43, 7, 7, 14, 8, 1, 7, 0, 1, 1, 320, 350}, /* BW 40x50 */ - {BW40X50, GREYSCALE_PALETTE, 40, 50, 7, 7, 8, 8, 1, 7, 0, 1, 1, 320, 400}, + {BW40X50, GREYSCALE_PALETTE, 40, 50, 7, 7, 8, 8, 1, 7, 0, 1, 1, 320, 400}, /* BW 40x60 */ - {BW40X60, GREYSCALE_PALETTE, 40, 60, 7, 7, 8, 8, 1, 7, 0, 1, 1, 320, 480}, + {BW40X60, GREYSCALE_PALETTE, 40, 60, 7, 7, 8, 8, 1, 7, 0, 1, 1, 320, 480}, /* BW 80x14 */ - {BW80X14, GREYSCALE_PALETTE, 80, 14, 14, 15, 16, 8, 1, 7, 0, 1, 1, 640, 224}, + {BW80X14, GREYSCALE_PALETTE, 80, 14, 14, 15, 16, 8, 1, 7, 0, 1, 1, 640, 224}, /* BW 80x21 */ - {BW80X21, GREYSCALE_PALETTE, 80, 21, 14, 15, 16, 8, 1, 7, 0, 1, 1, 640, 336}, + {BW80X21, GREYSCALE_PALETTE, 80, 21, 14, 15, 16, 8, 1, 7, 0, 1, 1, 640, 336}, /* BW 80x28 */ - {BW80X28, GREYSCALE_PALETTE, 80, 28, 12, 13, 14, 8, 1, 7, 0, 1, 1, 640, 392}, + {BW80X28, GREYSCALE_PALETTE, 80, 28, 12, 13, 14, 8, 1, 7, 0, 1, 1, 640, 392}, /* BW 80x43 */ - {BW80X43, GREYSCALE_PALETTE, 80, 43, 7, 7, 14, 8, 1, 7, 0, 1, 1, 640, 350}, + {BW80X43, GREYSCALE_PALETTE, 80, 43, 7, 7, 14, 8, 1, 7, 0, 1, 1, 640, 350}, /* BW 80x50 */ - {BW80X50, GREYSCALE_PALETTE, 80, 50, 7, 7, 8, 8, 1, 7, 0, 1, 1, 640, 400}, + {BW80X50, GREYSCALE_PALETTE, 80, 50, 7, 7, 8, 8, 1, 7, 0, 833, 1000, 640, 400}, /* BW 80x60 */ - {BW80X60, GREYSCALE_PALETTE, 80, 60, 7, 7, 8, 8, 1, 7, 0, 1, 1, 640, 480}, + {BW80X60, GREYSCALE_PALETTE, 80, 60, 7, 7, 8, 8, 1, 7, 0, 1, 1, 640, 480}, /* MONO 80x14 */ - {MONO14, MONO_PALETTE, 80, 14, 14, 15, 16, 8, 1, 7, 0, 1, 1, 640, 224}, + {MONO14, MONO_PALETTE, 80, 14, 14, 15, 16, 8, 1, 7, 0, 1, 1, 640, 224}, /* MONO 80x21 */ - {MONO21, MONO_PALETTE, 80, 21, 14, 15, 16, 8, 1, 7, 0, 1, 1, 640, 336}, + {MONO21, MONO_PALETTE, 80, 21, 14, 15, 16, 8, 1, 7, 0, 1, 1, 640, 336}, /* MONO 80x28 */ - {MONO28, MONO_PALETTE, 80, 28, 12, 13, 14, 8, 1, 7, 0, 1, 1, 640, 392}, + {MONO28, MONO_PALETTE, 80, 28, 12, 13, 14, 8, 1, 7, 0, 1, 1, 640, 392}, /* MONO 80x43 */ - {MONO43, MONO_PALETTE, 80, 43, 7, 7, 14, 8, 1, 7, 0, 1, 1, 640, 350}, + {MONO43, MONO_PALETTE, 80, 43, 7, 7, 14, 8, 1, 7, 0, 1, 1, 640, 350}, /* MONO 80x50 */ - {MONO50, MONO_PALETTE, 80, 50, 7, 7, 8, 8, 1, 7, 0, 1, 1, 640, 400}, + {MONO50, MONO_PALETTE, 80, 50, 7, 7, 8, 8, 1, 7, 0, 833, 1000, 640, 400}, /* MONO 80x60 */ - {MONO60, MONO_PALETTE, 80, 60, 7, 7, 8, 8, 1, 7, 0, 1, 1, 640, 480}, + {MONO60, MONO_PALETTE, 80, 60, 7, 7, 8, 8, 1, 7, 0, 1, 1, 640, 480}, /* Magical C4350 Mode */ - {C4350, COLOUR_PALETTE, 80, 50, 7, 7, 8, 8, 1, 7, 0, 1, 1, 640, 400}, + {C4350, COLOUR_PALETTE, 80, 50, 7, 7, 8, 8, 1, 7, 0, 833, 1000, 640, 400}, /* Commodore 64 40x25 mode */ - {C64_40X25, C64_PALETTE, 40, 25, 0, 7, 8, 8, 1, 0x6e, CIOLIB_VIDEO_BGBRIGHT|CIOLIB_VIDEO_NOBLINK, 1, 1, 320, 200}, + {C64_40X25, C64_PALETTE, 40, 25, 0, 7, 8, 8, 1, 0x6e, CIOLIB_VIDEO_BGBRIGHT|CIOLIB_VIDEO_NOBLINK, 1, 1, 320, 200}, /* Commodore 128 40x25 mode */ - {C128_40X25, C64_PALETTE, 40, 25, 0, 7, 8, 8, 1, 0xbd, CIOLIB_VIDEO_BGBRIGHT|CIOLIB_VIDEO_NOBLINK, 1, 1, 320, 200}, + {C128_40X25, C64_PALETTE, 40, 25, 0, 7, 8, 8, 1, 0xbd, CIOLIB_VIDEO_BGBRIGHT|CIOLIB_VIDEO_NOBLINK, 1, 1, 320, 200}, /* Commodore 128 80x25 mode */ - {C128_80X25, COLOUR_PALETTE, 80, 25, 0, 7, 8, 8, 2, 7, CIOLIB_VIDEO_BGBRIGHT|CIOLIB_VIDEO_NOBLINK, 1, 1, 640, 200}, + {C128_80X25, COLOUR_PALETTE, 80, 25, 0, 7, 8, 8, 2, 7, CIOLIB_VIDEO_BGBRIGHT|CIOLIB_VIDEO_NOBLINK, 1, 1, 640, 200}, /* Atari 800 40x24 mode */ - {ATARI_40X24, ATARI_PALETTE, 40, 24, 0, 7, 8, 8, 1, 7, 0, 1, 1, 320, 192}, + {ATARI_40X24, ATARI_PALETTE, 40, 24, 0, 7, 8, 8, 1, 7, 0, 1, 1, 320, 192}, /* Atari 800 XEP80 80x25 mode */ - {ATARI_80X25, GREYSCALE_PALETTE, 80, 25, 0, 15, 16, 8, 1, 7, 0, 1, 1, 640, 400}, + {ATARI_80X25, GREYSCALE_PALETTE, 80, 25, 0, 15, 16, 8, 1, 7, 0, 833, 1000, 640, 400}, /* VESA 21x132 mode */ - {VESA_132X21, COLOUR_PALETTE, 132, 21, 14, 15, 16, 8, 1, 7, 0, 1, 1, 1056, 336}, + {VESA_132X21, COLOUR_PALETTE, 132, 21, 14, 15, 16, 8, 1, 7, 0, 1, 1, 1056, 336}, /* VESA 25x132 mode */ - {VESA_132X25, COLOUR_PALETTE, 132, 25, 14, 15, 16, 8, 1, 7, 0, 1, 1, 1056, 400}, + {VESA_132X25, COLOUR_PALETTE, 132, 25, 14, 15, 16, 8, 1, 7, 0, 1, 1, 1056, 400}, /* VESA 28x132 mode */ - {VESA_132X28, COLOUR_PALETTE, 132, 28, 12, 13, 14, 8, 1, 7, 0, 1, 1, 1056, 392}, + {VESA_132X28, COLOUR_PALETTE, 132, 28, 12, 13, 14, 8, 1, 7, 0, 1, 1, 1056, 392}, /* VESA 30x132 mode */ - {VESA_132X30, COLOUR_PALETTE, 132, 30, 14, 15, 16, 8, 1, 7, 0, 1, 1, 1056, 480}, + {VESA_132X30, COLOUR_PALETTE, 132, 30, 14, 15, 16, 8, 1, 7, 0, 1, 1, 1056, 480}, /* VESA 34x132 mode */ - {VESA_132X34, COLOUR_PALETTE, 132, 34, 12, 13, 14, 8, 1, 7, 0, 1, 1, 1056, 476}, + {VESA_132X34, COLOUR_PALETTE, 132, 34, 12, 13, 14, 8, 1, 7, 0, 1, 1, 1056, 476}, /* VESA 43x132 mode */ - {VESA_132X43, COLOUR_PALETTE, 132, 43, 7, 7, 14, 8, 1, 7, 0, 1, 1, 1056, 350}, + {VESA_132X43, COLOUR_PALETTE, 132, 43, 7, 7, 14, 8, 1, 7, 0, 1, 1, 1056, 350}, /* VESA 50x132 mode */ - {VESA_132X50, COLOUR_PALETTE, 132, 50, 7, 7, 8, 8, 1, 7, 0, 1, 1, 1056, 400}, + {VESA_132X50, COLOUR_PALETTE, 132, 50, 7, 7, 8, 8, 1, 7, 0, 1, 1, 1056, 400}, /* VESA 60x132 mode */ - {VESA_132X60, COLOUR_PALETTE, 132, 60, 7, 7, 8, 8, 1, 7, 0, 1, 1, 1056, 480}, + {VESA_132X60, COLOUR_PALETTE, 132, 60, 7, 7, 8, 8, 1, 7, 0, 1, 1, 1056, 480}, /* Awesome modes */ - {ST132X37_16_9, COLOUR_PALETTE, 132, 37, 14, 15, 16, 8, 1, 7, 0, 1, 1, 1056, 600}, - {ST132X52_5_4, COLOUR_PALETTE, 132, 52, 14, 15, 16, 8, 1, 7, 0, 1, 1, 1056}, + {ST132X37_16_9, COLOUR_PALETTE, 132, 37, 14, 15, 16, 8, 1, 7, 0, 1, 1, 1056, 600}, + {ST132X52_5_4, COLOUR_PALETTE, 132, 52, 14, 15, 16, 8, 1, 7, 0, 1, 1, 1056, 823}, /* Custom mode */ - {CIOLIB_MODE_CUSTOM, COLOUR_PALETTE, 80, 25, 14, 15, 16, 8, 1, 7, 0, 1, 1, -1, -1}, + {CIOLIB_MODE_CUSTOM, COLOUR_PALETTE, 80, 25, 14, 15, 16, 8, 1, 7, 0, 1, 1, -1, -1}, }; uint32_t palettes[5][16] = { diff --git a/src/conio/x_events.c b/src/conio/x_events.c index bd21f53cc8..0fdc629f17 100644 --- a/src/conio/x_events.c +++ b/src/conio/x_events.c @@ -545,6 +545,7 @@ static void local_draw_rect(struct rectlist *rect) else pixel |= (b >> (0-b_shift)) & visual.blue_mask; } + // TODO: These loops shouldn't be necessary anymore... for(yscale=0; yscale<yscaling; yscale++) { for(xscale=0; xscale<xscaling; xscale++) { #ifdef XPutPixel -- GitLab