diff options
Diffstat (limited to 'backends/PalmOS/Src/arm/wide_landscape.cpp')
-rw-r--r-- | backends/PalmOS/Src/arm/wide_landscape.cpp | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/backends/PalmOS/Src/arm/wide_landscape.cpp b/backends/PalmOS/Src/arm/wide_landscape.cpp new file mode 100644 index 0000000000..8590c8cd0e --- /dev/null +++ b/backends/PalmOS/Src/arm/wide_landscape.cpp @@ -0,0 +1,30 @@ +#include "PACEInterfaceLib.h" +#include "ArmNative.h" +#include "endianutils.h" +#include "../shared.h" + +unsigned long OSystem_PALMOS_update_screen__wide_landscape(void *userData68KP) { + DataOSysWidePtr dataP = (DataOSysWideType *)userData68KP; + + Coord x, y; + UInt8 *dst = (UInt8 *)ReadUnaligned32(&(dataP->dst)); + UInt8 *src = (UInt8 *)ReadUnaligned32(&(dataP->src)); + + for (y = 0; y < WIDE_HALF_HEIGHT; y++) { + for (x = 0; x < WIDE_HALF_WIDTH; x++) { + *dst++ = *src++; + *dst++ = *src; + *dst++ = *src++; + } + for (x = 0; x < WIDE_HALF_WIDTH; x++) { + *dst++ = *src++; + *dst++ = *src; + *dst++ = *src++; + } + + MemMove(dst, dst - 480, 480); + dst += 480; + } + + return 0; +} |