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
-
... ... @@ -915,29 +915,29 @@ 915 915 Example program: 916 916 917 917 {{code language="assembler"}} 918 -; workingwithclock919 -; trap 60 - readingclockdatafromTCP/IPstack920 -; R3 - bufferaddresswheretoread921 -; resultinR3addressifsuccessful. R3=0iferror918 +; работа с часами 919 +; trap 60 - чтение данных часов из TCP/IP стека 920 +; R3 - адрес буфера куда надо считать 921 +; результат в R3 адрес, если успешно. R3=0 если ошибка 922 922 GetDateFromLAN: push R0 923 923 push R1 924 924 push R2 925 - call AZreset; reset925 + call AZreset; сбросим 926 926 tst R1 927 927 bne G60ERR 928 928 MOV #AZ$CSR,R1 929 929 mov #42,(R1) 930 -G60: TSTB (R1); checkexecutionresult931 - BPL G60; wait930 +G60: TSTB (R1); проверяем результат выполнения 931 + BPL G60; ждем 932 932 mov #32,(R1) 933 -1$: TSTB (R1); checkexecutionresult934 - BPL 1$; wait935 - TST (R1)+; increment936 - mov R3,R0; rememberR3address933 +1$: TSTB (R1); проверяем результат выполнения 934 + BPL 1$; ждем 935 + TST (R1)+; инкрементируем 936 + mov R3,R0; запомним R3 - адрес 937 937 mov #10.,R2; читаем 10 слов 938 -2$: mov (R1),(R3)+; readblockofwordsinto memory938 +2$: mov (R1),(R3)+; читаем блок слов в память 939 939 sob R2,2$ 940 - mov R0,R3; successful,returnaddresstoR3940 + mov R0,R3; успешно, вернем адрес в R3 941 941 br 0END$ 942 942 G60ERR: CLR R3 943 943 0END$: pop R2 ... ... @@ -946,50 +946,52 @@ 946 946 return 947 947 {{/code}} 948 948 949 - Allcommandssetthereadybitupon completion.949 +все команды устанавливают бит готовности по завершению. 950 950 951 951 952 -= **[[AZБК®>>doc:Контроллеры AZБК® для компьютеров БК-0010 БК-0010\.01 БК-0011М.WebHome]] specificcommands=952 += **Команды специфические для [[AZБК®>>doc:Контроллеры AZБК® для компьютеров БК-0010 БК-0010\.01 БК-0011М.WebHome]]** = 953 953 954 - Thesecommandsareintendedforoperationof theAZБК®controller,developedfortheBKseriesof computers-BK-0010/BK-0010.01/BK-0011M.954 +Данные команды предназначены для работы контроллера AZБК®, разработанного для серии компьютеров БК - БК-0010/БК-0010.01/БК-0011М. 955 955 956 - OtherAZ®controllersignorethese commands.956 +Другие контроллеры AZ® игнорируют эти команды 957 957 958 -== 037: Restartof the**[[AZБК®>>doc:Контроллеры AZБК® для компьютеров БК-0010 БК-0010\.01 БК-0011М.WebHome]] **controllerand the entire computer==958 +== **037: перезапуск контроллера [[AZБК®>>doc:Контроллеры AZБК® для компьютеров БК-0010 БК-0010\.01 БК-0011М.WebHome]] и всей БК** == 959 959 960 - Commandcode037,thiscommandrestartstheAZ®microcontroller,whichalsocausesarestartof the BK-0010/BK-0010.01/BK-0011M itself960 +Код команды 037, данная команда осуществляет перезапуск микроконтроллера AZ®, что вызывает и перезапуск самой БК-0010/БК-0010.01/БК-0011М 961 961 962 - Exampleprogram962 +Пример программы 963 963 964 964 {{code language="assembler"}} 965 -AZ$CSR = 177220; commandandstatusregister(CSR)966 -AZ$DR = 177222; dataregister(DR)965 +AZ$CSR = 177220; регистр команд и состояния (CSR) 966 +AZ$DR = 177222; регистр данных (DR) 967 967 968 968 969 -; trap 57 - fullrestart970 -AZcouldReboot: call AZreset; resetAZsoitisreadytoreceive969 +; trap 57 - перезапуск БК полный 970 +AZcouldReboot: call AZreset; сбросим AZ дабы он был готов принимать команды 971 971 mov #037,@#AZ$CSR 972 972 return 973 973 {{/code}} 974 974 975 -== 044: Savingascreenshottoa file==975 +== **044: Cохранение скриншота в файл** == 976 976 977 -Command code 044, this command is designed to take a memory image of the specified size (or determined automatically based on saved parameters) technically, the command can serve as a debugging tool because it is capable of taking a memory image the general limitation on taking a memory image is 2MB per image 978 -\\service memory page 76(8) is used as parameters 977 +Код команды 044, данная команда предназначена для снятия образа памяти указанного размера (или определенного автоматически на основании сохраненных параметров) 978 +технически команда может служить как средство отладки ибо способная снимать образ памяти 979 +общее ограничение на снятие образа памяти - 2МБ на один образ 980 +\\в качестве параметров используется служебная страница памяти 76(8) 979 979 980 - Structureoffillinginformationabouta screenshot982 +Структура заполнения информации о скриншоте 981 981 982 982 {{code language="c"}} 983 -// screenshotheaderstructure985 +// структура хидера скриншота 984 984 typedef __packed struct screen_header 985 985 { 986 - unsigned short int tag; //mustbeequalto0240988 + unsigned short int tag; // должен быть равен 0240 987 987 988 - startaddressinwords-forwardtaskinphysicaladdresses989 - unsigned int length; // lengthinwords-forwardtaskinphysicaladdresses990 + unsigned int begin_adress; // начальный адрес в словах - прямая задача в физических адресах 991 + unsigned int length; // длина в словах - прямая задача в физических адресах 990 990 991 - unsigned short int begin_page; startpage-number-forwardtaskinpagenumbers992 - unsigned short int len_pages; numberofpages-forwardtaskinpagenumbers993 + unsigned short int begin_page; // начальная страница - номер - прямая задача в номерах страниц 994 + unsigned short int len_pages; // количество страниц - прямая задача в номерах страниц 993 993 994 994 unsigned short int R177300; // 995 995 unsigned short int R177302; // ... ... @@ -1007,29 +1007,29 @@ 1007 1007 unsigned short int R177332; // 1008 1008 unsigned short int R177334; // 1009 1009 unsigned short int R177336; // 1010 - unsigned short int R177340; // - Windowactivationcontrolregister-windowmasks1011 - unsigned short int R177342; // - Controlregisterr/operwindow1012 - unsigned short int R177344; // - Shadowwindowcontrol register-windowmasks1013 - unsigned short int R177346; // - Mappercontrolregister1014 - unsigned short int R177350; // - copybyrecordregister177130inmemorymanagementwritemodeinSMK1015 - copybyrecordregister177716inmemorymanagementwritemodeinBK11M1012 + unsigned short int R177340; // - Регистр управления активацией окно - маски окон 1013 + unsigned short int R177342; // - Регистр управления r/o на окно 1014 + unsigned short int R177344; // - Регистр управления shadow окон - маски окон 1015 + unsigned short int R177346; // - Регистр управления маппером 1016 + unsigned short int R177350; // - регистр копия по записи 177130 в режиме записи управления памятью в SMK 1017 + unsigned short int R177352; // - регистр копия по записи 177716 в режиме записи управления памятью в БК11М 1016 1016 1017 - unsigned short int R177230; // - controlregister1018 - unsigned short int R177232; // - displaystartpagenumberregister-upperpage(layer0)1019 - unsigned short int R177240; // - displaystartpagenumberregister-upperpage(layer1)1020 - unsigned short int R177242; // - displaystartpagenumberregister-upperpage(layer2)1021 - unsigned short int R177244; // - verticalscrollregisterlayer21022 - unsigned short int R177246; // - verticalscrollregisterlayer11023 - unsigned short int R177250; // - verticalscrollregisterlayer01024 - unsigned short int R177252; // - horizontalscrollregisterlayer01025 - unsigned short int R177254; // - horizontalscrollregisterlayer11026 - unsigned short int R177256; // - horizontalscrollregisterlayer21019 + unsigned short int R177230; // - регистр управления 1020 + unsigned short int R177232; // - регистр номера страницы начала отображения - верхняя страница (слой 0) 1021 + unsigned short int R177240; // - регистр номера страницы начала отображения - средняя страница (слой 1) 1022 + unsigned short int R177242; // - регистр номера страницы начала отображения - нижняя страница (слой 2) 1023 + unsigned short int R177244; // - регистр вертикального скролинга слой 2 1024 + unsigned short int R177246; // - регистр вертикального скролинга слой 1 1025 + unsigned short int R177250; // - регистр вертикального скролинга слой 0 1026 + unsigned short int R177252; // - регистр гозизонтального скролинга слой 0 1027 + unsigned short int R177254; // - регистр гозизонтального скролинга слой 1 1028 + unsigned short int R177256; // - регистр гозизонтального скролинга слой 2 1027 1027 1028 1028 unsigned short int paldata[338]; // 1029 1029 } screen_header_t; 1030 1030 {{/code}} 1031 1031 1032 - Examplecodeforfillingamemory page1034 +Пример кода для заполнения страницы памяти 1033 1033 1034 1034 {{code language="assembler"}} 1035 1035 ;--------------------------------------------------