Commit Graph

152 Commits

Author SHA1 Message Date
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
05697fe355 Remove some cruft 2022-09-13 08:15:03 -04: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
Jasmine Iwanek
a31612b440 Merge branch '86Box:master' into nec-v20 2022-08-02 23:47:12 -04:00
OBattler
754058e2e5 AAM and AAD instruction fixes, fixes #2551. 2022-08-01 23:40:11 +02:00
Jasmine Iwanek
5f1e64fab7 Merge branch 'master' into nec-v20 2022-07-19 20:00:03 -04:00
OBattler
645c4e6902 ALi M6117-related CPU fixes. 2022-07-18 23:38:06 +02:00
Jasmine Iwanek
f9904e6e0c Merge branch '86Box:master' into nec-v20 2022-07-16 01:30:56 -04: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
Jasmine Iwanek
1ecbc1cd3c Fix build 2022-03-19 06:05:52 -04:00
Jasmine Iwanek
b4d134f969 Fix errors 2022-03-13 09:02:34 -04:00
Jasmine Iwanek
cf83390225 Add missing CPU_PKG definitions 2022-03-13 06:36:45 -04:00
Jasmine Iwanek
b4e5fec867 Merge branch '86Box:master' into nec-v20 2022-02-02 22:14:22 -05:00
OBattler
7eabebb97f More temporary reverts. 2022-02-02 02:43:40 +01:00
Jasmine Iwanek
a349823c7d Initial proddings at NEC V20/V30 2022-01-31 13:39:06 -05:00
linear cannon
4815fcc226 add fpu_cycles variable to cpu_state to track fpu/iu concurrency 2022-01-29 07:38:29 -08:00
Alexander Babikov
ee79348885 Implement machine check exception/architecture MSRs and CPUID flags 2021-12-22 05:33:26 +05:00
Alexander Babikov
1a04b93165 Make MSR 17h read-only and return a suitable Platform ID
Fixes some programs misidentifying Celeron Mendocinos as Slot 1 instead of Socket 370
2021-12-22 05:30:28 +05:00
OBattler
1c2d1e702b Assorted changes and bugfixes and added the two IMS 8848 machines. 2021-10-09 17:37:09 +02:00
OBattler
b8a2fdfd0a KBC reset is now hard reset. 2021-09-17 02:55:43 +02:00
OBattler
0c4003caa3 Added the C&T 82C100 chipset needed by the Victor V86P. 2021-09-07 23:41:17 +02:00
OBattler
ddc7c5b78a Reorganized some CPU structures a bit and fixed inappropriate behavior of some mem.c functions on 64-bit binaries (and made mem.c aware of ARM64 as well), fixes both 64-bit recompilers, closes #1215. 2021-08-27 13:31:47 +02:00
OBattler
aa3a52da3c Reordered some CPU variables and rewrote codegen emitted by the old recompiler's 64-bit version of codegen_accumulate_flush() to not assume 32-bit pointers, fixes 64-bit old recompiler, closes #1615. 2021-08-26 13:53:13 +02:00
OBattler
0d5c5f361a Added a separate CPU_STPC CPU type with RDTSC, fixes the ITOX STAR. 2021-08-09 09:51:58 +02:00
OBattler
166f64d422 Some CPU fixes, should fix compiling. 2021-06-07 00:06:17 +02:00
RichardG867
62afe31757 Remove EBGA368 due to poor research (CPUs are Samuel 2 and newer only) 2021-06-03 16:26:08 -03:00
OBattler
957b538c4a Rewrote memory access handling to properly split execute from read, bus from CPU (but the mappings will still match until otherwise specified), and fixed exec[] usage by the mem_*_phys() functions. 2021-04-22 04:27:50 +02:00
RichardG867
d0d73b7ef5 Revert "The IBM PCjr is now limited to 8088 4.77 MHz, closes #1379."
This reverts commit d060a38d91.

# Conflicts:
#	src/machine/machine_table.c
2021-04-17 16:46:04 -03:00
OBattler
4989d99c1b Merge branch 'master' of https://github.com/86Box/86Box 2021-04-17 04:45:55 +02:00
OBattler
d060a38d91 The IBM PCjr is now limited to 8088 4.77 MHz, closes #1379. 2021-04-17 04:45:28 +02:00
nerd73
17c5cc862e fix cpu.h 2021-04-15 23:30:52 -06:00
nerd73
791bae3560 Add the AMD Am486DXL and DXL2.
Has otherwise Intel-compatible SMM with an SMBase at 60000h.
2021-04-15 23:28:07 -06:00
nerd73
8e3b09f323 Various 486 improvements
- Added SL-Enhanced versions of Intel 486 CPUs and Enhanced AMD Am486DX2/DX4 CPUs
- Cleaned up the 486 CPU types and updated intel_4x0.c to reflect this
- Fixed some incorrect EDX reset and CPUID values
- Blacklisted non-SMM capable 486 CPUs on the Soyo 4SA2 motherboard
- Merged the non-OverDrive and OverDrive Intel DX4s because of further research confirming them to be functionally identical
- Removed SMM support on early 486 CPUs
2021-04-15 21:38:03 -06:00
OBattler
8b6f9707d5 More CPU fixes, and SMM now implemented on Cyrix Cx486 and Cx5x86 CPU's as well as on Intel/AMI SX, DX, and SX2 CPU's. 2021-04-11 07:25:08 +02:00
OBattler
c370ae7e18 CPU and MMU cleanups and fixes, and non-Debug builds are now stripped again. 2021-04-10 07:18:47 +02:00
OBattler
1a643ab040 Reworked some memory and CPU parts to fix bugs, improve performance by getting rid of excess calls to mmutranslate(), and properly invalidate page bytes on page invalidation on new recompiler. 2021-03-24 19:52:44 +01:00
David Hrdlička
10cc122925 fix Clang/WinSDK warnings 2021-03-21 03:28:37 +01:00
RichardG867
dfee1165ea Add custom ISA/PCI/AGP clock facility, and fix PIT clock calculation oversight for CPU clocks ending in (but not equal to) 33 and 66 MHz 2021-03-14 19:42:21 -03:00
Panagiotis
1136e2b715 Implemented the VIA EBGA 368 platform 2021-02-22 11:40:48 +02:00
Miran Grča
19ff41dac6 Merge pull request #1201 from richardg867/master
CPU table amendments
2021-01-02 03:17:44 +01:00
RichardG867
4347dbc12a Fix lower speeds on P6/C3 CPUs 2020-12-31 15:32:57 -03:00
OBattler
9930957be3 Renamed syscall() to syscall_op() in order to avoid a conflict when compiling for Linux. 2020-12-24 13:34:22 +01:00
RichardG867
b64ecbaa5a Fix CPU table issues 2020-12-18 16:16:04 -03:00
David Hrdlička
7e6df1f45c cpu: convert CPU type enum to sequential 2020-12-16 20:33:24 +01:00
OBattler
3c23626eaf Recorganized the cpu_state struct to be like PCem's, fixes MMX bugs on 64-bit old recompiler (possibly on the new one as well?). 2020-12-13 13:35:58 +01:00
RichardG867
10212afee5 Add CPU table override config variable 2020-11-23 14:48:32 -03:00
RichardG867
98f09bf4ac Improve handling of fixed multipliers 2020-11-19 14:15:34 -03:00