$include (compStch.ext)

/*
 *============================================================================
 *  This program is distributed in the hope that it will be useful, but
 *  WITHOUT ANY WARRANTY; without even the implied warranty of
 *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE
 *
 *  Permission to use for any purpose, modify, copy, and make enhancements
 *  and derivative works of the software is granted if attribution is given to
 *  R.M. Gillmore, dba the ACME Software Deli, as the author
 *
 *  While the ACME Software Deli does not work for money, there is nonetheless
 *  a significant amount of work involved.  The ACME Software Deli maintains the
 *  rights to all code written, though it may be used and distributed as long as
 *  the following conditions are maintained.
 *
 *  1.  The copyright statement at the top of each code block is maintained in
 *      your distribution.
 *  2.  You do not identify yourself as the ACME Software Deli
 *  3.  Any changes made to the software are sent to the ACME Software Deli
 *  4.  You distribute your code and any modifications to my code freely.
 *  5.  There is no charge for your work which uses this library
 *============================================================================
 */


fileIOModule:
do;
$if not noID
declare IDString	(*) byte data
	( '@(#)$Id: fileIO.p86 823 2022-10-16 22:40:28Z rmgillmore $', 0 );
$endif

$set( fileIO )
$include (fileIO.ext)
$include (sysCalls.ext)
$include (string.ext)

printString:
procedure ( stringPtr, stringLength ) public;
	declare stringPtr		pointer,
			stringLength	word,
			fileHandle		word,
			numberWritten	word;

	numberWritten = fwrite( stdout, stringPtr, stringLength );

end printString;

printStringAsciiZ:
procedure ( stringPtr ) public;
	declare stringPtr		pointer;
	declare stringLength	word;

	stringLength = findb( stringPtr, 0, 07fffh );
	if ( stringLength <> 0ffffh ) then
		call printString( stringPtr, stringLength );

end printStringAsciiZ;

end fileIOModule;