GreaseMonkey
a72142f2b5
Fix EGA/VGA/SVGA odd-even handling of write mask
...
Matches my AMD Stoney + S3 Trio64V2, and also Intel's 2023 GPU docs (which *still* tend to be more accurate than IBM's), and makes more sense than what we've (I've?) been doing.
2025-05-02 10:51:34 +12:00
OBattler
512154e4a8
EGA: Add braces around a case block to make clang happy.
2025-03-30 09:00:39 +02:00
OBattler
5569fa6f5d
C&T SuperEGA: More fixes, the BIOS no longer freezes on attempting to boot from anything.
2025-03-30 08:22:14 +02:00
OBattler
e4877a57c5
EGA/JEGA: More fixes and implemented more C&T SuperEGA behavior.
2025-03-30 07:28:20 +02:00
OBattler
3fc6d29462
JEGA/JVGA: Only update renderer override on master, do not update CRTC cursor location unless it's either master or slave, and only override the text mode renderer - fixes AX Windows 3.0 386 enhanced mode returning from DOS box to full screen.
2025-03-30 04:53:48 +02:00
OBattler
c00c432398
EGA: Fix colors in mono mode and attribute registers, fixes #5395 .
2025-03-29 00:10:39 +01:00
OBattler
63222b70db
Added the OKIVGA/H-2 (JVGA/H).
2025-03-28 06:16:05 +01:00
Akamaki
512c04c9f4
Add OKI if386AX emulation ( #7 )
...
* add a machine oki if386ax
* if386AX: still in debug
* Revert "if386AX: still in debug"
This reverts commit ade401beb0c72cee6fd1ec4728097a87e75bc09b.
* if386ax: added I/O 6xh
* if386ax: remove comment
* formatting, sorting, change filename
* change mono color palette
2025-03-24 00:56:34 +09:00
OBattler
646e25f1bc
EGA: Implement monochrome attributes for text mode.
2025-03-23 02:22:10 +01:00
OBattler
2151a6064f
SuperEGA: Implement row and vertical divide modes.
2025-03-22 23:57:05 +01:00
OBattler
5fe9cc76da
SuperEGA: Increase the GDC and CRTC register arrays to 256 elements to prevent overflows and correctly ignore the upper 3 bits of CRTC register 07h in ega_recalctimings(), fixes #4905 .
2025-03-22 20:44:56 +01:00
OBattler
c3d15ef36d
EGA and JEGA: Implement some missing SuperEGA stuff and make the JEGA properly set the EGA type to SuperEGA, fixes #5370 .
2025-03-22 19:45:32 +01:00
Akamaki
f05e2f34b6
added JEGA video emulation
2025-03-19 08:51:52 +09:00
Jasmine Iwanek
d5d1d5c449
More cleanups to device structs
2025-02-08 01:28:25 -05:00
Jasmine Iwanek
81b8038bc5
Clean up .available & .poll
2025-02-01 03:38:52 -05:00
OBattler
463badd613
kB -> KB.
2024-11-19 04:08:21 +01:00
Jasmine Iwanek
c59e12ab09
Deal with more magic numbers in vid_ega.c
2024-08-08 18:58:14 -04:00
OBattler
6118f7080d
Compaq EGA: Put the dot poll timer into the correct time after a timings recalculation, fixes POST errors on non-Compaq machines.
2024-08-07 17:34:09 +02:00
Jasmine Iwanek
493e82f488
Fix mistake in vid_ega.c
2024-08-07 01:29:13 -04:00
Jasmine Iwanek
5b8b5d739b
Deal with some magic numbers in vid_ega.c
2024-08-07 01:07:50 -04:00
OBattler
fbfb6849c4
Compaq EGA: Implement C&T behavior where reads in mode 0 return 0xFF if bit 2 of GDC register 4 is set, fixes video memory size detection, fixes #4571 .
2024-08-07 05:08:41 +02:00
Alexander Babikov
c8bdb4cfcd
Add manufacturer name to IBM video adapters
2024-01-29 00:49:11 +05:00
OBattler
ac78275cb8
EGA: Correct register (non-)readability on the Compaq EGA and light pen registers.
2024-01-24 20:45:44 +01:00
GreaseMonkey
257cf0d1a2
Remove the "reset horizontal fine scroll on split screen" VGAism from EGA
2024-01-23 17:07:27 +13:00
GreaseMonkey
e5000f7419
Fix fine scroll wobbling in EGA when calling ega_recalctimings
...
Closes: GH-4072
2024-01-23 17:03:33 +13:00
OBattler
79874ad3d5
EGA and (S)VGA: Removed a leftover if block around overscan Y, fixes garbage overscan Y values causing crashes.
2024-01-09 17:38:54 +01:00
GreaseMonkey
bad7c6490e
Rework EGA overscan to be compatible with the unit tester
...
By the way, text mode scrolling at least seems to be correct now
2024-01-09 17:32:38 +13:00
GreaseMonkey
22ead81b80
Fixes for EGA scrolling
2024-01-09 17:20:31 +13:00
GreaseMonkey
258c55dcd3
EGA, (S)VGA: Fix vertical fine scroll behaviour
...
Ref: GH-4001
2024-01-07 09:04:25 +13:00
TC1995
bf52c1172b
EGA:
...
Implement PEL panning per hardware features.
2023-12-22 19:29:42 +01:00
TC1995
d38ad2eb23
ATI EGA Wonder 800+ fixes.
...
1. Reverted the migration from ATI 18800 as the EGA code had the proper palette.
2. Add support for the 800x600 resolution required by said card.
2023-12-19 19:03:54 +01:00
TC1995
6eb05e14d5
ATI EGA Wonder 800+ and 18800 refactoring:
...
1. Proper cleanup of the code.
2. Migrate the card in question to the VGA class list as it's actually a rebadged VGA Edge (thus 18800).
3. Some VGA only features are not supported on this card and are documented in the recalctimings.
2023-12-18 23:43:37 +01:00
GreaseMonkey
1f5d00fe55
Generate CGA-to-EGA tables in video.c; Remove redundant table generation in vid_ega.c
2023-11-21 10:26:13 +13:00
Jasmine Iwanek
506d548b38
More linting in src/video
2023-08-23 00:50:52 -04:00
OBattler
27c56f608d
Compaq 386 machine fixes and Compaq EGA palette mux timer, fixes #3494 .
2023-08-14 05:00:56 +02:00
Jasmine Iwanek
02e41927e3
Dribs and drabs which have escaped
2023-08-12 13:07:00 -04:00
OBattler
33471594f4
First batch of video fixes, also fixes the MDA timings.
2023-08-12 01:16:49 +02:00
Jasmine Iwanek
a65c2164e0
sonarlint vid_ega.c
2023-07-31 15:20:29 -04:00
Jasmine Iwanek
ee695e71f9
More sonarlint work
2023-07-25 17:59:22 -04:00
GreaseMonkey
078651d273
(mostly) Fix EGA split screen - fix done by @cons-cinnabar
...
Closes : #3386
2023-06-11 13:28:13 +12:00
Jasmine Iwanek
d1127e68fa
Even more sonarlint work
2023-06-04 23:39:14 -04:00
Ben Russell
8fe70b0a6e
vid_ega: Make the read-write CRTC registers readable
...
This fixes a lockup that happens when returning from QBASIC under many screen modes, including SCREEN 0.
2023-03-24 21:50:06 +00:00
Ben Russell
0bed201e87
vid_ega: Merge text renderers together
2023-03-23 17:06:12 +13:00
Ben Russell
69c18755a4
vid_ega: Extend 4bpp renderer to handle CGA 2bpp chunky graphics; Remove 2bpp renderer
...
This also lets planes 2 and 3 be used.
2023-03-23 15:28:25 +13:00
Ben Russell
212e494328
vid_ega: Merge 4bpp graphics renderers together
2023-03-23 14:51:35 +13:00
Ben Russell
2a395efbc9
vid_ega: Fix address decoding for Odd/Even modes for the 4bpp gfx renderers
...
This, combined with the Odd/Even fixes from a previous commit, gets the 64KB 640x350 2bpp modes working correctly.
Relevant issue: #2944
2023-03-20 20:07:39 +00:00
Jasmine Iwanek
1860700eab
Fix some small issues
2023-01-07 17:02:23 -05:00
Jasmine Iwanek
a40630ba63
Even more tabs to spaces
2023-01-07 14:09:51 -05:00
Jasmine Iwanek
3fe4f75108
A bit more clang-format
2022-11-19 11:53:07 -05:00
Jasmine Iwanek
883e7c256a
clang format in src/video ( #2654 )
2022-08-31 20:19:29 -03:00