Commit Graph

579 Commits

Author SHA1 Message Date
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
OBattler
45183ea026 SCSI auto-sense is now done as an actual pseudo-execution of the REQUEST SENSE command. 2017-01-21 01:48:55 +01:00
OBattler
13e85cc7a6 Fixed a compile-breaking error. 2017-01-21 01:19:49 +01:00
OBattler
2e15aca382 The error code in cdrom.c now logs errors;
Illegal LUN is now invalid LUN and 05/25/00.
2017-01-21 01:17:49 +01:00
OBattler
b2c7b4665d Fixed cdrom_ascq #define so it no longer points to the same as cdrom_asc. 2017-01-21 01:06:29 +01:00
OBattler
b6c0297141 Applied the properly working Nvidia commit from Mooch. 2017-01-21 00:14:51 +01:00
OBattler
3f612ab71a IDE dword reads and writes reverted to original operation, fixes the last hard disk problems;
ATAPI CD-ROM word reads no longer incorrectly discard the upper 16 bits, fixes the CD-ROM problems;
Significantly rewrote parts of the AHA-154x and BusLogic emulation, NT 3.1 RTM and MS-DOS drivers now works correctly;
The function in cdrom.c to read data blocks from the disc now correctly advances the position of the sector to read in non-passthrough mode, fixes multiblock reads from directly mounted ISO's;
Both ATAPI and SCSI now always check for Unit Attention and Not Ready on command execution.
2017-01-20 23:53:19 +01:00
OBattler
b613873ff3 Merge pull request #87 from Wack0/crash-dumps
Crash dump changes - try to create in 86Box.exe directory, try to include path of module where crash occurs
2017-01-20 23:45:47 +01:00
OBattler
2977ea8999 Merge pull request #88 from OBattler/revert-86-master
Revert "Fix compilation"
2017-01-20 23:42:16 +01:00
OBattler
5bac9b4ce0 Revert "Fix compilation" 2017-01-20 23:41:58 +01:00
OBattler
c6267cc4bd Merge pull request #86 from MoochMcGee/master
Fix compilation
2017-01-20 23:38:17 +01:00
slipstream/RoL
d9256b227b Crash dump changes
- Crash dumps now attempt to be created in the directory with 86Box.exe
- Crash dumps now attempt to find the full path + filename of the module
where the crash occured, and includes it if found
2017-01-20 12:16:58 +00:00