diff options
Diffstat (limited to 'reverse-engineering/dosbox_snif/dos_lemm.h')
-rw-r--r-- | reverse-engineering/dosbox_snif/dos_lemm.h | 22 |
1 files changed, 15 insertions, 7 deletions
diff --git a/reverse-engineering/dosbox_snif/dos_lemm.h b/reverse-engineering/dosbox_snif/dos_lemm.h index 5504fee..472b1f5 100644 --- a/reverse-engineering/dosbox_snif/dos_lemm.h +++ b/reverse-engineering/dosbox_snif/dos_lemm.h @@ -3,9 +3,15 @@ #include <stdint.h> +#define TRUE 0xFF +#define FALSE 0x00 + +#define LEVEL_HEIGHT 160 +#define LEVEL_WIDTH 1664 + struct _state { uint8_t s_splatting:1; //0x01 - uint8_t s_exploding:1; //0x02 combinable + uint8_t s_exploding_spe:1; //0x02 combinable uint8_t s_falling:1; //0x04 uint8_t s_ascending:1; //0x08 uint8_t s_digging:1; //0x10 @@ -49,9 +55,9 @@ enum state_masks { }; struct _flags1 { - uint8_t fl1_cap_climber:1; // 0x01 - uint8_t fl1_unused:6; - uint8_t fl1_walk_pause_for_shruggling:1; // 0x80 + uint8_t cap_climber:1; // 0x01 + uint8_t unused:6; + uint8_t walk_pause_for_shruggling:1; // 0x80 } __attribute__ ((__packed__)); union flags1 { @@ -115,8 +121,10 @@ struct _avail_skills { struct game_data { /* ds == 0x0b55 */ - uint8_t unk0; // TODO - uint8_t unk1[0x27]; // TODO + uint16_t unk0; // TODO + uint16_t unk0b; // TODO cf 00002BB5 + uint16_t stencil_line_width; + uint8_t unk1[0x22]; // TODO uint8_t paused; // [0x28] uint8_t unk2[0x16]; // TODO uint8_t lemm_count_to_process; // [0x3f] @@ -133,7 +141,7 @@ struct game_data { uint8_t unk6[0x1d]; // TODO struct _avail_skills avail_skills; // [0x67] - [0x7e] uint8_t unk7[0x06]; // TODO - struct _lemm_data lemmings[1]; // [0x85] + struct _lemm_data lemmings[2]; // [0x85] //struct _lemm_data lemmings[100]; // [0x85] } __attribute__ ((__packed__)); |