Commit Graph

82 Commits

Author SHA1 Message Date
OBattler
2722ae1d68 PIT: Change assignments to OR's. 2024-01-04 09:00:29 +01:00
OBattler
2aa7c1f3de Added the LG IBM Multinet i x7G (MSI MS-6119), fixed the ASUS P2B-LS, and some SiS 551x fixes. 2024-01-03 23:48:27 +01:00
OBattler
88934ab0ca IDE fixes and finished the SiS 5511. 2023-10-20 02:57:50 +02:00
Jasmine Iwanek
f6a5229a98 Future support for higher clocked CPU's 2023-10-13 17:55:18 -04:00
Jasmine Iwanek
b8c4dee3bf More linting in src 2023-08-23 04:15:58 -04:00
OBattler
33471594f4 First batch of video fixes, also fixes the MDA timings. 2023-08-12 01:16:49 +02:00
Jasmine Iwanek
998cfe5cc8 Constification 2023-07-25 17:59:24 -04:00
Jasmine Iwanek
1116aadb6f Another round of sonarlint work 2023-07-04 10:53:44 -04:00
OBattler
90d85af304 Fixed an accidentally introduced PIT timer mode 0 regression, fixes #3376. 2023-06-09 15:09:14 +02:00
OBattler
ab733b7f6c Implemented some undocumented PIT behavior. 2023-05-24 22:14:57 +02:00
Jasmine Iwanek
6c1e4a8e2c Some code smell fixes from sonarlint 2023-05-15 19:25:56 -04:00
Jasmine Iwanek
bd75bc141a Header cleanups
Tabs to spaces
Consistency
2022-11-13 21:15:47 -05:00
Jasmine Iwanek
e6dbaefeb1 clang-format in src/ 2022-09-18 17:19:21 -04:00
Adrien Moulin
2aa5d8f5b2 PIT: add alternative faster PIT
This is enabled by default on 486+ CPUs and can be forced disabled/enabled with pit_mode=0/1
2022-07-23 13:38:10 +02:00
Adrien Moulin
2ed8ad907c ACPI: replace 3.58MHz timer with an overflow timer 2022-07-15 23:42:40 +02:00
Jasmine Iwanek
66a687d68d src/ 2022-03-13 09:15:11 -04:00
Jasmine Iwanek
4674756664 More newline and whitespace cleanups 2022-02-20 16:26:40 -05:00
Jess Lovelace
f18615ae87 refactored device_t and all declarations 2022-02-02 16:31:22 -05:00
OBattler
6fd2cfaf90 Fixed a PIT bug. 2021-12-09 23:59:45 +01:00
OBattler
dc33476e0d Fixed the PIT BCD counter for signedness (bug again found by clang). 2021-09-03 00:45:47 +02:00
OBattler
827065c0bc Ported the cassette emulation from PCE, closes #835. 2021-07-27 06:12:09 +02:00
Daniel Gurney
f2cd3756dd Revert "Merge branch 'feature/machine_and_kb' into master"
This reverts commit 6604a29d7e, reversing
changes made to 1d7fca0abd.
2021-07-04 18:22:52 +03:00
OBattler
fd4817a87b All the current WIP work (warning: the PIT is currently using some temporary test rewrite that is going to be undone). 2021-06-29 19:11:19 +02:00
OBattler
76f3f08d78 The Intel SIO and PIIX* southbridges now have the undocumented (by the datasheets, but fully documented by the Intel motherboard technical specifications) second PIT on ports 48h-4Bh. 2021-04-13 03:47:46 +02:00
OBattler
c4fd9e7753 Added a comment to that piece of code in pit.c to avoid future confusion. 2021-04-10 19:49:07 +02:00
OBattler
8aae3f6163 Reverted the inappropriate PIT "fix" by qeggers that actually broke PIT readouts while writing the counts (so yes, the wm was intended, not rm), fixes several machines. 2021-04-10 19:46:06 +02:00
OBattler
b931e81485 Fixed a PIT bug (reported by qeggers). 2021-04-10 07:23:36 +02:00
OBattler
4dae3c7338 Slight PIT fixes and optimizations and the forgotten updated Super I/O chip include. 2021-04-06 07:35:03 +02: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
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
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
dc7973d2e2 Reverted build 2263's commit as it's no longer needed, fixes #1050. 2020-11-16 23:48:46 +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
eff0d4dea8 The PIT now decreases the latched count by 1 if the counter's count is latched when the count is set to a new mode, fixes Mortal Kombat 1 for DOS hanging when attempting to play music on the OPL. 2020-08-04 04:18:39 +02:00
OBattler
72c1c36ec6 OPTi 5x7 no longer does excess logging, running of timers on the recompiler is now done on every fourth AT KBC port 61h read instead of every 3F4h read, added some safety precautions to io.c to handle the cases where a handler removes itself, implmented the STPC ELCR and refresh control, and fixed the messed up register reading in the PC87307 and PC87309 implementations. 2020-07-10 02:05:49 +02:00
OBattler
96228bc41d Overhauled the SiS 496/497 chipset emulation (and added the DRB locking to it) (later Zida Tomato 4DPS BIOS'es now work, and we now use the actual 1.72), fixed the W83787F and FDC37C932FR Super I/O chips, removed the no longer needed Acer M3A registers (that's now correctly handled as FDC37C932FR GPIO), and a number of bugfixes here and there. 2020-06-29 01:10:20 +02:00
nerd73
09ffa05f89 Improvements to the OPTi 597 machine.
- Add emulation of the FDC37C661 Super I/O
- Fix Pentium VLB timing (was running VLB at 2x bus speed instead of 1/2 bus speed)
- Fix the cache register on the OPTi 5x7 chipset
- The actual minimum RAM amount is 2 MB, not 1 MB.
- Fix chipset naming consistency
2020-06-23 15:04:10 -06:00
nerd73
3f0adb5211 Add the AMI Excalibur, a VLB OPTi 596/597 machine.
Also adds emulation of the OPTi 5x7 chipset, and introduces a clock divider for VLB on 64-bit bus systems.
2020-06-05 10:22:59 -06:00
OBattler
c0bb31e24b Tweaked io_delay a bit, makes MR BIOS'es happier on the new recompiler. 2020-05-13 19:27:28 +02:00
OBattler
f46181db78 Several fixes - the MR BIOS'es now work on the recompiler (thank you, port EBh!), so they have been moved out of the Dev branch. 2020-05-13 03:43:02 +02:00
OBattler
8cda5aee20 PIT counters' null_count variables are now set to 1 on counter reload to make sure the readouts after counter reload are correct, fixes MR BIOS'es on interpreter (still broken on the recompiler because of another issue specifically related to the PIT on the recompiler), among other things. 2020-05-06 03:43:37 +02:00
OBattler
275dd5a2f7 ACPI, SMM, and PIIX fixes, fixes quite a few boards, also fixed the Via Apollo series northbridge ID's, some CPU instructions on both 808x and 286+, and added SMM to 486's (Intel and AMD), WinChip and WinChip 2, and VIA Cyrix III, also removed the TC430HX and the Toshiba machine from the Dev branch. 2020-04-16 21:56:19 +02:00
OBattler
61f0ae7954 Better ACPI implementation (currently only on PIIX4/PIIX4E/SMSC southbridges), finished the SMSC southbridge (but the Atrend BIOS still hangs, need to figure out why), and fixed Tandy EEPROM saving. 2020-04-13 20:01:47 +02:00
David Hrdlička
a505894a10 Move all include files to src/include
- 86Box's own headers go to /86box
- munt's public interface goes to /mt32emu
- all slirp headers go to /slirp (might want to consider using only its public inteface)
- single file headers from other projects go in include root
2020-03-29 19:53:29 +02:00
Daniel Gurney
0c509fd551 Remove version tree-wide 2020-03-25 00:46:02 +02:00
OBattler
490c04fcae Current WIP code. 2020-02-29 19:12:23 +01:00
OBattler
0f7699d037 Split PIT timer from the counter CLOCK input handling, exposed a function to set a counter's CLOCK input, and implemented BCD mode. 2020-01-17 06:36:15 +01:00
OBattler
a838e8548f PIT rewrite. 2019-12-02 07:05:12 +01:00
OBattler
dbdf5c2501 Fixed printer IRQ handler, both printers now work with OS/2, fixes #374. 2019-09-23 05:39:43 +02:00