Amiga SCSI and IDE Devices: Disk Image Files and Direct Access
Q: Can an Amiga hard disk partition (SCSI, IDE, SATA, USB, etc.) be mounted directly in the emulation? Is it possible to also access Amiga SCSI devices such as ZIP drives, tape drives and scanners?
This document explains how to:
- Create an HDF disk image of an Amiga disk drive attached to a Windows PC, which can then be used both as a backup and in Amiga Forever
- Attach any SCSI or IDE device to a Windows PC and use that directly in Amiga Forever
The two approaches are complementary: if you create a disk image, which is the recommended method for using Amiga disk data on the PC, you do not need to follow the lower-level SCSI access instructions.
Alternatively, if you need to transfer data from the Amiga to a Windows PC and you prefer not to attach the disk drive itself to the PC, you can consider using Amiga Explorer.
Important: Because Amiga SCSI devices and media are generally quite old, we recommend that you copy your Amiga data to new storage media as soon as you are able to access it. If possible, prepare the required interface and software first, and then switch on your legacy hardware only once, and immediately proceed with the transfer.
Special thanks to Toni Wilen for assisting in the preparation of this document. Thanks also to Microsoft for their assistance in implementing low-level SCSI passthrough functionality, which is a feature that is rarely seen even in high-end virtualization environments.
Recommended Approach: Using Disk Images
The Disk Toolbox feature of Amiga Forever can be used to create HDF image files of Amiga disks connected to the PC.
Benefits of this procedure:
- Aging hardware needs to be read only once (lowest possible risk of loss)
- Supports different types of media (hard disks, magneto-optical disks, SyQuest cartridges, Iomega ZIP drives, etc.)
- The host operating system (Windows) does not need to have an Amiga file system
- The resulting disk images can be mounted in Amiga Forever
If possible, test the entire procedure on some non-important disks first.
To create a disk image:
- Connect the disk to the PC (follow the device-specific instructions, switching off the PC if necessary)
- Do NOT mount the Amiga disk assigning it a Windows drive letter or expect it to appear under the Computer folder, but rather make sure that the disk is listed in Disk Management (select Computer Management from the Windows Start menu, then expand the Storage folder on the left, and click on Disk Management)
- Select Disk Toolbox from the Tools menu of Amiga Forever
- In the Disk to Image tab, select the desired disk, then Create Image
- Make a backup copy of the disk image file, and archive it in a safe place
Additional steps for a more rigorous, semi-forensic approach:
- Create the disk image using a USB write blocker, a disk controller with a read-only mode, or similar solution to prevent writes to the media being imaged
- Immediately calculate a secure hash of the disk image file (e.g. SHA-256 or better)
- Timestamp and/or publish the hash (e.g. on Twitter)
- Video-record and/or have witnesses for the entire procedure
To mount the disk image in Amiga Forever:
- Right-click the configuration to which you would like to add the disk image and select Edit...
- In the Media tab of the RP9 Title Editor, click the Add... button
- Select Type: File and click "..." to select the .hdf file created in the previous step
- Select Location: Absolute (or Data)
For additional information:
Using Third-Party Tools
While Amiga Forever includes a Disk to Image feature, third-party Windows software like SelfImage (free) or WinImage (free trial) can also be used to create an image file. To run these tools it may be necessary to right-click the application icon and select Run as administrator.
To create the disk image:
- Install the imaging software (e.g. SelfImage or WinImage) and test the entire procedure on some non-important disks if possible.
- If using SelfImage, configure the Input to come from a drive and the Output go to go a file, with no Processing (compression) options. Select the desired drive (use the "entire disk" option) as the Input Location. Select any file name you wish as the Output. After imaging is complete you can rename the resulting .img file "amiga.hdf" or any other name ending in ".hdf".
- If using WinImage: select "Creating Virtual Hard Disk image from physical drive" from the Disk menu (you may have to tick "[x] Include non removable hard disk(s)"), then "Create Fixed Size Virtual Hard Disk", then "OK", then in the Save As dialog select "Save as type: Image File (*.ima)" instead of the default (*.vhd). You can name the file "amiga.hdf" or any other name ending in ".hdf".
- Decide where to save the .hdf file. For example, you can select Open Folder/Amiga Files from the File menu in Amiga Forever, then in the resulting Explorer window select the "hdf" folder inside "Shared", and use that path for images created by SelfImage or WinImage. (This will be "C:\Users\Public\Documents\Amiga Files\Shared\hdf" or similar depending on the configuration.)
Mounting Specific Physical Drives
PC drives and disks can be attached directly to the emulation from the Media tab of the title editor (right-click the title, select Edit).
To mount the default CD or DVD drive, or to use ISO images in an optical drive on the emulated system even if the host does not have such a drive, select the CD0 option. Alternatively, to mount multiple optical drives that exist on the host, enable the "full SCSI" option in the Configuration tab.
To mount a physical hard disk, click Add..., then select "Direct-attached disk" as the type, then select a disk. Note that low-level access to certain drives requires administrator privileges ("UAC" prompt).
Directly attaching a disk is a convenient option to share media (e.g. an SD or CompactFlash card) that is also used with an Amiga computer, but once the ultimate long-term use is in the emulation, creating and mounting a disk image is the recommended approach.
Mounting Other SCSI & IDE Devices
To mount SCSI devices other than storage drives (e.g. scanners and tape drives), enable the "full SCSI" option in the Configuration tab (right-click the title, select Edit, then check SCSI & IDE in the Devices group of the Configuration tab).
This option will also mount any optical drives, as well as Amiga-formatted external storage devices. IDE storage units are exposed via a simple SCSI emulation layer. In order to avoid accidental access and corruption of non-Amiga data, the emulation will only mount disks that are recognized as either being empty or having Amiga-formatted content. This means that by default it is not possible to mount PC-formatted disks, or disks formatted under custom Amiga partition schemes, such as those developed before the release of the Amiga Rigid Disk Block specification, or RDB/RDSK. Such disks must be specifically mounted from the Media tab, and may require administrator privileges.
The difference between mounting optical drives with the "full SCSI" option and with the CD0 option is that the former makes available in the emulation one or more optical drives that exist in the host system, whereas the latter defines the Amiga configuration as having a CD-ROM drive, regardless of whether the host system has such a drive or not. Emulated optical drives always accept either physical discs (inserted in a drive on the host, if present) or ISO images.
Amiga SCSI Settings
Amiga tools and utilities that support SCSI (and IDE) peripherals have one or more configuration parameters (ToolType, command line option, etc.) that need to be set to the proper device name and unit number. Be sure to set the correct device name (e.g. "uaehf.device" or "uaescsi.device") and unit number. The help tips inside Amiga Forever also provide reminders of the various settings for mounting optical media, direct-attached media, SCSI devices, etc.
When one of the SCSI, CD or direct-attached disk options is enabled in the Configuration or Media tabs of the Amiga Forever title editor, you can use one of two devices inside the emulation environment:
- uaehf.device (for hardfiles, "real" hard disks and other block-type devices)
- uaescsi.device (optimized both for SCSI and for CD-ROM-like hardware, e.g. CD-ROM and DVD devices, tape drives, ZIP drives, scanners, SCSI pass-through, etc.)
The device named "uaehf.device" uses Windows IOCTL functionality and provides limited emulation of SCSI commands (also for IDE devices), e.g. for HDToolBox and similar system tools, for mounting devices and for booting from them, and to support file systems and partitions, in a way similar to the boot ROMs that are included with Amiga SCSI controllers.
The device named "uaescsi.device" uses Windows SPTI functionality and provides access to the full underlying SCSI features and commands.
Because the emulation needs to merge and support units from different access interfaces, SCSI ID (unit) numbers inside the Amiga environment have no relationship with "real" device ID or unit numbers. In particular, uaescsi.device unit numbers 0 and 1 are reserved (and automatically remapped, if necessary) to the first two CD-ROM/DVD type devices.
Additionally, a device named "uae.device" may be used for mounted directories. This is generally not referenced in any applications, since it provides no useful functionality.
Within the Workbench 3.X environment of Amiga Forever you can use the "FindDevice" tool (in "Work:Software/IDEfix97") to verify that a device has been recognized, and to obtain the unit number as it has been mapped within the emulation environment. The emulation log file, if enabled, also lists the unit numbers that have been assigned to recognized devices.
Other Amiga SCSI Devices
With the Amiga 3000, Commodore introduced a real SCSI disk system and "scsi.device" support file. When the Amiga 4000 was released (with IDE only, no SCSI), Commodore opted to keep the "scsi.device" name for the support file, and modify the functionality, to allow booting from IDE media and keep using the same tools (such as HDToolBox) that already had "scsi.device" in their ToolTypes and other settings. Also, the IDE variant of Commodore's scsi.device included limited SCSI emulation, which was enough for some programs to work (in a way similar to uaehf.device), and to extend the capacity of IDE support to about 8 GB (if the file system had direct SCSI support, such as SPS and SFS) at times when a 4 GB limit was common. This can be confusing because Commodore had two different device files, both named "scsi.device", but one being a full SCSI implementation, and the other an IDE variant.
|Additional Keywords:||CF, CompactFlash, Compact Flash, SD, microSD|
It is safe to link to this page.