Diff for /xmil/win9x/xmil.cpp between versions 1.8 and 1.13

version 1.8, 2004/08/07 07:19:56 version 1.13, 2004/08/08 16:39:04
Line 10 Line 10
 #include        "scrnmng.h"  #include        "scrnmng.h"
 #include        "soundmng.h"  #include        "soundmng.h"
 #include        "sysmng.h"  #include        "sysmng.h"
 #include        "scrndraw.h"  
 #include        "ddrawbmp.h"  #include        "ddrawbmp.h"
 #include        "winloc.h"  #include        "winloc.h"
 #include        "dclock.h"  #include        "dclock.h"
 #include        "winkbd.h"  #include        "winkbd.h"
 #include        "menu.h"  #include        "menu.h"
 #include        "ini.h"  #include        "ini.h"
   #include        "juliet.h"
 #include        "extclass.h"  #include        "extclass.h"
 #include        "dialog.h"  #include        "dialog.h"
   
 #include        "z80core.h"  #include        "z80core.h"
 #include        "pccore.h"  #include        "pccore.h"
 #include        "iocore.h"  #include        "iocore.h"
 #include        "timing.h"  #include        "timing.h"
   #include        "keystat.h"
   #include        "debugsub.h"
   #include        "scrndraw.h"
 #include        "makescrn.h"  #include        "makescrn.h"
 #include        "fdd_ini.h"  
 #include        "juliet.h"  
 #include        "diskdrv.h"  #include        "diskdrv.h"
 #include        "debugsub.h"  #include        "fdd_ini.h"
 #include        "x1f.h"  #include        "x1f.h"
   
   
