47th Byte #01 |
![]() |

╔════════════════════════════════════════════════════╗ ║ ║ ║ ░ ▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒ ║ ║ ░ █ █ ▀▀▀▀▀▄ ▒ ║ ║ ░ █ █ █ ▓ ▓ ▓ ▓ ▒ ║ ║ ░ █ █ █ ▓▓▓ ▓▓▓ ▓▓▓ ▓ ▓ ▓▓▓ ▓▓ ▒ ║ ║ ░ ▀▀▀▀▄ █ ▓ ▓ ▓ ▓ ▓ ▓ ▓ ▓ ▓ ▓ ▒ ║ ║ ░ █ █ ▓ ▓ ▓ ▓ ▓ ▓ ▓ ▓ ▓▓▓ ▒ ║ ║ ░ █ █ ▓▓ ▓ ▓ ▓▓▓ ▓▓▓ ▓▓ ▓ ▒ ║ ║ ░ ▓ ▓▓ ▒ ║ ║ ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░ ▓▓ ▒ ║ ║ ║ ╚════════════════════════════════════════════════════╝ * СПЕЦИАЛЬНЫЙ ВЫПУСК * К А К П Е Р Е Д Е Л Ы В А Т Ь И Г Р Ы ЧАСТЬ ПЕРВАЯ. 1. ПОДПРОГРАММЫ, РАБОТАЮЩИЕ С ЛЕНТОЙ. 1.1 Загрузка. Программа загрузки блока кодов с магнитофона может иметь приблизительно такой вид: ... LOADER LD IX,HEAD ; В IX-адрес загрузки LD DE,#11 ; В DE-длина заголовка XOR A ; В А-0 для заголовка и #FF для тела файла SCF ; Установка CARRY-флага CALL #0556 ; Вызов подпрограммы ПЗУ ,осуществляющей ; загрузку блока кодов. JP NC,NNNN ; Переход по адресу NNNN в случае ошибки. CALL NNNN ; Тут может быть вызов подпрограммы, кото- ; рая проверяет только что загруженный за- ; головок файла. ; Если коды отгружаются без хэдера, то этого блока мо- ; жет не быть. ;----------------------------------------------------- LD IX,START; (*) Начальный адрес. LD DE,LENG ; (*) Длина. LD A,#FF ; SCF ; Загрузка тела CALL #0556 ; файла JP NC,NNNN ; ..... ; RET ; ; Звездами (*)помечены необходимые нам ад- ; реса размещения сохраняемого блока. ; Их нужно запомнить. Подпрограмма #0556 прерывается при нажатии на BREAK. Для пре- дотвращения этого изменяют программу вызова процедуры: LOAD_C LD IX,START; Длина и адрес передаются так же. LD DE,LENG ; LD A,NN ; SCF ; INC D ; EX AF,AF' ; DEC D ; DI ; LD A,15 ; OUT (254),A; CALL #0561 ; LD A,7 ; OUT (254),A; EI ; RET ; Эту процедуру обычно оформляют в виде подпрограммы: LD IX,START LD DE,LENG LD A,FLAG CALL LOAD_C ...... 1.2 Запись. Подпрограмма записи выглядит так: SAVE LD IX,HEAD ; Параметры - такие же, как в LOADER'e. LD DE,#11 ; LD A,0 ; CALL #04C2 ; LD IX,START; LD DE,LENG ; LD A,#FF ; CALL #04C2 ; RET ; Если заменить CALL #04C2 на CALL #04C6, то не будет прерывания по BREAK.
Other articles:
|
|
|
Similar articles:
В этот день... 1 April
Info Guide #13,
ACNews #50,
Avro News #01,
ACNews #47,
ACNews #40,
ACNews #29,
Black Metall #01,
ACNews #16,
Adventurer #13,
Polesse #19,
Subliminal Extacy #03,
ZX Pilot #37,
Always #03,
Born Dead #0G,
Odyssey paper #08,
Optron #26,
City #08,
Zodiac #02,
Polesse #05,
Nicron #108,
X-Magazine #10,
Nicron #82,
Energy #01,
Sorrow News #03,
Sorrow News #02,
Proton #27,
Think #08,
Wallpaper #01,
Spectrum Progress #03,
Spectrum Expert #02,
Micro #01,
X-Files #02,
Gorodok #05,
Deja Vu #04,
Anecdotes #01,
X-Files #02,
Maximum #35,
Impulse #01,
Spectrofun #01,
Faultless #07,
Breeze #06,
Nicron #27,
Echo #03,
Oberon #01,
Spectrofon #19,
On-Line #30,
Sinclair Town #01,
Sinclair Classic #04,
Spectrofon #04