Commit Graph

436 Commits

Author SHA1 Message Date
TC1995
4d5907eac6 T128 changes of the evening (March 9th, 2025)
1. More accurate speed without stalls.
2. Added more IRQ's for AT compatibles.
2025-03-09 20:32:44 +01:00
TC1995
a2534c1f4f Trantor T128/MediaVision SCSI changes of the day (March 8th, 2025)
1. Made as best as possible implementation of the status bits 1-2 of the Trantor 128 so to make a more accurate speed for SCSI devices (CD-ROM and HDD) without stalls.
2. Slightly reorganized the timer of the T128.
2025-03-08 14:41:59 +01:00
TC1995
63c5b6003f Spock/Tribble changes of the day (March 8th, 2025)
1. Make IRQ's more correct and per manual.
2. Only an adapter reset command should reset the SCSI devices connected to it.
3. Differentiate the two controllers by the connector bit (pos3 bit 12) in the CMD GET POS INFO SCB command.
4. Actually emulate bit 7 of pos4 in the pos writes so that selection between 16KB and 32KB rom loading is done properly.
5. Some cleanups.
2025-03-08 14:29:13 +01:00
TC1995
265152db75 NCR 53c400: slightly more accurate speed.
See above.
2025-03-07 19:58:36 +01:00
Cacodemon345
74368bfe7a Don't include cpu.h in timer.h
Change the name of the define used to indicate SVGA multi-monitor-capable cards
2025-03-06 19:26:11 +06:00
Jasmine Iwanek
62444f3da0 Devices supported on PCjr
PC Enterprises GameMaster, Resound jr (adlib)

MS Booster/PC Enterprises jrBus-Mouse, PC Enterprises GameMaster (bus mouse)

Various (generic) RTC

