|
|
| version 1.2, 2003/10/23 10:57:49 | version 1.6, 2003/10/24 08:07:33 |
|---|---|
| Line 10 | Line 10 |
| #include "mackbd.h" | #include "mackbd.h" |
| #include "ini.h" | #include "ini.h" |
| #include "menu.h" | #include "menu.h" |
| #include "np2open.h" | |
| #include "dialog.h" | #include "dialog.h" |
| #include "memory.h" | #include "memory.h" |
| #include "pccore.h" | #include "pccore.h" |
| Line 34 | Line 35 |
| #define USE_RESUME | #define USE_RESUME |
| #if defined(NP2GCC) | NP2OSCFG np2oscfg = {0, 2, 0, 0, 0, 0}; |
| NP2OSCFG np2oscfg = {0, 2, 0, 0, 0, 0}; | |
| #else | |
| NP2OSCFG np2oscfg = {0, 2, 0, 0, 0}; | |
| #endif | |
| WindowPtr hWndMain; | WindowPtr hWndMain; |
| BOOL np2running; | BOOL np2running; |
| Line 143 static void HandleMenuChoice(long wParam | Line 140 static void HandleMenuChoice(long wParam |
| pccore_reset(); | pccore_reset(); |
| break; | break; |
| #if 0 | case IDM_CONFIGURE: |
| ConfigDialogProc(); | |
| break; | |
| case IDM_NEWDISK: | case IDM_NEWDISK: |
| newdisk(); | dialog_newdisk(); |
| break; | break; |
| #endif | |
| case IDM_FONT: | case IDM_FONT: |
| dialog_font(); | dialog_font(); |
| Line 449 static void HandleUpdateEvent(EventRecor | Line 448 static void HandleUpdateEvent(EventRecor |
| hWnd = (WindowPtr)pevent->message; | hWnd = (WindowPtr)pevent->message; |
| BeginUpdate(hWnd); | BeginUpdate(hWnd); |
| scrndraw_redraw(); | if (np2running) { |
| scrndraw_redraw(); | |
| } | |
| else { | |
| np2open(); | |
| } | |
| EndUpdate(hWnd); | EndUpdate(hWnd); |
| } | } |
| Line 460 static void HandleMouseDown(EventRecord | Line 464 static void HandleMouseDown(EventRecord |
| switch(FindWindow(pevent->where, &hWnd)) { | switch(FindWindow(pevent->where, &hWnd)) { |
| case inMenuBar: | case inMenuBar: |
| HandleMenuChoice(MenuSelect(pevent->where)); | if (np2running) { |
| soundmng_stop(); | |
| HandleMenuChoice(MenuSelect(pevent->where)); | |
| } | |
| break; | break; |
| case inDrag: | case inDrag: |
| Line 510 static void eventproc(EventRecord *event | Line 517 static void eventproc(EventRecord *event |
| case keyDown: | case keyDown: |
| case autoKey: | case autoKey: |
| mackbd_f12down(((event->message) & keyCodeMask) >> 8); | if (np2running) { |
| if (event->modifiers & cmdKey) { | mackbd_f12down(((event->message) & keyCodeMask) >> 8); |
| HandleMenuChoice(MenuKey(event->message & charCodeMask)); | if (event->modifiers & cmdKey) { |
| HandleMenuChoice(MenuKey(event->message & charCodeMask)); | |
| } | |
| } | } |
| break; | break; |
| Line 564 static void flagsave(const char *ext) { | Line 573 static void flagsave(const char *ext) { |
| statsave_save(path); | statsave_save(path); |
| } | } |
| static void flagload(const char *ext) { | static void flagdelete(const char *ext) { |
| char path[MAX_PATH]; | char path[MAX_PATH]; |
| char buf[1024]; | |
| getstatfilename(path, ext, sizeof(path)); | |
| file_delete(path); | |
| } | |
| static int flagload(const char *ext) { | |
| int ret; | int ret; |
| char path[MAX_PATH]; | |
| char buf[1024]; | |
| int r; | |
| ret = IDOK; | |
| getstatfilename(path, ext, sizeof(path)); | getstatfilename(path, ext, sizeof(path)); |
| ret = statsave_check(path, buf, sizeof(buf)); | r = statsave_check(path, buf, sizeof(buf)); |
| if (ret == NP2FLAG_SUCCESS) { | if (r & (~NP2FLAG_DISKCHG)) { |
| ResumeErrorDialogProc(); | |
| ret = IDCANCEL; | |
| } | |
| else if (r & NP2FLAG_DISKCHG) { | |
| ret = ResumeWarningDialogProc(buf); | |
| } | |
| if (ret == IDOK) { | |
| statsave_load(path); | statsave_load(path); |
| } | } |
| return(ret); | |
| } | } |
| int main(int argc, char *argv[]) { | int main(int argc, char *argv[]) { |
| Rect wRect; | Rect wRect; |
| EventRecord event; | EventRecord event; |
| UINT t; | |
| dosio_init(); | dosio_init(); |
| file_setcd(target); | file_setcd(target); |
| Line 630 int main(int argc, char *argv[]) { | Line 658 int main(int argc, char *argv[]) { |
| return(0); | return(0); |
| } | } |
| np2open(); | |
| t = GETTICK(); | |
| while((GETTICK() - t) < 100) { | |
| if (WaitNextEvent(everyEvent, &event, 0, 0)) { | |
| eventproc(&event); | |
| } | |
| } | |
| sysmng_initialize(); | sysmng_initialize(); |
| mackbd_initialize(); | mackbd_initialize(); |
| pccore_init(); | pccore_init(); |
| Line 640 int main(int argc, char *argv[]) { | Line 676 int main(int argc, char *argv[]) { |
| mouse_running(MOUSE_ON); | mouse_running(MOUSE_ON); |
| } | } |
| #endif | #endif |
| scrndraw_redraw(); | // scrndraw_redraw(); |
| pccore_reset(); | pccore_reset(); |
| #if defined(USE_RESUME) | if (np2oscfg.resume) { |
| flagload(np2resume); | flagload(np2resume); |
| #endif | } |
| SetEventMask(everyEvent); | SetEventMask(everyEvent); |
| Line 659 int main(int argc, char *argv[]) { | Line 695 int main(int argc, char *argv[]) { |
| #if defined(NP2GCC) | #if defined(NP2GCC) |
| mouse_callback(); | mouse_callback(); |
| #endif | #endif |
| soundmng_play(); | |
| mackbd_callback(); | mackbd_callback(); |
| pccore_exec(framecnt == 0); | pccore_exec(framecnt == 0); |
| if (np2oscfg.DRAW_SKIP) { // nowait frame skip | if (np2oscfg.DRAW_SKIP) { // nowait frame skip |
| Line 679 int main(int argc, char *argv[]) { | Line 716 int main(int argc, char *argv[]) { |
| #if defined(NP2GCC) | #if defined(NP2GCC) |
| mouse_callback(); | mouse_callback(); |
| #endif | #endif |
| soundmng_play(); | |
| mackbd_callback(); | mackbd_callback(); |
| pccore_exec(framecnt == 0); | pccore_exec(framecnt == 0); |
| framecnt++; | framecnt++; |
| Line 693 int main(int argc, char *argv[]) { | Line 731 int main(int argc, char *argv[]) { |
| #if defined(NP2GCC) | #if defined(NP2GCC) |
| mouse_callback(); | mouse_callback(); |
| #endif | #endif |
| soundmng_play(); | |
| mackbd_callback(); | mackbd_callback(); |
| pccore_exec(framecnt == 0); | pccore_exec(framecnt == 0); |
| framecnt++; | framecnt++; |
| // ¥Æ¥¹¥È | |
| cnt = timing_getcount(); | cnt = timing_getcount(); |
| if (framecnt > cnt) { | if (framecnt > cnt) { |
| waitcnt = framecnt; | waitcnt = framecnt; |
| Line 709 int main(int argc, char *argv[]) { | Line 747 int main(int argc, char *argv[]) { |
| framemax++; | framemax++; |
| } | } |
| if (cnt >= 12) { | if (cnt >= 12) { |
| timing_init(); | timing_reset(); |
| } | } |
| else { | else { |
| timing_setcount(cnt - framecnt); | timing_setcount(cnt - framecnt); |
| Line 728 int main(int argc, char *argv[]) { | Line 766 int main(int argc, char *argv[]) { |
| pccore_cfgupdate(); | pccore_cfgupdate(); |
| #if defined(USE_RESUME) | if (np2oscfg.resume) { |
| flagsave(np2resume); | flagsave(np2resume); |
| #endif | } |
| else { | |
| flagdelete(np2resume); | |
| } | |
| pccore_term(); | pccore_term(); |
| S98_trash(); | S98_trash(); |