Commit Graph

1395 Commits

Author SHA1 Message Date
Maxim Poliakovski 20dfe798ac scsicommoncmds: implement generic MODE SENSE. 2026-02-23 03:12:59 +01:00
Maxim Poliakovski 1a8d691777 scsi.h: more mode sense page codes. 2026-02-23 01:48:09 +01:00
Maxim Poliakovski 34b4d6387d blockstoragedevice: clean up and add write support. 2026-02-23 01:09:23 +01:00
Maxim Poliakovski 9ca3e5e870 scsiphysinterface.h: more callbacks. 2026-02-23 00:40:56 +01:00
Maxim Poliakovski 0d25f6dc33 scsi.h: rename READ_CAPACITY_10 to READ_CAPACITY. 2026-02-22 23:48:28 +01:00
Maxim Poliakovski 2735449c75 scsiphysdevice: fix send_data() again to support big transfers. 2026-02-22 22:23:03 +01:00
Maxim Poliakovski 345bcf8a73 scsiphysdevice: remove prepare_data method.
Clean up and simplify buffer setup for various
data transfer phases.
2026-02-19 02:42:59 +01:00
Maxim Poliakovski 6e18241be6 scsiphysinterface: add set_buffer method. 2026-02-19 02:33:29 +01:00
Maxim Poliakovski a9fcde836c Replace get_more_data method with a callback. 2026-02-17 16:06:00 +01:00
Maxim Poliakovski b52a7bebbc scsiphysdevice.cpp: improve send_data() method. 2026-02-17 16:06:00 +01:00
Maxim Poliakovski 6033f75521 scsicommoncmds: minor fixes. 2026-02-15 21:15:50 +01:00
Maxim Poliakovski 2ea8fee204 blockstoragedevice: switch parameter for set_fpos to uint64_t. 2026-02-15 21:15:50 +01:00
Maxim Poliakovski 25a5f193ba blockstoragedevice: assign default value to the 2nd param of read_begin. 2026-02-15 21:15:50 +01:00
Maxim Poliakovski cbff26539a scsi.h: add constants for page control in MODE SENSE. 2026-02-12 01:23:00 +01:00
Maxim Poliakovski 8a280f71ab Move page numbers for MODE SENSE to scsi.h 2026-02-12 01:06:34 +01:00
joevt b182e01218 viacuda: Avoid float in VIA timer calculations.
- float is limited to 24 bits so use longer uint32_t or uint64_t.
- Rename the formal parameter so it more closely matches the actual
  parameter. Also, don't hide the class field.
