help.inc
上传用户:xiaoan1112
上传日期:2013-04-11
资源大小:19621k
文件大小:3k
源码类别:

操作系统开发

开发平台:

Visual C++

  1. ;* help.h
  2. ;*
  3. ;* typedefs & definitions used in the help system and by those who use it.
  4. ;*
  5. ;* define:
  6. ;*  HOFFSET - to define buffer pointers (PB's) as handle/offset, else
  7. ;*   they are defined as void far *.
  8. ;* lineattr
  9. ;* external representation of line attributes, as returned by HelpGetLineAttr
  10. lineattr struc
  11.     attrLA          dw  0
  12.     cbLA            dw  0
  13. lineattr ends
  14. ;* mh
  15. ;* a memory handle is defined for use with systems that use dynamic, moveable
  16. ;* memory. It is long, so that in simple cases where memory is NOT moveable,
  17. ;* the handle can contain the far pointer to the base.
  18. ;* nc
  19. ;* a context number is a unique id associated with each context string.
  20. ;* topichdr
  21. ;* header placed (by HelpDecomp) at the begining of every decompressed topic
  22. topichdr struc
  23.     appCharTH       db  0
  24.     linCharTH       db  0
  25.     ftypeTH         db  0
  26.     lnCurTH         dw  0
  27.     lnOffTH         dw  0
  28. topichdr ends
  29. ;* hotspot
  30. ;* defines the position of an embedded cross reference, or "hotspot". Used by
  31. ;* HelpHlNext and HelpXRef
  32. hotspot struc
  33.     lineHS          dw  0
  34.     colHS           dw  0
  35.     ecolHS          dw  0
  36.     pXrefHS         dd  0
  37. hotspot ends
  38. ;******************************************************************************
  39. ;*
  40. ;* Some versions of the help engine run with SS!=DS, and thus require the
  41. ;* _loadds attribute on function calls.
  42. ifdef DSLOAD
  43. else
  44. LOADDS              equ 1
  45. endif
  46. ;******************************************************************************
  47. ;*
  48. ;* PB
  49. ;* pointer to a buffer. Based on the switch HOFFSET, it is either a
  50. ;* handle-offset or a far pointer. In the handle/offset case, the high word
  51. ;* contains a memory handle which must be locked, to get a "real" address, to
  52. ;* which the offset is added.
  53. ifdef HOFFSET
  54. else
  55. endif
  56. ;******************************************************************************
  57. ;*
  58. ;* Forward declarations
  59. ;******************************************************************************
  60. ;*
  61. ;* constant declarations
  62. ;*
  63. ;* Character attribute bits. These bits are order together to form attribute
  64. ;* indecies. Data in the help file has associated with it attribute information
  65. ;* encoded in length/index pairs. Each index is simply a constant which
  66. ;* indicates which of several attributes should be applied to the characters in
  67. ;* that portion of the line.
  68. A_PLAIN             equ 0
  69. A_BOLD              equ 1
  70. A_ITALICS           equ 2
  71. A_UNDERLINE         equ 4
  72. ;******************************************************************************
  73. ;*
  74. ;* Help Error Codes.
  75. ;*
  76. ;* Return values greater than HELPERR_MAX are valid nc's.
  77. HELPERR_FNF         equ 1
  78. HELPERR_READ        equ 2
  79. HELPERR_LIMIT       equ 3
  80. HELPERR_BADAPPEND   equ 4
  81. HELPERR_NOTHELP     equ 5
  82. HELPERR_BADVERS     equ 6
  83. HELPERR_MAX         equ 10