Last modified by Max on 2025/03/02 15:18

From version 2.63
edited by Max
on 2025/02/25 16:22
Change comment: (Autosaved)
To version 2.51
edited by Max
on 2025/02/25 15:22
Change comment: (Autosaved)

Summary

Details

Page properties
Content
... ... @@ -915,29 +915,29 @@
915 915  Example program:
916 916  
917 917  {{code language="assembler"}}
918 -; working with clock
919 -; trap 60 - reading clock data from TCP/IP stack
920 -; R3 - buffer address where to read
921 -; result in R3 address if successful. R3=0 if error
918 +; работа с часами
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; reset
925 + 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); check execution result
931 - BPL G60; wait
930 +G60: TSTB (R1); проверяем результат выполнения
931 + BPL G60; ждем
932 932   mov #32,(R1)
933 -1$: TSTB (R1); check execution result
934 - BPL 1$; wait
935 - TST (R1)+; increment
936 - mov R3,R0; remember R3 address
933 +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)+; read block of words into memory
938 +2$: mov (R1),(R3)+; читаем блок слов в память
939 939   sob R2,2$
940 - mov R0,R3; successful, return address to R3
940 + 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 -All commands set the ready bit upon completion.
949 +все команды устанавливают бит готовности по завершению.
950 950  
951 951  
952 -= **[[AZБК®>>doc:Контроллеры AZБК® для компьютеров БК-0010 БК-0010\.01 БК-0011М.WebHome]] **specific commands =
952 += **Команды специфические для [[AZБК®>>doc:Контроллеры AZБК® для компьютеров БК-0010 БК-0010\.01 БК-0011М.WebHome]]** =
953 953  
954 -These commands are intended for operation of the AZБК® controller, developed for the BK series of computers - BK-0010/BK-0010.01/BK-0011M.
954 +Данные команды предназначены для работы контроллера AZБК®, разработанного для серии компьютеров БК - БК-0010/БК-0010.01/БК-0011М.
955 955  
956 -Other AZ® controllers ignore these commands.
956 +Другие контроллеры AZ® игнорируют эти команды
957 957  
958 -== 037: Restart of the** [[AZБК®>>doc:Контроллеры AZБК® для компьютеров БК-0010 БК-0010\.01 БК-0011М.WebHome]] **controller and the entire computer ==
958 +== **037: перезапуск контроллера [[AZБК®>>doc:Контроллеры AZБК® для компьютеров БК-0010 БК-0010\.01 БК-0011М.WebHome]] и всей БК** ==
959 959  
960 -Command code 037, this command restarts the AZ® microcontroller, which also causes a restart of the BK-0010/BK-0010.01/BK-0011M itself
960 +Код команды 037,  данная команда осуществляет перезапуск микроконтроллера AZ®, что вызывает и перезапуск самой БК-0010/БК-0010.01/БК-0011М
961 961  
962 -Example program
962 +Пример программы
963 963  
964 964  {{code language="assembler"}}
965 -AZ$CSR = 177220; command and status register (CSR)
966 -AZ$DR = 177222; data register (DR)
965 +AZ$CSR = 177220; регистр команд и состояния (CSR)
966 +AZ$DR = 177222; регистр данных (DR)
967 967  
968 968  
969 -; trap 57 - full restart
970 -AZcouldReboot: call AZreset; reset AZ so it is ready to receive
969 +; trap 57 - перезапуск БК полный
970 +AZcouldReboot: call AZreset; сбросим AZ дабы он был готов принимать команды
971 971   mov #037,@#AZ$CSR
972 972   return
973 973  {{/code}}
974 974  
975 -== 044: Saving a screenshot to a 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 -Structure of filling information about a screenshot
982 +Структура заполнения информации о скриншоте
981 981  
982 982  {{code language="c"}}
983 -// screenshot header structure
985 +// структура хидера скриншота
984 984  typedef __packed struct screen_header
985 985  {
986 - unsigned short int tag; // must be equal to 0240
988 + unsigned short int tag; // должен быть равен 0240
987 987  
988 - unsigned int begin_adress; // start address in words - forward task in physical addresses
989 - unsigned int length; // length in words - forward task in physical addresses
990 + unsigned int begin_adress; // начальный адрес в словах - прямая задача в физических адресах
991 + unsigned int length; // длина в словах - прямая задача в физических адресах
990 990  
991 - unsigned short int begin_page; // start page - number - forward task in page numbers
992 - unsigned short int len_pages; // number of pages - forward task in page numbers
993 + 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; // - Window activation control register - window masks
1011 - unsigned short int R177342; // - Control register r/o per window
1012 - unsigned short int R177344; // - Shadow window control register - window masks
1013 - unsigned short int R177346; // - Mapper control register
1014 - unsigned short int R177350; // - copy by record register 177130 in memory management write mode in SMK
1015 - unsigned short int R177352; // - copy by record register 177716 in memory management write mode in BK11M
1012 + 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; // - control register
1018 - unsigned short int R177232; // - display start page number register - upper page (layer 0)
1019 - unsigned short int R177240; // - display start page number register - upper page (layer 1)
1020 - unsigned short int R177242; // - display start page number register - upper page (layer 2)
1021 - unsigned short int R177244; // - vertical scroll register layer 2
1022 - unsigned short int R177246; // - vertical scroll register layer 1
1023 - unsigned short int R177250; // - vertical scroll register layer 0
1024 - unsigned short int R177252; // - horizontal scroll register layer 0
1025 - unsigned short int R177254; // - horizontal scroll register layer 1
1026 - unsigned short int R177256; // - horizontal scroll register layer 2
1019 + 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 -Example code for filling a memory page
1034 +Пример кода для заполнения страницы памяти
1033 1033  
1034 1034  {{code language="assembler"}}
1035 1035  ;--------------------------------------------------