--- xmil/win9x/xmil.cpp 2004/08/07 10:53:01 1.9 +++ xmil/win9x/xmil.cpp 2004/08/12 11:03:09 1.15 @@ -10,7 +10,6 @@ #include "scrnmng.h" #include "soundmng.h" #include "sysmng.h" -#include "scrndraw.h" #include "ddrawbmp.h" #include "winloc.h" #include "dclock.h" @@ -24,7 +23,9 @@ #include "pccore.h" #include "iocore.h" #include "timing.h" +#include "keystat.h" #include "debugsub.h" +#include "scrndraw.h" #include "makescrn.h" #include "diskdrv.h" #include "fdd_ini.h" @@ -214,37 +215,37 @@ LRESULT CALLBACK WndProc(HWND hWnd, UINT break; case IDM_TURBOZ: - xmenu_setiplrom(3); + menu_setiplrom(3); updateflag = SYS_UPDATECFG; break; case IDM_TURBO: - xmenu_setiplrom(2); + menu_setiplrom(2); updateflag = SYS_UPDATECFG; break; case IDM_X1ROM: - xmenu_setiplrom(1); + menu_setiplrom(1); updateflag = SYS_UPDATECFG; break; case IDM_BOOT2D: - xmenu_setbootmedia(0); + menu_setbootmedia(0); updateflag = SYS_UPDATECFG; break; case IDM_BOOT2HD: - xmenu_setbootmedia(DIPSW_BOOTMEDIA); + menu_setbootmedia(DIPSW_BOOTMEDIA); updateflag = SYS_UPDATECFG; break; case IDM_HIGHRES: - xmenu_setresolute(0); + menu_setresolute(0); updateflag = SYS_UPDATECFG; break; case IDM_LOWRES: - xmenu_setresolute(DIPSW_RESOLUTE); + menu_setresolute(DIPSW_RESOLUTE); updateflag = SYS_UPDATECFG; break; @@ -258,87 +259,88 @@ LRESULT CALLBACK WndProc(HWND hWnd, UINT case IDM_WIDTH80: crtc.s.TXT_XL = 80; - crtc.s.GRP_XL = 640; +// crtc.s.GRP_XL = 640; vrambank_patch(); scrnallflash = 1; break; case IDM_WIDTH40: crtc.s.TXT_XL = 40; - crtc.s.GRP_XL = 320; +// crtc.s.GRP_XL = 320; vrambank_patch(); scrnallflash = 1; break; 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; case IDM_NOWAIT: - xmenu_setwaitflg(xmiloscfg.NOWAIT ^ 1); + menu_setwaitflg(xmiloscfg.NOWAIT ^ 1); updateflag = SYS_UPDATECFG; break; - case IDM_RASTER: - xmenu_setframe(0); + case IDM_AUTOFPS: + menu_setframe(0); updateflag = SYS_UPDATECFG; break; case IDM_60FPS: - xmenu_setframe(1); + menu_setframe(1); updateflag = SYS_UPDATECFG; break; case IDM_30FPS: - xmenu_setframe(2); + menu_setframe(2); updateflag = SYS_UPDATECFG; break; case IDM_20FPS: - xmenu_setframe(3); + menu_setframe(3); updateflag = SYS_UPDATECFG; break; case IDM_15FPS: - xmenu_setframe(4); + menu_setframe(4); updateflag = SYS_UPDATECFG; break; case IDM_KEY: - xmenu_setkey(0); + menu_setkey(0); break; case IDM_JOY1: - xmenu_setkey(1); + menu_setkey(1); break; case IDM_JOY2: - xmenu_setkey(2); + menu_setkey(2); break; case IDM_FMBOARD: - xmenu_setsound(xmilcfg.SOUND_SW ^ 1); + menu_setsound(xmilcfg.SOUND_SW ^ 1); updateflag = SYS_UPDATECFG; break; case IDM_JOYSTICK: - xmenu_setjoystick(xmiloscfg.JOYSTICK ^ 1); + menu_setjoystick(xmiloscfg.JOYSTICK ^ 1); updateflag = SYS_UPDATECFG; break; case IDM_MOUSE: // mousemng_toggle(MOUSEPROC_SYSTEM); - xmenu_setmouse(xmilcfg.MOUSE_SW ^ 1); - updateflag = SYS_UPDATECFG; - break; - - case IDM_8MHZ: - xmenu_setcpuspeed(xmilcfg.CPU8MHz ^ 1); + menu_setmouse(xmilcfg.MOUSE_SW ^ 1); updateflag = SYS_UPDATECFG; break; case IDM_SEEKSND: - xmenu_setmotorflg(xmilcfg.MOTOR ^ 1); + menu_setmotorflg(xmilcfg.MOTOR ^ 1); updateflag = SYS_UPDATECFG; break; @@ -355,36 +357,25 @@ LRESULT CALLBACK WndProc(HWND hWnd, UINT break; case IDM_DISPCLOCK: - xmenu_setdispclk(xmiloscfg.DISPCLK ^ 1); + menu_setdispclk(xmiloscfg.DISPCLK ^ 1); updateflag = SYS_UPDATECFG; break; case IDM_DISPFRAME: - xmenu_setdispclk(xmiloscfg.DISPCLK ^ 2); - updateflag = SYS_UPDATECFG; - break; - - case IDM_SKIPLINE: - xmenu_setskipline(xmilcfg.SKIP_LINE ^ 1); + menu_setdispclk(xmiloscfg.DISPCLK ^ 2); updateflag = SYS_UPDATECFG; break; case IDM_JOYX: - xmenu_setbtnmode(xmilcfg.BTN_MODE ^ 1); + menu_setbtnmode(xmilcfg.BTN_MODE ^ 1); updateflag = SYS_UPDATECFG; break; case IDM_RAPID: - xmenu_setbtnrapid(xmilcfg.BTN_RAPID ^ 1); + menu_setbtnrapid(xmilcfg.BTN_RAPID ^ 1); updateflag = SYS_UPDATECFG; break; - case IDM_HALFBMP: - winuienter(); - bmpsavehalf(); - winuileave(); - break; - case IDM_Z80SAVE: debugsub_status(); break; @@ -497,7 +488,7 @@ LRESULT CALLBACK WndProc(HWND hWnd, UINT case WM_KEYDOWN: if (wParam == VK_F12) { mousemng_toggle(MOUSEPROC_SYSTEM); - // xmenu_setmouse(np2oscfg.MOUSE_SW ^ 1); + // menu_setmouse(np2oscfg.MOUSE_SW ^ 1); // sysmng_update(SYS_UPDATECFG); } else { @@ -577,7 +568,7 @@ LRESULT CALLBACK WndProc(HWND hWnd, UINT case WM_MBUTTONDOWN: mousemng_toggle(MOUSEPROC_SYSTEM); - // xmenu_setmouse(np2oscfg.MOUSE_SW ^ 1); + // menu_setmouse(np2oscfg.MOUSE_SW ^ 1); // sysmng_update(SYS_UPDATECFG); break; @@ -676,21 +667,25 @@ int WINAPI WinMain(HINSTANCE hInstance, WNDCLASS wc; MSG msg; + GetModuleFileName(NULL, modulefile, sizeof(modulefile)); + dosio_init(); + file_setcd(modulefile); + initload(); + hWnd = FindWindow(szClassName, NULL); if (hWnd != NULL) { ShowWindow(hWnd, SW_RESTORE); SetForegroundWindow(hWnd); + dosio_term(); return(FALSE); } - GetModuleFileName(NULL, modulefile, sizeof(modulefile)); - file_setcd(modulefile); - initload(); - hInst = hInstance; hPreI = hPreInst; TRACEINIT(); +// keystat_initialize(); + if (!hPreInst) { wc.style = CS_BYTEALIGNCLIENT | CS_HREDRAW | CS_VREDRAW; wc.lpfnWndProc = WndProc; @@ -719,31 +714,27 @@ int WINAPI WinMain(HINSTANCE hInstance, hWndMain = hWnd; scrnmng_initialize(); - sysmng_updatecaption(3); - - xmenu_setiplrom(xmilcfg.ROM_TYPE); - xmenu_setsound(xmilcfg.SOUND_SW); - xmenu_setskipline(xmilcfg.SKIP_LINE); - xmenu_setresolute(xmilcfg.DIP_SW); - xmenu_setbootmedia(xmilcfg.DIP_SW); - xmenu_setkey(0); - xmenu_setbtnrapid(xmilcfg.BTN_RAPID); - xmenu_setbtnmode(xmilcfg.BTN_MODE); - xmenu_setcpuspeed(xmilcfg.CPU8MHz); - xmenu_setwaitflg(xmiloscfg.NOWAIT); - xmenu_setframe(xmiloscfg.DRAW_SKIP); - xmenu_setmotorflg(xmilcfg.MOTOR); - xmenu_setz80save(xmiloscfg.Z80SAVE); - xmenu_setjoystick(xmiloscfg.JOYSTICK); - xmenu_setdispclk(xmiloscfg.DISPCLK); - xmenu_setdispmode(xmilcfg.DISPSYNC); - xmenu_setmouse(xmilcfg.MOUSE_SW); + menu_setiplrom(xmilcfg.ROM_TYPE); + menu_setbootmedia(xmilcfg.DIP_SW); + menu_setresolute(xmilcfg.DIP_SW); + menu_setdispmode(xmilcfg.DISPSYNC); + menu_setraster(xmilcfg.RASTER); + menu_setwaitflg(xmiloscfg.NOWAIT); + menu_setframe(xmiloscfg.DRAW_SKIP); + menu_setkey(0); + menu_setsound(xmilcfg.SOUND_SW); + menu_setjoystick(xmiloscfg.JOYSTICK); + menu_setmouse(xmilcfg.MOUSE_SW); + menu_setmotorflg(xmilcfg.MOTOR); + menu_setdispclk(xmiloscfg.DISPCLK); + menu_setbtnmode(xmilcfg.BTN_MODE); + menu_setbtnrapid(xmilcfg.BTN_RAPID); ShowWindow(hWnd, nCmdShow); UpdateWindow(hWnd); sysmenu_initialize(); -// xmenu_initialize(); + menu_initialize(); DrawMenuBar(hWnd); sysmenu_setwinsnap(xmiloscfg.WINSNAP); @@ -760,11 +751,9 @@ int WINAPI WinMain(HINSTANCE hInstance, return(FALSE); } } - joymng_initialize(); juliet_load(); juliet_prepare(); - // juliet2_reset(); if (soundmng_initialize() == SUCCESS) { soundmng_pcmload(SOUND_PCMSEEK, OEMTEXT("fddseek.wav"), 0); @@ -773,6 +762,9 @@ int WINAPI WinMain(HINSTANCE hInstance, soundmng_pcmvolume(SOUND_PCMSEEK1, xmilcfg.MOTORVOL); } + sysmng_initialize(); + joymng_initialize(); + pccore_initialize(); pccore_reset();