/* FALCON new functions */ extern long xbios(); /* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */ /* DSP XBIOS functions (trap #14) */ /* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */ #define Dsp_DoBlock(a,b,c,d) (void) xbios(96,a,b,c,d) #define Dsp_BlkHandShake(a,b,c,d) (void) xbios(97,a,b,c,d) #define Dsp_BlkUnpacked(a,b,c,d) (void) xbios(98,a,b,c,d) #define Dsp_InStream(a,b,c,d) (void) xbios(99,a,b,c,d) #define Dsp_OutStream(a,b,c,d) (void) xbios(100,a,b,c,d) #define Dsp_IOStream(a,b,c,d,e,f) (void) xbios(101,a,b,c,d,e,f) #define Dsp_RemoveInterrupts(a) (void) xbios(102,a) #define Dsp_GetWordSize() (int) xbios(103) #define Dsp_Lock() (int) xbios(104) #define Dsp_Unlock() (void) xbios(105) #define Dsp_Available(a,b) (void) xbios(106,a,b) #define Dsp_Reserve(a,b) (int) xbios(107,a,b) #define Dsp_LoadProg(a,b,c) (int) xbios(108,a,b,c) #define Dsp_ExecProg(a,b,c) (void) xbios(109,a,b,c) #define Dsp_ExecBoot(a,b,c) (void) xbios(110,a,b,c) #define Dsp_LodToBinary(a,b) (long) xbios(111,a,b) #define Dsp_TriggerHC(a) (void) xbios(112,a) #define Dsp_RequestUniqueAbility() (int) xbios(113) #define Dsp_GetProgAbility() (int) xbios(114) #define Dsp_FlushSubroutines() (void) xbios(115) #define Dsp_LoadSubroutine(a,b,c) (int) xbios(116,a,b,c) #define Dsp_InqSubrAbility(a) (int) xbios(117,a) #define Dsp_RunSubroutine(a) (int) xbios(118,a) #define Dsp_Hf0(a) (int) xbios(119,a) #define Dsp_Hf1(a) (int) xbios(120,a) #define Dsp_Hf2() (int) xbios(121) #define Dsp_Hf3() (int) xbios(122) #define Dsp_BlkWords(a,b,c,d) (void) xbios(123,a,b,c,d) #define Dsp_BlkBytes(a,b,c,d) (void) xbios(124,a,b,c,d) #define Dsp_HStat() (char) xbios(125) #define Dsp_SetVectors(a,b) (void) xbios(126,a,b) /* ~~~~~~~~~~ */ /* AJOUTS AES */ /* ~~~~~~~~~~ */ typedef struct _menu { OBJECT *mn_tree; /* Object tree of the menu */ int mn_menu; /* Parent of the menu items */ int mn_item; /* Starting menu item */ int mn_scroll; /* scroll flag for the menu */ int mn_keystate; /* CTRL, ALT, SHIFT Keystate*/ }MENU; /* Structure for the Menu Settings */ typedef struct _mn_set { int Display; /* The display delay */ int Drag; /* The drag delay */ int Delay; /* The Arrow Delay */ long Speed; /* The scroll speed delay */ int Height; /* The menu scroll height */ }MN_SET; int menu_popup( MENU *Menu, int xpos, int ypos, MENU *MData ); int menu_attach( int flag, OBJECT *tree, int item, MENU *Menu ); int menu_istart( int flag, OBJECT *tree, int menu, int item ); int menu_settings( int flag, MN_SET *Values ); /* ~~~~~ */ /* VIDEO */ /* ~~~~~ */ #define Vsetmode(a) (int)xbios(88,a) #define mon_type(a) (int)xbios(89) #define VsetSync(a) (void)xbios(90,a) #define VgetSize(a) (long)xbios(91,a) #define VsetRGB(a,b,c) (void)xbios(93,a,b,c) #define VgetRGB(a,b,c) (void)xbios(94,a,b,c) #define VsetMask(a,b) (void)xbios(150,a,b) #define VERTFLAG 0x100 #define STMODES 0x80 #define OVERSCAN 0x40 #define PAL 0x20 #define VGA 0x10 #define TV 0 #define COL80 0x8 #define COL40 0 #define NUMCOLS 7 /* This is the bit mask for bit/plane numbers */ #define BPS16 4 #define BPS8 3 #define BPS4 2 #define BPS2 1 #define BPS1 0 /* ~~~~~ */ /* SOUND */ /* ~~~~~ */ #define INQUIRE -1 #define LTATTEN 0 #define RTATTEN 1 #define LTGAIN 2 #define RTGAIN 3 #define ADDERIN 4 #define ADCINPUT 5 #define SETPRESCALE 6 #define ADC 3 #define EXTINP 2 #define DSPXMIT 1 #define DMAPLAY 0 #define DAC 0x8 #define EXTOUT 0x4 #define DSPRECV 0x2 #define DMAREC 0x1 #define STEREO8 0 #define STEREO16 1 #define MONO8 2 #define ENABLE 1 #define TRISTATE 0 #define PLAY_ENABLE 0x1 #define PLAY_REPEAT 0x2 #define RECORD_ENABLE 0x4 #define RECORD_REPEAT 0x8 #define PLAY 0 #define RECORD 1 #define M25_CLK 0 #define EXT_CLK 1 #define M32_CLK 2 #define CLK50K 1 #define CLK33K 2 #define CLK25K 3 #define CLK20K 4 #define CLK16K 5 #define CLK12K 7 #define CLK10K 9 #define CLK8K 11 #define ACT_CLK50K 49170 #define ACT_CLK33K 33880 #define ACT_CLK25K 24585 #define ACT_CLK20K 20770 #define ACT_CLK16K 16490 #define ACT_CLK12K 12292 #define ACT_CLK10K 9834 #define ACT_CLK8K 8195 #define SNDNOTLOCK -128 #define SNDLOCKED -129 #define locksnd() xbios(0x80) #define unlocksnd() xbios(0x81) #define soundcmd(a,b) xbios(0x82,a,b) #define setbuffer(a,b,c) xbios(0x83,a,b,c) #define setmode(a) xbios(0x84,a) #define settrack(a,b) xbios(0x85,a,b) #define setmontrack(a) xbios(0x86,a) #define setinterrupt(a,b) xbios(0x87,a,b) #define buffoper(a) xbios(0x88,a) #define dsptristate(a,b) xbios(0x89,a,b) #define gpio(a,b) xbios(0x8A,a,b) #define devconnect(a,b,c,d,e) xbios(0x8B,a,b,c,d,e) #define sndstatus(a) xbios(0x8C,a) #define buffptr(a) xbios(0x8D,a)