4 * [Generated from xload, 08 November 1995]
7 #pragma include_only_once
8 #pragma force_top_level
13 /*----- Overview ----------------------------------------------------------*
29 /* --- xload_file --- *
31 * On entry: R0 == pointer to loader routine
32 * R1 == R10 value to pass to loader
33 * R2 == R12 value to pass to loader
34 * R3 == pointer to leafname of file (passed to loader in R0)
35 * R4 == pointer to filename to load from
36 * R5 == whether the file is safe (passed to loader in R1)
38 * On exit: May return an error
40 * Use: Calls a generalised loader routine to read data from a file.
43 extern routine xload_file;
45 /* --- xload_initBuf --- *
47 * On entry: R0 == pointer to loader routine
48 * R1 == R10 value to pass to loader
49 * R2 == R12 value to pass to loader
50 * R3 == pointer to leafname of file (passed to loader in R0)
52 * On exit: R0 == pointer to load buffer
53 * R1 == size of load buffer
56 * Use: Starts a RAM transfer and starts up a generalised load
60 extern routine xload_initBuf;
62 /* --- xload_killBuf --- *
68 * Use: Does a buffer destroy for a failed load operation.
71 extern routine xload_killBuf;
73 /* --- xload_extend --- *
75 * On entry: R1 == size of last buffer used for receiving
77 * On exit: R0 == pointer to new buffer
78 * R1 == size of new buffer
81 * Use: Performs a buffer extent operation during an xload RAM
85 extern routine xload_extend;
87 /* --- xload_doneBuf --- *
89 * On entry: R1 == total size of data received
91 * On exit: R0 corrupted
94 * Use: Handles the last bufferful of a RAM load.
97 extern routine xload_doneBuf;
99 /* --- xload_done --- *
105 * Use: Tidies up after a successful load job.
108 extern routine xload_done;
110 /* --- xload_failed --- *
112 * On entry: R0 == pointer to error block
116 * Use: Tidies up a RAM transfer after an error.
119 extern routine xload_failed;
121 /* --- xload_byte --- *
125 * On exit: CC if data read OK, and
127 * else CC if end-of-file, and
129 * May return an error
131 * Use: Reads a byte from the current input.
134 extern routine xload_byte;
136 /* --- xload_word --- *
140 * On exit: CC if data read OK, and
142 * else CS if end-of-file and
144 * May return an error
146 * Use: Reads a word from the current input.
149 extern routine xload_word;
151 /* --- xload_block --- *
153 * On entry: R0 == pointer to buffer to read
154 * R1 == size of buffer to read
156 * On exit: R0, R1 preserved
157 * R2 == number of bytes read
158 * CC if more data available, CS for end-of-file
159 * May return an error
161 * Use: Reads in a block of data. Data is buffered, so this is
162 * fairly quick for reading small objects. Large data blocks
163 * are read directly to avoid buffering overhead.
166 extern routine xload_block;
168 /*----- That's all, folks -------------------------------------------------*/