home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
The CDPD Public Domain Collection for CDTV 3
/
CDPDIII.bin
/
pd
/
commodities
/
superdark
/
blankers
/
proc_main.h
< prev
next >
Wrap
C/C++ Source or Header
|
1992-11-07
|
2KB
|
89 lines
struct my_data *p_info;
struct appel_proc *p_data_proc;
int width,height;
struct RastPort *rp,*rps;
struct Screen *s;
struct Library *GadToolsBase;
struct Library *IntuitionBase;
struct Library *GfxBase;
extern struct tom_gadget my_gadg[];
extern void __saveds dark();
extern void proc_init();
extern void proc_end();
extern char *p_text_info;
/* Note: The folloing SPrintf Routine is taken from the program "FracBlank " */
/* by: */
UWORD PutChar[2] = {0x16C0,0x4E75};
/* dirty hack to avoid assembler part :-)
16C0: move.b d0,(a3)+
4E75: rts
*/
#define VOID_STDARGS void __stdargs
#define VOID_REGARGS void __regargs
VOID_STDARGS SPrintF(char *Buffer,char *FormatString,...)
{
RawDoFmt (FormatString,(APTR)((LONG *)&FormatString+1L),
(void *)PutChar,Buffer);
}
void _main(line)
register char *line;
{
struct MsgPort *mp;
/****************************************************************/
/* Recherche du port qui contient les infos relatives a l'ecran */
/* Ce port permet de passer des donnes de la tache main vers ici*/
/****************************************************************/
IntuitionBase=(struct Library *)OpenLibrary("intuition.library",0);
GfxBase=(struct Library *)OpenLibrary("graphics.library",0);
if((mp=FindPort("That's Dark!"))==0){
dark();
return;
}else{
/*********************************************/
/* On recupere les informaitons ainsi passee */
/*********************************************/
p_data_proc=(struct appel_proc *)mp;
rp=p_data_proc->rp;
rps=p_data_proc->rps;
s=p_data_proc->s;
width=p_data_proc->width;
height=p_data_proc->height;
p_info=p_data_proc->p_info;
GadToolsBase=p_data_proc->GadToolsBase;
switch(p_data_proc->action){
case ACT_DARK:
dark();
break;
case ACT_INIT:
p_data_proc->p_gadg=my_gadg;
p_data_proc->p_texte=p_text_info;
p_data_proc->p_func_dark=&dark;
p_data_proc->code_ret=DARK_WB_13;
proc_init();
break;
case ACT_PARAM:
break;
case ACT_END:
proc_end();
break;
default:
break;
}
}
}