Запгрузил первую игру с флешки. Сначала ATMega8 читает с флешки файл /Loader, который Апогей потом получает по команде R0,100.
А этот загрузчик (код которого ниже), загружает файл /BOOT. В этом файле будет меню, а пока я под этим именем сохранил игру.
Код:; 8-09-2012 (c) vinxru device zxspectrum48 begin: ld hl, 0EE01h ; Начало любой команды ld (hl), 0 ld (hl), 0F7h ld (hl), 0F5h ld (hl), 0F1h ld (hl), 0E1h ; Команда 0 BOOT ld (hl), 0E0h ld (hl), 0E1h ; Код ошибки call recvByte cp 0 jp nz, 0F800h ; Длина файла call recvByte ld c, a call recvByte ld b, a ; Первое слово в файле - адрес call recvByte ld d, a call recvByte ld e, a ; Автозапуск push de ; Второе слово в файле пропускаем call recvByte call recvByte ; Корректируем длину dec bc dec bc dec bc dec bc ; Прием файла l: call recvByte ld (de), a inc de dec bc ld a, b or c jp nz, l ; Код ошибки call recvByte cp 0FAh jp nz, 0F800h ; Автозапуск ret ;------------------------------------------------------------------------------- recvByte: ; Когда устройство будет готово передать байт, оно вернет 1 ld a, (0EE00h) dec a jp nz, recvByte ; Дай байт ld (hl), 0C1h ; Читаем байт ld a, (0EE00h) ; Байт принят ld (hl), 0E1h ret
---------- Post added at 20:13 ---------- Previous post was at 19:26 ----------
Где лучше взять CP/M, что бы скомпилировать его под Апогей? И где есть интересный софт?




Ответить с цитированием