/* This file is autogenerated using make-stubs.sh, do not edit */ #ifndef robois_c_stubs_h #define robois_c_stubs_h #include "types.h" /* * The stubs are only available when cross compiling user programs to * the Eyebot. */ #if defined(__mc68000__) /* * Calculate the function pointer on the spot. * Grab the value of the pointer at address 4 and add offset to it. * This address is then casted to a function pointer with the correct * prototype. */ __ROBIOS_BEGIN_DECLS #define AUBeep (( int (*) (void) ) (*((char**)4)+ 294 )) #define AUCaptureMic (( int (*) (void) ) (*((char**)4)+ 312 )) #define AUCheckRecord (( int (*) (void) ) (*((char**)4)+ 306 )) #define AUCheckSample (( int (*) (void) ) (*((char**)4)+ 276 )) #define AUCheckTone (( int (*) (void) ) (*((char**)4)+ 288 )) #define AUPlaySample (( long (*) (BYTE *sample ) ) (*((char**)4)+ 270 )) #define AURecordSample (( long (*) (BYTE *buf, long len, long freq) ) (*((char**)4)+ 300 )) #define AUTone (( int (*) (int freq, int dur) ) (*((char**)4)+ 282 )) #define BUMPCheck (( int (*) (BumpHandle handle, int *time_stamp) ) (*((char**)4)+ 648 )) #define BUMPInit (( BumpHandle (*) (DeviceSemantics semantics) ) (*((char**)4)+ 636 )) #define BUMPRelease (( int (*) (BumpHandle handle) ) (*((char**)4)+ 642 )) #define CAMGet (( int (*) (int *para1, int *para2, int *para3) ) (*((char**)4)+ 108 )) #define CAMGetColFrame (( int (*) (colimage * buf, int convert) ) (*((char**)4)+ 258 )) #define CAMGetFrame (( int (*) (image * buf) ) (*((char**)4)+ 96 )) #define CAMGetFrameBayer (( int (*) (BYTE *picture) ) (*((char**)4)+ 1098 )) #define CAMGetFrameMono (( int (*) (BYTE *picture) ) (*((char**)4)+ 1086 )) #define CAMGetFrameRGB (( int (*) (BYTE *picture) ) (*((char**)4)+ 1092 )) #define CAMInit (( int (*) (int zoom) ) (*((char**)4)+ 90 )) #define CAMMode (( int (*) (int mode) ) (*((char**)4)+ 162 )) #define CAMRelease (( int (*) (void) ) (*((char**)4)+ 1026 )) #define CAMSet (( int (*) (int para1, int para2, int para3) ) (*((char**)4)+ 102 )) #define COMPASSCalibrate (( int (*) (int mode) ) (*((char**)4)+ 990 )) #define COMPASSCheck (( int (*) (void) ) (*((char**)4)+ 978 )) #define COMPASSGet (( int (*) (void) ) (*((char**)4)+ 984 )) #define COMPASSInit (( int (*) (DeviceSemantics semantics) ) (*((char**)4)+ 954 )) #define COMPASSRelease (( int (*) (void) ) (*((char**)4)+ 972 )) #define COMPASSStart (( int (*) (BOOL cycle) ) (*((char**)4)+ 960 )) #define COMPASSStop (( int (*) (void) ) (*((char**)4)+ 966 )) #define HDTFindEntry (( void * (*) (TypeID type_id,DeviceSemantics semantics) ) (*((char**)4)+ 996 )) #define IPColor2Grey (( int (*) (colimage *buf1, image *buf2) ) (*((char**)4)+ 264 )) #define IPDiffer (( int (*) (image *buf1, image *buf2, image *buf3) ) (*((char**)4)+ 132 )) #define IPDither (( int (*) (image *buf1, image *buf2) ) (*((char**)4)+ 126 )) #define IPLaplace (( int (*) (image *buf1, image *buf2) ) (*((char**)4)+ 114 )) #define IPSobel (( int (*) (image *buf1, image *buf2) ) (*((char**)4)+ 120 )) #define IRInit (( IRHandle (*) (DeviceSemantics semantics) ) (*((char**)4)+ 654 )) #define IRRead (( int (*) (IRHandle handle) ) (*((char**)4)+ 666 )) #define IRRelease (( int (*) (IRHandle handle) ) (*((char**)4)+ 660 )) #define IRTVDecodeRaw (( int (*) (const int bits[2], int count, int type) ) (*((char**)4)+ 1074 )) #define IRTVFlush (( void (*) (void) ) (*((char**)4)+ 1062 )) #define IRTVGet (( int (*) (void) ) (*((char**)4)+ 1056 )) #define IRTVGetRaw (( void (*) (int bits[2], int *count, int *duration, int *id, int *clock) ) (*((char**)4)+ 1068 )) #define IRTVInit (( int (*) (int type, int length, int tog_mask, int inv_mask, int mode, int bufsize, int delay) ) (*((char**)4)+ 1032 )) #define IRTVInitHDT (( int (*) (DeviceSemantics semantics) ) (*((char**)4)+ 1080 )) #define IRTVPressed (( int (*) (void) ) (*((char**)4)+ 1044 )) #define IRTVRead (( int (*) (void) ) (*((char**)4)+ 1050 )) #define IRTVTerm (( void (*) (void) ) (*((char**)4)+ 1038 )) #define KEYGet (( int (*) (void) ) (*((char**)4)+ 72 )) #define KEYGetBuf (( int (*) (char *buf) ) (*((char**)4)+ 480 )) #define KEYRead (( int (*) (void) ) (*((char**)4)+ 78 )) #define KEYWait (( int (*) (int key ) ) (*((char**)4)+ 84 )) #define LCDArea (( int (*) (int x1, int y1, int x2, int y2, int col) ) (*((char**)4)+ 756 )) #define LCDClear (( int (*) (void) ) (*((char**)4)+ 18 )) #define LCDGetPixel (( int (*) (int row, int col) ) (*((char**)4)+ 222 )) #define LCDGetPos (( int (*) (int *row, int *column) ) (*((char**)4)+ 510 )) #define LCDInvertPixel (( int (*) (int row, int col) ) (*((char**)4)+ 234 )) #define LCDLine (( int (*) (int x1, int y1, int x2, int y2, int col) ) (*((char**)4)+ 750 )) #define LCDMenu (( int (*) (const char *k0, const char *k1, const char *k2, const char *k3) ) (*((char**)4)+ 66 )) #define LCDMenuI (( int (*) (int key, const char *string) ) (*((char**)4)+ 786 )) #define LCDMode (( int (*) (int mode) ) (*((char**)4)+ 48 )) #define LCDPrintf (( int (*) (const char format[], ...) ) (*((char**)4)+ 936 )) #define LCDPutChar (( int (*) (char buf) ) (*((char**)4)+ 24 )) #define LCDPutColorGraphic (( int (*) (colimage *colimg) ) (*((char**)4)+ 942 )) #define LCDPutFloat (( int (*) (float f) ) (*((char**)4)+ 1008 )) #define LCDPutFloatS (( int (*) (float f, int minsp, int decimals) ) (*((char**)4)+ 1014 )) #define LCDPutGraphic (( int (*) (image *img) ) (*((char**)4)+ 60 )) #define LCDPutHex (( int (*) (int val) ) (*((char**)4)+ 906 )) #define LCDPutHex1 (( int (*) (int val) ) (*((char**)4)+ 912 )) #define LCDPutImage (( int (*) (BYTE *img) ) (*((char**)4)+ 792 )) #define LCDPutInt (( int (*) (int val) ) (*((char**)4)+ 918 )) #define LCDPutIntS (( int (*) (int val, int spaces) ) (*((char**)4)+ 924 )) #define LCDPutString (( int (*) (char *buf) ) (*((char**)4)+ 36 )) #define LCDSetChar (( int (*) (int row, int column, char ch) ) (*((char**)4)+ 30 )) #define LCDSetPixel (( int (*) (int row, int col, int value) ) (*((char**)4)+ 228 )) #define LCDSetPos (( int (*) (int row, int col) ) (*((char**)4)+ 54 )) #define LCDSetPrintf (( int (*) (unsigned int row, unsigned int column, const char format[], ...) ) (*((char**)4)+ 1020 )) #define LCDSetString (( int (*) (int row, int col, char *buf) ) (*((char**)4)+ 42 )) #define MOTORDrive (( int (*) (MotorHandle handle,int speed) ) (*((char**)4)+ 336 )) #define MOTORInit (( MotorHandle (*) (DeviceSemantics semantics) ) (*((char**)4)+ 330 )) #define MOTORRelease (( int (*) (MotorHandle handle) ) (*((char**)4)+ 348 )) #define OSAttachTimer (( TimerHandle (*) (int scale, TimerFnc function) ) (*((char**)4)+ 810 )) #define OSCheckInRS232 (( int (*) (int face) ) (*((char**)4)+ 534 )) #define OSCheckOutRS232 (( int (*) (int face) ) (*((char**)4)+ 540 )) #define OSDetachTimer (( int (*) (TimerHandle handle) ) (*((char**)4)+ 816 )) #define OSDisable (( int (*) (void) ) (*((char**)4)+ 156 )) #define OSDownload (( int (*) (char *name,int *bytes,int baudrate, int handshake, int face) ) (*((char**)4)+ 210 )) #define OSEnable (( int (*) (void) ) (*((char**)4)+ 150 )) #define OSError (( int (*) (char *msg,int number,BOOL deadend) ) (*((char**)4)+ 468 )) #define OSExit (( int (*) (int code) ) (*((char**)4)+ 414 )) #define OSFlushInRS232 (( int (*) (int face) ) (*((char**)4)+ 456 )) #define OSFlushOutRS232 (( int (*) (int face) ) (*((char**)4)+ 462 )) #define OSForbid (( int (*) (void) ) (*((char**)4)+ 144 )) #define OSGetAD (( int (*) (int channel) ) (*((char**)4)+ 588 )) #define OSGetCount (( int (*) (void) ) (*((char**)4)+ 474 )) #define OSGetTime (( int (*) (int *hrs,int *mins,int *secs,int *ticks) ) (*((char**)4)+ 174 )) #define OSGetUID (( int (*) (struct tcb *thread) ) (*((char**)4)+ 444 )) #define OSGetVar (( int (*) (int varnum) ) (*((char**)4)+ 240 )) #define OSInitRS232 (( int (*) (int baudrate, int handshake, int face) ) (*((char**)4)+ 198 )) #define OSKill (( int (*) (struct tcb *thread) ) (*((char**)4)+ 408 )) #define OSMTInit (( int (*) (BYTE mode) ) (*((char**)4)+ 366 )) #define OSMTStatus (( int (*) (void) ) (*((char**)4)+ 552 )) #define OSMachineID (( unsigned char (*) (void) ) (*((char**)4)+ 558 )) #define OSMachineName (( char * (*) (void) ) (*((char**)4)+ 546 )) #define OSMachineSpeed (( int (*) (void) ) (*((char**)4)+ 204 )) #define OSMachineType (( int (*) (void) ) (*((char**)4)+ 354 )) #define OSOffAD (( int (*) (int mode) ) (*((char**)4)+ 594 )) #define OSPanic (( int (*) (char *string) ) (*((char**)4)+ 438 )) #define OSPermit (( int (*) (void) ) (*((char**)4)+ 138 )) #define OSPutVar (( int (*) (int varnum, int value) ) (*((char**)4)+ 246 )) #define OSReadInLatch (( BYTE (*) (int latchnr) ) (*((char**)4)+ 582 )) #define OSReadOutLatch (( BYTE (*) (int latchnr) ) (*((char**)4)+ 576 )) #define OSReadParCTRL (( BYTE (*) (void) ) (*((char**)4)+ 744 )) #define OSReadParData (( BYTE (*) (void) ) (*((char**)4)+ 720 )) #define OSReadParSR (( BYTE (*) (void) ) (*((char**)4)+ 732 )) #define OSReady (( int (*) (struct tcb *thread) ) (*((char**)4)+ 378 )) #define OSRecvRS232 (( int (*) (char *chara, int face) ) (*((char**)4)+ 192 )) #define OSReschedule (( int (*) (void) ) (*((char**)4)+ 390 )) #define OSRun (( int (*) (struct tcb *thread) ) (*((char**)4)+ 402 )) #define OSSemInit (( int (*) (struct sem *sem, int val) ) (*((char**)4)+ 420 )) #define OSSemP (( int (*) (struct sem *sem) ) (*((char**)4)+ 426 )) #define OSSemV (( int (*) (struct sem *sem) ) (*((char**)4)+ 432 )) #define OSSendCharRS232 (( int (*) (const char ch, const int face) ) (*((char**)4)+ 948 )) #define OSSendRS232 (( int (*) (const char *ch, const int face) ) (*((char**)4)+ 186 )) #define OSSetTime (( int (*) (int hrs,int mins,int secs) ) (*((char**)4)+ 168 )) #define OSShowTime (( int (*) (void) ) (*((char**)4)+ 180 )) #define OSSleep (( int (*) (int hsecs) ) (*((char**)4)+ 450 )) #define OSSpawn (( struct tcb * (*) (char *name, void (*code)(void), int stksiz, int pri, int uid) ) (*((char**)4)+ 372 )) #define OSSuspend (( int (*) (struct tcb *thread) ) (*((char**)4)+ 384 )) #define OSVersion (( const char * (*) (void) ) (*((char**)4)+ 1002 )) #define OSWait (( int (*) (int hsecs) ) (*((char**)4)+ 216 )) #define OSWriteOutLatch (( BYTE (*) (int latchnr, BYTE mask, BYTE value) ) (*((char**)4)+ 570 )) #define OSWriteParCTRL (( void (*) (BYTE value) ) (*((char**)4)+ 738 )) #define OSWriteParData (( void (*) (BYTE value) ) (*((char**)4)+ 726 )) #define OSYield (( int (*) (void) ) (*((char**)4)+ 396 )) #define PSDCheck (( BOOL (*) (void) ) (*((char**)4)+ 498 )) #define PSDGet (( int (*) (PSDHandle handle) ) (*((char**)4)+ 492 )) #define PSDGetRaw (( int (*) (PSDHandle handle) ) (*((char**)4)+ 516 )) #define PSDInit (( PSDHandle (*) (DeviceSemantics semantics) ) (*((char**)4)+ 522 )) #define PSDRelease (( int (*) (void) ) (*((char**)4)+ 504 )) #define PSDStart (( int (*) (PSDHandle bitmask, BOOL cycle) ) (*((char**)4)+ 528 )) #define PSDStop (( int (*) (void) ) (*((char**)4)+ 486 )) #define QUADGetMotor (( DeviceSemantics (*) (DeviceSemantics semantics) ) (*((char**)4)+ 630 )) #define QUADInit (( QuadHandle (*) (DeviceSemantics semantics) ) (*((char**)4)+ 606 )) #define QUADODORead (( float (*) (QuadHandle handle) ) (*((char**)4)+ 678 )) #define QUADODOReset (( int (*) (QuadHandle handle) ) (*((char**)4)+ 672 )) #define QUADRead (( int (*) (QuadHandle handle) ) (*((char**)4)+ 624 )) #define QUADRelease (( int (*) (QuadHandle handle) ) (*((char**)4)+ 612 )) #define QUADReset (( int (*) (QuadHandle handle) ) (*((char**)4)+ 618 )) #define RADIOCheck (( int (*) (void) ) (*((char**)4)+ 882 )) #define RADIOGetIoctl (( int (*) ( RadioIOParameters* radioParams ) ) (*((char**)4)+ 894 )) #define RADIOGetStatus (( int (*) (RadioStatus *s) ) (*((char**)4)+ 930 )) #define RADIOInit (( int (*) (void) ) (*((char**)4)+ 864 )) #define RADIORecv (( int (*) (BYTE* id, int* bytesReceived, BYTE* buffer) ) (*((char**)4)+ 888 )) #define RADIOSend (( int (*) (BYTE id, int byteCount, BYTE* buffer) ) (*((char**)4)+ 876 )) #define RADIOSetIoctl (( int (*) ( RadioIOParameters radioParams ) ) (*((char**)4)+ 900 )) #define RADIOTerm (( int (*) (void) ) (*((char**)4)+ 870 )) #define SERVOInit (( ServoHandle (*) (DeviceSemantics semantics) ) (*((char**)4)+ 318 )) #define SERVORelease (( int (*) (ServoHandle handle) ) (*((char**)4)+ 342 )) #define SERVOSet (( int (*) (ServoHandle handle,int angle) ) (*((char**)4)+ 324 )) #define USRFlashClear (( int (*) (int slot, int magic) ) (*((char**)4)+ 780 )) #define USRFlashGetName (( int (*) (int slot, char* name) ) (*((char**)4)+ 774 )) #define USRFlashLoad (( int (*) (int slot, int magic) ) (*((char**)4)+ 762 )) #define USRFlashSave (( int (*) (int slot, int magic) ) (*((char**)4)+ 768 )) #define USRResident (( int (*) (char *name,BOOL mode) ) (*((char**)4)+ 360 )) #define USRStart (( int (*) (void) ) (*((char**)4)+ 252 )) #define VWDriveCurve (( int (*) (VWHandle handle, meter delta_l, radians delta_phi, meterPerSec v) ) (*((char**)4)+ 834 )) #define VWDriveDone (( int (*) (VWHandle handle) ) (*((char**)4)+ 840 )) #define VWDriveRemain (( float (*) (VWHandle handle) ) (*((char**)4)+ 852 )) #define VWDriveStraight (( int (*) (VWHandle handle, meter delta, meterPerSec v) ) (*((char**)4)+ 822 )) #define VWDriveTurn (( int (*) (VWHandle handle, radians delta, radPerSec w) ) (*((char**)4)+ 828 )) #define VWDriveWait (( int (*) (VWHandle handle) ) (*((char**)4)+ 846 )) #define VWGetPosition (( int (*) (VWHandle handle, PositionType* pos) ) (*((char**)4)+ 708 )) #define VWGetSpeed (( int (*) (VWHandle handle, SpeedType* vw) ) (*((char**)4)+ 696 )) #define VWInit (( VWHandle (*) (DeviceSemantics semantics, int Timescale) ) (*((char**)4)+ 684 )) #define VWRelease (( int (*) (VWHandle handle) ) (*((char**)4)+ 714 )) #define VWSetPosition (( int (*) (VWHandle handle, meter x, meter y, radians phi) ) (*((char**)4)+ 702 )) #define VWSetSpeed (( int (*) (VWHandle handle, meterPerSec v, radPerSec w) ) (*((char**)4)+ 690 )) #define VWStalled (( int (*) (VWHandle handle) ) (*((char**)4)+ 858 )) #define VWStartControl (( int (*) (VWHandle handle, float Vv, float Tv, float Vw, float Tw) ) (*((char**)4)+ 798 )) #define VWStopControl (( int (*) (VWHandle handle) ) (*((char**)4)+ 804 )) __ROBIOS_END_DECLS #endif /* mc68000 */ #endif /* robios_c_stubs_h */