Diff for /np2/x11/np2.c between versions 1.1 and 1.7

version 1.1, 2003/11/16 16:43:45 version 1.7, 2003/12/11 15:11:56
Line 28 Line 28
 #include "compiler.h"  #include "compiler.h"
   
 #include "np2.h"  #include "np2.h"
   #include "pccore.h"
 #include "dosio.h"  #include "dosio.h"
 #include "scrndraw.h"  #include "scrndraw.h"
 #include "statsave.h"  #include "statsave.h"
 #include "timing.h"  #include "timing.h"
 #include "toolkit.h"  #include "toolkit.h"
   
 #include "keydisp.h"  #include "kdispwin.h"
 #include "toolwin.h"  #include "toolwin.h"
   #include "viewer.h"
   
 #include "commng.h"  #include "commng.h"
   #include "joymng.h"
 #include "kbdmng.h"  #include "kbdmng.h"
 #include "mousemng.h"  #include "mousemng.h"
 #include "scrnmng.h"  #include "scrnmng.h"
Line 46 Line 49
   
   
 NP2OSCFG np2oscfg = {  NP2OSCFG np2oscfg = {
 #if !defined(CPU386)            /* titles */  #if !defined(CPUCORE_IA32)              /* titles */
         "Neko Project II",          "Neko Project II",
 #else  #else
         "Neko Project II + IA32",          "Neko Project II + IA32",
 #endif  #endif
   
         2,                      /* paddingx */          0,                      /* paddingx */
         2,                      /* paddingy */          0,                      /* paddingy */
   
         0,                      /* NOWAIT */          0,                      /* NOWAIT */
         2,                      /* DRAW_SKIP */          2,                      /* DRAW_SKIP */
Line 94  NP2OSCFG np2oscfg = { Line 97  NP2OSCFG np2oscfg = {
 #endif  #endif
   
         MMXFLAG_DISABLE,        /* disablemmx */          MMXFLAG_DISABLE,        /* disablemmx */
           FALSE,                  /* shared_pixmap */
 };  };
   
 BOOL np2running = FALSE;  BOOL np2running = FALSE;
Line 112  char bmpfilefolder[MAX_PATH]; Line 116  char bmpfilefolder[MAX_PATH];
 char modulefile[MAX_PATH];  char modulefile[MAX_PATH];
 char statpath[MAX_PATH];  char statpath[MAX_PATH];
   
 char timidity_cfgfile_path[MAX_PATH] = TIMIDITY_CFGFILE_PATH;  #ifndef FONTFACE
   #define FONTFACE "-misc-fixed-%s-r-normal--%d-*-*-*-*-*-*-*"
   #endif
   char fontname[1024] = FONTFACE;
   
   char timidity_cfgfile_path[MAX_PATH];
   
   BOOL use_shared_pixmap;
   
   
 UINT32  UINT32
Line 214  changescreen(BYTE newmode) Line 225  changescreen(BYTE newmode)
         if (renewal) {          if (renewal) {
                 if (renewal & SCRNMODE_FULLSCREEN) {                  if (renewal & SCRNMODE_FULLSCREEN) {
                         toolwin_destroy();                          toolwin_destroy();
                         keydisp_destroy();                          kdispwin_destroy();
                 }                  }
                 soundmng_stop();                  soundmng_stop();
                 mouse_running(MOUSE_STOP);                  mouse_running(MOUSE_STOP);
Line 234  changescreen(BYTE newmode) Line 245  changescreen(BYTE newmode)
                                         toolwin_create();                                          toolwin_create();
                                 }                                  }
                                 if (np2oscfg.keydisp) {                                  if (np2oscfg.keydisp) {
                                         keydisp_create();                                          kdispwin_create();
                                 }                                  }
                         }                          }
                 }                  }
Line 251  framereset(UINT cnt) Line 262  framereset(UINT cnt)
   
         framecnt = 0;          framecnt = 0;
         scrnmng_dispclock();          scrnmng_dispclock();
         keydisp_draw((BYTE)cnt);          kdispwin_draw((BYTE)cnt);
         toolwin_draw((BYTE)cnt);          toolwin_draw((BYTE)cnt);
           viewer_allreload(FALSE);
         if (np2oscfg.DISPCLK & 3) {          if (np2oscfg.DISPCLK & 3) {
                 if (sysmng_workclockrenewal()) {                  if (sysmng_workclockrenewal()) {
                         sysmng_updatecaption(3);                          sysmng_updatecaption(3);
Line 272  processwait(UINT cnt) Line 284  processwait(UINT cnt)
         }          }
 }  }
   
   int
   mainloop(void *p)
   {
   
           UNUSED(p);
   
           if (np2oscfg.NOWAIT) {
                   joy_flash();
                   mousemng_callback();
                   pccore_exec(framecnt == 0);
                   if (np2oscfg.DRAW_SKIP) {
                           /* nowait frame skip */
                           framecnt++;
                           if (framecnt >= np2oscfg.DRAW_SKIP) {
                                   processwait(0);
                           }
                   } else {
                           /* nowait auto skip */
                           framecnt = 1;
                           if (timing_getcount()) {
                                   processwait(0);
                           }
                   }
           } else if (np2oscfg.DRAW_SKIP) {
                   /* frame skip */
                   if (framecnt < np2oscfg.DRAW_SKIP) {
                           joy_flash();
                           mousemng_callback();
                           pccore_exec(framecnt == 0);
                           framecnt++;
                   } else {
                           processwait(np2oscfg.DRAW_SKIP);
                   }
           } else {
                   /* auto skip */
                   if (waitcnt == 0) {
                           UINT cnt;
                           joy_flash();
                           mousemng_callback();
                           pccore_exec(framecnt == 0);
                           framecnt++;
                           cnt = timing_getcount();
                           if (framecnt > cnt) {
                                   waitcnt = framecnt;
                                   if (framemax > 1) {
                                           framemax--;
                                   }
                           } else if (framecnt >= framemax) {
                                   if (framemax < 12) {
                                           framemax++;
                                   }
                                   if (cnt >= 12) {
                                           timing_reset();
                                   } else {
                                           timing_setcount(cnt - framecnt);
                                   }
                                   framereset(0);
                           }
                   } else {
                           processwait(waitcnt);
                           waitcnt = framecnt;
                   }
           }
   
           return TRUE;
   }
   
 #if defined(__GNUC__) && (defined(i386) || defined(__i386__))  #if defined(__GNUC__) && (defined(i386) || defined(__i386__))
 int mmxflag;  int mmxflag;
   

Removed from v.1.1  
changed lines
  Added in v.1.7


RetroPC.NET-CVS <cvs@retropc.net>