dos.h revision 1.2.28.1 1 1.1 itohy /*
2 1.1 itohy * dos.h
3 1.1 itohy * Human68k DOS call interface
4 1.1 itohy *
5 1.1 itohy * written by Yasha (ITOH Yasufumi)
6 1.1 itohy * (based on PD libc 1.1.32 by PROJECT C Library)
7 1.1 itohy * public domain
8 1.1 itohy *
9 1.2.28.1 skrll * $NetBSD: dos.h,v 1.2.28.1 2004/08/03 10:42:56 skrll Exp $
10 1.1 itohy */
11 1.1 itohy /*
12 1.1 itohy * PROJECT C Library, X68000 PROGRAMMING INTERFACE DEFINITION
13 1.1 itohy * --------------------------------------------------------------------
14 1.1 itohy * This file is written by the Project C Library Group, and completely
15 1.1 itohy * in public domain. You can freely use, copy, modify, and redistribute
16 1.1 itohy * the whole contents, without this notice.
17 1.1 itohy * --------------------------------------------------------------------
18 1.1 itohy * Id: dos.h,v 1.6 1994/07/27 13:44:11 mura Exp
19 1.1 itohy * Id: dos_p.h,v 1.3 1993/10/06 16:46:07 mura Exp
20 1.1 itohy */
21 1.1 itohy
22 1.1 itohy #ifndef __X68K_DOS_H__
23 1.1 itohy #define __X68K_DOS_H__
24 1.1 itohy
25 1.1 itohy #include <sys/cdefs.h>
26 1.1 itohy
27 1.1 itohy typedef int dos_mode_t;
28 1.1 itohy
29 1.1 itohy struct dos_inpptr {
30 1.1 itohy unsigned char max;
31 1.1 itohy unsigned char length;
32 1.1 itohy char buffer[256];
33 1.1 itohy };
34 1.1 itohy
35 1.1 itohy struct dos_nameckbuf {
36 1.1 itohy char drive[2];
37 1.1 itohy char path[65];
38 1.1 itohy char name[19];
39 1.1 itohy char ext[5];
40 1.1 itohy };
41 1.1 itohy
42 1.1 itohy union dos_fcb {
43 1.1 itohy struct {
44 1.1 itohy unsigned char dupcnt;
45 1.1 itohy unsigned char devattr;
46 1.1 itohy void *deventry;
47 1.1 itohy char nouse_1[8];
48 1.1 itohy unsigned char openmode;
49 1.1 itohy char nouse_2[21];
50 1.1 itohy char name1[8];
51 1.1 itohy char ext[3];
52 1.1 itohy char nouse_3;
53 1.1 itohy char name2[10];
54 1.1 itohy char nouse_4[38];
55 1.2 itohy } __attribute__((__packed__)) chr;
56 1.1 itohy struct {
57 1.1 itohy unsigned char dupcnt;
58 1.1 itohy unsigned mode : 1;
59 1.1 itohy unsigned unknown : 2;
60 1.1 itohy unsigned physdrv : 5;
61 1.1 itohy void *deventry;
62 1.1 itohy unsigned int fileptr;
63 1.1 itohy unsigned int exclptr;
64 1.1 itohy unsigned char openmode;
65 1.1 itohy unsigned char entryidx;
66 1.1 itohy unsigned char clustidx;
67 1.1 itohy char nouse_2;
68 1.1 itohy unsigned short acluster;
69 1.1 itohy unsigned int asector;
70 1.1 itohy void *iobuf;
71 1.1 itohy unsigned long dirsec;
72 1.1 itohy unsigned int fptrmax;
73 1.1 itohy char name1[8];
74 1.1 itohy char ext[3];
75 1.1 itohy unsigned char attr;
76 1.1 itohy char name2[10];
77 1.1 itohy unsigned short time;
78 1.1 itohy unsigned short date;
79 1.1 itohy unsigned short fatno;
80 1.1 itohy unsigned long size;
81 1.1 itohy char nouse_4[28];
82 1.2 itohy } __attribute__((__packed__)) blk;
83 1.1 itohy };
84 1.1 itohy
85 1.1 itohy struct dos_indos {
86 1.1 itohy unsigned short indosf;
87 1.1 itohy unsigned char doscmd;
88 1.1 itohy unsigned char fat_flg;
89 1.1 itohy unsigned short retry_count;
90 1.1 itohy unsigned short retry_time;
91 1.1 itohy unsigned short verifyf;
92 1.1 itohy unsigned char breakf;
93 1.1 itohy unsigned char ctrlpf;
94 1.1 itohy unsigned char reserved;
95 1.1 itohy unsigned char wkcurdrv;
96 1.1 itohy };
97 1.1 itohy
98 1.1 itohy struct dos_mep {
99 1.1 itohy void *prev_mp;
100 1.1 itohy void *parent_mp;
101 1.1 itohy void *block_end;
102 1.1 itohy void *next_mp;
103 1.1 itohy };
104 1.1 itohy
105 1.1 itohy struct dos_psp {
106 1.1 itohy char *env;
107 1.1 itohy void *exit;
108 1.1 itohy void *ctrlc;
109 1.1 itohy void *errexit;
110 1.1 itohy char *comline;
111 1.1 itohy unsigned char handle[12];
112 1.1 itohy void *bss;
113 1.1 itohy void *heap;
114 1.1 itohy void *stack;
115 1.1 itohy void *usp;
116 1.1 itohy void *ssp;
117 1.1 itohy unsigned short sr;
118 1.1 itohy unsigned short abort_sr;
119 1.1 itohy void *abort_ssp;
120 1.1 itohy void *trap10;
121 1.1 itohy void *trap11;
122 1.1 itohy void *trap12;
123 1.1 itohy void *trap13;
124 1.1 itohy void *trap14;
125 1.1 itohy unsigned int osflg;
126 1.1 itohy unsigned char reserve_1[28];
127 1.1 itohy char exe_path[68];
128 1.1 itohy char exe_name[24];
129 1.1 itohy char reserve_2[36];
130 1.1 itohy };
131 1.1 itohy
132 1.1 itohy struct dos_comline {
133 1.1 itohy unsigned char len;
134 1.1 itohy char buffer[255];
135 1.1 itohy };
136 1.1 itohy
137 1.1 itohy struct dos_namestbuf {
138 1.1 itohy unsigned char flg;
139 1.1 itohy unsigned char drive;
140 1.1 itohy char path[65];
141 1.1 itohy char name1[8];
142 1.1 itohy char ext[3];
143 1.1 itohy char name2[10];
144 1.1 itohy };
145 1.1 itohy
146 1.1 itohy struct dos_freeinf {
147 1.1 itohy unsigned short free;
148 1.1 itohy unsigned short max;
149 1.1 itohy unsigned short sec;
150 1.1 itohy unsigned short byte;
151 1.1 itohy };
152 1.1 itohy
153 1.1 itohy struct dos_dpbptr {
154 1.1 itohy unsigned char drive;
155 1.1 itohy unsigned char unit;
156 1.1 itohy unsigned short byte;
157 1.1 itohy unsigned char sec;
158 1.1 itohy unsigned char shift;
159 1.1 itohy unsigned short fatsec;
160 1.1 itohy unsigned char fatcount;
161 1.1 itohy unsigned char fatlen;
162 1.1 itohy unsigned short dircount;
163 1.1 itohy unsigned short datasec;
164 1.1 itohy unsigned short maxfat;
165 1.1 itohy unsigned short dirsec;
166 1.1 itohy int driver;
167 1.1 itohy unsigned char ide;
168 1.1 itohy unsigned char flg;
169 1.1 itohy struct dos_dpbptr *next;
170 1.1 itohy unsigned short dirfat;
171 1.1 itohy char dirbuf[64];
172 1.2 itohy } __attribute__((__packed__));
173 1.1 itohy
174 1.1 itohy struct dos_filbuf {
175 1.1 itohy unsigned char searchatr;
176 1.1 itohy unsigned char driveno;
177 1.1 itohy unsigned long dirsec;
178 1.1 itohy unsigned short dirlft;
179 1.1 itohy unsigned short dirpos;
180 1.1 itohy char filename[8];
181 1.1 itohy char ext[3];
182 1.1 itohy unsigned char atr;
183 1.1 itohy unsigned short time;
184 1.1 itohy unsigned short date;
185 1.1 itohy unsigned int filelen;
186 1.1 itohy char name[23];
187 1.2 itohy } __attribute__((__packed__));
188 1.1 itohy
189 1.1 itohy struct dos_exfilbuf {
190 1.1 itohy unsigned char searchatr;
191 1.1 itohy unsigned char driveno;
192 1.1 itohy unsigned long dirsec;
193 1.1 itohy unsigned short dirlft;
194 1.1 itohy unsigned short dirpos;
195 1.1 itohy char filename[8];
196 1.1 itohy char ext[3];
197 1.1 itohy unsigned char atr;
198 1.1 itohy unsigned short time;
199 1.1 itohy unsigned short date;
200 1.1 itohy unsigned int filelen;
201 1.1 itohy char name[23];
202 1.1 itohy char drive[2];
203 1.1 itohy char path[65];
204 1.1 itohy char unused[21];
205 1.2 itohy } __attribute__((__packed__));
206 1.1 itohy
207 1.1 itohy struct dos_dregs {
208 1.1 itohy int d0;
209 1.1 itohy int d1;
210 1.1 itohy int d2;
211 1.1 itohy int d3;
212 1.1 itohy int d4;
213 1.1 itohy int d5;
214 1.1 itohy int d6;
215 1.1 itohy int d7;
216 1.1 itohy int a0;
217 1.1 itohy int a1;
218 1.1 itohy int a2;
219 1.1 itohy int a3;
220 1.1 itohy int a4;
221 1.1 itohy int a5;
222 1.1 itohy int a6;
223 1.1 itohy };
224 1.1 itohy
225 1.1 itohy struct dos_prcctrl {
226 1.1 itohy long length;
227 1.1 itohy unsigned char *buf_ptr;
228 1.1 itohy unsigned short command;
229 1.1 itohy unsigned short your_id;
230 1.1 itohy };
231 1.1 itohy
232 1.1 itohy struct dos_prcptr {
233 1.1 itohy struct dos_prcptr *next_ptr;
234 1.1 itohy unsigned char wait_flg;
235 1.1 itohy unsigned char counter;
236 1.1 itohy unsigned char max_counter;
237 1.1 itohy unsigned char doscmd;
238 1.1 itohy unsigned int psp_id;
239 1.1 itohy unsigned int usp_reg;
240 1.1 itohy unsigned int d_reg[8];
241 1.1 itohy unsigned int a_reg[7];
242 1.1 itohy unsigned short sr_reg;
243 1.1 itohy unsigned int pc_reg;
244 1.1 itohy unsigned int ssp_reg;
245 1.1 itohy unsigned short indosf;
246 1.1 itohy unsigned int indosp;
247 1.1 itohy struct dos_prcctrl *buf_ptr;
248 1.1 itohy unsigned char name[16];
249 1.1 itohy long wait_time;
250 1.2 itohy } __attribute__((__packed__));
251 1.1 itohy
252 1.1 itohy /*
253 1.1 itohy * arguments:
254 1.1 itohy * l 32bit arg -> 32bit DOS arg
255 1.1 itohy * w 32bit arg -> lower 16bit DOS arg
256 1.1 itohy * lb31 32bit arg -> 32bit (arg | 0x80000000) DOS arg
257 1.1 itohy * wb8 32bit arg -> 16bit (arg | 0x100) DOS arg
258 1.1 itohy * wb15 32bit arg -> 16bit (arg | 0x8000) DOS arg
259 1.1 itohy * (num).l (no C arg)-> 32bit (num) DOS arg
260 1.1 itohy * (num).w (no C arg)-> 16bit (num) DOS arg
261 1.1 itohy * drvctrl special arg for DOS_DRVCTRL
262 1.1 itohy * super special arg for DOS_SUPER
263 1.1 itohy * opts:
264 1.1 itohy * e d0 < 0 is an error code
265 1.1 itohy * estrct d0 > 0xffffff00 (unsigned) is an error code
266 1.1 itohy * ealloc error handling of memory allocation
267 1.1 itohy * ep error handling of process operation
268 1.1 itohy * sv save and restore d2-d7/a2-a6
269 1.1 itohy * noret the DOS call never returns
270 1.1 itohy * alias NAME specify another entry name
271 1.1 itohy * super special for DOS_SUPER
272 1.1 itohy * super_jsr special for DOS_SUPER_JSR
273 1.1 itohy */
274 1.1 itohy
275 1.1 itohy /* ff00 ; noret */ __dead void DOS_EXIT __P((void)) __attribute__((__noreturn__));
276 1.1 itohy /* ff01 */ int DOS_GETCHAR __P((void));
277 1.1 itohy /* ff02 w */ void DOS_PUTCHAR __P((int));
278 1.1 itohy /* ff03 */ int DOS_COMINP __P((void));
279 1.1 itohy /* ff04 w */ void DOS_COMOUT __P((int));
280 1.1 itohy /* ff05 w */ void DOS_PRNOUT __P((int));
281 1.1 itohy /* ff06 w */ int DOS_INPOUT __P((int));
282 1.1 itohy /* ff07 */ int DOS_INKEY __P((void));
283 1.1 itohy /* ff08 */ int DOS_GETC __P((void));
284 1.1 itohy /* ff09 l */ void DOS_PRINT __P((const char *));
285 1.1 itohy /* ff0a l */ int DOS_GETS __P((struct dos_inpptr *));
286 1.1 itohy /* ff0b */ int DOS_KEYSNS __P((void));
287 1.1 itohy /* ff0c 1.w */ int DOS_KFLUSHGP __P((void));
288 1.1 itohy /* ff0c 6.w w */ int DOS_KFLUSHIO __P((int));
289 1.1 itohy /* ff0c 7.w */ int DOS_KFLUSHIN __P((void));
290 1.1 itohy /* ff0c 8.w */ int DOS_KFLUSHGC __P((void));
291 1.1 itohy /* ff0c 10.w l */ int DOS_KFLUSHGS __P((struct dos_inpptr *));
292 1.1 itohy /* ff0d */ void DOS_FFLUSH __P((void));
293 1.1 itohy /* ff0e w */ int DOS_CHGDRV __P((int));
294 1.1 itohy /* ff0f drvctrl */ int DOS_DRVCTRL __P((int, int));
295 1.1 itohy /* ff10 */ int DOS_CONSNS __P((void));
296 1.1 itohy /* ff11 */ int DOS_PRNSNS __P((void));
297 1.1 itohy /* ff12 */ int DOS_CINSNS __P((void));
298 1.1 itohy /* ff13 */ int DOS_COUTSNS __P((void));
299 1.1 itohy /* ff17 l l ; e */ int DOS_FATCHK __P((const char *, unsigned short *));
300 1.1 itohy /* ff17 l lb31 w ; e */ int DOS_FATCHK2 __P((const char *, unsigned short *, int));
301 1.1 itohy /* ff18 0.w */ int DOS_HENDSPMO __P((void));
302 1.1 itohy /* ff18 1.w w l */ int DOS_HENDSPMP __P((int, const char *));
303 1.1 itohy /* ff18 2.w w l */ int DOS_HENDSPMR __P((int, const char *));
304 1.1 itohy /* ff18 3.w */ void DOS_HENDSPMC __P((void));
305 1.1 itohy /* ff18 4.w */ int DOS_HENDSPIO __P((void));
306 1.1 itohy /* ff18 5.w w l */ int DOS_HENDSPIP __P((int, const char *));
307 1.1 itohy /* ff18 6.w w l */ int DOS_HENDSPIR __P((int, const char *));
308 1.1 itohy /* ff18 7.w w */ void DOS_HENDSPIC __P((int));
309 1.1 itohy /* ff18 8.w */ int DOS_HENDSPSO __P((void));
310 1.1 itohy /* ff18 9.w w l */ int DOS_HENDSPSP __P((int, const char *));
311 1.1 itohy /* ff18 10.w w l */ int DOS_HENDSPSR __P((int, const char *));
312 1.1 itohy /* ff18 11.w */ void DOS_HENDSPSC __P((void));
313 1.1 itohy /* ff19 */ int DOS_CURDRV __P((void));
314 1.1 itohy /* ff1a l */ int DOS_GETSS __P((struct dos_inpptr *));
315 1.1 itohy /* ff1b w */ int DOS_FGETC __P((int));
316 1.1 itohy /* ff1c l w */ int DOS_FGETS __P((struct dos_inpptr *, int));
317 1.1 itohy /* ff1d w w */ void DOS_FPUTC __P((int, int));
318 1.1 itohy /* ff1e l w */ void DOS_FPUTS __P((const char *, int));
319 1.1 itohy /* ff1f */ void DOS_ALLCLOSE __P((void));
320 1.1 itohy /* ff20 super ; super e */ int DOS_SUPER __P((int));
321 1.1 itohy /* ff21 w l ; e */ void DOS_FNCKEYGT __P((int, char *));
322 1.1 itohy /* ff21 wb8 l ; e */ void DOS_FNCKEYST __P((int, const char *));
323 1.1 itohy /* ff23 0.w w */ int DOS_C_PUTC __P((int));
324 1.1 itohy /* ff23 1.w l */ int DOS_C_PRINT __P((const char *));
325 1.1 itohy /* ff23 2.w w */ int DOS_C_COLOR __P((int));
326 1.1 itohy /* ff23 3.w w w */ int DOS_C_LOCATE __P((int, int));
327 1.1 itohy /* ff23 4.w */ int DOS_C_DOWN_S __P((void));
328 1.1 itohy /* ff23 5.w */ int DOS_C_UP_S __P((void));
329 1.1 itohy /* ff23 6.w w */ int DOS_C_UP __P((int));
330 1.1 itohy /* ff23 7.w w */ int DOS_C_DOWN __P((int));
331 1.1 itohy /* ff23 8.w w */ int DOS_C_RIGHT __P((int));
332 1.1 itohy /* ff23 9.w w */ int DOS_C_LEFT __P((int));
333 1.1 itohy /* ff23 10.w 0.w */ int DOS_C_CLS_ED __P((void));
334 1.1 itohy /* ff23 10.w 1.w */ int DOS_C_CLS_ST __P((void));
335 1.1 itohy /* ff23 10.w 2.w */ int DOS_C_CLS_AL __P((void));
336 1.1 itohy /* ff23 11.w 0.w */ int DOS_C_ERA_ED __P((void));
337 1.1 itohy /* ff23 11.w 1.w */ int DOS_C_ERA_ST __P((void));
338 1.1 itohy /* ff23 11.w 2.w */ int DOS_C_ERA_AL __P((void));
339 1.1 itohy /* ff23 12.w w */ int DOS_C_INS __P((int));
340 1.1 itohy /* ff23 13.w w */ int DOS_C_DEL __P((int));
341 1.1 itohy /* ff23 14.w w */ int DOS_C_FNKMOD __P((int));
342 1.1 itohy /* ff23 15.w w w */ int DOS_C_WINDOW __P((int, int));
343 1.1 itohy /* ff23 16.w w */ int DOS_C_WIDTH __P((int));
344 1.1 itohy /* ff23 17.w */ int DOS_C_CURON __P((void));
345 1.1 itohy /* ff23 18.w */ int DOS_C_CUROFF __P((void));
346 1.1 itohy /* ff24 0.w */ int DOS_K_KEYINP __P((void));
347 1.1 itohy /* ff24 1.w */ int DOS_K_KEYSNS __P((void));
348 1.1 itohy /* ff24 2.w */ int DOS_K_SFTSNS __P((void));
349 1.1 itohy /* ff24 3.w w */ int DOS_K_KEYBIT __P((int));
350 1.1 itohy /* ff24 4.w w */ void DOS_K_INSMOD __P((int));
351 1.1 itohy /* ff25 w l */ void *DOS_INTVCS __P((int, void *));
352 1.1 itohy /* ff26 l */ void DOS_PSPSET __P((struct dos_psp *));
353 1.1 itohy /* ff27 */ int DOS_GETTIM2 __P((void));
354 1.1 itohy /* ff28 l ; e */ int DOS_SETTIM2 __P((int));
355 1.1 itohy /* ff29 l l ; e */ int DOS_NAMESTS __P((const char *, struct dos_namestbuf *));
356 1.1 itohy /* ff2a */ int DOS_GETDATE __P((void));
357 1.1 itohy /* ff2b w ; e */ int DOS_SETDATE __P((int));
358 1.1 itohy /* ff2c */ int DOS_GETTIME __P((void));
359 1.1 itohy /* ff2d w ; e */ int DOS_SETTIME __P((int));
360 1.1 itohy /* ff2e w */ void DOS_VERIFY __P((int));
361 1.1 itohy /* ff2f w w ; e */ int DOS_DUP0 __P((int, int));
362 1.2.28.1 skrll /* ff30 */ int __pure DOS_VERNUM __P((void));
363 1.1 itohy /* ff31 l w ; noret */ __dead void DOS_KEEPPR __P((int, int)) __attribute__((__noreturn__));
364 1.1 itohy /* ff32 w l ; e */ int DOS_GETDPB __P((int, struct dos_dpbptr *));
365 1.1 itohy /* ff33 w */ int DOS_BREAKCK __P((int));
366 1.1 itohy /* ff34 w w ; e */ void DOS_DRVXCHG __P((int, int));
367 1.1 itohy /* ff35 w */ void *DOS_INTVCG __P((int));
368 1.1 itohy /* ff36 w l ; estrct */ int DOS_DSKFRE __P((int, struct dos_freeinf *));
369 1.1 itohy /* ff37 l l ; e */ int DOS_NAMECK __P((const char *, struct dos_nameckbuf *));
370 1.1 itohy /* ff39 l ; e */ int DOS_MKDIR __P((const char *));
371 1.1 itohy /* ff3a l ; e */ int DOS_RMDIR __P((const char *));
372 1.1 itohy /* ff3b l ; e */ int DOS_CHDIR __P((const char *));
373 1.1 itohy /* ff3c l w ; e */ int DOS_CREATE __P((const char *, dos_mode_t));
374 1.1 itohy /* ff3d l w ; e */ int DOS_OPEN __P((const char *, int));
375 1.1 itohy /* ff3e w ; e */ int DOS_CLOSE __P((int));
376 1.1 itohy /* ff3f w l l ; e */ int DOS_READ __P((int, char *, int));
377 1.1 itohy /* ff40 w l l ; e */ int DOS_WRITE __P((int, const char *, int));
378 1.1 itohy /* ff41 l ; e */ int DOS_DELETE __P((const char *));
379 1.1 itohy /* ff42 w l w ; e */ long DOS_SEEK __P((int, int, int));
380 1.1 itohy /* ff43 l w ; e */ dos_mode_t DOS_CHMOD __P((const char *, dos_mode_t));
381 1.1 itohy /* ff44 0.w w ; e */ int DOS_IOCTRLGT __P((int));
382 1.1 itohy /* ff44 1.w w w ; e */ int DOS_IOCTRLST __P((int, int));
383 1.1 itohy /* ff44 2.w w l l ; e */ int DOS_IOCTRLRH __P((int, char *, int));
384 1.1 itohy /* ff44 3.w w l l ; e */ int DOS_IOCTRLWH __P((int, const char *, int));
385 1.1 itohy /* ff44 4.w w l l ; e */ int DOS_IOCTRLRD __P((int, char *, int));
386 1.1 itohy /* ff44 5.w w l l ; e */ int DOS_IOCTRLWD __P((int, const char *, int));
387 1.1 itohy /* ff44 6.w w ; e */ int DOS_IOCTRLIS __P((int));
388 1.1 itohy /* ff44 7.w w ; e */ int DOS_IOCTRLOS __P((int));
389 1.1 itohy /* ff44 9.w w ; e */ int DOS_IOCTRLDVGT __P((int));
390 1.1 itohy /* ff44 10.w w ; e */ int DOS_IOCTRLFDGT __P((int));
391 1.1 itohy /* ff44 11.w w w ; e */ int DOS_IOCTRLRTSET __P((int, int));
392 1.1 itohy /* ff44 12.w w w l ; e */ int DOS_IOCTRLDVCTL __P((int, int, char *));
393 1.1 itohy /* ff44 13.w w w l ; e */ int DOS_IOCTRLFDCTL __P((int, int, char *));
394 1.1 itohy /* ff45 w ; e */ int DOS_DUP __P((int));
395 1.1 itohy /* ff46 w w ; e */ int DOS_DUP2 __P((int, int));
396 1.1 itohy /* ff47 w l ; e */ int DOS_CURDIR __P((int, char *));
397 1.1 itohy /* ff48 l ; ealloc */ void *DOS_MALLOC __P((int));
398 1.1 itohy /* ff49 l ; e */ int DOS_MFREE __P((void *));
399 1.1 itohy /* ff4a l l ; ealloc */ int DOS_SETBLOCK __P((void *, int));
400 1.1 itohy /* ff4b 0.w l l l ; sv e */ int DOS_LOADEXEC __P((const char *, const struct dos_comline *, const char *));
401 1.1 itohy /* ff4b 1.w l l l ; sv e */ int DOS_LOAD __P((const char *, const struct dos_comline *, const char *));
402 1.1 itohy /* ff4b 2.w l l l ; e */ int DOS_PATHCHK __P((const char *, const struct dos_comline *, const char *));
403 1.1 itohy /* ff4b 3.w l l l ; e */ int DOS_LOADONLY __P((const char *, const void *, const void *));
404 1.1 itohy /* ff4b 4.w l ; sv e */ int DOS_EXECONLY __P((void *));
405 1.1 itohy /* ff4b 5.w l l 0.l ; sv e */ int DOS_BINDNO __P((const char *, const char *));
406 1.1 itohy /*^ 0.l is required?? */
407 1.1 itohy /* ff4b w l l l ; sv e */ int DOS_EXEC2 __P((int, const char *, const char *, const char *));
408 1.1 itohy /* ff4c w ; noret */ __dead void DOS_EXIT2 __P((int)) __attribute__((__noreturn__));
409 1.1 itohy /* ff4d */ int DOS_WAIT __P((void));
410 1.1 itohy /* ff4e l l w ; e */ int DOS_FILES __P((struct dos_filbuf *, const char *, int));
411 1.1 itohy /* ff4e lb31 l w ; e */ int DOS_EXFILES __P((struct dos_exfilbuf *, const char *, int));
412 1.1 itohy /* ff4f l ; e */ int DOS_NFILES __P((struct dos_filbuf *));
413 1.1 itohy /* ff4f lb31 ; e */ int DOS_EXNFILES __P((struct dos_exfilbuf *));
414 1.1 itohy /* ff80 l */ struct dos_psp *DOS_SETPDB __P((struct dos_psp *));
415 1.1 itohy /* ff81 */ struct dos_psp *DOS_GETPDB __P((void));
416 1.1 itohy /* ff82 l l l ; e */ int DOS_SETENV __P((const char *, const char *, const char *));
417 1.1 itohy /* ff83 l l l ; e */ int DOS_GETENV __P((const char *, const char *, char *));
418 1.1 itohy /* ff84 */ int DOS_VERIFYG __P((void));
419 1.1 itohy /* ff85 0.w l ; e */ int DOS_COMMON_CK __P((const char *));
420 1.1 itohy /* ff85 1.w l l l l ; e */ int DOS_COMMON_RD __P((const char *, int, char *, int));
421 1.1 itohy /* ff85 2.w l l l l ; e */ int DOS_COMMON_WT __P((const char *, int, const char *, int));
422 1.1 itohy /* ff85 3.w l l l l ; e */ int DOS_COMMON_LK __P((const char *, int, int, int));
423 1.1 itohy /* ff85 4.w l l l l ; e */ int DOS_COMMON_FRE __P((const char *, int, int, int));
424 1.1 itohy /* ff85 5.w l ; e */ int DOS_COMMON_DEL __P((const char *));
425 1.1 itohy /* ff86 l l ; e */ int DOS_MOVE __P((const char *, const char *));
426 1.1 itohy int DOS_RENAME __P((const char *, const char *));
427 1.1 itohy /* ff87 w l ; estrct */ int DOS_FILEDATE __P((int, int));
428 1.1 itohy /* ff88 w l ; ealloc */ void *DOS_MALLOC2 __P((int, int));
429 1.1 itohy /* ff88 wb15 l l ; ealloc */ void *DOS_MALLOC0 __P((int, int, int));
430 1.1 itohy /* ff8a l w ; e */ int DOS_MAKETMP __P((const char *, int));
431 1.1 itohy /* ff8b l w ; e */ int DOS_NEWFILE __P((const char *, dos_mode_t));
432 1.1 itohy /* ff8c 0.w w l l ; e */ int DOS_LOCK __P((int, int, int));
433 1.1 itohy /* ff8c 1.w w l l ; e */ int DOS_UNLOCK __P((int, int, int));
434 1.1 itohy /* ff8f 0.w l l ; e */ int DOS_GETASSIGN __P((const char *, char *));
435 1.1 itohy /* ff8f 1.w l l w ; e */ int DOS_MAKEASSIGN __P((const char *, const char *, int));
436 1.1 itohy /* ff8f 4.w l ; e */ int DOS_RASSIGN __P((const char *));
437 1.1 itohy /* ffaa w */ int DOS_FFLUSH_SET __P((int));
438 1.1 itohy /* ffab w l ; e */ void *DOS_OS_PATCH __P((unsigned int, void *));
439 1.1 itohy /* ffac w ; e */ union dos_fcb *DOS_GET_FCB_ADR __P((unsigned int));
440 1.1 itohy /* ffad w l ; ealloc */ void *DOS_S_MALLOC __P((int, int));
441 1.1 itohy /* ffad wb15 l l ; ealloc */ void *DOS_S_MALLOC0 __P((int, int));
442 1.1 itohy /* ffae l ; e */ int DOS_S_MFREE __P((void *));
443 1.1 itohy /* ffaf w l l l ; ep */ int DOS_S_PROCESS __P((int, int, int, int));
444 1.1 itohy /* fff0 ; alias DOS_EXITVC noret */ __dead void DOS_RETSHELL __P((void)) __attribute__((__noreturn__));
445 1.1 itohy __dead void DOS_EXITVC __P((void)) __attribute__((__noreturn__));
446 1.1 itohy /* fff1 ; noret */ __dead void DOS_CTLABORT __P((void)) __attribute__((__noreturn__));
447 1.1 itohy /* fff2 ; noret */ __dead void DOS_ERRABORT __P((void)) __attribute__((__noreturn__));
448 1.1 itohy /* fff3 l w w w */ void DOS_DISKRED __P((void *, int, int, int));
449 1.1 itohy /* fff3 lb31 w l l */ void DOS_DISKRED2 __P((void *, int, int, int));
450 1.1 itohy /* fff4 l w w w */ void DOS_DISKWRT __P((const void *, int, int, int));
451 1.1 itohy /* fff4 lb31 w l l */ void DOS_DISKWRT2 __P((const void *, int, int, int));
452 1.1 itohy /* fff5 */ struct dos_indos *DOS_INDOSFLG __P((void));
453 1.1 itohy /* fff6 l ; super_jsr sv */ void DOS_SUPER_JSR __P((void (*) __P((void)), struct dos_dregs *, struct dos_dregs *));
454 1.1 itohy /* fff7 l l w ; alias DOS_BUS_ERR e */ int DOS_MEMCPY __P((void *, void *, int));
455 1.1 itohy int DOS_BUS_ERR __P((void *, void *, int));
456 1.1 itohy /* fff8 l w l l w l l l ; e */ int DOS_OPEN_PR __P((const char *, int, int, int, int, int, struct dos_prcctrl *, long));
457 1.1 itohy /* fff9 ; e */ int DOS_KILL_PR __P((void));
458 1.1 itohy /* fffa w l ; e */ int DOS_GET_PR __P((int, struct dos_prcptr *));
459 1.1 itohy /* fffb w ; ep */ int DOS_SUSPEND_PR __P((int));
460 1.1 itohy /* fffc l */ int DOS_SLEEP_PR __P((long));
461 1.1 itohy /* fffd w w w l l ; ep */ int DOS_SEND_PR __P((int, int, int, char *, long));
462 1.1 itohy /* fffe */ long DOS_TIME_PR __P((void));
463 1.1 itohy /* ffff */ void DOS_CHANGE_PR __P((void));
464 1.1 itohy
465 1.1 itohy #endif /* __X68K_DOS_H__ */
466