Commit Graph

122 Commits

Author SHA1 Message Date
OBattler
91ba20fbd0 Added the test mode entry point requested by gloriouscow. 2025-02-13 05:10:55 +01:00
Jasmine Iwanek
5f273265ae Assorted warning fixes 2025-02-02 03:24:50 -05:00
OBattler
b1f94abc27 Fixed the fix. 2025-01-13 05:01:00 +01:00
OBattler
123ff3b5e7 Fix NEC Vx0 INS*/OUS* timings calculation. 2025-01-13 04:35:23 +01:00
Adrian Siekierka
eb25bccf1e Add initial Mazovia 1016 emulation 2024-12-22 13:52:25 +01:00
OBattler
e8c1dc1bac Fix flags on the AAM and AAD instructions. 2024-10-16 06:56:55 +02:00
Jasmine Iwanek
a4815fccfe Compile fix for cpu/808x.c logging 2024-08-07 02:43:43 -04:00
OBattler
2273f563a5 Moved the offending SoftFloat-related stuff to x87_sf.h, fixes warnings. 2024-06-10 00:08:48 +02: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
6de7c7cd5e Fixed LOCK legality with prefixes, closes #4189. 2024-02-23 07:10:15 +01:00
OBattler
91494bab97 808x: Fix the flags at the end of the ADC and SBB instructions, fixes #4103. 2024-02-03 04:33:42 +01:00
OBattler
2cbfc8e047 808x: Clear prefetch queue on soft reset, fixes the CTRL+ALT+DEL hang on Amstrad 808x machines, fixes #408. 2024-01-15 04:32:52 +01:00
OBattler
6d2e5185ae Reverted back to known-good 808x code from 3.11.4311, fixes PC/XT V20 (the full 808x rewrite based on MartyPC is still coming in 4.1). 2023-11-06 23:21:58 +01:00
Jasmine Iwanek
f6a5229a98 Future support for higher clocked CPU's 2023-10-13 17:55:18 -04:00
OBattler
7ec58da46f Config clean-ups, auto-pause, 4:3 integer scale, and more parameters. 2023-10-13 23:30:31 +02:00
OBattler
65175f4d7c No warnings. 2023-10-11 23:18:59 +02:00
OBattler
74ba935a0c Further fix the V20/V30 ins() and outs() instructions. 2023-10-11 18:43:53 +02:00
Miran Grča
528c269cdd The INS and OUTS instruction on V20/V30 now increase/decrease the correct registers, fixes #3723. 2023-10-11 18:33:01 +02:00
Jasmine Iwanek
197e817ea3 Remove several unused variables 2023-10-08 13:32:43 -04:00
OBattler
8f21db5527 Interim 808x fixes - just enough to fix the two most outstanding problems (Prehistorik 2 and Snatch-It! being broken). 2023-08-26 16:40:29 +02:00
OBattler
6a23499051 Some clean-ups in cpu/808x.c. 2023-08-23 01:15:45 +02:00
OBattler
e387a6c2f5 The AAM instruction on NEC V20/V30 does in fact support bases other than 10, fixes #2939. 2023-08-18 19:14:50 +02:00
Jasmine Iwanek
02e41927e3 Dribs and drabs which have escaped 2023-08-12 13:07:00 -04:00
Jasmine Iwanek
5cd18f3fbb Clang-formatting in src/cpu 2023-08-11 19:11:37 -04:00
Jasmine Iwanek
be79ea78c7 sonarlinting and formatting in src/cpu 2023-08-11 19:11:32 -04:00
OBattler
2cd790cf7c Current state of the 808x code. 2023-07-12 20:43:06 +02:00
OBattler
32116fdd8f Reimplemented the 808x IN and OUT instructions, fixes the PIT test on the IBM PC and XT BIOS'es. 2023-07-07 19:33:44 +02:00
OBattler
979bd75acb Merge branch 'master' of https://github.com/86Box/86Box 2023-07-06 19:59:54 +02:00
Jasmine Iwanek
927c26f496 Fix some variant type comparisons 2023-05-02 02:18:17 -04:00
TC1995
7a53e1de45 Initial softfloat port from Bochs to 86box, currently selectable only on QT. 2023-04-29 18:56:57 +02:00
OBattler
333e9377ff Some minor CPU bugfixes - one for 808x and one for the new dynarec. 2023-04-20 02:24:03 +02:00
Jasmine Iwanek
83b220cb03 clang format in cpu 2022-11-19 11:53:09 -05:00
OBattler
27ebb27db7 Makefile.mingw corrections and made the code pass much stricter checks (now mandated by Makefile.mignw) to ensure GCC 14 readiness. 2022-11-17 22:44:06 +01:00
Jasmine Iwanek
bd75bc141a Header cleanups
Tabs to spaces
Consistency
2022-11-13 21:15:47 -05:00
OBattler
2a2276dbee On the NEC V20/V30, REP string instructions with segment override move IP back one further byte on a hardware interrupt, fixes V20 detection on HWiNFO16. 2022-11-03 01:04:21 +01:00
OBattler
19d6fcec24 808x flags fixes - fixes HWiNFO v2.2 hanging. 2022-11-03 00:14:31 +01:00
OBattler
605929fcba Fixed V20 / V30 MUL flags - OpenXT now correctly detects the V20. 2022-10-26 17:02:52 +02:00
OBattler
e6321d952a More V20/V30 fixes. 2022-10-26 16:45:17 +02:00
OBattler
a2d0ed214e Some NEC V20 fixes. 2022-10-26 02:46:40 +02:00
OBattler
787a6b81f7 Fixed warnings in cpu/808x.c. 2022-10-24 02:03:04 +02:00
Jasmine Iwanek
51f84ce0be Merge remote-tracking branch 'upstream/master' into nec-v20 2022-10-19 16:24:10 -04:00
Jasmine Iwanek
b4673117fd Some clang-formatting in src/cpu 2022-09-20 01:00:45 -04:00
Jasmine Iwanek
8904fd675f Use MD_FLAG 2022-09-13 08:10:24 -04:00
Cacodemon345
54bc9dc58c 808x: Make sure all 8018x opcodes are marked as handled (#19) 2022-09-10 05:39:39 -04:00
Cacodemon345
2cdc63e83a 808x: Switch to __builtin_parity for parity flag setting 2022-09-10 14:53:00 +06:00
Cacodemon345
fc2fac4c73 More i8080 + NEC changes (#18)
* More i8080 changes

* Fix compilation

* More foundational i8080 work

* Switch to __builtin_parity for parity flag setting

Fix some incorrectly implemented instructions
2022-09-10 04:50:50 -04:00
Cacodemon345
c2cc656103 Fix NEC BCD instructions (#15) 2022-09-08 14:26:05 -04:00
Cacodemon345
25b2e16a27 NEC INM/OUTM instructions (#14) 2022-09-07 15:58:42 -04:00
Cacodemon345
7b29c30819 Implement immediate IMUL operands (#13)
* Implement immediate IMUL operands

Implement PUSH segment underflow behaviour on SP = 1 values for 8018x

* Limit bit-shifts and rotates to 31 on Intel 8018x

* NEC/8018x ENTER/LEAVE instructions

* NEC/8018x bound checking instruction
2022-09-07 08:50:30 -04:00
Cacodemon345
2b0dff2ec6 Implement immediate versions of PUSH operations (#12)
Implement immediate versions of bit-shifting operations

Make word read/write operations not overflow when offset is 0xFFFF on 8018x
2022-09-06 16:59:39 -04:00