--- np2/macosx/np2.cpp 2004/03/24 17:11:09 1.58 +++ np2/macosx/np2.cpp 2004/07/13 17:10:06 1.63 @@ -39,13 +39,18 @@ #include "toolwin.h" #include "aboutdlg.h" #include "keystat.h" -#include "kdispwin.h" +#include "subwind.h" +#include "macclnd.h" #define NP2OPENING // #define OPENING_WAIT 1500 +#if !defined(SUPPORT_PC9821) NP2OSCFG np2oscfg = {"Neko Project IIx", //titles +#else + NP2OSCFG np2oscfg = {"Neko Project 21x", //titles +#endif -1, //winx -1, //winy 0, //NOWAIT @@ -59,11 +64,15 @@ 0, //confirm 0, //resume 1, //toolwin +#if defined(SUPPORT_KEYDISP) + 0, //keydisp +#endif +#if defined(SUPPORT_SOFTKBD) + 0, //softkey +#endif + 0, //jastsnd 0, //I286SAVE -#ifdef SUPPORT_KEYDISP - 1, //keydisp -#endif }; WindowPtr hWndMain; @@ -176,9 +185,21 @@ static void MenuBarInit(void) { #ifndef SUPPORT_KEYDISP DisableMenuItem(GetMenuRef(IDM_OTHER), IDM_KEYDISP); #endif +#ifndef SUPPORT_SOFTKBD + SetMenuItemTextWithCFString(GetMenuRef(IDM_OTHER), IDM_SOFTKBD, CFSTR("please wait for 0.80")); + DisableMenuItem(GetMenuRef(IDM_OTHER), IDM_SOFTKBD); +#endif if (np2oscfg.I286SAVE) { AppendMenuItemTextWithCFString(GetMenuRef(IDM_OTHER), CFCopyLocalizedString(CFSTR("i286 save"),"i286"), kMenuItemAttrIconDisabled, NULL,NULL); } + +#if defined(SUPPORT_PC9821) + AppendMenuItemTextWithCFString(GetMenuRef(IDM_MEMORY), CFSTR("11.6MB"), kMenuItemAttrIconDisabled, NULL, NULL); + AppendMenuItemTextWithCFString(GetMenuRef(IDM_MEMORY), CFSTR("13.6MB"), kMenuItemAttrIconDisabled, NULL, NULL); + SetMenuItemTextWithCFString(GetMenuRef(IDM_HELP), IDM_NP2HELP, CFSTR("Neko Project 21x Help")); + SetMenuItemTextWithCFString(GetMenuRef(IDM_APPLE), IDM_ABOUT, CFSTR("About Neko Project 21x...")); + SetMenuItemTextWithCFString(GetMenuRef(IDM_OTHER), IDM_I286SAVE, CFSTR("i386 save")); +#endif if (!(np2cfg.fddequip & 1)) { DisableAllMenuItems(GetMenuRef(IDM_FDD1)); @@ -627,6 +648,16 @@ void HandleMenuChoice(long wParam) { update |= SYS_UPDATECFG; break; + case IDM_MEM116: + menu_setextmem(11); + update |= SYS_UPDATECFG; + break; + + case IDM_MEM136: + menu_setextmem(13); + update |= SYS_UPDATECFG; + break; + case IDM_BMPSAVE: dialog_writebmp(); break; @@ -634,6 +665,10 @@ void HandleMenuChoice(long wParam) { case IDM_S98LOGGING: dialog_s98(); break; + + case IDM_CALENDAR: + initClnd(); + break; case IDM_DISPCLOCK: menu_setdispclk(np2oscfg.DISPCLK ^ 1); @@ -675,6 +710,17 @@ void HandleMenuChoice(long wParam) { } break; #endif +#if defined(SUPPORT_SOFTKBD) + case IDM_SOFTKBD: + menu_setsoftwarekeyboard(np2oscfg.softkey ^ 1); + if (np2oscfg.softkey) { + skbdwin_create(); + } + else { + skbdwin_destroy(); + } + break; +#endif case IDM_I286SAVE: debugsub_status(); @@ -724,6 +770,7 @@ static void framereset(UINT waitcnt) { framecnt = 0; kdispwin_draw((BYTE)waitcnt); toolwin_draw((BYTE)waitcnt); + skbdwin_process(); if (np2oscfg.DISPCLK & 3) { if (sysmng_workclockrenewal()) { sysmng_updatecaption(3); @@ -809,12 +856,14 @@ int main(int argc, char *argv[]) { keystat_initialize(); kdispwin_initialize(); + skbdwin_readini(); toolwin_readini(); kdispwin_readini(); if (!(setupMainWindow())) { return(0); } + skbdwin_initialize(); #ifdef NP2OPENING openingNP2(); @@ -842,6 +891,9 @@ int main(int argc, char *argv[]) { #if defined(SUPPORT_KEYDISP) menu_setkeydisp(np2oscfg.keydisp); #endif +#if defined(SUPPORT_SOFTKBD) + menu_setsoftwarekeyboard(np2oscfg.softkey); +#endif scrnmng_initialize(); if (scrnmng_create(scrnmode) != SUCCESS) { @@ -888,6 +940,11 @@ int main(int argc, char *argv[]) { kdispwin_create(); } #endif +#if defined(SUPPORT_SOFTKBD) + if (np2oscfg.softkey) { + skbdwin_create(); + } +#endif theTarget = GetEventDispatcherTarget(); @@ -995,11 +1052,14 @@ int main(int argc, char *argv[]) { scrnmng_destroy(); kdispwin_destroy(); + skbdwin_destroy(); if (sys_updates & (SYS_UPDATECFG | SYS_UPDATEOSCFG)) { initsave(); // np2.cfg create toolwin_writeini(); // np2.cfg append kdispwin_writeini(); + skbdwin_writeini(); } + skbdwin_deinitialize(); TRACETERM(); macossub_term(); dosio_term();