Metropoli BBS
VIEWER: vputs.asm MODE: TEXT (ASCII)
;        NAME    vputs
; Function:     Call IBM ROM BIOS to display a string in graphics mode
; Caller:       C:
;               int putstty(const char *s, unsigned char color);
ARGS            equ     dword ptr [bp+06]
ARGC            equ     byte ptr [bp+0ah]
;
VPUTS_TEXT       SEGMENT byte public 'CODE'
                public _putstty
                ASSUME  cs:VPUTS_TEXT
;
_putstty        PROC    far
                push    bp
                mov     bp,sp
                push    es
                pushf
                cld
                les     si,ARGS
                mov     al,ARGC
                mov     bl,al
                mov     ah,0eh

    @again:     ;     
                lodsb               ; mov  al,es:[si]
                cmp     al,0    
                jz      @out
                int     10h
                jmp     @again

    @out:       xor     ah,ah
                dec     si
                lodsb
                popf
                pop     es
                pop     bp
                ret
_putstty        endp
;
VPUTS_TEXT      ENDS
                END
[ RETURN TO DIRECTORY ]