Commit Graph

103 Commits

Author SHA1 Message Date
OBattler
1405d9b10b Moved the AMD K5 and K6 CPU's and the ATi VGA Wonder XL24 to the Dev branch;
Turned the char arrays in gameport.h into const char pointers;
The makefile no longer links in the (unfinished) PIIX4 emulation code (which is currently not used by anything even in the Dev branch).
2018-02-18 13:43:49 +01:00
OBattler
e0a9de85c9 Changed several char arrays all around the code to const char pointers, debloats the executable file from 8.7 MB to 5.6 MB;
Replaced the Cirrus Logic code with the latest code from TheCollector1995 - the CL-GD 5428 is now fully working, as is the CL-GD 5429;
Minor clean-up in the AHA/BusLogic BIOS commands code;
Slightly rewritten mem_readb_phys_dma() and mem_writeb_phys_dma().
2018-02-18 10:32:51 +01:00
OBattler
2707de9925 Removed excess CRTC masking from several graphics cards;
Reverted two dynarec files to their PCem versions - fixes Sensible Soccer.
2018-02-03 03:19:12 +01:00
OBattler
41db3e923a The Microsoft/Logitech Bus Mouse now handles the unusual handshake issued by MS MOUSE.SYS version 3.0, fixes said driver (though it should be checked against real hardware);
Applied all the video-related PCem commits;
The keyboard ALT+TAB detection now sends one extra ALT key down and up, so the guest does not get stuck in a menu bar.
2018-02-01 03:14:55 +01:00
OBattler
410ecb1f22 Added Iomega ZIP emulation. 2018-01-26 22:17:09 +01:00
OBattler
5318bc08d8 The FDC is now a device_t, and the FDC code has been cleaned up;
Merged floppy.c and fdd.c and renamed floppy_*.c (the floppy image format handlers) to fdd_*.c;
Reading the AT or PS/2 keyboard controller status no longer clears the transmit timeout bit, fixes error 8601 (mouse error) on the IBM PS/2 Model 80;
MMU translate and DMA physical reads and writes now go through _mem_exec instead of directly to ram[], should fix the last remaining problems with remapped mappings;
Implemented the Sound gain dialog;
Added the resource for the "New floppy image" dialog and the needed functions for the functionality of exporting the currently mounted floppy image as 86F, both of which should be finished in the next commit;
Applied the CD-ROM fixes from the PCem commit;
Added the "Keep ratio" option for full screen stretch.
2018-01-17 18:43:36 +01:00
OBattler
845c8ed4bd Improved passing of scan codes to the emulated keyboards;
Fixed Sound Blaster 16 and earlier CD-ROM volume registers (and made them no longer default to 0);
Serial mouse now resets the FIFO before sending the ID, fixes mouse detection after clipping and moving the mouse;
Rewritten CD-ROM and SCSI disk Mode Select handling and changed things regarding Mode Sense as well, also fixes emulator segmentation faults when anything attempts to do a Mode Select;
Fixed the Microsoft InPort mouse emulation (used the Bochs code as reference for the polling/state update code), now it actually moves;
The PCjr initialization now sets the XT scan code table, makes the keyboard actually work on the PCjr again;
Several bugfixes regarding the Read CD commands, fixes CD Audio in digital mode on Windows ME;
Finally properly fixed the regular CD Audio MSF/LBA conversion mess;
Applied all applicable PCem commits.
2018-01-13 22:56:13 +01:00
OBattler
8f180fdecd Fixed all the compile-breaking mistakes. 2018-01-01 03:15:06 +01:00
OBattler
0d7d168245 Fixed the compile-breaking mistake. 2018-01-01 03:01:16 +01:00
OBattler
23c536f5dd Split off the AMD SYSCALL and SYSRET instructions to x86_ops_amd.h;
Moved the two 440FX board along with the Pentium Pro and Pentium II CPU's to the Dev branch;
Applied the PCem commit that fixed PIIX IDE Bus Master initialization.
2018-01-01 02:57:39 +01:00
OBattler
31153f20d4 The NCR 53C810 is now threaded;
Reverted my IDIV fixes - fixes font glitches in Windows XP and possibly other things as well;
Slight fix to line repeat detection in pclog_ex().
2017-12-16 19:46:07 +01:00
OBattler
193905e431 Fixed the warnings in the recompiler code. 2017-12-16 00:37:54 +01:00
OBattler
67cc1b42e6 Fixed IDIV on 286+ again, fixes Windows 95. 2017-12-14 04:38:33 +01:00
OBattler
28426e53af Fixed the IDIV instructions on 286+ again, this time properly, fixes hang with the NCR 53C810 BIOS v4.0x. 2017-12-14 03:33:07 +01:00
OBattler
8c38b94594 Fixed the overflow checks for all IDIV instructions for 286+ CPU's;
Fixed the mouse close functions.
2017-12-14 01:35:04 +01:00
OBattler
044559f4e9 Fixed a number of bugs in the NCR 53C810 code;
64-bit Windows 86Box now compiles without warnings.
2017-12-13 22:39:41 +01:00
OBattler
0a11a6d3b4 Added a second set of physical address byte read and write functions in mem.c that are now used by dma.c so that DMA reads and writes do not go through the CPU's paging mechanism anymore - fixes Adaptec and BusLogic SCSI drivers in NT 3.1;
Applied some more of greatpsycho's CPU patches;
Reworked the PS/2 Model 80 split memory block handling and removed the top 256k remap from it (that's what the split memory block is for) - fixes OS/2 2.x on that machine.
2017-12-11 19:41:58 +01:00
waltje
fc34a6eaf3 Re-worked mouse code to be devices (to allow for configuration.)
Re-worked the system pathnames (pc.c), renamed cfg_path to usr_path.
Other small things here and there.
Logitech bus mouse re-worked, should be OK now.
2017-12-04 12:01:56 -05:00
OBattler
8a3f64e032 Applied all recent PCem commits. 2017-11-27 22:45:31 +01:00
waltje
ce1bab2967 Cleanups to make all logging functions use stdlog instead of stdout.
The new --logfile (-L) commandline option sets a file to log to.
The new --debug (-D) forces output to stderr if no logfile is given.
2017-11-24 02:24:06 -05:00
OBattler
1cd4018055 Initial IDT limit is now 0x03FF on 386+, but remains 0xFFFF on 286. 2017-11-23 14:46:29 +01:00
OBattler
d40cad0d35 Fixed two small bugs in 386_common.h, NT 3.51 Service Pack 5 now works again. 2017-11-23 14:32:38 +01:00
OBattler
6dbb93dfd9 Applied the PCem recompiler granularity fix. 2017-11-20 16:48:19 +01:00
OBattler
7dbb5e1642 Several fixes - the Samsung SPC4200P works again, as do VLB graphics cards. 2017-11-19 20:33:25 +01:00
OBattler
77ea2b2ab9 CS segment base is now set correctly on reset. 2017-11-19 09:53:19 +01:00
waltje
0c2a773113 Fixing warnings (which revealed two bugs) in cpu/80x8.c. 2017-11-18 21:26:45 -05:00
OBattler
21c60d5a3e Applied the PCem recompile fix commit. 2017-11-16 12:53:50 +01:00
OBattler
03e7b1db23 Applied all applicable PCem commit;
Fixed window resizing when mandated by the guest - should hopefully stabilize Direct3D.
2017-11-11 16:51:50 +01:00
waltje
7c67e867c8 Major commit, cleaning a lot of old stuff.
IBM.H is gone, video stuff re-organized. Keyboard stuff reorganized.
Machines that have their own video, mouse and/or keyboard now have all this in their machine file.
Fixed and other cleanups here and there.
2017-11-05 02:00:50 -05:00
waltje
34cd6ff0a5 Hrrm, missed this. 2017-11-02 02:42:39 -05:00
waltje
b40ea14027 Cleanup, moving stuff out of ibm.h and such. Moved more configuration variables into main. Minor changes for multiplatform. 2017-11-02 02:39:30 -05:00
waltje
bfe038ded9 Cleanup, mostly network threading madness. Statusbar is now created at hard reset, IF the configuration has changed. Other minor things. 2017-10-29 04:20:59 -05:00
waltje
7f24ba9fe9 Another cleanup run. 2017-10-17 02:01:03 -04:00
OBattler
4d9f5f0d05 Merge branch 'master' of https://github.com/OBattler/86Box 2017-10-16 06:19:49 +02:00
OBattler
ed865610e9 A dynamic recompiler block's validity is now separate from its starting code address, should fix most of the known recompiler fatals;
The CD-ROM buffer is now dynamically malloc'd;
Did a lot of bugfixing in cdrom.c and scsi_disk.c, Debian 8's modprobe aha1542 and the NT 3.10.404.1 Trantor 310b driver now work;
Fixed the IDE IRQ/MIRQ mess and ATAPI DMA transfer length;
Fixed the operation of mmutranslate() a bit;
Commented out several instances of excess logging;
Applied the mainline PCem commit prefetch commit;
Readded missing Sound Blaster DSP MIDI behavior and gave it the correct MPU struct;
All non-IBM 486 machines now correctly have the VLB flag set.
2017-10-16 06:19:18 +02:00
waltje
fbd95451d2 Fixes (missed a few spots) for DYNAREC and propagated to Linux. 2017-10-14 22:51:49 -04:00
OBattler
9f3a58bb24 This should fix the mess. Sorry for that. 2017-10-15 03:01:40 +02:00
OBattler
e9355aa0ad Merge branch 'master' of https://github.com/OBattler/86Box 2017-10-15 02:51:17 +02:00
OBattler
aca1449ac5 DYNAREC=n now also disables the Voodoo recompiler;
Fixed some Settings Machine page uglyness when the recompiler is disabled.
2017-10-15 02:50:26 +02:00
OBattler
1cfa8e2c4d The emulator can now be compiled without the recompiler by using the DYNAREC=n parameter with make;
The BIOS address is now selectable for the BusLogic ISA SCSI controllers.
2017-10-15 02:43:13 +02:00
OBattler
2792da5432 Refactored AHA-154x and BusLogic emulation and made them use a common core;
Fixed AHA-154x scatter/gather transfers;
Two-phased SCSI read-direction commands;
Made scsi_bus.c use a dynamically malloc'd buffer instead of a giant fixed-size buffer;
The AHA-154x/BusLogic thread now uses mutexes;
The BusLogic BT-545C is now the BT-545S;
Added the BusLogic BT-542BH;
The AHA-1542CF now again uses the v2.11 BIOS as the CD booting now works;
Applied PCem commit that adds NMI support to the recompiler;
Applied PCem commit that adds the IBM XT 286;
Applied PCem commits that have to do with sound, including the ES1371;
Fixed the NCR5380 output data register;
Moved the SLiRP mutex stuff from win.c to the appropriate network files;
Added sanity checks to everything in win_thread.c.
2017-10-14 07:03:19 +02:00
waltje
e9bd160ad1 More general cleanups and bugfixes. 2017-10-13 02:45:04 -04:00
waltje
724e5c44df More cleanups to separate main code from platform support and UI support, plus a few bugfixes. 2017-10-12 14:26:28 -04:00
waltje
ffa22a216c More general changes and cleanups, mostly in machine/ now. Also updated SCSI and Network device drivers to use new device init method. 2017-10-07 22:19:11 -04:00
waltje
2b37b7fbfb Major changes to NVR, system initialization (pc.c), and what goes on in the Windows startup (win.c.) Not fully done yet, but good enough for a first commit. 2017-10-07 00:49:53 -04:00
waltje
633adc6b02 Another big change, this time to the NVR. It has been re-done, integrated with the RTC code, and is now ready to be used by other, non-AT-compatible systems, including an ISA card for PC/XT. 2017-10-03 16:28:26 -04:00
waltje
43b055b5ee Another massive cleanup run. Ibm.h no longer includes system header files. ROM loading simplified, and moved from mem.c to rom.c. Fixes in Makefile. Corrected mamy wrong includes. Removed old junk from days long gone. First phase of new SCAT chipset driver - no longer gives errors in BIOS, but NOT DONE YET. 2017-09-25 04:33:16 -04:00
waltje
637ce66da2 First phase of cleaning up the use of pathnames internally. We now have the --vmpath (short: -P) commandline option to override the 'work dir' relative to which the program will try to find certain files and folders. 2017-09-23 21:12:37 -04:00
OBattler
576956fb66 Temporary fix for SLiRP - at least it now works, but waltje should look at this and possibly redo it when he feels like it;
The 12 MHz 286 is now correctly 12.5 MHz.
2017-09-08 16:35:14 +02:00
waltje
73ef17be9e Another major cleanup - folders for cdrom and floppy, renamed disc to floppy, renamed SuperIO stuff, others as needed. 2017-09-04 01:55:59 -04:00