summaryrefslogtreecommitdiffstats
path: root/qemu/roms/openbios/kernel/include/dict.h
diff options
context:
space:
mode:
Diffstat (limited to 'qemu/roms/openbios/kernel/include/dict.h')
-rw-r--r--qemu/roms/openbios/kernel/include/dict.h59
1 files changed, 59 insertions, 0 deletions
diff --git a/qemu/roms/openbios/kernel/include/dict.h b/qemu/roms/openbios/kernel/include/dict.h
new file mode 100644
index 000000000..749fd6fba
--- /dev/null
+++ b/qemu/roms/openbios/kernel/include/dict.h
@@ -0,0 +1,59 @@
+/* tag: dict management headers
+ *
+ * Copyright (C) 2003 Patrick Mauritz, Stefan Reinauer
+ *
+ * See the file "COPYING" for further information about
+ * the copyright and warranty status of this work.
+ */
+
+#ifndef __DICT_H
+#define __DICT_H
+
+#define DICTID "OpenBIOS"
+
+#define DOSEMIS 0
+#define DOCOL 1
+#define DOLIT 2
+#define DOCON 3
+#define DOVAR 4
+#define DODFR 5
+#define DODOES 6
+
+#define MAXNFALEN 128
+
+/* The header is 28/32 bytes on 32/64bit platforms */
+
+typedef struct dictionary_header {
+ char signature[8];
+ u8 version;
+ u8 cellsize;
+ u8 endianess;
+ u8 compression;
+ u8 relocation;
+ u8 reserved[3];
+ u32 checksum;
+ u32 length;
+ ucell last;
+} __attribute__((packed)) dictionary_header_t;
+
+ucell lfa2nfa(ucell ilfa);
+ucell load_dictionary(const char *data, ucell len);
+void dump_header(dictionary_header_t *header);
+ucell fstrlen(ucell fstr);
+void fstrncpy(char *dest, ucell src, unsigned int maxlen);
+ucell findsemis(ucell xt);
+ucell findxtfromcell_wordlist(ucell incell, ucell wordlist);
+ucell findxtfromcell(ucell incell);
+
+/* program counter */
+extern ucell PC;
+
+extern unsigned char *dict;
+extern cell dicthead;
+extern cell dictlimit;
+extern ucell *last;
+#ifdef FCOMPILER
+extern ucell *trampoline;
+#endif
+
+#endif