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
-
... ... @@ -1639,34 +1639,34 @@ 1639 1639 1640 1640 = Hall of Fame API Command Block = 1641 1641 1642 - Thisblockofcommandsisintendedforinteraction with the server[[Hall of Fame>>https://forum.maxiol.com/index.php?showtopic=5642]]1642 +Данный блок команд предназначен для взаимодействия с сервером [[Hall of Fame>>https://forum.maxiol.com/index.php?showtopic=5642]] 1643 1643 1644 1644 == **025: Инициализация Hall of Fame (HOF)** == 1645 1645 1646 - Commandcode025,thiscommandestablishesaconnectionto theHall of Fameserver,initializestheencryptedtunnelandprepares theAPIforwork.1646 +Код команды 025, данная команда устанавливает соединение с сервером Hall of Fame, инициализирует шифрованный тоннель и подготавливает API к работе. 1647 1647 1648 1648 Example program: 1649 1649 1650 1650 {{code language="assembler"}} 1651 -AZ$CSR = 177220 ; commandandstatusregister(CSR)1652 -AZ$DR = 177222 ; dataregister(DR)1651 +AZ$CSR = 177220 ; регистр команд и состояния (CSR) 1652 +AZ$DR = 177222 ; регистр данных (DR) 1653 1653 1654 -; buffers1655 -SNDBUF: .BLKW 256. ; sendbuffer1656 -RCVBUF: .BLKW 256. ; receivebuffer1654 +; буфера 1655 +SNDBUF: .BLKW 256. ; буфер передачи 1656 +RCVBUF: .BLKW 256. ; буфер приема ответа 1657 1657 SIDMEM: .BLKB 34. ; SID 1658 -SIDCST: .ASCII \{"SID":"\ ; SID header1658 +SIDCST: .ASCII \{"SID":"\ ; заголовок SID-а 1659 1659 .even 1660 1660 1661 -HOFINI: ; HOF initialization1662 - ; Theresultis aJSONresponse:1663 - ; sessionhash","RESULT":"OK"}1664 - ; or an error:1665 - ; 1666 - ; 1667 - ; Theresultisplaced inSNDBUF1668 - ; R5 indicatessuccess:1= SIDexists, 0=noSID1669 - 1661 +HOFINI: ; инициализация HOF 1662 + ;результатом является такой JSON 1663 + ;{"SID":"хеш сессии","RESULT":"OK"} 1664 + ;или ошибка 1665 + ;{"RESULT":"ERROR","DESCRIPTION":"SERVER_ERROR"} 1666 + ;{"RESULT":"ERROR","DESCRIPTION":"CONNECTION_ERROR"} 1667 + ; результат помещается в SNDBUF 1668 + ; в R5 фиксация успешности - =1 есть SID, =0 нет SID-а 1669 + 1670 1670 mov R5, -(SP) 1671 1671 mov R4, -(SP) 1672 1672 mov R3, -(SP) ... ... @@ -1674,29 +1674,29 @@ 1674 1674 mov R1, -(SP) 1675 1675 mov R0, -(SP) 1676 1676 1677 - mov #3,R5 ; numberof attempts1677 + mov #3,R5 ; количество попыток 1678 1678 1679 1679 220$: mov #AZ$CSR,R1 1680 - clr (R1) ; Send"Reset"command1681 -221$: tstb (R1) ; Checkcontrollerreadiness1682 - bpl 221$ ; Ifnotready,wait1680 + clr (R1) ; Пошлем команду "Сброс" 1681 +221$: tstb (R1) ; Проверим готовность контроллера 1682 + bpl 221$ ; Если не готов ждем 1683 1683 1684 - mov #25,(R1) ; initialization-command0251685 -20$: tstb (R1) ; checkexecutionresult1686 - bpl 20$ ; wait1684 + mov #25,(R1) ; инициализация - команда 025 1685 +20$: tstb (R1) ; проверяем результат выполнения 1686 + bpl 20$ ; ждем 1687 1687 1688 - ; Retrievethe result1689 - mov #22,(R1) ; outputthereadmemoryblockfrombufferto the bus1690 -21$: tstb (R1) ; checkexecutionresult1691 - bpl 21$ ; wait1692 - tst (R1)+ ; increment1688 + ; получим результат 1689 + mov #22,(R1) ; отдать на шину считанный блок памяти из буфера 1690 +21$: tstb (R1) ; проверяем результат выполнения 1691 + bpl 21$ ; ждем 1692 + tst (R1)+ ; инкрементируем 1693 1693 mov #SNDBUF,R3 1694 - mov #256.,R2 ; read256words;firstwordistheread result1695 -22$: mov (R1),(R3)+ ; readblockofwordsinto memory1694 + mov #256.,R2 ; читаем 256. слов; первое слово - результат чтения 1695 +22$: mov (R1),(R3)+ ; читаем блок слов в память 1696 1696 sob R2,22$ 1697 1697 1698 1698 1699 - ; DetermineifSIDexists1699 + ; надо понять - есть ли SID 1700 1700 mov #4,R0 1701 1701 mov #SNDBUF,R1 1702 1702 mov #SIDCST,R2 ... ... @@ -1705,11 +1705,11 @@ 1705 1705 sob R0,23$ 1706 1706 clr R5 1707 1707 inc R5 1708 - br 26$ ; success1708 + br 26$ ; успешно 1709 1709 1710 -24$: ; SID notfound!1710 +24$: ; SID не найден! 1711 1711 sob R5,220$ 1712 - clr R5 ; error-noSID1712 + clr R5 ; ошибка - нет SID-а 1713 1713 1714 1714 26$: mov (SP)+, R0 1715 1715 mov (SP)+, R1 ... ... @@ -1718,12 +1718,11 @@ 1718 1718 mov (SP)+, R4 1719 1719 mov (SP)+, R5 1720 1720 return 1721 - 1722 1722 {{/code}} 1723 1723 1724 -== 026: ExchangewithHall of Fame (HOF) ==1723 +== **026: обмен с Hall of Fame (HOF)** == 1725 1725 1726 - Commandcode026,thiscommandmakesadirectexchange withHall of Fame1725 +Код команды 026, данная команда осуществляет непосредственный обмен с Hall of Fame 1727 1727 1728 1728 Example program: 1729 1729