RH.EQU
上传用户:xiaogehua
上传日期:2007-01-08
资源大小:1183k
文件大小:4k
源码类别:

操作系统开发

开发平台:

Asm

  1. ;    File              : $RH.EQU$
  2. ;
  3. ;    Description       :
  4. ;
  5. ;    Original Author   : DIGITAL RESEARCH
  6. ;
  7. ;    Last Edited By    : $CALDERA$
  8. ;
  9. ;-----------------------------------------------------------------------;
  10. ;    Copyright Work of Caldera, Inc. All Rights Reserved.
  11. ;      
  12. ;    THIS WORK IS A COPYRIGHT WORK AND CONTAINS CONFIDENTIAL,
  13. ;    PROPRIETARY AND TRADE SECRET INFORMATION OF CALDERA, INC.
  14. ;    ACCESS TO THIS WORK IS RESTRICTED TO (I) CALDERA, INC. EMPLOYEES
  15. ;    WHO HAVE A NEED TO KNOW TO PERFORM TASKS WITHIN THE SCOPE OF
  16. ;    THEIR ASSIGNMENTS AND (II) ENTITIES OTHER THAN CALDERA, INC. WHO
  17. ;    HAVE ACCEPTED THE CALDERA OPENDOS SOURCE LICENSE OR OTHER CALDERA LICENSE
  18. ;    AGREEMENTS. EXCEPT UNDER THE EXPRESS TERMS OF THE CALDERA LICENSE
  19. ;    AGREEMENT NO PART OF THIS WORK MAY BE USED, PRACTICED, PERFORMED,
  20. ;    COPIED, DISTRIBUTED, REVISED, MODIFIED, TRANSLATED, ABRIDGED,
  21. ;    CONDENSED, EXPANDED, COLLECTED, COMPILED, LINKED, RECAST,
  22. ;    TRANSFORMED OR ADAPTED WITHOUT THE PRIOR WRITTEN CONSENT OF
  23. ;    CALDERA, INC. ANY USE OR EXPLOITATION OF THIS WORK WITHOUT
  24. ;    AUTHORIZATION COULD SUBJECT THE PERPETRATOR TO CRIMINAL AND
  25. ;    CIVIL LIABILITY.
  26. ;-----------------------------------------------------------------------;
  27. ;
  28. ;    *** Current Edit History ***
  29. ;    *** End of Current Edit History ***
  30. ;
  31. ;    $Log$
  32. ;
  33. ;    ENDLOG
  34. ;
  35. ; Request command equates
  36. CMD_INIT equ  0 ; Initialize the Device Driver
  37. CMD_MEDIA_CHECK equ  1 ; Request Media Check
  38. CMD_BUILD_BPB equ  2 ; Build Drive BPB
  39. CMD_INPUT_IOCTL equ  3 ; IOCTL input
  40. CMD_INPUT equ  4 ; Input
  41. CMD_INPUT_NOWAIT equ  5 ; Non destructive input no wait
  42. CMD_INPUT_STATUS equ  6 ; Input status
  43. CMD_INPUT_FLUSH equ  7 ; Input flush
  44. CMD_OUTPUT equ  8 ; Output
  45. CMD_OUTPUT_VERIFY equ  9 ; Output with verify
  46. CMD_OUTPUT_STATUS equ 10 ; Output status
  47. CMD_OUTPUT_FLUSH equ 11 ; Output flush
  48. CMD_OUTPUT_IOCTL equ 12 ; IOCTL output
  49. CMD_DEVICE_OPEN equ 13 ; Device OPEN
  50. CMD_DEVICE_CLOSE equ 14 ; Device CLOSE
  51. CMD_FIXED_MEDIA equ 15 ; Removeable Media Check
  52. CMD_GENERIC_IOCTL equ 19 ; Generic IOCTL
  53. CMD_GET_DEVICE equ 23 ; Get the Logical Device
  54. CMD_SET_DEVICE equ 24 ; Set the Logical Device
  55. ; Request header definition
  56. RH_LEN equ byte ptr 0
  57. RH_UNIT equ byte ptr 1
  58. RH_CMD equ byte ptr 2
  59. RH_STATUS equ word ptr 3
  60.   RHS_DONE equ 0100h
  61.   RHS_BUSY equ 0200h
  62.   RHS_RM equ 0800h
  63.   RHS_ERROR equ 8000h
  64. ;******
  65. ;* No longer safe to use - some device drivers trample on them....
  66. ;*
  67. ;* RH_STRATEGY equ dword ptr 5[bx] ; Device Strategy Routine
  68. ;* RH_STRATOFF equ word ptr  5[bx] ; Strategy Offset
  69. ;* RH_STRATSEG equ word ptr  7[bx] ; Strategy Segment
  70. ;* RH_INTERRUPT equ dword ptr 9[bx] ; Device Interrupt Routine
  71. ;* RH_INTOFF equ word ptr  9[bx] ; Intterupt Offset
  72. ;* RH_INTSEG equ word ptr 11[bx] ; Interrupt Segment
  73. ;*****
  74. ; Request header for media check
  75. RH1_MEDIA equ byte ptr 13 ; BDOS: current media byte
  76. RH1_RETURN equ byte ptr 14 ; driver: return code (00, 01, FF)
  77. RH1_VOLID equ dword ptr 15 ; driver: volume label address
  78. ; Request header for "build BPB"
  79. RH2_MEDIA equ byte ptr 13 ; BDOS or driver?
  80. RH2_BUFFER equ dword ptr 14 ; BDOS: scratch buffer for driver use
  81. RH2_BPB equ dword ptr 18 ; driver: address of new BPB
  82. ; Request header for input/output
  83. RH4_MEDIA equ byte ptr 13 ; BDOS: current media byte
  84. RH4_BUFFER equ dword ptr 14 ; BDOS: disk transfer address
  85. RH4_BUFOFF equ word ptr 14
  86. RH4_BUFSEG equ word ptr 16
  87. RH4_COUNT equ word ptr 18 ; BDOS: sector count
  88. RH4_SECTOR equ word ptr 22 ; BDOS: starting sector
  89. RH4_VOLID equ dword ptr 24 ; driver: volume if illegal disk change
  90. ; Request Header for Non-Destructive Input
  91. RH5_CHAR equ byte ptr 13 ; Character Read from Device
  92. ; Request header for generic IOCTL
  93. RH19_CATEGORY equ word ptr 13 ; BDOS: major/minor function number
  94. RH19_GENPB equ word ptr 19 ; BDOS: extra parameters
  95. ; Request header for get/set logical drive
  96. RH24_DRIVE equ byte ptr 13 ; Set logical drive
  97. ; Request header lengths
  98. RH0_LEN equ 22
  99. RH1_LEN equ 15
  100. RH2_LEN equ 24
  101. if DOS5
  102. RH4_LEN equ 30
  103. else
  104. RH4_LEN equ 22 ; or 24 for big sectors
  105. endif
  106. RH4_CDEV_LEN equ 22
  107. RH5_LEN equ 14
  108. RH12_LEN equ 22
  109. RH13_LEN equ 13
  110. RH14_LEN equ 13
  111. RH15_LEN equ 13
  112. RH19_LEN equ 23
  113. RH24_LEN equ 21