view nykyaeka/main.c @ 71:a87eb778f225

Improvements to the MinGW crossbuild. Should now build with default tools from Debian mingw packages, though you need Win32 version of libSDL with the necessary headers and so on in addition. 64-bit builds not tested and probably won't work. Tested on Debian 7.0, earlier won't work. binutils-mingw-w64-i686 gcc-mingw-w64-i686 mingw-w64-i686-dev
author Matti Hamalainen <ccr@tnsp.org>
date Tue, 14 Aug 2012 03:08:10 +0300
parents acb5694e93d9
children
line wrap: on
line source

#if 0
# include <stdio.h>
# include <stdlib.h>
# include <string.h>
# include <unistd.h>
#endif

#include "pwplib.h"

#define MAX(a,b) ((a)<(b)?(b):(a))
#define MIN(a,b) ((a)>(b)?(b):(a))

struct
{
   int dsgtime;

   int flagz;
   int planemode;
   
   int enctime,enckode,enczoom,encspeed;

   int endfxt;
   
   int metsaemode;
   int bouncemode;
}demovar;

void rundemo()
{
   int quit=0,fx=0;

   pwplib_startup();
   
   decompress_allbmp();
   bwpals();

   pwplib_buf=
     malloc(sizeof(u8)*pwplib_bufw*pwplib_bufh);

/*   initfontbuf(); 

     if(!pwplib_setup(NOSOUND))
       initplayer();
*/
   if(!pwplib_setup(NOSOUND))
   initplayer();

   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(1152-25):
             drawtext("NYKYAEKA",0x7f);
             break;
           case(1520):killtext();break;

           case(1536+80+256*0):fx=1;
              drawtext("NYKYAEKA\nON PASKOO",0x7f);break;
           case(1536+80+256*1):
              drawtext("   ON VUA\n  JOTTAE\nHUMPUUKKEJA",0x7f);
              break;
           case(1536+80+256*2):
              drawtext("EI ARVOSTETA \n   ENNEE\n JUMALOO",0x7f);
              break;
           case(1536+80+253*3):fx=2;
              drawtext("   EIK[\nNEUVOSTO]\n  LIITTOO",0x7f);
              break;

           case(1536+80+256*4):fx=3;
              drawtext("NUORISO\nEI OSSOO\n  ENNEE\n  MITT[[",0x7f);
              break;
           case(1536+80+256*5):
              drawtext("   KAEKKI\n  SEMMOSIA\nIITEE]N\\RTTIJ[",0x7f);
              break;
           case(1536+80+256*6):
              drawtext("KATOTAAHA\nKU TULLOO\nUUS LAMA",0x7f);
              break;
           case(1536+80+256*7):
              drawtext("KUOLOOVAT\n  VIEL[\nN[L[K[[N",0x7f);
              break;

           case(1536+80+256*8):fx=4;
              drawtext(" KYLL[ JOS\n  STUALIN\nHY\\KK[ES TUAS\n  SUOMEEN",0x7f);
              break;
           case(1536+80+256*9):
              drawtext("NII EI KYLL[\nNYKYNUORET\nSAES NIIT[\n  TAPETTUA",0x7f);
              break;
           case(1536+80+256*10):
              drawtext("M[NN\\\\V[T VUA\n   JONNEKKI\n   MUMMOJA\n   PESEM[[N",0x7f);
              break;
           case(1536+80+256*11):
              drawtext("KO PIT[S OLLA\n   KIRVEEN\n   KANSSA\nRINTAMALLA",0x7f);
              break;

           case(1536+80+256*12):fx=5;
              drawtext("  ON SE\nNYKYAEKA\nVUA KUMMA",0x7f);
              break;
           case(1536+80+256*13):
              drawtext("KAAPASTAKKAA\nEI ENNEE SUA\n  OEKEETA\n  PIIMEE",0x7f);
              break;
           case(1536+80+256*14):
              drawtext("   ON VUA\n   JOTTAE\nKEVYTPIIMEE",0x7f);
              break;
           case(1536+80+256*15):
              drawtext("PITT[[ ITE\nKEITELL[\n   PIIM[T",0x7f);
              break;

           case(1536+80+256*16):fx=1;
              drawtext("ANTAKEE\nMINULLE\nHAALIKKO",0x7f);
              break;
           case(1536+80+256*17):
              drawtext("NI L[HT\\\\\nKAEKKI\nNYKYAJAN\nHUMPUUKKIT",0x7f);
              break;
           case(1536+80+256*18):fx=3;
              drawtext("NUORISO JA\n  KAEKKI\n  RYSSELIN\n HERRAT",0x7f);
              break;
           case(1536+80+256*19):
              drawtext("TIETOKONNEET\nJA K[NNYK[T JA\nMANKETOFOONIT",0x7f);
              break;

           case(1536+80+256*20):fx=6;
              drawtext("MITT[[N\nEI JI[\nJ[LELLE",0x7f);
              break;
           case(1536+80+256*21):fx=7;
              drawtext("PAETTI MIN[\nJA AKKA",0x7f);
              break;
           case(1536+80+256*22):fx=8;
              drawtext("YHESS[ MY\\\nHALLITAAN\nMUALIMOO",0x7f);
              break;
           case(1536+80+256*23):
              drawtext("  EIK[\n  TULE\n  ENNEE\nNYKYAEKOO",0x7f);
              break;

           case(1536+80+256*24):fx=9;
              killtext();break;
              
           case(1536+80+256*24+256):fx=0;break;

           case(1536+80+256*24+256+256):fx=16;
              drawtext("    PWP\nPROXY CREW",0x7f);
              break;
           case(1536+80+256*24+256+256+128*1):fx=16;
              drawtext("VIZNUT XAZTUR\nSSADISTIK EXO\nFGCL CCR\nNOSFE AROPUPU",0x7f);
              break;
           case(1536+80+256*24+256+256+128*3):fx=16;
              drawtext("GREETS TO",0x7f);
              break;
           case(1536+80+256*24+256+256+128*4):fx=16;
              drawtext("KANSANRADIO\nHANNU KARPO\nPEKKA SAURI",0x7f);
              break;
           case(1536+80+256*24+256+256+128*6):fx=16;killtext();break;
           case(1536+80+256*24+256+256+128*8):quit=1;break;

/*
   HANNU KARPO
   PEKKA SAURI
   MARKETTA RATIA
   TUOMO TALVI
*/

           default:
           break;
        }
        demovar.dsgtime++;
     }

     /* clrscr */
     memset(pwplib_buf,0,pwplib_bufw*pwplib_bufh*sizeof(u8));

