Diff for /xmil/win9xc/xmil.cpp between versions 1.4 and 1.5

version 1.4, 2004/08/12 11:03:09 version 1.5, 2004/08/12 18:22:54
Line 33  static const OEMCHAR szClassName[] = OEM Line 33  static const OEMCHAR szClassName[] = OEM
                 XMILOSCFG       xmiloscfg = {                  XMILOSCFG       xmiloscfg = {
                                                         CW_USEDEFAULT, CW_USEDEFAULT,                                                          CW_USEDEFAULT, CW_USEDEFAULT,
                                                         0, 0, 1,                                                          0, 0, 1,
                                                         0, 0, 0};                                                          0, 0, 0,
   #if defined(SUPPORT_RESUME)
                                                           0,
   #endif
   #if defined(SUPPORT_STATSAVE)
                                                           1,
   #endif
                                           };
   
                 OEMCHAR         szProgName[] = OEMTEXT("X millennium C");                  OEMCHAR         szProgName[] = OEMTEXT("X millennium C");
                 HWND            hWndMain;                  HWND            hWndMain;
Line 81  static void dispbmp(HINSTANCE hinst, HDC Line 88  static void dispbmp(HINSTANCE hinst, HDC
   
 // ----  // ----
   
   static void xmilcmd(HWND hWnd, UINT cmd) {
   
           UINT    update;
   
           update = 0;
           switch(cmd) {
                   case IDM_IPLRESET:
                           pccore_reset();
                           break;
   
                   case IDM_NMIRESET:
                           Z80_NMI();
                           break;
   
                   case IDM_CONFIG:
                           winuienter();
                           DialogBox(hInst, MAKEINTRESOURCE(IDD_CONFIG),
                                                                                           hWnd, (DLGPROC)CfgDialogProc);
                           winuileave();
                           break;
   
                   case IDM_NEWDISK:
                           winuienter();
                           dialog_newdisk(hWnd);
                           winuileave();
                           break;
   
                   case IDM_EXIT:
                           SendMessage(hWnd, WM_CLOSE, 0, 0L);
                           break;
   
                   case IDM_FDD0OPEN:
                           winuienter();
                           dialog_changefdd(hWnd, 0);
                           winuileave();
                           break;
   
                   case IDM_FDD0EJECT:
                           diskdrv_setfdd(0, NULL, 0);
                           break;
   
                   case IDM_FDD1OPEN:
                           winuienter();
                           dialog_changefdd(hWnd, 1);
                           winuileave();
                           break;
   
                   case IDM_FDD1EJECT:
                           diskdrv_setfdd(1, NULL, 0);
                           break;
   
                   case IDM_TURBOZ:
                           menu_setiplrom(3);
                           update = SYS_UPDATECFG;
                           break;
   
                   case IDM_TURBO:
                           menu_setiplrom(2);
                           update = SYS_UPDATECFG;
                           break;
   
                   case IDM_X1ROM:
                           menu_setiplrom(1);
                           update = SYS_UPDATECFG;
                           break;
   
                   case IDM_BOOT2D:
                           menu_setbootmedia(0);
                           update = SYS_UPDATECFG;
                           break;
   
                   case IDM_BOOT2HD:
                           menu_setbootmedia(DIPSW_BOOTMEDIA);
                           update = SYS_UPDATECFG;
                           break;
   
                   case IDM_HIGHRES:
                           menu_setresolute(0);
                           update = SYS_UPDATECFG;
                           break;
   
                   case IDM_LOWRES:
                           menu_setresolute(DIPSW_RESOLUTE);
                           update = SYS_UPDATECFG;
                           break;
   
                   case IDM_WINDOW:
                           scrnmng_changescreen(scrnmode & (~SCRNMODE_FULLSCREEN));
                           break;
   
                   case IDM_FULLSCREEN:
                           scrnmng_changescreen(scrnmode | SCRNMODE_FULLSCREEN);
                           break;
   
                   case IDM_WIDTH80:
                           crtc_forcesetwidth(80);
                           break;
   
                   case IDM_WIDTH40:
                           crtc_forcesetwidth(40);
                           break;
   
                   case IDM_DISPSYNC:
                           menu_setdispmode(xmilcfg.DISPSYNC ^ 1);
                           update = SYS_UPDATECFG;
                           break;
   
                   case IDM_RASTER:
                           menu_setraster(xmilcfg.RASTER ^ 1);
                           update = SYS_UPDATECFG;
                           break;
   
                   case IDM_NOWAIT:
                           menu_setwaitflg(xmiloscfg.NOWAIT ^ 1);
                           update = SYS_UPDATECFG;
                           break;
   
                   case IDM_AUTOFPS:
                           menu_setframe(0);
                           update = SYS_UPDATECFG;
                           break;
   
                   case IDM_60FPS:
                           menu_setframe(1);
                           update = SYS_UPDATECFG;
                           break;
   
                   case IDM_30FPS:
                           menu_setframe(2);
                           update = SYS_UPDATECFG;
                           break;
   
                   case IDM_20FPS:
                           menu_setframe(3);
                           update = SYS_UPDATECFG;
                           break;
   
                   case IDM_15FPS:
                           menu_setframe(4);
                           update = SYS_UPDATECFG;
                           break;
   
                   case IDM_KEY:
                           menu_setkey(0);
                           break;
   
                   case IDM_JOY1:
                           menu_setkey(1);
                           break;
   
                   case IDM_JOY2:
                           menu_setkey(2);
                           break;
   
                   case IDM_FMBOARD:
                           menu_setsound(xmilcfg.SOUND_SW ^ 1);
                           update = SYS_UPDATECFG;
                           break;
   
                   case IDM_JOYSTICK:
                           menu_setjoystick(xmiloscfg.JOYSTICK ^ 1);
                           update = SYS_UPDATECFG;
                           break;
   
                   case IDM_MOUSE:
                   //      mousemng_toggle(MOUSEPROC_SYSTEM);
                           menu_setmouse(xmilcfg.MOUSE_SW ^ 1);
                           update = SYS_UPDATECFG;
                           break;
   
                   case IDM_SEEKSND:
                           menu_setmotorflg(xmilcfg.MOTOR ^ 1);
                           update = SYS_UPDATECFG;
                           break;
   
                   case IDM_BMPSAVE:
                           winuienter();
                           bmpsave();
                           winuileave();
                           break;
   
                   case IDM_OPMLOG:
                           winuienter();
                           dialog_x1f(hWnd);
                           winuileave();
                           break;
   
                   case IDM_DISPCLOCK:
                           menu_setdispclk(xmiloscfg.DISPCLK ^ 1);
                           update = SYS_UPDATECFG;
                           break;
   
                   case IDM_DISPFRAME:
                           menu_setdispclk(xmiloscfg.DISPCLK ^ 2);
                           update = SYS_UPDATECFG;
                           break;
   
                   case IDM_JOYX:
                           menu_setbtnmode(xmilcfg.BTN_MODE ^ 1);
                           update = SYS_UPDATECFG;
                           break;
   
                   case IDM_RAPID:
                           menu_setbtnrapid(xmilcfg.BTN_RAPID ^ 1);
                           update = SYS_UPDATECFG;
                           break;
   
                   case IDM_Z80SAVE:
                           debugsub_status();
                           break;
   
                   case IDM_ABOUT:
                           winuienter();
                           DialogBox(hInst, MAKEINTRESOURCE(IDD_ABOUT),
                                                                                           hWnd, (DLGPROC)AboutDialogProc);
                           winuileave();
                           break;
           }
           sysmng_update(update);
   }
   
   
 LRESULT CALLBACK WndProc(HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam) {  LRESULT CALLBACK WndProc(HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam) {
   
         PAINTSTRUCT     ps;          PAINTSTRUCT     ps;
         RECT            rc;          RECT            rc;
         HDC                     hdc;          HDC                     hdc;
         UINT            updateflag;  
   
         switch (msg) {          switch (msg) {
                 case WM_CREATE:                  case WM_CREATE:
Line 97  LRESULT CALLBACK WndProc(HWND hWnd, UINT Line 325  LRESULT CALLBACK WndProc(HWND hWnd, UINT
                         break;                          break;
   
                 case WM_COMMAND:                  case WM_COMMAND:
                         updateflag = 0;                          xmilcmd(hWnd, LOWORD(wParam));
                         switch(LOWORD(wParam)) {  
                                 case IDM_IPLRESET:  
 #if 1  
                                         pccore_reset();  
 #else  
                                         if ((!juliet_YM2151IsEnable()) && (changehz)) {  
                                                 changehz = 0;  
                                                 STREAM_TERM();  
                                                 STREAM_CREATE();  
                                         }  
                                         if (reset_x1(xmilcfg.ROM_TYPE,  
                                                                 xmilcfg.SOUND_SW, xmilcfg.DIP_SW)) {  
                                                 PostQuitMessage(0);  
                                         }  
 #endif  
                                         break;  
   
                                 case IDM_NMIRESET:  
                                         Z80_NMI();  
                                         break;  
   
                                 case IDM_CONFIG:  
                                         winuienter();  
                                         DialogBox(hInst, MAKEINTRESOURCE(IDD_CONFIG),  
                                                                                         hWnd, (DLGPROC)CfgDialogProc);  
                                         winuileave();  
                                         break;  
   
                                 case IDM_NEWDISK:  
                                         winuienter();  
                                         dialog_newdisk(hWnd);  
                                         winuileave();  
                                         break;  
   
                                 case IDM_EXIT:  
                                         SendMessage(hWnd, WM_CLOSE, 0, 0L);  
                                         break;  
   
                                 case IDM_FDD0OPEN:  
                                         winuienter();  
                                         dialog_changefdd(hWnd, 0);  
                                         winuileave();  
                                         break;  
   
                                 case IDM_FDD0EJECT:  
                                         diskdrv_setfdd(0, NULL, 0);  
                                         break;  
   
                                 case IDM_FDD1OPEN:  
                                         winuienter();  
                                         dialog_changefdd(hWnd, 1);  
                                         winuileave();  
                                         break;  
   
                                 case IDM_FDD1EJECT:  
                                         diskdrv_setfdd(1, NULL, 0);  
                                         break;  
   
                                 case IDM_TURBOZ:  
                                         menu_setiplrom(3);  
                                         updateflag = SYS_UPDATECFG;  
                                         break;  
   
                                 case IDM_TURBO:  
                                         menu_setiplrom(2);  
                                         updateflag = SYS_UPDATECFG;  
                                         break;  
   
                                 case IDM_X1ROM:  
                                         menu_setiplrom(1);  
                                         updateflag = SYS_UPDATECFG;  
                                         break;  
   
                                 case IDM_BOOT2D:  
                                         menu_setbootmedia(0);  
                                         updateflag = SYS_UPDATECFG;  
                                         break;  
   
                                 case IDM_BOOT2HD:  
                                         menu_setbootmedia(DIPSW_BOOTMEDIA);  
                                         updateflag = SYS_UPDATECFG;  
                                         break;  
   
                                 case IDM_HIGHRES:  
                                         menu_setresolute(0);  
                                         updateflag = SYS_UPDATECFG;  
                                         break;  
   
                                 case IDM_LOWRES:  
                                         menu_setresolute(DIPSW_RESOLUTE);  
                                         updateflag = SYS_UPDATECFG;  
                                         break;  
   
                                 case IDM_WINDOW:  
                                         scrnmng_changescreen(scrnmode & (~SCRNMODE_FULLSCREEN));  
                                         break;  
   
                                 case IDM_FULLSCREEN:  
                                         scrnmng_changescreen(scrnmode | SCRNMODE_FULLSCREEN);  
                                         break;  
   
                                 case IDM_WIDTH80:  
                                         crtc.s.TXT_XL = 80;  
 //                                      crtc.s.GRP_XL = 640;  
                                         vrambank_patch();  
                                         scrnallflash = 1;  
                                         break;  
   
                                 case IDM_WIDTH40:  
                                         crtc.s.TXT_XL = 40;  
 //                                      crtc.s.GRP_XL = 320;  
                                         vrambank_patch();  
                                         scrnallflash = 1;  
                                         break;  
   
                                 case IDM_DISPSYNC:  
                                         menu_setdispmode(xmilcfg.DISPSYNC ^ 1);  
                                         updateflag = SYS_UPDATECFG;  
                                         break;  
   
                                 case IDM_RASTER:  
                                         menu_setraster(xmilcfg.RASTER ^ 1);  
                                         updateflag = SYS_UPDATECFG;  
                                         break;  
   
                                 case IDM_NOWAIT:  
                                         menu_setwaitflg(xmiloscfg.NOWAIT ^ 1);  
                                         updateflag = SYS_UPDATECFG;  
                                         break;  
   
                                 case IDM_AUTOFPS:  
                                         menu_setframe(0);  
                                         updateflag = SYS_UPDATECFG;  
                                         break;  
   
                                 case IDM_60FPS:  
                                         menu_setframe(1);  
                                         updateflag = SYS_UPDATECFG;  
                                         break;  
   
                                 case IDM_30FPS:  
                                         menu_setframe(2);  
                                         updateflag = SYS_UPDATECFG;  
                                         break;  
   
                                 case IDM_20FPS:  
                                         menu_setframe(3);  
                                         updateflag = SYS_UPDATECFG;  
                                         break;  
   
                                 case IDM_15FPS:  
                                         menu_setframe(4);  
                                         updateflag = SYS_UPDATECFG;  
                                         break;  
   
                                 case IDM_KEY:  
                                         menu_setkey(0);  
                                         break;  
   
                                 case IDM_JOY1:  
                                         menu_setkey(1);  
                                         break;  
   
                                 case IDM_JOY2:  
                                         menu_setkey(2);  
                                         break;  
   
                                 case IDM_FMBOARD:  
                                         menu_setsound(xmilcfg.SOUND_SW ^ 1);  
                                         updateflag = SYS_UPDATECFG;  
                                         break;  
   
                                 case IDM_JOYSTICK:  
                                         menu_setjoystick(xmiloscfg.JOYSTICK ^ 1);  
                                         updateflag = SYS_UPDATECFG;  
                                         break;  
   
                                 case IDM_MOUSE:  
                                 //      mousemng_toggle(MOUSEPROC_SYSTEM);  
                                         menu_setmouse(xmilcfg.MOUSE_SW ^ 1);  
                                         updateflag = SYS_UPDATECFG;  
                                         break;  
   
                                 case IDM_SEEKSND:  
                                         menu_setmotorflg(xmilcfg.MOTOR ^ 1);  
                                         updateflag = SYS_UPDATECFG;  
                                         break;  
   
                                 case IDM_BMPSAVE:  
                                         winuienter();  
                                         bmpsave();  
                                         winuileave();  
                                         break;  
   
                                 case IDM_OPMLOG:  
                                         winuienter();  
                                         dialog_x1f(hWnd);  
                                         winuileave();  
                                         break;  
   
                                 case IDM_DISPCLOCK:  
                                         menu_setdispclk(xmiloscfg.DISPCLK ^ 1);  
                                         updateflag = SYS_UPDATECFG;  
                                         break;  
   
                                 case IDM_DISPFRAME:  
                                         menu_setdispclk(xmiloscfg.DISPCLK ^ 2);  
                                         updateflag = SYS_UPDATECFG;  
                                         break;  
   
                                 case IDM_JOYX:  
                                         menu_setbtnmode(xmilcfg.BTN_MODE ^ 1);  
                                         updateflag = SYS_UPDATECFG;  
                                         break;  
   
                                 case IDM_RAPID:  
                                         menu_setbtnrapid(xmilcfg.BTN_RAPID ^ 1);  
                                         updateflag = SYS_UPDATECFG;  
                                         break;  
   
                                 case IDM_Z80SAVE:  
                                         debugsub_status();  
                                         break;  
   
                                 case IDM_ABOUT:  
                                         winuienter();  
                                         DialogBox(hInst, MAKEINTRESOURCE(IDD_ABOUT),  
                                                                                         hWnd, (DLGPROC)AboutDialogProc);  
                                         winuileave();  
                                         break;  
                         }  
                         sysmng_update(updateflag);  
                         break;                          break;
   
                 case WM_ACTIVATE:                  case WM_ACTIVATE:

Removed from v.1.4  
changed lines
  Added in v.1.5


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