Last modified on 17 December 2010, at 16:33

Testing tips to verify tape images (CDT)

Revision as of 16:33, 17 December 2010 by MacDeath (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)


This article originally came from Kevin Thackers' archive at http://www.cpctech.org.uk.

If the program uses standard block loading then you can test the image is correct in the following way:

  • Start the Amstrad emulator,
  • Insert the tape-image to test,
  • Reset the CPC
  • At the "Ready" prompt type:
    |TAPE:CAT
  • The following message will then be displayed:
    Press PLAY then any key

Cat1.png


  • Press a key, and then wait. After some time you will see a message similar to this:
<filename>   block <block number> <file type symbol>

Where:
    • <filename> is the name of the file on the cassette (maximum of 16 characters)
    • <block number> is the number of the current block being tested,
    • <file type symbol> is a 1 character symbol identifying the file type:
      The following table identifies the common file types:


Symbol File type
$ Unprotected BASIC file
% protected BASIC file (the program can't be listed)
& Unprotected binary file
' Protected binary file

Cat2.png

An example is:

HUDSON HAWK      block 1 &

If the block is correct and the CRC checksum is valid, then "Ok" will be printed after the file type symbol. e.g.

HUDSON HAWK      block 1 & Ok

If there is an error "Read error a" or "Read error b" will be displayed.

Why is this method good?

    • It is ideal for testing programs that only use the standard loader, but may contain many parts that are not loaded immediatly. e.g. a multi-loader program, many seperate programs on the same cassette
    • Some programs disable the cassette messages (e.g. messages like "Loading HUDSON HAWK block 1"), and it is not easy to identify the name or number of a bad block. With this method, the name and block numbers are listed.
    • You can easily identify blocks that are missing (maybe they were not decoded by voc2tzx). e.g.
  HUDSON HAWK      block 1 & Ok
  HUDSON HAWK      block 3 & Ok


In this example, block 2 of "HUDSON HAWK" is missing. This would result in a "Rewind tape" error.

    • You can compare the list of blocks against the graphical display of the sound wave in a sound editor and identify any blocks that are not correct.