Diff for /np2/macosx/np2.cpp between versions 1.15 and 1.17

version 1.15, 2003/10/24 12:35:19 version 1.17, 2003/10/24 20:46:13
Line 32 Line 32
   
   
 #define USE_RESUME  #define USE_RESUME
   #define NP2OPENING
   
   #ifdef          NP2OPENING
   #include        <QuickTime/QuickTime.h>
   #define         OPENING_WAIT            1500
   #endif
   
   
   
                 NP2OSCFG        np2oscfg = {0, 2, 0, 0, 0, 0, 1, 0};                  NP2OSCFG        np2oscfg = {0, 2, 0, 0, 0, 0, 1, 0};
Line 162  static void HandleMenuChoice(long wParam Line 169  static void HandleMenuChoice(long wParam
                         newhdddisk();                          newhdddisk();
                         break;                          break;
 #endif  #endif
   
           case IDM_FONT:
               dialog_font();
               break;
               
                 case IDM_EXIT:                  case IDM_EXIT:
                         np2running = FALSE;                          np2running = FALSE;
                         break;                          break;
Line 593  static void flagload(const char *ext) { Line 605  static void flagload(const char *ext) {
         }          }
 }  }
   
   #ifdef          NP2OPENING
   static void openingNP2(void) {
       Rect                srt, bounds;
       GrafPtr             port;
       CFURLRef    openingURL;
       CFStringRef path;
       char                buffer[1024];
       FSRef               fsr;
       FSSpec              fsc;
       PicHandle   pict;
       GraphicsImportComponent     gi;
       
       GetPort(&port);
       SetPortWindowPort(hWndMain);
       const RGBColor col = {0, 0, 0};
       SetRect(&bounds, 0, 0, 640, 400);
       RGBBackColor(&col);
       EraseRect(&bounds);
       
       openingURL=CFURLCopyAbsoluteURL(CFBundleCopyResourcesDirectoryURL(CFBundleGetMainBundle()));
       if (openingURL) {
           path = CFURLCopyFileSystemPath(openingURL, kCFURLPOSIXPathStyle);
           if (path) {
               if (CFStringGetCString(path, buffer, 1024, CFStringGetSystemEncoding())) {
                   strcat(buffer, "/nekop2.bmp");
                   FSPathMakeRef((const UInt8*)buffer, &fsr, NULL);
                   FSGetCatalogInfo(&fsr, kFSCatInfoNone, NULL, NULL, &fsc, NULL);
                   if (!GetGraphicsImporterForFile(&fsc, &gi)) {
                       if (!GraphicsImportGetNaturalBounds(gi, &srt)) {
                           OffsetRect( &srt, -srt.left, -srt.top);
                           GraphicsImportSetBoundsRect(gi, &srt);
                           GraphicsImportGetAsPicture(gi, &pict);
                           OffsetRect(&srt, (640-srt.right)/2, (400-srt.bottom)/2);
                           DrawPicture(pict,&srt);
                           QDFlushPortBuffer(GetWindowPort(hWndMain), NULL);
                           KillPicture(pict);
                       }
                       CloseComponent(gi);
                   }
               }
               if (path) CFRelease(path);
           }
           if (openingURL) CFRelease(openingURL);
       }
       SetPort(port);
   }
   #endif
   
   
 int main(int argc, char *argv[]) {  int main(int argc, char *argv[]) {
   
         Rect            wRect;          Rect            wRect;
Line 601  int main(int argc, char *argv[]) { Line 662  int main(int argc, char *argv[]) {
 #endif  #endif
     EventRef            theEvent;      EventRef            theEvent;
     EventTargetRef      theTarget;      EventTargetRef      theTarget;
   #ifdef OPENING_WAIT
           UINT32          tick;
   #endif
   
         dosio_init();          dosio_init();
         file_setcd(target);          file_setcd(target);
Line 626  int main(int argc, char *argv[]) { Line 690  int main(int argc, char *argv[]) {
         SizeWindow(hWndMain, 640, 400, TRUE);          SizeWindow(hWndMain, 640, 400, TRUE);
     setUpCarbonEvent();      setUpCarbonEvent();
         ShowWindow(hWndMain);          ShowWindow(hWndMain);
   #ifdef    NP2OPENING
       openingNP2();
   #endif
   #ifdef OPENING_WAIT
           tick = GETTICK();
   #endif
   
         menu_setrotate(0);          menu_setrotate(0);
         menu_setdispmode(np2cfg.DISPSYNC);          menu_setdispmode(np2cfg.DISPSYNC);
Line 661  int main(int argc, char *argv[]) { Line 731  int main(int argc, char *argv[]) {
                 mouse_running(MOUSE_ON);                  mouse_running(MOUSE_ON);
         }          }
 #endif  #endif
   #ifdef OPENING_WAIT
           while((GETTICK() - tick) < OPENING_WAIT);
   #endif
         scrndraw_redraw();          scrndraw_redraw();
         pccore_reset();          pccore_reset();
   
Line 875  static pascal OSStatus np2windowevent(Ev Line 948  static pascal OSStatus np2windowevent(Ev
     UInt32              whatHappened;      UInt32              whatHappened;
     OSStatus    result = eventNotHandledErr;          OSStatus    result = eventNotHandledErr;    
     long                eventClass;      long                eventClass;
           static UInt32 backup = 0;
           
     GetEventParameter(event, kEventParamDirectObject, typeWindowRef, NULL,      GetEventParameter(event, kEventParamDirectObject, typeWindowRef, NULL,
                          sizeof(window), NULL, &window);                           sizeof(window), NULL, &window);
Line 907  static pascal OSStatus np2windowevent(Ev Line 980  static pascal OSStatus np2windowevent(Ev
                         break;                          break;
                     case kEventRawKeyDown:                      case kEventRawKeyDown:
                         if (modif & cmdKey) {                          if (modif & cmdKey) {
                             char        para;                              EventRecord eve;
                             GetEventParameter (event, kEventParamKeyMacCharCodes, typeChar, NULL, sizeof(char), NULL, &para);                              ConvertEventRefToEventRecord( event,&eve );
                             HandleMenuChoice(MenuKey(para));                              HandleMenuChoice(MenuEvent(&eve));
                         }                          }
                         else {                          else {
                             mackbd_f12down(key);                              mackbd_f12down(key);
Line 923  static pascal OSStatus np2windowevent(Ev Line 996  static pascal OSStatus np2windowevent(Ev
                         else keystat_senddata(0x73 | 0x80);                          else keystat_senddata(0x73 | 0x80);
                         if (modif & controlKey) keystat_senddata(0x74);                          if (modif & controlKey) keystat_senddata(0x74);
                         else keystat_senddata(0x74 | 0x80);                          else keystat_senddata(0x74 | 0x80);
                         if (modif & alphaLock) keystat_senddata(0x71);                          if ((modif & alphaLock) != (backup & alphaLock)) {
                               keystat_senddata(0x71);
                               backup = modif;
                           }
                         result = noErr;                          result = noErr;
                         break;                          break;
                     default:                       default: 
Line 960  static void setUpCarbonEvent(void) { Line 1036  static void setUpCarbonEvent(void) {
   
         InstallStandardEventHandler(GetWindowEventTarget(hWndMain));          InstallStandardEventHandler(GetWindowEventTarget(hWndMain));
         InstallApplicationEventHandler(NewEventHandlerUPP(np2appevent),          InstallApplicationEventHandler(NewEventHandlerUPP(np2appevent),
                                                                 sizeof(appEventList)/sizeof(EventTypeSpec),                                                                  GetEventTypeCount(appEventList),
                                                                 appEventList, 0, NULL);                                                                  appEventList, 0, NULL);
         InstallWindowEventHandler(hWndMain, NewEventHandlerUPP(np2windowevent),          InstallWindowEventHandler(hWndMain, NewEventHandlerUPP(np2windowevent),
                                                                 sizeof(windEventList)/sizeof(EventTypeSpec),                                                                  GetEventTypeCount(windEventList),
                                                                 windEventList, 0, NULL);                                                                  windEventList, 0, NULL);
 }  }
   

Removed from v.1.15  
changed lines
  Added in v.1.17


RetroPC.NET-CVS <cvs@retropc.net>