Chapter Ten
TANDY TRS-80 MODELS I & III
VIDEOGENIE
The BASICODE translation program has been designed for TRS-80 Models I and III and the Videogenie. However, you will need to construct a small interface. This is not at all difficult and should not deter you from going further with the BASICODE idea. You can also use BASICODE with or without a disk drive.





The extension circuit board
The circuit description is given in Figures 1 to 4, and in the circuit diagram (TRS-80 Fig 1) and you should note the following:
- LED off: | There is no input signal |
- LED on: | The input signal is greater than 200 mV and the frequency is greater than 300 Hz. Without any input signal, DO remains high (i.e. logic 1 or hi-state). The current consumption of the printed circuit board is about 30 mA. |
Details of a suitable power supply are given in TRS-80 Figure 5. But this will not be necessary if you decide to mount the printed circuit board inside the computer keyboard or expansion interface. The power supply from the computer can easily cope with the extra power drain from this interface. The printed circuit board layout is shown in TRS-80 Figure 2 and the component details are noted in TRS-80 Figure 4.
The printed circuit board for this interface is available ready-made. It may be ordered from the following address:
TRS-80 Users Group, |
P.O. Box 551, |
2070 AN Santpoort, |
The Netherlands. |
The printed circuit board costs £2.00 including postage.
Only the printed circuit board is supplied
not the components. You should be able to find the latter in electronic component shops or by mail order.
The BASICODE Translation program
Load the Translation program for the TRS-80/Videogenie which you will find on Side 1 of the cassette. This is done in the normal BASIC mode, using
CLOAD.
After you have typed in
RUN, a menu will appear asking you which computer model you are using. If you follow the instructions on the screen, you should end up with the Translation program ready for use. Once you have done this,
STORE the adjusted Translation program either on disk or cassette. Use this modified program as your BASICODE-2 translator from now on.
Using the Translation program
When you wish to use BASICODE again, load the modified program back into the memory using
CLOAD or
LOAD, as appropriate. After you have
RUN it, you will see the statement 'READY' appear on the screen. The translation program is now ready for use, and you have 1019 bytes of memory space
less than normal.
The following commands are now available:
- GET | You use this for loading a BASICODE format program from tape into the computer. |
The normal BASIC is unaffected by the BASICODE translation program in the memory. You can still load TRS-80 tapes using
CLOAD, save using
CSAVE in TRS-80 format, etc.
But note: If you have a program in the memory, and then load the BASICODE Translation program, you will lose your original program. So save it first using
CSAVE or
SAVE.
The extension circuit board interface should be connected to Port 16, bit 0. A 40 way connector is then used to make a connection to the bus located at the back of the computer (Port 255 bit 0 & 1).
Loading programs in BASICODE
In order to be able to load a BASICODE program from cassette tape, you will need one of the interfaces described above. Note that the loading routine does not give a NEW command, so if you are just starting to load a BASICODE program, first type in
NEW. If you do not, then the BASICODE program will be merged, in the same way as when you use the disk-BASIC merge commands. Remember this, especially if you want to put programs together and eventually re-number the result.
You start the loading process by using the command
GET. The cassette recorder will now start and the program lines will appear at the top of the screen. If the memory capacity is insufficient, the statement 'MEMORY FULL' will appear and the tape will stop. Similarly, if you press BREAK during the loading sequence, the statement 'BREAK IN PROGRAM' will appear and the tape will stop. If there is a reading error, then you will see 'CHECKSUM ERROR' appear. But, usually, no statement will appear, and the recorder will shut off when it reaches the trailer tone on the tape.
You know have the following options:
BREAK-KEY | The input of programming will stop and the > prompting cursor will re-appear. You use this if there is a problem with the program you have just loaded. |
ENTER-KEY | This line will be accepted into the memory. |
BSPACE-KEY | This line will not be accepted into the memory, for example if there is a fault in the line-number. |
SPACE-BAR | If you press this (or the ENTER key) repeatedly, the program is read in at full speed. This is useful when the program contains no faults. |
The pressing of ENTER or BSPACE automatically brings up the next line of the program for inspection.
If there are control characters in the program (other than CR or ETX), or there is a reading error (stopbit not a "1" or bit 7 not a "1"), then the character in question will be underlined using a '-'. You can use this facility if you are trying to rescue a program from a very poor quality tape, in conjunction with the edit facility.
You can also load from a tape more than once, adjusting the playback level to different settings until a complete program is obtained. If the 'MEMORY FULL' statement appears, some of the program will have been lost, but what has already been put into the memory remains there, and can be used.
The saving routine for BASICODE
You do not need the special interface to save a program in the BASICODE format. You can begin the saving process by using the command
PUT. The program is then saved onto cassette in the BASICODE format and the tape will start automatically. If the statement 'MEMORY FULL' appears, then the program was not completely stored in the memory, due to lack of space. What was stored will be put onto tape. You can only interrupt the saving process by pressing the reset button at the back of the computer. Note that control characters in the text, such as '/' will not be destroyed, so make sure they do
not appear in your BASICODE programs, or you may put other brands of computers into tilt. Read Chapters
Two or
Three for details of the guidelines to follow with the BASICODE. Note that the command GET will not affect other brands.