Commit Graph

375 Commits

Author SHA1 Message Date
OBattler
7c74a977fa There goes the legacy host_drive. 2024-05-20 02:15:17 +02:00
OBattler
641da43f15 IOCTL and CD-ROM changes. 2024-05-19 21:17:57 +02:00
TC1995
1856696cd2 Warning fix 2024-05-13 01:02:27 +02:00
TC1995
4e67a4fdd3 DMA speed fixes in place on the 53c400.
See above, so that the CD-ROM speed is accurate enough on both ends (T13B and the MMIO variants) and, at the same time, not timing out abnormally.
2024-05-13 00:57:53 +02:00
OBattler
71c16a4481 Remove the previous kludge and #define BUS_ACK to 0x100 so it's different from BUS_ATN. 2024-05-06 13:24:04 +02:00
OBattler
4c84cccae7 The Pro Audio Spectrum SCSI controller is now based on the Trantor T128 (which it is considerable closer to), rather than on the 53c400. 2024-05-06 13:09:08 +02:00
OBattler
907daed3b1 Removed a commented out section from scsi/scsi.c. 2024-05-03 19:01:33 +02:00
OBattler
2acb11d37c Implemented the Pro Audio Spectrum Plus serial mixer, Pro Audio Spectrum 16 parallel mixer, Pro Audio Spectrum Plus/16 SCSI, ESS ES688, all three ESS PnP AudioDrives, made the wavetables use a separate 44.1 kHz source, and made the Sound Blaster 16 PNP use a proper PNP ROM dump. 2024-05-03 17:02:13 +02:00
TC1995
20277f7090 Workaround to prevent timeouts with the T130B driver on NT 3.1.
And more logging cleanups.
This should make the T130B driver for NT 3.1 work normally, at least.
2024-04-26 22:05:54 +02:00
OBattler
15ad2c1992 NCR 53c8xx: Set correct SCSI speeds. 2024-04-23 03:19:24 +02:00
OBattler
10fd8fb004 Assorted CD-ROM fixes, fixes #4386. 2024-04-22 02:04:57 +02:00
TC1995
da1ededb93 SCSI CD-ROM and 5380 fixes.
CD-ROM side: fixed a mode sense page (0x08 Sony, used by both Sony and Texel drives) as well as corrected the Toshiba specific drive speeds (bytes_per_second).
NCR 5380 side: split the work into the generic 5380 core and the ASICs into separate sources (53c400 and T128) and added the T228 MCA adapter based on the 128.
2024-04-10 17:27:30 +02:00
OBattler
e1180a77df NCR 53c8xx: Implement the readout of SODL via SBDL when STEST2 bit 7 is set, v3.04 BIOS'es now work. 2024-03-14 01:06:12 +01:00
OBattler
27734a8728 AHA-1542CP: Return the correct firmware checksum. 2024-03-09 00:42:13 +01:00
OBattler
50d7340d01 Added the 1.02 German and 1.03 English versions of the AHA-1542CP BIOS. 2024-03-08 23:11:35 +01:00
OBattler
89cc2a3956 NEC CD-ROM: Make command DAh not also set speed. 2024-02-07 20:45:45 +01:00
TC1995
0d88e8394c SCSI CD-ROM fixes of the day.
1.Re-implemented in the best way possible the muted part of the Toshiba/NEC Play Audio commands and related, per spec.
2. Forgot to add a check to a Sony Vendor Data Out command  when the len is 0 it should become a Status command, fixes emulator crashes when len is 0 using some CD software.
2024-02-06 21:18:25 +01:00
TC1995
ad9503ec28 More fixes to the 5380-based core.
More timer related fixes regarding the speed combinations, looking at you, Rancho (8.10R and 8.20R), but at least it should solve most problems with boots.
2024-02-06 21:09:38 +01:00
TC1995
f582e97168 Refactor 5380-based SCSI controllers
This should fix more timing issues with said SCSI controllers in various CPU/HDD/CD-ROM speeds.
2024-02-03 22:30:14 +01:00
TC1995
a4dcd74216 Small 5380 SCSI improvements.
1. The chip in question now supports the right command length for vendor unique commands, fixes crashes that use said commands.
2. Made the CD speed of said chip even closer to the real thing.
2024-01-03 23:42:24 +01:00
TC1995
127c00b22e NCR 53c9x MCA small improvements.
1. Changed the MCA ID of said adapter to one that is add-on based rather than integrated (still no bios though).
2. Fixed the DMA/IRQ stuff of the 86c01 DMA side of the card.
2024-01-03 23:22:05 +01:00
OBattler
0265b34384 1x CD-ROM speed is 176400 bytes per second, not 176 * 1024 bytes per second. 2023-12-30 19:40:05 +01:00
OBattler
137581c080 Fix for CD-ROM timings - seek times are no longer always calculated as if it was seeking from sector 0. 2023-12-28 18:42:16 +01:00
OBattler
c255bd5161 Attempted fix for SCSI disk seek timings. 2023-12-28 18:34:35 +01:00
OBattler
ac63ea6614 Commented out excess logging in scsi/scsi_disk.c. 2023-12-06 16:06:40 +01:00
OBattler
52470d4910 Fixed an off by 1 error in scsi/scsi_disk.c, fixes NetBSD 7 hang when probing a SCSI hard disk. 2023-12-06 16:05:43 +01:00
RichardG867
9bcece63fc Fix some random comments which have been bugging me 2023-11-10 17:27:30 -03:00
OBattler
2a5a8f7431 Assorted IDE fixes and the PCI IDE bus master now also resets ATAPI hard disks. 2023-11-03 05:54:30 +01:00
OBattler
40d724cf20 Fixed SCSI/ATAPI hard disk timings and IDE hard disk recalibrate command timing. 2023-10-30 04:48:29 +01:00
OBattler
4a951afe3f Implemented hard disk speeds for SCSI. 2023-10-30 03:36:23 +01:00
OBattler
d2713cb7ca Merge branch 'master' of https://github.com/86Box/86Box 2023-10-28 22:00:35 +02:00
OBattler
b474e3d056 Massive IDE clean-ups, and finally implemented ATAPI hard disks. 2023-10-28 22:00:23 +02:00
TC1995
961a2483ad SCSI CD-ROM fixes (NEC):
1. Added Mode Page Codes 0x00 and 0x03 (Unit Attention and Format Device) to the SCSI CD-ROM code.
2. Corrected the Read Disc Information TOC (actually Read TOC vendor unique) for NEC SCSI CD-ROMs, this, together with the fix above, fixes reading data cd-rom's using NEC vendor commands.
3. Actually identify NEC drives per manual (SCSI unknown version per the -75 and -77 manuals).
4. Re-added the 75 and 77 drives now that the NEC vendor commands are fine + an extra 25a drive with revision 1.0a (from a screenshot from vogons).
2023-10-24 20:15:08 +02:00
OBattler
7013949310 Made sure the dummy "None"/"Internal" devices never get initialized and fixed some PCI AGP bridge mess (including AGP-less 440BX/ZX/GX erroneously initializing the 440LX/EX AGP bridge), fixes #3696. 2023-10-14 06:45:45 +02:00
OBattler
5a75ce9bf2 Re-added the BIOS-less option of the Trantor T128b, this time with added sanity checks to avoid crashes, fixes #3742. 2023-10-11 18:18:02 +02:00
OBattler
209c8fbbda Assorted CD-ROM fixes (now cue sheets starting at a non-zero sector work correctly) and increased the maximum number of CD-ROM drives to 8. 2023-10-04 02:49:22 +02:00
TC1995
f104653312 Forgot one more change:
Actually make the Adaptec AHA-154xC/CF/CP and possibly the 1640 one (TBD in real hardware) signature aware.
2023-09-30 22:14:30 +02:00
TC1995
6802c0593b Video, Storage and MCA changes/fixes.
1. Cirrus Logic GD54xx, Paradise/WD VGA now reset the interlace once a text mode is issued if not done automatically.
2. Paradise/WD's 15/16bpp modes using the 800x600 resolution now have the correct ma_latch, should fix most operating systems drivers using this combo.
3. More fixes (hopefully) to the accelerated pitch and rowoffset of the Trident TGUI cards (9440AGi and 96x0XGi), should fix issues with delayed displays mode changes under various operating systems (e.g.: Win3.1x).
4. Preliminary implementation of the Area Fill command of XGA, which is issued while using various painting and/or calc utilities on Win3.1x (IBM XGA updated drivers, e.g.: 2.12).
5. Preliminary (and incomplete) 4bpp XGA mode.
6. The XGA memory test for the 0xa5 using writes (used by various operating systems) no longer conflicts with DOS' XGAKIT's memory detection.
7. Small ROP fixes to both XGA and 8514/A.
8. Re-organized the mapping of the Mach32 chipset, especially when to enable the ATI mode or switching back to IBM mode, should fix LFB conflicts with various operating systems.
9. According to The OS/2 Museum, the Adaptec AHA-154xB series of SCSI cards fail the ASPI4DOS.SYS 3.36 signature check, so now make the changes accordingly.
10. Remove useless and crashy bios-less option of the Trantor T128.
11. The Image Manager 1024 card can also be used on a XT (although only if it has a V20/V30).
12. Re-organized the IBM PS/2 model 60 initialization as well as its right POS machine ID (though an update to sc.exe is still required for the POST memory amount to work normally).
2023-09-30 22:08:08 +02:00
TC1995
f30c71ed3b SCSI changes 2:
Replaced the string comparisons with proper drive types comparisons without strings.
2023-09-24 07:44:25 +02:00
TC1995
45ecdf37de SCSI corrections:
1. Changed the p's back to priv's.
2. Made the Spock/Tribble cards use picint instead of picintlevel.
3. Corrected fallthroughs and a minor change in the SCSI CD-ROM code core.
2023-09-20 23:14:00 +02:00
TC1995
7c6381b2ea SCSI changes and fixes:
1. Added the Tribble 16-bit IBM SCSI adapter.
2. Reworked the vendor unique commands to counter audio issues as well as adding some undocumented commands (thanks to the source code of xmcd!), plus replacing the NEC CD-ROM DRIVE:75 with the :38 one.
2023-09-20 20:29:32 +02:00
OBattler
4f12485bcc Fixed includes in scsi/scsi_disk.c. 2023-08-24 01:12:27 +02:00
OBattler
84ad199b68 Fixed headers in scsi/scsi_buslogic.c. 2023-08-24 01:11:48 +02:00
OBattler
aee88dcb52 Fixed headers in scsi/scsi_cdrom.c. 2023-08-24 01:11:10 +02:00
OBattler
937589b6e3 Unmarked fallthroughs: scsi. 2023-08-24 01:05:45 +02:00
TC1995
971e61db58 Change the NEC CD-ROM DRIVE:74 to 75 due to the former being buggy on NT. 2023-08-23 20:52:02 +02:00
Jasmine Iwanek
d32a3914da More linting in src/scsi 2023-08-23 00:18:15 -04:00
OBattler
6c4a4be6be Timer clean-ups. 2023-08-19 05:26:49 +02:00
Jasmine Iwanek
81bb5e564b Better fallthrough annotation macro. 2023-08-09 20:09:36 -04:00
OBattler
c30d5d90b7 PCI and IRQ rework, pci.c rewritten from ground up, fixes numerous issues such as the bridge being added when the number of normal PCI devices equals the number of normal PCI slots, Windows 95 PCI operation on Intel 430NX, sharing of PCI IRQ's with non-PCI level-triggered devices, having both configuration mechanisms operating at the same time (ALi M1435), etc., and makes the code much more readable. 2023-08-07 03:04:52 +02:00