Commit Graph

231 Commits

Author SHA1 Message Date
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
OBattler
b89e047464 Cleaned up x86seg.c, and also made 386 Interrupt and Task gates correctly GPF on a 286, fixes #587. 2020-11-01 02:36:50 +01:00
OBattler
080b8c12be Fixed the DAA instruction on 808x, fixes the Generic XT Clone BIOS POST. 2020-10-30 18:19:48 +01:00
anabate123
cfe827c342 Fixed the spacing 2020-10-26 17:53:45 -04:00
anabate123
d52249939c Added support for the 133MHz Pentium processor for Socket 5 CPUs 2020-10-26 17:53:05 -04:00
OBattler
795a6017d2 PIC rewrite, proper SMRAM API, complete SiS 471 rewrite and addition of 40x, 460, and 461, changes to mem.c/h, disabled Voodoo memory dumping on exit, bumped SDL Hardware scale quality to 2, bumped IDE/ATAPI drives to ATA-6, finally bumped emulator version to 3.0, redid the bus type ID's to allow for planned ATAPI hard disks, made SST flash set its high mappings to the correct address if the CPU is 16-bit, and added the SiS 401 AMI 486 Clone, AOpen Vi15G, and the Soyo 4SA2 (486 with SiS 496/497 that can boot from CD-ROM), assorted 286+ protected mode fixes (for slightly more accuracy), and fixes to 808x emulation (MS Word 1.0 and 1.10 for DOS now work correctly from floppy). 2020-10-14 23:15:01 +02:00
nerd73
6f5cc1f028 Undo anabate's VIA C3 changes entirely
There are no emulated chipsets which officially support 133 MHz FSB.
2020-09-22 23:57:52 -06:00
OBattler
7bff0cdc89 Fixed a typo in the CPU tables. 2020-09-23 07:23:38 +02:00
anabate123
f97a7aadeb Update cpu_table.c 2020-09-22 19:38:24 -04:00