Завершение доступа пакетов данного типа release_type
int release_type(handle) AH == 3;
код запроса int handle;
BX ; указатель определяет тип пакетов
_release_type proc near
push bp | ; спасение регистров | |||
push ds | ||||
push es | ||||
mov ah, 3 | ; задаем код запроса | |||
mov bx, _param.handle | ; заносим указатель | |||
pushf | ||||
cli | ||||
call _param.handler | ; обращение к драйверу | |||
mov _param.er_CODE, dx | ; занесение кода ошибки | |||
pop es | ; восстановление регистров | |||
pop ds | ||||
pop bp | ||||
ret | ||||
_release_type | endp |
В случае ошибки флаг carry=1, а в регистр DH заносится код ошибки. Возможная ошибка: BAD_HANDLE (не верный указатель). При успешном выполнении запроса флаг carry=0. Эта операция прерывает доступ пакетов, соответствующих указателю, полученному с помощью запроса access_type. Старый указатель после выполнения этого запроса не действителен.