DEADSOFTWARE

fix some warnings
[flatwaifu.git] / src / miscc.c
index 7123938b16356714846b4fed3ba705b5ab6c4c19..b7058172d4dd025e4af6de4efbbb1ee0949c3a71 100644 (file)
@@ -613,33 +613,43 @@ void Z_calc_time(dword t,word *h,word *m,word *s)
     *h = t;
 }
 
-unsigned short int short2host (unsigned short int x) {
-#if __BIG_ENDIAN__
+#define SWAP_VAR(a, b) do { unsigned char t = a; a = b; b = t; } while(0)
+
+int16_t short2swap (int16_t x) {
   union {
-    unsigned char a[2];
-    unsigned short int x;
+    uint8_t a[2];
+    int16_t x;
   } y;
   y.x = x;
-  unsigned char t = y.a[0]; y.a[0] = y.a[1]; y.a[1] = t;
+  SWAP_VAR(y.a[0], y.a[1]);
   return y.x;
-#else
-  return x;
-#endif
 }
 
-unsigned int int2host (unsigned int x) {
-#if __BIG_ENDIAN__
+int32_t int2swap (int32_t x) {
   union {
-    unsigned char a[4];
-    unsigned int x;
+    uint8_t a[4];
+    int32_t x;
   } y;
   y.x = x;
-  #define SWAP_VAR(a, b) do { unsigned char t = a; a = b; b = t; } while(0)
   SWAP_VAR(y.a[0], y.a[3]);
   SWAP_VAR(y.a[1], y.a[2]);
-  #undef SWAP_VAR
   return y.x;
+}
+
+#undef SWAP_VAR
+
+int16_t short2host (int16_t x) {
+#if __BIG_ENDIAN__
+  return short2swap(x);
 #else
   return x;
 #endif
 }
+
+int32_t int2host (int32_t x) {
+#if __BIG_ENDIAN__
+  return int2swap(x);
+#else
+  return x;
+#endif
+}
\ No newline at end of file