Synx

SYNX is a 46-byte relocatable MC routine for AERCO disk drive system users. It is given into the “public domain”. SYNX is short for “Syntax Checker Switch”. This routine allows you to turn off the BASIC syntax checker when writing or editing BASIC lines…and to turn it back on. Syntax checking during program execution remains in effect.

Why? Perhaps you may want to write a BASIC program that can be used on a non-AERCO disk system (perhaps for ALL disk systems). You may want to write a line like this:

500 SAVE *"TEST": REM for Zebra disk

Well, you can’t write it because it will fail syntax checking. But with the syntax checker turned off, you can write it.

SYNX works by changing some locations in the BASIC operating system…normally in ROM, but in RAM with AERCO disk. A more detailed explanation is beyond the scope of this article.

Assuming you have the code on disk or tape as .BIN or CODE file, it can be loaded wherever there’s no conflict with other software. Let us say you want to load it at Loc 64000: CAT “SYNX.bin”,64000 or LOAD “SYNX” CODE 64000 will do it.

To SAVE the code: MOVE “SYNX.bin”,64000,46 or SAVE “SYNX” CODE 64000,46

To use SYNX (assuming the code is at 64000): RANDOMIZE USER 64000 turns the syntax checker OFF. RANDOMIZE USER 64002 turns the syntax checker back ON.

Here is the SYNX code as a decimal listing, ready to be POKEd into memory however you wish:

64000  24     64020  24     64040   0
64001 27 64021 221 64041 243
64002 24 64022 197 64042 237
64003 18 64023 225 64043 176
64004 0 64024 1 64044 251
64005 0 64025 11 64045 201
64006 0 64026 0
64007 253 64027 24
64008 54 64028 5
64009 0 64029 197
64010 255 64030 255
64011 0 64031 1
64012 0 64032 4
64013 205 64033 0
64014 13 64034 9
64015 13 64035 17
64016 253 64036 76
64017 54 64037 14
64018 0 64038 1
64019 255 64039 9

Of course, if you get a single number wrong, the computer is likely to crash when you attempt to use SYNX. So it is a good idea to SAVE before you test it out.

Note: Type-in program listings on this website use ZMAKEBAS notation for graphics characters.