Line 215  LRESULT CALLBACK WndProc(HWND hWnd, UINT Line 215  LRESULT CALLBACK WndProc(HWND hWnd, UINT
                                         break;                                          break;
   
                                 case IDM_TURBOZ:                                  case IDM_TURBOZ:
                                         xmenu_setiplrom(3);                                          menu_setiplrom(3);
                                         updateflag = SYS_UPDATECFG;                                          updateflag = SYS_UPDATECFG;
                                         break;                                          break;
   
                                 case IDM_TURBO:                                  case IDM_TURBO:
                                         xmenu_setiplrom(2);                                          menu_setiplrom(2);
                                         updateflag = SYS_UPDATECFG;                                          updateflag = SYS_UPDATECFG;
                                         break;                                          break;
   
                                 case IDM_X1ROM:                                  case IDM_X1ROM:
                                         xmenu_setiplrom(1);                                          menu_setiplrom(1);
                                         updateflag = SYS_UPDATECFG;                                          updateflag = SYS_UPDATECFG;
                                         break;                                          break;
   
                                 case IDM_BOOT2D:                                  case IDM_BOOT2D:
                                         xmenu_setbootmedia(0);                                          menu_setbootmedia(0);
                                         updateflag = SYS_UPDATECFG;                                          updateflag = SYS_UPDATECFG;
                                         break;                                          break;
   
                                 case IDM_BOOT2HD:                                  case IDM_BOOT2HD:
                                         xmenu_setbootmedia(DIPSW_BOOTMEDIA);                                          menu_setbootmedia(DIPSW_BOOTMEDIA);
                                         updateflag = SYS_UPDATECFG;                                          updateflag = SYS_UPDATECFG;
                                         break;                                          break;
   
                                 case IDM_HIGHRES:                                  case IDM_HIGHRES:
                                         xmenu_setresolute(0);                                          menu_setresolute(0);
                                         updateflag = SYS_UPDATECFG;                                          updateflag = SYS_UPDATECFG;
                                         break;                                          break;
   
                                 case IDM_LOWRES:                                  case IDM_LOWRES:
                                         xmenu_setresolute(DIPSW_RESOLUTE);                                          menu_setresolute(DIPSW_RESOLUTE);
                                         updateflag = SYS_UPDATECFG;                                          updateflag = SYS_UPDATECFG;
                                         break;                                          break;
   
Line 259  LRESULT CALLBACK WndProc(HWND hWnd, UINT Line 259  LRESULT CALLBACK WndProc(HWND hWnd, UINT
   
                                 case IDM_WIDTH80:                                  case IDM_WIDTH80:
                                         crtc.s.TXT_XL = 80;                                          crtc.s.TXT_XL = 80;
                                         crtc.s.GRP_XL = 640;  //                                      crtc.s.GRP_XL = 640;
                                         vrambank_patch();                                          vrambank_patch();
                                         scrnallflash = 1;                                          scrnallflash = 1;
                                         break;                                          break;
   
                                 case IDM_WIDTH40:                                  case IDM_WIDTH40:
                                         crtc.s.TXT_XL = 40;                                          crtc.s.TXT_XL = 40;
                                         crtc.s.GRP_XL = 320;  //                                      crtc.s.GRP_XL = 320;
                                         vrambank_patch();                                          vrambank_patch();
                                         scrnallflash = 1;                                          scrnallflash = 1;
                                         break;                                          break;
   
                                 case IDM_DISPSYNC:                                  case IDM_DISPSYNC:
                                         xmenu_setdispmode(xmilcfg.DISPSYNC ^ 1);                                          menu_setdispmode(xmilcfg.DISPSYNC ^ 1);
                                           updateflag = SYS_UPDATECFG;
                                           break;
   
                                   case IDM_RASTER:
                                           menu_setraster(xmilcfg.RASTER ^ 1);
                                           updateflag = SYS_UPDATECFG;
                                         break;                                          break;
   
                                 case IDM_NOWAIT:                                  case IDM_NOWAIT:
                                         xmenu_setwaitflg(xmiloscfg.NOWAIT ^ 1);                                          menu_setwaitflg(xmiloscfg.NOWAIT ^ 1);
                                         updateflag = SYS_UPDATECFG;                                          updateflag = SYS_UPDATECFG;
                                         break;                                          break;
   
                                 case IDM_RASTER:                                  case IDM_AUTOFPS:
                                         xmenu_setframe(0);                                          menu_setframe(0);
                                         updateflag = SYS_UPDATECFG;                                          updateflag = SYS_UPDATECFG;
                                         break;                                          break;
   
                                 case IDM_60FPS:                                  case IDM_60FPS:
                                         xmenu_setframe(1);                                          menu_setframe(1);
                                         updateflag = SYS_UPDATECFG;                                          updateflag = SYS_UPDATECFG;
                                         break;                                          break;
   
                                 case IDM_30FPS:                                  case IDM_30FPS:
                                         xmenu_setframe(2);                                          menu_setframe(2);
                                         updateflag = SYS_UPDATECFG;                                          updateflag = SYS_UPDATECFG;
                                         break;                                          break;
   
                                 case IDM_20FPS:                                  case IDM_20FPS:
                                         xmenu_setframe(3);                                          menu_setframe(3);
                                         updateflag = SYS_UPDATECFG;                                          updateflag = SYS_UPDATECFG;
                                         break;                                          break;
   
                                 case IDM_15FPS:                                  case IDM_15FPS:
                                         xmenu_setframe(4);                                          menu_setframe(4);
                                         updateflag = SYS_UPDATECFG;                                          updateflag = SYS_UPDATECFG;
                                         break;                                          break;
   
                                 case IDM_KEY:                                  case IDM_KEY:
                                         xmenu_setkey(0);                                          menu_setkey(0);
                                         break;                                          break;
   
                                 case IDM_JOY1:                                  case IDM_JOY1:
                                         xmenu_setkey(1);                                          menu_setkey(1);
                                         break;                                          break;
   
                                 case IDM_JOY2:                                  case IDM_JOY2:
                                         xmenu_setkey(2);                                          menu_setkey(2);
                                         break;                                          break;
   
                                 case IDM_FMBOARD:                                  case IDM_FMBOARD:
                                         xmenu_setsound(xmilcfg.SOUND_SW ^ 1);                                          menu_setsound(xmilcfg.SOUND_SW ^ 1);
                                         updateflag = SYS_UPDATECFG;                                          updateflag = SYS_UPDATECFG;
                                         break;                                          break;
   
                                 case IDM_JOYSTICK:                                  case IDM_JOYSTICK:
                                         xmenu_setjoystick(xmiloscfg.JOYSTICK ^ 1);                                          menu_setjoystick(xmiloscfg.JOYSTICK ^ 1);
                                         updateflag = SYS_UPDATECFG;                                          updateflag = SYS_UPDATECFG;
                                         break;                                          break;
   
                                 case IDM_MOUSE:                                  case IDM_MOUSE:
                                 //      mousemng_toggle(MOUSEPROC_SYSTEM);                                  //      mousemng_toggle(MOUSEPROC_SYSTEM);
                                         xmenu_setmouse(xmilcfg.MOUSE_SW ^ 1);                                          menu_setmouse(xmilcfg.MOUSE_SW ^ 1);
                                         updateflag = SYS_UPDATECFG;                                          updateflag = SYS_UPDATECFG;
                                         break;                                          break;
   
                                 case IDM_8MHZ:                                  case IDM_8MHZ:
                                         xmenu_setcpuspeed(xmilcfg.CPU8MHz ^ 1);                                          menu_setcpuspeed(xmilcfg.CPU8MHz ^ 1);
                                         updateflag = SYS_UPDATECFG;                                          updateflag = SYS_UPDATECFG;
                                         break;                                          break;
   
                                 case IDM_SEEKSND:                                  case IDM_SEEKSND:
                                         xmenu_setmotorflg(xmilcfg.MOTOR ^ 1);                                          menu_setmotorflg(xmilcfg.MOTOR ^ 1);
                                         updateflag = SYS_UPDATECFG;                                          updateflag = SYS_UPDATECFG;
                                         break;                                          break;
   
Line 356  LRESULT CALLBACK WndProc(HWND hWnd, UINT Line 362  LRESULT CALLBACK WndProc(HWND hWnd, UINT
                                         break;                                          break;
   
                                 case IDM_DISPCLOCK:                                  case IDM_DISPCLOCK:
                                         xmenu_setdispclk(xmiloscfg.DISPCLK ^ 1);                                          menu_setdispclk(xmiloscfg.DISPCLK ^ 1);
                                         updateflag = SYS_UPDATECFG;                                          updateflag = SYS_UPDATECFG;
                                         break;                                          break;
   
                                 case IDM_DISPFRAME:                                  case IDM_DISPFRAME:
                                         xmenu_setdispclk(xmiloscfg.DISPCLK ^ 2);                                          menu_setdispclk(xmiloscfg.DISPCLK ^ 2);
                                         updateflag = SYS_UPDATECFG;  
                                         break;  
   
                                 case IDM_SKIPLINE:  
                                         xmenu_setskipline(xmilcfg.SKIP_LINE ^ 1);  
                                         updateflag = SYS_UPDATECFG;                                          updateflag = SYS_UPDATECFG;
                                         break;                                          break;
   
                                 case IDM_JOYX:                                  case IDM_JOYX:
                                         xmenu_setbtnmode(xmilcfg.BTN_MODE ^ 1);                                          menu_setbtnmode(xmilcfg.BTN_MODE ^ 1);
                                         updateflag = SYS_UPDATECFG;                                          updateflag = SYS_UPDATECFG;
                                         break;                                          break;
   
                                 case IDM_RAPID:                                  case IDM_RAPID:
                                         xmenu_setbtnrapid(xmilcfg.BTN_RAPID ^ 1);                                          menu_setbtnrapid(xmilcfg.BTN_RAPID ^ 1);
                                         updateflag = SYS_UPDATECFG;                                          updateflag = SYS_UPDATECFG;
                                         break;                                          break;
   
                                 case IDM_HALFBMP:  
                                         winuienter();  
                                         bmpsavehalf();  
                                         winuileave();  
                                         break;  
   
                                 case IDM_Z80SAVE:                                  case IDM_Z80SAVE:
                                         debugsub_status();                                          debugsub_status();
                                         break;                                          break;
Line 498  LRESULT CALLBACK WndProc(HWND hWnd, UINT Line 493  LRESULT CALLBACK WndProc(HWND hWnd, UINT
                 case WM_KEYDOWN:                  case WM_KEYDOWN:
                         if (wParam == VK_F12) {                          if (wParam == VK_F12) {
                                 mousemng_toggle(MOUSEPROC_SYSTEM);                                  mousemng_toggle(MOUSEPROC_SYSTEM);
                         //      xmenu_setmouse(np2oscfg.MOUSE_SW ^ 1);                          //      menu_setmouse(np2oscfg.MOUSE_SW ^ 1);
                         //      sysmng_update(SYS_UPDATECFG);                          //      sysmng_update(SYS_UPDATECFG);
                         }                          }
                         else {                          else {
Line 578  LRESULT CALLBACK WndProc(HWND hWnd, UINT Line 573  LRESULT CALLBACK WndProc(HWND hWnd, UINT
   
                 case WM_MBUTTONDOWN:                  case WM_MBUTTONDOWN:
                         mousemng_toggle(MOUSEPROC_SYSTEM);                          mousemng_toggle(MOUSEPROC_SYSTEM);
                 //      xmenu_setmouse(np2oscfg.MOUSE_SW ^ 1);                  //      menu_setmouse(np2oscfg.MOUSE_SW ^ 1);
                 //      sysmng_update(SYS_UPDATECFG);                  //      sysmng_update(SYS_UPDATECFG);
                         break;                          break;
   
Line 677  int WINAPI WinMain(HINSTANCE hInstance,  Line 672  int WINAPI WinMain(HINSTANCE hInstance, 
         WNDCLASS        wc;          WNDCLASS        wc;
         MSG                     msg;          MSG                     msg;
   
           GetModuleFileName(NULL, modulefile, sizeof(modulefile));
           dosio_init();
           file_setcd(modulefile);
           initload();
   
   //      rand_setseed((unsigned)time(NULL));
   
         hWnd = FindWindow(szClassName, NULL);          hWnd = FindWindow(szClassName, NULL);
         if (hWnd != NULL) {          if (hWnd != NULL) {
                 ShowWindow(hWnd, SW_RESTORE);                  ShowWindow(hWnd, SW_RESTORE);
                 SetForegroundWindow(hWnd);                  SetForegroundWindow(hWnd);
                   dosio_term();
                 return(FALSE);                  return(FALSE);
         }          }
   
         GetModuleFileName(NULL, modulefile, sizeof(modulefile));  
         file_setcd(modulefile);  
         initload();  
   
         hInst = hInstance;          hInst = hInstance;
         hPreI = hPreInst;          hPreI = hPreInst;
         TRACEINIT();          TRACEINIT();
   
   //      keystat_initialize();
   
         if (!hPreInst) {          if (!hPreInst) {
                 wc.style = CS_BYTEALIGNCLIENT | CS_HREDRAW | CS_VREDRAW;                  wc.style = CS_BYTEALIGNCLIENT | CS_HREDRAW | CS_VREDRAW;
                 wc.lpfnWndProc = WndProc;                  wc.lpfnWndProc = WndProc;
Line 720  int WINAPI WinMain(HINSTANCE hInstance,  Line 721  int WINAPI WinMain(HINSTANCE hInstance, 
         hWndMain = hWnd;          hWndMain = hWnd;
         scrnmng_initialize();          scrnmng_initialize();
   
         sysmng_updatecaption(3);          menu_setiplrom(xmilcfg.ROM_TYPE);
           menu_setbootmedia(xmilcfg.DIP_SW);
         xmenu_setiplrom(xmilcfg.ROM_TYPE);          menu_setresolute(xmilcfg.DIP_SW);
         xmenu_setsound(xmilcfg.SOUND_SW);          menu_setdispmode(xmilcfg.DISPSYNC);
         xmenu_setskipline(xmilcfg.SKIP_LINE);          menu_setraster(xmilcfg.RASTER);
         xmenu_setresolute(xmilcfg.DIP_SW);          menu_setwaitflg(xmiloscfg.NOWAIT);
         xmenu_setbootmedia(xmilcfg.DIP_SW);          menu_setframe(xmiloscfg.DRAW_SKIP);
         xmenu_setkey(0);          menu_setkey(0);
         xmenu_setbtnrapid(xmilcfg.BTN_RAPID);          menu_setsound(xmilcfg.SOUND_SW);
         xmenu_setbtnmode(xmilcfg.BTN_MODE);          menu_setjoystick(xmiloscfg.JOYSTICK);
         xmenu_setcpuspeed(xmilcfg.CPU8MHz);          menu_setmouse(xmilcfg.MOUSE_SW);
         xmenu_setwaitflg(xmiloscfg.NOWAIT);          menu_setcpuspeed(xmilcfg.CPU8MHz);
         xmenu_setframe(xmiloscfg.DRAW_SKIP);          menu_setmotorflg(xmilcfg.MOTOR);
         xmenu_setmotorflg(xmilcfg.MOTOR);          menu_setdispclk(xmiloscfg.DISPCLK);
         xmenu_setz80save(xmiloscfg.Z80SAVE);          menu_setbtnmode(xmilcfg.BTN_MODE);
         xmenu_setjoystick(xmiloscfg.JOYSTICK);          menu_setbtnrapid(xmilcfg.BTN_RAPID);
         xmenu_setdispclk(xmiloscfg.DISPCLK);  
         xmenu_setdispmode(xmilcfg.DISPSYNC);  
         xmenu_setmouse(xmilcfg.MOUSE_SW);  
   
         ShowWindow(hWnd, nCmdShow);          ShowWindow(hWnd, nCmdShow);
         UpdateWindow(hWnd);          UpdateWindow(hWnd);
   
         sysmenu_initialize();          sysmenu_initialize();
 //      xmenu_initialize();          menu_initialize();
         DrawMenuBar(hWnd);          DrawMenuBar(hWnd);
   
         sysmenu_setwinsnap(xmiloscfg.WINSNAP);          sysmenu_setwinsnap(xmiloscfg.WINSNAP);
Line 761  int WINAPI WinMain(HINSTANCE hInstance,  Line 759  int WINAPI WinMain(HINSTANCE hInstance, 
                         return(FALSE);                          return(FALSE);
                 }                  }
         }          }
         joymng_initialize();  
   
         juliet_load();          juliet_load();
         juliet_prepare();          juliet_prepare();
   
 //      juliet2_reset();  //      juliet2_reset();
         if (soundmng_initialize() == SUCCESS) {          if (soundmng_initialize() == SUCCESS) {
                 soundmng_pcmload(SOUND_PCMSEEK, OEMTEXT("fddseek.wav"), 0);                  soundmng_pcmload(SOUND_PCMSEEK, OEMTEXT("fddseek.wav"), 0);
Line 774  int WINAPI WinMain(HINSTANCE hInstance,  Line 770  int WINAPI WinMain(HINSTANCE hInstance, 
                 soundmng_pcmvolume(SOUND_PCMSEEK1, xmilcfg.MOTORVOL);                  soundmng_pcmvolume(SOUND_PCMSEEK1, xmilcfg.MOTORVOL);
         }          }
   
           sysmng_initialize();
           joymng_initialize();
   
         pccore_initialize();          pccore_initialize();
         pccore_reset();          pccore_reset();
   

Removed from v.1.8  
changed lines
  Added in v.1.13


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