home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / warptlk3.zip / TOOLKIT / INC / VDMPROP.INC < prev    next >
Text File  |  1995-08-24  |  7KB  |  190 lines

  1. ;       SCCSID = @(#)vdmprop.inc    6.1 92/03/25
  2. ;***    vdmprop.inc - Common VDM properties definitions
  3. ;
  4. ;
  5. ;
  6. ;       Copyright (c) IBM Corporation 1987, 1992
  7. ;
  8. ;       All Rights Reserved
  9. ;
  10. ;       Title:
  11. ;           VDM Property definitions common to VDDs and applications
  12. ;
  13.  
  14. ;***    Property Limits
  15. ;
  16. ;
  17.  
  18. MAX_PROPERTY_NAME_LENGTH        EQU     40  ;including NULL terminator
  19.  
  20.  
  21. ;***    VPTYPE: VDM Property Types
  22. ;
  23. ;
  24. VDMP_BOOL       EQU     0   ;boolean
  25. VDMP_INT        EQU     1   ;integer - ULONG size, but only USHORT is valid
  26. VDMP_ENUM       EQU     2   ;enumeration
  27. VDMP_STRING     EQU     3   ;asciiz string
  28. VDMP_MLSTR      EQU     4   ;multi-line string, separated by linefeed (00ah)
  29.  
  30. DefType VPTYPE,USHORT                   ;property type
  31.  
  32.  
  33.  
  34. ;***    VPORD: VDM Property Ordinals
  35. ;
  36. ;
  37. VDMP_ORD_OTHER  EQU     0   ;custom VDD property
  38. VDMP_ORD_KERNEL         EQU     1   ;asciiz path of DOS kernel
  39. VDMP_ORD_SHELL  EQU     2   ;asciiz path of DOS shell
  40. VDMP_ORD_RMSIZE         EQU     3   ;integer size of DOS box (128K..640K)
  41. VDMP_ORD_FCB    EQU     4   ;integer total FCBs
  42. VDMP_ORD_FCB2   EQU     5   ;integer FCBs immune to close LRUing
  43. VDMP_ORD_BREAK  EQU     6   ;boolean BREAK flag
  44. VDMP_ORD_DOSDD  EQU     7   ;mlstr DOS device drivers
  45. VDMP_ORD_VMBOOT         EQU     8   ;mlstr virtual machine boot drive(s)
  46. ;VDMP_ORD_IOPL3         EQU     9   ; boolean IOPL3 flag              // 6.10
  47. VDMP_ORD_VERSION        EQU     10  ;mlstr fake version entries
  48. VDMP_ORD_DOS_UMB        EQU     11  ;boolean flag - DOS owns UBMs
  49. VDMP_ORD_DOS_HIGH       EQU     12  ;boolean flag - DOS loaded high
  50. VDMP_ORD_LASTDRIVE      EQU     13  ;asciiz lastdrive
  51. VDMP_ORD_FILES  EQU     14  ;integer total FILES
  52.  
  53.  
  54. DefType VPORD,USHORT                    ;property ordinal
  55.  
  56.  
  57.  
  58. ;***    VDHRegisterProperty Flags
  59. ;
  60. ;
  61. VDMP_CREATE     EQU     000000001h  ;create-time only property
  62. VDMP_ADVANCED   EQU     000000002h  ;advanced property (not shown by default)
  63.  
  64.  
  65.  
  66. ;***    VDHRegisterProperty PFNVDHRP ordinals
  67. ;
  68. ;
  69. VDHPROP_VALIDATE        EQU     000000000h ;validate parameter
  70. VDHPROP_SET     EQU     000000001h ;set parameter
  71.  
  72.  
  73.  
  74. ;***    VPBOUND - limits for VDMP_INT properties
  75. ;
  76. ;   Notes:  (1) max > min must hold
  77. ;           (2) (max-min) must be a multiple of step
  78. ;           (3) step = 1 implies that all values between min and max are valid
  79. ;
  80. DefStruc ,VPBOUND_s                     ;vpb
  81.     USHORT  min    ;minimum allowed value
  82.     USHORT  max    ;maximum allowed value
  83.     USHORT  step   ;increment between values
  84. EndStruc VPBOUND
  85. DefType PVPBOUND,dd                     ;pvpb
  86.  
  87.  
  88.  
  89. ;***    VPINFO - VDD Property Info structure
  90. ;
  91. ;       This is filled in by a call to Dos32QueryDOSProperty
  92. ;
  93. ;
  94. ;       VPTYPE  vi_vptype  - Property type (see VPTYPE).
  95. ;       VPORD   vi_vpord   - Property ordinal (see VPORD).
  96. ;       ULONG   vi_ulFlags - Property flags:
  97. ;                   VDMP_CREATE
  98. ;                     TRUE if the property can only be specified at
  99. ;                         VDM creation.  Changing the property after
  100. ;                         the VDM is created has no effect.
  101. ;                     FALSE if the property can be specified at VDM
  102. ;                         creation AND can be changed for a running
  103. ;                         VDM.
  104. ;       ULONG   vi_ulHelpID - ID of help topic
  105. ;       char    vi_pszHelp[] - asciiz help file name.
  106. ;                   A single NULL byte is present if no help is
  107. ;                   available.
  108. ;
  109. ;       ???     vi_pvValid - This contains information that allows the property
  110. ;                   value to be validated.  Its format depends upon
  111. ;                   the property type:
  112. ;                     VDMP_BOOL
  113. ;                       This field is not present.
  114. ;                     VDMP_INT
  115. ;                       This field is a VPBOUND structure.
  116. ;                     VDMP_ENUM
  117. ;                       This field is a set of ASCIIZ strings,
  118. ;                       terminated by a zero byte, which is the allowed
  119. ;                       set of responses.
  120. ;                     VDMP_STRING
  121. ;                     VDMP_MLSTR
  122. ;                       This field is a ULONG representing the maximum
  123. ;                       allowed string length, including the terminating
  124. ;                       NULL byte.
  125. ;
  126. ;       ???     vi_pvValue - The default value of the property.  In all cases
  127. ;                   it is assumed that this value is valid according
  128. ;                   to the constraints specified by pvValid.
  129. ;                   The format depends upon the property type:
  130. ;                     VDMP_BOOL
  131. ;                       This field is a 4-byte BOOL.
  132. ;                     VDMP_INT
  133. ;                       This field is a ULONG.  The high half of the
  134. ;                       value is always zero, so this type can only
  135. ;                       take on the values of a USHORT.
  136. ;                     VDMP_ENUM
  137. ;                       This field is an ASCIIZ string.
  138. ;                     VDMP_STRING
  139. ;                     VDMP_MLSTR
  140. ;                       This field is an ASCIIZ string.
  141. ;
  142.  
  143. DefStruc ,VPINFO_s                      ;vpinfo
  144.     VPTYPE  vi_vptype     ;property type
  145.     VPORD   vi_vpord      ;property ordinal
  146.     ULONG   vi_ulFlags    ;flags
  147.     ULONG   vi_ulHelpID   ;help topic id
  148.     ;     vi_pszHelp,,  ; help file
  149.     ;     vi_pvValid    ; validation information
  150.     ;     vi_pvValue    ; default value
  151. EndStruc VPINFO
  152. DefType PVPINFO,dd
  153.  
  154.  
  155.  
  156. ;***    PROPERTYBUFFER - buffer containing 0 or more property values
  157. ;
  158. ;       This buffer format is used when passing property values to
  159. ;       DosStartSession.
  160. ;
  161. ;       Byte
  162. ;       Offset  Type    Contents
  163. ;       ------  ------- ------------------------------------------
  164. ;          0    ULONG   Buffer length, including this ULONG.
  165. ;          4    VPTYPE  Type of property (see VPTYPE in vdmprop.inc)
  166. ;          6    ASCIIZ  Null-terminated property name
  167. ;          ?    ?       Property value.  Format depends on VPTYPE:
  168. ;                         VDMP_BOOL
  169. ;                           4-byte boolean value.  0 => false, !0 => true.
  170. ;                         VDMP_INT
  171. ;                           ULONG.  The high half of the value is always
  172. ;                             zero, so this type can only take on the
  173. ;                             values of a USHORT.
  174. ;                         VDMP_ENUM
  175. ;                         VDMP_STRING
  176. ;                         VDMP_MLSTR
  177. ;                           Null-terminated string.
  178. ;          ?    VPTYPE  Type of second property
  179. ;          ?+2  ASCIIZ  Name of second property
  180. ;          ?    ?       Value of second property
  181. ;          ...
  182. ;
  183.  
  184. DefStruc ,_PROPERTYBUFFER                       ;propbuf
  185.     ULONG   cb
  186.     CHAR    achPropBuf
  187. EndStruc PROPERTYBUFFER
  188. DefType PPROPERTYBUFFER,dd                      ;ppropbuf
  189.  
  190.