Commit Graph

12049 Commits

Author SHA1 Message Date
OBattler
fbc1341e58 Added unit tester to the MingW makefile. 2024-01-09 18:35:53 +01: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
OBattler
b0ca256065 Merge branch 'master' of https://github.com/86Box/86Box 2024-01-09 17:10:59 +01:00
OBattler
143b8be92f The forgotten changes to win/Makefile.mingw. 2024-01-09 17:10:47 +01:00
Miran Grča
f146038911 Merge pull request #4016 from iamgreaser/gm/ega-smooth-scroll-fix-4001
Fix EGA fine scrolling in text modes
2024-01-09 08:02:24 +01:00
GreaseMonkey
02bbf490db Merge remote-tracking branch 'origin/master' into gm/ega-smooth-scroll-fix-4001 2024-01-09 17:37:42 +13: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
OBattler
c29d51b419 Slowed down the keyboard controller back to the old speed, fixes #4013. 2024-01-09 02:40:00 +01:00
GreaseMonkey
9df44e60b5 unittester: Make the log more usable 2024-01-09 13:08:25 +13:00
OBattler
1d15d48ee7 Broke out the ALi M5213 IDE from the ALi M1489 code (it turns out the ALi M1489 on-chip IDE is for all intents and purposes identical to the M5213) and made the Acer A1G use it. 2024-01-08 23:58:30 +01:00
OBattler
3a62aa4ea7 First batch of Acer A1G fixes, fixes #3992. 2024-01-08 22:27:09 +01:00
OBattler
39258ecdeb And added even more sanity checks. 2024-01-08 13:27:24 +01:00
OBattler
1e5aa13529 Default the previous pixel to black if prev < 0. 2024-01-08 13:23:48 +01:00
OBattler
7f92d71bf1 Removed some accidentally excess logging from disk/hdc_ide.c. 2024-01-08 02:40:45 +01:00
Miran Grča
93ff7b7ff8 Merge pull request #4011 from iamgreaser/gm/video-debug-device
Add initial "Unit Tester" device for analysing framebuffer contents
2024-01-08 02:35:35 +01:00
OBattler
215c507634 Soft reset on IDE device 1 causes the assertion of PDIAG- which causes the error register of device 0 to also be set to 1, indicating diagnostics passed successfully (+ a PIIX3 fix), fixes #4002. 2024-01-08 02:35:03 +01:00
GreaseMonkey
9448fc044f Enable and disable "configure" button for unit tester
Now ready for review!
2024-01-08 13:53:13 +13:00
GreaseMonkey
276e43428e Allow one to enable/disable unit tester exit
Memo to self: Hardware renderers often exit in a silent segfault. Look into this at some point.
2024-01-08 13:48:33 +13:00
GreaseMonkey
5a2e3611d9 unittester: Apply clang-format 2024-01-08 13:01:55 +13:00
GreaseMonkey
4648092b12 unittester: Fix that one bug I wasn't going to fix
I might as well not be a hypocrite here.
2024-01-08 12:59:02 +13:00
GreaseMonkey
e5f467918c unittester: Cleanups and specification v1.0.0 finalisation 2024-01-08 12:54:31 +13:00
GreaseMonkey
77c4883d0b Merge remote-tracking branch 'origin/master' into gm/video-debug-device 2024-01-08 12:10:21 +13:00
OBattler
86d7c248f4 The forgotten changes to vid_cga.h. 2024-01-08 00:09:35 +01:00
GreaseMonkey
5453a7334f Merge remote-tracking branch 'origin/master' into gm/video-debug-device 2024-01-08 12:08:37 +13:00
GreaseMonkey
30aacb2a1a unittester: Implement 0x03 "Verify Screen Snapshot Rectangle"
Basic quick tests show that this is probably consistent with command 0x02.
2024-01-08 12:07:14 +13:00
OBattler
354c537469 Added 3 CGA line doubling types, in order from the lowest to the highest quality, and the IBM 5153 monitor (per VileR's colors) which is now default, closes #3105. 2024-01-08 00:07:00 +01:00
GreaseMonkey
f35dd20974 unittester: Reduce spam 2024-01-08 10:45:13 +13:00
OBattler
67d8ebba51 S3: Correct line lengths and introduce s3_log(). 2024-01-07 20:54:48 +01:00
Miran Grča
526c912c80 Merge pull request #4009 from 86Box/tc1995
S3 changes again:
2024-01-07 20:46:25 +01:00
TC1995
c5e321ca92 S3 changes again:
1. Moved the wraparound fix to the respective recalctimings, makes Commander Keen still playable without flickering and, at the same time, making Solaris work right in 640x480x8bpp+ mode (including 1024x768x8bpp).
2. The multifunction index 0x0e bit that can be toggled in 32bpp mode is now initialized properly, should fix the pinkness on Solaris' 32bpp mode.
2024-01-07 20:36:50 +01:00
Miran Grča
e25caccc43 Merge pull request #4003 from iamgreaser/gm/vga-smooth-vscroll-fix-4001
EGA, (S)VGA: Fix vertical fine scroll behaviour
2024-01-07 14:19:36 +01:00
GreaseMonkey
678874cd42 unittester: Implement 0x02 "Read Screen Snapshot Rectangle"
This will need some extra testing but it does appear to be at least somewhat functional.
2024-01-07 22:24:32 +13:00
GreaseMonkey
2e020584cf unittester: Finish implementing 0x01 "Capture Screen Snapshot"
And it's looking like the overscan bounds and offset calculation will need to be correct.
Otherwise, things will break.
Let's see what happens when I get command 0x02 working...
2024-01-07 21:32:59 +13:00
GreaseMonkey
d44c439bd8 unittester: Implement most of 0x01 "Capture Screen Snapshot"
The thing that isn't implemented is the actual snapshot capture.
But the dimensions should be correct.
I am feeling a bit iffy about the overscan, though.
2024-01-07 21:27:13 +13:00
GreaseMonkey
59e51939ad unittester: Fix erroneous debug message 2024-01-07 20:09:06 +13:00
GreaseMonkey
ae3e40706f unittester: Remove the worst of the log spam 2024-01-07 18:19:27 +13:00
GreaseMonkey
7dbbb0d12b Fix a comment 2024-01-07 18:19:17 +13:00
GreaseMonkey
ab7df4409b unittester: Implement 0x04 "Exit" 2024-01-07 17:42:23 +13:00
GreaseMonkey
d1133a7c7f unittester: Implement status register and 0x00 "No-op" command 2024-01-07 17:20:19 +13:00
GreaseMonkey
04eb9ffc3e unittester: Add WIP specification document 2024-01-07 17:07:24 +13:00
OBattler
4f392ca8e3 SM(S)C FDC37C669 Super I/O chip rewrite and proper FDC power down behavior, fixes floppy drive errors on the new Daeweoo machine. 2024-01-07 01:42:34 +01:00
GreaseMonkey
5279cd5d8d unittester: Add dummy main ports
Reads and writes mostly do nothing but log, although the status returns a dummy value of 0x04 (no command in flight, not waiting for anything, and no errors).
2024-01-07 13:31:45 +13:00
GreaseMonkey
130d4094e1 unittester: Implement basic activation + IOBASE-setting protocol
Next up is the actual I/O ports!
2024-01-07 13:17:21 +13:00
GreaseMonkey
72b465e181 Add dummy 86Box Unit Tester device 2024-01-07 11:50:22 +13:00
GreaseMonkey
bf52ef7598 Add "86Box unit tester" config option + Qt UI checkbox
This is in preparation for making the device actually exist.
2024-01-07 11:21:38 +13:00
GreaseMonkey
258c55dcd3 EGA, (S)VGA: Fix vertical fine scroll behaviour
Ref: GH-4001
2024-01-07 09:04:25 +13:00
OBattler
2fb04b63ec Some corrections. 2024-01-06 01:59:06 +01:00
OBattler
41766a6a1d PCI changes to accomodate the SiS TRC stuff. 2024-01-06 01:55:38 +01:00
OBattler
937e2a52f8 SiS 5571, Daewoo Compaq, speed up AT / PS/2 KBC (does not appear to break anything from months of testing) and fix AT / PS/2 keyboard reset to fix the Samsung SPC7700LP-W soft reset. 2024-01-06 01:51:20 +01:00