Значок ресурса

Function Keys

Нет прав на скачивание
Автор: Robert Young
Год: 1984
Издатели: Your Computer
Языки: 🇬🇧 Английский
Формат: 📼 TZX лента
Требования: 🖥️ ZX Spectrum 16K

Ссылки:
Страница на ZXArt
Страница на World Of Spectrum
Страница на Spectrum Computing

Function Keys





Robert Young,


Chichester,


Sussex.





The Spectrum does not have a function key facility, and so


I have written a machine-code program which allows any


number of keys to be programmed very easily. This includes


all the legends on the keys, the graphic symbols and the


used-defined graphics, so that, for instance, the PRINT


token can be programmed separately to the P and TAB. Of


course, you will only wish to define keys you are unlikely


to use for their normal purpose.


The definitions of keys should be put in separate REM


statements at the very beginning of the program. You should


follow the line number and REM by the symbol you wish to


program, a colon, and then the definition. The definition


can be any combination of characters, graphics and legends.


If you want it to execute automatically then end it with


the hash - # - character. If a syntax error is found when


the line is executed, the line will be displayed at the


bottom of the screen with a question mark as normal. Note


that a key whose definition is just a hash will act as an


ENTER key.


The colon that must be put between the key to be defined


and the definition not only conveniently separates the two


but also puts the computer into K mode. If, however, you


wish to start the definition with a letter of the alphabet


which cannot be accessed in this mode, it is necessary to


type any token or symbol that puts the computer into L


mode, such as a keyword, then to type the character you


want, and finally to go back and delete whatever you used.


[Or, of course, you can omit the colon at first, and only


go back to put it in once you've typed the desired letter.]


Rather than search through the whole program for key


definitions, the program stops looking as soon as it finds


the first proper program line. Therefore, all the defini-


tions must be put before the main program. This can be


quite useful if you want a key which has been programmed


to revert to its normal purpose temporarily.


Rather than deleting the definition, all you need to do


is change its line number so that it is, for instance, at


the end of the program. Then at a later date you can change


it back again. Lastly, if a key is defined twice it is the


definition nearest the beginning of the program that will


be taken. Note that a programmed key will repeat if held


down.


The machine code is included in the data statements of


the Basic program. The ninth figure of each statement is,


however, the sum of the first eight and this is used by the


program to check for errors in the data. Enter the Basic


program, save it just to be on the safe side, and then run


it. If an error is found the program will display the


message Error In Line, followed by the line in which the


error occurred. Note that the Basic program automatically


alters the machine code if you have a 48K Spectrum, so that


it is located at the top of memory - the actual data given


is for the 16K model.


The program will then display Prepare To Save and the


normal message will appear at the bottom of the screen. You


may then save the machine code. After this it will print


Prepare To Verify. Rewind the tape to the point where you


started saving the code and the program will verify it


automatically. If this is completed successfully, the Basic


program will NEW itself, leaving the machine code located


at address 32348 for 16K machines or 65129 for 48K. In


future, to load the machine code, type


CLEAR 32347


for the 16K or


CLEAR 65128


for the 48K, followed by


LOAD ""CODE


The program must be turned on before it will work. This


is done by


RANDOMIZE USR 32479 (16K)


or


RANDOMIZE USR 65260 (48K)


To turn it off type:


RANDOMIZE USR 32486 (16K)


or


RANDOMIZE USR 65267 (48K)





Here are a few examples of key definitions:


1 REM !: PAPER 7: INK 0: CLS : BORDER 7#


2 REM .: PRINT 65536-USR 7962#


3 REM NEW: INPUT a$: IF a$="Y" THEN NEW#


4 REM :,


REM 1 will reset all the colours - white paper and


border, black ink - at a press of symbol shift-1. This is


useful if you are developing a program using a strange


combination of colours. Often, after stopping such a


program, the listing is almost unreadable.


REM 2 will print out how much free memory you have left


on typing a full stop.


REM 3 is a safeguard against NEWing a program acciden-


tally. On pressing NEW, you must input a string. If you


enter Y the program will NEW. Anything else will mean that


the key press is ignored. Enter the NEW after the REM by


typing a colon followed by the NEW, then deleting the


colon.


Finally, REM 4 allows you to type in quantities of data


far quicker. It makes the space key act as a comma,


avoiding the need for using the shift key.
Автор
Verter_bot
Загрузки
0
Просмотры
2
Расширение
zip
Размер
1.2 КБ
Хэш
8d648133e3521e5c6cf1642324a92369
Первый выпуск
Последнее обновление

Оценки

0.00 звезд(ы) 0 оценок
Назад
Вверх