home *** CD-ROM | disk | FTP | other *** search
/ Vectronix 2 / VECTRONIX2.iso / FILES_01 / ST_GUIDE.LZH / STG-UTIL / HELP_RC / HELP_RC.H < prev    next >
Text File  |  1992-01-31  |  4KB  |  129 lines

  1. /************************************************/
  2. /*                                              */
  3. /*  H E L P F I L E - R E C O M P I L E R  1.0  */
  4. /*                                              */
  5. /*  Headerfile HELP_RC.H                        */
  6. /*                                              */
  7. /*  Autor: Volker Reichel                       */
  8. /*         Bühlstra₧e 8                         */
  9. /*         7507 Pfinztal 2                      */
  10. /*                                              */
  11. /*  Letzte Änderung: 31.01.1992                 */
  12. /************************************************/
  13.  
  14.  
  15. /*-------- allgemeine Konstanten----------------*/
  16. #define EOS        0x00
  17. #define CR         0x0d
  18. #define LF         0x0a
  19. #define ESC_CHR    0x1d
  20. #define BACKSLASH  '\\'
  21.  
  22. /*-------- für die Ausgabe von Meldungen -------*/
  23. #define TO_SCREEN   0x01
  24. #define TO_LOG      0x02
  25. #define TO_ALL      (TO_SCREEN + TO_LOG)
  26.  
  27. #define NO_RAM          0
  28. #define ILL_OPT         1
  29. #define LOG_OPN_ERR     2
  30. #define HLP_NF          3
  31. #define NO_HF           4
  32. #define HDR_SIZE_ERR    5
  33. #define RD_SENS_TAB     6
  34. #define RD_CAPS_TAB     7
  35. #define RD_SCR_TAB      8
  36. #define RD_SCR_ERR      9
  37. #define RD_STR_TAB      10
  38. #define RD_STR_ERR      11
  39. #define RD_IDX          12
  40. #define RD_IDX_ERR      13
  41. #define SET_ATTR        14
  42. #define SET_LINK        15
  43. #define RECOMP          16
  44. #define RECOMP_ERR      17
  45. #define F_CREAT_ERR     18
  46. #define FINAL           19
  47. #define SCR_CNT         20
  48. #define IDX_WARN        21
  49. #define WR_NAME_TAB     22
  50. #define WR_LINK_TAB     23
  51. #define LINK_HEAD       24
  52. #define LINK_CNT        25
  53. #define ILL_CODE        26
  54. #define ABORT           27
  55. #define GLB_REF         28
  56. #define NAME_TAB_HEAD   29
  57. #define NAME_CNT        30
  58. #define OPTION          31
  59. #define MAKETEXT        32
  60. #define HELP_RC1        33
  61. #define HELP_RC2        34
  62. #define HELP_RC3        35
  63.  
  64. #define BOLD_ON         "\033E"
  65. #define BOLD_OFF        "\033F"
  66. #define FORM_FEED       "\f"
  67.  
  68. /*---- Konstanten für die Speicherzuteilung ----*/
  69. #define TXTBUFSIZE      0x8000L
  70. #define MAXCODEDSIZE    0x4000L
  71.  
  72. /*---- Konstanten für die Dekodierung ----------*/
  73. #define CHAR_DIR   0x0C
  74. #define STR_TABLE  0x0E
  75.  
  76. /*---------- HC-versionsabhängige Konstanten ---*/
  77. #define INDEX_SCR   1   /* 2. Eintrag ScreenTab */
  78. #define HC_VERS "H2.0"  /* HelpCompilerversion  */
  79. #define INDEX_CNT   27  /* Einträge im INDEX    */
  80.  
  81. /*---------- Attribute eines Namens ------------*/
  82. #define SCR_NAME    0             /* ScreenName */
  83. #define CAP_SENS    1 /* Gro₧/Klein-Unterscheid.*/ 
  84. #define SENSITIVE   2   /* keine Unterscheidung */
  85. #define LINK        3     /* ist ein \link-Name */
  86. #define ATTR_CNT    4   /* Anzahl der Attribute */
  87.  
  88. /*--------- Typen von Suchworttabellen ---------*/
  89. #define CAP_TABLE   0
  90. #define SENS_TABLE  1
  91.  
  92. /*---- Header-Struktur einer Helpdatei ---------*/
  93.  
  94. #define HEADER_SIZE  0x30  /* Länge des Headers */
  95.  
  96. typedef struct {
  97.   long scr_tab_size; /* Länge der Screen Tabelle*/
  98.   long str_offset;   /* Stringtabellenanfang   */
  99.   long str_size;              /* Länge in Bytes */
  100.   UBYTE char_table[12];   /* häufigste Zeichen  */
  101.   long caps_offset;    /* Start capsens-Tabelle */
  102.   long caps_size;             /* Länge in Bytes */
  103.   long caps_cnt;           /* Anzahl Suchwörter */
  104.   long sens_offset;    /* Start sensitive-Tab.  */
  105.   long sens_size;             /* Länge in Bytes */
  106.   long sens_cnt;           /* Anzahl Suchwörter */
  107. } HLPHDR;
  108.  
  109.  
  110. /*--------- Beschreibung eines Indexeintrages --*/  
  111. typedef UWORD SUB_IDX_ENTRY;
  112.  
  113. /*--------- Beschreibung eines Namens ----------*/
  114. typedef struct name_entry {
  115.   UWORD scr_code;       /* Index-Code ScreenTab */
  116.   UBYTE name_attr;      /* Attribut des Namens  */
  117.   char  *name;          /* der Name selbst      */
  118.   UWORD link_index;     /* link-Index ScreenTab */
  119.   struct name_entry *next;        /* Nachfolger */
  120. } NAME_ENTRY;
  121.  
  122. /*--------- Struktur der Keyword-Tabellen ------*/
  123. typedef struct {
  124.   ULONG pos;  /* Wortanf. bei akt. Position+pos */
  125.   UWORD code;       /* Wort hat diese Codierung */
  126. } SRCHKEY_ENTRY;
  127.  
  128. /*--------------- Ende HELP_RC.H ---------------*/
  129.