Hard-sectored Disks

The standard and most common disk format used on Heath 8-bit computers was hard-sectored 5.25" floppy disks. They can hold up to 100KB (102400 bytes). Hard-sectored disks are physically different from soft-sectored disks. Soft-sectored disks have a single index hole, but hard-sectored disks have both the index hole and a hole for each sector (10 for Heath's format). The holes marked where each sector starts.

Heath's Hard-sectored disk are single-sided, 40 tracks, and 10 sectors per track. Some third-party drivers (BIOS-80 & HUG) added support for double-sided and 80 track drives and disks. These drivers allowed a single disk to hold up to 400KB.

Unlike soft-sectored controllers, the controller for hard-sectored floppy disks is very basic. It requires the CPU to find specific sectors. The CPU has to read the header block of each sector to find the proper sector. The format is well described in this article: HDOS Disk format

Each sector of the disk contains both a header block and a data block. The header block has critical information including the disk's Volume Number, track number, and sector number. Both types of blocks start with the sync byte and ends with a checksum byte that helps verify that the data read from the disk matches what was written.

H8D

A popular format for Heathkit hard-sectored disk images is H8D. It is a very basic format which includes only the data portion of the disk. It does not preserve any of this information. All of the header information has to be reconstructed. For example, the volume number has to be inferred based on analysing what type of disk it is. For CP/M disks, the volume number is always 0. For HDOS disks, the volume number for header blocks on track 0 is 0, but the rest of the tracks may have a different volume number. For HDOS, the volume number expected on the reminder of the disks is stored on at the start of sector 10, on track 0. It also does not include the checksum bytes for the header block or data block. Disks with interleaved sectors can not be represented by an H8D, since the sectors have to be in logical order.

H17Disk

H17Disk attempts to address the shortcomings. The first version of the specification was overly complicated, did not get any traction. The format tried to also act as an archival format, which made it much more complicated than H8D. The new 2.0.0 version was designed to be nearly as simple as H8D, while providing the extra information needed to fully reconstruct the disk without having to infer what the header information should be. It was designed with input from the developer of the Applesauce disk imaging system. Support for the v2 H17Disk format has already been implemented in applesauce and plan to add support for it in the disk imaging software I have written for the FC5025 and my H89 emulators.

See document below for implementation details for the format.

Documentation

Current version: 2.0.0: h17disk-v2_0_0.pdf

Prior version 1 spec: h17disk-draft.pdf

Disk Imaging and Tools

Linux source code for disk imaging using the FC5025. Includes GUI disk-imager and a basic command-line program to get info about the captured disk image. This program currently captures disk images in the h17disk v1 format. Commandline tools are included to convert them into H8D format. There are plans to add support for h17disk v2.

Heath Imager project on github

Status

v2 Document released and currently implemented in Applesauce floppy drive controller.

Last Modified: Sunday, 25-Feb-2024 22:36:13 PST

Contact Details

Mark Garlanger

Email: heathkit [at] garlanger [dot] com

If you email me, PLEASE check your spam filter for any responses.

Website: www.garlanger.com

Social

About

This site is dedicated to preserving the history of the original Heathkit computers. They were initially release in 1977 and included the 8-bit H-8 and 16-bit H-11 systems. The H89 was released in 1979.