Commit Graph

58 Commits

Author SHA1 Message Date
waltje
e8899c30c1 Fixed black screens - have to only look at the lower 256K of a ROM's load address. 2017-09-30 19:56:13 -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
OBattler
40e7a0efab The WIN_DRIVE_DIAGNOSTICS command now behaves correctly (but I'm redoing the IDE emulation anyway);
The IBM PS/2 Model 486 now uses its own rom set ID;
The AHA-154x and Buslogic SCSI controllers no longer stop scanning for mailboxes when in aggressive round robin mode;
PIC interrupt processing fixes - no more IRQ-caused triple faults in Windows 98 SE.
2017-09-08 00:17:49 +02:00
c1091d83d3 Lowercase all CAPS to prevent case sensitive errors in non-Windows platforms 2017-08-27 04:33:47 +01:00
waltje
2ffedb680b MonsterCommit(tm) with typo-fixes, void-ness fixes, correct CaPs for directories, etc. No real code changes. 2017-08-24 01:17:18 -04:00
OBattler
0213fedfe1 Readded the Award 430VX PCI, this time with the UMC UM8699F Super I/O chip emulated correctly per commit from mainline PCem + my own fixes. 2017-08-21 02:15:21 +02:00
OBattler
3b66776601 Improved memory configuration setting accuracy when 1MB memory installed (mainline PCem patch from Greatpsycho);
MovQ MMX Realmode bugfix (mainline PCem patch from JosepMa);
Tweaked the buffer for MT-32 and FluidSynth so they sound better (patch from bit).
2017-08-14 19:43:08 +02:00
OBattler
753937741e Added the AWARD 386SX, 386DX, and 486 clones, all using the same BIOS (supports all of these configurations) and the OPTi 495 chipset. 2017-07-20 14:14:43 +02:00
OBattler
e2512f8d9b Commented out the Compaq Portable II's and III's. 2017-07-20 10:45:36 +02:00
TC1995
c54bbb3eb5 Updated Compaq Portable II and III roms. 2017-07-19 14:29:00 +02:00
OBattler
95ac6ebe1d Temporarily reverted to the PCem serial code (but kept waltje's in, optionally enabled by running make with WALTJE=y parameter);
Applied another A20 patch from Greatpsycho.
2017-07-18 14:55:09 +02:00
OBattler
7c3337a563 Fixed the paths to the MDA and WY700 character ROM's. 2017-07-17 16:26:53 +02:00
OBattler
d3baa03d05 A20 line fix by Greatpsycho. 2017-07-17 14:22:02 +02:00
OBattler
4f5582ce21 Added PSE emulation, based on mainline PCem commit. 2017-07-16 23:12:21 +02:00
Marcos Alves
564f0f8331 Re-arranged roms' paths to be a bit more sane. 2017-07-16 15:28:09 +01:00
OBattler
2dbce95fde Applied the remaining mainline PCem commits. 2017-07-15 14:01:19 +02:00
OBattler
1e7668f1db Applied the recent mainline PCem commits (and fixed the Pentium machines);
Ported the Roland MT-32 emulation (using MUNT) from bit's MT32 emulation branch of PCem;
Sanitized the OpenAL give buffer code in openal.c a bit;
NVR path is now specifiable in the Settings dialog;
Added Logitech 3-button serial mouse per protocol description by waltje;
The RTL8029AS and the BT-958D now actually use the PCI IRQ routing;
Fixed BT-958D PCI device initialization on the bus;
PCI IRQ routing now respects the edge/level setting set on ports 4D0/4D1.
2017-06-19 06:46:08 +02:00
OBattler
8061db66fe A lot of cleanaps, got rid of all warnings with -Wall;
The makefile now uses -Wall.
2017-06-16 06:44:11 +02:00
OBattler
8dcc7176a9 Hard disk image handling is now unified in hdd_image.c/h;
Fixed some bugs regarding the Winbond W83877F Super I/O Chip and serial ports;
Added the President Award 430FX PCI machine, thank you ashenone for the BIOS.
2017-06-16 03:18:59 +02:00
OBattler
15b25157ee Reverted the Acer V35N to the service BIOS and made it initialize PCI with the correct slot ID's, the board works correctly now. 2017-06-15 19:35:48 +02:00
TC1995
12e1e8dfa7 Properly fixed Adaptec AHA-1640 MCA adapter, setup is handled directly by the ADF file in the reference disks.
Re-introduced the Acer V35n machine, but with a proper bios (r01-c0.bin instead of the service one).
MCA serial and parallel initialization fixes alongside the ISA PS/1 and PS/2 Model 30 ones.
2017-06-15 05:17:34 +02:00
OBattler
c0a8830d5e Brought the Voodoo files in line with the mainline PCem code - fixes all warnings;
Applied all the mainline PCem commits;
Fixed some sound-related warnings.
2017-06-14 20:35:58 +02:00
OBattler
112ee420a5 Applied mainline PCem commit that fixed the AWE32 OPL volume;
Removed the Award 430VX PCI and all UMC Super I/O chip emulation (that was pure guesswork anyway).
2017-06-08 00:01:10 +02:00
OBattler
07e72f72ef Applied the remaining mainline PCem commits. 2017-06-05 01:33:14 +02:00
OBattler
0f043d5134 Fixed compile-breaking bugs in mem.c. 2017-06-03 16:37:29 +02:00
OBattler
ac18a8f539 Changed CPU cycles period tweak so it only affects the 486's;
Applied Laser XT ROM BASIC and Laser XT EMS patches from Greatpsycho.
2017-06-03 16:34:40 +02:00
OBattler
fc2a293536 CD-ROM images are now working correctly again;
Fixed all the reported bugs regarding the Settings dialog;
MIDI out device is now no longer reset to 0 after hard reset;
Removed all vestiges of the old disk activity flash;
The configuration file is no longer saved when it shouldn't be;
Redone the status bar icon updating so it is only done in win.c;
Made sure all variables in ibm.h are extern;
A lot of other bugfixes;
Added Mouse Systems Mouse emulation (patch from TheCollector1995);
Added IBM PS/1 Model 2133 (486) emulation (patch from TheCollector1995);
Tweaked the CPU dynamic recompiler cycle periods - 486SX 33 and 486DX 33 now work;
Increased compatibility with configuration files from before the previous commit.
2017-05-29 01:18:32 +02:00
OBattler
08cf490f3f Removed the Dell System 200. 2017-05-10 23:16:30 +02:00
OBattler
f6612fb33b Fixed bugs that were preventing NVR and Flash files from behind saved;
A lot of clean ups from waltje;
Start of a directory structure for the code, thanks to waltje.
2017-05-06 17:48:33 +02:00
OBattler
c403855a94 The emulator is now almost completely Unicode - this means all paths and file names used can now use non-Latin characters;
Fixed several NVR- and ROM-related bugs in the process of doing the above.
2017-05-06 04:02:03 +02:00
OBattler
f6ef1f833c Vastly overhauled the UI, there's now a completely new Settings dialog as well as a status bar with disk activity icons and removable drive menus;
Thoroughly clean up the code to vastly reduce the number of compiler warnings and found and fixed several bugs in the process;
Applied all mainline PCem commits;
Added SCSI hard disk emulation;
Commented out all unfinished machines and graphics cards;
Added the AOpen AP53 and ASUS P/I-P55T2 machines as well as another Tyan 440FX machine, all three with AMI WinBIOS (patch from TheCollector1995);
Added the Diamond Stealth 3D 3000 (S3 ViRGE/VX) graphics card (patch from TheCollector1995);
Added the PS/2 XT IDE (AccuLogic) HDD Controller (patch from TheCollector1995);
Added Microsoft/Logitech Bus Mouse emulation (patch from waltje);
Overhauled the makefiles (patch from waltje);
Added the Adaptec AHA-1542CF SCSI controller (patch from waltje);
Added preliminary (but still unfinished) Adaptec AHA-154x SCSI controller BIOS support (patch from waltje);
Added an ISABugger debugging device (patch from waltje);
Added sanity checks to the Direct3D code.
2017-05-05 01:49:42 +02:00
TC1995
c1757b1742 Added Compaq Portable, Portable II, and Portable III (both 286 and 386DX of the latter). Currently the original Portable has issues with CGA but works with the CGA-compatible Wyse 700 and EGA and higher).
IBM PS/1 2011 and PS/2 30-286 now default to XTIDE 1.1.5 when selected.
2017-03-15 19:32:54 +01:00
OBattler
8452458c1a Changed version to 1.10;
Applied mainline PCem commit that adds MFM hard disk emulation;
Commented out the Commodore PC III 60.
2017-03-15 01:37:09 +01:00
OBattler
a57aa0ffcc Version changed to 1.07;
Added Intel Advanced/ZP;
Added Commodore PC 60 III;
Fixed Force 4:3 option when overscan is not enabled;
Added option to scale (0.5x, 1x, 1.5x, 2x) the video output;
Added ability to disable ATAPI DMA for CD-ROM drives;
Applied all mainline PCem commits;
Store network card in config file as name rather than number;
Fixed NVR storing for IBM PS/2 Models 2121 and 2121+ISA.
2017-03-14 00:38:25 +01:00
OBattler
64c941320f IBM PS/2 Model 30-286 now uses XTIDE version 1.1.5;
The 287 FPU is now correctly detected as such;
Added two instructions that were incorrectly missing from the 286, fixes Standard Mode Windows.
2017-03-02 04:49:53 +01:00
OBattler
13683628a5 ATAPI CD-ROM no longer lowers IRQ at the wrong time, fixes booting of some CD's;
Fixed DMA emulation, fixes Olivetti M24;
(S)VGA emulation for PS/1 and PS/2 machines now uses the old, less accurate sense switches, fixes display error on POST;
Bit 2 of the AT keyboard input port is now always held active, fixes PS/2 mouse on PS/1 and PS/2 machines;
Fixed mouse type selection on non-AT boards;
Fixed RAM type selection;
The entire palette is now overwritten when a monochrome monitor type is selected, fixes graphics mode on Hercules;
Applied updated SCAT emulation patch from PCem forum;
Nvidia Riva and S3 Virge IRQ is now configurable;
Properly applied the mainline PCem commit that fixed the Bahamas64 on the Intel AMI BIOS boards;
Commented out the Diamond Stealth 64 and the Miro Crystal S3 Vision 964 due to their non-working state;
Changed version to 1.06.
2017-03-01 23:23:52 +01:00
OBattler
51b085c13e Fixed RAM mask on resetx86(), fixes soft reset triggered by MS-DOS Setup;
Changed version to 1.04.
2017-02-26 06:36:52 +01:00
OBattler
4ddfa7c1db Changed version number to 1.01;
IMG floppy image handler now fills the remaining bytes with 0xF6 if it has read less bytes than expected - fixes handling of truncated IMG's with a valid BPB;
HDI files are now written with the correct header;
FDC DUMP REGISTERS command is now implemented correctly, fixes FDC error on AMI 486 clone and AMI WinBIOS 486;
Commented out the Acer 386SX and the Phoenix 386 clone;
WinPCap code is now delayed loading (thanks to Rai-chan), the emulator should now be able to run without WinPCap installed if not using PCap;
The IBM PS/2 Model 30 NVR file is now saved in the same directly as the other NVR files;
Applied all the latest mainline PCem Voodoo commits.
2017-02-23 19:52:14 +01:00
OBattler
af03793533 Added Hyundai Super-286TR;
Fixed the emulation of the Intel 82335 chip used by the Phoenix 386 clone;
Fixed a bug regarding the CGA RGB monitor type;
The IBM PS/1 Model 2121 with ISA is now acknowledged in mem.c.
2017-02-20 06:05:11 +01:00
OBattler
df4b4410e6 Fixed CGA, Hercules, and MDA for the second time, per suggestion and code from basic2004;
Added IBM PS/2 Model 30 emulation per mainline PCem patch from dns2kv2;
Commented out the Chips & Technologies VGA 451 as it needs further work;
Added the ability to disable XTIDE;
Prepared the icon that will be used for stable builds.
2017-02-20 00:16:42 +01:00
OBattler
b8418b94de Added emulation of the Intel 82335 chip for the Phoenix 386 clone;
Added the Samsung SPC-4200P;
Added the Chips & Technologies VGA 451;
Applied all mainline PCem commits;
Added Amstrad MegaPC 386DX model (exits per documentation that I have in German).
2017-02-19 01:58:21 +01:00
OBattler
0c7c4197da Commented out the PowerMate V;
Added port 0xED to the Acer Pentium machines.
2017-02-01 17:55:11 +01:00
OBattler
55b6f1b802 Intel SIO/PIIX/PIIX3 Turbo Reset Control is now properly implemented;
Floppy disk controller is now COMPLETELY reset on hard reset;
NukedOPL is now optional (but enabled by default) so people on older hardware can gain a few % of performance by going back to DOSBox OPL;
*.CPP files now get all the correct optimization flags applied;
Added NEC PowerMate V emulation - you can get into CMOS SETUP but it hangs before booting, and PCI graphics card don't work (yet).
2017-01-31 20:39:36 +01:00
OBattler
0548d8f9c8 Essentially reverted 8-bit IDE data reads and writes to old operation, fixes the hard disk bug;
SCSI LUN is now selectable for the CD-ROM drives;
Made sure every BusLogic RequestSetup ends in a StartMailbox sooner or later, fixes freezes with the DOS BusLogic drivers;
Commented out execess logging from mem.c;
Applied the mainline PCem commit that fixes the Bahamas64 on some boards.
2017-01-18 21:51:03 +01:00
OBattler
6ab8e5be80 Rewrote the MMU translation code completely, thank you TheCollector1995 for testing;
Fixed NT page faults with AHA-154x and BusLogic, patch by TheCollector1995.
2017-01-17 22:15:15 +01:00
OBattler
6b86549b7e Modified empty IDE channel handling, should hopefully reduce problems;
Fixed several ATAPI CD-ROM bugs;
Added some missing CPL override checks to the MMU translate functions;
Tertiary and quaternary IDE controllers are now automatically disabled if not a single device is attached to them;
Changed sleep time on compile from 10 seconds to 2 seconds.
2017-01-17 19:41:42 +01:00
OBattler
6af40b5b16 Added a few keyboard controller commands used by the AMI BIOS'es;
The port 92 handler in mem.c now flushes MMU cache when toggling the A20 gate;
Added ability to reload previous disc after ejecting it;
Fixed the START/STOP UNIT command for both SCSI and ATAPI;
Applied mainline PCem commit: All XT models can now use 64kb RAM. Patch from ecksemmess .
2017-01-04 05:58:44 +01:00
OBattler
dc46480aa4 Applied all mainline PCem commits;
Added experimental NVidia Riva TNT2 emulation (patch from MoochMcGee);
ASUS P/I-P54TP4XE, ASUS P/I-P55T2P4, and ASUS P/I-P55TVP4 are back;
National Semiconductor PC87306 Super I/O chip now correctly reenables devices after a chip power cycle;
Several FDC improvements and the behavior is now a bit closer to real hardware (based on actual tests);
Added MR Intel Advanced/ATX with Microid Research BIOS with support for 4 floppy drives and up to 4 IDE controllers;
Added floppy drives 3 and 4, bringing the maximum to 4;
You can now connect hard disks to the tertiary IDE controller;
Correct undocumented behavior of the LEA instruction with register is back on 286 and later CPU's;
Pentium-rea models with Intel chipsets now have port 92 (with alternate reset and alternate A20 toggle);
Overhauled DMA channel read and write routines and fixed cascading;
Improved IMG detection of a bad BPB (or complete lack of a BPB);
Added preliminary emulation of PS/2 1.44 MB and PC-98 1.25 MB 3-mode drives (both have an inverted DENSEL pin);
Removed the incorrect Amstrad mouse patch from TheCollector1995;
Fixed ATAPI CD-ROM disk change detection;
Windows IOCTL CD-ROM handler now tries to use direct SCSI passthrough for more things, including obtaining CD-ROM capacity;
The Diamond Stealth32 (ET4000/W32p) now also works correctly on the two Award SiS 496/497 boxes;
The (S)VGA handler now converts 6-bit RAMDAC RGB channels to standard 8-bit RGB using a lookup table generated at emulator start, calculated using the correct intensity conversion method and treating intensity 64 as equivalent to 63;
Moved a few options from the Configuration dialog box to the menu;
SIO, PIIX, and PIIX3 now have the reset control register on port CF9 as they should;
Several bugfixes.
2016-12-23 03:16:24 +01:00
OBattler
971eeedde7 Reverted floppy disk operation to what it was in build 274, with a slight cleanup;
Sound Blaster 16 and AWE32 IRQ, base address, and DMA configuration is back;
The Intel Advanced/ATX now requires version 1.00.06 of the BIOS rather than 1.00.05.
2016-11-10 21:16:24 +01:00
OBattler
e280faa2d6 86F format handler updated to 86F version 2.0 and bit by bit handling;
FDI stream images are now also handled by the 86F handler;
Both floppy drives' motors now spin separately;
Added Plantronics ColorPlus emulation per patch from PCem forum;
Applied all mainline PCem commits;
Fixed several bugs.
2016-11-02 22:39:07 +01:00