home *** CD-ROM | disk | FTP | other *** search
- /*
- * OSBIND.H Mnemonic names for operating system calls
- *
- * Adapted from Dale Schumacher's version to Mark Johnson C by Eric Gisin.
- * Notes:
- * There are bugs in MJ C's macro expansion.
- * If you get syntax errors using these macros,
- * Try enclosing the macro call with asm() and compile.
- * Then look at the yc.out to see the macro expansion.
- */
-
- /*
- * GEMDOS (trap1)
- */
- #define Pterm0() trap(1,0x00)
- #define Cconin() trap(1,0x01)
- #define Cconout(c) trap(1,0x02,c)
- #define Cauxin() trap(1,0x03)
- #define Cauxout(c) trap(1,0x04,c)
- #define Cprnout(c) trap(1,0x05,c)
- #define Crawio(data) trap(1,0x06,data)
- #define Crawcin() trap(1,0x07)
- #define Cnecin() trap(1,0x08)
- #define Cconws(s) trap(1,0x09,s)
- #define Cconrs(buf) trap(1,0x0A,buf)
- #define Cconis() (int)trap(1,0x0B)
- #define Dsetdrv(d) trap(1,0x0E,d)
- #define Cconos() trap(1,0x10)
- #define Cprnos() trap(1,0x11)
- #define Cauxis() trap(1,0x12)
- #define Cauxos() trap(1,0x13)
- #define Dgetdrv() (int)trap(1,0x19)
- #define Fsetdta(dta) trap(1,0x1A,dta)
- #define Super(ptr) trap(1,0x20,ptr)
- #define Tgetdate() (int)trap(1,0x2A)
- #define Tsetdate(date) trap(1,0x2B,date)
- #define Tgettime() (int)trap(1,0x2C)
- #define Tsettime(time) trap(1,0x2D,time)
- #define Fgetdta() trap(1,0x2F)
- #define Sversion() (int)trap(1,0x30)
- #define Ptermres(save,rv) trap(1,0x31,save,rv)
- #define Dfree(buf,d) trap(1,0x36,buf,d)
- #define Dcreate(path) trap(1,0x39,path)
- #define Ddelete(path) trap(1,0x3A,path)
- #define Dsetpath(path) trap(1,0x3B,path)
- #define Fcreate(fn,mode) trap(1,0x3C,fn,mode)
- #define Fopen(fn,mode) trap(1,0x3D,fn,mode)
- #define Fclose(H) trap(1,0x3E,H)
- #define Fread(H,cnt,buf) trap(1,0x3F,H,cnt,buf)
- #define Fwrite(H,cnt,buf) trap(1,0x40,H,cnt,buf)
- #define Fdelete(fn) trap(1,0x41,fn)
- #define Fseek(where,H,how) trap(1,0x42,where,H,how)
- #define Fattrib(fn,rwflag,attr) trap(1,0x43,fn,rwflag,attr)
- #define Fdup(H) trap(1,0x45,H)
- #define Fforce(Hstd,Hnew) trap(1,0x46,Hstd,Hnew)
- #define Dgetpath(buf,d) trap(1,0x47,buf,d)
- #define Malloc(size) trap(1,0x48,size)
- #define Mfree(ptr) trap(1,0x49,ptr)
- #define Mshrink(ptr,size) trap(1,0x4A,0,ptr,size)
- #define Pexec(mode,prog,tail,env) trap(1,0x4B,mode,prog,tail,env)
- #define Pterm(rv) trap(1,0x4C,rv)
- #define Fsfirst(filespec,attr) (int)trap(1,0x4E,filespec,attr)
- #define Fsnext() (int)trap(1,0x4F)
- #define Frename(zero,old,new) trap(1,0x56,zero,old,new)
- #define Fdatime(timeptr,H,rwflag) trap(1,0x57,timeptr,H,rwflag)
-
- /*
- * BIOS (trap13)
- */
- #define Bconstat(DEV) trap(13,1,DEV)
- #define Bconin(DEV) trap(13,2,DEV)
- #define Bconout(DEV,c) trap(13,3,DEV,c)
- #define Rwabs(rwflag,buf,n,sector,d) trap(13,4,rwflag,buf,n,sector,d)
- #define Setexc(vnum,vptr) trap(13,5,vnum,vptr)
- #define Tickcal() trap(13,6)
- #define Getbpb(d) trap(13,7,d)
- #define Bcostat(DEV) trap(13,8,DEV)
- #define Mediach(d) trap(13,9,a)
- #define Drvmap() trap(13,10)
- #define Getshift() trap(13,11,-1)
- #define Kbshift(data) trap(13,11,data)
-
- /*
- * XBIOS (trap14)
- */
- #define Initmous(type,param,vptr) trap(14,0,type,param,vptr)
- #define Physbase() trap(14,2)
- #define Logbase() trap(14,3)
- #define Getrez() (int)trap(14,4)
- #define Setscreen(lscrn,pscrn,rez) trap(14,5,lscrn,pscrn,rez)
- #define Setpallete(palptr) trap(14,6,palptr)
- #define Setcolor(colornum,mixture) trap(14,7,colornum,mixture)
- #define Floprd(buf,x,d,sect,trk,side,n) trap(14,8,buf,x,d,sect,trk,side,n)
- #define Flopwr(buf,x,d,sect,trk,side,n) trap(14,9,buf,x,d,sect,trk,side,n)
- #define Flopfmt(b,x,d,spt,trk,sd,i,m,v) trap(14,10,b,x,d,spt,trk,sd,i,m,v)
- #define Midiws(cnt,ptr) trap(14,12,cnt,ptr)
- #define Mfpint(vnum,vptr) trap(14,13,vnum,vptr)
- #define Iorec(ioDEV) trap(14,14,ioDEV)
- #define Rsconf(baud,flow,uc,rs,ts,sc) trap(14,15,baud,flow,uc,rs,ts,sc)
- #define Keytbl(nrml,shft,caps) trap(14,16,nrml,shft,caps)
- #define Random() trap(14,17)
- #define Protobt(buf,serial,dsktyp,exec) trap(14,18,buf,serial,dsktyp,exec)
- #define Flopver(buf,x,d,sect,trk,sd,n) trap(14,19,buf,x,d,sect,trk,sd,n)
- #define Scrdmp() trap(14,20)
- #define Cursconf(func,rate) trap(14,21,func,rate)
- #define Settime(time) trap(14,22,time)
- #define Gettime() trap(14,23)
- #define Bioskeys() trap(14,24)
- #define Ikbdws(len_minus1,ptr) trap(14,25,len_minus1,ptr)
- #define Jdisint(vnum) trap(14,26,vnum)
- #define Jenabint(vnum) trap(14,27,vnum)
- #define Giaccess(data,reg) trap(14,28,data,reg)
- #define Offgibit(ormask) trap(14,29,ormask)
- #define Ongibit(andmask) trap(14,30,andmask)
- #define Xbtimer(timer,ctrl,data,vnum) trap(14,31,timer,ctrl,data,vnum)
- #define Dosound(ptr) trap(14,32,ptr)
- #define Setprt(config) trap(14,33,config)
- #define Kbdvbase() trap(14,34)
- #define Kbrate(delay,reprate) trap(14,35,delay,reprate)
- #define Prtblk(pblkptr) trap(14,36,pblkptr)
- #define Vsync() trap(14,37)
- #define Supexec(funcptr) trap(14,38,funcptr)
-
-