Sun May 31 12:28:12 2020 UTC ()
libretro-fbalpha: bswap for big endian NetBSD


(nia)
diff -r1.1 -r1.2 pkgsrc/emulators/libretro-fbneo/distinfo
diff -r0 -r1.1 pkgsrc/emulators/libretro-fbneo/patches/patch-src_burner_libretro_burn__endian.h

cvs diff -r1.1 -r1.2 pkgsrc/emulators/libretro-fbneo/distinfo (expand / switch to unified diff)

--- pkgsrc/emulators/libretro-fbneo/distinfo 2020/05/31 12:19:33 1.1
+++ pkgsrc/emulators/libretro-fbneo/distinfo 2020/05/31 12:28:12 1.2
@@ -1,6 +1,7 @@ @@ -1,6 +1,7 @@
1$NetBSD: distinfo,v 1.1 2020/05/31 12:19:33 nia Exp $ 1$NetBSD: distinfo,v 1.2 2020/05/31 12:28:12 nia Exp $
2 2
3SHA1 (libretro-fbneo-20200530-301cf7b6eeb3e7683952b98b66f39008f580b26d.tar.gz) = c7b22edc2ae2ac2fff494dd80acfec6e49b9133c 3SHA1 (libretro-fbneo-20200530-301cf7b6eeb3e7683952b98b66f39008f580b26d.tar.gz) = c7b22edc2ae2ac2fff494dd80acfec6e49b9133c
4RMD160 (libretro-fbneo-20200530-301cf7b6eeb3e7683952b98b66f39008f580b26d.tar.gz) = b4d9a8c285aec224e7da70a004e64825548936bf 4RMD160 (libretro-fbneo-20200530-301cf7b6eeb3e7683952b98b66f39008f580b26d.tar.gz) = b4d9a8c285aec224e7da70a004e64825548936bf
5SHA512 (libretro-fbneo-20200530-301cf7b6eeb3e7683952b98b66f39008f580b26d.tar.gz) = 0ef4a27bd9fa0d49f5ea09777f2144a9b0be9c9fced59593ba15e9f4818a305d2ca85a2ef3850cef77032157265376f5f3204b6c81226001c94d85f346829843 5SHA512 (libretro-fbneo-20200530-301cf7b6eeb3e7683952b98b66f39008f580b26d.tar.gz) = 0ef4a27bd9fa0d49f5ea09777f2144a9b0be9c9fced59593ba15e9f4818a305d2ca85a2ef3850cef77032157265376f5f3204b6c81226001c94d85f346829843
6Size (libretro-fbneo-20200530-301cf7b6eeb3e7683952b98b66f39008f580b26d.tar.gz) = 14602038 bytes 6Size (libretro-fbneo-20200530-301cf7b6eeb3e7683952b98b66f39008f580b26d.tar.gz) = 14602038 bytes
 7SHA1 (patch-src_burner_libretro_burn__endian.h) = 35b3ea13154bd5380ad5d067f3ec5f32ab18ce36

File Added: pkgsrc/emulators/libretro-fbneo/patches/Attic/patch-src_burner_libretro_burn__endian.h
$NetBSD: patch-src_burner_libretro_burn__endian.h,v 1.1 2020/05/31 12:28:12 nia Exp $

More than games consoles are big endian.

--- src/burner/libretro/burn_endian.h.orig	2020-05-30 15:55:11.000000000 +0000
+++ src/burner/libretro/burn_endian.h
@@ -1,7 +1,7 @@
 #ifndef _FBNEO_ENDIAN_H
 #define _FBNEO_ENDIAN_H
 
-#ifndef _XBOX
+#if !defined(_XBOX) && !defined(__NetBSD__)
 #define NO_64BIT_BYTESWAP
 #endif
 
@@ -46,6 +46,13 @@ typedef union {
 #define BURN_ENDIAN_SWAP_INT8(x)				(x^1)
 #define BURN_ENDIAN_SWAP_INT16(x)				({uint16_t tt; __sthbrx(&tt, 0, x); tt;})
 #define BURN_ENDIAN_SWAP_INT32(x)				({uint32_t tt; __stwbrx(&tt, 0, x); tt;})
+/* NetBSD */
+#elif defined(__NetBSD__)
+#include <machine/endian.h>
+#define BURN_ENDIAN_SWAP_INT8(x)				(x^1)
+#define BURN_ENDIAN_SWAP_INT16(x)				(bswap16(x))
+#define BURN_ENDIAN_SWAP_INT32(x)				(bswap32(x))
+#define BURN_ENDIAN_SWAP_INT64(x)				(bswap64(x))
 #else
 #define BURN_ENDIAN_SWAP_INT8(x)				(x^1)
 #define BURN_ENDIAN_SWAP_INT16(x)				((((x) << 8) & 0xff00) | (((x) >> 8) & 0x00ff))