Commit Graph

49 Commits

Author SHA1 Message Date
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
TC1995
0f035b42ea Added preliminary Adaptec 154x emulation, needs fixing in the Read 10 command.
Made ATAPI derived from SCSI.
Added proper S/G emulation for SCSI DMA.
Added SCSI CD-ROM emulation, preserving all the former ATAPI commands as well.
2016-11-12 15:06:38 +01:00
OBattler
beb4e7869d The FDC READ TRACK command should now operate properly. 2016-11-11 03:16:41 +01:00
OBattler
6e2b91c3d1 Pretty much all timer counters are now 32-bit again;
Fixed FDI stream parameters passed to the 86F handler, FDI stream images now read correctly again;
The National Semiconductors PC87306 SuperI/O chip now supports enhanced FDC mode.
2016-11-07 06:39:20 +01:00
OBattler
78a44d845b Fixed a bug regarding 86F images and extra bit cells;
Brought the Intel Flash emulation in line with mainline PCem;
Removed the Intel Advanced/ML;
Reverted the ET4000/W32p code back to the code from mainline PCem, with fixes to PCI and linear frame buffer addresses according to the datasheet;
Timer counters are now 32-bit again - fixes quite a few bugs.
2016-11-04 22:32:23 +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
TC1995
109e339453 Added Amstrad mouse emulation for the PC1512, PC1640, PC2086 and PC3086. 2016-10-08 23:48:45 +02:00
TC1995
a649708124 (nw) 2016-10-08 22:26:22 +02:00
OBattler
ecd425a9c6 Do not initialize the gameport at all if the "No joystick" option is selected. 2016-09-16 02:46:25 +02:00
OBattler
cdfba37ea9 Applied all mainline PCem commits;
Fixed behavior of the FDC RECALIBRATE command for FDC's on certain Super I/O chips;
Several 86F-related fixes;
Added the Intel Advanced/ML (430HX, Socket 7, currently with non-working Flash) and Intel Advanced/ATX (430FX, Socket 7, works perfectly) motherboards;
Fixed handling of DENSEL when the FDC is in National Semiconductors PC87306 mode;
Brought 440FX initialization PCI parameters in line with Bochs;
Brought PIIX3 initialization PCI parameters in line with QEMU.
2016-09-14 23:18:14 +02:00
Jackson Bryn
291ac890e2 Add copyrights for all files to comply with the GPL v2. 2016-08-14 22:27:13 -04:00
OBattler
1433d9a073 Applied both mainline PCem commits;
Fixed the RTL8029AS again (one of my "fixes" broke it);
RTL8029AS PCI register 4 is now written to;
Added incomplete (and currently commented out) emulation of the AWE64 PCI;
Replaced sector-based floppy emulation with more accurate code.
2016-08-15 01:34:46 +02:00
OBattler
f1367357b0 More RTL8029AS fixes from TheCollector1995;
FDC now updates the floppy drive's DENSEL on receiving updates from the Super I/O chip;
Commented out ASIS P/I-P55TP4XE and ASUS P/I-P55T2P4 because they are too buggy;
Completely illegal instructions now also log the second byte for purposes of prefixed instruction identification;
PIC now sets mask to 0 on reset.
2016-08-13 17:29:14 +02:00
OBattler
91075fb627 RTL8029AS now works properly (patch from TheCollector1995 with some modifications by me);
SVGA emulation now has partial support for 12x24 text mode used by 48k HECON.SYS;
LEA AX,DX now once again issues #UD on 286+ like it should;
FF /7 is now correctly an alias of FF /6 on 8080x;
Hard disk configuration dialog now uses Segoe UI 9pt font instead of MS Sans Serif 8pt;
Removed excess logging from serial mouse and x86seg.c;
Applied mainline PCem PIT MSW1 fix commit;
IMG-based floppy emulation now takes GAP4 and post-sector delays into account;
Comemnted out emulation of non-Overdrive Pentium II's.
2016-08-13 03:32:38 +02:00
OBattler
a4f992ff05 The KN-97 now has memregs too. 2016-07-19 03:37:40 +02:00
OBattler
b78b2fecaa Timer counters now 64-bit;
Cleaned up floppy code a lot and reverted to single poller;
Fixed segment present bit and limit checking at read/write within segment;
The ASUS boards now have memregs too;
RTC code improved based on suggestion by Sarah Walker;
Fixed SVGA odd/even emulation and added chain odd/even support;
Removed non-existent CPU's.
2016-07-19 02:44:32 +02:00
OBattler
88e20c7327 Proper Intel Flash emulation.
Intel Flash now enabled for both Premiere/PCI boards.
2016-07-05 19:29:31 +02:00
OBattler
fd2a5bc9f5 Initial submission of the PCem-Experimental source code. 2016-06-26 00:34:39 +02:00