Commit Graph

67 Commits

Author SHA1 Message Date
OBattler
7d67f85a1d Fixed the operation of the WIN_DRIVE_DIAGNOSTICS command for ATAPI CD-ROM (it's almost never used but eh);
Properly fixed the CPU manufacturer/type selection bug after changing machine;
The Samspung SPC-4200 now has a PS/2 port.
2017-06-20 06:23:05 +02:00
OBattler
51ef58ad00 Fixed RTL8029AS PCI register write handlers;
Disabled the Nation Semiconductors PC87306's IDE handler, the board replaces it with the PCI IDE device anyway;
The Commodore PC 300 now remaps the top 384k of RAM;
The network card is now initialized after the SCSI controller;
The graphics cards remain on the INTA pin, but the network card is now on INTC, and the SCSI controller on INTB;
S3 Vision/Trio emulation brought completely in line with mainline PCem, fixes Windows 2000 freezes.
2017-06-19 22:18:35 +02:00
OBattler
43aaf7dc74 When selecting an AT-class machine with less than 1 MB memory size granularity, memory size is no longer incorrectly multiplied by 1024, fixes the crashes with those machines;
The NEAT, SCAT, and Headland chipsets no longer remap the top 384 kB.
2017-06-19 18:33:36 +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
waltje
2019183c29 Removed all model-based one-line header files and moved their info to model.h. Added static to handler functions where needed. 2017-06-16 16:03:07 -04: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
760b4f89ae Fixed SVGA 15bpp and 16bpp low resolution renderers;
IDE WIN_DRIVE_DIAGNOSTICS fix per patch by greatpsycho;
The two Laser XT boards now allow using up to 1152 kB RAM per report from greatpsycho.
2017-06-11 17:40:34 +02:00
OBattler
c1b7fe015d Flash and NVR file names are now generated from the model's internal name;
NVR masks are now stored in the model struct;
More AX JEGA work, still not hooked anywhere;
Fixed a stray wsprintf() in win.c to the correct _swprintf() instead;
Loading a configuration file from the menu now causes the status bar to be updated.
2017-06-08 00:58:47 +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
waltje
cbfa682cb7 Changes, updates and fixes to fixes. Check the new warnings re timer_add(). Using stricter prototypes receiled more stuff.. 2017-06-04 02:19:54 -04:00
OBattler
fa174b79b2 Fixed a compile-breaking error;
Added the ability to set each floppy drive to turbo speed which will make it opperate at an effective 8000 kbps @ 300 rpm, for those who want faster but less accurate floppy timings.
2017-06-04 02:14:27 +02:00
OBattler
85714741ab Added missing .H file. 2017-06-03 16:43:43 +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
8151f47135 All PCI boards now use the *correct* PCI slots;
The SMC FDC37C665 Super I/O chip's IDE handler now does nothing for the PC Paternet MB500N as well, fixes the problem of its BIOS not detecting hard disks;
DOSBox OPL volume changed from 55000 to 51000 per patch from James-F.
2017-06-03 16:03:27 +02:00
OBattler
ab847fdecd Applied all the mainline PCem PCI commits;
Applied patch from James-F that makes the Sound Blaster filters more accurate.
2017-06-02 01:38:25 +02:00
OBattler
84595f1c78 Added my name to all the emulator's files that I touched;
Unfinished JEGA emulation based on akm's DOSVAX (AX-emulating fork of DOSBox), not yet hooked into the reset of the emulator.
2017-05-30 03:38:38 +02:00
TC1995
974d517cb3 PS/1 audio device removed from the 2133 since it doesn't support it. 2017-05-29 02:47:27 +02:00
TC1995
f416613cfa Fixed floppy handling in the IBM PS/1 2133, now floppies work again. 2017-05-29 01:29:45 +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
a36720f174 Large changes to configuration files again (the old ones might break, be careful);
Applied the mainline PCem slight CPU emulation speedup commit;
Added emulation of removable SCSI hard disks;
CD-ROM image handler now uses C FILE's (with the 64-bit size calls) instead of C++ iostreams, ISO images bigger than 2 GB should work properly again;
Split RLL/ESDI and XT IDE disks to their own bus types;
Turned status bar pane meaning and hard disks and CD-ROM BUS numbers to #define's;
Other miscellaneous cleanups.
2017-05-27 03:53:32 +02:00
OBattler
182c737921 Improved emulation of the SiS 496 chip;
The SMC FDC37C665 Super I/O chip's IDE handler is now disabled for the Rise Computer R418 (the real board by passes that chip's IDE and uses the SiS 496B IDE controller so this is correct and not a hack), fixes hard disks disappearing on soft reset.
2017-05-21 19:16:23 +02:00
OBattler
08cf490f3f Removed the Dell System 200. 2017-05-10 23:16:30 +02:00
waltje
79bccfeb77 Removed ALLEGRO, per Kotori's OK.
Fixed serial driver, re-worked API and updated other files accordingly.
Fixed serial mouse driver for new serial port, prepared for Mouse Systems mode.
2017-05-07 02:15:51 -04: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
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
55de61d58d Removed ide_init(); from at_init(). 2017-03-15 03:05:21 +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
8e055b7520 Commented out excess FPU logging;
SCSI controller is now reset on x86 soft reset, fixes DOS driver hangs after soft reset;
SCSI controller reset control is now implemented more accurately, on a 50 ms timer;
For the PS/1 Model 2011, the Keyboard Input Port bit 6 now correctly reports if the currently selected (in FDC DOR) floppy drive is 3.5" or 5.25";
Commented out excess DMA logging;
Added support for FDF floppy images;
Fixed handling of CDB allocated length field for the CD-ROM INQUIRY command;
(S)VGA port 03C1 write is back again (it was incorrectly gone in some builds);
Commented out Compaq/Paradise VGA;
PS/1 Model 2121+ISA now correctly allows selecting graphics card.
2017-03-05 19:42:56 +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
ef41672b20 WIN_SPECIFY command is now no longer strict on translation parameters with HDX images, fixes > 503 MB HDX images on 440FX;
Applied all mainline PCem commits (changes configuration files!);
Fixed EGA and (S)VGA overscan border drawing;
Added ability to invert the colors when using a (S)VGA graphics card, to appear like an early laptop monitor;
Changed version to 1.03.
2017-02-25 20:18:45 +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
b440d749de Fixed compile-breaking error in model.c. 2017-02-19 02:51:26 +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
6ab214a2b0 Commented out the NEC PowerMate V, because it doesn't work;
Applied all mainline PCem commits;
CD-ROM sound thread is now disabled if all CD-ROM drives are either disabled or have audio disabled;
Fixed the displayed incorrect zero cylinders, head, and sectors per cylinder when loading an already existing HDI image;
Fixed the CD-ROM audio menu item not checking/unchecking correctly.
2017-02-02 02:55:08 +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
66757dfaad Added IBM PS/1 Model 2121 with ISA expansion, allows selecting any graphics card. 2017-01-18 00:43:43 +01:00
OBattler
4f7fd84229 Overhauled and unified CD-ROM emulation;
Four CD-ROM drives are now emulated;
ATAPI DMA is now emulated;
Unified CD-ROM pass through to host drive handling;
Applied all (applicable) mainline PCem commits.
2017-01-16 01:49:19 +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
17e2cd6776 Added a quaternary IDE controller on ports 1E8-1EF/3EE;
The tertiary and quaternary IDE controllers are now fully configurable;
The IRQ of the RTL8029AS network card is now configurable;
CopyQM floppy images are now supported.
2016-12-28 23:34:00 +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
e46631e47b Reworked the menus so they're more logically grouped;
Removed the lone Misc menu and mvoed Status to Settings;
Added a SCSI CD-ROM option to the menu;
Removed the atapi_cdrom_enabled option and replaced any usage of it with !scsi_cdrom_enabled;
Disabling/enabling the CD-ROM drive is now separate from the drive's contents;
The tertiary IDE controller now never gets enabled is the CD-ROM drive is either disabled or SCSI.
2016-11-13 05:39:21 +01:00