diff options
author | kcgen <kcgen@users.noreply.github.com> | 2022-08-20 17:49:16 +0300 |
---|---|---|
committer | kcgen <kcgen@users.noreply.github.com> | 2022-08-20 21:31:15 +0300 |
commit | 74c9d2fc67b702be2b4a0b915c24541a79468bc9 (patch) | |
tree | 8476e2bd3a236ed5cfcf7ae0737ff728f70a085a | |
parent | b90159500a9d244d063b05ad12450bf90ff0131c (diff) |
Revert "Replace pre-VBE 2.0 32-bit modes with 24-bit modes"kc/revert-vesa-modes-1
This reverts commit 8d49f89dcff66700fd37aab47bef6e4ed19b3d10.
-rw-r--r-- | src/ints/int10_modes.cpp | 35 |
1 files changed, 15 insertions, 20 deletions
diff --git a/src/ints/int10_modes.cpp b/src/ints/int10_modes.cpp index ee4d297ee..0f2a0e168 100644 --- a/src/ints/int10_modes.cpp +++ b/src/ints/int10_modes.cpp @@ -68,10 +68,7 @@ std::vector<VideoModeBlock> ModeList_VGA = { { 0x069, M_LIN8, 640, 480, 80, 30, 8, 16, 1, 0xA0000, 0x10000, 100, 525, 80, 480, 0}, { 0x06A, M_LIN4, 800, 600, 100, 37, 8, 16, 1, 0xA0000, 0x10000, 128, 663, 100, 600, 0}, -// Defined VESA modes (pre-VBE version 2.0) -// Video Electronics Standards Association (VESA), VESA BIOS EXTENSION (VBE), -// Core Functions Standard Version: 2.0, Document Revision 1.2, 18 Nov, 1994, pp. 6,7. -// Ref: https://www.ele.uva.es/~jesman/BigSeti/ftp/Perifericos/Vesa/vbe_2_0.pdf + // Follow VESA 1.2 mode list from 0x100 to 0x11B { 0x100, M_LIN8, 640, 400, 80, 25, 8, 16, 1, 0xA0000, 0x10000, 100, 449, 80, 400, 0}, { 0x101, M_LIN8, 640, 480, 80, 30, 8, 16, 1, 0xA0000, 0x10000, 100, 525, 80, 480, 0}, { 0x102, M_LIN4, 800, 600, 100, 37, 8, 16, 1, 0xA0000, 0x10000, 132, 628, 100, 600, 0}, @@ -81,38 +78,36 @@ std::vector<VideoModeBlock> ModeList_VGA = { { 0x106, M_LIN4, 1280, 1024, 160, 64, 8, 16, 1, 0xA0000, 0x10000, 212, 1066, 160, 1024, 0}, { 0x107, M_LIN8, 1280, 1024, 160, 64, 8, 16, 1, 0xA0000, 0x10000, 212, 1066, 160, 1024, 0}, + // VESA text modes { 0x108, M_TEXT, 640, 480, 80, 60, 8, 8, 2, 0xB8000, 0x4000, 100, 525, 80, 480, 0}, { 0x109, M_TEXT, 1056, 400, 132, 25, 8, 16, 1, 0xB8000, 0x2000, 160, 449, 132, 400, 0}, { 0x10A, M_TEXT, 1056, 688, 132, 43, 8, 8, 1, 0xB8000, 0x4000, 160, 449, 132, 344, 0}, { 0x10B, M_TEXT, 1056, 400, 132, 50, 8, 8, 1, 0xB8000, 0x4000, 160, 449, 132, 400, 0}, { 0x10C, M_TEXT, 1056, 480, 132, 60, 8, 8, 2, 0xB8000, 0x4000, 160, 531, 132, 480, 0}, + // VESA higher color modes { 0x10D, M_LIN15, 320, 200, 40, 25, 8, 8, 1, 0xA0000, 0x10000, 100, 449, 80, 400, VGA_PIXEL_DOUBLE | EGA_LINE_DOUBLE}, { 0x10E, M_LIN16, 320, 200, 40, 25, 8, 8, 1, 0xA0000, 0x10000, 100, 449, 80, 400, VGA_PIXEL_DOUBLE | EGA_LINE_DOUBLE}, - { 0x10F, M_LIN24, 320, 200, 40, 25, 8, 8, 1, 0xA0000, 0x10000, 50, 449, 40, 400, VGA_PIXEL_DOUBLE | EGA_LINE_DOUBLE}, + { 0x10F, M_LIN32, 320, 200, 40, 25, 8, 8, 1, 0xA0000, 0x10000, 50, 449, 40, 400, VGA_PIXEL_DOUBLE | EGA_LINE_DOUBLE}, { 0x110, M_LIN15, 640, 480, 80, 30, 8, 16, 1, 0xA0000, 0x10000, 200, 525, 160, 480, 0}, { 0x111, M_LIN16, 640, 480, 80, 30, 8, 16, 1, 0xA0000, 0x10000, 200, 525, 160, 480, 0}, - { 0x112, M_LIN24, 640, 480, 80, 30, 8, 16, 1, 0xA0000, 0x10000, 100, 525, 80, 480, 0}, + { 0x112, M_LIN32, 640, 480, 80, 30, 8, 16, 1, 0xA0000, 0x10000, 100, 525, 80, 480, 0}, { 0x113, M_LIN15, 800, 600, 100, 37, 8, 16, 1, 0xA0000, 0x10000, 264, 628, 200, 600, 0}, { 0x114, M_LIN16, 800, 600, 100, 37, 8, 16, 1, 0xA0000, 0x10000, 264, 628, 200, 600, 0}, - { 0x115, M_LIN24, 800, 600, 100, 37, 8, 16, 1, 0xA0000, 0x10000, 132, 628, 100, 600, 0}, + { 0x115, M_LIN32, 800, 600, 100, 37, 8, 16, 1, 0xA0000, 0x10000, 132, 628, 100, 600, 0}, { 0x116, M_LIN15, 1024, 768, 128, 48, 8, 16, 1, 0xA0000, 0x10000, 336, 806, 256, 768, 0}, { 0x117, M_LIN16, 1024, 768, 128, 48, 8, 16, 1, 0xA0000, 0x10000, 336, 806, 256, 768, 0}, - { 0x118, M_LIN24, 1024, 768, 128, 48, 8, 16, 1, 0xA0000, 0x10000, 168, 806, 128, 768, 0}, + { 0x118, M_LIN32, 1024, 768, 128, 48, 8, 16, 1, 0xA0000, 0x10000, 168, 806, 128, 768, 0}, { 0x119, M_LIN15, 1280, 1024, 160, 64, 8, 16, 1, 0xA0000, 0x10000, 212, 1066, 320, 1024, 0}, { 0x11A, M_LIN16, 1280, 1024, 160, 64, 8, 16, 1, 0xA0000, 0x10000, 212, 1066, 320, 1024, 0}, - { 0x11B, M_LIN24, 1280, 1024, 160, 64, 8, 16, 1, 0xA0000, 0x10000, 212, 1066, 160, 1024, 0}, - -// Typical VESA 2.0 modes - { 0x120, M_LIN16, 640, 400, 80, 25, 8, 16, 1, 0xA0000, 0x10000, 200, 449, 160, 400, 0}, - { 0x121, M_LIN32, 640, 480, 80, 30, 8, 16, 1, 0xA0000, 0x10000, 100, 525, 80, 480, 0}, - { 0x122, M_LIN32, 800, 600, 100, 37, 8, 16, 1, 0xA0000, 0x10000, 132, 628, 100, 600, 0}, - { 0x123, M_LIN32, 1024, 768, 128, 48, 8, 16, 1, 0xA0000, 0x10000, 168, 806, 128, 768, 0}, - { 0x124, M_LIN32, 1280, 1024, 160, 64, 8, 16, 1, 0xA0000, 0x10000, 212, 1066, 160, 1024, 0}, - { 0x145, M_LIN8, 1600, 1200, 200, 75, 8, 16, 1, 0xA0000, 0x10000, 264, 1250, 200, 1200, 0}, - { 0x146, M_LIN16, 1600, 1200, 200, 75, 8, 16, 1, 0xA0000, 0x10000, 264, 1250, 400, 1200, 0}, - - // S3-specific VESA 2.0 modes + { 0x11B, M_LIN32, 1280, 1024, 160, 64, 8, 16, 1, 0xA0000, 0x10000, 212, 1066, 160, 1024, 0}, + + // 1600x1200 S3 specific modes + { 0x120, M_LIN8, 1600, 1200, 200, 75, 8, 16, 1, 0xA0000, 0x10000, 264, 1250, 200, 1200, 0}, + { 0x121, M_LIN15, 1600, 1200, 200, 75, 8, 16, 1, 0xA0000, 0x10000, 264, 1250, 400, 1200, 0}, + { 0x122, M_LIN16, 1600, 1200, 200, 75, 8, 16, 1, 0xA0000, 0x10000, 264, 1250, 400, 1200, 0}, + + // Custom modes { 0x150, M_LIN8, 320, 200, 40, 25, 8, 8, 1, 0xA0000, 0x10000, 100, 449, 80, 400, VGA_PIXEL_DOUBLE | EGA_LINE_DOUBLE}, { 0x151, M_LIN8, 320, 240, 40, 30, 8, 8, 1, 0xA0000, 0x10000, 100, 525, 80, 480, VGA_PIXEL_DOUBLE | EGA_LINE_DOUBLE}, { 0x152, M_LIN8, 320, 400, 40, 50, 8, 8, 1, 0xA0000, 0x10000, 100, 449, 80, 400, VGA_PIXEL_DOUBLE}, |