Stephen Heumann
08fe7fe4b6
Add support for DiskCopy 4.2 image format.
2018-10-17 20:14:40 -05:00
Stephen Heumann
f912d9230e
Do actual auto-detection of DOS-order versus ProDOS-order.
...
The basic approach is just to see if GS/OS can understand the disk (i.e. if a VolumeGS call succeeds), and if not switch the order. We currently start with ProDOS order, then switch to DOS order if necessary. This is only currently done for 140k images.
2018-10-07 23:59:00 -05:00
Stephen Heumann
dcc069d5b8
Add support for image format selection and detection.
...
At the moment, the auto-detection of DOS vs. ProDOS order is just based on the size of the image (i.e. 5.25" images are DOS-order, anything else is ProDOS-order).
2018-10-07 22:22:09 -05:00
Stephen Heumann
d2f7ec3b64
Support DOS-order sector data in images.
...
Currently, this is only enabled for 2mg images where the header specifies DOS order.
2018-10-07 17:41:19 -05:00
Stephen Heumann
1ce645ec0d
Add flag controlling whether to use cache.
2018-10-01 22:42:33 -05:00
Stephen Heumann
55b199f83b
Add GS/OS block cache support.
2018-10-01 21:49:00 -05:00
Stephen Heumann
314f408b5e
Report a disk switch if the length of the file changed.
...
Currently, the logic for this doesn't re-detect the file type, and it may not work correctly with some 2mg files, but it should work in most cases.
2018-10-01 18:18:34 -05:00
Stephen Heumann
10cb54df5f
Give meaningful error messages.
2018-09-26 00:17:31 -05:00
Stephen Heumann
dd228dff2d
Add wrappers for GS/OS system service calls, and call SET_DISKSW on mount.
...
I think there should still be some disk-switched logic elsewhere, based on the somewhat complicated rules for it in the documentation, but at least this provides a notification when a new disk is mounted.
2018-08-16 21:39:23 -05:00
Stephen Heumann
3f3c14b8a1
Do sanity checks of input values for Driver_Read.
2018-08-15 21:56:36 -05:00
Stephen Heumann
8532c14ee1
Detect errors and timeouts when reading data from server.
2018-08-15 21:05:09 -05:00
Stephen Heumann
525dbbb1c5
Include the device number as an output value in the MountURLRec structure.
...
This allows callers to conveniently access the newly-mounted device.
2018-08-14 22:40:42 -05:00
Stephen Heumann
587d0c4e7e
Consistently set transfer count when doing Get_Device_Status.
2018-08-13 18:40:24 -05:00
Stephen Heumann
77f16625c6
Report our devices as "MFM drives" so that Finder shows a 3.5" floppy icon.
...
Previously, we had actually been (erroneously) using the code for a generic hard drive, rather than a generic floppy as intended. The generic floppy code shows a 5.25" floppy icon, which seems less appropriate, so now we use the same code as 3.5" SuperDrives instead.
2018-08-13 18:36:24 -05:00
Stephen Heumann
2092e48694
Add support for reporting the disk's block count.
2018-08-13 01:28:32 -05:00
Stephen Heumann
8b09d6bb7d
Switch to using a struct for the MountURL DControl call.
...
This allows us to return a better error code and provides for future extensibility.
2018-08-12 18:45:08 -05:00
Stephen Heumann
4ac24d75f4
Keep our driver installed on switch back from P8.
2018-08-12 15:08:26 -05:00
Stephen Heumann
610a638e5c
Switch to unified set of error codes. Also, do more checks for 2IMG files.
2018-08-11 01:53:53 -05:00
Stephen Heumann
ccc9594412
Add support for ejecting NetDisk volumes.
2018-08-10 22:40:07 -05:00
Stephen Heumann
2670da4f59
Add basic support for 2img format.
2018-08-10 19:51:21 -05:00
Stephen Heumann
d718d82ff1
Initial support for mounting and reading a remote filesystem.
2018-08-10 17:53:09 -05:00
Stephen Heumann
e6b1c304d3
Split out non-trivial driver ops into separate functions.
2018-08-10 00:12:24 -05:00
Stephen Heumann
9e9e7be0f8
Add framework of code for the driver.
2018-08-08 20:12:03 -05:00
Stephen Heumann
ff538de39c
Add basic infrastructure for an installable GS/OS driver.
...
Currently, this can install the DIBs from the driver, but no driver calls are implemented.
2018-08-06 20:22:33 -05:00