News:

MASM32 SDK Description, downloads and other helpful links
MASM32.com New Forum Link
masmforum WebSite

printf and std os redirection

Started by johnsa, February 02, 2012, 10:18:06 AM

Previous topic - Next topic

dedndave

updated and corrected code from post #13:
        .XCREF
        .NOLIST
        INCLUDE    \masm32\include\masm32rt.inc
        .LIST

;#################################################################################

IFNDEF _IONBF
_IONBF EQU 4
ENDIF

;*********************************************************************************

IFNDEF _iobuf
_iobuf    STRUCT
  _ptr      dd ?
  _cnt      dd ?
  _base     dd ?
  _flag     dd ?
  _file     dd ?
  _charbuf  dd ?
  _bufsiz   dd ?
  _tmpfname dd ?
_iobuf    ENDS
ENDIF

;*********************************************************************************

IFNDEF FILE
FILE TYPEDEF _iobuf
ENDIF

;#################################################################################

        .DATA

szDelim db 13,10,'%s setvbuf',13,10,0
szBefor db 'Before',0
szAfter db 'After',0

;*********************************************************************************

;        .DATA?

;#################################################################################

        .CODE

;*********************************************************************************

_main   PROC

        INVOKE  crt_printf,offset szDelim,offset szBefor

        CALL    crt___p__iob
        add     eax,sizeof FILE
        INVOKE  crt_setvbuf,eax,NULL,_IONBF,NULL

        INVOKE  crt_printf,offset szDelim,offset szAfter

        INVOKE  ExitProcess,0

_main   ENDP

;#################################################################################

        END     _main