Commit Graph

404 Commits

Author SHA1 Message Date
Cacodemon345
2cdc63e83a 808x: Switch to __builtin_parity for parity flag setting 2022-09-10 14:53:00 +06:00
RichardG867
d41bf191a5 Merge branch 'master' of ssh://github.com/86Box/86Box 2022-08-18 17:23:47 -03:00
RichardG867
48b372c60a gdbstub: Always ignore dynarec choice when compiled in 2022-08-18 17:23:41 -03:00
Miran Grča
ee651ae48f Update x86_ops_bcd.h
Reverted the AAM instruction to again set the divisor to 10 when 0 is specified.
2022-08-14 20:47:36 +02:00
Alexander Babikov
603cdcbb37 Clear unfilled registers when returning CPUID results on K6-2/III/+ CPUs 2022-08-13 15:41:00 +05:00
OBattler
2a6a061556 nmi_raise() actually raises NMI, should fix ES1371 legacy device and other stuff. 2022-08-09 04:34:48 +02:00
OBattler
745c9f3eb5 Another fix. 2022-08-08 02:24:20 +02:00
OBattler
4bd7cf3653 Made AAM with base 0 work as before, fixes Microsoft Flight Simulator 98. 2022-08-07 23:35:12 +02:00
Cacodemon345
c743d36028 386: Set BS flag in DR6 other interpreter as well 2022-08-04 18:04:40 +06:00
Cacodemon345
64195df373 386: set bit 14 of DR6 to 1 on INT 01 with TF set 2022-08-04 16:43:21 +06:00
Cacodemon345
ab154faf88 x86: mov r, DR6 now always writes bits 4-11 and bits 16-31 as 1 2022-08-04 16:35:27 +06:00
OBattler
754058e2e5 AAM and AAD instruction fixes, fixes #2551. 2022-08-01 23:40:11 +02:00
OBattler
5292dcab32 Warning fixes. 2022-07-24 03:05:51 +02:00
Jasmine Iwanek
c430fbe84c Assorted cleanups I've discovered over time 2022-07-21 22:08:36 -04:00
OBattler
c6d7f4a95b Do not disable the timer in cpu_fast_off_reset() because the timers have already been reinitialized at this point. 2022-07-21 19:51:34 +02:00
Jasmine Iwanek
6233027c9e Named initializers in machine table 2022-07-19 18:51:18 -04:00
OBattler
645c4e6902 ALi M6117-related CPU fixes. 2022-07-18 23:38:06 +02:00
OBattler
63e52cb832 Fixes to cpu/386_common.c. 2022-07-16 04:06:46 +02:00
OBattler
27713f6557 More CPU. 2022-07-16 03:22:41 +02:00
OBattler
a35c4aa674 CPU changes. 2022-07-16 03:21:21 +02:00
OBattler
2fd712d092 CPU changes. 2022-07-16 03:12:24 +02:00
OBattler
2c9bfa979f ALi M1489 and a CPU fix. 2022-07-16 02:47:39 +02:00
OBattler
da5d451386 Preparation for SMI# and NMI# changes. 2022-07-16 02:45:46 +02:00
TC1995
b80fda4280 The IBM 386/486 cpu's are based on modified Intel 386 designs and, as such, should behave like the them on the x86 flag ops. 2022-07-15 12:34:41 +02:00
TC1995
63b4209414 And finally, more fixes to the XGA implementation including:
Cursor and mapping on Windows 2.x' 286/808x XGA driver.
Pattern and DMA bus master fixes to OS/2 2.x/Warp's XGA driver.
Software reset no longer causes glitches to the screen using XGA (x86.c)
2022-06-27 17:01:02 +02:00
Cacodemon345
ce34c4cb16 x87_ops: Use __asm for consistency with the other inline assembly block 2022-06-19 16:01:23 +06:00
TC1995
1ac46d792f Fixed the 8514/A to VGA soft reset and made the vga_on variable a global one to make sure it's used by the soft reset.
Updated copyright holder that was accidentally reverted while committing the IBM 8514/A source files.
2022-05-19 20:07:06 +02:00
OBattler
d30a5c7ef3 Removed a debug fatal() that should have been removed ages ago. 2022-04-18 21:49:26 +02:00
Alexander Babikov
dd4cef9727 Fix the remaining CPU warnings 2022-04-14 07:10:20 +05:00
OBattler
1f144f1885 Fixed some #define's, as pointed out by lemondrops. 2022-04-13 02:47:37 +02:00
OBattler
1c271f6f8a And fixed one last warning, which finishes this CPU warning fix process. 2022-04-13 02:12:08 +02:00
OBattler
c5208af2a6 Fixed some compile-breaking mistakes in x86_ops_bitscan.h. 2022-04-13 02:10:13 +02:00
OBattler
ba40831002 Phase 2. 2022-04-13 02:07:23 +02:00
OBattler
3a40d9a807 Phase 1. 2022-04-13 02:03:48 +02:00
RichardG867
f57cbe36b1 GDB Stub: More progress 2022-03-16 00:33:01 -03:00
RichardG867
94be8cdfc6 GDB Stub: Initial commit 2022-03-12 20:20:25 -03:00
Jasmine Iwanek
4674756664 More newline and whitespace cleanups 2022-02-20 16:26:40 -05:00
Jasmine Iwanek
4287e44824 newlines at end of file 2022-02-18 21:38:51 -05:00
OBattler
b3a8d0aaed And more. 2022-02-02 02:51:18 +01:00
OBattler
25e8801ede And more. 2022-02-02 02:46:11 +01:00
OBattler
7eabebb97f More temporary reverts. 2022-02-02 02:43:40 +01:00
OBattler
b92d45125e Temporarily reverted that FPU clock cycles change. 2022-02-01 19:07:22 +01:00
David Hrdlička
8e00b37e22 Clean up the build scripts 2022-01-29 23:50:53 +01:00
Miran Grča
0545de2570 Merge pull request #2022 from goshhhy/fpu_iu_concurrency
Correctly emulate FPU concurrent execution timings
2022-01-29 22:30:50 +01:00
linear cannon
c9882c1910 fix build with dynarec 2022-01-29 13:12:46 -08:00
linear
3f9f52b7e8 Merge branch 'master' into fpu_iu_concurrency 2022-01-29 10:44:56 -08:00
linear cannon
eab711a4ed x87_ops_*.h: emulate fpu/iu concurrency for each fpu instruction 2022-01-29 07:38:53 -08:00
linear cannon
04c89959f8 adjust CLOCK_CYCLES and related macros to handle fpu/iu concurrency
add CLOCK_CYCLES_FPU, which does exactly what CLOCK_CYCLES already did.

add CONCURRENCY_CYCLES, which sets fpu_cycles, which is the number of
available concurrent execution cycles that the integer unit can do
"free" work in while the fpu is executing.

adjust CLOCK_CYCLES so that if there are fpu_cycles, the cycle count is
subtracted from fpu_cycles instead of cycles, emulating the behavior of
these concurrent cycles being "free" as on real hardware.
2022-01-29 07:38:41 -08:00
linear cannon
4815fcc226 add fpu_cycles variable to cpu_state to track fpu/iu concurrency 2022-01-29 07:38:29 -08:00
linear cannon
31aed306c9 x87_timings: new timings for fpu/iu concurrency 2022-01-29 07:34:58 -08:00