; Макросы акселератора для красоты)) ;--------[выключить акселератор]-------- MACRO ACC_Off LD B,B ENDM ;--------------------------------------- ;---------[режим приема байта]---------- ; Включает акселератор в режим приема ; байта размера блока далее следует ; команда типа LD A,dat, где dat и будет ; новым размером блока. Если размер ; блока был установлен ранее, его можно ; не устанавливать. MACRO ACC_SetBlockSize LD D,D ENDM ;--------------------------------------- ;-------[заполнение одним байтом]------- ; Операция Fill. Последующая команда ; типа LD (HL),A приведет к заполнению ; указанного ранее количества байт ; значением A MACRO ACC_FillOneByte LD C,C ENDM ;--------------------------------------- ;----[заполнение вертикальных линий]---- ; Операция Fill для графического экрана. ; Последующая команда типа LD (HL),A ; приведет к заполнению значением A ; вертикальных линий экрана указанным ; ранее количеством байт MACRO ACC_FillScreenOneByte LD E,E ENDM ;--------------------------------------- ;----------[копирование блока]---------- ; Последующая команда типа LD A,(HL) ; приведет к заполнению ОЗУ акселератора ; данными из адреса (HL), а команда типа ; LD (DE),A приведет к перезаписи данных ; из ОЗУ акселератора в основное или ; видео-ОЗУ. MACRO ACC_CopyBlock LD L,L ENDM ;--------------------------------------- ;---[копирование графического блока]---- ; Копирование блока для граф. экрана. ; Последующая команда типа LD A,(HL) ; приведет к заполнению ОЗУ акселератора ; данными из адреса (HL), а команда типа ; LD (DE),A приведет к перезаписи данных ; из ОЗУ акселератора в видео-ОЗУ ; вертикальными линиями. В этом режиме ; аксель при чтении в буфер и записи в ; память увеличивает не адрес, а PORT_Y MACRO ACC_CopyScreenBlock LD A,A ENDM ;--------------------------------------- ;--------[Двойная запись байта]--------- ; При записи байта Byte по адресу Addr ; происходит запись двух Byte в адресса: ; (Addr & #FE) и (Addr & #FE)+1 MACRO ACC_DoubleByte LD H,H ENDM ;--------------------------------------- ;---------[пока путь в никуда]---------- ; Работает так же как и ld b,b ; Ну и при отключенных прерываниях будет ; знаменитый DI:HALT))) MACRO ACC_Halt HALT ENDM ;---------------------------------------