Commit Graph

101 Commits

Author SHA1 Message Date
OBattler
754058e2e5 AAM and AAD instruction fixes, fixes #2551. 2022-08-01 23:40:11 +02:00
Jasmine Iwanek
c430fbe84c Assorted cleanups I've discovered over time 2022-07-21 22:08:36 -04: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
RichardG867
f57cbe36b1 GDB Stub: More progress 2022-03-16 00:33:01 -03:00
Jasmine Iwanek
4674756664 More newline and whitespace cleanups 2022-02-20 16:26:40 -05:00
linear cannon
31aed306c9 x87_timings: new timings for fpu/iu concurrency 2022-01-29 07:34:58 -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
c53613deb7 Removed excess logs from cpu.c. 2021-11-14 20:25:07 +01:00
OBattler
1c2d1e702b Assorted changes and bugfixes and added the two IMS 8848 machines. 2021-10-09 17:37:09 +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
fed369c56f AMD K6 CPU's are no longer treated as K6 for SMM purposes. 2021-08-20 17:29:12 +02:00
OBattler
f0e84f7f13 More fixes, fixes CMOS Setup on the Acrosses AR-B4179. 2021-08-09 16:10:55 +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
736eb46847 Reverted the ROM read cycles back to the old (and evidently, more correct) ones. 2021-06-03 05:02:22 +02:00
OBattler
e7a859adc5 More fixes - the Goldstar machine now fully works. 2021-04-27 04:10:59 +02: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
644ba28e18 Remove another redundant Socket 7 multiplier check 2021-04-17 16:34:04 -03:00
RichardG867
841ac25297 3.5x multiplier on Socket 5/7 should always be equivalent to 1.5x 2021-04-17 16:25:11 -03:00
nerd73
53270408ce add another am486dxl thing 2021-04-15 23:59:09 -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
27ddd856df Remove some unnecessary parentheses 2021-04-15 21:42:02 -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
9587a254bc Removed excess logging from cpu/cpu.c. 2021-04-11 07:30:01 +02: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
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
qeeg
b9dfd082e1 Fixes to legitimate issues Sonarcloud caught in our code 2021-02-04 16:10:53 -06: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
RichardG867
963005a084 Improve CPU multiplier eligibility checks 2020-12-10 20:32:18 -03:00
Miran Grča
39043ffb9c Merge pull request #1110 from richardg867/master
I2C/SMBus overhaul
2020-11-25 23:14:32 +01:00
Panagiotis
1882dfa1c5 Disabled CPU logging 2020-11-24 23:45:11 +02:00
Panagiotis
55c620710c Injected a new AMI MSR
Injected an AMI MSR used by RC440BX and potentially other Intel AMI boards.
2020-11-24 23:44:27 +02: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
RichardG867
71c55bdf24 Add Cyrix III fixed multiplier 2020-11-19 01:17:54 -03:00
RichardG867
27f9784fcd Add Mendocino fixed multiplier for Supermicro 370SLM 2020-11-19 01:15:20 -03:00
RichardG867
188df1cc85 Add more multipliers to the internal multiplier list 2020-11-19 01:09:00 -03:00
RichardG867
022d7ccc47 Account for the fixed multipliers in Pentium OverDrive 3.3V/MMX CPUs 2020-11-18 21:20:54 -03:00
RichardG867
fd08b2fdf1 Fix warnings 2020-11-18 19:59:51 -03:00
RichardG867
149322a06a Rewrite CPU table backwards compatibility system, and fix a crash in the speed clamping code 2020-11-18 19:56:22 -03:00
RichardG867
dbd767437b Programmatic CPU table 2020-11-18 01:09:17 -03:00
OBattler
32dfbdd082 Fixed some compile-breaking mistakes in the CPU code. 2020-11-16 00:06:33 +01:00
OBattler
0faf6692c9 WARNING: CONFIGS MIGHT PARTIALLY BREAK WHERE DEVICE NAMES HAVE CHANGED.
Changes to device_t struct to accomodate the upcoming PCI IRQ arbitration rewrite;
Added device.c/h API to obtain name from the device_t struct;
Significant changes to win/win_settings.c to clean up the code a bit and fix bugs;
Ported all the CPU and AudioPCI commits from PCem;
Added an API call to allow ACPI soft power off to gracefully stop the emulator;
Removed the Siemens PCD-2L from the Dev branch because it now works;
Removed the Socket 5 HP Vectra from the Dev branch because it now works;
Fixed the Compaq Presario and the Micronics Spitfire;
Give the IBM PC330 its own list of 486 CPU so it can have DX2's with CPUID 0x470;
SMM fixes;
Rewrote the SYSENTER, SYSEXIT, SYSCALL, and SYSRET instructions;
Changed IDE reset period to match the specification, fixes #929;
The keyboard input and output ports are now forced in front of the queue when read, fixes a number of bugs, including the AMI Apollo hanging on soft reset;
Added the Intel AN430TX but Dev branched because it does not work;
The network code no longer drops packets if the emulated network card has failed to receive them (eg. when the buffer is full);
Changes to PCI card adding and renamed some PCI slot types, also added proper AGP bridge slot types;
USB UHCI emulation is no longer a stub (still doesn't fully work, but at least Windows XP chk with Debug no longer ASSERT's on it);
Fixed NVR on the the SMC FDC37C932QF and APM variants;
A number of fixes to Intel 4x0 chipsets, including fixing every register of the 440LX and 440EX;
Some ACPI changes.
2020-11-16 00:01:21 +01:00