Ýòà ôóíêöèÿ ðàçáëîêèðóåò áëîê
; > 0L - áëîê çàáëîêèðîâàí, ôóíêöèÿ
; âîçâðàùàåò ôèçè÷åñêèé àäðåñ áëîêà
; ïàìÿòè.
;
;**
_XMM_LockExtended proc near
c_begin
mov ah, 0Ch
mov dx, [bp+4]
call [XMM_Control]
xchg ax, bx
dec bx
jz XMML_Success
mov dh, al
XMML_Success:
c_end
_XMM_LockExtended endp
;**
;.Name _XMM_UnLockExtended
;.Title Ðàçáëîêèðîâàòü áëîê ðàñøèðåííîé ïàìÿòè
;
;.Descr Ýòà ôóíêöèÿ ðàçáëîêèðóåò áëîê ðàñøèðåííîé
; ïàìÿòè.
;
;.Proto long XMM_UnLockExtended(unsigned handle);
;
;.Params handle - èíäåêñ áëîêà ïàìÿòè;
;
;.Return < 0 - áëîê íå ðàçáëîêèðîâàí,
; êîä îøèáêè íàõîäèòñÿ â ñòàðøåì áàéòå.
; 0L - áëîê ðàçáëîêèðîâàí.
;
;**
_XMM_UnLockExtended proc near
c_begin
mov ah, 0Dh
mov dx, [bp+4]
call [XMM_Control]
xor dx, dx
dec ax
jz @successC
mov dh, bl
@successC:
c_end
_XMM_UnLockExtended endp
;**
;.Name _XMM_GetHandleLength
;.Title Ïîëó÷èòü äëèíó áëîêà ðàñøèðåííîé ïàìÿòè
;
;.Descr Ýòà ôóíêöèÿ âîçâðàùàåò äëèíó áëîêà
; ðàñøèðåííîé ïàìÿòè ïî åãî èíäåêñó.
;
;.Proto long XMM_GetHandleLength(unsigned handle);
;
;.Params handle - èíäåêñ áëîêà ïàìÿòè;
;
;.Return < 0 - ïðîèçîøëà îøèáêà,
; êîä îøèáêè íàõîäèòñÿ â ñòàðøåì áàéòå.
; > 0L - äëèíà áëîêà â êèëîáàéòàõ.
;
;**
_XMM_GetHandleLength proc near
c_begin
mov ah, 0Eh
mov dx, [bp+4]
call [XMM_Control]
or ax, ax
mov ax, dx
mov dx, 0
jnz @successD
mov dh, bl
@successD:
c_end
_XMM_GetHandleLength endp
Ñîäåðæàíèå Íàçàä Âïåðåä