mirror of
https://github.com/libretro/PUAE.git
synced 2024-11-27 01:50:51 +00:00
fix INLINE related breakage from new dms C files
short version: inline on its own doesn't make sense - how can you export a function and at the same time inline it ? thus use static inline. also reorder the code so the bogus forward declarations are not needed anymore.
This commit is contained in:
parent
8e3ffa1548
commit
deff5cabd4
@ -31,7 +31,7 @@
|
||||
#define INLINE inline
|
||||
#else
|
||||
#ifdef __GNUC__
|
||||
#define INLINE inline
|
||||
#define INLINE static inline
|
||||
#else
|
||||
#ifdef __SASC
|
||||
#define INLINE __inline
|
||||
|
@ -33,49 +33,6 @@ USHORT dms_heavy_text_loc;
|
||||
|
||||
static USHORT read_tree_c(void);
|
||||
static USHORT read_tree_p(void);
|
||||
INLINE USHORT decode_c(void);
|
||||
INLINE USHORT decode_p(void);
|
||||
|
||||
|
||||
|
||||
USHORT Unpack_HEAVY(UCHAR *in, UCHAR *out, UCHAR flags, USHORT origsize){
|
||||
USHORT j, i, c, bitmask;
|
||||
UCHAR *outend;
|
||||
|
||||
/* Heavy 1 uses a 4Kb dictionary, Heavy 2 uses 8Kb */
|
||||
|
||||
if (flags & 8) {
|
||||
dms_np = 15;
|
||||
bitmask = 0x1fff;
|
||||
} else {
|
||||
dms_np = 14;
|
||||
bitmask = 0x0fff;
|
||||
}
|
||||
|
||||
initbitbuf(in);
|
||||
|
||||
if (flags & 2) {
|
||||
if (read_tree_c()) return 1;
|
||||
if (read_tree_p()) return 2;
|
||||
}
|
||||
|
||||
outend = out+origsize;
|
||||
|
||||
while (out<outend) {
|
||||
c = decode_c();
|
||||
if (c < 256) {
|
||||
*out++ = dms_text[dms_heavy_text_loc++ & bitmask] = (UCHAR)c;
|
||||
} else {
|
||||
j = (USHORT) (c - OFFSET);
|
||||
i = (USHORT) (dms_heavy_text_loc - decode_p() - 1);
|
||||
while(j--) *out++ = dms_text[dms_heavy_text_loc++ & bitmask] = dms_text[i++ & bitmask];
|
||||
}
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
|
||||
INLINE USHORT decode_c(void){
|
||||
USHORT i, j, m;
|
||||
@ -129,6 +86,42 @@ INLINE USHORT decode_p(void){
|
||||
|
||||
}
|
||||
|
||||
USHORT Unpack_HEAVY(UCHAR *in, UCHAR *out, UCHAR flags, USHORT origsize){
|
||||
USHORT j, i, c, bitmask;
|
||||
UCHAR *outend;
|
||||
|
||||
/* Heavy 1 uses a 4Kb dictionary, Heavy 2 uses 8Kb */
|
||||
|
||||
if (flags & 8) {
|
||||
dms_np = 15;
|
||||
bitmask = 0x1fff;
|
||||
} else {
|
||||
dms_np = 14;
|
||||
bitmask = 0x0fff;
|
||||
}
|
||||
|
||||
initbitbuf(in);
|
||||
|
||||
if (flags & 2) {
|
||||
if (read_tree_c()) return 1;
|
||||
if (read_tree_p()) return 2;
|
||||
}
|
||||
|
||||
outend = out+origsize;
|
||||
|
||||
while (out<outend) {
|
||||
c = decode_c();
|
||||
if (c < 256) {
|
||||
*out++ = dms_text[dms_heavy_text_loc++ & bitmask] = (UCHAR)c;
|
||||
} else {
|
||||
j = (USHORT) (c - OFFSET);
|
||||
i = (USHORT) (dms_heavy_text_loc - decode_p() - 1);
|
||||
while(j--) *out++ = dms_text[dms_heavy_text_loc++ & bitmask] = dms_text[i++ & bitmask];
|
||||
}
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
static USHORT read_tree_c(void){
|
||||
|
Loading…
Reference in New Issue
Block a user