#            undef G

     if(t<768)
         sflogo(t);

     if(t>=745 && t<=1152) sf_esittaa();

     if(fx==1)planes_do(t,16+2);else
     if(fx==2){memset(pwplib_buf,0x44,pwplib_bufw*pwplib_bufh*sizeof(u8));
     	rotozoom_do(t,2);}
     if(fx==3)rotozoom_do(t,1);
     if(fx==4){tankit(t);naarmuta();}
     if(fx==5)rotozoom_do(t,0);
     if(fx==6){tankit2(t);}
     if(fx==7){tankit2(t);isantapari(t);}
     if(fx==8){memset(pwplib_buf,0x44,pwplib_bufw*pwplib_bufh*sizeof(u8));
     	rotozoom_do(t,2);isantapari();}
     if(fx==9){sflogo(t);naarmuta();}

     {int m=1;int z=t-1536-80;
      if(t>1536+80 && fx!=16)m=1;else m=0;
      addtext(t-1536-80,m);}

     if(t<1536+40 || fx>10)naarmuta();

     pwplib_dump_rast();
     if(!quit)pwplib_loopflush();
   }
   }
   
   pwplib_shutdown();
}

int main(int argc,char**argv)
{
   if(!pwplib_init(argc,argv))return 1;

   rundemo();

   pwplib_shutdown();

   return 0;
}