[an error occurred while processing this directive]
*---------------------------------------* * СТАНДАРТНЫЙ МОДУЛЬ УСТАНОВКИ ДРАЙВЕРА * * версия 05.08.94. * *---------------------------------------* SETDR JSR IOSAVE сохранить регистры LDX #¤4C установить код JMP STX VEKTDRV в ¤3F5 LDX BEGDRIVE+1 начало обработки LDY BEGDRIVE DO ATRIBDR&:00100000 TXA JSR CONTRIN да, установиться в системе ELSE JSR CONTRIN1 активизироваться FIN DO ATRIBDR&:01000000 JSR SETINIT JMP SETDR2 SETINIT JMP (INITDR) FIN DO ATRIBDR&:00001000 SETDR2 JSR OUTHELP есть, вывести ее FIN JMP IOREST восстановить вектора и выйти *------------------------------------------* * Установка драйвера в систему "Диспетчер" * *------------------------------------------* ; установить драйвер в систему и активизировать ; на входе A,Y - адрес обработчика драйвера DO ATRIBDR&:00100000 CONTRIN TAX JSR CONTCK BCS CONTRIN1 TXA JSR INSET BCC CONTRIN2 LDY ALIN+1 INY BEQ CONDIAL LDY PROMPT CPY #¤5D BEQ CONDIAL JMP SYSERR CONDIAL LDX#0 LDA CONERR,X PHA ORA#¤80 JSR COUT INX PLA BPL CONDIAL+2 JMP (PWARM) CONTRIN2 RTS CONERR DFB ¤0D,¤1D,¤07,¤0D,¤1D ASC "ошибка" DFB ¤20 ASC "установки" DFB ¤0D,¤1D,¤8D FIN CONTRIN1 TXA STA VEKTDRV+2 STY VEKTDRV+1 RTS ; проверить наличие диспетчера в системе ; (по точкам входа) DO ATRIBDR&:00100000 CONTCK STA ¤C083 STA ¤C177 LDA INSET EOR INEXIT CLC ADC INWORK CMP #CONTROLL BNE CONTCK1 CLC есть диспетчер DFB @44 CONTCK1 SEC его нет RTS FIN *---------------------------* * ВЫВЕСТИ ЗАСТАВКУ ДРАЙВЕРА * *---------------------------* ; адрес заставки должен лежать в 3-4 атрибутах ; драйвера ; заставка не длиннее 255 байт, последний байт 0 DO ATRIBDR&:00001000 OUTHELP LDX ALIN+1 INX BEQ OUTHELP0 LDX PROMPT CPX #'} BNE OUTHELP3 OUTHELP0 LDA #¤8D JSR COUT1 LDA TEXTHELP+1 LDY TEXTHELP STA OUTHELP1+2 STY OUTHELP1+1 LDX #0 OUTHELP1 LDA ¤1000,X BEQ OUTHELP3 CMP #¤8D BEQ OUTHELP2 JSR ¤FC0E INX BNE OUTHELP1 OUTHELP3 RTS OUTHELP2 JSR COUT1 INX BNE OUTHELP1 FIN
.ст Раздел I:Приложение 3
[an error occurred while processing this directive]