BASIC загрузчик
Код:
5CCB 0001 ; номер строки BASICa = 1
2600 ; длина строки = 38 + 4 = 42 байта
F9C0 ; RANDOMIZE USR
300E ; 0 - фиктивный адрес в символьном виде для экономии времени загрузки
0000DA5C00 ; реальный адрес начала загрузчика в кодах = 5CDA
3AEA ; :REM - начало камментариев, где находится загрузчик в кодах
5CDA F3 di ; запрет прерываний
5CDB 3E08 ld a,08 ; BORDER=BLACK, TAPE_OUT=1 - пауза отключена
5CDD D3FE out (FE),a
5CDF 2100BF ld hl,BF00 ; адрес начала загрузки второго загрузчика
5CE2 01FEFF ld bc,FFFE ; при чтении из порта FE ни одна линия клавиатуры не активирована
5CE5 ED78 in a,(c) ; ожидание прихода стартового байта AA
5CE7 FEAA cp AA
5CE9 20FA jr nz,5CE5
5CEB ED78 in a,(c) ; чтение байта данных из AVR (всего 256)
5CED 77 ld (hl),a ; запись байта в память
5CEE 2C inc l ; следующий адрес и
5CEF 20FA jr nz,5CEB ; если не последний байт - продолжение загрузки
5CF1 C300BF jp BF00 ; запуск второго загрузчика с адреса BF00
5CF4 0D ; конец строки BASICa