Commit Graph

739 Commits

Author SHA1 Message Date
RichardG867
b64ecbaa5a Fix CPU table issues 2020-12-18 16:16:04 -03:00
Miran Grča
1be6a569f8 Merge pull request #1172 from dhrdlicka/feature/msvc-compat
MSVC compatibility fixes
2020-12-18 17:11:28 +01:00
OBattler
7577dbab78 Finished the SiS 50x work and added the two ASUS'es. 2020-12-18 17:09:54 +01:00
David Hrdlička
62647e45de cpu: force soft FPU on MSVC/x64 2020-12-16 20:34:01 +01: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
OBattler
09bc3d6cd0 Merge branch 'master' of https://github.com/86Box/86Box 2020-12-12 10:18:14 +01:00
OBattler
d31bca5279 Removed two void returns (how that even valid?!) from the 808x code. 2020-12-12 10:18:00 +01:00
RichardG867
963005a084 Improve CPU multiplier eligibility checks 2020-12-10 20:32:18 -03:00
RichardG867
5dce64a396 Fix CPU override feature 2020-12-07 21:06:29 -03:00
RichardG867
29a0ce48e7 Merge branch 'master' of https://github.com/86Box/86Box 2020-12-03 01:46:04 -03:00
Miran Grča
a288a6c83d Merge pull request #1139 from 86Box/tc1995
Ported the most important patches from PCem.
2020-12-03 04:16:20 +01:00
OBattler
1bc5eca8fd 808x PIC acknowledges now incur bus access wait states. 2020-12-02 05:52:28 +01:00
TC1995
462ff300da Ported the most important patches from PCem. 2020-12-01 21:06:01 +01:00
OBattler
1ddee67aa6 Got rid of the last differences between the old and new recompilers with regards to the readmem*/writemem* functions. 2020-12-01 02:41:22 +01:00
RichardG867
fa6d95db06 Change Cyrix III CPU table according to the recently located Samuel 1 datasheet 2020-11-30 20:14:10 -03:00
OBattler
a5ae4cfba5 Got completely rid of readmemb386l() and writememb386l(). 2020-11-30 05:27:04 +01:00
OBattler
f9c2f04a52 808x fixes - 8088mph works normally again. 2020-11-28 07:02:38 +01:00
OBattler
1df797dfda Fixed word pushes onto the stack in cpu/x86seg.c, fixes Windows 3.0 on 386SX, closes #1128. 2020-11-27 02:59:56 +01:00
OBattler
6e233f4ac8 SDL renderer improvements and fixes and added SDL OpenGL option;
Various performance improvements;
Fixed USB UHCI HCHalt;
Cirrus Logic CL-GD 5422/24 fixes and removed them from the Dev branch;
The Storage controllers sections of Settings now has its own corresponding section of the configuration file;
Fixed the AT clock divisors for some Pentium OverDrive CPU's;
Added the ACPI RTC status (no ACPI RTC alarm event yet).
2020-11-26 18:20:24 +01: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
71c406069d Fix EuroPC config save crash 2020-11-22 00:22:24 -03:00
OBattler
b83a32ccf8 Improved STI fix. 2020-11-21 04:02:58 +01:00
OBattler
c10fc05ea6 Ported the CPU fixes from PCem. 2020-11-20 01:28:36 +01: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
461f8c2c5e Rename the 3V/5V Pentium OverDrives to something that makes a bit more sense 2020-11-18 21:19:26 -03:00
RichardG867
2e0cbd02e5 Add missing voltage value to iDX4 CPUs 2020-11-18 21:07:37 -03:00
RichardG867
fd08b2fdf1 Fix warnings 2020-11-18 19:59:51 -03:00
RichardG867
85a35e0841 Merge branch 'master' of https://github.com/86Box/86Box
# Conflicts:
#	src/cpu/cpu_table.c
2020-11-18 19:57:10 -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
e8c83a6c09 Add limited forwards compatibility between the old and new CPU systems, and improve speed tier clamping 2020-11-18 17:32:49 -03:00
RichardG867
56ae551ba2 Remove K5 from K6 backwards compatibility tables due to offset mismatches 2020-11-18 16:10:54 -03:00
RichardG867
10732f6f02 Restore special i486DX2 CPUs for the IBM PC 330 2020-11-18 13:51:12 -03:00
OBattler
9fb3a3ed56 Fixed a warning in cpu/cpu_table.c. 2020-11-18 06:00:13 +01:00
RichardG867
8fff49d5c5 Merge branch 'master' of https://github.com/86Box/86Box
# Conflicts:
#	src/win/win_settings.c
2020-11-18 01:12:32 -03:00
RichardG867
dbd767437b Programmatic CPU table 2020-11-18 01:09:17 -03:00
OBattler
02e9a3ad55 Reverted a bad change to cpu/386.c, fixes freezes and mysterious behavior on the Interpreter. 2020-11-17 20:00:28 +01:00
OBattler
ab8f9d3866 The new 808x-only memory read/write functions now apply the RAM mask to the address so addresses now correctly wrap around 1 MB, fixes #1062;
More 808x bug fixes.
2020-11-17 02:20:19 +01:00
OBattler
bf4b5b781f Implemented PIC IRQ latch and delay (per the datasheet), IBM PCjr now works without a workaround delay in cpu/808x.c which was therefore removed; also redid memory and I/O accesses in cpu/808x.c to fix word writes on 8086. 2020-11-17 00:25:28 +01:00
OBattler
1d4988221f Fixed SYSENTER, SYSEXIT, SYSCALL, and SYSRET;
SYSCALL and SYSRET are now perfectly in line with AMD's specification;
Improvements to the API call to gracefully stop the emulator.
2020-11-16 17:47:05 +01: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
OBattler
cfb559de13 Made the 808x interrupts delay again, fixes PCjr (TODO: Find why exactly that's needed because it sounds like a hack to me);
Fixed compiling of the PIC code with logs enabled;
A number of bugfixes in cpu/x86seg.c, fixes OS/2 1.0.
2020-11-01 04:21:55 +01:00