meta data for this page
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revisionNext revisionBoth sides next revision | ||
adv:hardsectorconf [2022/06/13 06:35] – diskblitz | adv:hardsectorconf [2022/08/06 03:18] – diskblitz | ||
---|---|---|---|
Line 1: | Line 1: | ||
====== Adding Support for a Hard Sectored Disk Format ====== | ====== Adding Support for a Hard Sectored Disk Format ====== | ||
+ | As of Applesauce 1.66, it is possible for users to be able to add their own format definitions to be used by Applesauce. When you add a format, it will automatically be recognized everywhere in the client software such as the Disk Analyzer and Fast Imager. In order to add new formats, there is an Applesauce directory in your Documents folder. Within this folder there is a Formats one that contains the file '' | ||
+ | |||
+ | Creating a format definition is a highly technical process and if you are not very familiar with how disks are structured, this will likely seem a daunting task. | ||
The hard sector configuration files are text files in JSON format. The root object of the JSON should be an array. A single file can have as may format descriptions as desired. | The hard sector configuration files are text files in JSON format. The root object of the JSON should be an array. A single file can have as may format descriptions as desired. | ||
Line 10: | Line 13: | ||
=== name === | === name === | ||
String - // | String - // | ||
- | This is a descriptive name of the format. It is only used for informational purposes. | + | This is a descriptive name of the format. It must be unique, but otherwise |
- | ex: ''" | + | ex: ''" |
=== settings === | === settings === | ||
Line 20: | Line 23: | ||
ex: ''" | ex: ''" | ||
+ | === fastname === | ||
+ | String - // | ||
+ | This is used by the Fast Imager when displaying the name of this format. | ||
+ | |||
+ | ex: ''" | ||
=== export === | === export === | ||
Line 170: | Line 178: | ||
ex: ''" | ex: ''" | ||
- | === dataCksumIndex | + | === addrCksumIndex |
Int - // | Int - // | ||
Byte index of the start of the stored checksum relative to the address marker (0 = address marker). | Byte index of the start of the stored checksum relative to the address marker (0 = address marker). | ||
- | ex: ''" | + | ex: ''" |
=== addrCksumByteSize === | === addrCksumByteSize === | ||
Line 202: | Line 210: | ||
Byte index of the last byte of the address field that needs to be checksummed, | Byte index of the last byte of the address field that needs to be checksummed, | ||
- | ex: ''" | + | ex: ''" |
=== addrCksumInit === | === addrCksumInit === | ||
Line 222: | Line 230: | ||
ex: ''" | ex: ''" | ||
- | === addrCksumRevIn | + | === addrCksumRefIn |
Boolean\\ | Boolean\\ | ||
- | If true, then the data bytes will have their bit-endian reversed (eg: 0x80 becomes 0x01) on input to the checksum algorithm. If no value is provided, then it defaults to '' | + | If true, then the data bytes will be reflected (bit-endian reversed (eg: 0x80 becomes 0x01)) on input to the checksum algorithm. If no value is provided, then it defaults to '' |
- | ex: ''" | + | ex: ''" |
- | === addrCksumRevOut | + | === addrCksumRefOut |
Boolean\\ | Boolean\\ | ||
- | If true, then the result of the checksum algorithm will have its bit-endian reversed on output. If no value is provided, then it defaults to '' | + | If true, then the result of the checksum algorithm will have its data reflected (bit-endian reversed) on output. If no value is provided, then it defaults to '' |
- | ex: ''" | + | ex: ''" |
=== addrEpilog === | === addrEpilog === | ||
Line 440: | Line 448: | ||
ex: ''" | ex: ''" | ||
- | === dataCksumRevIn | + | === dataCksumRefIn |
Boolean\\ | Boolean\\ | ||
- | If true, then the data bytes will have their bit-endian reversed (eg: 0x80 becomes 0x01) on input to the checksum algorithm. If no value is provided, then it defaults to '' | + | If true, then the data bytes will be reflected (bit-endian reversed (eg: 0x80 becomes 0x01)) on input to the checksum algorithm. If no value is provided, then it defaults to '' |
- | ex: ''" | + | ex: ''" |
- | === dataCksumRevOut | + | === dataCksumRefOut |
Boolean\\ | Boolean\\ | ||
- | If true, then the result of the checksum algorithm will have its bit-endian reversed on output. If no value is provided, then it defaults to '' | + | If true, then the result of the checksum algorithm will have its data reflected (bit-endian reversed) on output. If no value is provided, then it defaults to '' |
- | ex: ''" | + | ex: ''" |
=== dataEpilog === | === dataEpilog === |