Commit Graph

590 Commits

Author SHA1 Message Date
OBattler
f67f14d648 BusLogic callback no longer fatals the emulator when called with mailbox count 0 but just disables the callback;
Reverted the ATI Mach64GX code to that from mainline PCem.
2017-02-17 23:45:18 +01:00
OBattler
b15ab0505a The lone picint in the Riva code is now also hard coded to IRQ 3. 2017-02-17 02:21:02 +01:00
OBattler
a04b47688e The Virge's and Riva's are now hardcoded to IRQ 3. 2017-02-17 02:18:28 +01:00
OBattler
77013e34c9 Manually applied mooch's RIVA 128 commit;
Fixed the RIVA 128 in a way that does not affect other cards' operation.
2017-02-15 22:41:39 +01:00
OBattler
419b0b0c58 Added support for custom HDX hard disk image format that is less size-limited than HDI and supports storing translation parameters;
Commented out excess EGA logging.
2017-02-15 18:19:00 +01:00
OBattler
de6f785029 Fixed a compile-breaking error. 2017-02-14 23:49:48 +01:00
OBattler
711f09e17b Reverted EGA emulation to be in line with mainline PCem except for the overscan, as there were some problems;
Added write port 3C1 to EGA and (S)VGA, fixed Microsoft Word 2.0 for DOS;
The RTL8029AS now correctly enables I/O port range when base address is changed via PCI registers with I/O access enabled;
Tentative fix for DirectDraw <-> Direct3D switching issues based on proposal from TheCollector1995;
Fixed 64-bit makefile;
Fixed LZF_C.C so it can compile for 64-bit Windows;
Applied all mainline PCem commits.
2017-02-14 23:46:50 +01:00
OBattler
07f1e37d26 NE2000 ISA now correctly lacks 32-bit reads and writes. 2017-02-14 07:06:24 +01:00
OBattler
9696840525 Commented out an excess log message in piix.c. 2017-02-13 22:36:43 +01:00
OBattler
20a25caba7 cdrom_set_signature() now does a sanity check on the CD-ROM drive ID, fixes random crashes on hard reset. 2017-02-13 20:21:57 +01:00
OBattler
8747bede97 The network card poller is now actually fired, the network now actually works. 2017-02-12 19:38:06 +01:00
OBattler
9cb0abc4ae Swapped the positions (and sizes) of the Wait states and Sound card combo boxes, full sound card names should be visible again. 2017-02-12 05:23:14 +01:00
OBattler
9a5dbc80ab Added emulation of BusLogic BT-958 PCI SCSI controller;
SCSI controller configuration moved to the Settings dialog, suggestion by RichardG.
2017-02-12 04:16:16 +01:00
OBattler
f5ebf5b7a8 ATAPI DMA is now scatter gather-aware. 2017-02-09 01:41:32 +01:00
OBattler
3d8f054721 The network is now single-thread again, and the speed is correspondingly lower. 2017-02-08 20:14:57 +01:00
OBattler
adf9c28e61 ATAPI DMA now tells the bus master the correct length to transfer;
ATAPI DMA now transfers all blocks at once.
2017-02-08 18:42:20 +01:00
OBattler
49278204d4 The code to add a timer now makes sure to only add the timer if an identical timer is not already present. 2017-02-07 04:44:04 +01:00
OBattler
49c2f3efe5 fdc_hard_reset() no longer calls disc_reset() - fixes too fast floppy timings due to double timers. 2017-02-07 03:58:20 +01:00
OBattler
c8c49ac216 Reworked serial and LPT set up - they can now bet set to any I/O base address (though that capability is not used by anything yet);
The CD-ROM IOCTL direct pass through code now does sanity check on the requested data size before passing the command - fixes crashes with some DMA-only host DVD drives;
The network poller is now in its own thread;
The hack is back in the emulation of the National Semiconductors PC87306 Super I/O Chip - it's the only way right now to have serial working on that board;
Fixed a part of the code that was still using NukedOPL even when OPL 3 was set to DOSBox OPL;
Applied all mainline PCem commits.
2017-02-07 02:19:48 +01:00
OBattler
22c3a74e3b The SCSI data buffer is now zeroed before being allocated, MODE SELECT data is therefore no longer lost in transit;
SCSI DMA writes (for MODE SELECT) now correctly use InitLength instead of request_length when bus type is SCSI;
Fixed MODE SELECT page saving;
CD Audio volume is now correctly initialized on card initialization for all Sound Blaster variants, fixes CD Audio being muted when booting without the Sound Blaster initialization program;
Brought the Sound Blaster variants back to a sane sound volume but still louder than the old quietness;
Moved SCSI adapter initialization to before sound card initialization, fixes DOS SCSI CD-ROM driver hangs under some conditions.
2017-02-04 06:53:46 +01:00
OBattler
3c61b80a34 Fixed several bugs in the emulation of the National Semiconductors PC87306 Super I/O chip;
Attempt to fix sound fluttering in waiting for a better fix from mainline PCem;
Attempt to make the Sound Blaster louder;
Removed excess logging from cdrom_ioctl.c.
2017-02-03 23:24:56 +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
e24d0ab18a Reenabled the floppy drive poller, floppies should now work again. 2017-02-01 21:41:35 +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
e4990e9c34 Merge branch 'master' of https://github.com/OBattler/PCem-Experimental 2017-01-27 23:03:45 +01:00
OBattler
10503674eb All MODE SENSE and MODE SELECT commands now support the block descriptor when a CD-ROM drive is set to SCSI;
Fixed MODE SELECT behavior with ATAPI;
Removed excess PIIX logging;
Fixed and improved the CD Audio buffer code in sound.c.
2017-01-27 23:03:20 +01:00
OBattler
be9ae90456 Merge pull request #92 from MoochMcGee/master
Fix an nVidia bug
2017-01-27 04:38:08 +01:00
Melissa Goad
865e35d612 Fix an nVidia bug 2017-01-26 21:34:09 -06:00
OBattler
366df87f8a Merge pull request #91 from MoochMcGee/master
Fixed some bugs in the ATI 28800
2017-01-26 23:05:02 +01:00
Melissa Goad
e6c5a104b3 Fixed some bugs 2017-01-26 13:59:21 -06:00
OBattler
661b409621 Merge branch 'master' of https://github.com/OBattler/PCem-Experimental 2017-01-26 18:33:05 +01:00
OBattler
dddd309bb8 Fixed the makefile. 2017-01-26 18:32:45 +01:00
OBattler
152740c112 Merge pull request #90 from MoochMcGee/master
Change ATI 18800 BIOS
2017-01-26 18:02:46 +01:00
Melissa Goad
dcb89d3d2a Change ATI 18800 BIOS 2017-01-26 11:01:36 -06:00
OBattler
515b84d852 Merge pull request #89 from MoochMcGee/usb-work
USB work
2017-01-26 17:34:05 +01:00
OBattler
d4afd7c2c3 Added some things that were missing from the DMA controller;
Fixed a link-breaking bug in cdrom.c;
The AHA-154x now supports commands 0x28 (GET EXTENDED BIOS INFO) and 0x29 (UNLOCK MAILBOX) and no longer reports a firmware revision with scatter/gather bug;
The BusLogic now supports command 0x20 (RESET);
Fixed the GPIO register mapping on the National Semiconductors PC87306 Super I/O chip.
2017-01-26 17:20:55 +01:00
OBattler
89840c7fc9 CD-ROM READ SUBCHANNEL command now does not pass through if requested data type is 1 (current position), instead the current position held by the emulator is returned;
CD-ROM READ SUBCHANNEL command now respects the allocated length set in the CDB.
2017-01-25 06:58:40 +01:00
OBattler
6f705abd61 Changed the default pass through transfer length for non-media access commands to 65534 bytes instead of 8192, just in case someone tries to use a disc with an abnormal number of tracks. 2017-01-24 20:32:55 +01:00
OBattler
f2c8591220 The CD-ROM READ CAPACITY, READ SUBCHANNEL, READ TOC, READ DISC INFORMATION, and READ TRACK INFORMATION commands now return a sane length if the length from pass through is 8192 bytes. 2017-01-24 20:25:58 +01:00
OBattler
bc5ac4a699 Reverted Direct3D to 2048x2048 buffer and suppressed the EGA/(S)VGA overscan, if enabled, in 2048x modes, fixes Direct3D freezes;
Improved the BusLogic incoming mailbox code;
The BusLogic callback is now three-phases and outgoing mailbox interrupts are emulated correctly;
Fixed the CD-ROM command READ DISC INFORMATION (0x51), fixes NetBSD crashing 86Box with segmentation fault when using the AHA-154x;
Added the CD-ROM command PAUSE/RESUME ALT (0xC2).
2017-01-24 01:03:23 +01:00
Melissa Goad
f52213d4e3 Add more PID token types 2017-01-22 00:35:15 -06:00
Melissa Goad
46479aa1bd Add basic USB support sorta 2017-01-22 00:22:14 -06:00
OBattler
bd28cc5e57 Disabled the IDE logging again. 2017-01-21 17:52:27 +01:00
OBattler
0dd769d727 ATA PACKET COMMAND now correctly callbacks+aborts when issued on a hard disk, fixes hard disk problems with a DOS CD-ROM driver loaded. 2017-01-21 17:48:45 +01:00
OBattler
754e8ff88f SCSI incoming mailbox now correctly also rewrites the CCB up to the CDB even if the status is CHECK CONDITION, fixes CD-ROM disc changes when using SCSI;
Previous CD-ROM sense is now correctly cleared when a REQUEST SENSE command is performed, fixes detection of disc change after setting the drive to empty first regardless of what bus is used for the CD-ROM.
2017-01-21 06:21:46 +01:00
OBattler
1aa37bfc27 REQUEST SENSE now correctly delays the reporting of UNIT ATTENTION if another error is pending, unless the error is not ready and the REQUEST SENSE is a standalone command;
The SCSI-specific auto-REQUEST SENSE now no longer advances UNIT ATTENTION phase, making sure the next command will report UNIT ATTENTION.
2017-01-21 03:03:46 +01:00
OBattler
6a396b4bcb Fixed the last compile-breaking error, for really this time. 2017-01-21 02:02:35 +01:00
OBattler
a24020efcd Fixed the last compile-breaking error. 2017-01-21 02:00:34 +01:00
OBattler
4486926b6d Fixed a compile-breaking error. 2017-01-21 01:58:48 +01:00