Commit Graph

363 Commits

Author SHA1 Message Date
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
Jasmine Iwanek
d2f42198fd Fix clang build failure 2023-07-26 12:41:18 -04:00
Jasmine Iwanek
998cfe5cc8 Constification 2023-07-25 17:59:24 -04:00
Jasmine Iwanek
db66543959 Apple build fix 2023-07-25 17:59:22 -04:00
Jasmine Iwanek
ee695e71f9 More sonarlint work 2023-07-25 17:59:22 -04:00
Jasmine Iwanek
54c52fb55c Fix several instances of uninitialized variables. 2023-07-21 13:46:08 -04:00
TC1995
81918a19d1 SCSI CD-ROM: some vendor specific commands for Toshiba and others now have more correct speed.
PCSCSI PCI: re-implemented SCSI bus reset.
2023-07-14 21:05:22 +02:00
Jasmine Iwanek
21adfd4d50 Next round of sonarlint cleanups 2023-06-26 18:28:13 -04:00
Jasmine Iwanek
ed1b369abd Yet more sonarlint fixes 2023-05-29 06:21:17 -04:00
OBattler
33fe084cba Fixed overflow when x54x SCSI controllers read a 24-bit scatter/gather entry. 2023-04-02 16:36:40 +02:00
Jasmine Iwanek
610401de7a Yet more clang-formatting 2023-02-28 23:53:57 -05:00
TC1995
9ceec90d79 Added more ATAPI CD-ROM types (including the NEC CDR-273 4.20 drive used to be there at some point) and removed some non-working types. 2023-02-07 21:17:14 +01:00
OBattler
db55912a63 Fixed another warning in scsi/scsi_cdrom.c. 2023-01-10 04:11:01 +01:00