-   
- ; LAST UPDATE: 04.10.2022 savelij 
-   
-                 TITLE "call_trdos.a80" 
-   
-  INIT_VAR 1 
-  SETVAR ERR_NO_TRDOS_DISK 
-  SETVAR ERR_DISK_ERROR 
-  SETVAR ERR_NO_DISK 
-  SETVAR ERR_DISK_READ_ONLY 
-   
-   
- SEL_FILES_WIN   LD HL,ERS_FLAGS 
-                 BIT B_VIEW_IMG,(HL) 
-                 JP Z,RESTART 
-                 JP FILES_BROWSE 
-   
- VIEW_IMAGE      DI 
-                 LD BC,ADR_CAT_FAT 
-                 LD L,(IX+_TEK_PKT_L) 
-                 LD H,(IX+_TEK_PKT_H) 
-                 ADD HL,HL 
-                 ADD HL,BC 
-                 LD C,(HL) 
-                 INC HL 
-                 LD B,(HL)                       ; получили текущий выбранный номер 
-                 LD A,6 
-         RST8 _COM_FAT,_POS_FILES                ; установка внутреннего указателя FAT драйвера 
-                 LD HL,BUF_FILEITEM 
-         RST8 _COM_FAT,_READ_DIR                 ; получили описатель по установленному номеру 
-                 LD DE,0x0B 
-                 ADD HL,DE 
-                 LD A,(HL) 
-                 SBC HL,DE 
-                 AND 0x10 
-                 JP NZ,_RULILKA                  ; попытка просмотра директории 
-                 PUSH HL 
-                 CALL REST_COLCURS               ; стирание цветного курсора 
-                 CALL REST2X2                    ; восстановление экрана под курсором мыши 
-                 POP HL 
-                 CALL CPETR3                     ; проверка расширения 
-                 JP Z,_RULILKA                   ;попытка просмотра не поддерживаемого расширения (SCL, TRD ONLY) 
-   
-                 LD (TYPE_FILE),A 
-                 PUSH AF 
-         RST8 _COM_FAT,_OPEN_FILE 
-                 POP AF 
-                 DEC A 
-                 LD HL,ADR_CAT                   ; TYPE_FILE = 1 - TRD 
-                 JR Z,VIEWIMG1 
-                 LD HL,ADR_CAT+0x200             ; TYPE_FILE = 2 - SCL 
- VIEWIMG1        PUSH AF 
-                 LD A,5 
-         RST8 _COM_FAT,_READ_FILE 
-                 POP AF 
-                 JR Z,VIEWIMG3 
-                 LD DE,ADR_CAT 
-                 LD HL,ADR_CAT+0x200+8 
-                 LD A,(HL) 
-                 PUSH AF 
-                 INC HL 
- VIEWIMG2        LD BC,0x0E 
-                 LDIR 
-                 INC DE 
-                 INC DE 
-                 DEC A 
-                 JR NZ,VIEWIMG2 
-                 LD HL,ADR_CAT+0x0A00 
-                 SCF 
-                 SBC HL,DE 
-                 LD B,H 
-                 LD C,L 
-                 LD H,D 
-                 LD L,E 
-                 INC DE 
-                 LD (HL),0 
-                 LDIR 
-                 LD HL,DSKINFO 
-                 LD DE,ADR_CAT+0x8E1 
-                 LD BC,DSK_END-DSKINFO 
-                 LDIR 
-                 POP AF 
-                 LD (ADR_CAT+0x8E4),A 
- VIEWIMG3        LD HL,ERS_FLAGS 
-                 RES B_RUN_FAT,(HL)              ; вывод окна для TR-DOS 
-                 SET B_VIEW_IMG,(HL)             ; просмотр образа TR-DOS 
-   
-                 JP VIEW_ALL 
-   
- GLUBOOT         LD HL,ERS_FLAGS 
-                 RES B_RUN_FAT,(HL)              ; запуск с дискеты 
-                 RES B_VIEW_IMG,(HL)             ; работа с реальным каталогом TR-DOS 
-                 LD A,(DRV_SYM) 
-                 LD C,1 
-                 CALL FTR_DOS 
-                 LD HL,ADR_CAT 
-                 LD DE,8 
-                 LD BC,0x0105 
-                 CALL FTR_DOS;TO_DOS4BAS                 ;загрузили 9 сектор 
-                 LD A,(ADR_CAT+0xE7) 
-                 CP 0x10                         ; проверка на признак TR_DOS 
-                 JP NZ,CMP_VIRTUAL               ; ошибка, диск не TR-DOS 
-                 LD HL,ADR_CAT 
-                 LD DE,0 
-                 LD BC,0x0905 
-                 CALL FTR_DOS;TO_DOS4BAS                 ;загрузка TR-DOS диры 
-                 LD A,(ADR_CAT+0x8E7) 
-                 CP 0x10                         ; проверка на признак TR_DOS 
-                 JP NZ,_STUPID 
- VIEW_ALL        LD IX,ADR_CAT 
-                 LD DE,0x10 
-                 LD A,(ADR_CAT+0x8E4) 
-                 AND A 
-                 JP Z,NO_BAS 
-                 LD B,A                          ; сколько файлов надо просмотреть 
-                 LD C,0                          ; обнуление счетчика найденного 
-                 EXX 
-                 PUSH IX 
-                 POP DE 
-                 EXX 
- FIND_BASIC      LD A,(IX+8) 
-                 CP "B"                          ; ищем только басик файлы 
-                 JR NZ,FINDBAS1 
-                 LD A,(IX+0) 
-                 DEC A                           ; проверка на удаленный файл 
-                 JR Z,FINDBAS1 
-                 EXX 
-                 PUSH IX 
-                 POP HL                          ; откуда переносить описатель 
-                 LD BC,0x10 
-                 LDIR 
-                 EXX 
-                 INC C 
- FINDBAS1        ADD IX,DE 
-                 DJNZ FIND_BASIC 
-                 LD IX,WIN_FILES                 ; окно для вывода басик файлов 
- OUT_HOB         LD (IX+_NUM_PKT),0 
-                 LD (IX+_NUM_KOL_L),C 
-                 LD (IX+_NUM_KOL_H),B            ; полное количество найденного 
-                 LD (IX+_TEK_PKT_L),0 
-                 LD (IX+_TEK_PKT_H),0            ; обнуляем позицию файлов и курсора 
- REOUT_HOB       LD A,B 
-                 OR C                            ; проверка количества найденного 
-                 JP Z,NO_BAS                     ; если 0, то нет басиков 
-                 LD HL,ERS_FLAGS 
-                 RES 2,(IY+55)                   ; предположительно файлов менее высоты окна 
-                 LD A,B 
-                 AND A 
-                 LD A,V_FILE-2 
-                 JR NZ,FINDBAS2                  ; если более 256 файлов, то полная высота окна 
-                 LD A,C 
-                 CP V_FILE-1 
-                 JR C,FINDBAS2 
-                 SET 2,(IY+55)                   ; файлов больше высоты окна 
-                 LD A,V_FILE-2 
- FINDBAS2        LD C,A 
-                 ADD A,2 
-                 LD (IX+_V_SIZE),A               ; установка вычисленной высоты окна 
-                 LD (IX+_H_SIZE),H_FILE          ; установка ширины окна 
- FINDBAS6        BIT B_RUN_FAT,(HL) 
-                 JR Z,FINDBAS5                   ; если работа с TR-DOS, то переходим на вывод окна 
-                 LD A,C 
-                 CP FH_FILE-1 
-                 JR C,FINDBAS9 
-                 LD C,FH_FILE-2 
- FINDBAS9        LD A,C 
-                 LD (KOL4OUT),A 
-                 LD (IX+_V_SIZE),FH_FILE 
-                 LD (IX+_H_SIZE),FV_FILE 
-         RST8 _WINW 
-                 JR FINDBAS7 
-   
- FINDBAS5        LD A,(ERS_FLAGS) 
-                 AND M_RUN_FAT 
-                 JR NZ,FINDBAS8 
-                 LD (IX+_H_SIZE),H_FILE-4 
- FINDBAS8 
-         RST8 _WINW 
- FINDBAS7        CALL OUT_TEK_DIR                ; выводим кусочек директории 
-                 JP _RULILKA 
-   
- ; вывод части директории с указанной позиции 
- OUT_TEK_DIR     LD L,(IX+_TEK_PKT_L)            ; вывод диры TR-DOS диска 
-                 LD H,(IX+_TEK_PKT_H)            ; получили номер текущей позиции 
-                 LD E,(IX+_NUM_PKT)              ; получили позицию курсора в окне 
-                 XOR A 
-                 LD D,A 
-                 SBC HL,DE                       ; вычислили позицию файла с которого будем выводить 
-                 ADD HL,HL 
-                 LD A,(ERS_FLAGS) 
-                 AND M_RUN_FAT 
-                 JR NZ,OUT_TEK_FAT               ; переход если для FAT 
- ; вывод для TR-DOS файлов 
-                 LD DE,ADR_CAT 
-                 ADD HL,HL 
-                 ADD HL,HL 
-                 ADD HL,HL                       ; умножили на размер описателя 
-                 ADD HL,DE                       ; вычислили адрес описателя с которого будем выводить 
-                 LD C,(IX+_V_SIZE) 
-                 DEC C 
-                 DEC C                           ; вычислили сколько выводить 
-                 LD D,(IX+_X_COORD) 
-                 LD E,(IX+_Y_COORD) 
-                 INC D 
-                 INC D 
-                 INC E                           ; вычислили позицию вывода на экран 
- FINDBAS3        LD B,8                          ; печатаем только имя 
-                 PUSH DE 
- FINDBAS4        LD A,(HL) 
-                 INC HL 
-                 CALL PRT_SYM 
-                 DJNZ FINDBAS4 
-                 LD DE,8                         ; 8 символов напечатали, остальные 8 пропускаем 
-                 ADD HL,DE 
-                 POP DE 
-                 INC E 
-                 DEC C 
-                 JR NZ,FINDBAS3                  ; если не кончились переходим на печать следующего имени 
-                 RET 
-   
- ; вывод диры на FAT 
- OUT_TEK_FAT     LD DE,ADR_CAT_FAT 
-                 ADD HL,DE 
-                 LD D,(IX+_X_COORD) 
-                 LD E,(IX+_Y_COORD) 
-                 INC D 
-                 INC E                           ; вычислили позицию вывода на экран 
-                 LD C,0 
- KOL4OUT         EQU $-1 
- OTF2            PUSH BC 
-                 LD C,(HL) 
-                 INC HL 
-                 LD B,(HL) 
-                 INC HL 
-                 PUSH HL 
-                 PUSH DE 
-                 LD A,6 
-         RST8 _COM_FAT,_POS_FILES 
-                 LD HL,BUF_FILEITEM 
-         RST8 _COM_FAT,_READ_DIR 
-                 POP DE 
-                 PUSH DE 
-                 LD BC,0x0B 
-                 ADD HL,BC 
-                 LD A,(HL) 
-                 SBC HL,BC 
-                 AND 0x10 
-                 LD A,0                          ; символ папки 
-                 JR NZ,OTF4 
-                 LD A,1                          ; символ файла 
- OTF4            CALL PRTSPECSYM 
-                 LD HL,OUT_NAME_FILET 
-         RST8 _COM_FAT,_GET_LONGNAME 
-                 LD (LONG_NAME),A 
-                 CALL FILENAME8_3 
-                 POP DE 
-                 POP HL 
-                 POP BC 
-                 INC E 
-                 DEC C 
-                 JR NZ,OTF2 
-                 RET 
-   
- FILENAME8_3     LD A,(ERS_FLAGS) 
-                 AND M_RUN_FAT 
-                 JR NZ,OTF5 
-                 LD B,8 
- OTF1            LD A,(HL) 
-                 INC HL 
-                 CALL PRT_SYM 
-                 DJNZ OTF1 
-                 RET 
-   
- OTF5            EX DE,HL 
-                 LD A,H 
-                 ADD A,A 
-                 ADD A,A 
-                 ADD A,A 
-                 LD H,A 
-                 INC H 
-                 LD (OUT_NAME_FILE+1),HL 
-                 LD HL,OUT_NAME_FILET 
-                 LD BC,0 
- LONG_NAME       EQU $-2 
-                 LD A,FV_FILE6 
-                 CP C 
-                 JR Z,OTF7 
-                 JR NC,OTF6 
-                 EX DE,HL 
-                 LD HL,FV_FILE6 
-                 ADD HL,DE 
-                 LD (HL),">" 
-                 INC HL 
-                 LD (HL),0 
-                 JR OTF7 
-   
- OTF6            SUB C 
-                 ADD HL,BC 
-                 LD C,A 
-                 LD D,H 
-                 LD E,L 
-                 INC DE 
-                 LD (HL)," " 
-                 LDIR 
-                 XOR A 
-                 LD (DE),A 
- OTF7            LD HL,OUT_NAME_FILE 
-         RST8 _PRINT_MESSAGE 
-                 RET 
-   
- NO_BAS          LD HL,ERS_FLAGS 
-                 BIT B_VIEW_IMG,(HL) 
-                 JP NZ,FILES_BROWSE 
-                 LD IX,NOBASIC 
-         RST8 _WINW 
-                 JP _RULILKA 
-   
- RUNFILE         DI 
-                 CALL SHUT2AY                    ; бумкалка в AY 
-                 LD HL,ERS_FLAGS 
-                 BIT B_VIEW_IMG,(HL) 
-                 JR Z,RUNFILE2 
-                 LD IX,FAT_FILES 
-                 LD HL,ERS_FLAGS 
-                 SET B_VIEW_IMG,(HL) 
-                 JP RUN_HOB                      ; переход на загрузку и запуск из SCL образа 
-   
- RUNFILE2        LD L,(IX+_TEK_PKT_L) 
-                 LD H,(IX+_TEK_PKT_H)            ; номер выбранного файла 
-                 LD DE,ADR_CAT 
-                 ADD HL,HL 
-                 ADD HL,HL 
-                 ADD HL,HL 
-                 ADD HL,HL 
-                 ADD HL,DE                       ; откуда имя файла взять 
- RUNFILE1        LD DE,RUNNAM 
-                 LD BC,8 
-                 LDIR 
-                 LD HL,0x3E08+0xA7 
-                 LD DE,0xFFFF 
-                 LD C,0xA8                       ; 21 символ UDG 
-                 LDDR 
-                 LD HL,RUN_BASIC 
-                 LD DE,0x5D3B 
-                 LD BC,ERUN_BASIC-RUN_BASIC 
-                 LDIR                            ; перенос бейсик проги для запуска 
-                 CALL MEMSET                     ; выставили режим компа 
-                 CALL FOR_RUN 
-                 EI 
-                 LD BC,0xFF56 
-                 CALL 0x1EB7 
-                 LD HL,0x1B7D                    ; запуск перенесенной бейсик проги 
-                 PUSH HL 
-                 LD HL,0x6000 
-                 LD DE,0x6001 
-                 LD BC,0xFF00-0x6000 
-                 LD (HL),0 
-                 JP 0x33C3 
-   
- FOR_RUN         SET 3,(IY+1) 
-                 LD IY,ERR_NR 
-                 LD (IY),0xFF 
-                 SET 7,(IY+1) 
-                 RES 4,(IY+1) 
-                 LD HL,0x2758 
-                 EXX 
-                 LD A,0xC9 
-                 LD (TRD_5CC2),A 
-                 LD HL,0 
-                 LD (NEWPPC),HL 
-                 XOR A 
-                 LD (NSPPS),A 
-                 RET 
-   
- ; круговой перебор имени дисковода 1-4 (A-D) 
- NEXTDRIVE       LD A,(TXT_DRIVE)                ; взяли букву текущего дисковода 
-                 INC A                           ; +1, то есть выбрали следующий по порядку 
-                 SUB 0x10                        ; превратили в номер 
-                 CP "5"                          ; если превысили 4 
-                 JR C,SELDRV1 
-                 SUB 4                           ; то изменили на номер первый 
-                 JR SELDRV1 
-   
- NEXTVIRT        LD HL,MAINLOP 
-                 PUSH HL 
-                 LD A,(ERS_FLAGS) 
-                 AND M_CLOCK_ON 
-                 RET Z 
-                 LD H,VIRT_REAL_DRIVE 
-                 CALL READCMOS 
-                 AND 3                           ; A = сдвинутый номер виртуального дисковода 
-                 INC A 
-                 CP 4 
-                 JR C,NEXTVIRT1 
-                 XOR A 
- NEXTVIRT1       LD D,A                          ; сохранили виртуальный дисковод 
-                 LD A,L 
-                 AND %11111100                   ; A = сбросили старый номер виртуального дисковода 
-                 OR D                            ; добавили новый номер виртуального дисковода 
-                 LD L,A 
-                 CALL WRITECMOS                  ; сохранили номер реального и виртуального дисковода 
- ;       RST8 _MOUNTER,_MOUNT_RAMDISK            ; монтирование рамдиска 
-                 CALL REST2X2 
-                 CALL PRT_VIRTDRV 
-                 LD A,(ERS_FLAGS) 
-                 AND M_MOUSE_ON 
-                 RET Z 
-                 JP DRAW_MOUSE 
-   
- ; изменение номера дисковода и сохранение в кмосе если таковой обнаружен 
- SELDRV          LD A,(LAST_K)                   ; взяли номер дисковода 
- SELDRV1         SUB "1"                         ; обратили в бинарный вид для записи в переменную 
-                 LD HL,MAINLOP                   ; адрес куда вернуться после записи 
-                 PUSH HL 
- SELDRVPP        LD (DRV_SYM),A                  ; сохранили новый номер реального дисковода 
-                 RLCA 
-                 RLCA 
-                 LD D,A                          ; сдвинутый номер виртуального дисковода 
-                 LD A,(ERS_FLAGS) 
-                 AND M_CLOCK_ON 
-                 RET Z                           ; если кмос не найден, выходим 
-                 LD H,VIRT_REAL_DRIVE 
-                 CALL READCMOS 
-                 AND %11110011                   ; сбросили старый номер реального дисковода 
-                 OR D                            ; добавили новый номер реального дисковода 
-                 LD L,A 
-                 CALL WRITECMOS                  ; сохраняем в кмосе 
-                 CALL SET_DRIVE                  ; установка изменения 
-                 CALL REST2X2                    ; восстановили под курсором мыши 
-                 CALL PRT_DRV_SYM                ; перепечатали строку о дисководах 
-                 LD A,(ERS_FLAGS) 
-                 AND M_MOUSE_ON 
-                 RET Z 
-                 JP DRAW_MOUSE                   ; нарисовали мышь на старом месте 
-   
- ; FIX mouse key if no mouse 
- ONERNCLS        LD A,(ERS_FLAGS) 
-                 AND M_MOUSE_ON 
-                 JR Z,ONERNC1 
-                 LD A,0xFA 
-                 IN A,(0xDF) 
-                 RRA 
-                 JP NC,_STUPID 
- ONERNC1         POP AF 
-                 EX (SP),HL 
-                 RET 
-   
- SET_DOS_PAGE    PUSH HL 
- DOSIX           PUSH IX 
-                 JP TO_DOS 
-   
- ; проверка наличия маркера рамдиска, при отсуствии создание диска на 640КБ 
- DISK_NONE 
-         PEC_ON M_SHADOW_BF 
-                 LD A,RAM_RAMDISK 
-                 LD BC,WIN_P1 
-                 OUT (C),A 
-                 LD HL,0x7FFF 
-                 LD A,(HL) 
-                 DEC H 
-                 CP "R" 
-                 JR NZ,DISK_NONE1 
-                 LD A,(HL) 
-                 CP "D" 
- DISK_NONE1      EX AF,AF' 
-                 LD A,ZXSTD_CPU1 
-                 OUT (C),A 
-         PEC_OFF M_SHADOW_BF 
-                 EX AF,AF' 
-                 LD HL,ERS_FLAGS 
-                 RES B_LOAD_IMG,(HL) 
-                 JP NZ,CREATE_TRDRAM             ; маркер не обнаружен, создать 
-                 RET 
-   
- DIV10   LD D,0x30-1 
-         INC D 
-         SUB 0x0A 
-         JR NC,$-3 
-         ADD A,0x0A+0x30 
-         RET 
-   
- _RETRY  LD A,"R" 
-         JR $+4 
-   
- _IGNORE LD A,"I" 
-         LD HL,0x3F7E 
-         EX (SP),HL 
-         DI 
-         JP TO_DOS 
-   
- ; вызов вместо 0x3D13 
- FTR_DOS ;jp 0x3D13 
-                 PUSH HL 
-                 LD HL,(ERR_SP) 
-                 LD (DOSVARS.TMP_ERR_SP),HL 
-                 LD HL,DSK_ERR_CAPTURE 
-                 LD (TRD_5CC3),HL 
-                 LD HL,DERROR 
-                 EX (SP),HL 
-                 LD (ERR_SP),SP 
-                 EX AF,AF' 
-                 LD A,0xC3 
-                 LD (TRD_5CC2),A 
-                 XOR A 
-                 LD (TRD_5D0F),A 
-                 LD (TRD_5D10),A 
-                 LD (DOSVARS.DSKERR),A 
-                 LD (DOSVARS.COPY_1F),A 
-                 DEC A 
-                 LD (ERR_NR),A 
-                 LD A,(TRD_5D19) 
-                 LD (TRD_5CF6),A 
-                 EX AF,AF' 
-                 JP 0x3D13 
-   
- ; возврат из 0x3D13 и проверка на ошибку 
- DERROR          DI 
-                 LD HL,(DOSVARS.TMP_ERR_SP) 
-                 LD (ERR_SP),HL 
-                 LD A,(TRD_5D16) 
-                 AND 3 
-                 LD (TRD_5D19),A 
-                 LD HL,TRD_5CC2 
-                 LD (HL),0xC9 
-                 LD HL,(DOSVARS.COPY_1F) 
-                 LD A,(TRD_5D0F) 
-                 LD H,A 
-                 LD A,L 
-                 AND A 
-                 JR NZ,.L1 
-                 LD A,H 
-                 AND A 
-                 RET Z                           ; ошибок нет 
- .L1             LD A,H 
-                 LD C,ERR_NO_DISK 
-                 CP 6                            ; нет диска 
-                 JR Z,.L2 
-                 LD C,ERR_DISK_READ_ONLY 
-                 LD A,0x40 
-                 AND L 
-                 JR NZ,.L2 
-                 LD A,(TRD_5CF4) 
-                 CP 8 
-                 JR NZ,.L2 
-                 LD C,ERR_DISK_ERROR             ; ошибка диска 
- .L2             LD A,C 
-                 LD (DOSVARS.DSKERR),A 
-                 CP ERR_DISK_ERROR 
-                 PUSH AF 
-                 CALL Z,STOPDSK 
-                 POP AF 
-                 LD IX,(DOSVARS.CURR_IX) 
-                 LD A,H 
-                 CP 6 
-                 RET NZ 
-                 JP _STUPID                      ; диска нет 
-   
- ; остановка дискеты 
- STOPDSK         LD A,(TRD_5D16) 
-                 PUSH AF 
-                 XOR 3 
-                 CALL .L1 
-                 POP AF 
- .L1             LD HL,0x02B9 
-                 PUSH HL 
-                 JP 0x3D2F 
-   
- ; перехват адреса 0x5CC2 
- DSK_ERR_CAPTURE 
-                 DI 
-                 POP DE 
-                 LD HL,0x0D6B 
-                 AND A 
-                 SBC HL,DE 
-                 JR NZ,.L1 
-                 LD A,B 
-                 LD (DOSVARS.COPY_1F),A 
-                 RET 
-   
- .L1             LD HL,0x10 
-                 AND A 
-                 SBC HL,DE 
-                 RET Z 
-                 LD HL,0x1A1B 
-                 AND A 
-                 SBC HL,DE 
-                 RET Z 
-                 AND A 
-                 LD HL,0x028E 
-                 SBC HL,DE 
-                 SCF 
-                 RET Z 
-                 LD HL,0x031E 
-                 AND A 
-                 SBC HL,DE 
-                 SCF 
-                 RET Z 
-                 LD HL,0x1F54 
-                 AND A 
-                 SBC HL,DE 
-                 SCF 
-                 RET Z 
-                 LD HL,0x0333 
-                 AND A 
-                 SBC HL,DE 
-                 JR Z,RAI 
-                 PUSH DE 
-                 LD HL,(TRD_5D02) 
-                 LD DE,(TRD_5D04) 
-                 RET 
-   
-         IF 0 
- ; перехват дисковой ошибки для обработки 
- ONERR           EX (SP),HL 
-                 PUSH AF 
-   
-                 PUSH DE 
-                 PUSH HL 
-                 LD DE,0x1303 
-                 AND A 
-                 SBC HL,DE 
-                 POP HL 
-                 POP DE 
-                 JR Z,ONERR1 
-                 PUSH DE 
-                 PUSH HL 
-                 LD DE,0x0D6B 
-                 AND A 
-                 SBC HL,DE 
-                 POP HL 
-                 POP DE 
-                 JR NZ,ONERNCLS 
- ;               LD A,H 
- ;               CP HIGH (0x0D6B) 
- ;               JR NZ,ONERNCLS 
- ;               LD A,L 
- ;               CP LOW (0x0D6B) 
- ;               JR NZ,ONERNCLS 
-   
- ONERR1          POP HL 
-                 POP HL 
-                 POP HL 
-                 POP HL 
-                 POP HL 
-         ENDIF 
- RAI 
-                 EI 
-                 CALL GLUDIN 
-                 LD HL,TRD_5CF4 
-                 LD A,(HL)                       ; взяли номер сектора 
-                 INC A 
-                 CALL DIV10 
-                 LD (NUM_SEC_TXT+1),A 
-                 LD A,D 
-                 LD (NUM_SEC_TXT),A 
-                 INC HL 
-                 LD A,(HL)                       ; взяли номер трека 
-                 SRL A 
-                 LD E,A 
-                 ADC A,"0" 
-                 SUB E 
-                 LD (SIDE_DISK),A                ; сторона диска 
-                 LD A,E 
-                 CALL DIV10 
-                 LD (NUM_TRK_TXT+1),A 
-                 LD A,D 
-                 LD (NUM_TRK_TXT),A 
-                 LD IX,DSK_ERR                   ; окно выводим полностью 
-         RST8 _WINW 
-                 JP _RULILKA 
-   
- RESET_VG        LD C,0xFF 
-                 XOR A 
-                 LD IX,0x3FF0                    ; OUT (C),A 
-                 CALL DOSIX 
-                 LD A,(DRV_SYM) 
-                 OR 0x3C 
-                 LD HL,0x2A53 
-                 CALL SET_DOS_PAGE               ; установка DOS страницы 
-                 LD A,0x68                       ; шаг назад 
-                 LD C,0x1F 
-                 JP DOSIX 
- ;               LD HL,DSTUPID 
- ;               LD (ERR_SP),HL 
- ;               LD A,0xC3 
- ;               LD (TRD_5CC2),A 
- ;               LD HL,ONERR 
- ;               LD (TRD_5CC3),HL 
- ;               RET 
-