/* Standard Include Data for eXternal Screen Blanker Standard ---------------------------------------------------------- written by Oliver Wagner (C) 1992 All Rights Reserved */ /* Prefs structure for XSB library. Usage is free to the XSB library */ struct XSBPref { union { char string[40]; /* a string value */ long arg; /* long values */ } u; }; #define xsb_string u.string #define xsb_arg u.arg /* Param structure for the XSB call XSBGetParams. Passed back to the XSB commodity by the library (should be static data) */ struct XSBParams { struct XSBParams *next; long type; /* see defines below */ char *text; /* text label for gadgets */ char **labels; /* optional labels for cycle gadgets */ long min,max; /* optional min/max values for sliders */ struct XSBPref *value; /* value entry */ }; /* definitions for the "type" entry */ #define XSBP_BOOL 1 /* Boolean checkbox */ #define XSBP_STRING 2 /* String gadget */ #define XSBP_INTEGER 3 /* Integer gadget */ #define XSBP_SLIDER 4 /* a slider */ #define XSBP_CYCLE 5 /* a cycle gadget */ /* this structure is passed to your XSB library at blanking time */ struct XSBInfo { struct timerequest *tr; /* a properly, ready to use timer request (UNIT_VBLANK) */ struct XSBPref *prefs; /* pointer to array of struct XSBPref, loaded from ENV:XSB/.XSBP */ }; /* XSB Library pragmas */ #pragma libcall XSBBase XSBBlankScreen 1E 8002 #pragma libcall XSBBase XSBGetID 24 0 #pragma libcall XSBBase XSBGetParams 2A 0 /* XSB Library protos */ void __saveds XSBBlankScreen(long,struct XSBInfo*); char * __saveds XSBGetID(void); struct XSBParams * __saveds XSBGetParams(void);