This is an old revision of the document!
HiMD device control command (0xC2)
The device control command is 12 bytes (0x0C), and depending on subcommand, intiates a data transfer from or to the device. The layout of the command block is
Byte 00: Command (0xC2) Byte 01: Unknown, sent as zero (maybe LUN?) Byte 02: For some subcommands: Application ID (0 == General?, 1 == MD Audio?, 2 == UMD Audio?) Byte 03: subcommand Byte 04: For some subcommands: Flag bits Byte 05: For the switch interface command: Delay Byte 06: unused, sent as zero Byte 07: Set explicitly to zero for Get Leaf ID - Some Index? Byte 08: Byte count of data transfer Bytes 09-0B: unused
Subcommand 00: Erase HiMD
- Application ID: 0
- Used fields: flags.
- Bit 0: IMMED ("immediate": finish SCSI handling before command finishes)
- Bit 1: FUA ("force unit access": write now, don't cache)
Note: Seems to work only with Standard MD media.
Subcommand 01: Format HiMD
- Application ID: 0
- Used fields: flags.
- Bit 0: IMMED ("immediate": finish SCSI handling before command finishes)
- Bit 1: FUA ("force unit access": write now, don't cache)
- Bit 2: NOFS (Don't generate FAT FS?)
Note: Maybe works with Hi-MD 1GB media, too.
Subcommand 0E: Begin ICV Transaction
- Application ID: 0
- Used fields: none
If the command is correctly understood, it starts a transaction that updates FAT, directory and the master ICV all at the same time, or none at all. See HiMDDownload, at timestampe 84.6. The transaction is committed by the new ICV at timestamp 93.2
Subcommand 0F: Recommend Synchronize Cache
- Application ID: 0
- Used fields: none