Mercurial > hg > forks > pwpunix
view peluce/main.c @ 65:c6ecac58120a
Clean up some warnings.
author | Matti Hamalainen <ccr@tnsp.org> |
---|---|
date | Sat, 06 Aug 2011 10:41:57 +0300 |
parents | acb5694e93d9 |
children |
line wrap: on
line source
#include "pwpdemo.h" struct { int dsgtime; int flagz; int planemode; int enctime,enckode,enczoom,encspeed; int endfxt; int metsaemode; int bouncemode; }demovar; char*finnishtexts[]= { "@@@UUSI\n@@IHMEMAA\n@@@@ON\n@@L_YTYNYT", "@@@PELUN\n@MIELEST^\n@KAIKKI@ON\n@@IHANAA", "@EIK^@H^N\n@@@@OSAA\n@@@VAROA\n@@VAAROJA", "@@SILLOIN\nPAHA@HENKI\n@@RIIVAA\n@@@PELUN", "JA@H^NEST^\n@@TULEE", "\nTAHDOTON", "SAATANAN\nPALVELIJA", "@@@PELU\nTEURASTAA", "@@PALJON\n@IHMISI^@]", "KRISTITYT\n@@P^LLIT", "@UUSMEDIA]\n@@P^LLIT", "@@TESNO]\n@@P^LLIT", "@ARMEIJA]\n@@P^LLIT", "@WINDOWS]\n@@P^LLIT", "@@QUAKE]\n@@P^LLIT", "@JA@NIIN\nMAAILMASTA\n@@@TULI\n@PAREMPI", "\n@P^LLIT_N\n@@@MAA", "\n@@VAPAA\n@@@MAA", "\n@IHMEMAA", "@WANNABE]\nASENNETTA\nVUODESTA\n@@[\\\\Y" }; char*englishtexts[]= { "@@A@NEW\nWONDERLAND\n@HAS@BEEN\n@@@FOUND", "@@@PELU\n@@THINKS\nEVERYTHING\nIS@SUPERB", "@@AND@HE\n@DOES@NOT\n@NOTICE\n@THE@RISKS", "@SUDDENLY\n@@AN@EVIL\n@@SPIRIT\nTAKES@PELU", "@AND@SO@HE\n@@BECOMES", "@@@@A\nHELPLESS", "@@@SATAN\nWORSHIPPER", "@@PELU\n@MURDERS", "@A@LOT@OF\n@PEOPLE@]", "CHRISTIAN\n@IDIOTS", "NEW@MEDIA\n@IDIOTS", "@TECHNO\n@IDIOTS", "MILITARY\n@IDIOTS", "@WINDOWS\n@IDIOTS", "@@QUAKE\n@IDIOTS", "@AND@SO\n@THE@WORLD\n@BECAME@A\nLOT@BETTER", "@@@@A\n@@WORLD\n@FREE@OF\n@@IDIOTS\n", "\n@A@FREE\n@@WORLD", "\nWONDERLAND", "@WANNA]BE\nATTITUDE\n@@SINCE\n@@[\\\\Y" }; void rundemo() { int quit=0; char**texts=englishtexts; pwplib_startup(); pwplib_buf= malloc(sizeof(u8)*pwplib.videobuf.width*pwplib.videobuf.height); initfontbuf(); if(!pwplib.setup[SETUP_NOSOUND]) /* fix */ initplayer(); if(!strcmp(pwplib_locale,"fi"))texts=finnishtexts; pwplib_prep_attr(); demovar.flagz=8|16; demovar.dsgtime=0; demovar.endfxt=1<<30; demovar.metsaemode=0; while(!quit) { int t=pwplib_timer(); while(demovar.dsgtime<t) { switch((int)demovar.dsgtime) { case(64*5): textzoomin(64*5,"@@@PWP@@@@\n" "@PRESENTS@\n" "@@@@IN\n" "@@[\\[OO"); break; case(96*5): textzoomout(96*5); break; case(128*5): textzoomin(128*5, "@@@@A\n" "@@VT[OO\n" "COMPATIBLE\n" "@@FILM"); break; case(160*5): textzoomout(160*5); break; case(192*5): textzoomin(192*5, "@STARRING\n" "\n" "@@@PELU\n" "LAMURANTA"); break; case(224*5): textzoomout(224*5); demovar.flagz=8|16|32; demovar.enctime=demovar.endfxt=320*5; demovar.enckode=1; demovar.enczoom=80; demovar.encspeed=32; break; case(256*5): textzoomin(256*5, "@CODED@BY\n" "\n" "@@VIZNUT"); break; case(288*5): textzoomout(288*5); break; case(320*5): textzoomin(320*5, "@@PELUCE@@\n" "@@@@IN@@@@\n" "WONDERLAND\n"); break; case(384*5-24): textoff(); break; case(384*5): demovar.enckode=2; break; case(384*5+24): demovar.enckode=3; break; case(384*5+50): demovar.flagz=4; demovar.endfxt=1<<30; break; case(384*5+60): demovar.flagz=64; break; #define G 384*5+128*4 case(G-88*4): justshowtext("\n@KILLALL\n]HUP@BRAIN",0xee); break; case(G-72*4): demovar.flagz=4; textoff(); break; case(G-32*4): justshowtext("@RELOADING\n@@MIND@]]]",0xcc); case(G-16*4): justshowtext("\n\n\n@@@@ALPHA",0xcc); break; case(G-12*4): justshowtext("\n\n@@@BETA",0xcc); break; case(G-8*4): justshowtext("\n@@GAMMA",0xcc); break; case(G-4*4): justshowtext("@DELTA",0xcc); break; case(G): demovar.flagz=2; textoff(); demovar.planemode=16+2; textzoomin(G,texts[0]); break; case(G+64*4): textzoomout(G+64*4); demovar.flagz=2+1; demovar.bouncemode=1; demovar.planemode=16; break; case(G+112*4): demovar.planemode=17; break; case(G+128*4): demovar.bouncemode=0; demovar.planemode=2; textzoomin(G+128*4,texts[1]); break; case(G+192*4): textzoomin(G+192*4,texts[2]); demovar.bouncemode=1; break; case(G+256*4): demovar.enckode=4; demovar.enctime=demovar.endfxt=G+304*4; demovar.enczoom=80; demovar.encspeed=50; demovar.flagz=4|32; textzoomin(G+256*4,texts[3]); break; /* case(G+270*4): demovar.flagz=4|32; break;*/ case(G+288*4): break; case(G+304*4): textoff(); demovar.flagz=64|32; break; case(G+320*4): demovar.flagz=64; break; case(G+336*4): demovar.flagz=8|16|32; demovar.enckode=5; demovar.enctime=demovar.endfxt=G+416*4; demovar.enczoom=80; demovar.encspeed=128; break; case(G+384*4): textzoomin(G+384*4,texts[4]); break; case(G+400*4): textzoomin(G+400*4,texts[5]); break; case(G+416*4): textzoomin(G+416*4,texts[6]); break; case(G+440*4): textoff(); break; case(G+472*4): demovar.endfxt=1<<30; demovar.flagz=8|16|128; break; case(G+512*4): textzoomin(G+512*4,texts[7]); break; case(G+544*4): textzoomin(G+528*4,texts[8]); demovar.flagz=8|16|128|32; demovar.enckode=0; demovar.enctime=G+576*4+90; demovar.enczoom=64; demovar.encspeed=32; break; case(G+576*4): textzoomin(G+590*4,texts[9]); break; case(G+576*4+90): demovar.enckode=6; break; case(G+576*4+96): demovar.flagz&=~32; break; case(G+608*4): textzoomin(G+608*4,texts[10]); demovar.enckode=7; demovar.enctime=G+608*4+90; demovar.flagz|=32; break; case(G+608*4+90): demovar.enckode=6; break; case(G+608*4+96): demovar.flagz&=~32; break; case(G+640*4): textzoomin(G+640*4,texts[11]); demovar.enckode=8; demovar.enctime=G+640*4+90; demovar.flagz|=32; break; case(G+640*4+90): demovar.enckode=6; break; case(G+640*4+96): demovar.flagz&=~32; break; case(G+672*4): textzoomin(G+672*4,texts[12]); demovar.enckode=9; demovar.enctime=G+672*4+90; demovar.flagz|=32; break; case(G+672*4+90): demovar.enckode=6; break; case(G+672*4+96): demovar.flagz&=~32; break; case(G+704*4): textzoomin(G+704*4,texts[13]); demovar.enckode=10; demovar.enctime=G+704*4+90; demovar.flagz|=32; break; case(G+704*4+90): demovar.enckode=6; break; case(G+704*4+96): demovar.flagz&=~32; break; case(G+736*4): textzoomin(G+736*4,texts[14]); demovar.enckode=11; demovar.enctime=G+736*4+90; demovar.flagz|=32; break; case(G+736*4+90): demovar.enckode=6; break; case(G+736*4+96): demovar.flagz&=32; break; case(G+768*4): demovar.flagz=4; textzoomin(G+768*4,texts[15]); break; case(G+816*4): textzoomin(G+800*4,texts[16]); break; case(G+848*4): textzoomin(G+832*4,texts[17]); break; case(G+880*4): textzoomin(G+864*4,texts[18]); break; case(G+924*4): textzoomout(G+896*4); break; case(G+988*4): justshowtext("\n@@GREETS\nCOMING@UP",0xff); break; case(G+996*4): justshowtext("\n@DRUIDS\n@@@OF\n@@DAWN",0xdd); break; case(G+1004*4): justshowtext("\n\n@@@ISO",0xdd); break; case(G+1012*4): justshowtext("\nBRAINLEZ\n@@CODERS",0xdd); break; case(G+1020*4): justshowtext("\n\n@HYDROGEN",0xdd); break; case(G+1028*4): justshowtext("\n\nPUPULAUMA",0xdd); break; case(G+1036*4): justshowtext("\n@]@PWP@]",0xff); break; case(G+1052*4): justshowtext(texts[19],0xff); break; case(G+1088*4): justshowtext("@@BYRGCNF\n@@@NVINA\nCREXRYRRA\n@@UHBAB",0xdd); quit++; break; } demovar.dsgtime++; } if(demovar.flagz&8) scroller_do(MIN(t,demovar.endfxt),pwplib.videobuf.height>>1); if(demovar.flagz&4) memset(pwplib.videobuf.d,0, pwplib.videobuf.width*pwplib.videobuf.height*sizeof(u8)); if(demovar.flagz&2) planes_do(MIN(t,demovar.endfxt),demovar.planemode); if(demovar.flagz&64) { int i=pwplib.videobuf.width*pwplib.videobuf.height; char*d=pwplib.videobuf.d,a=rand()&255,b=rand()&255; for(;i;i--){*d++=(a^b)&0x99;a*=7;b=b-i+11*a;} } if(demovar.flagz&1) pelubounce(t*16/5,demovar.bouncemode); if(demovar.flagz&16) metsae(MIN(t,demovar.endfxt),demovar.metsaemode); if(demovar.flagz&32) encounter(demovar.enctime-t,demovar.enckode,demovar.enczoom); if(demovar.flagz&128) drawkiller((G+544*4)-t); #undef G textshow(t); pwplib_dump_rast(); if(!quit)pwplib_loopflush(); } pwplib_end(); } int main(int argc,char**argv) { if(!pwplib_init(argc,argv))return 1; rundemo(); return 0; }