Dave, is the Cassette menu for WinCortex 2.0 documented anywhere? [Play] and [Record Image] I've worked out, but not sure what [Record Raw] and [Overwrite Mode] are for?
Also, when [Play]ing an image, does the emulator check the header checksum before 'playing' it? From what I can see of the Cortex code, it should display 'Found""' for a program even if the header checksum is wrong, but the emulator just seems to ignore a [Play] command if the header checksum is wrong.
Stuart.
Hi Stuart,
A manual for the emulator is long overdue. I started to write one last October but haven't got back to it yet... I need someone who excels at writing technical manuals
Here are some notes on the Cassette Functions:
Two modes are available, Image and Raw. In Raw Mode, the 'cassette recorder' will record/play the cassette's TMS9902 data stream without any further processing. Image Mode is for program images where the 'cassette recorder' processes the data stream to produce .cas files that are compatible with the PC Comms Utility etc. Image files are 'concise' in that the preamble and other padding bytes are removed.
When a cassette image is 'played' back, the 'cassette recorder' detects whether a valid cassette header is in the file. If one is found, then the playback is treated as an Image, else Raw Mode is assumed.
Overwrite Mode provides the ability to automatically overwrite existing .cas files without being prompted.
To save a program from BASIC:
1) Cassette->Record Image (F6) and choose filename. 'Cassette Recorder' is now ready.
2) SAVE"" or SAVE"MYPROG"
3) Choose Auto-Run as required.
4) Press Y for cassette ready.
5) Image is recorded to file.
6) 'Cassette Recorder' can be aborted using Cassette->Abort Image Record or it will time-out after a minute if no SAVE is performed.
To save a machine code program (or data block) from MONITOR:
1) Cassette->Record Image (F6) and choose filename. 'Cassette Recorder' is now ready.
2) D SSSS EEEE AAAA where SSSS is the start address, EEEE is the end address and AAAA is the optional auto-run address.
3) Enter optional program name for IDT
4) Choose Auto-Run as required.
5) Press Y for cassette ready.
6) Image is recorded to file.
7) 'Cassette Recorder' can be aborted using Cassette->Abort Image Record or it will time-out after a minute if no SAVE is performed.
To load a BASIC program:
1) LOAD"" or LOAD"MYPROG"
2) Press Y for cassette ready.
3) Cassette->Play...(F5) and choose filename to load.
4) Image is 'played' and program is loaded.
To load a machine code program (or data block) from MONITOR:
1) L IDT= leave blank for no filename or use MYPROG as required.
2) Press Y for cassette ready.
3) Cassette->Play...(F5) and choose filename to load.
4) Image is 'played' and program/data is loaded.
RAW Recording:
1) Cassette->Record Raw...(F7) and choose filename. 'Cassette Recorder' is now in RAW Record mode.
2) In BASIC, UNIT 3 to turn on character output to the cassette device.
3) LIST program is LISTed to the cassette image.
4) Note: Any data written to the cassette device will be recorded, so a machine code could be written to output bytes etc.
5) Cassette->Stop Raw Record when logging to cassette device is no longer required.
RAW Playback:
1) In BASIC, BAUD 3,9600 to enable input from cassette device (baud rate is arbitrary).
2) Cassette->Play...(F5) and choose filename of RAW image.
3) RAW image is played back into the cassette device
Dave.
PS: Raw Mode was implemented just for you!