@andrews, глянь
https://disk.yandex.ru/d/ESFLC1FAyKx_EQ
папка AGexamples компилирует пример, examples - нифига
sprite-demos собирается, но на экране только часть(
Вид для печати
@andrews, глянь
https://disk.yandex.ru/d/ESFLC1FAyKx_EQ
папка AGexamples компилирует пример, examples - нифига
sprite-demos собирается, но на экране только часть(
сорян, ступил. Тот же код для MOS
Код:.assume adl=1 ; ez80 ADL memory mode
.org $40000 ; Старт программы
jp start_here ; перенход на начало кодв
.align 64 ; заголовок программы MOS
.db "MOS",0,1
start_here:
push af ; сохранить все регистры - зачем?
push bc
push de
push ix
push iy
; ------------------
; поехали
; печать текста
ld hl, string ; HL=адрес строки в памяти
ld bc,0 ; BC=длина строки, или если BC=0, то ограничитель строки - байт 0
ld a,0 ; A=ограничитель
rst.lil $18 ; Вызов MOS API
startp:
; ld a, $08 ; 0x08: mos_sysvars ВозвращаетIXU=указатель системных переменных
; rst.lil $08 ; RST 08h: Выполнить команду MOS
getkey:
; ld a, (ix + $05) ; получить код ASCII
xor a
rst.lil 8 ; 0x00: mos_getkey
or a
jr z,getkey ;0 - не нажата клавиша
cp 27
jr z, EXIT_HERE ; Если нажата Esc, то выход
; ld (ix+5),0 ; моя отсебятина - записать 0 в переменную
rst.lil 10h ; печать символа с кодом
jr startp ; переход на начало
; ------------------
; Выход из программы
EXIT_HERE:
pop iy ; Восстановить все регистры
pop ix
pop de
pop bc
pop af
ld hl,0 ; возвращаемое значени 0 - нет ошибок
ret
; ------------------
string:
.db "Hello Agon World\r\n",0
Там все тулзы собраны под win32. Только компиляция прошла непонятно.
Нормально всё. Поставьте для чистоты эксперимента нужные пути для BIN, INCLUDE, LIB в свои системные переменные впереди списков.
Теперь удалите файлы из директория ...\agdev\AgExamples\hello_world
Затем ( я во всяком случае чтобы не путались все прочие make.exe на моем компе) переименуйте make.exe из директория agdev\bin в agmake.exe
И наконец запускаем в директории ...\agdev\AgExamples\hello_world команду agmake. Должно построиться всё без ошибок, а в директории ...\agdev\AgExamples\hello_world
появятся свежие файлы: DEMO.bin и DEMO.map
Ну а дальше как всегда. Копируем на sdcard и запускаем
и наблюдаем результат на консоли. Hello world! на С работает.Код:LOAD DEMO.BIN
RUN
примеры на асме странные. При запуске plot.asm эмулятор ругается unsupported plot mode и не рисует линии и прямоугольник
Там часть примеров не для Agon, а для калькулятора.
Намалевал вывод 64 цветов. Любуйтес.
- - - Добавлено - - -
хм, а если выбрать режим 2(SET MODE 2), то цвета другие
- - - Добавлено - - -
https://disk.yandex.ru/d/PgeI5ZbwGLOwIQ
таки скомпилировал Fab-agon под х86. Но это падла требует не пойми какие .dll и размер выходит немаленький. Попробовать вычислить?(:
- - - Добавлено - - -
типа финал
https://disk.yandex.ru/d/8hCypQPysEOCZw
- - - Добавлено - - -
Итоги теста:
исходник plot.asm работает - рисуется линия и прямоугольник
ez80asm 1.6 повис, заменил на 1.4