Commit Graph

80 Commits

Author SHA1 Message Date
OBattler
f30e048ad7 Moved the phase callback handler to hdc_ide.c, where it belongs, rather than in each SCSI(-like) device's code, and made it no longer used when a device's bus type is set to SCSI. 2018-10-31 12:23:49 +01:00
OBattler
5e5e1ed70e Slight fixes to Intel Flash, CD-ROM, and ZIP. 2018-10-30 15:17:48 +01:00
OBattler
3a8bd15b9d Extensive rework of SCSI and ATAPI devices and numerous bug fixes and cleanups;
Extensive rework of CD-ROM image handling;
The settings save code now forces some devices' (SCSI disk, CD-ROM, etc.) pointers to NULL before resetting the machine - fixes segmentation faults after changing settings;
Added the NCR 53c825A and 53c875 SCSI controllers;
Fixed IDE/ATAPI DMA;
Slight changed to PCI IDE bus master operation.
2018-10-30 13:32:25 +01:00
OBattler
e83167df1a Fixed mode sense loading mess (that was messing up the heap and destabilizing the emulator) in the ZIP, CD-ROM, and SCSI disk code. 2018-10-27 22:19:39 +02:00
OBattler
19e9a355fc Some ZIP fixes. 2018-10-27 03:43:25 +02:00
OBattler
af994f4198 A bug fix and the removal of the cdbufferb and zipbufferb macros. 2018-10-26 06:02:16 +02:00
OBattler
ef0b67d48c Clearly marked two deliberate fallthroughs in disk/zip.c and scsi/scsi_cdrom.c. 2018-10-26 05:07:03 +02:00
OBattler
473b71436d The scsi_cdrom[], zip[], and scsi_disk[] arrays are now gone. 2018-10-26 04:47:21 +02:00
OBattler
3870edf150 Fixed device chain loading (again) and ZIP and CD-ROM resetting. 2018-10-25 07:43:32 +02:00
OBattler
15db405697 Fixed Iomega ZIP drive initialization mess;
Fixed (hopefully) network status bar activity indication.
2018-10-19 19:10:12 +02:00
OBattler
cfc626f111 Change to logging - when logging is disabled, the logging functions are now #define'd to nothing, so the compiler ignores the lines that call them completely, seems to slightly speed up the emulator; note that the logging in vid_table.c has not been changed yet, because this file on my local tree currently contains other WIP changes. 2018-10-19 00:39:32 +02:00
OBattler
6155802b59 Split generic CD-ROM from SCSI-style CD-ROM;
Redid the way SCSI and ATAPI devices are handled;
Slight timings change in the NCR 5380;
Devices are now closed by device_close_all() in the reverse order of the one in which they were started;
Slight changes to some code in win/;
Added the WM_HARDRESET and WM_SHUTDOWN window messages for configuration manager purposes.
2018-10-10 22:33:24 +02:00
OBattler
6c7ff6b30a The REQUEST SENSE command now correctly returns as non-data if cdb[4] = 0. 2018-10-09 16:30:19 +02:00
OBattler
fd6cacc312 Fixed CD-ROM, ZIP, and SCSI disk changeable page arrays to correctly contain only 0's and 0xFF's in addition to page number and page length, and added descriptive #define's for the pages that did not yet have them. 2018-10-07 00:35:37 +02:00
OBattler
647d78e4c2 Removed a lot of useless #include's from a lot of files and reworked the SCSI #include's a bit to resolve the problem of scsi.h being a mess. 2018-10-02 22:54:28 +02:00
OBattler
f7ec97e862 Changed one local variable in a function in disk/zip.c to 32-bit. 2018-09-13 05:33:45 +02:00
OBattler
da440c30b5 Fixed all the signedness, non-constant initializer, and shadowed variable warnings in disk/zip.c and scsi/scsi_disk.c. 2018-09-12 19:46:26 +02:00
OBattler
950ce8f5aa Added the 3Com 3C503 Network card;
Several bug fixes;
Preliminar addition of the SDL 2 renderer (does not yet work correctly in full screen mode);
SCSI devices no longer have configurable LUN's (this matches the configurability of real SCSI devices);
SCSI LUN's are now handed by the device's handler;
Removed all unused strings;
Removed some unused code files;
Significantly rewrote the bus mouse emulation.
2018-07-15 01:41:53 +02:00
OBattler
a412ceb4d9 Applied all relevant PCem commits;
Extensively cleaned up and changed the CD-ROM code;
Removed CD-ROM IOCTTL (it was causing performance and stability issues);
Turned a lot of things into device_t's;
Added the PS/1 Model 2011 XTA and standalone XTA hard disk controllers, ported from Varcem;
Numerous FDC fixes for the PS/1 Model 2121;
NVR changes ported from Varcem;
The PCap code no longer requires libpcap to be compiled;
Numerous fixes to various SCSI controllers;
Updated NukedOPL to 1.8;
Fixes to OpenAL initialization and closing, should give less Audio issues now;
Revorked parts of the common (S)VGA code (also based on code from QEMU);
Removed the Removable SCSI hard disks (they were a never finished experiment so there was no need to keep them there);
Cleaned up the SCSI hard disk and Iomega ZIP code (but more cleanups of that are coming in the future);
In some occasions (IDE hard disks in multiple sector mode and SCSI hard disks) the status bar icon is no longer updated, should improve performance a bit;
Redid the way the tertiary and quaternary IDE controllers are configured (and they are now device_t's);
Extensively reworked the IDE code and fixed quite a few bugs;
Fixes to XT MFM, AT MFM, and AT ESDI code;
Some changes to XTIDE and MCA ESDI code;
Some fixes to the CD-ROM image handler.
2018-04-25 23:51:13 +02:00
OBattler
0f06407825 Applied the latest PCem commits. 2018-03-21 15:16:25 +01:00
OBattler
77817f9437 Disabled the Iomega ZIP logging. 2018-03-20 19:46:47 +01:00
OBattler
ab3cce21ee The Iomega ZIP sector access commands no longer read/write the data sector by sector (there was absolutely no need for that since that was done before ever asserting DRQ and was a left-over from the CD-ROM where it does that to make IOCTL happy);
The CD-ROM and Iomega ZIP drives now clear the error bit when the PACKET COMMAND command is issued, fixes the Iomega GUEST.EXE for DOS hang when run while the Iomega ZIP drive is empty.
2018-03-20 19:45:45 +01:00
OBattler
df746297c2 Several CD-ROM fixes. 2018-03-20 18:32:18 +01:00
OBattler
f87500ddbf IDE reset via PCI turbo reset control's hard reset function now only sets the signature for all IDE devices and clears the buffers;
The buffers are now memset'd to 0x00's on allocation;
The Iomega ZIP drive now issues an IRQ on receipt of the PACKET COMMAND command, fixes it on Windows 98 SE.
2018-03-20 16:04:09 +01:00
OBattler
b1efb99ed6 Applied a whole slew of patches, getting RAM usage down by a further 10 MB. 2018-03-19 01:02:04 +01:00
OBattler
a59dc8e436 CD-ROM code clean-ups, also reduces memory usage by a further about 2 MB. 2018-03-17 20:32:20 +01:00
OBattler
f8f889b72c Fixed a minor issue in hdc_ide.c;
Fixed SCSI DMA command termination in the CD-ROM and Iomega ZIP code.
2018-03-16 22:46:05 +01:00
OBattler
3b62e83315 Ported some IDE and ATAPI-related improvements from PCem;
Fixed the ATI 18800 emulation;
More tweaks to reduce RAM usage.
2018-03-15 22:57:24 +01:00
OBattler
16c722b32f Realistic CD-ROM timings on ATAPI PIO, ATAPI DMA, SCSI NCR 53c810, and SCSI Adaptec/Buslogic;
Added ability to select emulated CD-ROM drive speed;
The Adaptec and BusLogic SCSI controllers are no longer threaded;
Two fixes in video/vid_s3.c.
2018-03-07 20:06:08 +01:00
OBattler
22536d8d03 Fixed a mistake in floppy/fdd.c;
Fixed some undeclared variables in floppy/fdd_imd.c;
Moved zip.c/h to disk subfolder;
Fixed the warnings in video/vid_t1000.c.
2018-03-06 01:14:38 +01:00