- Multiply is faster than divide.
2026-02-07 20:51:48 -07:00
Maxim Poliakovski 200a2aa9a7 Move SCSI devices to new architecture.
That implies a clear separation between implementation
of the SCSI commands and the physical device layer.
2026-02-08 02:38:02 +01:00
Maxim Poliakovski 470c9a32f5 Implement common SCSI commands in a separate class. 2026-02-08 02:22:23 +01:00
Maxim Poliakovski 44343ad591 New interface for physical SCSI/ATAPI layer abstraction. 2026-02-08 02:22:23 +01:00
Maxim Poliakovski 022d5e4e00 scsi.h: add enum for device capabilities. 2026-02-07 03:00:09 +01:00
Maxim Poliakovski 3dde616c57 scsihd.h: add missing overrides. 2026-02-06 21:57:51 +01:00
Maxim Poliakovski b82dae7ad6 scsihd: remove unused send_diagnostic() stub. 2026-02-04 19:15:37 +01:00
Maxim Poliakovski 924cc5ed97 scsi.h: remove definitions for vendor specific commands. 2026-02-04 18:52:01 +01:00
Maxim Poliakovski 0570513ff1 scsicdrom: remove vendor specific commands. 2026-02-04 18:52:01 +01:00
Maxim Poliakovski fd8d89b711 scsi.h: set subtype for ScsiSense and ScsiError to uint8_t. 2026-02-04 17:58:55 +01:00
Maxim Poliakovski 17f13e8eb3 scsiphysdevice: cleanup logging. 2026-02-04 16:35:32 +01:00
Maxim Poliakovski 8e9ee07e9b Rename ScsiDevice to ScsiPhysDevice. 2026-02-04 15:47:05 +01:00
dingusdev 129c5053f6 Improve ADB keyboard emulation
Co-Authored-By: joevt <950609+joevt@users.noreply.github.com>
2026-02-04 07:21:44 -07:00
Cacodemon345 7abc8afc97 atirage: Remove more redundant code 2026-02-04 17:23:41 +06:00
Cacodemon345 4c3989fa13 atirage: Remove unreachable logging for auxiliary aperture 2026-02-04 17:19:08 +06:00
Cacodemon345 6a3654e851 atirage: Implement reads/writes from the auxiliary aperture 2026-02-04 16:56:19 +06:00
Cacodemon345 7c29e41fae atirage: Definitions for auxiliary register aperture 2026-02-04 16:47:57 +06:00
Maxim Poliakovski 7e07919d7c scsi.h: add device types enum. 2026-02-01 02:10:08 +01:00
Maxim Poliakovski 7d4ebf5bf1 Fix spelling. 2026-02-01 02:10:08 +01:00
Maxim Poliakovski 0fee0a5270 control: reduce logging noise.
Mac OS 7.5.5 accesses the monitor sense register many times.
This causes a huge amount of pointless log messages.
This commit changes priority of the log messages
for the monitor sense registers so none will be displayed
by default.
2026-01-31 15:11:12 +01:00
dingusdev 213dd4c16e Update copyright info further 2026-01-30 08:12:04 -07:00
joevt 489bd0dfcf viacuda: Fix append_data. 2026-01-30 07:06:03 -07:00
Maxim Poliakovski e75ee8d32a Update copyright year. 2026-01-30 12:15:00 +01:00
Maxim Poliakovski c2df2e4ad2 sc53c94: fix int_status for CMD_COMPLETE_STEPS.
No known manual specifies interrupt status for COMPLETE_STEPS.
MkLinux DR3 expects that int_status contains INTSTAT_SO after
this command.
2026-01-25 03:32:28 +01:00
Maxim Poliakovski df36ad8369 scsihd: temporarily fix req_sense(). 2026-01-25 03:01:10 +01:00
Maxim Poliakovski ad2abf4433 scsi.h: initialize REQ_SENSE state in ScsiDevice. 2026-01-25 03:01:10 +01:00
Maxim Poliakovski 5883b39c2b viacuda: disable async packets during Sync transaction. 2026-01-23 02:12:44 +01:00
Maxim Poliakovski 1b7338960f viacuda: fix typo. 2026-01-22 15:21:13 +01:00
joevt d693b0f443 maciotwo: Fix IDE read/write mask again.
Use the entire 4K range.
2026-01-20 07:07:11 -07:00
joevt 5c646e8270 maciotwo: Add methods to override OHARE_ID ids. 2026-01-17 08:40:45 -07:00
joevt 65c5d2425e maciotwo: Fix IDE read/write mask. 2026-01-17 07:02:06 -07:00
joevt f2676e0324 maciotwo: Make Ide1 optional.
Some Macs that use OHare do not have a second ATA bus exposed by Open
Firmware. Allow Ide1 to not be included.

# Conflicts:
#	devices/ioctrl/maciotwo.cpp
2026-01-17 06:54:44 -07:00
dingusdev 48adf99690 Documentation cleanup 2026-01-15 07:39:59 -07:00
joevt 3c0432053b atadefs: Add KeyLargo ATA interrupt register note. 2026-01-15 07:37:17 -07:00
joevt ebc2fcf216 atabasedevice: Add missing this. 2026-01-15 07:36:52 -07:00