*NАМЕ TEST *TIME:24.00 *LIBRA:23 *DISC:705/SYSTEM,lcross *FILE:Lib,67,r *FILE:SCRATCH,30,W *PERSO:67 *ТАКЕ ТАРЕ:67 *CALL FICMEMOR *CALL LIBINIT:300000,40, Т Е С Т * *NО LIST *NО LOAD * *FTN * SUBROUTINE Z * DIMENSION М(10) * DАТА М/10(0)/ * CALL EXLIB(300000В) * CALL ELNAME(' MACR ') $ CALL ELMOVE(0) * CALL ELWRIT(М,10) * CALL ELCLOS * RETURN * END * *CALL Z * *STAND * *CALL ZMACRO *STAND *no list *MAIN МКВ/ASS *EXECUTE MAIN_SW:NАМЕ QF ; ;**************************************************** ;* * ;* П Е Р Е К Л Ю Ч А Т Е Л Ь * ;* ПРЕРЫВАНИЙ И ЭКСТРАКОДОВ * ;* * ;**************************************************** ;* ;* АДРЕС НАЧАЛА ПЕРЕКЛЮЧАТЕЛЯ ПРЕРЫВАНИЙ ФИКСИРОВАН ;* В СООТВЕТСТВУЮЩИХ МИКРОПРОГРАММАХ. СЕЙЧАС ОН ;* РАВЕН FFF8 0800 ( 514-Й МАТ.ЛИСТ ). ДАЛЕЕ ;* ДАЕТСЯ РАСПРЕДЕЛЕНИЕ В ОТНОСИТЕЛЬНЫХ АДРЕСАХ : ;* ;* 00:3F - ПРЕРЫВАНИЯ 1:64 ;* 40 - ГЛОБАЛЬНЫЙ СЕМАФОР ПАМЯТИ ;* 50 - ЭКСТРАКОДЫ НОВОГО РЕЖИМА ;* 51 - ЭКСТРАКОДЫ СТАРОГО РЕЖИМА (БЭСМ-6) ;* 52 - ЭКСТРАКОДЫ И НЕКОТОРЫЕ КОМАНДЫ СВС ;* 53 - ЗАПРЕЩЕННЫЕ КОМАНДЫ (ОСН.ФОРМАТ) ;* 5F - КОНТРОЛЬНАЯ СУММА ПРОГРАММЫ ;* 60 - ВХОД ПОСЛЕ ОБЩЕГО СБРОСА МАШИНЫ ;* BEG_С:EQU @FFF8 0800 ; НАЧ. С-ОБЛ. FREE_С:РССВ (0) ; КОНЕЦ С-ОБЛ. VOL_С:EQU FREE_С-BEG_С>>10 & @3FF MAIN_PAG:EQU BEG_С>>10 & @3FF ;PPLIST:EQU 127 ; ДЛЯ ПП PPLIST:EQU @3С0 ; ПП-АДРЕСА: F0000 ; BEG_V:EQU @FFFE 0000 ; НАЧ. V-ОБЛ. JUMPADR:LСВ NPASS,NEXPAG,LRW ,NEW_REG,HALTER,ERCNT ,PPMASK,CMDIV,MIRCOPY ,CPTIM(3),MSCALE(16) ,ADR(68),ATEST(128) ,BLTEST(256) ,OLDRP,ER6 LWS:EQU 1030 МАГАЗИНЫ:LСВ РАВ(11) ; ВОЗВРАТЫ ИЗ П/П ,РАПУ(80) ; П/УПР.(КРАТ.16) ,MST(40) ; ДЛЯ МАГАЗ.КОМАНД ,WS(LWS) ; РАБ.ЯЧЕЙКИ ;----- БЛОК СВЯЗИ С ПП : МС:EQU 40 ; КАНАЛЫ MJ:EQU 64 ; ЗАЯВКИ LО:EQU 200 ; ВЫВ.БУФЕР @F0000:BLOCK REFER(6),LAST_JОВ,PPINF ,HEADS(МС>>3),QUE(MJ>>3) ,JОВ(2*MJ),CON_IN(16) ,CON_OUT(LО),LAST_OUT ,(1),CNT ; ДОЛБЕЖКА:EQU REFER+@3FF ДОЛБЛИСТ:EQU @3F ; ЛИСТ=63 ; LIMIT:EQU LO/12 FREE_V:РСВ (0) ; КОНЕЦ V-ОБЛ. VOL_V:EQU FREE_V-BEG_V>>10 & @3FF MAIN_REG:EQU @C17F ; НАЧ.РЕЖИМ WORK_REG:EQU @402С ; РАБ.РЕЖИМ SТЕР:EQU 15 ; ШАГ ТЕСТА СТРАНИЦ SINDROM:EQU -1 ; СИНДРОМ КИМА QUANT:EQU @20001 ; 2**21 = 1 СЕК. CLOCK:EQU -8 ; ЧАСЫ ; М15:EQU @7FFF N:EQU 1 ; НОМ.ПРЕР. 8:BLOCK NG,Р2,Р1,TN,РА,RI,IА ; CONST FUL:НЕХ FFFF FFFF FFFF FFFF CHESS1:НЕХ АААА АААА АААА АААА CHESS2:НЕХ 5555 5555 5555 5555 WELLINT:НЕХ 0000 0180 0000 000Е COMINT:НЕХ 00А4 9800 0000 0000 ; S_NUM:НЕХ 7374 7501 7602 0304 :НЕХ 7705 0607 0809 1011 :НЕХ 7812 1314 1516 1718 :НЕХ 1920 2122 2324 2526 :НЕХ 7927 2829 3031 3233 :НЕХ 3435 3637 3839 4041 :НЕХ 4243 4445 4647 4849 :НЕХ 5051 5253 5455 5657 :НЕХ 8058 5960 6162 6364 :НЕХ 6566 6768 6970 7172 OLDCOP:НЕХ 3031 903В 3C3D ЕВЕС :НЕХ 1819 3233 2021 361В :НЕХ 0001 0203 Е5Е6 Е7Е8 :НЕХ 0809 0А0В E90D 0ЕЕА :НЕХ 1011 1213 1415 16DB OLDCOP2:НЕХ 8381 3233 1C1D 1682 :НЕХ 2021 8022 2425 2627 :НЕХ 2829 2А2В 2C2D 2E2F :НЕХ 3031 3233 3435 3637 :НЕХ 3839 3А3В 3C3D 3E3F CHES2OLD:НЕХ 7D55 5555 5555 5000 ; ; CMD ; ; ; П Р Е Р Ы В А Н И Я : ; ********************* ; ; ПРОЦЕССОР ПЕРЕКЛЮЧАЕТСЯ НА 0-Ю ГРУППУ РЕГИСТРОВ ; ПРЕЖНЕЕ СОСТОЯНИЕ ЭТИХ РЕГИСТРОВ НЕСУЩЕСТВЕННО. ; УСТАНАВЛИВАЮТСЯ: БПНП,БВП,РД,РОА,БЗО,БЗЗ,ПОП. ; УСТАНАВЛИВАЮТСЯ ЗАНОВО СЛЕДУЮЩИЕ РЕГИСТРЫ : ; ; TN - НОМЕР ПРЕРВАННОГО ПРОЦЕССА ; NG - НОМЕР АКТИВНОЙ ГРУППЫ ЕГО РЕГИСТРОВ ; Р1 - КОПИЯ РЕГИСТРА РЕЖИМОВ ПРЕРВ.ПРОЦЕССА ; Р2 - КОПИЯ РАСШИРЕНИЯ РЕГИСТРА РЕЖИМОВ ; RI - МАТ.АДРЕС КОМАНДЫ, ВЫЗВАВШЕЙ ПРЕРЫВАНИЕ ; РА - ФИЗ.АДРЕС КОМАНДЫ, ВЫЗВАВШЕЙ ПРЕРЫВАНИЕ ; IА - МАТ.АДРЕС ОПЕРАНДА, ВЫЗВАВШЕГО ПРЕРЫВАНИЕ ; СА - КОД ОПЕРАЦИИ АРБИТРА ; ;MOZY=80800 ; BEGIN:N VТМ 1 JМР INT :N VТМ 2 JМР INT :N VТМ 3 JМР INT :N VТМ 4 JМР INT :N VТМ 5 JМР EXTINT ; ПРОГРАММНОЕ :N VТМ 6 JМР INT :N VТМ 7 JМР INT :N VТМ 8 JМР INT :N VТМ 9 JМР INT :N VТМ 10 JМР INT :N VТМ 11 JМР INT :N VТМ 12 JМР INT :N VТМ 13 JМР INT :N VТМ 14 JМР INT :N VТМ 15 JМР INT :N VТМ 16 JМР INT :N VТМ 17 JМР INT :N VТМ 18 JМР INT :N VТМ 19 JМР INT :N VТМ 20 JМР INT :N VТМ 21 JМР INT :N VТМ 22 JМР INT :N VТМ 23 JМР INT :N VТМ 24 JМР INT :N VТМ 25 JМР INT :N VТМ 26 JМР INT :N VТМ 27 JМР EXTINT ; ВНЕШНИЕ :N VТМ 28 JМР INT :N VТМ 29 JМР RЕТ_INT ; ШАГОВОЕ :N VТМ 30 JМР INT :N VТМ 31 JМР INT :N VТМ 32 JМР INT :N VТМ 33 JМР INT :N VТМ 34 JМР INT :N VТМ 35 JМР INT :N VТМ 36 JМР INT :N VТМ 37 JМР INT :N VТМ 38 JМР INT :N VТМ 39 JМР INT :N VТМ 40 JМР INT :N VТМ 41 JМР INT :N VТМ 42 JМР INT :N VТМ 43 JМР INT :N VТМ 44 JМР INT :N VТМ 45 JМР INT :N VТМ 46 JМР INT :N VТМ 47 JМР INT :N VТМ 48 JМР INT :N VТМ 49 JМР INT :N VТМ 50 JМР INT :N VТМ 51 JМР INT :N VТМ 52 JМР INT :N VТМ 53 JМР INT :N VТМ 54 JМР INT :N VТМ 55 JМР INT :N VТМ 56 JМР INT :N VТМ 57 JМР INT :N VТМ 58 JМР INT :N VТМ 59 JМР INT :N VТМ 60 JМР INT :N VТМ 61 JМР INT :N VТМ 62 JМР INT :N VТМ 63 JМР INT :N VТМ 64 JМР INT ; S_МЕМ:АТХ ; СЕМАФОР АТХ ; ПАМЯТИ ; :АТХ 0 АТХ @А2 ; :АТХ 0 ; 42 - РЕЗЕРВ :АТХ 0 ; 43 :АТХ 0 ; 44 :АТХ 0 ; 45 - ДАТА СБОРКИ :АТХ 0 ; 46 - D:\BESM6 :АТХ 0 ; 47 - \КТ.BIN :АТХ 0 ; 48 :АТХ 0 ; 49 ; ; СОЗДАНИЕ РЕЗЕРВНОЙ КОПИИ ПРОГРАММЫ ; СО СМЕЩЕНИЕМ НА 16 СТРАНИЦ ; СОРУ:14 VТМ 1+BEGIN-FREE_С SETR @3178 :14 ТТА FREE_С-1 14 ТТХ FREE_С+@3FFF 14 VLM *-1 JМР TEST ; ВОССТАНОВЛЕНИЕ ОСНОВНОГО ЭКЗЕМПЛЯРА RЕСОРУ:14 VТМ 1+BEGIN-FREE_С SETR @3178 :14 ТТА FREE_С+@3FFF 14 ТТХ FREE_С-1 14 VLM *-1 JМР TEST ; ; ; Э К С Т Р А К О Д Ы : ; ********************* ; :N VТМ 65 JМР INT :N VТМ 66 JМР INT :N VТМ 67 JМР INT :N VТМ 68 JМР INT ; INT:N WТС ADR-1 JМР ; НА ОБРАБОТКУ ПРЕР. ; ; CHEKSUMM:UТА N VТМ FREE_С-BEGIN-2 :N ARX BEGIN N VRM * АЕХ FUL ; КОНТР.СУММА 13 JAEQ ; СОВПАЛА ERCS:HLT 1 13 JМР ; :АТХ ; 59 :АТХ ; 5А :АТХ ; 5В :АТХ ; 5С :АТХ ; 5D :АТХ ; 5Е CSUMM:АТХ 0 ; ДЛЯ КОНТР. АТХ 0 ; СУММЫ ; ; ; ; ПРЕРЫВАНИЯ ПРИ ЗАПИСИ В ОЗУ: ; ============================ ; ; @15(21)- ЗАЩИТА АДРЕСА ПРИ ЗАПИСИ. ; ВОЗНИКАЕТ ПРИ "0" БПТЗ, ЕСЛИ ПРИ ЗАПИСИ В ; ПАМЯТЬ СЛОВО ПО ИСП.АДРЕСУ СОДЕРЖИТ "1" В ; 68 РАЗРЯДЕ ТЕГА. (СИГНАЛ PWRI ШИНЫ ДАННЫХ). ; ; ПРЕРЫВАНИЯ ПО ТЕГУ: ; =================== ; ; @0А(10) - ПРОГРАММНАЯ ИНТЕРПРЕТАЦИЯ ТЕГА КОМАНДЫ. ; ПРОИСХОДИТ ВО ВРЕМЯ ВЫБОРКИ КОМАНДНОГО СЛОВА ; ИЗ ОЗУ ПРИ "0" БПИНТ И "1" 72 РАЗРЯДА ТЕГА. ; ; @0В(11) - ПРОГРАММНАЯ ИНТЕРПРЕТАЦИЯ ТЕГА ОПЕРАНДА. ; ПРОИСХОДИТ ВО ВРЕМЯ ВЫБОРКИ ОПЕРАНДА ИЗ ОЗУ ; ПРИ "0" БПИНТ И "1" 72 РАЗРЯДА ТЕГА ОПЕРАНДА ; ; @16(22) - ЧУЖОЙ СУММАТОР. ВОЗНИКАЕТ В ОТСУТСТВИЕ БЧС ; ПРИ НЕСОВПАДЕНИИ 66 БИТА ТЕГА ТЕКУЩЕГО КОМА- ; НДНОГО СЛОВА С ПРИЗНАКОМ "РЭ" В РР. ; ; @17(23) - ЧУЖОЙ ОПЕРАНД. ВОЗНИКАЕТ В ОТСУТСТВИЕ БЧОП ; ПРИ НЕСОВПАДЕНИИ 66 БИТА ТЕГА ОПЕРАНДА С ; ПРИЗНАКОМ "РЭ" В РР. ; ; @0С(12) - ЗАЩИТА АДРЕСА ПРИ ЧТЕНИИ. ; ; @0D(13) - КОНТРОЛЬ КОМАНДЫ. ; ; @13(19) - ЗАЩИТА ВЫБОРКИ КОМАНДЫ. ; ; @14(20) - ЗАЩИТА ПЕРЕДАЧИ УПРАВЛЕНИЯ. ; ; ПРЕРЫВАНИЯ ПРИ ОБРАЩЕНИИ К ОЗУ И ШИНЕ ДАННЫХ ; ============================================ ; ; 2 - МНОГОКРАТНАЯ ОШИБКА. (СИГНАЛ DERI ШИНЫ). ; 1 - ОТСУТСТВУЮЩИЙ БЛОК ПАМЯТИ. (СИГНАЛ AMBI). ; 3 - "TIME-OUT" ПРИ ОБРАЩЕНИИ К ОЗУ. ; ВЫРАБАТЫВАЕТСЯ ПРИ ОТСУТСТВИИ ОТВЕТА ОЗУ ; В ТЕЧЕНИЕ 100 МИКРОСЕКУНД. ; 4 - "TIME-OUT" ПРИ ОБРАЩЕНИИ К ШИНЕ. ; ВЫРАБАТЫВАЕТСЯ АРБИТРОМ ПРИ ОТСУТСТВИИ ОТВЕ- ; ТА ОТ ШИНЫ В ТЕЧЕНИЕ 100 МИКРОСЕКУНД. ; ; ПРЕРЫВАНИЯ ПО ПРИПИСКЕ: ; ======================= ; @0Е(14) - МАТЕМ.АДРЕС РАВЕН 0. ПСЕВДОПРЕРЫВАНИЕ. ; @0F(15) - ЧУЖОЙ РЕГИСТР ПРИПИСКИ ПРИ ЧТЕНИИ/ЗАПИСИ. ; ВОЗНИКАЕТ ПРИ НЕСОВПАДЕНИИ ПОЛЯ НОМЕРА ; ПРОЦЕССА В РЕГИСТРЕ ПРИПИСКИ С НОМЕРОМ ; ТЕКУЩЕГО ПРОЦЕССА. (ПРИ ПНП=255 СТРАНИЦА ; ДОСТУПНА ВСЕМ ПРОЦЕССАМ). ; @10(16) - ЧУЖОЙ РЕГИСТР ПРИПИСКИ ПРИ ВЫБОРКЕ КОМАНД. ; АНАЛОГИЧНО ПРЕДЫДУЩЕМУ. ; @11(17) - ЗАЩИТА СТРАНИЦЫ ПРИ ОБРАЩЕНИИ. ВОЗНИКАЕТ ; В ОТСУТСТВИЕ БП И БЗО, ЕСЛИ ОПЕРАНД КОМАНДЫ ; ЧТЕНИЯ/ЗАПИСИ НАХОДИТСЯ В ЗАЩИЩЕННОЙ СТРАНИ- ; ЦЕ ("0" 10-ГО РАЗРЯДА СООТВ. РП). ПРИ ; ВЫБОРКЕ КОМАНДЫ ЭТОГО ПРЕРЫВАНИЯ НЕ БЫВАЕТ. ; @12(18) - ЗАЩИТА СТРАНИЦЫ ПРИ ЗАПИСИ. ВОЗНИКАЕТ В ; ОТСУТСТВИЕ БП И БЗЗ И "0" 9-ГО РАЗРЯДА РП. ; 8 - ОТРИЦАТЕЛЬНЫЙ НОМЕР СТРАНИЦЫ У КОМАНДЫ. ; БЛОКИРУЕТСЯ ПРИЗНАКАМИ БП ИЛИ РОА. ; 9 - ОТРИЦАТЕЛЬНЫЙ НОМЕР СТРАНИЦЫ У ОПЕРАНДА. ; ; РАЗНЫЕ ПРОЧИЕ ПРЕРЫВАНИЯ: ; ========================= ; 7 - ОТСУТСТВУЮЩИЙ АДРЕС ПАМЯТИ. ВОЗНИКАЕТ ТОЛЬКО ; В НОВОМ РЕЖИМЕ ПРИ НЕСОВПАДЕНИИ 21-32 И 20 ; РАЗРЯДОВ МАТЕМАТИЧЕСКОГО (ИЛИ ФИЗИЧЕСКОГО, ; ЕСЛИ БП) АДРЕСА ОПЕРАНДА ИЛИ КОМАНДЫ. ; @18(24) - ЗАПРОС МОДИФИКАЦИИ ПРИОРИТЕТОВ СТРАНИЦ. ; ПСЕВДОПРЕРЫВАНИЕ. ; @1А(26) - "TIME-OUT" ПРИ БЛОКИРОВКЕ ВНЕШНИХ ПРЕРЫВАНИЙ ; ВОЗНИКАЕТ ПРИ СРАБАТЫВАНИИ МИКРОСЕКУНДНОГО ; ТАЙМЕРА, ВКЛЮЧАЮЩЕГОСЯ ОДНОВРЕМЕННО С БВП. ; @1Е(30) - ОБРАЩЕНИЕ БЛОКА СВЯЗИ ПП ЗА ЧТЕНИЕМ/ЗАПИСЬЮ ; РЕГИСТРОВ. ПСЕВДОПРЕРЫВАНИЕ. ; @1D(29) - ШАГОВОЕ ПРЕРЫВАНИЕ. ; ; @1В(27) - ВНЕШНИЕ ПРЕРЫВАНИЯ. ; ; 5 - ПРОГРАММНО ИМИТИРОВАННЫЕ ПРЕРЫВАНИЯ. ; ВОЗНИКАЮТ ПРИ ВЫДАЧЕ КОМАНДЫ WMOD @1С13 ; ИЛИ ПРИ УСТАНОВКЕ В "0" ТАЙМЕРА СЧЕТН.ВРЕМ. ; "1" 40 РАЗРЯДА ГРП - ОТ ТАЙМЕРА ; "1" 41 РАЗРЯДА ГРП - ОТ ПРОГРАММЫ ИЛИ ПП. ; ; @1С(28) - HALT. ВОЗНИКАЕТ ПО КОМАНДЕ HALT, ПО ЗАПРОСУ ; ОТ ПП, ПРИ ПРЕРЫВАНИИ С НАЛИЧИЕМ ПОП, ; ПРИ ПУЛЬТОВОМ ОСТАНОВЕ. ; ; ПРЕРЫВАНИЯ, ФИКСИРУЕМЫЕ В МИКРОПРОГРАММАХ: ; ========================================== ; ; @1F(31) - МЛАДШИЕ 16 Р. ЧАСОВ СЧЕТНОГО ВРЕМЕНИ = 0 ; @20(32) - МЛАДШИЕ 16 Р. ТАЙМЕРА СЧЕТНОГО ВРЕМЕНИ = 0 ; @21(33) - ПЕРЕПОЛНЕНИЕ. ПРИ "0" БПП ПОРЯДОК РЕЗУЛЬТА- ; ТА АРИФМ.ОПЕРАЦИИ С ПЛАВ.ЗАПЯТОЙ ПРЕВЫШАЕТ ; 2047, ИЛИ ВЫХОД ЗА 64 (32) РАЗРЯДА ПРИ РАБО- ; ТЕ С ЦЕЛОЧИСЛЕННЫМИ СЛОВАМИ (ПОЛУСЛОВАМИ). ; @22(34) - ПЕРЕПОЛНЕНИЕ ПОРЯДКА БЭСМ-6. ; ВОЗМОЖНО В РЕЖИМЕ ЭМУЛЯЦИИ ПРИ НАЛИЧИИ ББЧ. ; @23(35) - ДЕЛЕНИЕ НА 0. ; @24(36) - ПЕРЕПОЛНЕНИЕ ПОЛЯ УПРЯТЫВАНИЯ. ВОЗНИКАЕТ ; В ОТСУТСТВИЕ БППУ ПРИ ЭКСТРАКОДАХ ПОСЛЕ ; УПРЯТЫВАНИЯ РЕГИСТРОВ В ПАМЯТЬ, ЕСЛИ ; ПОЛЕ УПРЯТЫВАНИЯ УПЕРЛОСЬ В КОНЕЦ СТРАНИЦЫ. ; @25(37) - НЕЗАКОННЫЙ ОПЕРАНД. ВОЗНИКАЕТ В РЕЖИМЕ ; ЭМУЛЯЦИИ, ЕСЛИ ПРИ "1" 64 Р. ИМЕЕТСЯ ХОТЯ БЫ ; ОДНА "1" В 63-59 Р. СУММАТОРА ИЛИ ОПЕРАНДА ; ПРИ ВЫПОЛНЕНИИ ЛОГИЧЕСКИХ И СДВИГОВЫХ КОМАНД ; ИАОП=<МАТ.АДР.ОПЕРАНДА> ИЛИ 0 ДЛЯ СУММАТОРА. ; @26(38) - ВЫБОРКА КОМАНДЫ ПО МАТ.АДРЕСУ 0. ; ; 39:64 - НЕ ЗАДЕЙСТВОВАНЫ : ; ; ========================================= ; TEST: 14 VТМ MAIN_REG +@80 14 CLRR @Е0000 ; НАЧАЛЬНЫЙ 14 SETR ; РЕЖИМ + БВП UТА 1<<5 WMOD @1818 ; ГРУППА=1 14 VТМ MAIN_REG +@80 UТА 8 WMOD @1819 ; ПРОЦЕСС=8 ; ПРИПИСКА БЛОКА СВЯЗИ С ПП UТА PPLIST<<10 +@3FF WMOD @7С0 ; F0000 UТА -1 WMOD @7FF ; ТУТ ПП-МАСКА WMOD @1С15 ; ТАЙМЕР 12 VJM SETGR WMOD @1Е ; =0 АТХ -4 ; ГАШ. ПП-МАСКИ WMOD @1802 ; И ГРП АТХ HEADS АТХ QUE 15 VТМ REFER UТА HEADS-REFER ; ЗАНЕСЕНИЕ UTS QUE-REFER ; ПОСТОЯННЫХ UTS JОВ-REFER ; УКАЗАТЕЛЕЙ UTS CON_IN-REFER ; ДЛЯ БЛОКА UTS CON_OUT-REFER ; СВЯЗИ С ПП UTS LО UTS WMOD @1С14 ; ЧАСЫ ; 14 VТМ MAIN_REG ; НАЧ.РЕЖИМ 14 CLRR @Е0000 ; В ИСП. 14 SETR ; ЧАСТЬ (БЕЗ БВП) ; 14 VТМ -30 ; РОСПИСЬ :14 WMOD 31 ; 0-Й ГРУППЫ 14 VLM * UТА РАПУ+64 WMOD 15 ; МАГАЗИН WMOD @1D ; РАПУ WMOD @13 ; РАВ UТА -1 WMOD @14 ; ТАЙМЕР WMOD @15 ; И СЧ-К ВРЕМЕНИ WMOD @16 ; ОБРАБОТКИ ПРЕР. WMOD @1С19 ; СБРОС КЭША JМР SETRP ; SETGR:RMOD @1818 ATI 2 ; Р Н Г IТА 14 ASN 1024-10 2 WMOD @11 ; В РР ГРУППЫ 14 CLRR @Е0000 14 SETR UТА @3F ASN 1024-16 ; РЕЗЕРВНАЯ AOU 1 ; ГРУППА = 31 2 WMOD @12 ; В РРР UТА РАПУ 2 WMOD @1D UТА РАВ 2 WMOD @13 RMOD @1819 ; РНП 2 WMOD @1Е ; В СВОЮ ГРУППУ WMOD @3FE ; И В РЕЗЕРВНУЮ UТА 12 UТС 2 JMNE ; ; ЕСЛИ УЖ ТАК СЛУЧИЛОСЬ, ЧТО ПОПАЛИ ; В 0-Ю ГРУППУ, КУЛЬТУРНО УЙДЕМ В 1-Ю. ; 3 VТМ @20 ; ГРУППА 1 IТА 3 ASN 1024-3 ; ССЫЛКУ - AOU 1 ; - В СВОЙ 2 WMOD @12 ; РРР UТА MAIN_REG ASN 1024-10 3 WMOD @11 ; ГОТОВИМ РР, UТА SETGR 3 WMOD @1В ; СЧАС, IТА 14 3 WMOD 14 IТА 12 3 WMOD 12 ; И12 (ВЫХОД) JМР RЕТ_INT ; SETRP:UТА 14 VТМ 1022 ; ОЧИСТКА ПОЧТИ :14 WMOD @400 ; ВСЕХ РП 14 VRM * UТА PPLIST<<10 +@3FF WMOD @7С0 ; БЛ.СВЯЗИ С ПП ; ; ПРИПИСЫВАЕМ СЕБЯ К ФИЗ.ЛИСТАМ: 0-С ; И СВОЮ КОПИЮ СО СМЕЩЕНИЕМ НА 16 ЛИСТОВ ; 14 VТМ @2FF ; ЗАПР.ЗАПИСИ 13 VТМ 1-VOL_С :IТА 14 13 WMOD FREE_С>>10&@3FF + @3FF 13 WMOD VOL_С+@401; СИЛИН А+U @4000 ; 2-Й ЭКЗЕМПЛЯР 13 WMOD FREE_С>>10&@3FF + @40F 14 UТМ @400 ; С- ПРИПИСКА 13 VLM *-3 14 UТМ @100 ; РАЗР.ЗАПИСИ 13 VТМ 1-VOL_V :IТА 14 13 WMOD FREE_V>>10&@3FF + @3FF 13 WMOD VOL_V+@3FF; СИЛИН 14 UТМ @400 ; V- ПРИПИСКА 13 VLM *-2 13 VJM CHEKSUMM ХТА FREE_С-1 JANE INITQUE ; ; ЗАПАКОВКА СТАРОРЕЖИМНОЙ ЧАСТИ ТЕСТА ; SETR @1000; УСТ БЗЗ 1 VТМ TBEGIN - Т21 - 1 РАСК1:1 ТТА Т21 АТХ WS УТХ WS + 1 2 VТМ 1 РАСК2:2 НТА WS << 1 ASN @400 + 20 AAU @FF ATI 3; КОП-1 AEU @3F JANE РАСК3 2 НТА WS << 1 ASN @400 + 12 AAU @FF ATI 3; КОП - 2 4 VТМВ OLDCOP2 5 VТМ -79 + @28 JМР РАСК4 РАСК3:4 VТМВ OLDCOP 5 VТМ -79 РАСК4:4 ВТА AEI 3 JAEQ РАСК5 4 UТМ 1 5 VLM РАСК4 HLT 7 РАСК5:5 UТМ 79 IТА 5 А-U 16 JAGE РАСК7 ; КОРОТКИЙ АДРЕС 5 UТА @10 ASN @400 -3 6 VТМ =Н0000 0000 000F 8000 JМР РАСК8 ; ДЛИННЫЙ АДРЕС ; РАСК7:2 НТА WS<<1 AAU @7000 AEU @7000 :JANE *+1 UТС @40 ; БИТ 19 КОП :5 UТА -16 6 VТМ =Н0000 0000 000F F000 ; РАСК8:ASN @400 - 12 2 АЕН WS << 1 6 ААХ 2 АЕН WS << 1 2 АТН WS << 1 2 VRM РАСК2 ХТА WS + 1 AOU 2 АТХ WS + 1 ХТА WS АРХ =HF00FFFFFF00FFFFF AEN ASNA @400 + 4 AEN ХТУ WS + 1 1 ТТХ Т21 1 VRM РАСК1 ХТА CHES2OLD ТТХ CHESS+1 ; ; ЗАНОВО ПЕРЕСЧИТАЕМ КОНТР. СУММУ ; UТА АТХ CSUMM N VТМ FREE_С - BEGIN - 2 :N ARX BEGIN N VRM * AEU -1 АТХ CSUMM CLRR @FEFFF; СНЯТЬ БЗЗ ; ; РОСПИСЬ ВСЕЙ ПАМЯТИ НУЛЯМИ ; (ТОЛЬКО ПРИ ПЕРВОМ ЗАПУСКЕ) ; 7 VТМ 1023-64 13 VJM MEMORY RMOD @401 ATI 10 6 VTMF MSCALE SETR @3178 CLEM1:IТА 7 AEU PPLIST JAEQ CLEM2 IТА 7 А-U VOL_С JALT CLEM2 :JANE *+1 UТС ADR-BEG_V :14 VТМ -1023 7 UТС 6 FТА JAEQ CLEM2 IТА 7 ASN @400-10 AOU @3FF WMOD @401 UТА UТУ @34 :14 ТТХ 1024+1023 14 VLM * CLEM2:7 VRM CLEM1 IТА 10 WMOD @401 ; ХТА FREE_С-1 JANE INITQUE 14 VТМ 1+BEGIN-FREE_С ХТА ="DOUBLE-1" АТХ FREE_С-1 :14 ТТА FREE_С-1 ; СОЗДАЕМ СВОЮ 14 ТТХ FREE_С+@3FFF ; КОПИЮ 14 VLM *-1 ХТА ="DOUBLE-2" АТХ FREE_С+@3FFF CLRR MAIN_REG+@50000 ; ; НАЧ.СОСТОЯНИЕ ОЧЕРЕДЕЙ : ; INITQUE:UТА 14 VТМ 6-1023 :14 АТХ REFER+1023 14 VLM * 14 VТМ 2-MJ 15 VТМ MST :А+U 1 14 АТВ QUE<<3 +MJ-2 14 VLM *-1 ; 13 VJM CHEKSUMM ; ; АДРЕСА НАЧАЛ ПОДТЕСТОВ : ; (ЗАРАНЕЕ ИХ УСТАНОВИТЬ НЕ УДАЛОСЬ, ; Т.К. ТОВ.ДАВЫДОВ ПОХОЖЕ НЕВЕРНО ; ТРАНСЛИРУЕТ ДЛИННЫЕ СПИСКИ КОНСТАНТ). ; UТА 14 VТМ ER6-ATEST :14 АТХ ATEST 14 VRM * 2 VТМН ATEST ; ПОДТЕСТЫ РЕЖИМА ЭМУЛЯЦИИ : UТА Т21 & М15 2 АТН @21 UТА Т22 & М15 2 АТН @22 UТА Т23 & М15 2 АТН @23 UТА Т24 & М15 2 АТН @24 UТА Т25 & М15 2 АТН @25 UТА Т26 & М15 2 АТН @26 UТА Т27 & М15 2 АТН @27 UТА Т2А & М15 2 АТН @2А UТА Т2В & М15 2 АТН @2В UТА Т2С & М15 2 АТН @2С UТА Т30 & М15 2 АТН @30 UТА Т31 & М15 2 АТН @31 UТА Т32 & М15 2 АТН @32 UТА Т33 & М15 2 АТН @33 UТА Т34 & М15 2 АТН @34 UТА Т35 & М15 2 АТН @35 UТА Т36 & М15 2 АТН @36 UТА Т37 & М15 2 АТН @37 UТА Т38 & М15 2 АТН @38 UТА Т3А & М15 2 АТН @3А UТА Т40 & М15 2 АТН @40 UТА Т42 & М15 2 АТН @42 UТА Т43 & М15 2 АТН @43 UТА Т44 & М15 2 АТН @44 UТА Т45 & М15 2 АТН @45 UТА Т46 & М15 2 АТН @46 UТА Т47 & М15 2 АТН @47 UТА Т48 & М15 2 АТН @48 ; ; ПОДТЕСТЫ НОВОГО РЕЖИМА : UТА Т51 2 АТН @51 UТА Т52 2 АТН @52 UТА Т53 2 АТН @53 UТА Т54 2 АТН @54 UТА Т55 2 АТН @55 UТА Т56 2 АТН @56 UТА Т57 2 АТН @57 UТА Т5А 2 АТН @5А UТА Т5В 2 АТН @5В UТА Т5С 2 АТН @5С UТА Т60 2 АТН @60 UТА Т70 2 АТН @70 UТА Т71 2 АТН @71 UТА Т72 2 АТН @72 UТА Т73 2 АТН @73 UТА Т74 2 АТН @74 UТА Т75 2 АТН @75 UТА Т76 2 АТН @76 UТА Т77 2 АТН @77 UТА Т78 2 АТН @78 UТА Т80 2 АТН @80 UТА Т81 2 АТН @81 UТА Т82 2 АТН @82 UТА Т83 2 АТН @83 UТА Т8С 2 АТН @8С UТА Т41 2 АТН @41 ; 41-ЭКСТРАКОДЫ UТА Т41_ЕМР 2 АТН @42 ; 42-ПУСТОЙ ЭКСТРАКОД UТА Т41_ЕМР+1 2 АТН @43 ; 43 --"-- БЕЗ РЕЗ.ГР. UТА TPROGI 2 АТН @05 ; 05-ПРОГР.ПРЕРЫВАНИЯ UТА TINTER 2 АТН @3Е ; 3Е-ТЕГОВСКИЕ ПРЕР-Я UТА PINTER 2 АТН @3F ; 3F-СТРАНИЧНЫЕ ПРЕР-Я UТА LOOPINT 2 АТН @40 ; 40-ЦИКЛ.ПРЕР.ПО "КК" UТА Т4А 2 АТН @4А ; 4А - ТТА,ТТХ UТА TSEM 2 АТН @4В ; 4В - СЕМАФОРЫ UТА Т90 2 АТН @90 UТА Т91 2 АТН @91 UТА Т94 2 АТН @94 UТА Т95 2 АТН @95 UТА Т96 2 АТН @96 UТА ТА0 2 АТН @А0 UТА ТА1 2 АТН @А1 UТА ТА2 2 АТН @А2 UТА ТА3 2 АТН @А3 UТА ТА4 2 АТН @А4 UТА ТА5 2 АТН @А5 UТА ТА6 2 АТН @А6 UТА ТА7 2 АТН @А7 UТА ТВ0 2 АТН @В0 UТА ТВ1 2 АТН @В1 UТА ТВ2 2 АТН @В2 UТА ТВ3 2 АТН @В3 UТА ТВ6 2 АТН @В6 UТА ТВ7 2 АТН @В7 UТА ТС0 2 АТН @С0 UТА ТС1 2 АТН @С1 UТА ТС2 2 АТН @С2 ;===================================== ; НЕРАБОТАЮЩИЕ ПОКА ПОДТЕСТЫ : ;===================================== UТА -1 АТХ BLTEST+@А3 ; ; ; ИНИЦИАЛИЗАЦИЯ СЧЕТЧИКОВ : ; INITCNT:15 VТМ NPASS UТА UTS -SТЕР ; FULL=-1 UTS LWS ; FULL=LWS UTS ; NEW_REG UTS ; HALTER UTS ; ERCNT UTS 7 АТХ -4 ; ОТКР.ПП-МАСКУ XTS =Н0007 0000 0000 0000 ; CMDIV UTS UTS ; ВРЕМЕНА=0 UTS UTS UTS -1 АТХ CLOCK ; ЧАСЫ=0 15 VТМ MST ХТА ="'@0А''@0D' *** " XTS ="COMPLEX" XTS ="TEST МКВ" XTS ="-8601." XTS ="VERSION:" XTS BEGIN+ @45 XTS =", NАМЕ:" XTS BEGIN+ @47 XTS BEGIN+ @48 UTS MST 5 VJM OUTPUT 15 VТМ MST UТА @0A0D ASN @400-48 UTS MST 5 VТМ TBEGIN JМР OUTPUT ; ; А ЗДЕСЬ СИЛИН ДЕРЖИТ ; СТАРОРЕЖИМНУЮ ЧАСТЬ ТЕСТА ! ; ;************************************************ ; ; I. РЕПЕРТУАР СТАРОЙ БЭСМ-6. ; ============================ ; ;************************************************ ; ; 21,22 - ПРОВЕРКА КОМАНД VZM , VIM , VТМ , UТМ: ; Т21:N VТМ @21 2 VТМ 0 2 JMEQ *+1 JМР ERROR :2 JMNE ERROR 2 JMNE ERROR 2 VТМ -1 2 JMEQ ERROR :2 JMEQ ERROR 2 JMNE Т22 JМР ERROR ; Т22:N VТМ @22 2 VТМ 1 3 VТМ -15 JМР *+2 :2 J+М 2 ; СДВИГ "1" ВЛЕВО 3 UТМ 1 :2 JMNE *-1 3 JMNE ERROR 13 VJM NEWTEST ; ; 23 - ПРОВЕРКА КОМАНДЫ VLM : ; Т23:N VТМ @23 N ХТА BLTEST U1А Т24 2 VТМ -999 3 VТМ -1000 :3 UТМ 1 2 VLM * 2 JMNE ERROR 3 JMNE ERROR :2 VLM ERROR ; А ЧТО ПРИ "0" 2 JMNE ERROR ; ; СЛАБОЕ МЕСТО: КОРОТКИЙ ЦИКЛ ; ХТА CFUL 14 VТМ -1023 :14 АТХ WS+1023 14 VLM * ХТА 15 VТМ -1023 :15 ARX WS+1023 15 VLM * АЕХ CFUL U1А ERROR 14 VТМ -1023 13 VТМ -1023 :14 ARX WS+1023 14 VLM * АЕХ CFUL U1А ERROR :13 ARX WS+1023 13 VLM * АЕХ CFUL U1А ERROR 12 VТМ -1023 11 VТМ -1023 :12 ARX WS+1023 12 VLM * АЕХ CFUL U1А ERROR :11 ARX WS+1023 11 VLM * АЕХ CFUL U1А ERROR 10 VТМ -1023 9 VТМ -1023 :10 ARX WS+1023 10 VLM * АЕХ CFUL U1А ERROR :9 ARX WS+1023 9 VLM * АЕХ CFUL U1А ERROR 8 VТМ -1023 7 VТМ -1023 :8 ARX WS+1023 8 VLM * АЕХ CFUL U1А ERROR :7 ARX WS+1023 7 VLM * АЕХ CFUL U1А ERROR 6 VТМ -1023 5 VТМ -1023 :6 ARX WS+1023 6 VLM * АЕХ CFUL U1А ERROR :5 ARX WS+1023 5 VLM * АЕХ CFUL U1А ERROR 4 VТМ -1023 3 VТМ -1023 :4 ARX WS+1023 4 VLM * АЕХ CFUL U1А ERROR :3 ARX WS+1023 3 VLM * АЕХ CFUL U1А ERROR 2 VТМ -1023 :2 ARX WS+1023 2 VLM * АЕХ CFUL U1А ERROR 1 VТМ -1023 :1 ARX WS+1023 1 VLM * 1 VТМ @23 АЕХ CFUL U1А ERROR 13 VJM NEWTEST ; ; 24 - ПРОВЕРКА КОМАНД ATI, IТА : ; Т24:N VТМ @24 N ХТА BLTEST U1А Т25 ХТА 2 VТМ -1 ATI 2 2 JMNE ERROR ХТА CFUL ATI 2 2 JMEQ ERROR IТА 2 ATI 3 3 JMEQ ERROR 3 UТМ 1 3 JMNE ERROR 13 VJM NEWTEST ; ; 25 - ПРОВЕРКА КОМАНД UТС, WТС : ; Т25:N VТМ @25 N ХТА BLTEST U1А Т26 UТС -1 3 VТМ 3 JMEQ ERROR 3 UТМ 1 3 JMNE ERROR :UТС -1 :3 VТМ 3 JMEQ ERROR 3 UТМ 1 3 JMNE ERROR :WТС СМ1 3 VТМ 3 JMEQ ERROR 3 UТМ 1 :3 JMNE ERROR WТС СМ1 :3 VТМ 3 JMEQ ERROR 3 UТМ 1 3 JMNE ERROR UТС -7 UТС 8 3 VТМ -2 3 JMEQ ERROR 3 UТМ 1 3 JMNE ERROR WТС СМ1 UТС 8 3 VТМ -6 3 UТМ -1 3 JMNE ERROR 3 VТМ -1 :3 WТС CHESS+1 4 VТМ IТА 4 3 АЕХ CHESS+1 ASN 64-33 U1А ERROR 3 VLM *-3 13 VJM NEWTEST ; ; 26 - ПРОВЕРКА КОМАНДЫ VJM : ; Т26:N VТМ @26 N ХТА BLTEST U1А Т27 2 VJM Т26_1 ; СПРАВА Т26_1:2 UТМ -Т26_1 2 JMNE ERROR :2 VJM Т26_2 ; СЛЕВА Т26_2:2 UТМ -Т26_2 2 JMNE ERROR :2 VJM *+2 :UТС -1 :3 VТМ 1 3 JMEQ ERROR :3 VТМ -1 2 VJM *+2 :3 VТМ -2 :3 UТМ 1 3 JMNE ERROR 13 VJM NEWTEST ; ; 27 - MTJ, J+М, VТМ, UТМ ; Т27:N VТМ @27 N ХТА BLTEST U1А Т2А UТС -13 2 VТМ 14 IТА 2 АЕХ I1 U1А ERROR 2 VТМ 15 2 UТМ -15 IТА 2 U1А ERROR 3 VТМ 1 3 J+М 2 IТА 2 АЕХ I1 U1А ERROR IТА 3 АЕХ I1 U1А ERROR 3 MTJ 2 IТА 2 АЕХ I1 U1А ERROR IТА 3 АЕХ I1 U1А ERROR 13 VJM NEWTEST ; ; 2А,2В - ПРОВЕРКА МАТ.АДРЕСА 0 ; И МОДИФИКАТОРА 0 : ; Т2А:N VТМ @2А N ХТА BLTEST U1А Т2В 2 VТМ -1 IТА 2 АТХ :ХТА ; СЛЕВА ATI 2 2 JMNE ERROR 2 VТМ -1 IТА 2 :АТХ ХТА ; СПРАВА ATI 2 2 JMNE ERROR Т2В:N VТМ @2В N ХТА BLTEST U1А Т2С 2 VТМ -1 IТА 2 ATI :IТА ; СЛЕВА ATI 2 2 JMNE ERROR 2 VТМ -1 IТА 2 :ATI IТА ; СПРАВА ATI 2 2 JMNE ERROR 13 VJM NEWTEST ; ; 2С - РАБОТА С РЕГИСТРОМ РЕЖИМА ; UZA, U1А, XTR, NTR, RТЕ, УТА ; Т2С:N VТМ @2С N ХТА BLTEST U1А Т30 2 VТМ 63 3 VТМ -63 LТ0С2С:2 NTR RТЕ 63 АТХ WS ITS 2 ASN 64-41 15 АЕХ U1А ERROR U1А ERROR XTR RТЕ 63 UZA ERROR АОХ U1А ERROR XTR WS RТЕ 63 ITS 2 ASN 64-41 15 АЕХ U1А ERROR U1А ERROR ; 15 VТМ WS+1 15 XTR 15 VТМ MST RТЕ 63 ITS 2 ASN 64-41 15 АЕХ U1А ERROR 2 UТМ -1 3 VLM LТ0С2С ; NTR 63 RТЕ @21 АЕХ Е42Х U1А ERROR NTR 0 UZA ERROR :U1А *+1 JМР ERROR :NTR 7 ; ЛОГ.ГР. U1А ERROR NTR 11 ; ГР.УМН. UZA ERROR АОХ U1А ERROR NTR 19 ; ГР.СЛОЖ. U1А ERROR ХТА CFUL UZA ERROR NTR 11 U1А ERROR NTR 19 UZA ERROR ; NTR 24 ; ГС+ГУ=ГС UZA ERROR NTR 12 ; ГУ+ГЛ=ГУ U1А ERROR ХТА I1 NTR 20 ; ГС+ГЛ=ГС U1А ERROR ХТА CFUL АЕХ ХТА УТА АЕХ CFUL U1А ERROR ; NTR 11 ; ЭТЛ БЫЛО В ; УТА 1025 ; НОВОМ ТЕСТЕ ; АЕХ =H002F FFFF FFFF FFFF ; U1А ERROR ; И ЕЩЕ НЕ РАБОТАЕТ ARX ; ДОЛЖНА UZA ERROR ; ПОЛУЧИТЬСЯ ARX CFUL ; ГР.УМН. U1А ERROR ААХ CFUL ; ЛОГ.ГР. UZA ERROR 13 VJM NEWTEST ; ; 30:39 - МАГАЗИННОЕ ОБРАЩЕНИЕ ; =============================== ; 30: 15 АТХ 31: XTS 32: ITS ; 33: 15 ХТА 34: SТХ 35: STI ; 36: 15 АТХ А 37: 15 ХТА А ; 38: 15 WТС 3А: 15 АОР(РАЗНЫЕ) ; Т30:N VТМ @30 N ХТА BLTEST U1А Т40 АТХ WS АТХ WS+1 АТХ WS+2 15 VТМ WS+1 ХТА CFUL 15 АТХ 15 UТМ -2-WS 13 VJM CHSTAKE ; Т31:N VТМ @31 15 VТМ WS ХТА XTS CFUL XTS XTS 15 UТМ -3-WS 13 VJM CHSTAKE ; Т32:N VТМ @32 15 VТМ WS IТА ITS ХТА CFUL ITS ITS 15 UТМ -3-WS 13 VJM CHSTAKE ; Т36:N VТМ @36 15 VТМ WS-1 ХТА 15 АТХ 1 15 АТХ 3 ХТА CFUL UТС 2 15 АТХ 15 UТМ 1-WS 13 VJM CHSTAKE ; Т33:N VТМ @33 ХТА АТХ WS+1 15 VТМ WS+3 15 ХТА ATI 2 ASN 64+24 ATI 3 15 ХТА ATI 4 ASN 64+24 ATI 5 15 ХТА ATI 6 ASN 64+32 ATI 7 13 VJM CHST2E ; Т34:N VТМ @34 15 VТМ WS+3 SТХ WS+4 ATI 2 ASN 64+32 ATI 3 SТХ WS+4 ATI 4 ASN 64+32 ATI 5 SТХ WS+4 ATI 6 ASN 64+32 ATI 7 13 VJM CHST2E ; Т35:N VТМ @35 15 VТМ WS+3 STI 6 ATI 6 ASN 64+32 STI 7 ATI 4 ASN 64+32 STI 5 ATI 2 ASN 64+32 ATI 3 13 VJM CHST2E ; Т37:N VТМ @37 15 VТМ WS+3 UТС -1 15 ХТА ATI 6 ASN 64+32 ATI 7 15 ХТА -2 ATI 4 ASN 64+32 ATI 5 15 ХТА -3 ATI 2 ASN 64+32 ATI 3 15 UТМ -3 13 VJM CHST2E ; Т38:N VТМ @38 4 VТМ 1 7 VТМ -1 3 VТМ -1 15 VТМ WS+3 15 WТС 6 VТМ 15 WТС 4 VТМ 15 WТС 2 VТМ 13 VJM CHST2E 15 VТМ WS ХТА I1 XTS XTS I2 XTS I3 15 WТС -2 2 VТМ 2 JMNE ERROR 15 UТМ -3-WS 15 JMNE ERROR ; ; РАНЕЕ ЗАБЫТЫЕ КОМАНДЫ : Т3А:N VТМ @3А 15 VТМ WS ХТА CHESS XTS CHESS+1 15 ААХ U1А ERROR ХТА CHESS XTS CHESS+1 15 ARX XTS CHESS XTS CHESS+1 15 АОХ 15 АЕХ U1А ERROR ХТА CHESS XTS CHESS+1 XTS CFUL 15 АРХ 15 AUX АЕХ CHESS U1А ERROR XTS CFUL 15 АСХ АЕХ I48 U1А ERROR XTS CFUL 15 ANX АЕХ I1 U1А ERROR ХТА CFUL 15 АТХ 15 ASX U1А ERROR 13 VJM NEWTEST ; ; 40 - ААХ,АОХ,АЕХ ; Т40:N VТМ @40 N ХТА BLTEST U1А Т42 ХТА CFUL ААХ U1А ERROR ХТА CFUL ААХ CFUL АЕХ CFUL U1А ERROR ХТА CHESS ААХ CHESS АЕХ CHESS U1А ERROR ХТА CHESS ААХ CHESS+1 U1А ERROR ХТА CHESS АОХ CHESS+1 АЕХ CFUL U1А ERROR 13 VJM NEWTEST ; ; 42 - ARX ; Т42:N VТМ @42 N ХТА BLTEST U1А Т43 ХТА I11 ARX I1 АЕХ I12 U1А ERROR ХТА CFUL ARX I1 АЕХ I1 U1А ERROR ХТА CFUL ARX CFUL АЕХ CFUL U1А ERROR 13 VJM NEWTEST ; ; 43 - АРХ, AUX ; Т43:N VТМ @43 N ХТА BLTEST U1А Т44 ХТА CHESS АРХ CFUL AUX C0FUL АЕХ CHESS+1 U1А ERROR ХТА CHESS АРХ CHESS+1 U1А ERROR ХТА CHESS АРХ CHESS AUX CHESS+1 АЕХ CHESS+1 U1А ERROR ХТА CFUL AUX CHESS+1 АЕХ CHESS+1 U1А ERROR 13 VJM NEWTEST ; ; 44 - АСХ, ANX ; Т44:N VТМ @44 N ХТА BLTEST U1А Т45 АСХ U1А ERROR ХТА CFUL АСХ АЕХ I48 U1А ERROR ХТА CHESS+1 АСХ IМ24 АЕХ I1 U1А ERROR 12 VТМ -48 11 VТМ 48 ХТА I1 TANXE:11 JMNE *+1 ХТА :АТХ WS ANX ITS 11 15 АЕХ U1А ERROR ХТА WS ASN 64-1 ITS 11 ААХ I7 15 АОХ 11 UТМ -1 12 VLM TANXE ХТА ANX CFUL АЕХ CFUL U1А ERROR 14 VТМ @201 IТА 14 ; ПРОВЕРКА ANX CFUL ; ЗАСЫЛКИ УТА АЕХ C008U ; ОСТАТКА U1А ERROR ; В РМР 13 VJM NEWTEST ; ; 45 - ASN, ASX ; Т45:N VТМ @45 N ХТА BLTEST U1А Т46 12 VТМ -48 11 VТМ 48 TSFT1E:ХТА C8U 11 ASN 64-1 ANX ITS 11 15 АЕХ U1А ERROR 11 UТМ -1 12 VLM TSFT1E 12 VТМ -48 11 VТМ 48 TSFT2E:ХТА I1 11 ASN 64-48 ANX ITS 11 15 АЕХ U1А ERROR 11 UТМ -1 12 VLM TSFT2E ХТА CFUL ASX CFUL U1А ERROR ХТА CHESS+1 ASX C0FUL АЕХ CHESS U1А ERROR ХТА CFUL ; А ЧТО ASN 64-12 ; ПОПАДЕТ УТА ; В РМР АЕХ CFFF ; ПРИ U1А ERROR ; СДВИГАХ ? ХТА CFUL ASN 64+4 УТА АЕХ CFU U1А ERROR 13 VJM NEWTEST ; ; 46 - Е+N, Е-N, Е+Х, Е-Х ; Т46:N VТМ @46 N ХТА BLTEST U1А Т47 12 VТМ -@7Е ХТА CFE8U АТХ WS L76Е:ХТА WS Е+N 64-1 АТХ WS ASN 64+41 ATI 14 12 J+М 14 14 JMNE ERROR 12 VLM L76Е ХТА WS Е-N 64+1 UZA ERROR 12 VТМ -@7Е ХТА C008U АТХ WS 11 VТМ -1 L761Е:ХТА WS Е-Х C7E8U АТХ WS ASN 64+41 ATI 14 11 J+М 14 14 JMNE ERROR 11 UТМ -1 12 VLM L761Е ХТА WS Е+Х C008U АЕХ C7E8U U1А ERROR 13 VJM NEWTEST ; ; 47 - А+Х, А-Х, Х-А ; Т47:N VТМ @47 N ХТА BLTEST U1А Т48 NTR 3 14 VТМ 64 IТА 14 А-Х I65 UZA ERROR А+Х I1 U1А ERROR АОХ U1А ERROR ХТА I2 Х-А I1 А-Х IМ1 U1А ERROR АОХ U1А ERROR ХТА I2 XTS I1 XTS I2 XTS I3 15 А-Х ; 3-2=1 U1А ERROR 15 А+Х ; 1+1 = 2 15 Х-А ; 2-2 = 0 U1А ERROR АОХ U1А ERROR ХТА CDU40L; 64 А-Х CDU42L; 66 UZA ERROR А+Х C848U; 2. U1А ERROR АОХ UZA ERROR АЕХ CDU; I0 U1А ERROR NTR 2 ХТА C848U; 2. XTS C84CU; 3. XTS C848U; 2. XTS C84CU; 3. 15 А+Х ; 3+2 15 А-Х ; 5-3 15 Х-А ; 2-2 U1А ERROR АОХ 13 VJM NEWTEST ; ; 48 - А*Х, А/Х ; Т48:N VТМ @48 N ХТА BLTEST U1А OLDFIN NTR 3 ХТА CDU5L А*Х C5UDL; 13/2**64 15 АТХ УТА 64 SТХ WS АЕХ CAU U1А ERROR ХТА WS АЕХ CAU41L; 65/2**24 U1А ERROR ХТА C5U5L; 5/2**64 А*Х CIM13; = -65 15 АТХ УТА 64 SТХ WS АЕХ CA1UFS U1А ERROR ХТА WS Е+N 64+24 АЕХ CD0FSBF; -65!- U1А ERROR NTR 2 ХТА C848U; 2. А*Х C84CU; 3. АТХ WS АЕХ C84CU; 3. АЕХ C02U U1А ERROR; !=6 ХТА WS; ВОССТ. А=6. А/Х C84CU; 3. АЕХ C848U; 2. U1А ERROR 13 VJM NEWTEST ;-------------------------------------- OLDFIN:JМР Т51 ; *** В ТЕСТ НОВОГО РЕЖИМА ;-------------------------------------- ; CHSTAKE:15 JMNE ERROR ХТА WS ATI 2 2 JMNE ERROR ASN 64+24 ATI 2 2 JMNE ERROR ХТА WS+2 ATI 2 2 JMNE ERROR ASN 64+24 ATI 2 2 JMNE ERROR ХТА WS+1 ATI 2 ASN 64+24 ATI 3 2 UТМ 1 2 JMNE ERROR 3 UТМ 1 3 JMNE ERROR ХТА UFSL1 АТХ WS АТХ WS+1 АТХ WS+2 13 JМР CHST2E:15 UТМ -WS 15 JMNE ERROR 2 UТМ -1 2 JMNE ERROR 3 UТМ 1 3 JMNE ERROR 4 JMNE ERROR 5 JMNE ERROR 6 UТМ -1 6 JMNE ERROR 7 UТМ 1 7 JMNE ERROR 13 JМР ; ; КОНСТАНТЫ ; I1:АТХ АТХ 1 I2:АТХ АТХ 2 I3:АТХ АТХ 3 I11:АТХ АТХ 11 I12:АТХ АТХ 12 I7:АТХ АТХ 7 I48:АТХ АТХ 48 CFUL:15 VLM @FFFFF 15 VLM @FFFFF СМ1:15 VLM @FFFFF 15 VLM @FFFFF UFSL1:15 VLM @FFFFF АТХ 1 C0FUL:7 VLM @FFFFF 15 VLM @FFFFF IМ24:15 VLM @FFFFF 15 VLM @FFFE8 C8U:8 АТХ АТХ CFU:15 АТХ АТХ CFFF:АТХ АТХ @FFF Е42Х:4 ATI АТХ CFE8U:15 JMNE АТХ C008U:0 ХТА АТХ C7E8U:7 JMNE АТХ I65:АТХ АТХ 65 IМ1: NTR @FFFF 15 VLM @FFFF CDU40L:13 АТХ АТХ @40 CDU41L:13 АТХ АТХ @41 CDU42L:13 АТХ АТХ @42; 66 ;C828U:8 *50 ;АТХ CDU:13 АТХ АТХ C848U:8 ХТА @7000 АТХ ; 2. C84CU:8 AVX @7000 АТХ ; 3. CDU5L:13 АТХ АТХ 5 C5UDL:5 АТХ АТХ @D C5U5L:5 АТХ АТХ 5 CAU:10 АТХ АТХ CAU41L:10 АТХ АТХ @41 ;C86AU:8 *52 @7000 ;АТХ ;C88DU:8 *71 @7000 ;АТХ C02U:ATI АТХ CIM13:13 NTR @FFF 15 VLM @7FF3 CA1UFS:10 NTR @7FFF 15 VLM @7FFF CD0FSBF:13 А*Х @FFF 15 VLM @7FBF; -65!- ;CIM65:13 *77 @FFF ;15 VLM @7F57 CHESS:10 UТМ @ААААА 10 UТМ @ААААА АТХ АТХ ; ; КОНЕЦ ТЕСТА ЭМУЛЯЦИИ ; TBEGIN:15 VТМ MST RMOD @1С14 ; СЬЕМ ЧАСОВ AEU -1 ; ИНВЕРСИЯ АТХ WS RMOD @15 ASN @400-32 АТХ WS+1 RMOD @16 ААХ =Н0000 0000 FFFF FFFF АОХ WS+1 AEU -1 АТХ WS+1 ; ВРЕМЯ ОБР.ПРЕР. 2 VТМ -1 ХТА ="'@0D''@0D'ROUND-" XTS NPASS ASN @400+48 14 VJM DНЕХ8 ASN @400-32 АОХ ="'0''0''0''0'. Т=" LTIM: 2 XTS WS+1 А/U @400 ; "1" = 1 МСЕК. 14 VJM DНЕХ8 2 XTS CPTIM+1 А/U @400 2 XTS WS+1 ; ОБНОВЛЕНИЕ 2 АТХ CPTIM+1 ; ВРЕМЕН А/U @400 15 А-L 14 VJM DНЕХ8 ASN @400-24 ASN @400+16 АОХ =" ('0''0''0''0''0')" XTS =" Т/INT=" 2 VLM LTIM ХТА =". CLOCK:" XTS ="00.00.00" 15 MTJ 13 13 MSN @400-3 XTS =Z".00'@0A''@0D'" XTS CLOCK AEU -1 АТХ CPTIM+2 A/U 10000 ; 1/100 CEK. A/U 360000 ATI 2 ; "H" UTA AOY A/U 6000 ATI 3 ; "M" UTA AOY A/U 100 ATI 4 ; "S" UTA AOY ATI 5 ; "SS" 14 VTM -3 :14 ITA 5 A/U 10 AOU @30 ; "0" 13 ATB UTA @30 AOY 13 ATB 1 13 UTM 3 :14 VLM *-4 5 VТМ NEWTESTI 13 VТМ Т51;ОБХОД РЕЖИМА ЭМУЛЯЦИИ XTA BLTEST + @21 :JANE *+2 ; - ЦЕЛИКОМ ХТА NEW_REG :JALT *+1 13 VТМ Т21 & М15 ; НАЧИНАЕМ С РЕЖИМА ЭМУЛЯЦИИ :UТА MST JМР OUTPUT ; ; TLOOP:IТА 13 ; ДЛЯ ЗАЦИКЛИВАНИЯ АТН NPASS<<1 +1 ; ПОДТЕСТА UТА =Z"- ОК.'@А''@D'" 5 VJM OUTPUT ; NEWTESTI:UТА ERRINT ; ПЕРЕХВАТ 2 VТМ -63 ; ВСЕХ ПРЕРЫ- :2 АТХ ADR+63 ; ВАНИЙ - НА 2 VLM * ; "ERRINT" UТА EXTR 2 VТМ -3 :2 АТХ ADR+67 2 VLM * 14 VТМ WORK_REG ; РАБ.РЕЖИМ 12 VJM SETGR ; NEWTEST: ХТА CON_IN JANE ANAL ; БЫЛ ВВОД ХТА NPASS ATI 2 :2 JMNE *+1 ; ОДИН ТЕСТ 13 MTJ 2 ; ВСЕ ПОДРЯД :15 VТМ MST ; УСТ.МАГАЗИНА ARX =Н0000 0001 0000 0000 АТХ NPASS 14 VТМ MAIN_REG ; УСТ., ЕСЛИ 14 CLRR @Е0000 ; НАДО, ФАКУЛЬТ. WТС NEW_REG ; РЕЖИМ (НАПР.РШ) SETR 2 JМР ; ; ОБРАБОТКА ВНЕШНИХ ПРЕРЫВАНИЙ : ; ================================ ; EXTINT:RMOD @1802 15 АТХ 2 ; FOR TEST-05 JМР EXTINT1 ; ENDTIM:UТА QUANT NG WMOD @14 UТА -1 ; ПОДКАЧКА ТАЙМЕРА WMOD @14 ; 0-Й ГРУППЫ ; RЕТ_INT: CMON -1 ; *** RMOD @1802 EXTINT1:ААХ WELLINT WMOD @1802 :JANE *+1 NG IJP :AAU @F0000 JAEQ PULT ANU -1 ATI 2 RMOD @1802 2 AEN WMOD @1802 2 UТМ 41-65 2 JMEQ ENDTIM ; 40-Й РАЗРЯД :N VТМ 5 JМР INT ; 41-ПРОГРАММНОЕ ; PULT:WMOD @1С19 ; СБРОС КЭША SMON @80 ; *** ХТА PPINF ASN @400+8 AAU @FF JAEQ RETPULT ; ЭТО ВВОД ATI 3 ; КОНЕЦ ВЫВОДА UТА -МС :ATI 11 11 ВТА QUE<<3 JAEQ BADPULT ; НЕТ ЗАЯВКИ ATI 5 3 J-М 5 5 JMNE *-2 3 UТС -1 3 ХТА JОВ-1 AAN 64-39 :JANE *+1 HLT @39 :3 АТХ JОВ+511 ; -ДУБЛЬ 3 ВТА QUE<<3 ; ПРОДВИЖКА 11 АТВ QUE<<3 ; ОЧЕРЕДИ 3 ВТА QUE<<3+4096 11 АТВ QUE<<3+4096 ; -ДУБЛЬ ВТА QUE<<3 3 АТВ QUE<<3 ВТА QUE<<3+4096 3 АТВ QUE<<3+4096 ; -ДУБЛЬ IТА 3 ; В СПИСОК АТВ QUE<<3 ; СВОБ.ЗАЯВОК АТВ QUE<<3+4096 ; -ДУБЛЬ ; RETPULT: UТА АТХ PPINF RMOD @1802 ; СИЛИН СТАВИЛ AAU @FFFF1 ; СРАЗУ 3 WMOD @1802 ; ЕДИНИЧКИ ! JМР RЕТ_INT BADPULT:HLT @40 JМР RETPULT ; ; ОЖИДАНИЕ ВВОДА С КОНСОЛИ : ; :ХТА CON_IN JAEQ * ; INPUT: WMOD @1С19 НТА REFER<<1 JANE DPORT ХТА CON_IN 13 JANE 5 VТМ INPUT-1 UТА =Z" WAIT> " ; ; ; ; ВЫДАЧА СТРОКИ НА КОНСОЛЬ : ; ПОРТЯТСЯ РЕГИСТРЫ: 11,12,14 ; OUTPUT:ATI 11 ; АДРЕС ТЕКСТА WMOD @1С19 НТА REFER<<1 JANE DPORT 14 VТМ LIMIT SETR @80 ; SMON @80 ; *** UТА -МС :ATI 12 12 ВТА QUE<<3 JAEQ *+2 14 VRM *-1 ХТА LAST_OUT+1 АТХ LAST_OUT :CLRR @FFF7F ; CMON @FFF7F ; *** OUTPUT11:RMOD @1819 ASN @400-56 ; ПРОЦЕСС АОХ LAST_OUT ; АДР.В БУФЕРЕ АТХ LAST_OUT+1 ATI 12 А+U CON_OUT-REFER ; AON 64-40 ; +ГОТОВНОСТЬ АТХ LAST_JОВ ; ЗАЯВКА :11 ХТА 12 АТХ CON_OUT ; ПЕРЕПИСЬ 11 UТМ 1 ; В КОЛЬЦЕВОЙ 12 UТМ 1-LО :12 JMLT *+1 12 VТМ -LО :12 UТМ LО AAU @FF JANE *-4 5 UТС 14 JMLE ; СВЕРХ ЛИМИТА ! SETR @80 ; SMON @80 ; *** IТА 12 ; СВОБ. АТХ LAST_OUT ; СЛОВО :ВТА QUE<<3 ATI 14 ; СВОБ.ЭЛ-Т 14 ВТА QUE<<3 АТВ QUE<<3 ; СНЯЛИ С ГОЛОВЫ АТВ QUE<<3+4096 ; -ДУБЛЬ ХТА LAST_JОВ 14 UТС -1 14 АТХ JОВ-1 14 АТХ JОВ+511 ; -ДУБЛЬ UТА -МС :ATI 11 11 ВТА QUE<<3 JANE *-1 14 АТВ QUE<<3 14 АТВ QUE<<3+4096 ; -ДУБЛЬ IТА 14 11 АТВ QUE<<3 11 АТВ QUE<<3+4096 ; -ДУБЛЬ CLRR @FFF7F ; CMON @FFF7F ; *** 5 JМР ; ;--- АНАЛИЗ ВВЕДЕННОЙ ДИРЕКТИВЫ : ; ПРОИЗВОДИТСЯ В КОНЦЕ КАЖДОГО ПОДТЕСТА. ; ; QDHLTON - УСТАНОВИТЬ "HLT" ПРИ ОШИБКАХ ; QDHLTOFF - СНЯТЬ "HLT" (КРОМЕ ТОГО, ОН ; СНИМАЕТСЯ ПРИ ПЕРЕЗАПУСКЕ). ; QDFULL - УСТАНОВКА ШАГА=1 В ТЕСТЕ ; СТРАНИЧНЫХ ПРЕРЫВАНИЙ ; QDMEMO - ОПРЕДЕЛЕНИЕ КОЛИЧЕСТВА ; ИМЕЮЩИХСЯ СТРАНИЦ ОЗУ ; QDMEM2 - ДВУСТОРОННЯЯ ДОЛБЕЖКА ; (ОТ ЦП И ПП ОДНОВРЕМЕННО) ; QDTEST - ПРОДОЛЖЕНИЕ РАБОТЫ ; КОМПЛЕКСНОГО ТЕСТА ; QDDELNN - БЛОКИРОВКА ПОДТЕСТА ; QDREPNN - ЗАЦИКЛИВАНИЕ ПОДТЕСТА : ; 60 : МАГАЗИННЫЕ КОМАНДЫ; ; 70 : РОСПИСЬ И ЧТЕНИЕ ПАМЯТИ; ; 41 : ТЕСТ ЭКСТРАКОДОВ; ; 42 : ПУСТОЙ ЭКСТРАКОД С РЕЗ.ГРУППОЙ ; 43 : ---"--- ---"--- БЕЗ ОНОЙ ; 05 : ТЕСТ ПРОГРАММНЫХ ПРЕРЫВАНИЙ; ; 3Е : ТЕСТ ТЕГОВСКИХ ПРЕРЫВАНИЙ ; 3F : ТЕСТ СТРАНИЧНЫХ ПРЕРЫВАНИЙ ; 4В : ТЕСТ СЕМАФОРНЫХ КОМАНД; ; ... : ПРОЧАЯ МЕЛОЧЬ. ; OKDIR:UТА =Z" - ОК. " 5 VJM OUTPUT ANAL:15 VТМ MST 13 VJM INPUT UTS SТХ CON_IN ; N VТМ @FF ; *** АТХ WS АЕХ ="FULL" ASN @400+32 JAEQ FULLSTEP ХТА WS АЕХ ="TEST" ASN @400+32 JAEQ STNDSTEP ХТА WS АЕХ ="HLTOFF" ASN @400+16 JAEQ SETHLT+1 ASN @400+16 JAEQ SETHLT ХТА WS АЕХ ="МЕМО" ASN @400+32 13 VТМ SС_МЕМ JAEQ MEMORY AEU @7D JAEQ MEMORY2 ; "МЕМ2" ХТА WS АЕХ ="REPEATNN" ASN @400+40 5 VТМ TREP JAEQ МАКЕ_NТ ХТА WS АЕХ ="DELETENN" ASN @400+40 5 VТМ TDEL JANE BADDIR МАКЕ_NТ:ХТА WS ASN @400+24 AAU @4040 ASN @400+3 15 АТХ ASN @400+3 15 АОХ ASN @400-24 ARX WS АРХ =Н0000 000F 0F00 0000 ASN @400+56 ATI 13 13 НТА ATEST<<1 5 JМР ; TDEL:UТА -1 13 АТХ BLTEST JМР OKDIR ; TREP:EXTF 64-20 13 АТН ATEST<<1 UTS 13 SТХ BLTEST ATI 13 13 JMNE TLOOP ; BADDIR:UТА =Z" NОТ UND:" 5 VJM OUTPUT ХТА WS АТХ CON_IN UТА CON_IN 5 VJM OUTPUT UТА АТХ CON_IN JМР ANAL ; SETHLT:UТА @ЕЕЕ :АТХ HALTER JМР OKDIR ; FULLSTEP:UТА -1 STNDSTEP:AOU -SТЕР АТХ NEXPAG UТА LWS АТХ LRW ХТА NPASS ААХ =HFFFF 0000 0000 0000 АТХ NPASS JМР TBEGIN ; ; ОПРЕДЕЛЕНИЕ КОЛИЧЕСТВА ПАМЯТИ : ; MEMORY:UТА NOMEMOR АТХ ADR АТХ ADR+1 АТХ ADR+2 АТХ ADR+3 3 VTMF MSCALE UТА -1 2 VТМ 15 :2 АТХ MSCALE 2 VRM * ХТА =НС000 0000 0000 0000 АТХ MSCALE+15 ; ПОСЛ.БЛОК "ОЗУ" 2 VТМ 1023-20-62 4 VТМ @5000 ; 20-Й ФИЗ.ЛИСТ 3 UТМ 20 ТТА BEGIN+ @3FF АТХ РАВ ; СПАСЕНИЕ ЯЧЕЙКИ УТХ РАВ+1 ; ИЗ 0-ГО ЛИСТА ; RMOD @400 АТХ РАВ+2 LМЕМ:4 UТА @3FF ; ПРИПИШЕМ WMOD @400 ; К 0 МАТ.ЛИСТУ SETR @178 ; БЛОК.ТЕГ.ПРЕР. UТА АТХ @3FF ; *** UТА -1 ХТА @3FF ; *** JAEQ ELMEM+1 ELMEM:3 CLRF ; ИСКЛЮЧ. 3 CLRF ; ИЗ ШКАЛЫ :CLRR @FCE87 ; БЗО,БЗЗ+ТЕГОВСКИЕ ТТА BEGIN+ @3FF JAEQ ERROR ; ПОРЧА ПАМЯТИ 3 UТМ 1 4 UТМ @400 2 VRM LМЕМ ; СЛЕД.ЛИСТ 3 VТМ 15 ХТА РАВ+2 WMOD @400 13 JМР ; SС_МЕМ:3 ХТА MSCALE JAEQ ESC_МЕМ IТА 3 14 VJM DНЕХ8 ASN @400-56 ASN @400+24 АОХ ="'@А''@D' '0' : " АТХ MST+10 3 ХТА MSCALE 14 VJM DНЕХ8 АТХ MST+12 3 ХТА MSCALE ASN @400+32 14 VJM DНЕХ8 АТХ MST+11 UТА АТХ MST+13 UТА MST+10 5 VJM OUTPUT ESC_МЕМ:3 VRM SС_МЕМ JМР OKDIR ; ; ДВУСТОРОННЯЯ ДОЛБЕЖКА : ; MEMORY2:UТА =Z"'@0А''@0D'BEGIN SРЕС.TEST " 5 VJM OUTPUT :ВТА HEADS<<3 JANE * ; ЖДЕМ 1 VТМ 1 RMOD @1С15 1 ATI 10 1 UТА -1 1 WMOD @1С15 1 UТА ДОЛБЛИСТ 1 АТХ ДОЛБЕЖКА ; :15 VТМ @ААААА 1 JМР * ; :1 UТА 1 АТХ ДОЛБЕЖКА 2 VТМ @7FFFF :1 ASN @400+50 2 VRM * 1 IТА 10 1 WMOD @1С15 5 VТМ ANAL 1 IТА :1 JAEQ *+1 1 HLT 2 :1 UТА =Z" END SРЕС.TEST.'@0D''@0А'" 1 JМР OUTPUT ; ; ТЕСТ ПАМЯТИ ДВОЙНОГО ДОСТУПА ; ============================ ; ПП РАСПИСЫВАЕТ 16-БИТНЫЕ СЛОВА 0-FFB ; ЗАТЕМ ПОСЫЛАЕТ В FFC,FFD ЭТАЛОН, А ; В FFE,FFF - КОД РАБОТЫ ЦП : ; 0 - ПАМЯТЬ РАСПИСАНА ЭТАЛОНОМ. ; ЦП ДОЛЖЕН СРАВНИВАТЬ СЛОВА 0-FFB ; С ЭТАЛОНОМ. МОЖНО И ПИСАТЬ ТУДА ; ТОТ ЖЕ САМЫЙ ЭТАЛОННЫЙ КОД. ; 1 - ПАМЯТЬ РАСПИСАНА КОДОМ, ОТЛИЧНЫМ ОТ ; ЭТАЛОНА. ЦП РАСПИСЫВАЕТ ЕЕ ЭТАЛОНОМ, ; А ПОТОМ ЧИТАЕТ САМ. ; В ОБОИХ СЛУЧАЯХ ПП СКАНИРУЕТ ПАМЯТЬ В ТЕЧЕНИЕ ; 2 МИН., А ПОТОМ ОБНУЛЯЕТ FFC,FFD. ЭТО ДЛЯ ЦП ; ЯВЛЯЕТСЯ СИГНАЛОМ ОБ ОКОНЧАНИИ СПЕЦ.ТЕСТА. ; ; ПП РАБОТАЕТ ПО ВОЗРАСТАНИЮ АДРЕСОВ: 0--->FFB ; ЦП РАБОТАЕТ ПО УБЫВАНИЮ АДРЕСОВ : FFB--->0 ; ; DPORT: WMOD @1С19 QТА ДОЛБЕЖКА<<2 +1 ; ЖДЕМ КОНЦА :JAEQ DPORT ; РОСПИСИ ПАМЯТИ 1 VТМ 100000 :1 VRM * ; МЕЛКАЯ ПАУЗА 1 VТМ 1 ; СЧ.ПРОХОДОВ НТА ДОЛБЕЖКА<<1+1 ; НАЧНЕМ С JAEQ WRPORT ; ЧТЕНИЯ НТА ДОЛБЕЖКА<<1 2 VТМ 2045 :2 АТН REFER<<1 2 VRM * WMOD @1С19 UТА 1 ; - С ЗАПИСИ WRPORT:ATI 4 2 VТМ 2045 ; RWPORT:WMOD @1С19 НТА ДОЛБЕЖКА<<1 ATI 5 ; ЭТАЛОН JAEQ TEST ; - КОНЕЦ РЕЖИМА АЕН REFER<<1 JANE DPORT+1 ; СМЕНА ЭТАЛОНА IТА 5 4 JMEQ REPORT 2 АТН REFER<<1 JМР LPORT REPORT:2 АЕН REFER<<1 JAEQ LPORT 2 MTJ 3 3 MSN @400+1 5 UТУ HLT 2 LPORT:2 VRM RWPORT IТА 4 AEU 1 1 VLM WRPORT ; ; ; ТЕСТ ОБНАРУЖИЛ ОШИБКУ. ; ********************** ; ; ERRINT1:IТА N NG WMOD 4 ; НОМ.ПРЕР. UТА ; НАДО: RMOD @1С NG WMOD @1С NG RMOD 6 АТХ ER6 ; SPECIAL:NG RMOD @1С ; Р О П NG VТМ 1<<5 ; ГРУППА = 1 !!! NG WMOD 5 IТА RI NG WMOD 3 IТА IА NG WMOD 2 RMOD @1802 ААХ WELLINT AON 64-41 AEN 64-41 WMOD @1802 UТА РУГАНЬ JМР PUT_РС ; ; ; ПЕРВЫМ ДЕЛОМ - ВСТАНЕМ, ЧТОБЫ МОЖНО БЫЛО ; ПОСМОТРЕТЬ РЕГИСТРЫ. ПОТОМ МОЖНО ДАТЬ "GО" ; ERRINT:WТС HALTER HLT ; *** RMOD @1818 JAEQ ERRINT1 IТА 6 АТХ ER6 ; ERROR:WТС HALTER HLT ; *** :UТА SPECIAL АТХ ADR+4 4 VТМ ; "МАТ.РЕЖ." UТА WMOD @24 WMOD @1С13 ; П/П ДЛЯ ПРОТ.РОП ; 2-ИАОП, 3-СЧАС, 4-NINT, 5-РОП РУГАНЬ:15 VТМ MST WТС ER6 6 VТМ UТА 1 ARX ERCNT АТХ ERCNT 14 VJM DНЕХ8 ААХ =Н0000 0000 00FF FFFF ASN @400-24 АОХ ="'@А''@D''0''0''0' - " XTS ="ERROR IN" ITS N 14 VJM DНЕХ8 AAU @FFFF АОХ =" TEST-'0''0'" 4 JMEQ РУГАНЬ1 ITS 4 3 MTJ 5 14 VJM DНЕХ8 AAU @FFFF АОХ =" INT:'0''0'" 2 JMEQ РУГАНЬ1 XTS =" IАОР: " ITS 2 14 VJM DНЕХ8 РУГАНЬ1:XTS =" ADR: " ITS 5 14 VJM DНЕХ8 6 JMEQ РУГАНЬ2 ASN @400-24 АОХ =Н0000 0000 002С 2020 UTS АТХ ER6 IТА 6 14 VJM DНЕХ8 РУГАНЬ2:ASN @400-16 AOU @0A0D ASN @400-8 UTS MST 5 VJM OUTPUT ХТА BEGIN+ @3FF JANE NOREST SETR @3178 ; ВОССТАНОВЛЕНИЕ ХТУ РАВ+1 ; ИСПОРЧЕННОЙ ХТА РАВ ; ЯЧЕЙКИ 0-ГО ЛИСТА ТТХ BEGIN+ @3FF NOREST:CLRR @FCE87 5 VJM COUT 5 VТМ TBEGIN 14 VТМ 5 ; PAUSE:12 VТМ @1FFFF :ХТА CON_IN ; ПРИМЕРНО JANE ANAL ; 1 СЕК. 12 VRM *-1 14 VRM PAUSE 5 JМР ; ; ОРГАНИЗАЦИЯ НАСИЛЬСТВЕННОГО ВХОДА ; PUT_РС:NG WMOD @1В ; СЧАС NG RMOD @11 ААХ =Н0000 0000 C7FF FFFF NG WMOD @11 ; ГАШ. ППУ,ПИА,ППК NG RMOD 0 JANE HORROR JМР RЕТ_INT ; NOMEMOR:UТА ELMEM JМР PUT_РС ; HORROR:11 VТМ =Z" MOD.0 IS NОТ ZERO ! " 5 VJM OUTPUT11 :ВТА HEADS<<3 JANE * :HLT -7 JМР * ; ;************************************************ ; ; I. РЕПЕРТУАР СТАРОЙ БЭСМ-6. ; ============================ ; ;************************************************ ; ; 51,52 - ПРОВЕРКА КОМАНД JMEQ, JMNE : ; Т51:N VТМ @51 N ХТА BLTEST JANE Т53 2 VТМ 0 2 JMEQ *+1 JМР ERROR :2 JMNE ERROR 2 JMNE ERROR 2 VТМ -1 2 JMEQ ERROR :2 JMEQ ERROR 2 JMNE Т52 JМР ERROR ; Т52:N VТМ @52 2 VТМ 1 3 VТМ -32 JМР *+2 :2 J+М 2 ; СДВИГ "1" ВЛЕВО 3 UТМ 1 :2 JMNE *-1 3 JMNE ERROR 13 VJM NEWTEST ; ; 53 - ПРОВЕРКА КОМАНД VLM, VRM : ; Т53:N VТМ @53 N ХТА BLTEST JANE Т54 2 VТМ -999 3 VТМ -1000 :3 UТМ 1 2 VLM * 2 JMNE ERROR 3 JMNE ERROR :2 VLM ERROR ; А ЧТО ПРИ "0" 2 JMNE ERROR ; 2 VТМ 999 3 VТМ -1000 :3 UТМ 1 2 VRM * 2 JMNE ERROR 3 JMNE ERROR :2 VRM *-2 ; А ЧТО ПРИ "0" 2 JMNE ERROR 13 VJM NEWTEST ; ; 54 - ПРОВЕРКА КОМАНД ATI, IТА : ; Т54:N VТМ @54 N ХТА BLTEST JANE Т55 2 VТМ -1 ATI 2 2 JMNE ERROR ХТА FUL ATI 2 2 JMEQ ERROR IТА 2 ATI 3 3 JMEQ ERROR 3 UТМ 1 3 JMNE ERROR 13 VJM NEWTEST ; ; 55 - ПРОВЕРКА КОМАНД UТС, WТС : ; Т55:N VТМ @55 N ХТА BLTEST JANE Т56 UТС -1 3 VТМ 3 JMEQ ERROR 3 UТМ 1 3 JMNE ERROR :UТС -1 :3 VТМ 3 JMEQ ERROR 3 UТМ 1 3 JMNE ERROR :WТС =I-1 3 VТМ 3 JMEQ ERROR 3 UТМ 1 :3 JMNE ERROR WТС =I-1 :3 VТМ 3 JMEQ ERROR 3 UТМ 1 3 JMNE ERROR UТС -7 UТС 8 3 VТМ -2 3 JMEQ ERROR 3 UТМ 1 3 JMNE ERROR WТС =I-1 UТС 8 3 VТМ -6 3 UТМ -1 3 JMNE ERROR 3 VТМ 1 :3 WТС CHESS1 4 VТМ IТА 4 3 АЕХ CHESS1 ASN 1024-32 JANE ERROR 3 VRM *-3 13 VJM NEWTEST ; ; 56 - ПРОВЕРКА КОМАНДЫ VJM : ; Т56:N VТМ @56 N ХТА BLTEST JANE Т57 2 VJM Т6_1 ; СПРАВА Т6_1:2 UТМ -Т6_1 2 JMNE ERROR :2 VJM Т6_2 ; СЛЕВА Т6_2:2 UТМ -Т6_2 2 JMNE ERROR :2 VJM *+2 :UТС -1 :3 VТМ 1 3 JMEQ ERROR :3 VТМ -1 2 VJM *+2 :3 VТМ -2 :3 UТМ 1 3 JMNE ERROR 13 VJM NEWTEST ; ; 57 - MTJ, J+М, VТМ, UТМ ; Т57:N VТМ @57 N ХТА BLTEST JANE Т5А UТС -13 2 VТМ 14 IТА 2 АЕХ =1 13 VJM СНАСС 2 VТМ 15 2 UТМ -15 IТА 2 13 VJM СНАСС 3 VТМ 1 3 J+М 2 IТА 2 АЕХ =1 13 VJM СНАСС 13 VJM СНМ3 3 MTJ 2 IТА 2 АЕХ =1 13 VJM СНАСС 13 VJM СНМ3 13 VJM NEWTEST ; ; 5А,5В - ПРОВЕРКА МАТ.АДРЕСА 0 ; И МОДИФИКАТОРА 0 : ; Т5А:N VТМ @5А N ХТА BLTEST JANE Т5С 2 VТМ -1 IТА 2 АТХ :ХТА ; СЛЕВА ATI 2 2 JMNE ERROR 2 VТМ -1 IТА 2 :АТХ ХТА ; СПРАВА ATI 2 2 JMNE ERROR Т5В:N VТМ @5В 2 VТМ -1 IТА 2 ATI :IТА ; СЛЕВА ATI 2 2 JMNE ERROR 2 VТМ -1 IТА 2 :ATI IТА ; СПРАВА ATI 2 2 JMNE ERROR 13 VJM NEWTEST ; ; 5С - РАБОТА С РЕГИСТРОМ РЕЖИМА ; UZA, U1А, XTR, NTR, RТЕ, УТА ; Т5С:N VТМ @5С N ХТА BLTEST JANE Т60 2 VТМ 63 LТ0С:2 NTR RТЕ 63 АТХ WS ITS 2 ASN 1024-53 15 АЕХ JANE ERROR U1А ERROR XTR RТЕ 63 JANE ERROR UZA ERROR XTR WS RТЕ 63 ITS 2 ASN 1024-53 15 АЕХ JANE ERROR U1А ERROR ; 15 VТМ WS+1 15 XTR 15 VТМ MST RТЕ 63 ITS 2 ASN 1024-53 15 АЕХ JANE ERROR 2 VRM LТ0С ; NTR 63 RТЕ @21 АЕХ =Н0420 0000 0000 0000 JANE ERROR U1А ERROR NTR 0 UZA ERROR JANE ERROR :U1А *+1 JМР ERROR :NTR 7 ; ЛОГ.ГР. U1А ERROR JANE ERROR NTR 11 ; ГР.УМН. UZA ERROR JANE ERROR NTR 19 ; ГР.СЛОЖ. U1А ERROR JANE ERROR ХТА FUL UZA ERROR JAEQ ERROR JAGE ERROR JAGT ERROR NTR 11 U1А ERROR JAEQ ERROR JAGE ERROR JAGT ERROR NTR 19 UZA ERROR JAEQ ERROR JAGE ERROR JAGT ERROR ; NTR 24 ; ГС+ГУ=ГС UZA ERROR NTR 12 ; ГУ+ГЛ=ГУ U1А ERROR ХТА =1 NTR 20 ; ГС+ГЛ=ГС U1А ERROR JAEQ ERROR JALT ERROR JALE ERROR ХТА FUL АЕХ ХТА УТА АЕХ FUL U1А ERROR ; NTR 11 ; УТА 1025 ; АЕХ =H002F FFFF FFFF FFFF ; U1А ERROR ARX ; ДОЛЖНА UZA ERROR ; ПОЛУЧИТЬСЯ ARX FUL ; ГР.УМН. U1А ERROR ААХ FUL ; ЛОГ.ГР. UZA ERROR 13 VJM NEWTEST ; ; 60:69 - МАГАЗИННОЕ ОБРАЩЕНИЕ ; =============================== ; 60: 15 АТХ 61: XTS 62: ITS ; 63: 15 ХТА 64: SТХ 65: STI ; 66: 15 АТХ А 67: 15 ХТА А ; 68: 15 WТС 69: 15 ATD ; Т60:N VТМ @60 N ХТА BLTEST JANE Т70 АТХ WS АТХ WS+1 АТХ WS+2 15 VТМ WS+1 ХТА FUL 15 АТХ 15 UТМ -2-WS 13 VJM CHSTAK ; N VТМ @61 15 VТМ WS ХТА XTS FUL XTS XTS 15 UТМ -3-WS 13 VJM CHSTAK ; N VТМ @62 15 VТМ WS IТА ITS ХТА FUL ITS ITS 15 UТМ -3-WS 13 VJM CHSTAK ; N VТМ @66 15 VТМ WS-1 ХТА 15 АТХ 1 15 АТХ 3 ХТА FUL UТС 2 15 АТХ 15 UТМ 1-WS 13 VJM CHSTAK ; N VТМ @63 ХТА АТХ WS+1 15 VТМ WS+3 15 ХТА ATI 2 ASN 1024+32 ATI 3 15 ХТА ATI 4 ASN 1024+32 ATI 5 15 ХТА ATI 6 ASN 1024+32 ATI 7 13 VJM CHST2 ; N VТМ @64 15 VТМ WS+3 SТХ WS+4 ATI 2 ASN 1024+32 ATI 3 SТХ WS+4 ATI 4 ASN 1024+32 ATI 5 SТХ WS+4 ATI 6 ASN 1024+32 ATI 7 13 VJM CHST2 ; N VТМ @65 15 VТМ WS+3 STI 6 ATI 6 ASN 1024+32 STI 7 ATI 4 ASN 1024+32 STI 5 ATI 2 ASN 1024+32 ATI 3 13 VJM CHST2 ; N VТМ @67 15 VТМ WS+3 UТС -1 15 ХТА ATI 6 ASN 1024+32 ATI 7 15 ХТА -2 ATI 4 ASN 1024+32 ATI 5 15 ХТА -3 ATI 2 ASN 1024+32 ATI 3 15 UТМ -3 13 VJM CHST2 ; N VТМ @68 4 VТМ 1 7 VТМ -1 3 VТМ -1 15 VТМ WS+3 15 WТС 6 VТМ 15 WТС 4 VТМ 15 WТС 2 VТМ 13 VJM CHST2 15 VТМ WS ХТА =1 XTS XTS =2 XTS =3 15 WТС -2 2 VТМ 2 JMNE ERROR 15 UТМ -3-WS 15 JMNE ERROR ; N VТМ @69 15 VТМ WS ХТА CHESS1 АЕХ FUL 15 ATD 15 MTJ 13 13 UТМ -2-WS 13 JMNE ERROR АЕХ CHESS2 JANE ERROR ХТА WS+1 АЕХ CHESS1 JANE ERROR ХТА WS АЕХ CHESS2 JANE ERROR 15 DТА УТХ WS АЕХ CHESS2 JANE ERROR ХТА WS АЕХ CHESS1 JANE ERROR 15 UТМ -WS 15 JMNE ERROR ; РАНЕЕ ЗАБЫТЫЕ КОМАНДЫ : N VТМ @6А UTCS 2 14 VТМ IТА 14 AEU @20000 JANE ERROR 15 VТМ WS ХТУ CHESS2 15 УТХ JANE ERROR 15 UТМ -WS-1 15 JMNE ERROR ХТА WS АЕХ CHESS2 JANE ERROR 15 VТМ WS+1 АЕХ 15 ХТУ JANE ERROR 15 UТМ -WS 15 JMNE ERROR УЕХ CHESS2 JANE ERROR 15 VТМ WS ХТА CHESS1 XTS CHESS2 15 ААХ JANE ERROR ХТА CHESS1 XTS CHESS2 15 ARX XTS CHESS1 XTS CHESS2 15 АОХ 15 АЕХ JANE ERROR ХТА CHESS1 XTS CHESS2 XTS FUL 15 АРХ 15 AUX АЕХ CHESS1 JANE ERROR XTS FUL 15 АСХ 14 VТМ -64 А+I 14 JANE ERROR XTS FUL 15 ANX А+L FUL JANE ERROR UТА 2 L-А =1 А-L FUL JANE ERROR ХТА FUL 15 АТХ 15 ASX JANE ERROR UТА 2 UTS 1 UTS 2 UTS 3 15 А-L ; 3-2=1 15 А+L ; +1=2 15 L-А JANE ERROR ХТА CHESS1 XTS CHESS2 XTS FUL 15 ХТУ 15 УОХ ХТУ FUL АЕУ JANE ERROR ХТА CHESS1 XTS CHESS1 XTS FUL АЕХ 15 УАХ АЕХ 15 УЕХ JANE ERROR 15 UТМ -WS 15 JMNE ERROR 13 VJM NEWTEST ; ; 70 - ЗАПИСЬ/ЧТЕНИЕ ; Т70:N VТМ @70 N ХТА BLTEST JANE Т71 WТС LRW ; ДЛИНА МАССИВА 6 VТМ -1 ; БОЛЬШЕ КЭША ! 7 VТМ 66 UТА 1 9 VJM REWR :ASN 1024-1 9 VJM REWR ; БЕГУЩАЯ "1" 7 VRM *-1 ХТА =HFFFF FFFF FFFF FFFE 7 VТМ 66 6 VТМ 256 ; ВСЕ В КЭШЕ :9 VJM REWR ; БЕГУЩИЙ "0" ASN 1024-1 AOU 1 7 VRM *-2 WТС LRW ; ОПЯТЬ БОЛЬШЕ 6 VТМ -1 ; РАЗМЕРА КЭША 9 VТМ ; НОМЕ ADRESS ; REWR:АТХ MST ; ЭТАЛОН 6 MTJ 4 :9 JMNE *+1 ; ПОСТ.КОД 4 UТА WS ; НОМЕ ADRESS :4 АТХ WS 4 VRM *-1 6 MTJ 4 9 JMEQ L2REWR L1REWR:ХТА MST 4 АЕХ WS :JANE ERT70 4 VRM L1REWR JМР RREWR L2REWR:4 UТА WS 4 АЕХ WS :JANE ERT70 4 VRM L2REWR RREWR:ХТА CON_IN JANE ANAL ; БЫЛ ВВОД ХТА MST 9 JMEQ СТ70 9 JМР ; НЕСОВПАДЕНИЕ. СУМ=<РАЗНИЦА>, РМР=<ЭТАЛОН> ERT70:15 VТМ MST+1 УТХ MST АЕУ XTS ERCNT ARX =Н0000 0001 0000 0000 АТХ ERCNT ASN @400+32 14 VJM DНЕХ8 ААХ =Н0000 0000 00FF FFFF АОХ ="'@D'ERR:'0''0''0'" XTS =" IN TEST" XTS ="-70. ЕТ=" XTS MST ASN @400+32 14 VJM DНЕХ8 XTS MST 14 VJM DНЕХ8 XTS =" MEMORY=" XTS MST+1 ASN @400+32 14 VJM DНЕХ8 XTS MST+1 14 VJM DНЕХ8 XTS =" ADR: " 4 UTS WS 14 VJM DНЕХ8 ASN @400-16 AOU @0A0D ASN @400-8 UTS MST+2 5 VJM OUTPUT 14 VТМ 3 5 VJM PAUSE 9 JMEQ L2REWR+1 JМР L1REWR+1 ; СТ70:ХТА CHESS1 АЕХ FUL ATD WS АЕХ CHESS2 JANE ERROR ХТА WS АЕХ CHESS2 JANE ERROR ХТА WS+1 АЕХ CHESS1 JANE ERROR 14 VТМ WS+1 14 DТА -1 УТХ WS АЕХ CHESS2 JANE ERROR ХТА WS АЕХ CHESS1 JANE ERROR 13 VJM NEWTEST ; ; 71 - ААХ,АОХ,АЕХ ; Т71:N VТМ @71 N ХТА BLTEST JANE Т72 ХТА FUL ААХ 13 VJM СНАСС ХТА FUL ААХ FUL АЕХ FUL 13 VJM СНАСС ХТА CHESS1 ААХ CHESS1 АЕХ CHESS1 13 VJM СНАСС ХТА CHESS1 ААХ CHESS2 13 VJM СНАСС ХТА CHESS1 АОХ CHESS2 АЕХ FUL 13 VJM СНАСС ХТА CHESS2 ; ПРОВЕРКА АЕХ CHESS1 ; ЗАСЫЛКИ ХТА CHESS2 ; В РМР АЕУ JANE ERROR 13 VJM NEWTEST ; ; 72 - ARX ; Т72:N VТМ @72 N ХТА BLTEST JANE Т73 ХТА =11 ARX =1 АЕХ =12 13 VJM СНАСС ХТА FUL ARX =1 АЕХ =1 13 VJM СНАСС ХТА FUL ARX FUL АЕХ FUL 13 VJM СНАСС 13 VJM NEWTEST ; ; 73 - АРХ, AUX ; Т73:N VТМ @73 N ХТА BLTEST JANE Т74 ХТА CHESS1 АРХ FUL AUX =H7FFF FFFF FFFF FFFF АЕХ CHESS2 13 VJM СНАСС ХТА CHESS1 АРХ CHESS2 13 VJM СНАСС ХТА CHESS1 АРХ CHESS1 AUX CHESS2 АЕХ CHESS2 13 VJM СНАСС ХТА FUL AUX CHESS2 АЕХ CHESS2 13 VJM СНАСС 13 VJM NEWTEST ; ; 74 - АСХ, ANX ; Т74:N VТМ @74 N ХТА BLTEST JANE Т75 АСХ 13 VJM СНАСС ХТА FUL АСХ АЕХ =64 13 VJM СНАСС ХТА CHESS2 АСХ =HFFFF FFFF FFFF FFE0 АЕХ =1 13 VJM СНАСС 11 VТМ 64 ХТА =1 TANX:11 JMNE *+1 ХТА :АТХ WS ANX ITS 11 15 АЕХ 13 VJM СНАСС ХТА WS ASN 1024-1 ITS 11 ААХ =7 15 АОХ 11 VRM TANX ХТА ANX FUL АЕХ FUL 13 VJM СНАСС UТА 5 ; ПРОВЕРКА ANX FUL ; ЗАСЫЛКИ ХТА =Н4000 0000 0000 0000 АЕУ ; ОСТАТКА JANE ERROR ; В РМР 13 VJM NEWTEST ; ; 75 - ASN, ASX ; Т75:N VТМ @75 N ХТА BLTEST JANE Т76 11 VТМ 64 TSFT1:ХТА =Н8000 0000 0000 0000 11 ASN 1024-1 ANX ITS 11 15 АЕХ 13 VJM СНАСС 11 VRM TSFT1 11 VТМ 64 TSFT2:ХТА =1 11 ASN 1024-64 ANX ITS 11 15 АЕХ 13 VJM СНАСС 11 VRM TSFT2 ХТА FUL ASX FUL 13 VJM СНАСС ХТА CHESS2 ASX =H7FFF FFFF FFFF FFFF АЕХ CHESS1 13 VJM СНАСС ХТА FUL ; А ЧТО ASN 1024-12 ; ПОПАДЕТ UТА @FFF ; В РМР АЕУ ; ПРИ JANE ERROR ; СДВИГАХ ? ХТА FUL ASN 1024+4 ХТА =HF000 0000 0000 0000 АЕУ JANE ERROR 13 VJM NEWTEST ; ; 76 - Е+N, Е-N, Е+Х, Е-Х ; Т76:N VТМ @76 N ХТА BLTEST JANE Т77 12 VТМ @7FE ХТА =HFFE8 0000 0000 0000 АТХ WS L76:ХТА WS Е+N @3FF АТХ WS ASN 1024+53 ATI 14 12 J-М 14 14 JMNE ERROR 12 VRM L76 ХТА WS Е-N @401 JANE ERROR UZA ERROR 12 VТМ @7FE 11 VТМ 1 ХТА =Н0008 0000 0000 0000 АТХ WS L761: ХТА WS Е-Х =H7FF7 0000 0000 0000 АТХ WS ASN 1024+53 ATI 14 11 J-М 14 14 JMNE ERROR 11 UТМ 1 12 VRM L761 ХТА WS Е+Х =Н0000 0000 0000 0000 АЕХ =H7FE8 0000 0000 0000 U1А ERROR 13 VJM NEWTEST ; ; 77 - А+Х, А-Х, Х-А ; Т77:N VТМ @77 N ХТА BLTEST JANE Т78 NTR 3 UТА 64 А-Х =65 UZA ERROR UZA ERROR JAEQ ERROR А+Х =1 U1А ERROR JANE ERROR ХТА =2 Х-А =1 А-Х =H001F FFFF FFFF FFFF U1А ERROR JANE ERROR UТА 2 UTS 1 UTS 2 UTS 3 15 А-Х ; 3-2=1 U1А ERROR 15 А+Х ; 1+1=2 15 Х-А U1А ERROR JANE ERROR ХТА =Н8680 0000 0000 0040; 64 А-Х =Н8680 0000 0000 0041; UZA ERROR А+Х =Н8028 0000 0000 0000; 1. U1А ERROR АЕХ =Н8680 0000 0000 0000; 0, НЕНОРМАЛИЗОВАННЫЙ U1А ERROR NTR 2 ХТА =Н8048 0000 0000 0000; 2. XTS =Н8028 0000 0000 0000; 1. XTS =Н8048 0000 0000 0000; 2 XTS =Н804С 0000 0000 0000; 3 15 А-Х 15 А+Х 15 Х-А U1А ERROR JANE ERROR 13 VJM NEWTEST ; ; 78 - А*Х, А/Х ; Т78:N VТМ @78 N ХТА BLTEST JANE Т80 NTR 3 ХТА =Н8680 0000 0000 0005 А*Х =Н8680 0000 0000 000D; 13 УТХ WS АЕХ =H8D00 0000 0000 0000; U1А ERROR ХТА WS АЕХ =H8D00 0000 0000 0041; 65*2!52 U1А ERROR ХТА =Н8680 0000 0000 000D; 13 А*Х =H869F FFFF FFFF FFF3; -13 УТХ WS АЕХ =H8D1F FFFF FFFF FFFF U1А ERROR ХТА WS АЕХ =H8D0F FFFF FFFF FF57 U1А ERROR NTR 2 ХТА =Н806А 0000 0000 0000; 5. А*Х =H808D 0000 0000 0000; 13. АЕХ =Н80Е8 2000 0000 0000; 65. U1А ERROR УТА А/Х =H808D 0000 0000 0000; 13. АЕХ =Н806А 0000 0000 0000; 5. U1А ERROR 13 VJM NEWTEST ; ; II. НОВЫЕ КОМАНДЫ : ; =================== ; ; 80 - JMLT, JMLE, JMGT, JMGE ; Т80:N VТМ @80 N ХТА BLTEST JANE Т81 3 VТМ 3 JMGT ERROR 3 JMLT ERROR :3 JMGE *+1 JМР ERROR :3 JMLE *+1 JМР ERROR :ХТА =Н0000 0000 8000 0000 ATI 3 3 JMGT ERROR 3 JMGE ERROR :3 JMLE *+1 JМР ERROR :3 JMLT *+1 JМР ERROR ; :2 VТМ 31 ХТА CHESS1 LТ80:ASN 1024+1 15 АТХ ААХ =4 STI 4 ATI 3 4 JМР *+1 ;------------ :3 JMGT ERROR 3 JMGE ERROR :3 JMLE *+1 JМР ERROR :3 JMLT ELT80 JМР ERROR :JМР ERROR ;------------ :3 JMLE ERROR 3 JMLT ERROR :3 JMGE *+1 JМР ERROR :3 JMGT ELT80 JМР ERROR ;------------ ELT80:2 VRM LТ80 13 VJM NEWTEST ; ; 81 - JAEQ, JANE, JAGT, JAGE, JALT, JALE ; Т81:N VТМ @81 N ХТА BLTEST JANE Т82 UТА 1 2 VТМ -63 LТ81:JAEQ ERROR JAEQ ERROR :JANE *+1 JМР ERROR :ASN 1024-1 2 VLM LТ81 :JAEQ *+1 ; А=0 JМР ERROR :JANE ERROR JANE ERROR JAGT ERROR JALT ERROR :JAGE *+1 JМР ERROR :JALE *+1 JМР ERROR :ХТА =Н8000 0000 0000 0000 JAGT ERROR :JALE *+1 JМР ERROR :JALT *+1 JМР ERROR :JAGE ERROR 2 VТМ -60 ; L1Т81:ХТА CHESS1 2 ASN 1024 ITS 2 ААХ =1 STI 3 3 JMEQ T81MIN T81POZ:JALT ERROR JALE ERROR :JAGE *+1 JМР ERROR :JAGT EL1T81 JМР ERROR T81MIN:JALT *+1 JМР ERROR :JALE *+1 JМР ERROR :JAGT ERROR JAGE ERROR EL1T81:2 VLM L1Т81 13 VJM NEWTEST ; ; 82 - JOVR, JCRY ; Т82:N VТМ @82 N ХТА BLTEST JANE Т83 JOVR ERROR JCRY ERROR UТА А+U 1 JCRY ERROR А+U -1 :JCRY *+1 JМР ERROR :А+U -1 JCRY ERROR ХТА CHESS2 А+L CHESS2 :JOVR *+1 JМР ERROR :ХТА FUL А+L FUL JOVR ERROR 13 VJM NEWTEST ; ; 83 - JMPS, RETS ; Т83:N VТМ @83 N ХТА BLTEST JANE Т8С RMOD @1818 ATI 5 5 RMOD @13 ATI 6 ; Р А В 6 MTJ 7 7 UТМ 1 2 VТМ 100 LТ33:IТА 2 AAU 1 ATI 3 3 ХТА CHESS1 АЕХ FUL 3 JMNE СНТ33-1 :JMPS CALLS33 ; СЛЕВА :JМР СНТ33 ; CALLS33:15 АТХ УТХ WS+1 5 RMOD @13 AEI 7 ААХ =Н0000 0000 FFFF FFFF JANE ERROR ХТУ WS+1 15 ХТА :3 JMNE *+1 RETS :RETS ; :UТС -1 JMPS CALLS33+1 ; СПРАВА ; СНТ33:УТХ WS 3 АЕХ CHESS1 АЕХ FUL JANE ERROR ХТА WS 3 АЕХ CHESS1 JANE ERROR 5 RMOD @13 AEI 6 ААХ =Н0000 0000 FFFF FFFF JANE ERROR 2 VRM LТ33 13 VJM NEWTESTI ; ; 8С - UZAS, U1AS ; Т8С:N VТМ @8С N ХТА BLTEST JANE Т90 15 VТМ MST 15 MTJ 14 ХТА CHESS1 XTS CHESS2 UZAS ERROR АЕХ CHESS1 JANE ERROR 15 J-М 14 14 JMNE ERROR 15 MTJ 14 ХТА FUL XTS U1AS ERROR АЕХ FUL JANE ERROR 15 J-М 14 14 JMNE ERROR ХТА XTS FUL NTR 11 ; ГР.УМН U1AS ERROR U1А ERROR ; БУДЕТ ЛОГ.ГР ! ХТА FUL 15 АТХ NTR 11 U1AS ERROR UZA ERROR ХТА XTS FUL NTR 19 ; ГР.СЛОЖ. UZAS ERROR U1А ERROR ; БУДЕТ ЛОГ.ГР. 15 MTJ 14 ХТА XTS FUL :U1AS *+1 JМР ERROR :15 J-М 14 14 JMNE ERROR U1А ERROR 13 VJM NEWTEST ; ; 90 - UТА, UTS, UТУ ; Т90:N VТМ @90 N ХТА BLTEST JANE Т91 ХТА FUL UТА JANE ERROR UТА -1 АЕХ FUL JANE ERROR ХТА FUL АТХ MST 2 VТМ -2 UТС 1 2 UТА 1 JANE ERROR АТХ MST+1 АТХ MST+2 UTS -1 UTS -1 АЕХ FUL JANE ERROR 15 ХТА АЕХ FUL JANE ERROR 15 АОХ АОХ MST+2 JANE ERROR 15 UТМ -MST 15 JMNE ERROR ; 15 VТМ MST 3 VТМ -29 2 VТМ -10 :UTS -1 UTS -1 UTS -1 2 VLM *-1 :АЕХ FUL U1AS ERROR 3 VLM *-1 ; UТУ 5 UТА 5 АЕУ JANE ERROR UТУ -1 ХТА FUL АЕУ JANE ERROR 2 VТМ 32 3 VТМ 1 15 VТМ MST :IТА 3 2 АТХ WS 3 MSN @400-1 2 VRM *-1 2 VТМ 32 3 VТМ 1 LТ50:3 UТУ 2 WТС WS UТА 3 UTS 2 WТС WS UTS АЕУ JANE ERROR 3 UТА 15 АЕХ JANE ERROR 2 ХТА WS 15 АЕХ JANE ERROR 3 MSN @400-1 2 VRM LТ50 13 VJM NEWTEST ; ; 91 - AAU, AOU, AEU ; Т91:N VТМ @91 N ХТА BLTEST JANE Т94 ХТА FUL AAU -1 АЕХ FUL JANE ERROR ХТА FUL AAU JANE ERROR UТА 1 AOU -2 АЕХ FUL JANE ERROR АЕХ ; РМР=0 ХТА FUL AEU -1 ; ПРОВЕРИМ JANE ERROR ; РАЗМНОЖЕНИЕ АЕУ ; И ЧТО РМР JANE ERROR ; НЕ ПОРТИТСЯ 13 VJM NEWTEST ; ; 94 - ACU, ANU ; ; (В ОТЛИЧИЕ ОТ АСХ,ANX ЗДЕСЬ СЛОЖЕНИЕ ; С ИСП.АДРЕСОМ НЕ ЦИКЛИЧЕСКОЕ, А ; АРИФМЕТИЧЕСКОЕ ! ) ; Т94:N VТМ @94 N ХТА BLTEST JANE Т95 ACU JANE ERROR ХТА FUL ACU AEU 64 JANE ERROR ХТА CHESS2 ACU -32 JANE ERROR ХТА CHESS1 ACU -31 AEU 1 JANE ERROR ХТА CHESS1 ACU -33 АЕХ FUL JANE ERROR 11 VТМ 64 UТА 1 TANU:11 JMNE *+1 UТА :АТХ WS ANU ITS 11 15 АЕХ JANE ERROR ХТА WS ASN 1024-1 ITS 11 AAU 7 15 АОХ 11 VRM TANU UТА 1 ANU -64 JANE ERROR UТА 1 ANU -65 АЕХ FUL JANE ERROR UТА 1 ANU -63 AEU 1 JANE ERROR ANU JANE ERROR ANU -1 АЕХ FUL JANE ERROR UТА 5 ANU -1 ХТА =Н4000 0000 0000 0000 АЕУ JANE ERROR 13 VJM NEWTEST ; ; 95 - MCJ, J-М ; Т95:N VТМ @95 N ХТА BLTEST JANE Т96 2 VТМ 3 VТМ 1 2 MCJ 3 3 JMNE ERROR 2 UТМ -1 2 JMNE ERROR ; 2 VТМ 2 3 VТМ 3 2 J-М 3 3 UТМ -1 3 JMNE ERROR 2 UТМ -2 2 JMNE ERROR 13 VJM NEWTEST ; ; 96 - MSN ; Т96:N VТМ @96 N ХТА BLTEST JANE ТА0 ХТА =Н0000 0000 4000 0000 L1Т56:ATI 2 2 MSN 1024+3 ASN 1024+3 ATI 3 3 J-М 2 2 JMNE ERROR JANE L1Т56 ; ХТА =Н0000 0000 8000 0000 L2Т56:ATI 2 2 MSN 1024+3 ASN 1024+3 АОХ =Н0000 0000 Е000 0000 ATI 3 3 J-М 2 2 JMNE ERROR 3 UТМ 1 3 JMNE L2Т56 ; UТА 1 L3Т56:ATI 2 2 MSN 1024-3 ASN 1024-3 ААХ =Н0000 0000 7FFF FFFF ATI 3 3 J-М 2 2 JMNE ERROR 3 JMNE L3Т56 ; 4 VТМ 12 UТА -1 L4Т56:ATI 2 2 MSN 1024-3 ASN 1024-3 АОХ =Н0000 0000 8000 0000 ATI 3 3 J-М 2 2 JMNE ERROR 4 VRM L4Т56 13 VJM NEWTEST ; ; А0 - РАБОТА С Р М Р : ; ТА0:N VТМ @А0 N ХТА BLTEST JANE ТА1 ХТУ FUL УТХ WS ХТА WS АЕХ FUL JANE ERROR ; У=FUL УЕХ CHESS2 УОХ CHESS2 АЕХ FUL JANE ERROR ; У=FUL УЕХ CHESS2 АЕХ CHESS1 JANE ERROR ; У=CHESS1 УАХ CHESS2 JANE ERROR ХТА CHESS2 ААУ JANE ERROR ХТА CHESS2 АОУ АЕХ FUL JANE ERROR ; У=FUL ХТА CHESS2 АЕУ АЕХ CHESS1 JANE ERROR 13 VJM NEWTEST ; ; А1 - AAI, AOI, AEI, А-I, I-А ; ТА1:N VТМ @А1 N ХТА BLTEST JANE ТА2 2 VТМ -12 LТ61:UТА -1 2 ATI 15 2 AAI 15 АЕХ FUL JANE ERROR ХТА FUL AAI JANE ERROR ХТУ ХТА FUL 2 AEI 15 JANE ERROR АОУ JANE ERROR 2 UТА 15 2 ATI 15 2 AEI 15 JANE ERROR 2 AOI 15 2 AEI 15 JANE ERROR 2 UТА 15 2 А-I 15 JANE ERROR 2 UТА 16 2 А-I 15 JALE ERROR 2 UТА 14 2 А-I 15 JAGE ERROR 2 UТА 15 2 I-А 15 JANE ERROR 2 UТА 16 2 I-А 15 JAGE ERROR 2 UТА 14 2 I-А 15 JALE ERROR 2 VLM LТ61 13 VJM NEWTEST ; ; А2 - МРАС, MUNP ; ТА2:N VТМ @А2 N ХТА BLTEST JANE ТА3 UТА -20 LТ621:АТХ WS+4 ; СМЕЩЕНИЕ 2 VТМ -11 ; РЕГИСТРЫ 4-15 :2 UТА 15 ARX WS+4 2 ATI 15 2 VLM *-1 2 VТМ -8 ; LТ62:ХТА АЕХ 2 МРАС 12 АТХ WS УТХ WS+1 UТА 2 ATI 12 2 ATI 13 2 ATI 14 2 ATI 15 ХТА WS 2 MUNP 12 УТХ WS+2 АЕХ WS JANE ERROR ХТА WS+2 АЕХ WS+1 JANE ERROR 3 VТМ -11 :3 UТА 15 ARX WS+4 3 AEI 15 JANE ERROR 3 VLM *-2 2 VLM LТ62 ; ХТА WS+4 А+U 1 JALE LТ621 13 VJM NEWTEST ; ; А3,А4,А5 - ЦЕЛОЕ УМНОЖЕНИЕ И ДЕЛЕНИЕ ; ТА3:N VТМ @А3 N ХТА BLTEST JANE ТА4 UТА @F 2 VТМ 2 3 VТМ 1 RА4:АТХ WS 4 VТМ 24 RРА4:ХТА WS 15 АТХ ASNA 1024-1 АТХ WS+1 ХТА WS А*U 2 JOVR ERROR АЕХ WS+1 JANE ERROR ХТА WS А*I 2 JOVR ERROR АЕХ WS+1 JANE ERROR UТА 2 UТС WS А*L JOVR ERROR АЕХ WS+1 JANE ERROR UТА 2 15 А*L JOVR ERROR АЕХ WS+1 JANE ERROR 6 VТМН WS UТА 2 6 А*Н 1 JOVR ERROR АЕХ WS+1 JANE ERROR УТХ WS 4 VRM RРА4 UТА -1 3 VRM RА4 ; :UТА @80FFF 2 VТМ 2 3 VТМ 1 RSA4:АТХ WS 4 VТМ 24 RPSA4:ХТА WS ASNA 1024+1 АТХ WS+1 ХТА WS А/U 2 JOVR ERROR АЕХ WS+1 JANE ERROR ХТА WS А/I 2 JOVR ERROR АЕХ WS+1 JANE ERROR UТА 2 АТХ WS+2 ХТА WS А/L WS+2 JOVR ERROR АЕХ WS+1 JANE ERROR UТА 2 15 АТХ ХТА WS 15 А/L JOVR ERROR АЕХ WS+1 JANE ERROR 6 VТМН WS+2 ХТА WS 6 А/Н 1 JOVR ERROR АЕХ WS+1 JANE ERROR УТХ WS 4 VRM RPSA4 UТА -1 3 VRM RSA4 ; 13 VJM NEWTEST ; ТА4:N VТМ @А4 N ХТА BLTEST JANE ТА6 4 VТМ 3 LТА4:UТА 13 13 VJM SETOPER ; МНОЖИТЕЛЬ UТА 5 ; МНОЖИМОЕ 13 VJM MULTA4 AEU 65 JANE ERROR UТА -13 13 VJM MULTA4 AEU -169 JANE ERROR 13 VJM MULTA4 JANE ERROR 13 VJM SETOPER UТА 5 13 VJM MULTA4 JANE ERROR NТА 64-25 13 VJM SETOPER 13 VJM MULTA4 AEN 64-49 JANE ERROR 4 VRM LТА4 13 VJM NEWTEST ; ТА5:N VТМ @А5 5 VТМ 3 LТА5:UТА 7 ; ДЕЛИТЕЛЬ 13 VJM SETOPER UТА 13 ; ДЕЛИМОЕ 13 VJM DIVTA5 AEU 1 JANE ERROR UТА 6 АЕУ JANE ERROR 13 VJM DIVTA5 АОУ JANE ERROR UТА -20 13 VJM DIVTA5 AEU -2 JANE ERROR UТА -6 АЕУ JANE ERROR UТА 77 13 VJM DIVTA5 AEU 11 АОУ JANE ERROR 5 VRM LТА5 13 VJM NEWTEST ; ; А6 - ASNA ; ТА6:N VТМ @А6 N ХТА BLTEST JANE ТА7 ХТА =Н4000 0000 0000 0000 L1Т66:15 АТХ ASN 1024+3 SТХ WS ASNA 1024+3 АЕХ WS JANE ERROR ХТА WS JANE L1Т66 ; 2 VТМ 25 ХТА =Н8000 0000 0000 0000 L2Т66:15 АТХ ASN 1024+3 АОХ =НЕ000 0000 0000 0000 SТХ WS ASNA 1024+3 АЕХ WS JANE ERROR ХТА WS 2 VRM L2Т66 ; UТА 2 L3Т66:15 АТХ ASN 1024-3 SТХ WS ASNA 1024-3 АЕХ WS JANE ERROR ХТА WS JANE L3Т66 ; UТА -1 2 VТМ 25 L4Т66:15 АТХ ASN 1024-11 АОХ =Н8000 0000 0000 0000 SТХ WS ASNA 1024-11 АЕХ WS JANE ERROR ХТА WS 2 VRM L4Т66 13 VJM NEWTEST ; ; А7 - VТМН, VTMQ, VТМВ, VTMF ; ТА7:N VТМ @А7 N ХТА BLTEST JANE ТВ0 2 VТМ WS IТА 2 ASN 1024-1 3 VТМН WS ITS 3 15 АЕХ JANE ERROR IТА 2 ASN 1024-2 3 VTMQ WS ITS 3 15 АЕХ JANE ERROR IТА 2 ASN 1024-3 3 VТМВ WS ITS 3 15 АЕХ JANE ERROR IТА 2 ASN 1024-6 3 VTMF WS ITS 3 15 АЕХ JANE ERROR ; 3 VТМН 100 3 UТМ -200 3 JMNE ERROR 3 VTMQ 100 3 UТМ -400 3 JMNE ERROR 3 VТМВ 100 3 UТМ -800 3 JMNE ERROR 3 VTMF 100 3 UТМ -6400 3 JMNE ERROR 13 VJM NEWTEST ; ; В0 - НУМЕРОВАННЫЕ БИТЫ : ; NТА,NTS,AAN,AON,AEN ; ТВ0:N VТМ @В0 N ХТА BLTEST JANE ТВ1 2 VТМ 63 15 VТМ WS ХТА =Н8000 0000 0000 0000 :15 АТХ ; 64,63,...,1 ASN 1024+1 JANE *-1 UТА 1 :15 АТХ ; 1,2,...,64 ASN 1024-1 JANE *-1 15 VТМ MST ; :2 NТА 2 АЕХ WS JANE ERROR 2 VRM *-1 ; 2 VТМ 63 3 VТМ 63 :3 NТА 1024 3 АЕХ WS+64 JANE ERROR 3 VRM *-1 ; :2 ХТА WS 2 NTS 15 АЕХ JANE ERROR 2 VRM *-2 ; 3 VТМ 63 :3 ХТА WS+64 3 NTS 1024 15 АЕХ JANE ERROR 3 VRM *-2 15 UТМ -MST 15 JMNE ERROR ; 2 VТМ 63 :2 AEN 2 VRM * АЕХ FUL JANE ERROR UТА -1 3 VТМ 63 :3 AEN 1024 3 VRM * JANE ERROR ; 2 VТМ 31 :2 UТС -1 2 AON 1 2 VRM *-1 АЕХ CHESS1 JANE ERROR ; 2 VТМ 63 :UТА -1 2 AAN 2 АЕХ WS JANE ERROR 2 VRM *-2 13 VJM NEWTEST ; ; В1 - РАБОТА С ПОЛУСЛОВАМИ ; ТВ1:N VТМ @В1 N ХТА BLTEST JANE ТВ2 2 VТМН WS UТА -32 3 VТМ 63 :2 АТН ; -32,-31,...,30,31 2 UТМ 1 А+U 1 3 VRM *-1 ; UТА 32 3 VТМ 63 :А-U 1 15 АТХ 2 HTS -1 2 UТМ -1 15 АЕХ U1AS ERROR 3 VRM *-3 ; ХТА WS АЕХ =HFFFF FFE0 FFFF FFE1 JANE ERROR 3 VТМ 31 ; :2 НТА 2 А-Н 1 AEU -1 JANE ERROR 2 НТА 1 2 Н-А U-А -1 JANE ERROR 2 UТМ 2 3 VRM *-4 ; 3 VТМ 63 UТУ :3 UТА -32 2 АЕН -1 АОУ JANE ERROR 2 UТМ -1 3 VRM *-2 ; АТХ WS ХТА CHESS2 XTS XTS FUL SТН WS<<1 JANE ERROR UТА 1 А+Н WS<<1 JANE ERROR ХТА CHESS1 SТН WS<<1+1 ААН WS<<1 АОН WS<<1 +1 АЕХ FUL ATI 14 ASN 1024+32 JANE ERROR 14 JMNE ERROR 13 VJM NEWTEST ; ; В2 - РАБОТА С ЧЕТВЕРТИНКАМИ : ; ТВ2:N VТМ @В2 N ХТА BLTEST JANE ТВ3 2 VTMQ WS 3 VТМ 63 UТА -32 ; :2 ATQ ; -32,-31,...,30,31 2 UТМ 1 А+U 1 3 VRM *-1 ; 3 VТМ 63 UТА 32 :А-U 1 15 АТХ 2 QTS -1 2 UТМ -1 ASN 1024+16 JANE ERROR 2 QТА 15 АЕХ AAU @FFFF U1AS ERROR 3 VRM *-5 ; ХТА WS АЕХ =HFFE0 FFE1 FFE2 FFE3 JANE ERROR ; 3 VТМ -63 UТУ :3 UТА 63-32 2 AEQ AAU @FFFF АОУ JANE ERROR 2 UТМ 1 3 VLM *-3 ; 2 VTMQ WS UTS -1 2 STQ 1 JANE ERROR ХТА FUL 2 AAQ 1 AEU @FFFF JANE ERROR 2 AOQ 1 AEU @FFFF JANE ERROR 13 VJM NEWTEST ; ; В3 - РАБОТА С БАЙТАМИ : ; ТВ3:N VТМ @В3 N ХТА BLTEST JANE ТВ6 2 VТМВ WS 3 VТМ 63 UТА -32 :2 АТВ 2 UТМ 1 А+U 1 3 VRM *-1 ; 3 VТМ 63 UТА 32 :А-U 1 15 АТХ 2 BTS -1 ASN 1024+8 JANE ERROR 2 ВТА -1 15 АЕХ AAU @FF U1AS ERROR 2 UТМ -1 3 VRM *-5 ; ХТА WS АЕХ =НЕ0Е1 Е2Е3 Е4Е5 Е6Е7 JANE ERROR ; 3 VТМ -63 UТУ :3 UТА 63-32 2 АЕВ AAU @FF АОУ JANE ERROR 2 UТМ 1 3 VLM *-3 ; 2 VТМВ WS UTS -1 2 SТВ 3 JANE ERROR 2 АОВ 3 AEU @FF JANE ERROR UТА -1 2 ААВ 3 AEU @FF JANE ERROR 13 VJM NEWTEST ; ; В6 - РАБОТА С БИТАМИ : ; FТА,ATF,FTS,STF,AAF,AOF,AEF ; ТВ6:N VТМ @В6 N ХТА BLTEST JANE ТВ7 2 VTMF WS 3 VТМ 127 4 VТМ 128 :IТА 3 2 ATF 2 UТМ 1 3 VRM *-1 :ITS 4 2 STF 2 UТМ 1 4 VRM *-1 JANE ERROR IТА 15 AEU MST JANE ERROR ХТА WS АЕХ CHESS1 JANE ERROR ХТА WS+1 АЕХ CHESS1 JANE ERROR ХТА WS+2 АЕХ CHESS2 JANE ERROR ХТА WS+3 АЕХ CHESS2 JANE ERROR ; 2 VTMF WS 3 VТМ 127 :IТА 3 AAU 1 2 FTS 2 UТМ 1 15 АЕХ JANE ERROR 3 VRM *-3 ; 4 VТМ 128 :2 FТА 2 UТМ 1 ITS 4 AAU 1 15 АЕХ JANE ERROR 4 VRM *-3 ; 4 VТМ 128 :2 UТМ -1 UТА -1 2 AAF ITS 4 AAU 1 15 АЕХ JANE ERROR 4 VRM *-3 ; 4 VТМ 63 3 VТМ 127 :3 UТА 1 AAU 1 2 AEF -1 2 UТМ -1 JANE ERROR 3 VRM *-2 ; :ASN 1024-1 2 AOF 2 UТМ 1 4 VRM *-1 АЕХ CHESS1 JANE ERROR 13 VJM NEWTEST ; ; В7 - РАБОТА С БИТАМИ : ; EXTF,SETF,CLRF ; ТВ7:N VТМ @В7 N ХТА BLTEST JANE ТС0 2 VTMF WS АТХ WS АТХ WS+1 3 VТМ -63 :ХТА =Н8000 0000 0000 0000 3 ASNA 1024+63 2 SETF 2 UТМ 1 АЕХ WS JANE ERROR 3 VLM *-3 ; 4 VТМ 63 :UТА -1 4 ASN 1024-64 2 CLRF -1 2 UТМ -1 АЕХ WS JANE ERROR 4 VRM *-3 ; 3 VТМ 63 LТ77:3 JMEQ *+2 IТА 3 AAU 1 4 AON 1 :АТХ WS 4 EXTF ; РАЗМН."0" АЕХ WS JANE ERROR ХТА =Н8000 0000 0000 0000 4 ASNA 1024 4 NTS 4 EXTF ; РАЗМН."1" 15 АЕХ JANE ERROR 4 UТМ 1 3 VRM LТ77 ; 13 VJM NEWTEST ; ; ТЕСТЫ ТИПА: "КТО ЧТО ПОРТИТ" : ; (УБРАТЬ ";" ПОСЛЕ ПРОПАЙКИ ПНА ГРУПП) ; ; С0 - КОМАНДЫ, НЕ ПОРТЯЩИЕ СУММАТОР ; ТС0:N VТМ @С0 N ХТА BLTEST JANE ТС1 2 VТМ 1 LТС0:2 ХТА CHESS1 UZA *+1 :АТХ WS U1А *+1 :ASN 1024 JМР *+1 :ASX =Н8000 0000 0000 0000 13 VJM *+1 :ATI 3 3 JMEQ *+1 :3 MTJ 4 4 JMNE *+1 :3 J+М 4 4 VLM *+1 :UТС 2 WТС ADR+1 :5 VТМ 4 5 VRM *+1 :5 UТМ 1 5 JMGT *+1 :XTR 0 5 JMGE *+1 :NTR 63 5 JMLT *+1 :3 MCJ 4 5 JMLE *+1 :4 MSN 1024+3 JALT *+1 :4 J-М 5 JALE *+1 :ASNA 1024 JAEQ *+1 :8 VТМН WS JANE *+1 :9 VTMQ WS JAGE *+1 :10 VТМВ WS JAGT *+1 :11 VTMF WS JCRY *+1 :MUNP 3 JOVR *+1 :XTS WS SТХ WS ITS 5 STI 5 А+U А-U AAU -1 AOU AEU UТУ ТТХ WS ; НАДО У=0 ! ХТУ FUL УТХ WS ААУ 3 VТМ А+I 3 А-I 3 AEI 3 AOI 3 4 VТМ -1 AAI 4 А+L А-L 8 АТН 9 ATQ 10 АТВ 11 ATF ATD WS SEMR WS SEMW WS SMON CMON @FFF7F 2 АЕХ CHESS1 JANE ERROR 2 VRM LТС0 13 VJM NEWTEST ; ; С1 - КОМАНДЫ, НЕ ПОРТЯЩИЕ РМР ; ТС1:N VТМ @С1 N ХТА BLTEST JANE ТС2 2 VТМ 1 LТС1:2 ХТУ CHESS1 JCRY *+1 :АТХ WS JOVR *+1 :ХТА WS UZA *+1 :XTS WS U1А *+1 :SТХ WS JМР *+1 :ААХ 13 VJM *+1 :АОХ FUL 13 VLM *+1 :ARX FUL 13 VRM *+1 :АРХ FUL 3 JMEQ *+1 :AUX FUL 3 JMNE *+1 :АСХ FUL 3 JMLT *+1 :ATI 3 3 JMLE *+1 :IТА 3 3 JMGT *+1 :ITS 3 3 JMGE *+1 :STI 3 JAEQ *+1 :3 MTJ 4 JANE *+1 :3 J+М 4 JALT *+1 :3 J-М 4 JALE *+1 :4 UТМ -1 JAGT *+1 :3 MCJ 4 JAGE *+1 :UТС 2 WТС ADR+4 5 VТМ -1 XTR FUL NTR 0 RТЕ 63 А+U -1 А-U -1 U-А 1 UТА -1 AAU -1 AEU AOU -1 ACU УАХ FUL УЕХ FUL УОХ FUL ААУ АЕУ АОУ 8 VТМН WS 9 VTMQ WS 10 VТМВ WS 11 VТМВ WS MUNP 3 А+I 3 А-I 3 I-А 3 AAI 3 AEI 3 AOI 3 ASNA 1024+5 ASNA 1024-7 А+L FUL А-L FUL L-А FUL ATD WS SEMR WS SEMW WS SMON CMON @FFF7F RMOD 1 WMOD 1 2 ХТА CHESS1 АЕУ JANE ERROR 2 VRM LТС1 13 VJM NEWTEST ; ; С2 - КОМАНДЫ, НЕ ПОРТЯЩИЕ РР : ; ТС2:N VТМ @С2 N ХТА BLTEST JANE Т41 2 VТМ 63 LТС2:2 NTR UZA *+1 :АТХ WS U1А *+1 :ATI JМР *+1 :3 MTJ 4 13 VJM *+1 :3 J+М 4 3 JMEQ *+1 :3 J-М 4 3 JMNE *+1 :ATD WS JCRY *+1 :3 MCJ 4 JOVR *+1 :4 UТМ -1 4 VLM *+1 :UТС 2 WТС ADR+4 :5 VТМ 4 5 VRM *+1 :RТЕ 63 3 JMLT *+1 :ХТУ WS 3 JMLE *+1 :УТХ WS 3 JMGT *+1 :3 MSN 1024+5 3 JMGE *+1 :3 MSN 1024-5 JALT *+1 :8 VТМН WS JALE *+1 :9 VTMQ WS JAGT *+1 :10 VТМВ WS JAGE *+1 :11 VTMF WS JAEQ *+1 :MUNP 3 JANE *+1 :8 АТН 9 ATQ 10 АТВ 11 ATF ATD WS RMOD 1 WMOD 1 RТЕ 63 ITS 2 ASN 1024-53 15 АЕХ JANE ERROR 2 VRM LТС2 13 VJM NEWTEST ; ; *********************************** ; * 41 - ЭКСТРАКОДЫ * ; *********************************** ; Т41:N VТМ @41 N ХТА BLTEST JANE Т4А 2 VТМ 50 ; СЧ-К ЦИКЛА UТА СНЕХТ N АТХ ADR-1 ; ПЕРЕХВАТ ; L1Т41:IТА 2 AAU 1 ATI 3 ; ЛЕВО/ПРАВО IТА 2 AAU 2 ATI 4 ; БЕЗ/С РЕЗ.ГР. RMOD @1818 ATI 5 ; Р Н Г 5 RMOD @11 ATI 6 ; Р Р 5 RMOD @12 AAU @FFFF :4 JMEQ *+1 ; РЕЗ.ГР.=31 АОХ =Н0000 0000 003F 0000 :5 WMOD @12 ATI 7 ; Р Р Р 5 RMOD @13 ATI 8 ; Р А В 5 RMOD @1D ATI 9 ; Р А П У 5 RMOD @1Е ATI 10 ; Р Н П IТА 15 15 VТМ -14 :15 АТХ MST+14 ; 15,1,2,...,14 15 IТА 15 15 VLM *-1 ХТА MST ATI 15 3 ХТА CHESS1 АЕХ FUL 3 JМР CALLEXT ; ; *** ДЛЯ РУЧНОЙ ПЕРЕДАЧИ УПРАВЛЕНИЯ : *** ; 1 - "ДЕРГАНЬЕ" ПУСТОГО ЭКСТРАКОДА ; 2 - "ДЕРГАНЬЕ" ПРЕРЫВАНИЯ ПО КОНТР.КОМ. ; GETFUN: IТА JANE HORROR FUN IТА JAEQ GETFUN ARET:IТА 5 VJM COUT JANE HORROR ХТА CON_IN JANE ANAL RЕТ ; Т41_ЕМР:UТС 1 ; С РЕЗ.ГРУППОЙ :4 VТМ ; БЕЗ ОНОЙ N VТМ @41 UТА ARET N АТХ ADR-1 RMOD @1818 ATI 5 5 RMOD @12 AAU @FFFF :4 JMEQ *+1 АОХ =Н0000 0000 003F 0000 :5 WMOD @12 JМР GETFUN ; LOOPINT:N VТМ @0D UТА АКК N АТХ ADR-1 SETR @100 ; БПТЗ ХТУ ; ТЕГ=0 UТА ТТХ WS 5 VТМ WS JМР COUT ; АКК:IТА 5 VJM COUT JANE HORROR NG RMOD 0 JANE HORROR ХТА CON_IN JAEQ RЕТ_INT UТА ANAL JМР PUT_РС ; ; ВНУТРИ ЭКСТРАКОДА. МЕНЯЕМ МЕСТАМИ ; СУММАТОР С РМР. ПРОВЕРИМ ВСЕ УСЛОВИЯ. ; СНЕХТ:АТХ WS+1 УТХ WS+2 IТА IА АЕХ MST+2 ; ИСП.АДРЕС JANE ERROR IТА NG АЕХ MST+5 ; ГРУППА У ПОДАТЕЛЯ JANE ERROR IТА TN АЕХ MST+10 ; ПРОЦЕСС-ПОДАТЕЛЬ JANE ERROR RMOD @1819 АЕХ MST+10 JANE ERROR RMOD @1818 ATI 14 ХТА MST+4 JAEQ *+3 14 RMOD @12 ; В РРР ASN 1024+3 ; ДОЛЖЕН AEI NG ; ПОЯВИТЬСЯ AAU @3Е0 ; НОМЕР :JANE ERROR ; ПРЕРВ.ГРУППЫ 14 RMOD @1D ATI 14 ; НОВОЕ РАПУ ХТА MST+9 ; СТАР.РАПУ А+U 16 AEI 14 JANE ERROR 14 J-М 15 15 UТМ 6 15 JMNE ERROR ; ХТУ WS+1 UТА -1 15 VТМ -13 :15 ATI 14 ; ПОРТИМ ВСЕ 15 VLM * ; РЕГИСТРЫ ХТА WS+2 RЕТ ; - ОТВАЛ ; CALLEXT:2 FUN ; СЛЕВА JМР *+2 :2 UТС 1 FUN -1 ; СПРАВА ; ; ПОСЛЕ ЭКСТРАКОДА. ПРОВЕРИМ ПЕРЕДАЧУ ; СУММАТОРА И РМР, И ЧТО НИКОГО БОЛЕЕ ; НЕ ПОРТИМ. ; :УТХ WS 3 АЕХ CHESS1 JANE ERROR ХТА WS 3 АЕХ CHESS1 АЕХ FUL JANE ERROR IТА 15 15 VТМ -14 :15 АЕХ MST+14 JANE ERROR 15 IТА 15 15 VLM *-1 RMOD @1818 АЕХ MST+5 JANE ERROR ; НЕ ТА ГРУППА 5 RMOD @11 АЕХ MST+6 ААХ =Н0000 0000 07EF FС03 JANE ERROR ; ИСПОРЧЕН РР 5 RMOD @12 АЕХ MST+7 ААХ =Н0000 0000 FFFF FFFF JANE ERROR ; ИСПОРЧЕН РРР 5 RMOD @13 АЕХ MST+8 ААХ =Н0000 0000 FFFF FFFF JANE ERROR ; ИСПОРЧЕН РАВ 5 RMOD @1D АЕХ MST+9 ААХ =Н0000 0000 FFFF FFFF JANE ERROR ; ИСПОРЧЕН РАПУ 5 RMOD @1Е АЕХ MST+10 JANE ERROR ; НЕ ТОТ ПРОЦЕСС RMOD @1819 АЕХ MST+10 JANE ERROR ; НЕ ТОТ РНП 2 VRM L1Т41 13 VJM NEWTESTI ; ; 4А - ЧТЕНИЕ/ЗАПИСЬ С ТЕГОМ (ТТА,ТТХ) ; Т4А:N VТМ @4А N ХТА BLTEST JANE TINTER SETR @0C17F ; ТЕГОВСКИЕ БЛОКИРОВКИ 2 VТМ 255 LТ4А:IТА 2 АЕХ ТТХ WS 5 VJM COUT ; СБРОС КЭША UТА 1 ТТА WS AEI 2 JANE ERROR IТА 2 АЕУ JANE ERROR 2 VRM LТ4А ; CLRR @FF604 ; СНЯТЬ БЛОКИР. 13 VJM NEWTEST ; ; ******************************* ; * П Р Е Р Ы В А Н И Я : * ; ******************************* ; ; СЛЕДУЮЩАЯ ГРУППА ТЕСТОВ ПОДГОТАВЛИВАЕТ УСЛОВИЯ ; ДЛЯ ВОЗНИКНОВЕНИЯ РАЗЛИЧНЫХ ПРЕРЫВАНИЙ ПРИ ; ОБРАЩЕНИИ К ЯЧЕЙКЕ WS. БЛОК РЕАКЦИИ НА ПРЕРЫ- ; ВАНИЕ ДОЛЖЕН ОБНУЛЯТЬ ЯЧЕЙКУ WS+1. ЕСЛИ ЭТО НЕ ; СДЕЛАНО, ЗНАЧИТ ПРЕРЫВАНИЯ НЕ БЫЛО. ; ; WS : ВСЕ "1" ИЛИ КОМАНДА ВОЗВРАТА ; WS+1 : ПРИЗНАК "ЖДЕМ ПРЕРЫВАНИЯ" ИЛИ 0, ЕСЛИ БЫЛО ; WS+2 : НОМЕР ГРУППЫ ПРЕРВАВШЕГОСЯ ПРОЦЕССА ; WS+3 : НОМЕР ЭТОГО ПРОЦЕССА ; WS+4 : РР ---"--- ; WS+5 : РРР ; WS+6 : СУММАТОР ; WS+7 : РМР ---"--- ; WS+8 : РАБ.ЯЧЕЙКА ; WS+9 : ДОЗВОЛЕННАЯ ПРИПИСКА ЯЧ. "WS" ; WS+10: РАБ.ЯЧЕЙКА ; TINTER:ХТА BLTEST + @3Е JANE PINTER RMOD @1818 ATI 2 ; Р Н Г АТХ WS+2 RMOD @1819 ATI 3 ; Р Н П АТХ WS+3 2 RMOD @11 АТХ WS+4 ; РР 2 RMOD @12 АТХ WS+5 ; РРР 7 VТМ WS ; ЭТАЛОН И15 4 VJM LTWS ; ; ; ; ; ИНФ.СЛОВА ТЕСТОВ: ; ----------------- ; 1:20 - АДРЕС ПРЕРЫВАЕМОЙ ПРОГРАММЫ ; 33:40 - УСТАНАВЛИВАЕМЫЙ ТЕГ ; 41:48 - НОМЕР ТЕСТА ; 49:60 - "0" ЕСЛИ РВЕТ ПРИ РАБОТЕ С ОПЕРАНДОМ ; ИНАЧЕ ТЕСТИРУЕТСЯ ВЫБОРКА КОМАНДЫ ; IWTEST:АТХ @0В80 ; 0В - ПИНТ(ОП) JМР TIU :АТХ @0В80 JМР TIL :АТХ @0В80 JМР TIR :АТХ @0В80 JМР TIRH :АТХ @0В80 JМР TIRQ :АТХ @0В80 JМР TIRB :АТХ @0В80 JМР TIRF :АТХ @0В80 JМР TIRS1 :АТХ @0В80 JМР TIRS2 :АТХ @0В80 JМР TIRS3 :АТХ @0В80 JМР TIRS4 :АТХ @0В80 JМР TIRS5 :АТХ @0В80 JМР TIRS6 ; :JМР @0А81 ; 0А - ПИНТ(КОМ) JМР WS ; :АТХ @1702 ; 17 - ОПЕРАНД В РЭ JМР TIU :АТХ @1702 JМР TIL :АТХ @1702 JМР TIR :АТХ @1702 JМР TIRH :АТХ @1702 JМР TIRQ :АТХ @1702 JМР TIRB :АТХ @1702 JМР TIRF :АТХ @1702 JМР TIRS1 :АТХ @1702 JМР TIRS2 :АТХ @1702 JМР TIRS3 :АТХ @1702 JМР TIRS4 :АТХ @1702 JМР TIRS5 :АТХ @1702 JМР TIRS6 ; :JМР @1603 ; 16 - КОМАНДА В РЭ JМР WS ; :АТХ @0С04 ; 0С - ЗАЩ.АДР (ЧТ) JМР TIU :АТХ @0С04 JМР TIL :АТХ @0С04 JМР TIR :АТХ @0С04 JМР TIRH :АТХ @0С04 JМР TIRQ :АТХ @0С04 JМР TIRB :АТХ @0С04 JМР TIRF :АТХ @0С04 JМР TIRS1 :АТХ @0С04 JМР TIRS2 :АТХ @0С04 JМР TIRS3 :АТХ @0С04 JМР TIRS4 :АТХ @0С04 JМР TIRS5 :АТХ @0С04 JМР TIRS6 ; :АТХ @1508 ; 15 - ЗАЩ.АДР (ЗП) JМР TIUW :АТХ @1508 JМР TILW :АТХ @1508 JМР TIRW :АТХ @1508 JМР TIWH :АТХ @1508 JМР TIWQ :АТХ @1508 JМР TIWB :АТХ @1508 JМР TIWF :АТХ @1508 JМР TIWS1 :АТХ @1508 JМР TIWS2 :АТХ @1508 JМР TIWS3 :АТХ @1508 JМР TIWS5 :АТХ @1508 JМР TIWS6 ; :JМР @0D00 ; 0D - КОНТР.КОМ. JМР WS :JМР @1311 ; 13 - ЗАЩ.ВЫБОРКИ JМР WS :JМР @1421 ; 14 - ЗАЩ.П/У JМР WS ; :JМР @07FF ; 7 - ОШ.АДРЕС (К) JМР WS :АТХ @07FF ; 7 - ОШ.АДРЕС (ОП) JМР TIU :АТХ @07FF JМР TIL :АТХ @07FF JМР TIR :АТХ @07FF JМР TIWH :АТХ @07FF JМР TIWQ :АТХ @07FF JМР TIWB :АТХ @07FF JМР TIWF ; VARJUMP:6 UТМ 1 JМР CLTWS ; КОНЕЦ СПИСКА ; ; БЛОКИ "ОБРАБОТКИ ПРЕРЫВАНИЙ" ; PICONTR:SETR @F1FF NG RMOD @11 AON 64-25 NG WMOD @11 ; ВЕРНЕМ "РОА" NG RMOD 2 ATI 2 ; СТРАНИЦА ХТА WS+9 ; ЕЕ ПРИПИСКА 2 WMOD @400 ; ДОСТУП К НЕЙ N NТА ААХ COMINT :JAEQ *+1 RI MTJ IА ; СЧАС ==> ИАОП :IТА 2 ASN 1024-10 AOU WS & @3FF EXTF 64-20 AEI IА JAEQ CONTR1 JМР ERRINT ; ОШ.ИАОП ; CONTROL:SETR @F1FF ХТА WS UТУ 1 ; ТЕГ=<КОМАНДА НР> ТТХ WS 5 VJM COUT ; СБРОС КЭША N NТА ААХ COMINT :JAEQ *+1 RI MTJ IА ; СЧАС ==> ИАОП :IТА IА AEU WS N MTJ 5 5 UТМ -@17 :5 JMNE *+1 AAU @7FFF ; "РЭ" :5 UТМ @17-@16 5 JMEQ *-1 ; "РЭ" 5 UТМ @16-7 :5 JMNE *+1 ; НОРМ.АДРЕС ААХ =Н0000 0000 000F FFFF :JANE ERRINT ; НЕ ТОТ ИАОП NG WMOD 8 ; И8=0 NG RMOD @1В ; ПОДПРАВКА EXTF 64-20 ; ЗНАКА NG WMOD @1В ; У СЧАС JМР CONTR1 ; CONTREXT: 15 ХТА 2 ; СМ. EXTINT АТХ MIRCOPY ; CONTR1:ХТА WS+1 JAEQ ERRINT ; НЕ ЖДАЛИ IТА NG АЕХ WS+2 JANE ERRINT ; НЕ ТА ГРУППА NG RMOD 0 AOI 0 JANE HORROR RMOD @1818 ATI 2 2 RMOD @12 ; В РРР ДОЛЖЕН ASN 1024+3 ; ПОЯВИТЬСЯ AEI NG ; НОМЕР AAU @3Е0 ; ПРЕРВАННОЙ JANE ERRINT ; ГРУППЫ ! IТА TN АЕХ WS+3 JANE ERRINT ; НЕ ТОТ ПРОЦЕСС NG RMOD N AEI N JANE ERRINT ; НЕ ТО ПРЕРЫВАНИЕ АТХ WS+1 JМР RЕТ_INT ; ; ПОСЛЕ ВОЗВРАТА: ПРАВИЛЬНО ЛИ ОТРАБОТАЛИ ; CONTR2:7 J-М 15 CONTR3:15 JMNE ERRINT УТХ WS+8 АЕХ WS+6 JANE ERRINT ; ИСПОРЧЕН СУММАТОР ХТА WS+7 АЕХ WS+8 JANE ERRINT ; ИСПОРЧЕН РМР ХТА WS+1 JANE ERRINT ; НЕ РВАЛИСЬ ! RMOD @1818 АЕХ WS+2 JANE ERRINT ; ИСПОРЧЕН РНГ RMOD @1819 АЕХ WS+3 JANE ERRINT ; ИСПОРЧЕН РНП ХТА WS ; НЕ ДОЛЖНО РВАТЬ!! АТХ WS ; ---"--- 12 JМР ; ; 3:0В - ПРЕРЫВАНИЯ ПО ТЕГУ ; LTWS:4 ХТА ; ИНФ.СЛОВО ASN 1024+40 AAU @FF ATI N N JMEQ ELTWS AEU @07 :JANE *+1 UТС =Н0000 0000 8000 0000 ; ПОРТИМ АДРЕС :ХТА ATI 8 UТА CONTROL N АТХ ADR-1 АТХ WS+1 4 ХТА ASN 1024+32 AAU @FF ; ТЕГ АТХ WS+7 4 ХТА АОХ =Н0000 0000 FFF0 0000 ATI 11 ; JUMP ADRESS ASN 1024+48 AAU @FF JAEQ *+2 8 J+М 11 UТС VARJUMP-FUL :ХТА FUL АТХ WS+6 ХТУ WS+7 SETR @100 ; БПТЗ ТТХ WS 5 VJM COUT ; СБРОС КЭША CLRR @FF604 ; СБРОС БЛОКИРОВОК 6 VТМ -1 15 VТМ WS 11 JМР ; НА ДЕРГАНЬЕ ; ;-------------------- JМР ERRINT JМР ERRINT TIU:UТС -1 8 ХТА WS+1 6 UТМ 1 JМР CLTWS ;-------------------- JМР ERRINT JМР ERRINT TIL:8 ХТА WS 6 VLM CLTWS ;-------------------- JМР ERRINT JМР ERRINT TIR:6 UТМ -1 8 ХТА WS 6 UТМ 2 JМР CLTWS JМР ERRINT JМР ERRINT ;-------------------- TIUW:UТС -1 8 АТХ WS+1 6 UТМ 1 JМР CLTWS JМР ERRINT JМР ERRINT ;-------------------- TILW:8 АТХ WS 6 VLM CLTWS JМР ERRINT JМР ERRINT ;------------------- TIRW:6 UТМ -1 8 АТХ WS 6 UТМ 2 JМР CLTWS JМР ERRINT JМР ERRINT ;----------------- TIRH:8 НТА WS<<1 6 UТМ 1 EXTF 64-32 JМР CLTWS ;----------------- TIWH:6 UТМ -1 8 АТН WS<<1 6 UТМ 2 JМР CLTWS ;---------------- TIRQ:8 QТА WS<<2 6 UТМ 1 EXTF 64-16 JМР CLTWS ;---------------- TIWQ:6 UТМ -1 8 ATQ WS<<2 6 UТМ 2 JМР CLTWS ;---------------- TIRB:9 VТМВ WS 9 UТС 13 8 ВТА -13 6 UТМ 1 EXTF 64-8 JМР CLTWS ;----------------- TIWB:6 UТМ -1 9 VТМВ WS 9 UТС 13 8 АТВ -13 6 UТМ 2 JМР CLTWS ;---------------- TIRF:9 VTMF WS 9 UТС 13 8 FТА -13 6 UТМ 1 EXTF 64-1 JМР CLTWS ;---------------- TIWF:6 UТМ -1 9 VTMF WS 9 UТС 13 8 ATF -13 6 UТМ 2 JМР CLTWS ;----------------- TIRS1:15 VТМ WS+1 SТХ WS+10 6 VLM CLTWS JМР ERRINT ;----------------- TIRS2:15 VТМ WS+1 6 UТМ 1 15 ХТА JМР CLTWS ;----------------- TIRS3:15 VТМ WS+1 UТА STI 14 6 VLM CLTWS ;----------------- TIRS4:15 VТМ WS+1 15 WТС 6 VТМ 6 VLM CLTWS ;----------------- TIRS5:9 VТМН WS+10 15 VТМ WS+1 9 SТН 6 VLM CLTWS ;----------------- TIRS6:9 VТМВ WS+10 15 VТМ WS+1 9 SТВ 3 6 VLM CLTWS ;----------------- TIWS1:15 АТХ 6 VLM CLTWS1 TIWS2:XTS FUL 6 VLM CLTWS1 TIWS5:9 VТМН FUL 9 HTS 1 6 UТМ 1 JМР CLTWS1 TIWS6:9 VТМВ WS+10 6 UТМ -1 9 BTS 3 EXTF 64-8 6 UТМ 2 JМР CLTWS1 TIWS3:6 UТМ 1 UTS -1 CLTWS1:15 VRM CLTWS JМР ERRINT ;----------------- ; CLTWS:6 JMNE ERRINT ; ОШ.ППК 12 VJM CONTR2 UТА ERRINT N АТХ ADR-1 ; ВОССТАНОВЛЕНИЕ ХТА CON_IN JANE ANAL ; БЫЛ ВВОД 4 VLM LTWS ELTWS:13 VТМ PINTER JМР NEWTESTI ; ; ********************************** ; * СТРАНИЧНЫЕ ПРЕРЫВАНИЯ : * ; ********************************** ; ; ЯЧЕЙКА "WS" ПОСЛЕДОВАТЕЛЬНО ПРИПИСЫВАЕТСЯ К ; РАЗНЫМ МАТ.СТРАНИЦАМ. ЗАТЕМ ТУДА ТЫКАЕМСЯ В ; РАЗЛИЧНЫХ РЕЖИМАХ И ПРОВЕРЯЕМ, ЧТО ПРЕРЫВАЛИСЬ ; ТОЛЬКО ПО ДЕЛУ И ЧТО НЕ ПОРТИЛИ РЕГИСТРОВ. ; В САМОЙ "WS" НАХОДИТСЯ КОМАНДА ВОЗВРАТА. ; CODWS:15 VТМ 6 JМР ; CONEX:12 MTJ 14 ; ВЫХОД ПО И12 12 VJM CONTR2 ; PREAMBUL:14 MTJ 12 ; ВЫХОД ПО И14 N JМР * - @0Е :3 UТА @3FE ; ЗАЩ.ПО N ПРОЦЕССА JМР PREAMB :3 UТА @3FE ; ---"--- JМР PREAMB :3 UТА @1FF ; ЗАЩ.ПО ОБРАЩ. JМР PREAMB :3 UТА @2FF ; ЗАЩ.ПО ЗАПИСИ ; PREAMB:2 WMOD @400 ; УСТ. РП/РЗ АТХ WS+1 ; "ЖДЕМ ПРЕРЫВАНИЯ" ХТУ WS+7 ; РМР ХТА WS+6 ; СУММАТОР 7 MTJ 15 7 MTJ 8 CLRR @F4604 ; СНЯТЬ БЛОКИРОВКИ 12 JМР ; ГОТОВЫ К ДЕРГАНЬЮ ; ; РАЗНООБРАЗНОЕ ДЕРГАНЬЕ ПО ЧТЕНИЮ : ; READWS:6 VТМ 14 VJM PREAMBUL ; ВЫХОД ПО И11 7 ХТА 12 VJM CONEX UТС -1 7 ТТА 1 12 VJM CONEX 15 UТМ 1 SТХ 12 VJM CONEX 15 UТМ 1 STI 12 VJM CONEX 15 UТМ 1 15 ХТА 12 VJM CONEX UТА -1 7 ААХ 12 VJM CONEX UТА 7 АОХ 12 VJM CONEX 15 UТМ 1 SТН WS<<1 +20 12 VJM CONEX 8 MSN 1024-1 8 НТА 1 7 ХТА 12 VJM CONEX 15 UТМ 1 STQ WS<<2 +40 12 VJM CONEX 8 MSN 1024-2 8 QТА 3 7 ХТА 12 VJM CONEX 15 UТМ 1 9 VТМВ WS+10 9 SТВ 12 VJM CONEX 8 MSN 1024-3 8 ВТА 7 7 ХТА 12 VJM CONEX 15 UТМ 1 9 VTMF WS+10 9 STF 12 VJM CONEX 8 MSN 1024-6 8 FТА 63 7 ХТА 12 VJM CONEX 7 WТС 12 VТМ 11 MTJ 12 JМР CONTR2 ; КОНЕЦ СПИСКА ; ; РАЗНООБРАЗНОЕ ДЕРГАНЬЕ ПО ЗАПИСИ : ; WRITWS:6 VТМ 14 VJM PREAMBUL ; ВЫХОД ПО И11 7 АТХ 12 VJM CONEX 7 ТТХ 12 VJM CONEX UТС -1 XTS CODWS+1 15 UТМ -1 12 VJM CONEX UТС 1 15 АТХ -1 15 UТМ -1 12 VJM CONEX UTS 15 UТМ -1 7 ХТА 12 VJM CONEX 8 MSN 1024-6 8 ATF 63 12 VJM CONEX 8 MSN 1024-3 8 АТВ 7 12 VJM CONEX 8 MSN 1024-2 8 ATQ 3 12 VJM CONEX 8 MSN 1024-1 8 АТН 1 11 MTJ 12 JМР CONTR2 ; КОНЕЦ СПИСКА ; ; Ц И К Л П О М А Т. Л И С Т А М : ; PINTER:ХТА BLTEST + @3F JANE TPROGI 2 VТМ 1023 RMOD WS>>10 & @3FF + @400 AOU @3FF АТХ WS+9 AAU @FFC00 ATI 3 ; ЭТАЛОН ПРИПИСКИ SETR @0C17F UТУ 1 УТХ WS+7 ХТА CODWS АТХ WS+6 ТТХ WS ; *** UТА PICONTR ; ПЕРЕХВАТЫ: АТХ ADR+14 ; ЧУЖ.РП (ЧТ/ЗП) АТХ ADR+15 ; ЧУЖ.РП (ВКС) АТХ ADR+16 ; ЗАЩ.СТР.ПО ОБРАЩ. АТХ ADR+17 ; ЗАЩ.СТР.ПО ЗАПИСИ АТХ ADR+7 ; ОТР.N СТР (ВКС) АТХ ADR+8 ; ОТР.N СТР (ЧТ/ЗП) ; TPI:2 MTJ 12 IТА 2 12 UТМ -MAIN_PAG 12 JMLT NOOWN 12 UТМ -4 ; СЕБЯ 12 JMLT ETPI ; НЕ ТРОНЕМ ! 12 UТМ MAIN_PAG+4 -@3С0 12 JMEQ ETPI ; ПП-ЛИСТ NOOWN:ASN 1024-10 EXTF 64-20 AOU WS & @3FF ATI 7 ; ТЕК.МАТ.АДРЕС AEU WS JAEQ ETPI ; ЭТОТ НЕЛЬЗЯ ! 2 RMOD @400 АТХ OLDRP ; СТАРАЯ ПРИПИСКА ; ; ВНАЧАЛЕ ИССЛЕДУЕМ Р П НА ПРИГОДНОСТЬ ; 8 VТМ -20 ; РАЗРЯДЫ 9 VТМ -1 ; БЕГ."0" ИЛИ "1" L1RP:8 NТА 64-1 AEI 9 2 WMOD @400 ААХ =Н0000 0000 000F FFFF ATI 10 ХТА CHESS1 2 RMOD @400 ATI 11 AEI 10 JAEQ L2RP 15 VТМ MST ХТА ="BAD REGI" 2 UTS @400 14 VJM DНЕХ8 ААХ =Н0000 0000 00FF FFFF АОХ =Z"STER:" ITS 10 14 VJM DНЕХ8 ААХ =Н0000 00FF FFFF FFFF АОХ =Z" W:" ITS 11 14 VJM DНЕХ8 ААХ =Н0000 00FF FFFF FFFF АОХ =Z" R:" UTS @0A0D ASN @400-32 UTS MST 5 VJM OUTPUT 15 VТМ MST JМР REPRI L2RP:9 VLM L1RP 9 VТМ -1 8 VLM L1RP 15 VТМ MST ; ; 10 - ЧУЖОЙ Р П ПРИ ВЫБОРКЕ КОМАНДЫ ; N VТМ @10 14 VJM PREAMBUL ; ПОРТИМ N ПРОЦ. 7 UТС 6 VJM ; ДОЛЖНО РВАНУТЬ 7 MTJ 15 12 VJM CONEX SETR @8000 ; А С БПНП - НЕТ 7 UТС 6 VJM ХТА WS+1 JAEQ ERRINT ; УВЫ, РВАНУЛО 15 JMNE ERROR ; НЕ ПОПАЛИ В "WS" ; 3 UТА @FF ; УСТ.ЗАЩ.ПО ОБРАЩ. 12 VJM PREAMB ; ПРИ ВЫБОРКЕ 7 UТС ; КОМАНД ОНА НЕ 6 VJM ; ПРЕРЫВАЕТ ХТА WS+1 JAEQ ERRINT ; УВЫ,ЭТО СЛУЧИЛОСЬ 15 JMNE ERRINT ; НЕ ТУДА ПОПАЛИ ; ; 0F - ЧУЖОЙ Р П ПРИ ОБРАЩЕНИИ К ОПЕРАНДУ ; N VТМ @0F 6 VТМ 14 VJM PREAMBUL 7 ХТА ; ДОЛЖНО РВАНУТЬ 12 VJM CONEX SETR @8000 7 ХТА ; А С БПНП - НЕТ ХТА WS+1 JAEQ ERRINT ; УВЫ, РВАНУЛО 11 VJM READWS 11 VJM WRITWS ; ; 12 - ЗАЩИТА СТРАНИЦЫ ПО ЗАПИСИ : ; N VТМ @12 14 VJM PREAMBUL 7 АТХ ; ДОЛЖНО РВАНУТЬ 12 VJM CONEX SETR @1000 7 АТХ ; А С БЗЗ - НЕТ ! 7 UТС 6 VJM ; И ВЫП. МОЖНО ХТА WS+1 JAEQ ERRINT ; УВЫ, РВАНУЛО 15 JMNE ERRINT 14 VJM PREAMBUL 7 UТС ; А ЭТО ВСЕ 6 VJM ; ВООБЩЕ БЕЗ БЗЗ 15 JMNE ERRINT 6 VТМ 7 MTJ 15 7 ХТА ; 7 ТТА 15 UТМ 1 SТХ 15 UТМ 1 STI 15 UТМ 1 15 ХТА 15 UТМ 1 STQ WS<<2 +40 ХТА WS+1 JAEQ ERRINT ; ГДЕ-ТО РВАНУЛО 11 VJM WRITWS ; ; 11 - ЗАЩИТА СТРАНИЦЫ ПО ОБРАЩЕНИЮ ; N VТМ @11 14 VJM PREAMBUL 7 ХТА ; ДОЛЖНО РВАНУТЬ 12 VJM CONEX SETR @2000 7 ХТА ; А С БЗО - НЕТ ! 7 UТС 6 VJM 15 JMNE ERRINT ХТА WS+1 JAEQ ERRINT ; УВЫ, РВАНУЛО 14 VJM PREAMBUL 7 UТС 6 VJM ; А КАК БЕЗ БЗО ? 15 JMNE ERRINT ХТА WS+1 JAEQ ERRINT ; - НЕХОРОШО 11 VJM READWS 11 VJM WRITWS 7 JMGE REPRI ; ; 8,9 - ОТРИЦАТЕЛЬНЫЙ НОМЕР СТРАНИЦЫ: ; N VТМ 9 RMOD @1С15 ATI 10 ; СТАРЫЙ ТАЙМЕР UТА QUANT WMOD @1С15 3 UТА @3FF 12 VJM PREAMB :CLRR @FBFFF ; СНЯТЬ РОА 7 ХТА 12 VJM CONTR2 ; 3 UТА @FF 12 VJM PREAMB :CLRR @FBFFF 15 АТХ 15 UТМ -1 12 VJM CONTR2 ; N VТМ 8 6 VТМ RWS 3 UТА @FF 12 VJM PREAMB :CLRR @FBFFF 7 JМР RWS:12 VJM CONTR3 IТА 10 ; ВОССТ. WMOD @1С15 ; ТАЙМЕРА ; ; К О Н Е Ц Ц И К Л А С Т Р А Н И Ц : ; REPRI:ХТА OLDRP 2 WMOD @400 ; ВОССТ.ПРИПИСКИ ETPI:WТС NEXPAG 2 UТМ ; ШАГ ПО РП ХТА CON_IN JANE ANAL ; БЫЛ ВВОД 2 JMGE TPI 13 VJM NEWTESTI ; ; 5 - ПРОГРАММНОЕ ПРЕРЫВАНИЕ ; TPROGI:N VТМ 5 N ХТА BLTEST JANE TSEM UТА CONTREXT N АТХ ADR-1 2 VТМ 63 ; TP1F:ХТА FUL 2 AEN АТХ WS+6 АТХ WS+7 АТХ WS+1 АЕХ 15 VТМ WMOD @1С13 ; УСТ.ПРОГ.ПРЕР. 12 VJM CONTR3 ; ХТА MIRCOPY AAN 64-41 JAEQ ERRINT ; НЕТ БИТА В ГРП RMOD @1802 AAN 64-41 JANE ERRINT ; НЕ ПОГАСИЛСЯ АТХ MIRCOPY 2 VRM TP1F 13 VJM NEWTESTI ; ; 4В - СЕМАФОРНОЕ ЧТЕНИЕ (SEMR) ; TSEM:N VТМ @4В N ХТА BLTEST JANE NEWFIN RMOD @1818 ATI 8 ; РНГ RMOD @1819 ATI 3 ; РНП 2 VТМ 255 LTSEM:UТА ; ЧИСТИМ АТХ WS ; СЕМАФОР SETR @80 IТА 2 ; ИЗОБРАЗИМ 8 WMOD @1Е ; ИЗ СЕБЯ WMOD @1819 ; ЧУЖОЙ ПРОЦЕСС AEI 3 CLRR @FFF7F ATI 14 ХТА FUL SEMR WS ; ОН ЛЕЗЕТ В СЕМАФОР :JCRY *+1 ; ЕСТЬ ЗАХВАТ JМР ERROR :АЕХ FUL JANE ERROR ; ПОРТИТ СУММАТОР SETR @80 IТА 3 8 WMOD @1Е WMOD @1819 CLRR @FFF7F ХТА FUL :SEMR WS ; А ТЕПЕРЬ - МЫ JCRY *+2 ; - ДАЮТ !!! :14 JMEQ ERROR JМР *+2 :14 JMNE ERROR :АЕХ FUL JANE ERROR SEMW WS ; ПОПЫТКА ОТКАЗА JANE ERROR ; ПОРЧЕН СУММАТОР :ХТА WS JAEQ *+2 14 JMEQ ERROR ; НЕТ ОТКАЗА ОТ СВОЕГО JМР ELTSEM :14 JMNE ERROR ; БЫЛ ОТКАЗ ОТ ЧУЖОГО ELTSEM:2 VRM LTSEM 13 VJM NEWTEST ; ; NEWFIN: UТА QUANT WMOD @1С15 ; МАЛЫЙ ТАЙМЕР ; ХТА NPASS ARX =Н0001 0000 0000 0000 ААХ =HFFFF 0000 0000 0000 АТХ NPASS ; КОНЕЦ РАУНДА ААХ CMDIV JANE TBEGIN ; ДЕЛИТЕЛЬ UТА -1 WMOD @1С15 ; БОЛЬШОЙ ТАЙМЕР ; 1 VТМ FREE_С-BEGIN-2 SETR @3178 COMPARE:1 ХТА BEGIN 1 АЕХ BEGIN+@4000 JAEQ ЕСОМР 15 VТМ MST ХТА ="UNCOMP:" 1 XTS BEGIN ASN @400+32 14 VJM DНЕХ8 1 XTS BEGIN 14 VJM DНЕХ8 XTS =" DOUBL: " 1 XTS BEGIN+@4000 ASN @400+32 14 VJM DНЕХ8 1 XTS BEGIN+@4000 14 VJM DНЕХ8 XTS =" ADR: " ITS 1 14 VJM DНЕХ8 ASN @400-24 UTS MST 5 VТМ INPUT 13 VJM OUTPUT UTS SТХ CON_IN ASN @400+56 AEU @31 ;"1" JAEQ DUBL1 AEU 3 ; "2" JAEQ DUBL2 AEU @74 ; "F" JANE ЕСОМР :1 ТТА BEGIN 1 ТТХ BEGIN+@4000 1 VRM *-1 JМР ЕСОМР DUBL2:1 ТТА BEGIN 1 ТТХ BEGIN+@4000 JМР ЕСОМР DUBL1:1 ТТА BEGIN+@4000 1 ТТХ BEGIN ЕСОМР:1 VRM COMPARE ; ; ЧТЕНИЕ ВСЕЙ ПАМЯТИ : ; 7 VТМ 1023-64 RMOD @401 АТХ OLDRP LRMEM:6 VTMF MSCALE 7 UТС 6 FТА JAEQ ELRMEM IТА 7 ASN @400-10 AOU @3FF WMOD @401 ; ПРИПИСКА SETR @178 2 VТМ 1023 ; ; ПРОВЕРКА БОБР, БИЗМ ; UТА 7 WMOD @800 5 VТМ 2 ХТА @7FF 7 RMOD @800 ATI 11 AEI 5 JANE BOBISM 7 WMOD @800 5 VТМ 6 ТТА @7FF ТТХ @7FF 7 RMOD @800 ATI 11 AEI 5 JAEQ INSINDR BOBISM:15 VТМ MST 5 MSN -5 5 J+М 11 ХТА ="BOBR,BIS" ITS 11 14 VJM DНЕХ8 AAU @FFFF ASN @400-32 АОХ =Z"М:'0''0''@0А''@0D'" UTS MST 5 VJM OUTPUT INSINDR:ХТА SINDROM ATI 4 L2RMEM:2 ХТА 1024 ХТА SINDROM AEI 4 JAEQ EL2RMEM AEI 4 ATI 4 15 VТМ MST AAU @7F ATI 3 ; БЕЗ БИТА НЕЧЕТА ХТА ="'@0А''@0D'MEMORY" XTS =" ADRESS:" ITS 7 ASN @400-10 AOI 2 EXTF 64-20 14 VJM DНЕХ8 XTS =" ERROR" XTS =" IN BIT " 14 VТМВ S_NUM 3 J+М 14 14 BTS ASN @400-56 AUX =H0F0F 0000 0000 0000 АОХ ="00. SIND" ITS 4 14 VJM DНЕХ8 AAU @FFFF ASN @400-16 АОХ ="RОМ='0''0''@0А''@0D'" UTS UTS MST 5 VJM OUTPUT ХТА SINDROM ATI 4 EL2RMEM:2 VRM L2RMEM CLRR @FFE87 ELRMEM:7 VRM LRMEM ХТА OLDRP WMOD @401 JМР TBEGIN ; НА НАЧАЛО ТЕСТА ; ; П О Д П Р О Г Р А М М Ы : ; ========================== ; COUT:WMOD @1С19 ; СБРОС КЭША 5 JМР ; СНМ3:IТА 3 АЕХ =1 СНАСС:JANE ERROR ; ATI 2 ; 2 JMNE ERROR ; ASN 1024+32 ; ATI 2 ; 2 JMNE ERROR 13 JМР ; SETOPER:ATI 2 АТН WS<<1 АТХ WS+1 13 JМР MULTA4:4 JМР *+1 :2 А*U 13 JМР :А*I 2 13 JМР :А*L WS+1 13 JМР :А*Н WS<<1 13 JМР DIVTA5:5 JМР *+1 :2 А/U 13 JМР :А/I 2 13 JМР :А/L WS+1 13 JМР :А/Н WS<<1 13 JМР ; DНЕХ8:ASN @400-32 AUX =H0F0F0F0F0F0F0F0F 15 АТХ ARX =Н0606060606060606 ААХ =Н1010101010101010 ASN @400+2 ; 04 15 АТХ ASN @400+1 ; 06 15 АОХ -1 ASN @400+1 15 АОХ ; 07 15 ARX ARX ="00000000" 14 JМР ; CHST2:15 UТМ -WS 15 JMNE ERROR 2 UТМ -1 2 JMNE ERROR 3 UТМ 1 3 JMNE ERROR 4 JMNE ERROR 5 JMNE ERROR 6 UТМ -1 6 JMNE ERROR 7 UТМ 1 7 JMNE ERROR 13 JМР ; CHSTAK: 15 JMNE ERROR ХТА WS ATI 2 2 JMNE ERROR ASN 1024+32 ATI 2 2 JMNE ERROR ХТА WS+2 ATI 2 2 JMNE ERROR ASN 1024+32 ATI 2 2 JMNE ERROR ХТА WS+1 ATI 2 ASN 1024+32 ATI 3 2 UТМ 1 2 JMNE ERROR 3 UТМ 1 3 JMNE ERROR ХТА =HFFFF FFFF 0000 0001 АТХ WS АТХ WS+1 АТХ WS+2 13 JМР ; ; ДУРИКОМ ПОЛУЧИЛСЯ ЭКСТРАКОД ; И ПЕРЕСКОЧИЛИ В РЕЗЕРВНУЮ ГРУППУ. ; СРОЧНО ВЕРТАЕМСЯ НАЗАД !!! ; EXTR:UТА *+3 WMOD @3В ; НОВЫЙ СЧАС IТА 13 ; А ЭТО - СТАРЫЙ RЕТ ; ВЕРНУЛИСЬ ВОТ СЮДА :АТХ :АТХ :ATI 3 2 VТМ 4 VТМ @41 UТА АТХ ER6 JМР РУГАНЬ ; END *CALL DISPLOAD *CALL DISSND:BLOAD *END F