📄 stdout.hhf
字号:
#if( ! @defined( stdout_hhf ))?stdout_hhf := true;#includeOnce( "hla.hhf" )/************************************************************************//* *//* The stdout Namespace: *//* *//************************************************************************/namespace stdout; @fast; procedure handle; @returns( "eax" ); @external( "STDOUT_GETSTDOUTHANDLE" ); procedure write( var buffer:var; count:dword ); @external( "STDOUT_WRITE" ); procedure putbool( b:boolean ); @external( "STDOUT_PUTBOOL" ); procedure putcset( cst:cset ); @external( "STDOUT_PUTCSET_" ); procedure putc( c:char ); @external( "STDOUT_PUTC" ); procedure putcSize( c:char; width:int32; fill:char ); @external( "STDOUT_PUTCSIZE" ); procedure newln; @external( "STDOUT_NEWLN" ); procedure puts( s:string ); @external( "STDOUT_PUTS" ); procedure putsSize ( s:string; width:int32; fill:char ); @external( "STDOUT_PUTSSIZE" ); procedure putz( zs:zstring ); @external( "STDOUT_PUTZS" ); procedure putzSize ( zs:zstring; width:int32; fill:char ); @external( "STDOUT_PUTZSSIZE" ); procedure putb( h:byte ); @external( "STDOUT_PUTB" ); procedure putw( w:word ); @external( "STDOUT_PUTW" ); procedure putd( dw:dword ); @external( "STDOUT_PUTD" ); procedure putq( qw:qword ); @external( "STDOUT_PUTQ" ); procedure puttb( tb:tbyte ); @external( "STDOUT_PUTTB" ); procedure putl( l:lword ); @external( "STDOUT_PUTL" ); procedure putbSize ( b:byte; width:int32; fill:char ); @external( "STDOUT_PUTBSIZE" ); procedure putwSize ( w:word; width:int32; fill:char ); @external( "STDOUT_PUTWSIZE" ); procedure putdSize ( d:dword; width:int32; fill:char ); @external( "STDOUT_PUTDSIZE" ); procedure putqSize ( q:qword; width:int32; fill:char ); @external( "STDOUT_PUTQSIZE" ); procedure puttbSize ( tb:tbyte; width:int32; fill:char ); @external( "STDOUT_PUTTBSIZE" ); procedure putlSize ( l:lword; width:int32; fill:char ); @external( "STDOUT_PUTLSIZE" ); procedure puth8( b:byte ); @external( "STDOUT_PUTH8" ); procedure puth16( w:word ); @external( "STDOUT_PUTH16" ); procedure puth32( d:dword ); @external( "STDOUT_PUTH32" ); procedure puth64( q:qword ); @external( "STDOUT_PUTH64" ); procedure puth80( tb:tbyte ); @external( "STDOUT_PUTH80" ); procedure puth128( l:lword ); @external( "STDOUT_PUTH128" ); procedure puth8Size( b:byte; width:dword; fill:char ); @external( "STDOUT_PUTH8SIZE" ); procedure puth16Size( w:word; width:dword; fill:char ); @external( "STDOUT_PUTH16SIZE" ); procedure puth32Size( d:dword; width:dword; fill:char ); @external( "STDOUT_PUTH32SIZE" ); procedure puth64Size( q:qword; width:dword; fill:char ); @external( "STDOUT_PUTH64SIZE" ); procedure puth80Size( tb:tbyte; width:dword; fill:char ); @external( "STDOUT_PUTH80SIZE" ); procedure puth128Size( l:lword; width:dword; fill:char ); @external( "STDOUT_PUTH128SIZE" ); procedure puti8 ( b:byte ); @external( "STDOUT_PUTI8" ); procedure puti16 ( w:word ); @external( "STDOUT_PUTI16" ); procedure puti32 ( d:dword ); @external( "STDOUT_PUTI32" ); procedure puti64 ( q:qword ); @external( "STDOUT_PUTI64" ); procedure puti128( l:lword ); @external( "STDOUT_PUTI128" ); procedure puti8Size ( b:byte; width:int32; fill:char ); @external( "STDOUT_PUTI8SIZE" ); procedure puti16Size ( w:word; width:int32; fill:char ); @external( "STDOUT_PUTI16SIZE" ); procedure puti32Size ( d:dword; width:int32; fill:char ); @external( "STDOUT_PUTI32SIZE" ); procedure puti64Size ( q:qword; width:int32; fill:char ); @external( "STDOUT_PUTI64SIZE" ); procedure puti128Size ( l:lword; width:int32; fill:char ); @external( "STDOUT_PUTI128SIZE" ); procedure putu8 ( b:byte ); @external( "STDOUT_PUTU8" ); procedure putu16( w:word ); @external( "STDOUT_PUTU16" ); procedure putu32( d:dword ); @external( "STDOUT_PUTU32" ); procedure putu64( q:qword ); @external( "STDOUT_PUTU64" ); procedure putu128( l:lword ); @external( "STDOUT_PUTU128" ); procedure putu8Size ( b:byte; width:int32; fill:char ); @external( "STDOUT_PUTU8SIZE" ); procedure putu16Size ( w:word; width:int32; fill:char ); @external( "STDOUT_PUTU16SIZE" ); procedure putu32Size ( d:dword; width:int32; fill:char ); @external( "STDOUT_PUTU32SIZE" ); procedure putu64Size ( q:qword; width:int32; fill:char ); @external( "STDOUT_PUTU64SIZE" ); procedure putu128Size ( l:lword; width:int32; fill:char ); @external( "STDOUT_PUTU128SIZE" ); procedure putr80 ( r :real80; width :uns32; decpts :uns32; fill :char ); @external( "STDOUT_PUTR80" ); procedure putr64 ( r :real64; width :uns32; decpts :uns32; fill :char ); @external( "STDOUT_PUTR64" ); procedure putr32 ( r :real32; width :uns32; decpts :uns32; fill :char ); @external( "STDOUT_PUTR32" ); procedure pute80( r:real80; width:uns32 ); @external( "STDOUT_PUTE80" ); #macro _pute80( _r_ ); @global:stdout.pute80( _r_, 28 ) #endmacro #macro pute80_( _r_, _w_, _f_ ); @global:stdout.pute80( _r_, _w_ ) #endmacro procedure pute64( r:real64; width:uns32 ); @external( "STDOUT_PUTE64" ); #macro _pute64( _r_ ); @global:stdout.pute64( _r_, 22 ) #endmacro #macro pute64_( _r_, _w_, _f_ ); @global:stdout.pute64( _r_, _w_ ) #endmacro procedure pute32( r:real32; width:uns32 ); @external( "STDOUT_PUTE32" ); #macro _pute32( _r_ ); @global:stdout.pute32( _r_, 15 ) #endmacro #macro pute32_( _r_, _w_, _f_ ); @global:stdout.pute32( _r_, _w_ ) #endmacroconst validPutType :boolean[ @global:hla.sizePTypes ] := [ @global:false, // Undefined @global:true, // tBoolean //1 @global:false, // enum //2 @global:true, // tUns8, //3 @global:true, // tUns16, //4 @global:true, // tUns32, //5 @global:true, // tUns64, //6 @global:true, // tUns128, //7 @global:true, // tByte, //8 @global:true, // tWord, //9 @global:true, // tDWord, //10 @global:true, // tQWord, //11 @global:true, // tTByte, //12 @global:true, // tLWord, //13 @global:true, // tInt8, //14 @global:true, // tInt16, //15 @global:true, // tInt32, //16 @global:true, // tInt64, //17 @global:true, // tInt128, //18 @global:true, // tChar, //19 @global:false, // tWChar, //20 @global:true, // tReal32, //21 @global:true, // tReal64, //22 @global:true, // tReal80, //23 @global:false, // tReal128, //24
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -