Commit Graph

881 Commits

Author SHA1 Message Date
Maxim Poliakovski 2b6716be5c mesh: arbitration and selection commands. 2023-01-26 00:34:17 +01:00
Maxim Poliakovski 449cc96612 Basic MESH emulation. 2023-01-25 20:58:30 +01:00
Maxim Poliakovski bcd443779a machinegossamer: add internal SCSI bus. 2023-01-25 20:56:51 +01:00
Maxim Poliakovski 6b6e92d3d9 scsi: change positions of SEL, BSY and RST bits.
New positions match better MESH internal bits.
2023-01-25 20:53:34 +01:00
Maxim Poliakovski a189c94980 scsihd: fix READ_CAPACITY_10 command.
Also bump internal buffer size to 2 MB
to temporarily fix buffer overflows.
2022-12-14 16:14:53 +01:00
Maxim Poliakovski dee225ee8f atabasedevice: add ATAPI signature at device reset. 2022-12-12 15:07:19 +01:00
Maxim Poliakovski 52bb87b72a Improve ATA interface. 2022-12-12 02:36:56 +01:00
dingusdev 0dd9a3d9b1 Further ATA cmd work 2022-12-11 16:08:43 -07:00
Maxim Poliakovski 86b0174b13 Fix previous. 2022-12-09 01:07:08 +01:00
Maxim Poliakovski daf3ecde4e More ATA interface cleanup. 2022-12-09 01:03:09 +01:00
dingusdev 1e9ec5d7ae Start ATA command support 2022-12-08 15:29:04 -07:00
Maxim Poliakovski 2537751fa7 Clean up ATA interface. 2022-12-08 08:04:09 +01:00
Maxim Poliakovski df1a56305a atabasedevice: rework task file registers. 2022-12-08 00:16:10 +01:00
Maxim Poliakovski 6173a782f2 Implement ATA hard disk stub. 2022-12-07 23:36:56 +01:00
Maxim Poliakovski a892842b8f Refactor ATA/IDE classes. 2022-12-07 22:36:25 +01:00
dingusdev 58908621e6 IDE refinements 2022-12-05 08:42:51 -07:00
dingusdev 311538b81d Fix IDE functionality 2022-11-26 21:34:54 -07:00
dingusdev a58ce8aeb3 Slight tweak to lscbx 2022-11-15 08:01:57 -07:00
dingusdev 8f99510af0 Fixed lscbx 2022-11-15 07:40:37 -07:00
Maxim Poliakovski 13684f7c0b scsicdrom: implement READ_CAPACITY_10 command. 2022-11-14 02:08:05 +01:00
Maxim Poliakovski 5f0358a347 Implement basic SCSI CD-ROM emulation. 2022-11-14 00:55:05 +01:00
dingusdev 647ae456e5 Slight typo squash for lscbx 2022-11-12 20:18:33 -07:00
dingusdev 1b7ff084ab Cleaned lscbx 2022-11-12 20:17:04 -07:00
dingusdev 1ed6e25d1b Removed redundant variable
Slight clean-up for lswi and lswx
2022-11-12 20:16:29 -07:00
Maxim Poliakovski db17e19699 scsi_hd: cosmetic improvements. 2022-11-10 18:22:44 +01:00
Maxim Poliakovski 3de89eaaf7 Silence SCSI logging messages. 2022-11-08 00:33:38 +01:00
Maxim Poliakovski d50152dd1a scsi_hd: clean up TEST UNIT READY command. 2022-11-08 00:32:45 +01:00
Maxim Poliakovski 2f02ea4276 sc53c94: release ATN line after MESSAGE_OUT. 2022-11-08 00:30:19 +01:00
Maxim Poliakovski b2ef809de1 scsi_hd: fix write command. 2022-11-07 22:04:02 +01:00
Maxim Poliakovski c87fc10376 amic: implement SCSI DMA. 2022-11-07 21:56:27 +01:00
Maxim Poliakovski a00b87790b sc3c94: implement real DMA. 2022-11-07 12:34:55 +01:00
Maxim Poliakovski ca5f81417f sc53c94: refactor state machine. 2022-11-07 12:34:42 +01:00
Maxim Poliakovski 40a02cc0f7 scsidevice: refactor states. 2022-11-07 12:24:02 +01:00
Maxim Poliakovski 49331635b2 scsi_hd: determine image file size with stat(). 2022-11-07 12:15:08 +01:00
Maxim Poliakovski 0c4da80c93 sc53c94: small cosmetic fixes. 2022-11-02 23:23:37 +01:00
Maxim Poliakovski 7bc4b8840a scsi_bus: fix device selection bug. 2022-11-02 23:21:46 +01:00
Maxim Poliakovski 5a59b97257 Sc53C94: implement cycle completion commands. 2022-11-02 22:28:43 +01:00
Maxim Poliakovski 5a33fba75e ScsiDevice: command completion states. 2022-11-02 21:28:30 +01:00
Maxim Poliakovski 0c74ebbc45 scsi_bus: support status and message in. 2022-11-02 21:27:18 +01:00
Maxim Poliakovski 2865a611e7 Sc53C94: implement reading the FIFO register. 2022-11-02 21:19:31 +01:00
Maxim Poliakovski f2be286515 scsi_bus: fix asserting control lines. 2022-11-01 02:52:30 +01:00
Maxim Poliakovski 2c3a5c3b8f Sc53C94: reading current transfer count. 2022-11-01 02:12:09 +01:00
Maxim Poliakovski c54c1cdb65 Sc53C94: improve status register. 2022-11-01 02:11:06 +01:00
Maxim Poliakovski 8abefb8f8d machinepdm: properly insert SCSI hard disk image.
Skip SCSI hard disk registration if no disk image was given.
2022-11-01 01:17:50 +01:00
Maxim Poliakovski 6ffe28a8a4 Implement SCSI Pseudo-DMA register on PDM. 2022-11-01 01:17:50 +01:00
Maxim Poliakovski 7ab44886c4 Sc53C94: implement information transfer command. 2022-11-01 01:17:50 +01:00
Maxim Poliakovski fbfae98d6d scsi_bus: packet data transfers. 2022-10-31 23:21:35 +01:00
Maxim Poliakovski c7ceb9d6b9 sc53c94: fix setting internal transfer counter. 2022-10-31 23:21:35 +01:00
Maxim Poliakovski 3f2b77fd59 amic: basic writing to the VIA2 IFR. 2022-10-31 23:21:35 +01:00
Maxim Poliakovski 3050986164 Stop tracking CMakeSettings.json 2022-10-31 01:07:57 +01:00