--- np2/macosx/menu.cpp 2003/10/28 16:44:44 1.6 +++ np2/macosx/menu.cpp 2004/04/18 16:42:28 1.15 @@ -5,6 +5,7 @@ #include "menu.h" #include "pccore.h" #include "soundrecording.h" +#include "scrnmng.h" #define MFCHECK(a) ((a)?1:0) #ifdef TARGET_API_MAC_CARBON @@ -92,18 +93,36 @@ void menu_setxshift(BYTE value) { _CheckMenuItem(hmenu, IDM_XGRPH, MFCHECK(value & 4)); } -void menu_setf12copy(BYTE value) { +void menu_setf11key(BYTE value) { MenuHandle hmenu; hmenu = _GetMenu(IDM_KEYBOARD); - if (value >= 3) { + if (value >= 5) { value = 0; } - np2oscfg.F12COPY = value; + np2oscfg.F11KEY = value; + _CheckMenuItem(hmenu, IDM_F11KANA, MFCHECK(value == 0)); + _CheckMenuItem(hmenu, IDM_F11STOP, MFCHECK(value == 1)); + _CheckMenuItem(hmenu, IDM_F11EQU, MFCHECK(value == 2)); + _CheckMenuItem(hmenu, IDM_F11NFER, MFCHECK(value == 3)); + _CheckMenuItem(hmenu, IDM_F11USER, MFCHECK(value == 4)); +} + +void menu_setf12key(BYTE value) { + + MenuHandle hmenu; + + hmenu = _GetMenu(IDM_KEYBOARD); + if (value >= 5) { + value = 0; + } + np2oscfg.F12KEY = value; _CheckMenuItem(hmenu, IDM_F12MOUSE, MFCHECK(value == 0)); _CheckMenuItem(hmenu, IDM_F12COPY, MFCHECK(value == 1)); - _CheckMenuItem(hmenu, IDM_F12STOP, MFCHECK(value == 2)); + _CheckMenuItem(hmenu, IDM_F12COMMA, MFCHECK(value == 2)); + _CheckMenuItem(hmenu, IDM_F12XFER, MFCHECK(value == 3)); + _CheckMenuItem(hmenu, IDM_F12USER, MFCHECK(value == 4)); } void menu_setbeepvol(BYTE value) { @@ -133,6 +152,14 @@ void menu_setsound(BYTE value) { _CheckMenuItem(hmenu, IDM_PC9801_118, MFCHECK(np2cfg.SOUND_SW == 0x08)); _CheckMenuItem(hmenu, IDM_SPEAKBOARD, MFCHECK(np2cfg.SOUND_SW & 0x20)); _CheckMenuItem(hmenu, IDM_SPARKBOARD, MFCHECK(np2cfg.SOUND_SW & 0x40)); + _CheckMenuItem(hmenu, IDM_AMD98, MFCHECK(np2cfg.SOUND_SW & 0x80)); +} + +void menu_setjastsound(BYTE value) { + + value &= 1; + np2oscfg.jastsnd = value; + CheckMenuItem(GetMenuRef(IDM_SOUND), IDM_JASTSOUND, MFCHECK(value)); } void menu_setmotorflg(BYTE value) { @@ -193,15 +220,21 @@ void menu_setmouse(BYTE value) { value &= 1; np2oscfg.MOUSE_SW = value; _CheckMenuItem(GetMenu(IDM_DEVICE), IDM_MOUSE, MFCHECK(value)); + if (scrnmode & SCRNMODE_FULLSCREEN) { + if (!value) { + ShowMenuBar(); + } + else { + HideMenuBar(); + } + } } #endif -#if 0 void menu_sets98logging(BYTE value) { CheckMenuItem(GetMenuRef(IDM_OTHER), IDM_S98LOGGING, MFCHECK(value)); } -#endif void menu_setrecording(bool end) { int ret; @@ -216,3 +249,27 @@ void menu_setrecording(bool end) { } } +void menu_setmsrapid(BYTE value) { + + value &= 1; + np2cfg.MOUSERAPID = value; + CheckMenuItem(GetMenuRef(IDM_OTHER), IDM_MSRAPID, MFCHECK(value)); +} + +void menu_setkeydisp(BYTE value) { + +#if defined(SUPPORT_KEYDISP) + value &= 1; + np2oscfg.keydisp = value; + CheckMenuItem(GetMenuRef(IDM_OTHER), IDM_KEYDISP, MFCHECK(value)); +#endif +} + +void menu_setsoftwarekeyboard(BYTE value) { + +#if defined(SUPPORT_SOFTKBD) + value &= 1; + np2oscfg.softkey = value; + CheckMenuItem(GetMenuRef(IDM_OTHER), IDM_SOFTKBD, MFCHECK(value)); +#endif +}