|
|
1.1 ! root 1: /* tag: dict management headers ! 2: * ! 3: * Copyright (C) 2003 Patrick Mauritz, Stefan Reinauer ! 4: * ! 5: * See the file "COPYING" for further information about ! 6: * the copyright and warranty status of this work. ! 7: */ ! 8: ! 9: #ifndef __DICT_H ! 10: #define __DICT_H ! 11: ! 12: #define DICTID "OpenBIOS" ! 13: ! 14: #define DOSEMIS 0 ! 15: #define DOCOL 1 ! 16: #define DOLIT 2 ! 17: #define DOCON 3 ! 18: #define DOVAR 4 ! 19: #define DODFR 5 ! 20: #define DODOES 6 ! 21: ! 22: #define MAXNFALEN 128 ! 23: ! 24: /* The header is 28/32 bytes on 32/64bit platforms */ ! 25: ! 26: typedef struct dictionary_header { ! 27: char signature[8]; ! 28: u8 version; ! 29: u8 cellsize; ! 30: u8 endianess; ! 31: u8 compression; ! 32: u8 relocation; ! 33: u8 reserved[3]; ! 34: u32 checksum; ! 35: u32 length; ! 36: ucell last; ! 37: } __attribute__((packed)) dictionary_header_t; ! 38: ! 39: ucell lfa2nfa(ucell ilfa); ! 40: ucell load_dictionary(const char *data, ucell len); ! 41: void dump_header(dictionary_header_t *header); ! 42: ucell fstrlen(ucell fstr); ! 43: void fstrncpy(char *dest, ucell src, unsigned int maxlen); ! 44: ucell findsemis(ucell xt); ! 45: ucell findxtfromcell_wordlist(ucell incell, ucell wordlist); ! 46: ucell findxtfromcell(ucell incell); ! 47: ! 48: /* program counter */ ! 49: extern ucell PC; ! 50: ! 51: extern unsigned char *dict; ! 52: extern cell dicthead; ! 53: extern cell dictlimit; ! 54: extern ucell *last; ! 55: #ifdef FCOMPILER ! 56: extern ucell *trampoline; ! 57: #endif ! 58: ! 59: #endif
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.