summaryrefslogtreecommitdiff
path: root/apps/plugins/frotz/setup.h
diff options
context:
space:
mode:
authorTorne Wuff <torne@wolfpuppy.org.uk>2010-01-17 22:15:13 +0000
committerTorne Wuff <torne@wolfpuppy.org.uk>2010-01-17 22:15:13 +0000
commit7f28c94eda576e3f972fc05468188986f2e45885 (patch)
treee03b94613028d16855a5d3df0f4853e077931214 /apps/plugins/frotz/setup.h
parent563f2602f471208cb8544a36539a79dcceaad643 (diff)
downloadrockbox-7f28c94eda576e3f972fc05468188986f2e45885.zip
rockbox-7f28c94eda576e3f972fc05468188986f2e45885.tar.gz
rockbox-7f28c94eda576e3f972fc05468188986f2e45885.tar.bz2
rockbox-7f28c94eda576e3f972fc05468188986f2e45885.tar.xz
New plugin: frotz, a Z-machine interpreter, for playing interactive fiction.
The interpreter more or less passes all the tests in the z-machine test suite. It should build for every target except Archos (for which it is disabled). git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24267 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'apps/plugins/frotz/setup.h')
-rw-r--r--apps/plugins/frotz/setup.h67
1 files changed, 67 insertions, 0 deletions
diff --git a/apps/plugins/frotz/setup.h b/apps/plugins/frotz/setup.h
new file mode 100644
index 0000000..a9b9360
--- /dev/null
+++ b/apps/plugins/frotz/setup.h
@@ -0,0 +1,67 @@
+/*
+ * Various status thingies for the interpreter and interface.
+ *
+ */
+
+typedef struct frotz_setup_struct {
+ int attribute_assignment; /* done */
+ int attribute_testing; /* done */
+ int context_lines; /* done */
+ int object_locating; /* done */
+ int object_movement; /* done */
+ int left_margin; /* done */
+ int right_margin; /* done */
+ int ignore_errors; /* done */
+ int interpreter_number; /* Just dumb frotz now */
+ int piracy; /* done */
+ int undo_slots; /* done */
+ int expand_abbreviations; /* done */
+ int script_cols; /* done */
+ int save_quetzal; /* done */
+ int sound; /* done */
+ int err_report_mode; /* done */
+} f_setup_t;
+
+extern f_setup_t f_setup;
+
+
+typedef struct zcode_header_struct {
+ zbyte h_version;
+ zbyte h_config;
+ zword h_release;
+ zword h_resident_size;
+ zword h_start_pc;
+ zword h_dictionary;
+ zword h_objects;
+ zword h_globals;
+ zword h_dynamic_size;
+ zword h_flags;
+ zbyte h_serial[6];
+ zword h_abbreviations;
+ zword h_file_size;
+ zword h_checksum;
+ zbyte h_interpreter_number;
+ zbyte h_interpreter_version;
+ zbyte h_screen_rows;
+ zbyte h_screen_cols;
+ zword h_screen_width;
+ zword h_screen_height;
+ zbyte h_font_height;
+ zbyte h_font_width;
+ zword h_functions_offset;
+ zword h_strings_offset;
+ zbyte h_default_background;
+ zbyte h_default_foreground;
+ zword h_terminating_keys;
+ zword h_line_width;
+ zbyte h_standard_high;
+ zbyte h_standard_low;
+ zword h_alphabet;
+ zword h_extension_table;
+ zbyte h_user_name[8];
+
+ zword hx_table_size;
+ zword hx_mouse_x;
+ zword hx_mouse_y;
+ zword hx_unicode_table;
+} z_header_t;