Corel LS2000 SCSI
2025-02-21 16:41:41 -05:00
TC1995
67c02a5361 Spock/Tribble (IBM PS/2 SCSI) changes of the late night (February 21st, 2025)
1. Made logs more consistent.
2. Actually add Write and Verify command, used by IBM OS/2 1.2 Extended, and fixes a hang by said OS after inserting disk 6.
2025-02-21 00:32:15 +01:00
OBattler
2c197000ea Removed the legacy #defines in device.h. 2025-02-14 07:39:21 +01:00
Jasmine Iwanek
109a913bf5 Remove duplicate .close in scsi_t228_device 2025-02-11 12:02:47 -05:00
Jasmine Iwanek
d5d1d5c449 More cleanups to device structs 2025-02-08 01:28:25 -05:00
OBattler
35a12e0826 CD-ROM: IOCTL now detects medium changes without having to read the host drive's TOC on every operation, improves performance. 2025-02-03 10:57:19 +01:00
Jasmine Iwanek
5f273265ae Assorted warning fixes 2025-02-02 03:24:50 -05:00
Jasmine Iwanek
4e6f29a7d5 malloc to calloc 2025-02-01 15:38:36 -05:00
Jasmine Iwanek
81b8038bc5 Clean up .available & .poll 2025-02-01 03:38:52 -05:00
OBattler
e11b5535e1 Fixed some CD-ROM commands not stopping audio play when they should have (fixes data playing as audio, producing nasty artifacts, in some games), and increased the media history for all drive types from 4 to 10, also refactored cdrom_read_sector() and moved the last module-wide variables into the cdrom_t struct. 2025-01-30 08:15:39 +01:00
OBattler
90e1190c92 The great CD-ROM clean-up and rewrite, fixes #5134. 2025-01-28 16:26:28 +01:00
TC1995
9af10bdac3 More changes to the 5380 chips (January 26th, 2025)
Apparently the Trantor T130B SCSI controllers has a different way of calculating the timings and removed the scsi_bus_read() calls from the Current SCSI bus status port (Read Port+4).
Fixes NT using said controller as well as CD swapping while maintaining the correct accurate CD speed.
2025-01-26 15:42:03 +01:00
TC1995
4008010131 Big SCSI bus update of the day, NCR 5380 too (January 20th, 2025)
1. Separate the SCSI bus functions from NCR 5380 into true general purpose SCSI bus functions, allowing use of future legacy scsi controllers.
2. Corrected NCR 5380 chip period for the SCSI controllers based on that chip so that CD-ROM speed is correct enough per speed tests and no more breakage (I hope, report if they are still there, please!) on desyncs.
3. A NCR 5380 software reset involves asserting an IRQ.
2025-01-20 19:55:18 +01:00
MaxwellS04
2a16c3cea6 Added other five models I have forgotten
Also changed the HL-DT-ST CD-ROM to reflect the model revision.
2025-01-15 16:42:13 +07:00
MaxwellS04
72571d6211 Added other two models (1x DVD/1x CD)
Also updated the revision on CRN-8245B
2025-01-15 14:26:31 +07:00
MaxwellS04
7bc89f6feb Added a plenty of IDE CD-ROM models
-Added other four ATA-3 models
-Corrections to Western Digital pre-ATA-4 HDD models
2025-01-15 07:13:21 +07:00
unreal9010
514abd4abd Update scsi_cdrom.c 2025-01-14 17:42:49 +01:00
unreal9010
68a8392baf Add TEAC CD-532E (32X)/NEC CDR-1900A (32X) 2025-01-14 17:31:21 +01:00
TC1995
c9985798d3 Remove excess logs. 2025-01-13 22:04:29 +01:00
TC1995
29ec9fa9ba More NCR53c400 fixes (January 13th, 2025)
Getting on my nerves, NCR 5380...
2025-01-13 21:10:12 +01:00
TC1995
be878ede58 Okay, maybe for the 53c400 only so.
Based on my tests, the former 5380 commit will apply to the 53c400 only, for now...
2025-01-13 00:56:04 +01:00
TC1995
8dc456cce5 NCR 5380-based changes of the day (January 12, 2025)
1. Sanity check for the SCSI temp_buffer if it's allocated or not.
2. Data reads and writes in non-DMA mode should be accessible only when DMA mode is Idle (as in, no DMA at all, whereas DMA mode will go to the SCSI controllers' callbacks).
2025-01-12 20:37:50 +01:00
Jasmine Iwanek
fabe71150c Various improvements & Cleanups
Some ported from ANightly's work
2025-01-11 21:25:29 -05:00
TC1995
738b80f1ab And DC390 for today.
Restore the old way of identifying the chip id in the DC390. Fixes NT 4.0 booting from CD-ROM using said SCSI controller when its BIOS is enabled.
2025-01-09 23:47:30 +01:00
OBattler
c3faf20226 AHA-1542CP and ISA PnP memory range fixes, fixes AHA-1542CP on Packard Bell PB450. 2025-01-07 02:42:09 +01:00
TC1995
cc73c0efe4 Late day changes (January 2nd, 2025)
Actually recognize the Trantor 228 MCA SCSI controller as such (bit 3 of status is for the PS/2 MCA bus type of the 128 controller)
2025-01-02 23:49:50 +01:00
TC1995
104e83de1b Some changes on the PCSCSI code of the new year (January 1st, 2025)
1. Too many soft resets should not reset the SCSI layer, fixes CD Audio on the 53c90a MCA controller used by guests.
2. Implemented preliminary MDL S/G mode for the PCSCSI side.
3. The underflow DMA function is no longer needed as it now SCSI transfers on the 53c90a MCA controller works properly.
4. Minor corrections to the PCI side (mainly the revision).
5. The DMA 86c01 side of the MCA 53c90a controller is more polished now, should fix some more bugs.
2025-01-01 21:20:33 +01:00
TC1995
e0daf34629 SCSI CD-ROM change of the day (December 31st, 2024)
Added undocumented 0xC5 NEC SCSI-2 CD-ROM command (most likely a no op command like 0x0D).
2024-12-31 21:29:59 +01:00
OBattler
7b6a9181c6 Current state of the CD-ROM node - no CUE/BIN overhaul or MDS/MDF support yet, but the rest is already there. 2024-12-31 04:37:21 +01:00
TC1995
4c0eb39729 Spock changes of the day (November 13th, 2024)
1. The SCSI ID is now more correct about about the difference between physical unit number and actual SCSI ID. This should fix boot freezes on NT 1991 builds for x86 using said card, as well as keeping compatibility the same as before.
2024-11-13 23:34:31 +01:00
OBattler
61a88eea02 Enable Boot ROM -> Enable BIOS. 2024-11-10 05:09:45 +01:00
OBattler
6d7e11c620 WD8003 and AHA-154x: address -> Address. 2024-11-10 02:51:18 +01:00
OBattler
d6cd357202 BIOS Version -> BIOS Revision. 2024-11-10 02:47:59 +01:00
OBattler
b2258f4ae7 BIOS -> BIOS Revision. 2024-11-10 02:45:38 +01:00
OBattler
fbc21cdf49 DMA channel -> DMA. 2024-11-10 02:42:01 +01:00
RichardG867
7b786a98fa scsi_disk: Report image read/write errors 2024-10-29 12:13:04 -03:00
RichardG867
451ece0074 scsi_cdrom: Fix reporting of read errors on ATAPI drives 2024-10-28 19:57:26 -03:00
richardg867
b0e8647753 scsi_cdrom: Remove debug logging 2024-10-27 14:10:28 -03:00
RichardG867
aeaaa09b16 CD-ROM: Report image backend I/O errors as media CRC errors to the drive 2024-10-27 13:17:55 -03:00
OBattler
5234446194 CD-ROM: Remove excess logging. 2024-09-18 19:57:58 +02:00
Jasmine Iwanek
f4b63caf0b One line per file in CmakeLists.txt 2024-09-04 18:34:06 -04:00
OBattler
547ae9ad6a Make GET_CONFIGURATION results more consistent with the capabilities page. 2024-09-02 06:48:07 +02:00
OBattler
09a6aab21a More CD-ROM fixes, fixes Johnny Bazookatone. 2024-09-02 06:32:28 +02:00
OBattler
252c3034af Reworked the unit attention workaround, fixes #4770. 2024-08-30 00:57:18 +02:00
OBattler
dd2bbf3cd3 CD-ROM: Make sure the initial unit attention condition is not treated as an inserted empty drive phase. 2024-08-29 20:47:44 +02:00