/* * OSBIND.H Mnemonic names for operating system calls */ #ifndef _OSBIND_H #define _OSBIND_H extern long gemdos(); extern long bios(); extern long xbios(); extern int bdos(); /* * GEMDOS (trap1) */ #define Pterm0() gemdos(0x00) #define Cconin() gemdos(0x01) #define Cconout(c) gemdos(0x02,c) #define Cauxin() (int)gemdos(0x03) #define Cauxout(c) gemdos(0x04,c) #define Cprnout(c) (int)gemdos(0x05,c) #define Crawio(data) gemdos(0x06,data) #define Crawcin() gemdos(0x07) #define Cnecin() gemdos(0x08) #define Cconws(s) gemdos(0x09,s) #define Cconrs(buf) gemdos(0x0A,buf) #define Cconis() (int)gemdos(0x0B) #define Dsetdrv(d) gemdos(0x0E,d) #define Cconos() (int)gemdos(0x10) #define Cprnos() (int)gemdos(0x11) #define Cauxis() (int)gemdos(0x12) #define Cauxos() (int)gemdos(0x13) #define Maddalt(start, size) gemdos(20, start, size) #define Dgetdrv() (int)gemdos(0x19) #define Fsetdta(dta) gemdos(0x1A,dta) #define Super(ptr) gemdos(0x20,ptr) #define Tgetdate() (unsigned int)gemdos(0x2A) #define Tsetdate(date) (int)gemdos(0x2B,date) #define Tgettime() (unsigned int)gemdos(0x2C) #define Tsettime(time) (int)gemdos(0x2D,time) #define Fgetdta() (struct Dta *)gemdos(0x2F) #define Sversion() (int)gemdos(0x30) #define Ptermres(save,rv) gemdos(0x31,save,rv) #define Dfree(buf,d) gemdos(0x36,buf,d) #define Dcreate(path) (int)gemdos(0x39,path) #define Ddelete(path) (int)gemdos(0x3A,path) #define Dsetpath(path) (int)gemdos(0x3B,path) #define Fcreate(fn,mode) (int)gemdos(0x3C,fn,mode) #define Fopen(fn,mode) (int)gemdos(0x3D,fn,mode) #define Fclose(h) (int)gemdos(0x3E,h) #define Fread(h,cnt,buf) gemdos(0x3F,h,cnt,buf) #define Fwrite(h,cnt,buf) gemdos(0x40,h,cnt,buf) #define Fdelete(fn) (int)gemdos(0x41,fn) #define Fseek(where,h,how) gemdos(0x42,where,h,how) #define Fattrib(fn,rwflag,attr) (int)gemdos(0x43,fn,rwflag,attr) #define Mxalloc(amount, mode) (void *)gemdos(68, amount, mode) #define Fdup(h) (int)gemdos(0x45,h) #define Fforce(hstd,hnew) (int)gemdos(0x46,hstd,hnew) #define Dgetpath(buf,d) (int)gemdos(0x47,buf,d) #define Malloc(size) (void *)gemdos(0x48,size) #define Mfree(ptr) (int)gemdos(0x49,ptr) #define Mshrink(ptr,size) (int)gemdos(0x4A,0,ptr,size) #define Pexec(mode,prog,tail,env) gemdos(0x4B,mode,prog,tail,env) #define Pterm(rv) gemdos(0x4C,rv) #define Fsfirst(filespec,attr) (int)gemdos(0x4E,filespec,attr) #define Fsnext() (int)gemdos(0x4F) #define Frename(zero,old,new) (int)gemdos(0x56,zero,old,new) #define Fdatime(timeptr,h,rwflag) gemdos(0x57,timeptr,h,rwflag) #define Flock(handle, mode,start,length) gemdos(92, handle, mode,start,length) /* * BIOS (trap13) */ #define Bconstat(dev) bios(1,dev) #define Bconin(dev) bios(2,dev) #define Bconout(dev,c) bios(3,dev,c) #define Rwabs(rwflag,buf,n,sector,d) bios(4,rwflag,buf,n,sector,d) #define Setexc(vnum,vptr) bios(5,vnum,vptr) #define Tickcal() bios(6) #define Getbpb(d) (struct Bpb *)bios(7,d) #define Bcostat(dev) bios(8,dev) #define Mediach(d) bios(9,a) #define Drvmap() bios(10) #define Getshift() bios(11,-1) #define Kbshift(data) bios(11,data) /* * XBIOS (trap14) */ #define Initmous(type,param,vptr) xbios(0,type,param,vptr) #define Physbase() (void *)xbios(2) #define Logbase() (void *)xbios(3) #define Getrez() (int)xbios(4) #define Setscreen(lscrn,pscrn,rez) xbios(5,lscrn,pscrn,rez) #define Setpalette(palptr) xbios(6,palptr) #define Setcolor(colornum,mixture) xbios(7,colornum,mixture) #define Floprd(buf,x,d,sect,trk,side,n) xbios(8,buf,x,d,sect,trk,side,n) #define Flopwr(buf,x,d,sect,trk,side,n) xbios(9,buf,x,d,sect,trk,side,n) #define Flopfmt(b,x,d,spt,trk,sd,i,m,v) xbios(10,b,x,d,spt,trk,sd,i,m,v) #define Midiws(cnt,ptr) xbios(12,cnt,ptr) #define Mfpint(vnum,vptr) xbios(13,vnum,vptr) #define Iorec(iodev) (struct Iorec *)xbios(14,iodev) #define Rsconf(baud,flow,uc,rs,ts,sc) (unsigned long)xbios(15,baud,flow,uc,rs,ts,sc) #define Keytbl(nrml,shft,caps) (struct Keytab *)xbios(16,nrml,shft,caps) #define Random() xbios(17) #define Protobt(buf,serial,dsktyp,exec) xbios(18,buf,serial,dsktyp,exec) #define Flopver(buf,x,d,sect,trk,sd,n) xbios(19,buf,x,d,sect,trk,sd,n) #define Scrdmp() xbios(20) #define Cursconf(func,rate) xbios(21,func,rate) #define Settime(time) xbios(22,time) #define Gettime() xbios(23) #define Bioskeys() xbios(24) #define Ikbdws(len_minus1,ptr) xbios(25,len_minus1,ptr) #define Jdisint(vnum) xbios(26,vnum) #define Jenabint(vnum) xbios(27,vnum) #define Giaccess(data,reg) (char)xbios(28,data,reg) #define Offgibit(ormask) xbios(29,ormask) #define Ongibit(andmask) xbios(30,andmask) #define Xbtimer(timer,ctrl,data,vnum) xbios(31,timer,ctrl,data,vnum) #define Dosound(ptr) xbios(32,ptr) #define Setprt(config) xbios(33,config) #define Kbdvbase() (struct Kbdvecs *)xbios(34) #define Kbrate(delay,reprate) (int)xbios(35,delay,reprate) #define Prtblk(pblkptr) xbios(36,pblkptr) #define Vsync() xbios(37) #define Supexec(funcptr) xbios(38,funcptr) #define Puntaes() xbios(39) #define Floprate(drive, seekrate) xbios(41,drive, seekrate) #define DMAread(sector, count, buffer, devno) xbios(42,sector, count, buffer, devno) #define DMAwrite(sector, count, buffer, devno) xbios(43,sector, count, buffer, devno) #define Bconmap(devno) xbios(44,devno) #define NMVaccess(op, start,count,buffer) xbios(46,op, start,count,buffer) #define Metainit(buffer) xbios(48,buffer) #define Blitmode(mode) xbios(64,mode) #define EsetShift(shftMode) xbios(80, shftMode) #define EgetShift() xbios(81) #define Esetbank(bankNum) xbios(82, bankNum) #define EsetColor(colorNum, color) xbios(83,colorNum, color) #define EsetPalette(colorNum, count, palettePtr) xbios(84,colorNum, count, palettePtr) #define EgetPalette(colorNum, count, palettePtr) xbios(85,colorNum, count, palettePtr) #define EsetGray(switch) xbios(86, switch) #define EsetSmear(switch) xbios(87,switch) #endif _OSBIND_H