| 1 | /** | 
|---|
| 2 | * | 
|---|
| 3 | * This file contains macro definitions for use with the Atari specific | 
|---|
| 4 | * functions gemdos,bios and xbios (see manual section 5.5) | 
|---|
| 5 | * | 
|---|
| 6 | **/ | 
|---|
| 7 |  | 
|---|
| 8 | extern bios(); | 
|---|
| 9 | extern xbios(); | 
|---|
| 10 | extern gemdos(); | 
|---|
| 11 |  | 
|---|
| 12 | /* GEMDOS functions (trap #1) */ | 
|---|
| 13 |  | 
|---|
| 14 | #define Pterm0()       gemdos(0x0) | 
|---|
| 15 | #define Cconin()       gemdos(0x1) | 
|---|
| 16 | #define Cconout(a)     gemdos(0x2,a) | 
|---|
| 17 | #define Cauxin()       gemdos(0x3) | 
|---|
| 18 | #define Cauxout(a)     gemdos(0x4,a) | 
|---|
| 19 | #define Cprnout(a)     gemdos(0x5,a) | 
|---|
| 20 | #define Crawio(a)      gemdos(0x6,a) | 
|---|
| 21 | #define Crawcin()      gemdos(0x7) | 
|---|
| 22 | #define Cnecin()       gemdos(0x8) | 
|---|
| 23 | #define Cconws(a)      gemdos(0x9,a) | 
|---|
| 24 | #define Cconrs(a)      gemdos(0x0a,a) | 
|---|
| 25 | #define Cconis()       gemdos(0x0b) | 
|---|
| 26 | #define Dsetdrv(a)     gemdos(0x0e,a) | 
|---|
| 27 | #define Cconos()       gemdos(0x10) | 
|---|
| 28 | #define Cprnos()       gemdos(0x11) | 
|---|
| 29 | #define Cauxis()       gemdos(0x12) | 
|---|
| 30 | #define Cauxos()       gemdos(0x13) | 
|---|
| 31 | #define Dgetdrv()      gemdos(0x19) | 
|---|
| 32 | #define Fsetdta(a)     gemdos(0x1a,a) | 
|---|
| 33 | #define Super(a)       gemdos(0x20,a) | 
|---|
| 34 | #define Tgetdate()     gemdos(0x2a) | 
|---|
| 35 | #define Tsetdate(a)    gemdos(0x2b,a) | 
|---|
| 36 | #define Tgettime()     gemdos(0x2c) | 
|---|
| 37 | #define Tsettime(a)    gemdos(0x2d,a) | 
|---|
| 38 | #define Fgetdta()      gemdos(0x2f) | 
|---|
| 39 | #define Sversion()     gemdos(0x30) | 
|---|
| 40 | #define Ptermres(a,b)  gemdos(0x31,a,b) | 
|---|
| 41 | #define Dfree(a,b)     gemdos(0x36,a,b) | 
|---|
| 42 | #define Dcreate(a)     gemdos(0x39,a) | 
|---|
| 43 | #define Ddelete(a)     gemdos(0x3a,a) | 
|---|
| 44 | #define Dsetpath(a)    gemdos(0x3b,a) | 
|---|
| 45 | #define Fcreate(a,b)   gemdos(0x3c,a,b) | 
|---|
| 46 | #define Fopen(a,b)     gemdos(0x3d,a,b) | 
|---|
| 47 | #define Fclose(a)      gemdos(0x3e,a) | 
|---|
| 48 | #define Fread(a,b,c)   gemdos(0x3f,a,b,c) | 
|---|
| 49 | #define Fwrite(a,b,c)  gemdos(0x40,a,b,c) | 
|---|
| 50 | #define Fdelete(a)     gemdos(0x41,a) | 
|---|
| 51 | #define Fseek(a,b,c)   gemdos(0x42,a,b,c) | 
|---|
| 52 | #define Fattrib(a,b,c) gemdos(0x43,a,b,c) | 
|---|
| 53 | #define Fdup(a)        gemdos(0x45,a) | 
|---|
| 54 | #define Fforce(a,b)    gemdos(0x46,a,b) | 
|---|
| 55 | #define Dgetpath(a,b)  gemdos(0x47,a,b) | 
|---|
| 56 | #define Malloc(a)      gemdos(0x48,a) | 
|---|
| 57 | #define Mfree(a)       gemdos(0x49,a) | 
|---|
| 58 | #define Mshrink(a,b)   gemdos(0x4a,0,a,b)   /* NOTE: Null parameter added */ | 
|---|
| 59 | #define Pexec(a,b,c,d) gemdos(0x4b,a,b,c,d) | 
|---|
| 60 | #define Pterm(a)       gemdos(0x4c,a) | 
|---|
| 61 | #define Fsfirst(a,b)   gemdos(0x4e,a,b) | 
|---|
| 62 | #define Fsnext()       gemdos(0x4f) | 
|---|
| 63 | #define Frename(a,b,c) gemdos(0x56,a,b,c) | 
|---|
| 64 | #define Fdatime(a,b,c) gemdos(0x57,a,b,c) | 
|---|
| 65 |  | 
|---|
| 66 | /* BIOS functions (trap #13) */ | 
|---|
| 67 |  | 
|---|
| 68 | #define Bconstat(a)      bios(1,a) | 
|---|
| 69 | #define Bconin(a)        bios(2,a) | 
|---|
| 70 | #define Bconout(a,b)     bios(3,a,b) | 
|---|
| 71 | #define Rwabs(a,b,c,d,e) bios(4,a,b,c,d,e) | 
|---|
| 72 | #define Setexc(a,b)      bios(5,a,b) | 
|---|
| 73 | #define Bcostat(a)       bios(8,a) | 
|---|
| 74 | #define Mediach(a)       bios(9,a) | 
|---|
| 75 | #define Drvmap()         bios(10) | 
|---|
| 76 | #define Getshift()       bios(11) | 
|---|
| 77 |  | 
|---|
| 78 | /* XBIOS functions (trap #14) */ | 
|---|
| 79 |  | 
|---|
| 80 | #define Initmous(a,b,c)        xbios(0,a,b,c) | 
|---|
| 81 | #define Physbase()             xbios(2) | 
|---|
| 82 | #define Logbase()              xbios(3) | 
|---|
| 83 | #define Getrez()               xbios(4) | 
|---|
| 84 | #define Setscreen(a,b,c)       xbios(5,a,b,c) | 
|---|
| 85 | #define Setpallete(a)          xbios(6,a) | 
|---|
| 86 | #define Setcolor(a,b)          xbios(7,a,b) | 
|---|
| 87 | #define Floprd(a,b,c,d,e,f,g)  xbios(8,a,b,c,d,e,f,g) | 
|---|
| 88 | #define Flopwr(a,b,c,d,e,f,g)  xbios(9,a,b,c,d,e,f,g) | 
|---|
| 89 | #define Midiws(a,b)            xbios(12,a,b) | 
|---|
| 90 | #define Mfpint(a,b)            xbios(13,a,b) | 
|---|
| 91 | #define Iorec(a)               xbios(14,a) | 
|---|
| 92 | #define Rsconf(a,b,c,d,e,f)    xbios(15,a,b,c,d,e,f) | 
|---|
| 93 | #define Keytbl(a,b,c)          xbios(16,a,b,c) | 
|---|
| 94 | #define Random()               xbios(17) | 
|---|
| 95 | #define Protobt(a,b,c,d)       xbios(18,a,b,c,d) | 
|---|
| 96 | #define Flopver(a,b,c,d,e,f,g) xbios(19,a,b,c,d,e,f,g) | 
|---|
| 97 | #define Prtblk()               xbios(20) | 
|---|
| 98 | #define Cursconf(a,b)          xbios(21,a,b) | 
|---|
| 99 | #define Settime(a)             xbios(22,a) | 
|---|
| 100 | #define Gettime()              xbios(23) | 
|---|
| 101 | #define Bioskeys()             xbios(24) | 
|---|
| 102 | #define Ikbdws(a,b)            xbios(25,a,b) | 
|---|
| 103 | #define Jdisint(a)             xbios(26,a) | 
|---|
| 104 | #define Jenabint(a)            xbios(27,a) | 
|---|
| 105 | #define Giaccess(a,b)          xbios(28,a,b) | 
|---|
| 106 | #define Offgibit(a)            xbios(29,a) | 
|---|
| 107 | #define Ongibit(a)             xbios(30,a) | 
|---|
| 108 | #define Xbtimer(a,b,c,d)       xbios(31,a,b,c,d) | 
|---|
| 109 | #define Dosound(a)             xbios(32,a) | 
|---|
| 110 | #define Setprt(a)              xbios(33,a) | 
|---|
| 111 | #define Kbdvbase()             xbios(34) | 
|---|
| 112 | #define Kbrate(a,b)            xbios(35,a,b) | 
|---|
| 113 | /* #define Prtblk()               xbios(36) */ | 
|---|
| 114 | #define Vsync()                xbios(37) | 
|---|
| 115 | #define Supexec(a)             xbios(38,a) | 
|---|