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
Cacodemon345
3dbfcf1fd3
NEC SUB4S and CMP4S instructions ( #11 )
...
* NEC SUB4S and CMP4S instructions
* Return to original IP properly in case of POP PS
* NEC REPC/REPNC instructions
* Make NEC BRKEM instruction a fatal for now
* Fix wrong segment addresses in some NEC instructions
2022-09-06 12:29:54 -04:00
Cacodemon345
e93cd46c78
NEC ADD4S instruction ( #10 )
2022-09-05 16:27:09 -04:00
Cacodemon345
323f7e7a62
NEC INS/EXT instructions ( #9 )
2022-09-05 06:18:10 -04:00
Cacodemon345
199bbed5ee
NEC CLR1 instructions ( #8 )
...
Wraps up the fixed bitfield manipulation instructions
2022-09-04 16:00:29 -04:00
Cacodemon345
2280685526
NEC SET1 instructions ( #7 )
...
Mask the bit argument properly
2022-09-04 15:50:38 -04:00
Cacodemon345
db6eac6e2f
Mark recently-added instructions as handled ( #6 )
2022-09-04 15:38:42 -04:00
Cacodemon345
6b55fa3d2e
NEC NOT1 instruction ( #5 )
...
Fix bit value usage of TEST1 instruction
2022-09-04 15:25:08 -04:00
Cacodemon345
474ab60c97
NEC TEST1 instruction ( #4 )
2022-09-04 15:11:04 -04:00
Cacodemon345
71dde8658b
Implement more NEC V20/V30 and 8018x instructions ( #3 )
...
* Implement more NEC V20/V30 and 8018x instructions
* PUSHA/PUSH R
* POPA/POP R
* RO(L/R)4 r/m (NEC only)
* Fix critical mistake
2022-09-04 12:30:21 -04:00
Cacodemon345
18d15758f5
Don't set ZF on MUL/MULU operations on NEC V20/V30 ( #2 )
2022-09-03 14:27:05 -04:00
Jasmine Iwanek
8ef1d28b2c
Merge branch '86Box:master' into nec-v20
2022-03-18 15:05:25 -04: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
6bccf983e5
Merge branch '86Box:master' into nec-v20
2022-02-20 21:08:06 -05:00
Jasmine Iwanek
4674756664
More newline and whitespace cleanups
2022-02-20 16:26:40 -05:00
Jasmine Iwanek
b4e5fec867
Merge branch '86Box:master' into nec-v20
2022-02-02 22:14:22 -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