OBattler
1a33a2bd09
CD-ROM: Ignore zero-length pages on MODE SELECT, and also stop properly on error.
...
TODO: Apply to SCSI Disk, ZIP, and MO as well.
2025-02-13 19:47:21 +01:00
OBattler
4221b72059
Commented out some logging stuff.
2025-02-13 04:28:52 +01:00
OBattler
8a66dbef37
Fixed ATAPI PIO operation and ATAPI DMA timings.
2025-02-13 04:28:05 +01:00
OBattler
9a1ae5997f
Fixed ATAPI transfer split by sectors and improved the performance of IOCTL by making it no longer constantly open and close the handle.
2025-02-13 01:44:10 +01:00
OBattler
1168d2d002
Merge remote-tracking branch 'origin/master' into cdrom_changes
2025-02-12 03:21:41 +01:00
Jasmine Iwanek
109a913bf5
Remove duplicate .close in scsi_t228_device
2025-02-11 12:02:47 -05:00
OBattler
ae597c2e46
Reverted the dark mode forcing and reveted CD-ROM to old behavior if bus is SCSI, because it turns out the changes are not even needed on SCSI.
2025-02-10 05:31:29 +01:00
OBattler
74e0408201
Current WIP CD-ROM changes.
2025-02-09 20:06:15 +01: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
OBattler
d5b0fd18aa
CD-ROM disc changes without eject now insert one simulated empty drive state, fixes #4768 .
2024-08-29 05:52:12 +02:00