Gap Support: Analyser Datatypes and Scripting


  • Added new auto-generated data type for scripting.
  • Scripting of gap pattern zones.
  • Scripting terminates “directions” - data to be encoded directly after the current sector vs. data to be encoded backwards from the start of the next sector - by using an empty pattern command.
  • Detecting if the gap pattern zone is a filler (i.e. the size depends on the remaining space on a track); apart from mastering, it is very useful to prevent excessive generation of descriptors just because the size of a filler pattern usually differs for each track.

Here a picture of the analyser script generated for an ST Thalion game.

Right after the end of the normal data block content, the EDC (checksum) descriptor, there are two data bytes detected, then a sync, then an $F7 value 37 times as a gap pattern to be written after the mark, and finally two $0 bytes before the next sector. If you watch carefully, you can even see another data and a sync hidden between the header and the data block, this is of course properly and automatically scripted.

This following is a picture of the last sector (i.e. the one after a track gap is written), and is fully auto-detected as the normal sector data.

This time, the script shows that $F7 is detected as the track filler value, so it occupies however much space is unwritten between the last block and the first one, apart from two $0 bytes encoded right before the first block on the track. Things now required:

  • Encode and save this data into IPF images
  • Add gap pattern support to IPF library
  • Testing