18 int disable_graphics_font;
19 int enable_alt_graphics;
21 int disable_term_keys;
24 int disable_meta_commands;
32 char *transcript_name;
34 int disable_undo_compression;
36 int disable_abbreviations;
37 int enable_censorship;
38 int overwrite_transcript;
43 extern const char *game_file;
44 extern struct options options;
47 #define FLAGS1_STATUSTYPE (1U << 1)
48 #define FLAGS1_STORYSPLIT (1U << 2)
49 #define FLAGS1_CENSOR (1U << 3)
50 #define FLAGS1_NOSTATUS (1U << 4)
51 #define FLAGS1_SCREENSPLIT (1U << 5)
52 #define FLAGS1_VARIABLE (1U << 6)
55 #define FLAGS1_COLORS (1U << 0)
56 #define FLAGS1_PICTURES (1U << 1)
57 #define FLAGS1_BOLD (1U << 2)
58 #define FLAGS1_ITALIC (1U << 3)
59 #define FLAGS1_FIXED (1U << 4)
60 #define FLAGS1_SOUND (1U << 5)
61 #define FLAGS1_TIMED (1U << 7)
63 #define FLAGS2_TRANSCRIPT (1U << 0)
64 #define FLAGS2_FIXED (1U << 1)
65 #define FLAGS2_STATUS (1U << 2)
66 #define FLAGS2_PICTURES (1U << 3)
67 #define FLAGS2_UNDO (1U << 4)
68 #define FLAGS2_MOUSE (1U << 5)
69 #define FLAGS2_COLORS (1U << 6)
70 #define FLAGS2_SOUND (1U << 7)
71 #define FLAGS2_MENUS (1U << 8)
73 #define STATUS_IS_TIME() (zversion == 3 && (BYTE(0x01) & FLAGS1_STATUSTYPE))
74 #define TIMER_AVAILABLE() (zversion >= 4 && (BYTE(0x01) & FLAGS1_TIMED))
82 uint16_t static_start;
94 extern struct header header;
95 extern uint8_t atable[];
97 int is_story(const char *);
99 void write_header(void);
101 uint32_t unpack(uint16_t, int);
102 void store(uint16_t);
103 void process_story(void);
105 #ifndef ZTERP_NO_CHEAT
106 int cheat_find_freezew(uint32_t, uint16_t *);
114 void zrestore5(void);
115 void zsound_effect(void);