Logo Search packages:      
Sourcecode: scummvm version File versions  Download package

PNOMain.cpp

#include "PACEInterfaceLib.h"
#include "native.h"

// Linker still looks for ARMlet_Main as entry point, but the
// "ARMlet" name is now officially discouraged.  Compare an
// contrast to "PilotMain" for 68K applications.
#define PNO_Main ARMlet_Main

// ------------------------

extern "C"
unsigned long PNO_Main(
      const void *emulStateP,
      void *userData68KP,
      Call68KFuncType *call68KFuncP);

unsigned long PNO_Main(const void *emulStateP, void *userData68KP, Call68KFuncType *call68KFuncP) {
      PnoProc *func[] = {
#if defined(COMPILE_COMMON)
                  OSystem_CopyRectToScreen,
                  OSystem_updateScreen_widePortrait,
                  OSystem_updateScreen_wideLandscape,
//                MemoryStream_ReadBuffer

#elif defined(COMPILE_QUEEN)
                  Display_blit

#elif defined(COMPILE_SCUMM)
                  Gdi_drawStripToScreen,
                  CostumeRenderer_proc3

#elif defined(COMPILE_SWORD1)
                  Screen_draw,
                  Screen_drawSprite,
                  Screen_fastShrink,
                  Screen_renderParallax,
                  Screen_decompressTony,
                  Screen_decompressRLE7,
                  Screen_decompressRLE0

#endif
      };

      // needed before making any OS calls using the
      // PACEInterface library
      InitPACEInterface(emulStateP, call68KFuncP);

      unsigned long retVal = 0;
      PnoType *pno = (PnoType *)ByteSwap32(userData68KP);
      UInt32 funcID = ReadUnaligned32(&pno->funcID);
      void *dataP = (void *)ReadUnaligned32(&pno->dataP);
/*
char buf[100];
StrIToA(buf,funcID);
WinDrawChars(buf,StrLen(buf),30,0);
*/
      retVal = func[funcID](dataP);

      return (retVal);
}

Generated by  Doxygen 1.6.0   Back to index