include qlib.inc include string.inc .code ;returns: ; successful: eax - environment string after the = sign ; on error : eax=NULL getenv proc uses ecx esi edi,nam:dword local siz:word callp strlen,nam mov siz,ax mov edi,_environ @@top: cmp byte ptr [edi],0 jz @@bad mov cx,siz mov esi,nam @@: cmp byte ptr [edi],'=' jz @f cmpsb jnz @f dec cx jnz @b jmp @@gotit @@: ;not the one dec edi @@: inc edi cmp byte ptr [edi],0 jnz @b inc edi jmp @@top @@gotit: inc edi ;skip the = mov eax,edi ;FIXED Ver1.1 !!! ret @@bad: mov eax,NULL ;FIXED v2.00 Beta #2 ret getenv endp end