gload.1 3.07 KB
.TH gload 1P local "Silicon Graphics, Inc."
.SH NAME 
gload \- game loader for Ultra 64 development system
.SH SYNOPSIS 
\f3gload\f1 [-a "appstring"] [-f log format file] 
.br
[-o rom offset] [-n] [-V] [-v] [-s] [romImage filename]
.SH DESCRIPTION
.I gload\^
is a utility which downloads a prepared rom image into the "cartridge memory"
on the Ultra 64 development board.  We refer to this as "ramrom" memory, 
because it is ram memory which occupies 16MB of space where a rom cartridge
would ordinarily reside on the real game hardware.
.PP
Command line options are:
.RS 5
.TP 12
.B \-a <"application-argument-string">
The ascii contents of the quoted text string following the -a argument are 
loaded into ramrom memory at the standard offset location RAMROM_APP_WRITE_ADDR,
which is defined when <ultra64.h> is included.
.TP
.B \-f <log format file>
An alternate file for specifying the format of strings corresponding
to logging events (see below).
If not specified,
.I gload
looks for the
.I log.fmt
file in the current directory.
.TP
.B \-o <rom offset>
Overrides the default rom load location of zero (this is intended for SGI
internal debugging, not for the general user).
.TP
.B \-s
Exit immediately after loading and starting the game.
.TP
.B \-n
Do not load or use a rom image. This will start the print server.
.TP
.B \-V
Verify mode; all downloaded ramrom memories are readback and verified. 
.TP
.B \-v
Sets a verbose flag, which will print out any errors detected when the ramrom 
memory is read back and verified.
.PP
By default,
.I gload
does not exit after loading the game image but acts as a server for
error, print, and logging requests by the application.
The
.I gload
program reads the log format file,
by default
.IR log.fmt ,
to determine how to expand event log codes and their arguments into
formatted strings.
The log format file consists of a number of lines of the form:
.PP
	<code>	<printf-like format string>
.PP
The format string is "printf-like" because it does not support
64 bit formats such as "%ll" and interprets the floating point
formats as single precision,
not double precision.
See
.IR osLogEvent (3P)
for more details.
.PP
The default error handler for the debug version of the library also uses
this mechanism for formatting of error strings;
it uses the global format file
.I /usr/lib/PR/error.fmt 
for this purpose.
.SH NOTE
After each memory image is loaded (rom and application arguments),
.I gload
reads back the memory and verifies the contents.  Once both memory images
have been individually loaded, 
.I gload
goes back and verifies the integrity of each section one more time to make sure
that none of the memory images overlapped each another.
.PP
All writes and reads to and from ramrom memory are made via the ultra64 device
driver, which must be installed and configured into your kernel; also, the 
/dev/u64 and/dev/u64_print special device files must exist with
proper read/write permissions).
.SH "SEE ALSO"
.IR makerom (1P),
.IR osExit (3P),
.IR osLogEvent (3P),
.IR osSyncPrintf (3P),
.SH FILES
/dev/u64,
/dev/u64_print,
/dev/u64_logging,
/dev/u64_fault,
/usr/lib/PR/error.fmt