Commit Graph

757 Commits

Author SHA1 Message Date
OBattler
cb275dd6a3 Fixes the behavior of F(N)INIT and F(N)SAVE on 8087, fixes the only MCPDIAG failure that was actually an 86Box bug, closes #4518. 2024-07-29 04:34:47 +02:00
OBattler
e377e58881 Assorted fixes and Dev branched the Matrox G100 and the PCL printer. 2024-07-26 00:39:11 +02:00
OBattler
5912a88a1b Fixed initializations in the CD-ROM code, fixes #4653. 2024-07-25 19:05:05 +02:00
OBattler
3ea7f2ad92 OPTi chipset mask and CPU fixes, fixes #895. 2024-07-25 06:54:26 +02:00
Jasmine Iwanek
60be3e786e Update cpu_table copyright 2024-07-23 20:21:56 -04:00
Jasmine Iwanek
56cc182e61 Align assignments in cpu_table 2024-07-23 20:21:56 -04:00
Jasmine Iwanek
cb6cc140d2 Bits of cpu_table formatting which escaped 2024-07-23 20:21:56 -04:00
Jasmine Iwanek
decce77204 Named initializers for Socket 370's 2024-07-23 20:21:55 -04:00
Jasmine Iwanek
8af310e0a2 Named initializers for Slot 2's 2024-07-23 20:21:55 -04:00
Jasmine Iwanek
a880c9a020 Named initializers for Slot 1's 2024-07-23 20:21:55 -04:00
Jasmine Iwanek
6141577347 Named initializers for socket 8's 2024-07-23 20:21:55 -04:00
Jasmine Iwanek
0fedbf9b46 Named initializers for socket 5's and 7's 2024-07-23 20:21:55 -04:00
OBattler
3d50934812 Fixed the IBM 486BL EDX reset values and the Tandy 1000 CPU's. 2024-07-24 00:07:21 +02:00
OBattler
95894198bf Genoa Unknown 486: Reset BIOS memory state on soft reset, fixes hangs on soft reset after saving CMOS Setup. 2024-07-22 18:26:10 +02:00
Jasmine Iwanek
b5f85ba267 Named initializers for soclet 4's 2024-07-21 19:24:16 -04:00
Jasmine Iwanek
27f83754b2 Named initializers for STPC CPU's 2024-07-21 18:52:13 -04:00
Jasmine Iwanek
ed6193abc9 Named initializers for soclet 3's 2024-07-21 18:44:20 -04:00
Jasmine Iwanek
232b44323c Named initializers for soclet 1 486's 2024-07-21 18:18:48 -04:00
Jasmine Iwanek
1b4408cf38 Deal with incorrect formatting offset in cpu_table 2024-07-21 18:18:47 -04:00
Jasmine Iwanek
ecc7f965a8 Named initializers for IBM & Cyrix CPU's 2024-07-21 18:18:47 -04:00
OBattler
6781ea56dd Merge branch 'master' of https://github.com/86Box/86Box 2024-07-02 01:47:49 +02:00
OBattler
eab504f388 x86seg.c: Make sure not to read beyond the end of the stack segment on stack transfers, fixes erroneous page faults when transferring 16-bit stacks to 32-bit stacks, fixes OS/2 2.0 build 6.141. 2024-07-02 01:47:42 +02:00
Jasmine Iwanek
13dac1020f Named-initializers for 80386DX CPU's 2024-06-28 23:42:28 -04:00
Jasmine Iwanek
571bab3efd Named-initializers for 80386SX CPU's 2024-06-28 23:42:28 -04:00
OBattler
bbe035b62a Implement special selector pushing behavior and improve the opcode length heuristic for CS limit checks, fixes #4552. 2024-06-23 02:28:22 +02:00
Cacodemon345
2b3d3ad5bd Make sure timers don't go completely out of sync upon altering TSC via WRMSR 2024-06-18 20:21:23 +06:00
OBattler
a369bc2d05 Reimplement S3 ViRGE reset and move PCI TRC CPU reset to outside the recompiled block, fixes #2903. 2024-06-12 20:46:27 +02:00
OBattler
969830ad83 New recompiler: Add a sanity check, fixes crash with RapidCAD, fixes #4487 . 2024-06-12 01:58:44 +02:00
OBattler
751f2af382 And primitives.h. as well. 2024-06-10 02:23:13 +02:00
OBattler
f4cc13d622 The forgotten .c file. 2024-06-10 02:14:55 +02:00
OBattler
56b3a27b33 SoftFloat: Move the const's to a .c file and make the .h only contain extern's. 2024-06-10 02:14:42 +02:00
OBattler
2273f563a5 Moved the offending SoftFloat-related stuff to x87_sf.h, fixes warnings. 2024-06-10 00:08:48 +02:00
TC1995
0f29bcddf1 Upgrade to softfloat3e.
This should solve licensing problems as well.
2024-06-09 23:08:46 +02:00
OBattler
4b77ef6823 286: Make LOCK legal with all instructions, per the Programmers' Reference Manual. 2024-06-09 19:58:16 +02:00
OBattler
38557b33dc Removed the VM_FLAG access from DRx access again. 2024-05-25 17:24:43 +02:00
Alexander Babikov
a07ffdecab Restore the debug register operation on 486+
But put it behind a compile-time option due to performance hits
Also add the DE flag to CPUID on supported CPUs
2024-05-24 03:35:08 +05:00
OBattler
d23c2a613d 286/386 interpreter: reinstall VM_FLAG check on accessin the debug registers. 2024-05-24 00:10:04 +02:00
Miran Grča
54178355b8 And in cpu.h. 2024-04-25 19:11:25 +02:00
Miran Grča
8928f5d771 Variable to override the 286/386 interpreter. 2024-04-25 19:10:40 +02:00
OBattler
15e3876e21 Prepare WD76C10 for 286/386 interpreter selection, exempt IBM 486BL and all Cyrix'es from the 286/386 interpreter. 2024-04-24 06:06:09 +02:00
OBattler
8e21ba4699 SoftFloat: Fix 8087/287 comparison of infinites. 2024-03-27 13:59:37 +01:00
OBattler
12e4d1b083 SoftFloat: Correctly treat +INF and -INF as equal on 8087 and 287, fixes 287 detection in MCPDiag. 2024-03-26 23:29:06 +01:00
OBattler
0b0cb84bf7 FPU: Re-enabled SoftFloat on 808x and implement the missing FBLD instruction, closes #4300. 2024-03-25 19:59:26 +01:00
OBattler
244038b84c LOCK: It is sometimes legal when cpu_mod == 3, fixes hangs with Compaq Portable III 386 TEST. 2024-03-03 21:24:00 +01:00
OBattler
71ecdc1b55 No longer raise TS# when (CS & 0xFFF8) is zero and (CS & 0x0004) is not, fixes #4214. 2024-02-29 06:52:45 +01:00
OBattler
6de7c7cd5e Fixed LOCK legality with prefixes, closes #4189. 2024-02-23 07:10:15 +01:00
OBattler
fcabd353d9 Check IOPL on 286 task segments. 2024-02-22 00:56:28 +01:00
OBattler
733c26d04a Return no mask when the TSS type is 286, closes #4177. 2024-02-19 19:09:35 +01:00
OBattler
e3e30e7536 Fixed a very stupid typo in the 286/386 version of the LOCK instruction that was breaking OS/2 Warp 3.0. 2024-02-19 15:41:49 +01:00
OBattler
19f6954410 Reverted some CPU-related changes. 2024-02-19 15:20:59 +01:00