Changes for page API контроллеров AZ®
Last modified by Max on 2025/03/02 15:18
Summary
-
Page properties (1 modified, 0 added, 0 removed)
Details
- Page properties
-
- Content
-
... ... @@ -1034,14 +1034,15 @@ 1034 1034 {{code language="assembler"}} 1035 1035 ;-------------------------------------------------- 1036 1036 ; 76th page map - we prepare data for the screenshot command there 1037 -SCR_PAGE 1038 -SCR_TAG 1039 -SCR_ADDR_CONF = SCR_TAG+2 1040 -SCR_PAGE_CONF = SCR_ADDR_CONF+8. ; here is the command with pages - the starting page and the number of pages - 2 words 1037 +SCR_PAGE = 130000 ; we temporarily attach the 76th page to the 77th - that is, into the 130000 window 1038 +SCR_TAG = SCR_PAGE+0 ; here is the input - 240 - 1 word 1039 +SCR_ADDR_CONF = SCR_TAG+2 ; here is the command with addresses - address+length 24 bits - 4 words 1040 +SCR_PAGE_CONF = SCR_ADDR_CONF+8. ; here is the command with pages - the starting page and the number of pages - 2 words 1041 1041 SCR_MEM_CONF = SCR_PAGE_CONF+4. ; here is the memory configuration from the registers - 22 words 1042 1042 SCR_VGA_CONF = SCR_MEM_CONF+44. ; here video controller configuration - 10 words 1043 -SCR_PAL 1043 +SCR_PAL = SCR_VGA_CONF+20. ; here 338. values ??(words) of palette 338 words 1044 1044 ;-------------------------------------------------- 1045 + 1045 1045 ; trap 41 - preparation of default information for screenshot functionality 1046 1046 PrepSRC: jsr R5, PUSHA ; batch saving of registers 1047 1047 mov @#177326,-(SP) ; save page 130k which was before the call ... ... @@ -1137,16 +1137,16 @@ 1137 1137 Example program 1138 1138 1139 1139 {{code language="assembler"}} 1140 -; updatetheinformationinthe screenshot header1141 +; обновим информацию в хидере скриншота 1141 1141 ;-------------------------------------------------- 1142 -; 76 thpagemap-wepreparedataforthescreenshotcommand there1143 -S CR_PAGE = 130000 ;we temporarily attach the76thpagetothe77th-thatis,intothe130000window1144 -S CR_TAG = SCR_PAGE+0 ;hereisthe input- 240 - 1word1145 -S CR_ADDR_CONF= SCR_TAG+2 ;hereisthecommandwith addresses-address+length24bits- 4words1146 -S CR_PAGE_CONF= SCR_ADDR_CONF+8. ;hereisthecommandwith pages-thestartingpageandthenumber of pages- 2words1147 -S CR_MEM_CONF= SCR_PAGE_CONF+4. ;here is the memoryconfigurationfromtheregisters- 22words1148 -S CR_VGA_CONF= SCR_MEM_CONF+44. ;herevideocontrollerconfiguration- 10words1149 -S CR_PAL = SCR_VGA_CONF+20. ;here338.values(words)ofpalette338words1143 +; карта 76й страницы - туда мы готовим данные для команды скринщотов 1144 + SPAGE = 170000 ; 76ую страницу цепляем на место 77й временно - те в окно 130000 1145 + STAG = SPAGE+0 ; тут вход - 240 - 1 слово 1146 + SADDRC = STAG+2 ; сюда команду с адресами - адрес+длина 24 бита - 4 слова 1147 + SPAGEC = SADDRC+8. ; сюда команду со страницами - начальная страница и количество страниц - 2 слова 1148 + SMEMC = SPAGEC+4. ; cюда конфигурацию памяти из регистров - 22 слова 1149 + SVGAC = SMEMC+44. ; сюда конфигурацию видеоконтроллера - 10 cлов 1150 + SPAL = SVGAC+20. ; сюда 338. значений(слов) палитры 338 слов 1150 1150 ;-------------------------------------------------- 1151 1151 1152 1152 mov @#177326,R5 ; сохраним страницу 130k которая была до вызова