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
-
... ... @@ -472,36 +472,36 @@ 472 472 To write the opposite way, you first need to transfer the entire data block from the CPU memory to the controller and then issue the command "Write the contents of the buffer to disk" 473 473 474 474 475 -== **016:Принятьблокданныхвбуфер**==475 +== 016: Receive data block into buffer == 476 476 477 - Кодкоманды016.Команданастраиваетконтроллернаприемблокаданныхипомещенииеговбуфер.Следующие256цикловзаписивDRпоместятданные,переданныечерезМПИ,вбуфер.478 -\\ Примерпрограммы.477 +Command code 016. The command sets the controller to receive a block of data and place it in the buffer. The next 256 write cycles to DR will place the data transferred via the QBUS in the buffer. 478 +\\Example program: 479 479 480 480 {{code language="assembler"}} 481 481 ;.................................. 482 482 483 -WrBuf=016; Символическоенаименованиекоманды483 +WrBuf=016; Symbolic name of the command 484 484 485 -; Передзаписьюнужновыполнитьтежедействия,чтоив486 -; пп. 3.1.-3.3.Обычно,этооднаитаже программа,487 -; простопослепункта3.3.выполняетсяпроверка"Что488 -; требуется:чтениеилизапись?"иразветвлениена489 -; программучтенияилизаписи.485 +; Before writing, you need to perform the same actions as in 486 +; pp. 3.1.-3.3. Usually, this is the same program, 487 +; just after point 3.3. a check is performed "What 488 +; is required: reading or writing?" and a branch is made to the 489 +; reading or writing program. 490 490 491 -; Послефрагментавп.3.3.вR3 остался адресCSR492 -; (177220). Будемсчитать,чтовR2находитсяадресв493 -; памятиЦП,гденаходитсяблок,подлежащийзаписи.494 -; Программаполученияэтогоадресанепоказана.491 +; After the fragment in point 3.3., the CSR address 492 +; (177220) remains in R3. We will assume that R2 contains the address in the CPU 493 +; memory where the block to be written is located. 494 +; The program for obtaining this address is not shown. 495 495 496 - MOV #400,R1; Готовимсчетчик496 + MOV #400,R1; Preparing the counter 497 497 498 - MOV #WrBuf,(R3)+; ПерешлемкомандувCSRи499 - переключимадресвR3на500 - 498 + MOV #WrBuf,(R3)+; Let's forward the command to the CSR and 499 +; switch the address in R3 to 500 +; DR 501 501 502 -4$: MOV (R2)+,@R3; Перешлемочередноеслово503 - данных504 - SOB R1,4$; иповторимэто256раз502 +4$: MOV (R2)+,@R3; Let's forward the next word 503 +; data 504 + SOB R1,4$; and repeat this 256 times 505 505 ;.................................. 506 506 {{/code}} 507 507