ВУЗ:
Составители:
130
int 21h
mov ah,34h ; Запись указателя на флаг критической секции DOS
int 21h
mov word ptr _crit,bx
mov word ptr _crit[2],es
; Определение адреса видеобуфера
mov ah,0fh ; Функция получения видеорежима
int 10h
cmp al,7
jz ini1
mov vbuf,0b800h
ini1: lea dx,msg2
mov ah,9
int 21h
; Завершение программы с оставлением резидентной части в памяти
mov dx,(ressize+10fh)/16
mov ax,3100h
int 21h
init endp
set_int proc near
mov ax,3505h
int 21h ; ES – сегментный адрес PSP резидента
mov adr_psp,es
; Восстановление старого вектора 2Fh
push ds
mov dx,es:old_int2F_off
mov ax,es:old_int2F_seg
mov ds,ax
mov ax,252fh ; Установка старого вектора 2Fh
int 21h
mov dx,es:old_int8_off
mov ax,es:old_int8_seg
mov ds,ax
mov ax,251ch ; Установка старого вектора 8
int 21h
mov dx,es:old_int5_off
mov ax,es:old_int5_seg
mov ds,ax
mov ax,2505h ; Установка старого вектора 5
int 21h
pop ds
mov ah,9
lea dx,msg1
int 21h
mov es,adr_psp
mov ah,49h ; Освобождение памяти
130 int 21h mov ah,34h ; Запись указателя на флаг критической секции DOS int 21h mov word ptr _crit,bx mov word ptr _crit[2],es ; Определение адреса видеобуфера mov ah,0fh ; Функция получения видеорежима int 10h cmp al,7 jz ini1 mov vbuf,0b800h ini1: lea dx,msg2 mov ah,9 int 21h ; Завершение программы с оставлением резидентной части в памяти mov dx,(ressize+10fh)/16 mov ax,3100h int 21h init endp set_int proc near mov ax,3505h int 21h ; ES – сегментный адрес PSP резидента mov adr_psp,es ; Восстановление старого вектора 2Fh push ds mov dx,es:old_int2F_off mov ax,es:old_int2F_seg mov ds,ax mov ax,252fh ; Установка старого вектора 2Fh int 21h mov dx,es:old_int8_off mov ax,es:old_int8_seg mov ds,ax mov ax,251ch ; Установка старого вектора 8 int 21h mov dx,es:old_int5_off mov ax,es:old_int5_seg mov ds,ax mov ax,2505h ; Установка старого вектора 5 int 21h pop ds mov ah,9 lea dx,msg1 int 21h mov es,adr_psp mov ah,49h ; Освобождение памяти
Страницы
- « первая
- ‹ предыдущая
- …
- 128
- 129
- 130
- 131
- 132
- …
- следующая ›
- последняя »