diff options
author | Andree Buschmann <AndreeBuschmann@t-online.de> | 2011-08-31 19:19:49 +0000 |
---|---|---|
committer | Andree Buschmann <AndreeBuschmann@t-online.de> | 2011-08-31 19:19:49 +0000 |
commit | 13cbade08a07296d92e7a7d3e20475de0032cba1 (patch) | |
tree | 731a1a4a99d86632a719ae49e3b3d2a12e764a3a /apps/codecs/libgme/blargg_endian.h | |
parent | d089e104034fdf5562bea125d2cacf4ee486782a (diff) | |
download | rockbox-13cbade08a07296d92e7a7d3e20475de0032cba1.tar.gz rockbox-13cbade08a07296d92e7a7d3e20475de0032cba1.zip |
Update libgme to Blargg's Game_Music_Emu 0.6-pre.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30397 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'apps/codecs/libgme/blargg_endian.h')
-rw-r--r-- | apps/codecs/libgme/blargg_endian.h | 77 |
1 files changed, 49 insertions, 28 deletions
diff --git a/apps/codecs/libgme/blargg_endian.h b/apps/codecs/libgme/blargg_endian.h index ae55d7fd3b..dce5cb2048 100644 --- a/apps/codecs/libgme/blargg_endian.h +++ b/apps/codecs/libgme/blargg_endian.h | |||
@@ -64,45 +64,60 @@ static inline void blargg_verify_byte_order( void ) | |||
64 | #endif | 64 | #endif |
65 | } | 65 | } |
66 | 66 | ||
67 | static inline unsigned get_le16( void const* p ) { | 67 | static inline unsigned get_le16( void const* p ) |
68 | return ((unsigned char const*) p) [1] * 0x100u + | 68 | { |
69 | ((unsigned char const*) p) [0]; | 69 | return (unsigned) ((unsigned char const*) p) [1] << 8 | |
70 | (unsigned) ((unsigned char const*) p) [0]; | ||
70 | } | 71 | } |
71 | static inline unsigned get_be16( void const* p ) { | 72 | |
72 | return ((unsigned char const*) p) [0] * 0x100u + | 73 | static inline unsigned get_be16( void const* p ) |
73 | ((unsigned char const*) p) [1]; | 74 | { |
75 | return (unsigned) ((unsigned char const*) p) [0] << 8 | | ||
76 | (unsigned) ((unsigned char const*) p) [1]; | ||
74 | } | 77 | } |
75 | static inline blargg_ulong get_le32( void const* p ) { | 78 | |
76 | return ((unsigned char const*) p) [3] * 0x01000000u + | 79 | static inline unsigned get_le32( void const* p ) |
77 | ((unsigned char const*) p) [2] * 0x00010000u + | 80 | { |
78 | ((unsigned char const*) p) [1] * 0x00000100u + | 81 | return (unsigned) ((unsigned char const*) p) [3] << 24 | |
79 | ((unsigned char const*) p) [0]; | 82 | (unsigned) ((unsigned char const*) p) [2] << 16 | |
83 | (unsigned) ((unsigned char const*) p) [1] << 8 | | ||
84 | (unsigned) ((unsigned char const*) p) [0]; | ||
80 | } | 85 | } |
81 | static inline blargg_ulong get_be32( void const* p ) { | 86 | |
82 | return ((unsigned char const*) p) [0] * 0x01000000u + | 87 | static inline unsigned get_be32( void const* p ) |
83 | ((unsigned char const*) p) [1] * 0x00010000u + | 88 | { |
84 | ((unsigned char const*) p) [2] * 0x00000100u + | 89 | return (unsigned) ((unsigned char const*) p) [0] << 24 | |
85 | ((unsigned char const*) p) [3]; | 90 | (unsigned) ((unsigned char const*) p) [1] << 16 | |
91 | (unsigned) ((unsigned char const*) p) [2] << 8 | | ||
92 | (unsigned) ((unsigned char const*) p) [3]; | ||
86 | } | 93 | } |
87 | static inline void set_le16( void* p, unsigned n ) { | 94 | |
95 | static inline void set_le16( void* p, unsigned n ) | ||
96 | { | ||
88 | ((unsigned char*) p) [1] = (unsigned char) (n >> 8); | 97 | ((unsigned char*) p) [1] = (unsigned char) (n >> 8); |
89 | ((unsigned char*) p) [0] = (unsigned char) n; | 98 | ((unsigned char*) p) [0] = (unsigned char) n; |
90 | } | 99 | } |
91 | static inline void set_be16( void* p, unsigned n ) { | 100 | |
101 | static inline void set_be16( void* p, unsigned n ) | ||
102 | { | ||
92 | ((unsigned char*) p) [0] = (unsigned char) (n >> 8); | 103 | ((unsigned char*) p) [0] = (unsigned char) (n >> 8); |
93 | ((unsigned char*) p) [1] = (unsigned char) n; | 104 | ((unsigned char*) p) [1] = (unsigned char) n; |
94 | } | 105 | } |
95 | static inline void set_le32( void* p, blargg_ulong n ) { | 106 | |
96 | ((unsigned char*) p) [3] = (unsigned char) (n >> 24); | 107 | static inline void set_le32( void* p, unsigned n ) |
97 | ((unsigned char*) p) [2] = (unsigned char) (n >> 16); | 108 | { |
98 | ((unsigned char*) p) [1] = (unsigned char) (n >> 8); | ||
99 | ((unsigned char*) p) [0] = (unsigned char) n; | 109 | ((unsigned char*) p) [0] = (unsigned char) n; |
110 | ((unsigned char*) p) [1] = (unsigned char) (n >> 8); | ||
111 | ((unsigned char*) p) [2] = (unsigned char) (n >> 16); | ||
112 | ((unsigned char*) p) [3] = (unsigned char) (n >> 24); | ||
100 | } | 113 | } |
101 | static inline void set_be32( void* p, blargg_ulong n ) { | 114 | |
102 | ((unsigned char*) p) [0] = (unsigned char) (n >> 24); | 115 | static inline void set_be32( void* p, unsigned n ) |
103 | ((unsigned char*) p) [1] = (unsigned char) (n >> 16); | 116 | { |
104 | ((unsigned char*) p) [2] = (unsigned char) (n >> 8); | ||
105 | ((unsigned char*) p) [3] = (unsigned char) n; | 117 | ((unsigned char*) p) [3] = (unsigned char) n; |
118 | ((unsigned char*) p) [2] = (unsigned char) (n >> 8); | ||
119 | ((unsigned char*) p) [1] = (unsigned char) (n >> 16); | ||
120 | ((unsigned char*) p) [0] = (unsigned char) (n >> 24); | ||
106 | } | 121 | } |
107 | 122 | ||
108 | #if defined(BLARGG_NONPORTABLE) | 123 | #if defined(BLARGG_NONPORTABLE) |
@@ -132,15 +147,21 @@ static inline void set_be32( void* p, blargg_ulong n ) { | |||
132 | 147 | ||
133 | #ifndef GET_LE16 | 148 | #ifndef GET_LE16 |
134 | #define GET_LE16( addr ) get_le16( addr ) | 149 | #define GET_LE16( addr ) get_le16( addr ) |
135 | #define GET_LE32( addr ) get_le32( addr ) | ||
136 | #define SET_LE16( addr, data ) set_le16( addr, data ) | 150 | #define SET_LE16( addr, data ) set_le16( addr, data ) |
151 | #endif | ||
152 | |||
153 | #ifndef GET_LE32 | ||
154 | #define GET_LE32( addr ) get_le32( addr ) | ||
137 | #define SET_LE32( addr, data ) set_le32( addr, data ) | 155 | #define SET_LE32( addr, data ) set_le32( addr, data ) |
138 | #endif | 156 | #endif |
139 | 157 | ||
140 | #ifndef GET_BE16 | 158 | #ifndef GET_BE16 |
141 | #define GET_BE16( addr ) get_be16( addr ) | 159 | #define GET_BE16( addr ) get_be16( addr ) |
142 | #define GET_BE32( addr ) get_be32( addr ) | ||
143 | #define SET_BE16( addr, data ) set_be16( addr, data ) | 160 | #define SET_BE16( addr, data ) set_be16( addr, data ) |
161 | #endif | ||
162 | |||
163 | #ifndef GET_BE32 | ||
164 | #define GET_BE32( addr ) get_be32( addr ) | ||
144 | #define SET_BE32( addr, data ) set_be32( addr, data ) | 165 | #define SET_BE32( addr, data ) set_be32( addr, data ) |
145 | #endif | 166 | #endif |
146 | 167 | ||