--- np2/sdl/sysmenu.c 2003/11/21 06:51:12 1.1 +++ np2/sdl/sysmenu.c 2003/12/26 23:30:26 1.3 @@ -12,13 +12,16 @@ #include "mpu98ii.h" #include "sound.h" #include "beep.h" +#include "diskdrv.h" #include "vramhdl.h" #include "menubase.h" #include "menustr.h" #include "sysmenu.h" #include "sysmenu.res" #include "sysmenu.str" +#include "filesel.h" #include "dlgcfg.h" +#include "dlgscr.h" #include "dlgabout.h" @@ -38,6 +41,38 @@ static void sys_cmd(MENUID id) { (char *)mstr_cfg, dlgcfg_cmd); break; + case MID_FDD1OPEN: + filesel_fdd(0); + break; + + case MID_FDD1EJECT: + diskdrv_setfdd(0, NULL, 0); + break; + + case MID_FDD2OPEN: + filesel_fdd(1); + break; + + case MID_FDD2EJECT: + diskdrv_setfdd(1, NULL, 0); + break; + + case MID_SASI1OPEN: + filesel_sasi(0); + break; + + case MID_SASI1EJECT: + diskdrv_sethdd(0, NULL); + break; + + case MID_SASI2OPEN: + filesel_sasi(1); + break; + + case MID_SASI2EJECT: + diskdrv_sethdd(1, NULL); + break; + case MID_DISPSYNC: np2cfg.DISPSYNC ^= 1; update |= SYS_UPDATECFG; @@ -78,13 +113,10 @@ static void sys_cmd(MENUID id) { update |= SYS_UPDATECFG; break; -#if 0 case MID_SCREENOPT: - winuienter(); - dialog_scropt(hWnd); - winuileave(); + menudlg_create(DLGSCR_WIDTH, DLGSCR_HEIGHT, + (char *)mstr_scropt, dlgscr_cmd); break; -#endif case MID_KEY: np2cfg.KEY_MODE = 0; @@ -104,6 +136,12 @@ static void sys_cmd(MENUID id) { update |= SYS_UPDATECFG; break; + case MID_MOUSEKEY: + np2cfg.KEY_MODE = 3; + keystat_resetjoykey(); + update |= SYS_UPDATECFG; + break; + case MID_XSHIFT: np2cfg.XSHIFT ^= 1; keystat_forcerelease(0x70); @@ -397,6 +435,7 @@ BOOL sysmenu_menuopen(UINT menutype, int menusys_setcheck(MID_KEY, (b == 0)); menusys_setcheck(MID_JOY1, (b == 1)); menusys_setcheck(MID_JOY2, (b == 2)); + menusys_setcheck(MID_MOUSEKEY, (b == 3)); b = np2cfg.XSHIFT; menusys_setcheck(MID_XSHIFT, (b & 1)); menusys_setcheck(MID_XCTRL, (b & 2));