Metropoli BBS
VIEWER: dscget.asm MODE: TEXT (ASCII)
.386p
locals

public  DSC_GETBASE, DSC_GETLIMIT, DSC_GETACCESS

_TEXT           segment byte public use32 'CODE'
assume  cs:_TEXT

DSC_GETBASE:
        xor eax,eax
        jmp short get

DSC_GETLIMIT:
        mov eax,10000h
        jmp short get

DSC_GETACCESS:
        mov eax,20000h

get:
        push ebx

        mov bx,[esp+4+4+4]
        mov ax,6
        int 31h
        jc short @@00

        cmp eax,10006h
        mov eax,[esp+4+4]
        jb short @@04
        ja short @@05

        lsl ecx,ebx
        jnz short @@02
        mov [eax],ecx

        jmp short @@03

@@05:
        lar ecx,ebx
        jnz short @@02
        shr ecx,8
        mov [eax],cx

        jmp short @@03

@@04:
        mov [eax],dx
        mov [eax+2],cx

@@03:
        xor eax,eax
        jmp short @@01

@@02:
        mov ax,-32734

@@00:
        movsx eax,ax
        cmp ah,80h
        je short @@01
        mov eax,-32768

@@01:
        pop ebx
        ret 8

_TEXT           ends
end

[ RETURN TO DIRECTORY ]