80×86 Architecture: Watcom Runtime

Assembler code

cseg01:1044
cseg01:1044 ; =============== S U B R O U T I N E =======================================
cseg01:1044
cseg01:1044 ; Attributes: library function
cseg01:1044
cseg01:1044 __MemFree       proc far                ; CODE XREF: _ffree_+1A↓p
cseg01:1044                                         ; _nfree_+31↓p ...
cseg01:1044
cseg01:1044 ; FUNCTION CHUNK AT cseg01:1041 SIZE 00000003 BYTES
cseg01:1044
cseg01:1044                 push    si
cseg01:1045                 push    di
cseg01:1046                 push    cx
cseg01:1047                 push    ds
cseg01:1048                 mov     ds, dx
cseg01:104A                 or      ax, ax
cseg01:104C                 jz      short loc_1041
cseg01:104E                 mov     si, ax
cseg01:1050                 sub     si, 2
cseg01:1053                 mov     ax, [si]
cseg01:1055                 test    al, 1
cseg01:1057                 jz      short loc_1041
cseg01:1059                 and     al, 0FEh
cseg01:105B                 mov     di, si
cseg01:105D                 add     di, ax
cseg01:105F                 test    word ptr [di], 1
cseg01:1063                 jnz     short loc_1084
cseg01:1065                 cmp     di, [bx+6]
cseg01:1068                 jnz     short loc_106D
cseg01:106A                 mov     [bx+6], si
cseg01:106D
cseg01:106D loc_106D:                               ; CODE XREF: __MemFree+24↑j
cseg01:106D                 add     ax, [di]
cseg01:106F                 mov     [si], ax
cseg01:1071                 push    bx

Last updated