Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ; Адрес экрана, используемый в процедурах ниже
- ; Для обычного экрана- #4000. Для рисования на втором экране- #c000
- ; Используя другие адреса можно рассчитывать координаты и во внеэкранных буферах.
- ; Адрес должен быть кратен #2000 - для других адресов процедуры придется усложнять
- SCREEN_ADDR EQU #4000
- ATTR_ADDR EQU SCREEN_ADDR+#1800
- ; Расчет адреса в экранной области с точностью до знакоместа
- ; Входные параметры:
- ; L - координата по оси ординат (0..23)
- ; H - координата по оси абсцисс (0..31)
- ; Результат:
- ; HL - адрес в экранной области
- ; Замечание:
- ; используется аккумулятор
- LD A,L
- AND 7
- RRCA
- RRCA
- RRCA
- ADD A,H
- LD H,L
- LD L,A
- LD A,H
- AND #18
- OR SCREEN_ADDR/#100
- LD H,A
Advertisement
Add Comment
Please, Sign In to add comment