www.pudn.com > imgproc.zip > RAINMAN.C
#include "testlib.h"
#include "modelist.h"
imagedes img, dup;
int currentmode;
int mmframe=6;
int glbwin = -1;
char start_path[256];
char *progname = "RainMan Release 1.31a";
int callback1(int);
void *_globalBuf=NULL;
extern BOOL _videoLinear;
extern choisetype helpchoise[];
extern menutype helpmenu;
char *initall()
{
helpchoise[2].menu = &helpmenu; // for fun
_videoLinear = TRUE;
register_all_video_mode();
img.alloc = FALSE;
dup.alloc = FALSE;
_globalBuf = malloc(256*1024); // a 256KByte global buffer
if(_globalBuf == NULL) return "Out of memory";
if(menuinit(mmframe)) {
free(_globalBuf);
return "Menu System Failed !\n";
}
glbwin=open_window(" System Console ", 1, 0,
scrymax-2, scrxmax-1, 0x1f, 0x17);
return NULL;
}
BOOL deinitall()
{
if (dup.alloc) FreePicture(&dup);
if (img.alloc) FreePicture(&img);
if(_globalBuf != NULL) free(_globalBuf);
menuexit();
if(glbwin >= 0) close_window(glbwin);
crt_cls(scrymax-1,0, scrymax-1, scrxmax-1, 0x07);
return TRUE;
}
void __busy(int bsy) {
menu_busy(bsy);
}
void main(int argc, char *argv[])
{
extern menutype mainmenu;
char *msg;
fputs(progname, stderr); fputs("\n", stderr);
fputs("Released May/25/1999, Yang YuDong.\n"
" yangyd@yahoo.com\n"
" http://pcvideo.yeah.net\n", stderr);
if(argc > 1) {
if(argv[1][0] == '/' && argv[1][1] >= '0' && argv[1][1] <= '6' ) mmframe = argv[1][1] - '0';
else {
fputs("Unrecognized option: '", stderr);
fputs(argv[1], stderr);
fputs("'\nAccepted commond line options are: \n /n n=0 to 6 menu fashon.\n",stderr);
return;
}
}
fputs("System is being initialized, please wait...\n", stderr);
fflush(stderr);
strcpy(start_path, argv[0]);
{
int i;
i = strlen(start_path)-1;
while(i>=0 && start_path[i] != '\\') start_path[i--]=0;
}
if((msg=initall())!= NULL) {
fputs("Failed to start program : ", stderr);
fputs(msg, stderr);
fputs("\n", stderr);
exit(-1);
}
{ int i;
for(i=0; i