summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorjohannes <johannes.herman@gmail.com>2024-02-06 13:10:48 +0100
committerjohannes <johannes.herman@gmail.com>2024-02-06 13:10:48 +0100
commit7beac4df7d2b618b9e45bb7dd387c9f12d0075cf (patch)
tree20aa75253b1d7cf238367079ff9ee6d3f48fa580
parentc372df2fd239531ffdb5d5e2d99ba0e54f38ace9 (diff)
changed magic bytes to macro
-rw-r--r--src/demo.c11
1 files changed, 7 insertions, 4 deletions
diff --git a/src/demo.c b/src/demo.c
index 21b5eea..a1343ed 100644
--- a/src/demo.c
+++ b/src/demo.c
@@ -9,6 +9,8 @@
#define CHUNK_TICK_MASK 0b10000000
#define CHUNK_TICK_KEYFRAME_MASK 0b01000000
#define CHUNK_TICK_INLINE_MASK 0b00100000
+#define CHUNK_TICK_DELTA_V3_MASK 0b00011111
+#define CHUNK_TICK_DELTA_V5_MASK 0b00111111
#define CHUNK_NORMAL_TYPE_MASK 0b01100000
#define CHUNK_NORMAL_SIZE_MASK 0b00011111
@@ -79,7 +81,7 @@ int readdemotick(FILE *fp, char chunkhead, demotick *tick, unsigned char ver)
if (chunkhead & CHUNK_TICK_INLINE_MASK)
{
tick->innline = 1;
- tick->delta = (chunkhead & 0x1f); // TODO name this mask?
+ tick->delta = (chunkhead & CHUNK_TICK_DELTA_V5_MASK);
}
else
{
@@ -91,12 +93,13 @@ int readdemotick(FILE *fp, char chunkhead, demotick *tick, unsigned char ver)
}
else
{
- if ((chunkhead & 0x3f) != 0) // TODO name this mask?
- tick->delta = (chunkhead & 0x3f);
+ if ((chunkhead & CHUNK_TICK_DELTA_V3_MASK) != 0)
+ tick->delta = (chunkhead & CHUNK_TICK_DELTA_V3_MASK);
else
{
unsigned char tickdelta[4];
fread(tickdelta, 1, 4, fp);
+ tick->delta = reverseint(tickdelta);
}
}
return 1;
@@ -218,7 +221,7 @@ int readdemochunk(FILE *fp, demochunk *chunk, unsigned char ver)
printf("SNAPSHOT_DELTA={");
fseek(fp, size, SEEK_CUR);
}
- else
+ else
{
printf("[ ERROR ] unknown chunk type!\n");
}