home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / ddkx86v1.zip / DDKX86 / BOOK / STORAGE.INF (.txt) < prev    next >
OS/2 Help File  |  1995-04-14  |  615KB  |  20,918 lines

  1.  
  2. ΓòÉΓòÉΓòÉ 1. Notices ΓòÉΓòÉΓòÉ
  3.  
  4. Third Edition (September 1994) 
  5.  
  6. The following paragraph does not apply to the United Kingdom or any country 
  7. where such provisions are inconsistent with local law:  INTERNATIONAL BUSINESS 
  8. MACHINES CORPORATION PROVIDES THIS PUBLICATION "AS IS" WITHOUT WARRANTY OF ANY 
  9. KIND, EITHER EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 
  10. WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Some states 
  11. do not allow disclaimer of express or implied warranties in certain 
  12. transactions, therefore, this statement may not apply to you. 
  13.  
  14. This publication could include technical inaccuracies or typographical errors. 
  15. Changes are periodically made to the information herein; these changes will be 
  16. incorporated in new editions of the publication. IBM may make improvements 
  17. and/or changes in the product(s) and/or the program(s) described in this 
  18. publication at any time. 
  19.  
  20. It is possible that this publication may contain reference to, or information 
  21. about, IBM products (machines and programs), programming, or services that are 
  22. not announced in your country.  Such references or information must not be 
  23. construed to mean that IBM intends to announce such IBM products, programming, 
  24. or services in your country. 
  25.  
  26. Requests for technical information about IBM products should be made to your 
  27. IBM authorized reseller or IBM marketing representative. 
  28.  
  29.  
  30. ΓòÉΓòÉΓòÉ 1.1. Copyright Notices ΓòÉΓòÉΓòÉ
  31.  
  32. COPYRIGHT LICENSE: This publication contains printed sample application 
  33. programs in source language, which illustrate OS/2 programming techniques. You 
  34. may copy, modify, and distribute these sample programs in any form without 
  35. payment to IBM, for the purposes of developing, using, marketing or 
  36. distributing application programs conforming to the OS/2 application 
  37. programming interface. 
  38.  
  39. Each copy of any portion of these sample programs or any derivative work, which 
  40. is distributed to others, must include a copyright notice as follows: "(C) 
  41. (your company name) (year).  All rights reserved." 
  42.  
  43. (C) Copyright International Business Machines Corporation 1994. All rights 
  44. reserved. 
  45. Note to U.S. Government Users - Documentation related to restricted rights - 
  46. Use, duplication or disclosure is subject to restrictions set forth in GSA ADP 
  47. Schedule Contract with IBM Corp. 
  48.  
  49.  
  50. ΓòÉΓòÉΓòÉ 1.2. Disclaimers ΓòÉΓòÉΓòÉ
  51.  
  52. References in this publication to IBM products, programs, or services do not 
  53. imply that IBM intends to make these available in all countries in which IBM 
  54. operates. Any reference to an IBM product, program or service is not intended 
  55. to state or imply that only IBM's product, program, or service may be used. Any 
  56. functionally equivalent product, program, or service that does not infringe any 
  57. of IBM's intellectual property rights or other legally protectable rights may 
  58. be used instead of the IBM product, program, or service. Evaluation and 
  59. verification of operation in conjunction with other products, programs, or 
  60. services, except those expressly designated by IBM, are the user's 
  61. responsibility. 
  62.  
  63. IBM may have patents or pending patent applications covering subject matter in 
  64. this document. The furnishing of this document does not give you any license to 
  65. these patents. You can send license inquiries, in writing, to the IBM Director 
  66. of Licensing, IBM Corporation, 500 Columbus Avenue, Thornwood NY 10594, U.S.A. 
  67.  
  68.  
  69. ΓòÉΓòÉΓòÉ 1.3. Trademarks ΓòÉΓòÉΓòÉ
  70.  
  71. The following terms are trademarks of the IBM Corporation in the United States 
  72. or other countries: 
  73.  
  74.  AIX                           AT 
  75.  Common User Access            CUA 
  76.  IBM                           Micro Channel 
  77.  Multimedia Presentation Manager/2 OS/2 
  78.  Personal System/2             PS/2 
  79.  SAA                           Series/1 
  80.  Systems Application Architecture 
  81.  
  82.  The following terms are trademarks of other companies: 
  83.  
  84.  Adaptec                       Adaptec, Inc. 
  85.  APM                           Astek International Ltd. 
  86.  Apple                         Apple Computer, Inc. 
  87.  Hitachi                       Hitachi Ltd. 
  88.  Intel                         Intel Corporation 
  89.  MSCDEX                        Microsoft Corporation 
  90.  NEC                           NEC Corporation 
  91.  Novell                        Novell, Inc. 
  92.  Photo CD                      Eastman Kodak Company 
  93.  RIPL                          CTA Incorporated 
  94.  SCO                           The Santa Cruz Operation, Inc. 
  95.  Sony                          Sony Corporation 
  96.  Toshiba                       Toshiba Corporation 
  97.  UNIX                          Unix System Laboratories, Inc. 
  98.  XENIX                         Microsoft Corporation 
  99.  
  100.  
  101. ΓòÉΓòÉΓòÉ 2. About This Book ΓòÉΓòÉΓòÉ
  102.  
  103. The Storage Device Driver Reference provides a simplified programming interface 
  104. to expedite the development of DASD, SCSI, and CD-ROM device driver support for 
  105. the IBM OS/2 product. 
  106.  
  107. Frequently, original equipment manufacturers (OEMs) develop device support to 
  108. drive only their own unique device interfaces and the support may be 
  109. hardware-dependent. The programming interfaces described in this reference 
  110. categorize the DASD, SCSI, and CD-ROM device-driver modules as 
  111. hardware-dependent or hardware-independent. Hardware-independent modules can be 
  112. linked dynamically with hardware-dependent modules for a given workstation 
  113. configuration. 
  114.  
  115.  
  116. ΓòÉΓòÉΓòÉ 2.1. Summary of Changes ΓòÉΓòÉΓòÉ
  117.  
  118. The following changes have been made to the Storage Device Driver Reference 
  119. since the release of IBM Device Driver Source Kit for OS/2, Version 1.2: 
  120.  
  121.    o  The TESTCFG IOCtls can now be found in OS/2 Physical Device Driver 
  122.       Reference. 
  123.  
  124.    o  Chapters on Device Driver Test Tools have been added (DASD IOCtl, 
  125.       DASDADD, SCSI IOCtl, SCSI ADD, and CD-ROM). 
  126.  
  127.    o  Source Code for ASPI has been included (see Advanced SCSI Programming 
  128.       Interface (ASPI) OS/2 Specification). 
  129.  
  130.    o  An appendix has been added to explain the Device Driver Test Tool. 
  131.  
  132.  
  133. ΓòÉΓòÉΓòÉ 2.1.1. How This Book is Organized ΓòÉΓòÉΓòÉ
  134.  
  135.       Notices contains trademark and service mark notices and information. 
  136.  
  137.       Introduction to DASD, SCSI, and CD-ROM Programming Interfaces introduces 
  138.       the OS/2 DASD,SCSI, and CD-ROM programming interfaces for OEM device 
  139.       support, and describes what they are and what they are not.  It shows the 
  140.       organization of the code, and presents various types of device drivers, 
  141.       device managers, adapter device drivers, and filter device drivers. 
  142.  
  143.       Installation of OS/2, DASD, SCSI, and CD-ROM Device Drivers describes key 
  144.       design points and the strategies for addressing them. The BASEDEV 
  145.       keyword, introduced in OS/2 2.0, is described. This chapter describes 
  146.       system and adapter device driver installations along with the 
  147.       presence-check function. 
  148.  
  149.       Adapter Device Driver Development Considerations covers pertinent 
  150.       considerations when developing adapter device drivers, such as loading, 
  151.       initialization, and operation. 
  152.  
  153.       DASD, SCSI, and CD-ROM Device Manager Interface Specification presents 
  154.       the Direct Call Commands used with the DASD, SCSI, and CD-ROM device 
  155.       manager interface specification and the available device helpers 
  156.       (DevHlps). It covers I/O request blocks (IORBs) and their configuration, 
  157.       along with detailed descriptions of command codes, command modifiers, 
  158.       control blocks, and data structures. 
  159.  
  160.       Error Handling contains a summary of all the adapter device driver error 
  161.       codes and guidelines for their usage. 
  162.  
  163.       Adapter Device Driver Command-Line Parameters presents the adapter device 
  164.       driver command-line parameters and structures, including syntax 
  165.       conventions and specific parameter information for the various bus 
  166.       interfaces. 
  167.  
  168.       DASD IOCtl Device Driver Test Tool discusses the DASD IOCtl Functional 
  169.       Verification Tests (FVTs) that exercise the Application Program 
  170.       Interfaces (APIs) defined for the DosDevIOCtl interface of DASD drivers. 
  171.       These tests are implemented with the Device Driver Test Tool. 
  172.  
  173.       DASD ADD Device Driver Test Tool discusses the DASD ADD Functional 
  174.       Verification Tests (FVTs) that exercise the Application Program 
  175.       Interfaces (APIs) defined for the Inter-Device-Driver Communication (IDC) 
  176.       interface of DASD drivers. The tests are implemented with the Device 
  177.       Driver Test Tool. 
  178.  
  179.       SCSI IOCtl Device Driver Test Tool discusses the SCSI IOCtl Functional 
  180.       Verification Tests (FVTs) that exercise the Application Program 
  181.       Interfaces (APIs) defined for the interface of SCSI device drivers.  The 
  182.       tests are implemented with the Device Driver Test Tool. 
  183.  
  184.       SCSI ADD Device Driver Test Tool discusses the Inter-Device-Driver 
  185.       Communication Interface (IDC) defined for the interface of SCSI Adapter 
  186.       device drivers. The tests are implemented with the Device Driver Test 
  187.       Tool. 
  188.  
  189.       Using Filter Device Drivers presents filter device drivers and the 
  190.       strategies for providing filter functions. 
  191.  
  192.       Library and Services provides a complement of library services for common 
  193.       adapter device driver tasks. 
  194.  
  195.       CD-ROM Device Manager Interface Specification provides CD-ROM specific 
  196.       device driver support information. 
  197.  
  198.       CD-ROM Device Driver Test Tool discusses the Application Program 
  199.       Interfaces (APIs) defined for the interface of CD-ROM drivers. 
  200.  
  201.       Building an OS/2 Virtual Disk Driver describes how to program and build 
  202.       an OS/2 virtual disk driver. 
  203.  
  204.       OS2DASD.DMD - Technical Reference describes how the OS2DASD Manager 
  205.       provides support for fixed and removable magnetic disks. 
  206.  
  207.       Boot Record Architecture describes how to install, create, and delete 
  208.       block devices in the Extended DOS partition.  This appendix also discuss 
  209.       BIOS Parameter Blocks and Get Device Parameters for Extended Volumes. 
  210.  
  211.       Extended Device Driver Interface Specification describes the supports for 
  212.       servicing fixed disk devices. 
  213.  
  214.       I/O Request Block - C Definitions lists the I/O request block C language 
  215.       definitions for adapter device driver device support. 
  216.  
  217.       OS/2 SCSI Device Driver Interface Specification describes the high-level 
  218.       interface for the SCSI device driver for OS/2.  All functions are listed. 
  219.  
  220.       Advanced SCSI Programming Interface (ASPI) OS/2 Specification describes 
  221.       the advanced SCSI programming interface (ASPI) OS/2 specification.  The 
  222.       information was provided by Adaptec Corporation. 
  223.  
  224.       Adapter Device Driver Interface Questions and Answers covers the most 
  225.       commonly asked questions about adapter device driver interfaces.  The 
  226.       answers are presented in detail. 
  227.  
  228.       Using the Device Driver Test Tool (DDTT) describes how to use the Device 
  229.       Driver Test Tool in different environments. 
  230.  
  231.  A glossary and an index appear at the back of the book. 
  232.  
  233.  
  234. ΓòÉΓòÉΓòÉ 2.2. Assistance ΓòÉΓòÉΓòÉ
  235.  
  236. Technical support for device driver development is provided by the IBM Driver 
  237. Development Support Center (DDSC) through a bulletin board system (BBS) known 
  238. as the "DUDE." You are encouraged to use the DUDE to obtain support by sending 
  239. in your questions and reviewing the question and answer database which can be 
  240. downloaded for off-line review. 
  241.  
  242. To access the DUDE, dial 407-982-3217 (using a modem) to register and access 
  243. the support system. For voice support in the United States, call 407-982-4239. 
  244.  
  245. Additional assistance is available through the IBM Developer Assistance 
  246. Program. For membership information: 
  247.  
  248.  Telephone:     407-982-6408 
  249.  
  250.  Fax:           407-988-7610 (U.S.A.) or 
  251.  
  252.  Fax:           407-982-4259 (worldwide) 
  253.  
  254.  
  255. ΓòÉΓòÉΓòÉ 2.3. Ordering Information ΓòÉΓòÉΓòÉ
  256.  
  257. For an illustration of OS/2 Technical Publications and other related product 
  258. documents, see the following figure. The IBM Developer Connection Device Driver 
  259. Kit for OS/2 on CD-ROM contains actual source code for sample device drivers, 
  260. as well as the complete text of the books in online form. 
  261.  
  262. To order any of the publications shown in the illustration, call: 
  263.  
  264. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  265. ΓöéU.S.A.:             Γöé1-800-633-8266       Γöé                     Γöé
  266. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  267. ΓöéCanada:             Γöé1-800-561-5293       Γöé                     Γöé
  268. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  269. ΓöéEurope, Middle East,Γöé English language   Γöé(+45) 48101500       Γöé
  270. ΓöéAfrica, and         Γöé French language    Γöé(+45) 48101200       Γöé
  271. ΓöéLatin America:      Γöé Italian language   Γöé(+45) 48101600       Γöé
  272. Γöé                    Γöé German language    Γöé(+45) 48101000       Γöé
  273. Γöé                    Γöé Spanish language   Γöé(+45) 48101100       Γöé
  274. Γöé                    Γöé Dutch language     Γöé(+45) 48101400       Γöé
  275. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  276. ΓöéAsia/Pacific:       Γöé All except Japan   Γöé(61) 2-354-7684      Γöé
  277. Γöé                    Γöé Japan              Γöé(81) 3-3495-2045(Fax)Γöé
  278. Γöé                    Γöé                     ΓöéFax request to:      Γöé
  279. Γöé                    Γöé                     ΓöéDAP-J, IBM Japan     Γöé
  280. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  281. ΓöéSE Brazil:          Γöé(021) 800-6120(Voice)Γöé                     Γöé
  282. Γöé                    Γöé(021) 800-6936(Fax)  Γöé                     Γöé
  283. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  284. ΓöéMexico:             Γöé Mexico City        Γöé627-2444             Γöé
  285. Γöé                    Γöé Country            Γöé91-800-00639         Γöé
  286. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  287.  
  288.  
  289. ΓòÉΓòÉΓòÉ 3. Introduction to DASD, SCSI, and CD-ROM Programming Interfaces ΓòÉΓòÉΓòÉ
  290.  
  291. This reference defines the OS/2* 2.0 (and later) programming interfaces to 
  292. support original equipment manufacturer (OEM) direct access storage devices 
  293. (DASD), small computer system interface (SCSI) devices, and compact disc read 
  294. only memory (CD-ROM) devices. 
  295.  
  296. The programming interfaces described in this reference provide the following 
  297. benefits: 
  298.  
  299.    o  Device drivers can be written in the C programming language. 
  300.  
  301.    o  The development of new DASD, SCSI, and CD-ROM support for unique device 
  302.       interfaces is expedited by reducing the amount of new code required and 
  303.       the complexity of that code. 
  304.  
  305.    o  Facilitate development of a new DASD, SCSI, or CD-ROM driver for a 
  306.       specific bus interface. 
  307.  
  308.    o  Relatively complex OS/2 kernel interfaces are replaced with a single 
  309.       interface. 
  310.  
  311.    o  Independent development organizations are better able to reuse existing 
  312.       DASD device driver code. 
  313.  
  314.    o  OS/2 2.0 (and later) is better equipped for installing, starting, and 
  315.       operating on a broad range of Intel** 80386SX-compatible workstations. 
  316.  
  317.  The following figure illustrates the organization of the new code: 
  318.  
  319.  The following types of device drivers are included in this reference: 
  320.  
  321.    o  Device managers 
  322.    o  Adapter device drivers 
  323.    o  Filter device drivers 
  324.  
  325.  A device manager (DM) is a hardware-independent module that services the 
  326.  standard OS/2 request packet interface.  An adapter device driver is a 
  327.  hardware-dependent module and is a member of the lowest layer in the 
  328.  device-driver hierarchy. The adapter device driver to device manager interface 
  329.  is designed such that an adapter device driver is little more than a state 
  330.  machine responsible for moving blocks of I/O between system memory and a 
  331.  target device. 
  332.  
  333.  A filter device driver differs from an adapter device driver in that it 
  334.  normally does not manage hardware directly. See Filter Device Drivers and 
  335.  Using Filter Device Drivers for details about filter device drivers. 
  336.  
  337.  
  338. ΓòÉΓòÉΓòÉ 3.1. Device Managers ΓòÉΓòÉΓòÉ
  339.  
  340. Device managers provide a uniform interface between their clients and adapter 
  341. device drivers.  Device manager clients normally are an OS/2 installable file 
  342. system or the OS/2 kernel but can be other device drivers. 
  343.  
  344. The interface between a device manager and the adapter device drivers managed 
  345. is defined in this reference.  The interface between device managers and the 
  346. clients they service is defined by the client's interface specification. 
  347.  
  348. IBM provides the devices managers shown in the following table: 
  349.  
  350. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  351. ΓöéDevice Manager   ΓöéClient            ΓöéClient Specification     Γöé
  352. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  353. ΓöéOS2DASD.DMD      ΓöéOS/2 File Systems ΓöéOS/2 Physical Device     Γöé
  354. Γöé                 Γöé                  ΓöéDriver Reference         Γöé
  355. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  356. ΓöéOS2SCSI.DMD      ΓöéSCSI.SYS option   ΓöéOS/2 SCSI Device Driver  Γöé
  357. Γöé                 Γöédrivers           ΓöéSpecification            Γöé
  358. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  359. ΓöéOS2ASPI.DMD      ΓöéASPI option       ΓöéAdvanced SCSI ProgrammingΓöé
  360. Γöé                 Γöédrivers           ΓöéInterface                Γöé
  361. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  362. ΓöéOS2CDROM.DMD     ΓöéCD-ROM File SystemΓöéOS/2 CD-ROM Interface    Γöé
  363. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  364.  
  365.  
  366. ΓòÉΓòÉΓòÉ 3.2. Adapter Device Drivers ΓòÉΓòÉΓòÉ
  367.  
  368. Adapter device drivers provide a uniform software interface to the hardware 
  369. devices they manage.  A device driver's external interface is defined in this 
  370. reference. 
  371.  
  372. Adapter device drivers for the following industry-standard interfaces are 
  373. included in the OS/2 2.0 (and later) product: 
  374.  
  375. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  376. ΓöéDevice Driver    ΓöéSupported Devices                          Γöé
  377. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  378. ΓöéIBM1S506.ADD     Γöé                                           Γöé
  379. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  380. ΓöéIBM1FLPY.ADD     ΓöéISA removable media drives                 Γöé
  381. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  382. ΓöéIBM2ADSK.ADD     ΓöéABIOS fixed drives                         Γöé
  383. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  384. ΓöéIBM2SCSI.ADD     ΓöéABIOS SCSI adapters                        Γöé
  385. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  386. ΓöéIBM2FLPY.ADD     ΓöéABIOS removable media drives               Γöé
  387. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  388. ΓöéIBMINT13.I13     ΓöéINT 13H BIOS DASD devices                  Γöé
  389. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  390.  
  391. Additional adapter device drivers for other OEM interfaces might be included in 
  392. the OS/2 operating system. 
  393.  
  394.  
  395. ΓòÉΓòÉΓòÉ 3.3. Filter Device Drivers ΓòÉΓòÉΓòÉ
  396.  
  397. Filter device drivers are a special class of device drivers that provide the 
  398. following: 
  399.  
  400.    o  Generic value-added services, such as data stripping or encryption 
  401.    o  Device-specific services, such as adjusting and altering the command 
  402.       stream between a device manager and an adapter device driver to support a 
  403.       particular type of device 
  404.  
  405.  The interfaces between device managers and filter device drivers are identical 
  406.  to the interfaces between device managers and ordinary adapter device drivers. 
  407.  Filter drivers differ from ordinary drivers in that they normally do not 
  408.  manage hardware directly; instead, they monitor the stream of commands between 
  409.  a device manager and regular adapter device drivers. 
  410.  
  411.  Filter device drivers to support the following devices are included in the 
  412.  OS/2 2.0 (and later) product: 
  413.  
  414.   ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  415.   ΓöéFilter           ΓöéSupported Devices                          Γöé
  416.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  417.   ΓöéHITCDS1.FLT      Γöé                                           Γöé
  418.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  419.   ΓöéTOSHCDS1.FLT     Γöé                                           Γöé
  420.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  421.   ΓöéNECCDS1.FLT      Γöé                                           Γöé
  422.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  423.   ΓöéSONYCDS1.FLT     Γöé                                           Γöé
  424.   ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  425.  
  426.  
  427. ΓòÉΓòÉΓòÉ 4. Installation of OS/2, DASD, SCSI, and CD-ROM Device Drivers ΓòÉΓòÉΓòÉ
  428.  
  429. The key design points of this OEM DASD, SCSI, and CD-ROM device support package 
  430. include: 
  431.  
  432.    o  The ability to install and, subsequently, start up from a DASD device 
  433.       that requires an OEM-specific adapter device driver interface 
  434.    o  An installation process that is transparent to the end-user (that is, it 
  435.       requires no interaction on the part of the end-user) 
  436.  
  437.  This chapter describes the strategy developed to address these design points 
  438.  and the responsibilities of a device driver supplier in order to participate 
  439.  in this strategy. 
  440.  
  441.  
  442. ΓòÉΓòÉΓòÉ 4.1. Using the BASEDEV Keyword ΓòÉΓòÉΓòÉ
  443.  
  444. A base device driver performs I/O during the OS/2 kernel initial load sequence. 
  445. There are a number of operational differences between base device drivers and 
  446. installable device drivers.  See Adapter Device Driver Development 
  447. Considerations for a description of how this affects adapter device driver 
  448. development. 
  449.  
  450. The BASEDEV keyword new with the OS/2 2.0 operating system, loads a base device 
  451. driver into the operating system.  Its syntax is as follows: 
  452.  
  453.     BASEDEV= ΓöÇΓöÇΓöÇΓöÇ filename ΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöñ
  454.                              ΓööΓöÇΓöÇ arguments ΓöÇΓöÇΓöÿ
  455.  
  456. Unlike the DEVICE= statement, the BASEDEV= statement must not contain either 
  457. drive or path information.  The root directory of the startup partition is 
  458. searched first for the specified file name, followed by the \OS2 directory of 
  459. the startup partition.  (In the startup sequence, the OS/2 operating system 
  460. cannot process drive or path information at the point where BASEDEV= statements 
  461. are processed.  If drive or path information is included there, an error is 
  462. generated.) 
  463.  
  464. Also, unlike the DEVICE= statement, the file-name extension of the file being 
  465. loaded has a special meaning.  BASEDEV= statements are not necessarily 
  466. processed in the order in which they appear in your CONFIG.SYS file.  The 
  467. extension of each BASEDEV= file name is examined; then, BASEDEV= statements are 
  468. processed in the order indicated by the following figure. 
  469.  
  470. ΓöîΓöÇΓöÇΓöÇBASEDEV= Load Ordering by File ExtensionΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  471. Γöé  .SYS (processed first)                                  Γöé
  472. Γöé  .BID                                                    Γöé
  473. Γöé  .VSD         Γöé                                          Γöé
  474. Γöé  .TSD         Γöé                                          Γöé
  475. Γöé  .ADD         Γöé                                          Γöé
  476. Γöé  .I13                                                   Γöé
  477. Γöé  .FLT                                                    Γöé
  478. Γöé  .DMD  (processed last)                                  Γöé
  479. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  480.  
  481. Files with other file-name extensions are not loaded. 
  482.  
  483. If several BASEDEV= statements load file names with the same extension, those 
  484. files are loaded in the order in which they are encountered in the CONFIG.SYS 
  485. file. 
  486.  
  487.  
  488. ΓòÉΓòÉΓòÉ 4.2. OS/2 System Installation ΓòÉΓòÉΓòÉ
  489.  
  490. When the OS/2 operating system is first loaded from the installation diskettes, 
  491. the following adapter device drivers and device managers are loaded: 
  492.  
  493. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  494. ΓöéAdapter Device      ΓöéSupported Device Managers                         Γöé
  495. ΓöéDriver              Γöé                                                  Γöé
  496. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  497. ΓöéOS2DASD.DMD         ΓöéOS/2 DASD manager                                 Γöé
  498. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  499. ΓöéOS2CDROM.DMD        ΓöéOS/2 CD-ROM manager                               Γöé
  500. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  501. ΓöéIBM1FLPY.ADD        ΓöéISA removable media driver                        Γöé
  502. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  503. ΓöéIBM1S506.ADD        ΓöéISA ST-506 driver                                 Γöé
  504. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  505. ΓöéIBM2FLPY.ADD        ΓöéABIOS removable media driver                      Γöé
  506. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  507. ΓöéIBM2ADSK.ADD        ΓöéABIOS DASD driver                                 Γöé
  508. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  509. ΓöéIBM2SCSI.ADD        ΓöéABIOS SCB driver                                  Γöé
  510. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  511. ΓöéIBMINT13.I13        ΓöéGeneric INT 13h driver                            Γöé
  512. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  513.  
  514. Additional drivers supporting other OEM interfaces also can be present. 
  515.  
  516. When each device driver initializes, it attempts to determine whether its 
  517. target hardware adapter is present.  If the hardware interface is recognized, 
  518. the driver completes its initialization and, subsequently, is ready to manage 
  519. I/O operations during OS/2 system installation.  If the hardware interface is 
  520. not recognized, the device driver will fail the initialization with the Quiet 
  521. Fail flags set.  Quiet failure prevents the generation of failure messages on 
  522. the workstation display. 
  523.  
  524. Hardware interfaces that are not recognized by any of the drivers on the OS/2 
  525. initialization diskette are driven by the generic INT 13h adapter device 
  526. (IBMINT13.I13) during installation.  The IBMINT13 driver determines whether the 
  527. previously loaded adapter device drivers have claimed at least as many fixed 
  528. disks as indicated by the BIOS fixed disk count (0:475). The IBMINT13 driver 
  529. will attempt to manage the remaining fixed disks. Consequently, to install and 
  530. initially load the OS/2 operating system from an OEM adapter, it is important 
  531. for the OEM to ensure that the IBMINT13 adapter device driver works properly 
  532. with the OEM's adapter BIOS. 
  533.  
  534. The OS/2 operating system can be installed and loaded on drives with BIOS IDs 
  535. hex 80 or higher, provided that the OEM BIOS supplies INT 13h support for these 
  536. drives. 
  537.  
  538.  
  539. ΓòÉΓòÉΓòÉ 4.2.1. OEM Adapter Device Driver Installation ΓòÉΓòÉΓòÉ
  540.  
  541. OEM adapter device drivers are installed within the framework of the OS/2 
  542. DDINSTAL utility.  The driver developer is responsible for supplying two 
  543. modules (in addition to the adapter device driver) used by DDINSTAL - an 
  544. adapter presence-check function and a device driver profile.  DDINSTAL uses 
  545. these modules to automatically detect the presence of OEM hardware interfaces 
  546. and to install the corresponding drivers without user intervention. 
  547.  
  548.  
  549. ΓòÉΓòÉΓòÉ 4.2.2. Presence-Check Function ΓòÉΓòÉΓòÉ
  550.  
  551. A presence-check function is a Ring 3 (nonprivileged) EXE program that 
  552. determines whether a given hardware interface is present on a workstation.  The 
  553. module returns 0 when the specific interface is detected and 1 when the 
  554. interface is not detected. For these modules to identify installed OEM 
  555. adapters, Ring 0 services are provided by the device driver TESTCFG.SYS. 
  556. TESTCFG provides the following IOCtl services for OEM adapter presence-check 
  557. modules: 
  558.  
  559.    o  Determines CPU host bus type 
  560.    o  Reads adapter ROM space 
  561.    o  Executes IN/OUT instruction 
  562.    o  Reads EISA adapter IDs 
  563.  
  564.  Refer to the OS/2 Physical Device Driver Reference for details on the TESTCFG 
  565.  device driver services. 
  566.  
  567.  Note:  Be sure to write adapter presence-check modules to avoid disruption or 
  568.         conflicts with other installed host adapters. 
  569.  
  570.  
  571. ΓòÉΓòÉΓòÉ 4.2.3. Device Driver Profiles ΓòÉΓòÉΓòÉ
  572.  
  573. A device driver profile is a file with a DDP extension containing a script that 
  574. is interpreted by the OS/2 DDINSTAL utility. The device driver profile defines 
  575. which files to copy from the installation diskettes to the target directories 
  576. and specifies how the CONFIG.SYS file will be updated. 
  577.  
  578. Refer to the Physical Device Driver Reference for specification of the DDINSTAL 
  579. utility and the device driver profile language. 
  580.  
  581. The DDINSTAL utility has been extended to support execution of the 
  582. presence-check function and to conditionally process the DDP file, based on the 
  583. return code from the presence check.  To enable this support, the DDINSTAL 
  584. utility now interprets the PRESENCECHECK keyword. 
  585.  
  586. To use this new DDINSTAL feature, create a DDP file for the installation of 
  587. your adapter driver, using the existing TITLE, CONFIG, and FILES keywords. 
  588. Then, add a line to the DDP of the form: 
  589.  
  590. ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  591.  
  592. :PRESENCECHECK
  593. <filename>
  594.  
  595. ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  596.  
  597. where <filename> is the name of the presence-check function. 
  598.  
  599. When the DDP is interpreted by DDINSTAL, that utility first scans the DDP for 
  600. the PRESENCECHECK keyword.  If the keyword is found, the corresponding EXE 
  601. module is executed.  Then, the entire DDP file is either processed or ignored, 
  602. based on the outcome of the presence-check function. 
  603.  
  604. A device driver profile for a hypothetical OEM-323x SCSI adapter could look 
  605. like the following example.  The file name would be OEM323x.DDP and the 
  606. contents would be as follows: 
  607.  
  608. ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  609.  
  610. *******************************************************************
  611. *                                                                 *
  612. * This is a device driver profile for a SCSI adapter.             *
  613. * DDINSTAL would use this profile to automatically install the    *
  614. * target device support.  The complete profile is processed only  *
  615. * when the OEM323x.EXE program returns 0, indicating that the     *
  616. * OEM-323x adapter is actually installed in the workstation.      *
  617. *                                                                 *
  618. *******************************************************************
  619.  
  620.  :PRESENCECHECK        * Check for the presence of an OEM-323x.
  621.  OEM323x.EXE           * This might query POS IDs using TESTCFG.
  622.  
  623.   ***********************************************************
  624.   * The remainder of this file is processed only if         *
  625.   * OEM323x.EXE indicates detection of the OEM-323x adapter.*
  626.   ***********************************************************
  627.  
  628.  :TITLE
  629.  Device driver profile for the OemTec OEM-323x OS/2 2.0 Adapter Device
  630.  Driver
  631.  
  632.  :CONFIG               * Add this line to CONFIG.SYS
  633.  BASEDEV=OEM323x.ADD
  634.  
  635.  :FILES
  636.  OEM323x.ADD \OS2\OEM323x.ADD
  637.                        * Move this file from the installation
  638.                        * diskette to the \OS2 directory on the
  639.                        * target partition.
  640.  
  641. ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  642.  
  643.  
  644. ΓòÉΓòÉΓòÉ 4.2.4. Processing Presence-Check Functions and DDP Files ΓòÉΓòÉΓòÉ
  645.  
  646. OEM adapter device drivers that are packaged in the OS/2 product are installed 
  647. near the end of the OS/2 system installation. At this point in the installation 
  648. process, the DDP files for each OEM adapter device driver are evaluated by the 
  649. DDINSTAL interpreter.  This processing is completely automatic and transparent 
  650. to the end user. 
  651.  
  652. Use the same DDINSTAL framework for adapter device drivers that you distribute 
  653. directly. Include the driver file, presence-check function, and DDP file on a 
  654. reference diskette for the OEM adapter.  The end user can install the adapter 
  655. device support from the reference diskette, after the OS/2 operating system is 
  656. loaded, by selecting Device Driver Install from the OS/2 System Setup folder. 
  657. The installation of the device support will proceed automatically. 
  658.  
  659.  
  660. ΓòÉΓòÉΓòÉ 5. Adapter Device Driver Development Considerations ΓòÉΓòÉΓòÉ
  661.  
  662. Adapter device drivers are packaged as 16-bit OS/2 device drivers. This chapter 
  663. describes how adapter device drivers differ from installable OS/2 device 
  664. drivers. 
  665.  
  666.  
  667. ΓòÉΓòÉΓòÉ 5.1. Loading and Initialization ΓòÉΓòÉΓòÉ
  668.  
  669. Adapter device drivers are loaded using the BASEDEV= statement in CONFIG.SYS. 
  670. The processing of these statements occurs before the operating system is fully 
  671. initialized.  The adapter device driver writer must be aware of the following 
  672. differences between installable device drivers and adapter device drivers: 
  673.  
  674.    o  Adapter device drivers initialize at Ring 0 rather than Ring 3. 
  675.  
  676.       Generally, this does not cause any problems.  However, adapter device 
  677.       drivers cannot use the DOSxxx APIs available to installable device 
  678.       drivers during initialization.  To display a message, an adapter device 
  679.       driver must use the DevHlp_Save_Message service. 
  680.  
  681.    o  INIT request packet command code 
  682.  
  683.       The INIT request packet command code for all base device drivers (which 
  684.       include all adapter device drivers) is hex 1B rather than hex 0. 
  685.  
  686.    o  Device Driver Header 
  687.  
  688.       An adapter device driver must identify itself as a participant in the 
  689.       adapter device driver strategy by setting the following bits to 1 in the 
  690.       device driver header.  The bit-numbering convention is that bit 15 is the 
  691.       most significant bit in a WORD, and bit 31 is the most significant bit in 
  692.       a DWORD. 
  693.  
  694.         -  Device attribute field - Bits 15, 8, 7 
  695.  
  696.            Bit 15 indicates CHARACTER device driver.  Bits 8 and 7 define 
  697.            driver as a Level 3 device driver, which indicates usage of the 
  698.            DWORD capabilities bit strip in the header file. 
  699.  
  700.         -  Capabilities Bit Strip - Bit 3 
  701.  
  702.            Bit 3 indicates that the driver is participating in the adapter 
  703.            device driver strategy which, in turn, selects an alternate INIT 
  704.            request packet format from the kernel. 
  705.  
  706.    o  INIT request packet format 
  707.  
  708.       The INIT request packet for a driver that has identified itself as an 
  709.       adapter device driver (through bits set in the device driver header as 
  710.       just described) corresponds to the RPINITIN structure defined in 
  711.       REQPKT.H, supplied with the IBM Developer Connection Device Driver Kit 
  712.       for OS/2.  The InitArgs member of the RPINITIN structure points to the 
  713.       following structure, defined in DSKINIT.H in the kit. 
  714.  
  715.             ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  716.  
  717.             typedef struct _DDD_PARM_List {      /* DDPL                         */
  718.               USHORT     reserved1;              /* Reserved                     */
  719.               USHORT     disk_config_table;      /* Address of config table      */
  720.               USHORT     reserved2;              /* Reserved                     */
  721.               USHORT     cmd_line_args;          /* Address of command line parm */
  722.               USHORT     machine_config_table;   /* Address of config info       */
  723.             } DDD_Parm_List, FAR *PDD_Parm_List;
  724.  
  725.             ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  726.  
  727.       By following the appropriate pointers in the DDD_Parm_List, the driver 
  728.       writer can obtain BASEDEV= command-line parameters, as well as 
  729.       information collected during system initialization. 
  730.  
  731.    o  Adapter device drivers process a limited set of OS/2 kernel request 
  732.       packets. 
  733.  
  734.       With the exception of the OS/2 system kernel initialization request 
  735.       packet just described and vendor-defined IOCtls, adapter device drivers 
  736.       must reject all other kernel request packets.  The primary interface to 
  737.       adapter device drivers is defined in this reference. 
  738.  
  739.    o  Adapter device drivers register their entry points using the DevHlp 
  740.       service. 
  741.  
  742.       Adapter device drivers register their main entry points with the the OS/2 
  743.       kernel using the DevHlp_RegisterDeviceClass service.  See DASD, SCSI, and 
  744.       CD-ROM Device Manager Interface Specification for details.  The table of 
  745.       registered entry points is available to other adapter device drivers and 
  746.       device managers that can call an adapter device driver directly. 
  747.  
  748.    o  Adapter device drivers must declare a valid character device name in 
  749.       their headers. 
  750.  
  751.       The OS/2 kernel treats the name in the adapter device driver header as a 
  752.       valid character device name.  Adapter device drivers must end their 
  753.       device names with a dollar sign ($) to avoid conflict with valid file 
  754.       names. 
  755.  
  756.    o  Adapter device drivers must fail quietly when hardware is not found. 
  757.  
  758.       Adapter device drivers should check for the presence of their hardware 
  759.       interface at initialization time. If it is not found, the adapter device 
  760.       driver must set the ERROR_I24_QUIET_INIT_FAIL flags (as defined in 
  761.       BSEERR.H) in the Status field of the request packet. 
  762.  
  763.  
  764. ΓòÉΓòÉΓòÉ 5.2. Operation ΓòÉΓòÉΓòÉ
  765.  
  766. Adapter device drivers receive commands through an I/O request block (IORB) 
  767. entry point. The format of IORB commands received by an adapter device driver 
  768. is defined in this reference. 
  769.  
  770. Adapter device drivers have full use of both the 16-bit and 32-bit DevHlp 
  771. services defined in OS/2 operating system. Although the adapter device driver 
  772. to DM interface is 16-bit, adapter device drivers can manipulate 32-bit objects 
  773. with assembly subroutines. 
  774.  
  775. The service request entry point of an adapter device driver can be called in 
  776. either kernel (also known as task) or interrupt contexts.  Consequently, an 
  777. adapter device driver must never block while servicing a request after it has 
  778. completed initialization.  (An adapter device driver can block at 
  779. initialization.) 
  780.  
  781. Service requests that involve time delays normally are initiated by the adapter 
  782. device driver; then, the adapter device driver immediately returns to its 
  783. caller. Service request completion is indicated to the caller using 
  784. asynchronous callback notification. 
  785.  
  786.  
  787. ΓòÉΓòÉΓòÉ 5.3. Command-Line Parameters ΓòÉΓòÉΓòÉ
  788.  
  789. To facilitate the parsing of command-line parameters, and to help encourage 
  790. uniformity in command-line syntax, a parser/tokenizer is provided in the IBM 
  791. Developer Connection Device Driver Kit for OS/2. In addition, a command-line 
  792. syntax definition is provided in Adapter Device Driver Command-Line Parameters. 
  793.  
  794. The output of the parser/tokenizer is a stream of tokens that represents the 
  795. contents of the command line.  The parser/tokenizer performs preliminary 
  796. syntactical checks on the command line and indicates the results of these 
  797. checks by the return code.  However, the adapter device driver must ensure that 
  798. the tokenized parameters' values are acceptable.  The adapter device driver is 
  799. responsible for displaying error messages as appropriate. 
  800.  
  801. OEMs can modify the parser and included tables to add their own adapter-unique 
  802. flags and parameters. 
  803.  
  804.  
  805. ΓòÉΓòÉΓòÉ 6. DASD, SCSI, and CD-ROM Device Manager Interface Specification ΓòÉΓòÉΓòÉ
  806.  
  807. The IBM OS/2 2.0 (and later) DASD and SCSI device manager interface consists of 
  808. direct call commands and Device Helper (DevHlp) services. 
  809.  
  810.  
  811. ΓòÉΓòÉΓòÉ 6.1. Direct Call Command Interface ΓòÉΓòÉΓòÉ
  812.  
  813. All direct call commands are issued by the device managers (OS2DASD.DMD and 
  814. OS2SCSI.DMD) or filter device drivers to an adapter device driver's registered 
  815. entry point, with a global pointer to the Input/Output Request Block (IORB), as 
  816. follows: 
  817.  
  818. C Language Syntax 
  819.  
  820. ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  821.  
  822. #include <iorb.h>
  823.  
  824. VOID (FAR * ADDEntryPoint) (piorb);
  825.  
  826. PIORB   piorb;        /* Far pointer to the IORB control block */
  827.  
  828. ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  829.  
  830. Assembly Language Syntax 
  831.  
  832. ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  833.  
  834. #include <iorb.inc>
  835.  
  836.   ; ** ES:BX = IORB Pointer
  837.   PUSH    es                                   ; IORB Segment
  838.   PUSH    bx                                   ; IORB Offset
  839.   CALL    dword ptr AddEntryPoint              ; Call adapter device driver
  840.   ADD     sp, 4                                ; Clean-up stack
  841.  
  842. ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  843.  
  844. Results 
  845.  
  846. The results of the command are returned in the IORB. 
  847.  
  848. The following table categorizes and lists the direct call commands used for the 
  849. DASD and SCSI device manager interface: 
  850.  
  851. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  852. ΓöéCommand Type            ΓöéCommands                            Γöé
  853. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  854. ΓöéCONFIGURATION           Γöé                                    Γöé
  855. Γöé                        ΓöéGET_DEVICE_TABLE                    Γöé
  856. Γöé                        ΓöéCOMPLETE_INIT                       Γöé
  857. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  858. ΓöéUNIT_CONTROL            Γöé                                    Γöé
  859. Γöé                        ΓöéALLOCATE_UNIT                       Γöé
  860. Γöé                        ΓöéDEALLOCATE_UNIT                     Γöé
  861. Γöé                        ΓöéCHANGE_UNITINFO                     Γöé
  862. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  863. ΓöéGEOMETRY                Γöé                                    Γöé
  864. Γöé                        ΓöéGET_MEDIA_GEOMETRY                  Γöé
  865. Γöé                        ΓöéSET_MEDIA_GEOMETRY                  Γöé
  866. Γöé                        ΓöéGET_DEVICE_GEOMETRY                 Γöé
  867. Γöé                        ΓöéSET_LOGICAL_GEOMETRY                Γöé
  868. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  869. ΓöéEXECUTE_IO              Γöé                                    Γöé
  870. Γöé                        ΓöéREAD                                Γöé
  871. Γöé                        ΓöéREAD_VERIFY                         Γöé
  872. Γöé                        ΓöéREAD_PREFETCH                       Γöé
  873. Γöé                        ΓöéWRITE                               Γöé
  874. Γöé                        ΓöéWRITE_VERIFY                        Γöé
  875. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  876. ΓöéFORMAT                  Γöé                                    Γöé
  877. Γöé                        ΓöéFORMAT_MEDIA                        Γöé
  878. Γöé                        ΓöéFORMAT_TRACK                        Γöé
  879. Γöé                        ΓöéFORMAT_PROGRESS                     Γöé
  880. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  881. ΓöéUNIT_STATUS             Γöé                                    Γöé
  882. Γöé                        ΓöéGET_UNIT_STATUS                     Γöé
  883. Γöé                        ΓöéCHANGELINE_STATE                    Γöé
  884. Γöé                        ΓöéGET_MEDIA_SENSE                     Γöé
  885. Γöé                        ΓöéGET_LOCK_STATUS                     Γöé
  886. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  887. ΓöéDEVICE_CONTROL          Γöé                                    Γöé
  888. Γöé                        ΓöéABORT                               Γöé
  889. Γöé                        ΓöéRESET                               Γöé
  890. Γöé                        ΓöéSUSPEND                             Γöé
  891. Γöé                        ΓöéRESUME                              Γöé
  892. Γöé                        ΓöéLOCK_MEDIA                          Γöé
  893. Γöé                        ΓöéUNLOCK_MEDIA                        Γöé
  894. Γöé                        ΓöéEJECT_MEDIA                         Γöé
  895. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  896. ΓöéADAPTER_PASSTHRU        Γöé                                    Γöé
  897. Γöé                        ΓöéEXECUTE_SCB                         Γöé
  898. Γöé                        ΓöéEXECUTE_CDB                         Γöé
  899. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  900.  
  901. DevHlp services introduced with the OS/2 2.0 operating system to support this 
  902. strategy include: 
  903.  
  904.    o  RegisterDeviceClass 
  905.    o  GetDOSVar 
  906.  
  907.  
  908. ΓòÉΓòÉΓòÉ 6.2. IORB Control Blocks ΓòÉΓòÉΓòÉ
  909.  
  910. All direct call command control blocks are defined in the IBM-supplied IORB.H 
  911. and IORB.INC Include files.  (See I/O Request Block - C Definitions.) The 
  912. following sections, which describe the commands and their associated control 
  913. blocks, are written from both C and assembler programmers' points of view, with 
  914. references to the actual Include files and field names. 
  915.  
  916.  
  917. ΓòÉΓòÉΓòÉ 6.2.1. IORB General Format ΓòÉΓòÉΓòÉ
  918.  
  919. The IORB is the main control block for all direct call commands. To accommodate 
  920. varying command-specific data, there are eight types of IORBs, one per 
  921. CommandCode, as shown in the following table. 
  922.  
  923. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  924. ΓöéIORB Type                     ΓöéCommandCode                   Γöé
  925. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  926. ΓöéIORB_CONFIGURATION            ΓöéIOCC_CONFIGURATION            Γöé
  927. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  928. ΓöéIORB_UNIT_CONTROL             ΓöéIOCC_UNIT_CONTROL             Γöé
  929. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  930. ΓöéIORB_GEOMETRY                 ΓöéIOCC_GEOMETRY                 Γöé
  931. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  932. ΓöéIORB_EXECUTE_IO               ΓöéIOCC_EXECUTE_IO               Γöé
  933. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  934. ΓöéIORB_FORMAT                   ΓöéIOCC_FORMAT                   Γöé
  935. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  936. ΓöéIORB_UNIT_STATUS              ΓöéIOCC_UNIT_STATUS              Γöé
  937. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  938. ΓöéIORB_DEVICE_CONTROL           ΓöéIOCC_DEVICE_CONTROL           Γöé
  939. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  940. ΓöéIORB_ADAPTER_PASSTHRU         ΓöéIOCC_ADAPTER_PASSTHRU         Γöé
  941. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  942.  
  943. Each IORB consists of a common I/O Request Block Header (IORBH data structure), 
  944. followed by unique command-specific data, as shown in the following table. 
  945.  
  946. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  947. ΓöéField Name            ΓöéC Type    ΓöéLength   ΓöéDescription        Γöé
  948. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  949. ΓöéLength                ΓöéUSHORT    ΓöéDW       ΓöéLength of IORB     Γöé
  950. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  951. ΓöéUnitHandle            ΓöéUSHORT    ΓöéDW       ΓöéUnit handle        Γöé
  952. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  953. ΓöéCommandCode           ΓöéUSHORT    ΓöéDW       ΓöéCommand code       Γöé
  954. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  955. ΓöéCommandModifier       ΓöéUSHORT    ΓöéDW       ΓöéCommand modifier   Γöé
  956. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  957. ΓöéRequestControl        ΓöéUSHORT    ΓöéDW       ΓöéFlags              Γöé
  958. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  959. ΓöéStatus                ΓöéUSHORT    ΓöéDW       ΓöéStatus             Γöé
  960. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  961. ΓöéErrorCode             ΓöéUSHORT    ΓöéDW       ΓöéError code         Γöé
  962. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  963. ΓöéTimeout               ΓöéULONG     ΓöéDD       ΓöéCompletion timeout Γöé
  964. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  965. ΓöéStatusBlockLen        ΓöéUSHORT    ΓöéDW       ΓöéLength of status   Γöé
  966. Γöé                      Γöé          Γöé         Γöéinfo               Γöé
  967. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  968. ΓöépStatusBlock          ΓöéNPBYTE    ΓöéDW       ΓöéPointer to status  Γöé
  969. Γöé                      Γöé          Γöé         Γöéinfo               Γöé
  970. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  971. ΓöéReserved_1            ΓöéUSHORT    ΓöéDW       ΓöéReserved           Γöé
  972. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  973. ΓöépNxtIORB              ΓöéPIORB     ΓöéDD       ΓöéPointer to next    Γöé
  974. Γöé                      Γöé          Γöé         ΓöéIORB               Γöé
  975. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  976. ΓöéNotifyAddress         Γöé(*PFN)( ) ΓöéDD       ΓöéNotification       Γöé
  977. Γöé                      Γöé          Γöé         Γöéaddress            Γöé
  978. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  979. ΓöéDMWorkSpace[20]       ΓöéUCHAR     ΓöéDB(20)   ΓöéReserved           Γöé
  980. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  981. ΓöéADDWorkSpace[16]      ΓöéUCHAR     ΓöéDB(16)   Γöéadapter device     Γöé
  982. Γöé                      Γöé          Γöé         Γöédriver work area   Γöé
  983. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  984.  
  985. On entry to the driver: 
  986.  
  987. Length 
  988. is set to the total length of the IORB (IORBH plus Command-Specific Data) in 
  989. bytes. 
  990.  
  991. UnitHandle 
  992. identifies the adapter device driver's unit for which the request is intended. 
  993. The adapter device driver must assign a unique UnitHandle in the DEVICETABLE 
  994. UNITINFO structure for each of the units it manages.  Refer to the 
  995. IOCC_CONFIGURATION CommandCode section for additional information. 
  996.  
  997. CommandCode/CommandModifier 
  998. contains the direct call commands. These commands are grouped by CommandCode as 
  999. shown in the following table. The CommandCode field defines the IORB; the 
  1000. CommandModifier field selects the actual operation within a specified 
  1001. CommandCode. For details on each of the commands, refer to their corresponding 
  1002. CommandCode sections. 
  1003.  
  1004. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  1005. ΓöéCommandCode             ΓöéCommandModifier                     Γöé
  1006. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1007. ΓöéIOCC_CONFIGURATION      Γöé                                    Γöé
  1008. Γöé                        ΓöéIOCM_GET_DEVICE_TABLE               Γöé
  1009. Γöé                        ΓöéIOCM_COMPLETE_INIT                  Γöé
  1010. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1011. ΓöéIOCC_UNIT_CONTROL       Γöé                                    Γöé
  1012. Γöé                        ΓöéIOCM_ALLOCATE_UNIT                  Γöé
  1013. Γöé                        ΓöéIOCM_DEALLOCATE_UNIT                Γöé
  1014. Γöé                        ΓöéIOCM_CHANGE_UNITINFO                Γöé
  1015. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1016. ΓöéIOCC_GEOMETRY           Γöé                                    Γöé
  1017. Γöé                        ΓöéIOCM_GET_MEDIA_GEOMETRY             Γöé
  1018. Γöé                        ΓöéIOCM_SET_MEDIA_GEOMETRY             Γöé
  1019. Γöé                        ΓöéIOCM_GET_DEVICE_GEOMETRY            Γöé
  1020. Γöé                        ΓöéIOCM_SET_LOGICAL_GEOMETRY           Γöé
  1021. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1022. ΓöéIOCC_EXECUTE_IO         Γöé                                    Γöé
  1023. Γöé                        ΓöéIOCM_READ                           Γöé
  1024. Γöé                        ΓöéIOCM_READ_VERIFY                    Γöé
  1025. Γöé                        ΓöéIOCM_READ_PREFETCH                  Γöé
  1026. Γöé                        ΓöéIOCM_WRITE                          Γöé
  1027. Γöé                        ΓöéIOCM_WRITE_VERIFY                   Γöé
  1028. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1029. ΓöéIOCC_FORMAT             Γöé                                    Γöé
  1030. Γöé                        ΓöéIOCM_FORMAT_MEDIA                   Γöé
  1031. Γöé                        ΓöéIOCM_FORMAT_TRACK                   Γöé
  1032. Γöé                        ΓöéIOCM_FORMAT_PROGRESS                Γöé
  1033. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1034. ΓöéIOCC_UNIT_STATUS        Γöé                                    Γöé
  1035. Γöé                        ΓöéIOCM_GET_UNIT_STATUS                Γöé
  1036. Γöé                        ΓöéIOCM_GET_CHANGELINE_STATE           Γöé
  1037. Γöé                        ΓöéIOCM_GET_MEDIA_SENSE                Γöé
  1038. Γöé                        ΓöéIOCM_GET_LOCK_SENSE                 Γöé
  1039. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1040. ΓöéIOCC_DEVICE_CONTROL     Γöé                                    Γöé
  1041. Γöé                        ΓöéIOCM_ABORT                          Γöé
  1042. Γöé                        ΓöéIOCM_RESET                          Γöé
  1043. Γöé                        ΓöéIOCM_SUSPEND                        Γöé
  1044. Γöé                        ΓöéIOCM_RESUME                         Γöé
  1045. Γöé                        ΓöéIOCM_LOCK_MEDIA                     Γöé
  1046. Γöé                        ΓöéIOCM_UNLOCK_MEDIA                   Γöé
  1047. Γöé                        ΓöéIOCM_EJECT_MEDIA                    Γöé
  1048. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1049. ΓöéIOCC_ADAPTER_PASSTHRU   Γöé                                    Γöé
  1050. Γöé                        ΓöéIOCM_EXECUTE_SCB                    Γöé
  1051. Γöé                        ΓöéIOCM_EXECUTE_CDB                    Γöé
  1052. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  1053.  
  1054. RequestControl 
  1055. contains flags which control the processing of the IORB, as shown in the 
  1056. following table. 
  1057.  
  1058. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  1059. ΓöéFlag                    ΓöéDescription                         Γöé
  1060. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1061. ΓöéIORB_ASYNC_POST         ΓöéCommand-completion protocol.  This  Γöé
  1062. Γöé                        ΓöéADD will always return immediately, Γöé
  1063. Γöé                        Γöéas this is an asynchronous protocol Γöé
  1064. Γöé                        Γöérequiring ASYNC_NOTIFY to be set. IfΓöé
  1065. Γöé                        Γöéset, this flag indicates that the   Γöé
  1066. Γöé                        ΓöéNotifyAddress field is valid and    Γöé
  1067. Γöé                        Γöéthat the adapter device driver      Γöé
  1068. Γöé                        Γöéshould call this routine when the   Γöé
  1069. Γöé                        ΓöéIORB request is completed.          Γöé
  1070. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1071. ΓöéIORB_CHAIN              ΓöéIORB chaining.  If set, this flag   Γöé
  1072. Γöé                        Γöéindicates that the pNxtIORB field isΓöé
  1073. Γöé                        Γöévalid and that there is a chained   Γöé
  1074. Γöé                        ΓöéIORB command to service.            Γöé
  1075. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1076. ΓöéIORB_CHS_ADDRESSING     ΓöéI/O addressing format.  If set, thisΓöé
  1077. Γöé                        Γöéflag indicates that the command's   Γöé
  1078. Γöé                        ΓöéRBA field is in the format defined  Γöé
  1079. Γöé                        Γöéby the CHS_ADDR structure.  This bitΓöé
  1080. Γöé                        Γöéshould be set only for diskette     Γöé
  1081. Γöé                        Γöécontrollers.                        Γöé
  1082. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1083. ΓöéIORB_REQ_STATUSBLOCK    ΓöéRequest for status information.  If Γöé
  1084. Γöé                        Γöéset, this flag indicates that the   Γöé
  1085. Γöé                        ΓöéStatusBlockLen and pStatusBlock     Γöé
  1086. Γöé                        Γöéfields are valid and that the       Γöé
  1087. Γöé                        Γöéadapter device driver should return Γöé
  1088. Γöé                        Γöéthe command's associated status     Γöé
  1089. Γöé                        Γöéinformation.                        Γöé
  1090. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1091. ΓöéIORB_DISABLE_RETRY      ΓöéNo error retry.  If set, this flag  Γöé
  1092. Γöé                        Γöéindicates that the adapter device   Γöé
  1093. Γöé                        Γöédriver should not retry the request Γöé
  1094. Γöé                        Γöéif a processing error occurs.       Γöé
  1095. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  1096.  
  1097. For more information about chained IORBs (IORB_CHAIN), see Adapter Device 
  1098. Driver Interface Questions and Answers. 
  1099.  
  1100. Status 
  1101. equals 0 on entry.  Upon exit from the adapter device driver, Status contains 
  1102. flags to indicate the command's completion status. (See the following table.) 
  1103.  
  1104. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  1105. ΓöéFlag                    ΓöéDescription                         Γöé
  1106. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1107. ΓöéIORB_DONE               ΓöéProcessing complete.  If set, this  Γöé
  1108. Γöé                        Γöéflag indicates that the adapter     Γöé
  1109. Γöé                        Γöédevice driver has completed         Γöé
  1110. Γöé                        Γöéprocessing the request.             Γöé
  1111. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1112. ΓöéIORB_ERROR              ΓöéError encountered.  If set, this    Γöé
  1113. Γöé                        Γöéflag indicates that an error        Γöé
  1114. Γöé                        Γöéoccurred while processing the       Γöé
  1115. Γöé                        Γöérequest.  This flag should not be   Γöé
  1116. Γöé                        Γöéset if the error was successfully   Γöé
  1117. Γöé                        Γöérecovered by the adapter device     Γöé
  1118. Γöé                        Γöédriver.                             Γöé
  1119. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1120. ΓöéIORB_RECOV_ERROR        ΓöéRecoverable error.  If set, this    Γöé
  1121. Γöé                        Γöéflag indicates that, although an    Γöé
  1122. Γöé                        Γöéerror occurred, the adapter device  Γöé
  1123. Γöé                        Γöédriver successfully recovered       Γöé
  1124. Γöé                        Γöéthrough retries.                    Γöé
  1125. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1126. ΓöéIORB_STATUSBLOCK_AVAIL  ΓöéStatus information returned.  If    Γöé
  1127. Γöé                        Γöéset, this flag indicates that the   Γöé
  1128. Γöé                        Γöéadapter device driver has returned  Γöé
  1129. Γöé                        Γöéstatus information in the buffer    Γöé
  1130. Γöé                        Γöédefined by pStatusBlock.            Γöé
  1131. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  1132.  
  1133. ErrorCode 
  1134. equals 0, on entry.  On exit from the driver, it contains the command's 
  1135. completion error code.  This field is valid only if the IORB_ERROR flag in the 
  1136. Status field is set.  The error codes are summarized in Error Handling. 
  1137.  
  1138. Timeout 
  1139. contains the maximum number of seconds the driver will permit for command 
  1140. completion before timing out.  If this field is set to 0, the timeout value 
  1141. assigned is the default set by the driver If this field is set to -1, the 
  1142. timeout value assigned is infinite.  The timeout period is measured from the 
  1143. last valid contact (interrupt) with the target device.  Therefore, if the 
  1144. device interrupts periodically within the timeout interval, the interval is 
  1145. reset after each interrupt. 
  1146.  
  1147. StatusBlockLen 
  1148. contains the size of the block of storage, in bytes, for the driver to return 
  1149. status information (pStatusBlock).  This field is valid only if the 
  1150. IORB_REQ_STATUSBLOCK flag is set in the RequestControl field. 
  1151.  
  1152. pStatusBlock 
  1153. contains a near pointer to a block of storage (length = StatusBlockLength), 
  1154. allocated by the caller, for the driver to return status information.  On exit 
  1155. from the driver, the storage area contains status information.  This field is 
  1156. valid only if the IORB_REQ_STATUSBLOCK flag is set in the RequestControl field. 
  1157. The format of information in the status block depends on the class of adapters 
  1158. the driver supports.  For SCSI devices, see IORB Status Block for more 
  1159. information. 
  1160.  
  1161. Note:  The pointer to the status block is a 16-bit near pointer.  The status 
  1162.        block must reside in the same segment as the IORB. 
  1163.  
  1164.  Reserved_1 
  1165.  is reserved for use by the device manager and must not be modified by the 
  1166.  adapter device driver. 
  1167.  
  1168.  pNxtIORB 
  1169.  contains a far pointer to the next IORB for chained commands.  This field is 
  1170.  valid only if the IORB_CHAIN flag is set in the RequestControl field. 
  1171.  
  1172.  NotifyAddress 
  1173.  contains a far pointer to the notification routine to be called when the 
  1174.  request has completed successfully or aborted due to error conditions.  This 
  1175.  field is valid only if the IORB_ASYNC_POST flag is set in the RequestControl 
  1176.  field.  The notification routine should be called with a far pointer to the 
  1177.  command's IORB. 
  1178.  
  1179.  C Language Syntax 
  1180.  
  1181.   ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  1182.  
  1183.   (FAR *piorb->NotifyAddress) (piorb);
  1184.  
  1185.   ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  1186.  
  1187.  Assembly Language Syntax 
  1188.  
  1189.   ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  1190.  
  1191.   ; ** ES:BX = IORB Pointer
  1192.   PUSH   es                                      ; IORB segment
  1193.   PUSH   bx                                      ; IORB offset
  1194.   CALL   dword ptr es:[bx+IOH_NotifyAddress]     ; Call notify routine
  1195.   add    sp, 4                                   ; Cleanup stack
  1196.  
  1197.   ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  1198.  
  1199.  Note:  The Notify routine will preserve only the DS, ES, SI, and DI registers. 
  1200.  
  1201.  DMWorkSpace[20] 
  1202.  defines a workspace, for use by the device manager, that must not be modified 
  1203.  by the device driver. 
  1204.  
  1205.  ADDWorkSpace[16] 
  1206.  defines a workspace for the adapter device driver that is ignored by the 
  1207.  device manager. 
  1208.  
  1209.  Command-Specific Data 
  1210.  contains the command-unique parameters.  The commands and actual formats of 
  1211.  the corresponding IORBs are described in the following sections. 
  1212.  
  1213.  
  1214. ΓòÉΓòÉΓòÉ 6.3. IORB CommandCode Format ΓòÉΓòÉΓòÉ
  1215.  
  1216. The IORB CommandCode format is defined in the following section. 
  1217.  
  1218.  
  1219. ΓòÉΓòÉΓòÉ 6.3.1. IOCC Configuration ΓòÉΓòÉΓòÉ
  1220.  
  1221. The IOCC_CONFIGURATION CommandCode consists of all the CommandModifiers 
  1222. responsible for returning information about the characteristics of the devices 
  1223. supported by the driver, as follows: 
  1224.  
  1225. IOCM_COMPLETE_INIT 
  1226.  
  1227. Indicates that the driver can complete its initialization phase. 
  1228.  
  1229. In the interval between driver initialization and receipt of this IORB, the 
  1230. device driver must not disable its INT 13h BIOS support because this support is 
  1231. needed to load other components of the operating system. 
  1232.  
  1233. IOCM_GET_DEVICE_TABLE 
  1234.  
  1235. Returns the DEVICETABLE structure in the buffer supplied by the caller. 
  1236. DEVICETABLE contains detailed information on each adapter and the associated 
  1237. units supported by the adapter device driver. 
  1238.  
  1239. Remarks 
  1240.  
  1241.  Support:            Mandatory 
  1242.  Called By:          OS2DASD.DMD, other device manager, or filter device driver 
  1243.  Context of Call:    TASK 
  1244.  
  1245.  Note:  Any adapter device driver that registers by way of the 
  1246.         RegisterDeviceClass DevHlp must process this IORB and return a valid 
  1247.         DEVICETABLE, even if the driver supports 0 adapters. 
  1248.  
  1249.  Format of IORB 
  1250.  
  1251.    o  IORB Type 
  1252.  
  1253.         -  IORB_CONFIGURATION 
  1254.  
  1255.    o  IORBH Fields 
  1256.  
  1257.         -  CommandCode 
  1258.  
  1259.              o  IOCC_CONFIGURATION 
  1260.  
  1261.         -  CommandModifiers 
  1262.  
  1263.              o  IOCM_COMPLETE_INIT 
  1264.              o  IOCM_GET_DEVICE_TABLE 
  1265.  
  1266.         -  Valid RequestControl Flags 
  1267.  
  1268.              o  IORB_ASYNC_POST 
  1269.  
  1270.  IORB_CONFIGURATION Description 
  1271.  
  1272.  This section defines the IORB_CONFIGURATION control block and the following 
  1273.  associated structures: 
  1274.  
  1275.  DEVICETABLE       Table of supported devices 
  1276.  ADAPTERINFO       Adapter characteristics 
  1277.  UNITINFO          Unit characteristics 
  1278.  
  1279.  
  1280. ΓòÉΓòÉΓòÉ 6.3.2. DEVICETABLE Structure Overview ΓòÉΓòÉΓòÉ
  1281.  
  1282. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  1283. Γöé pDeviceTable Γö£ΓöÇΓöÇΓöÇDEVICETABLE
  1284. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  1285.  
  1286.            ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  1287.        ΓöîΓöÇΓöÇΓöÇΓöñ   pAdapter[0]   Γöé
  1288.        Γöé   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1289.        ΓöéΓöîΓöÇΓöÇΓöñ   pAdapter[1]   Γöé
  1290.        ΓöéΓöé  Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1291.        ΓöéΓöé  Γöé     . . .       Γöé
  1292.        ΓöéΓöé  Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1293.        ΓöéΓöéΓöîΓöÇΓöñ   pAdapter[N]   Γöé
  1294.        ΓöéΓöéΓöé Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ    ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  1295.        ΓööΓö╝Γö╝Γöé  ADAPTERINFO 0  Γö£ΓöÇΓöÇΓöÇΓöÇΓöñ ADAPTER 0 Γö£ΓöÉ ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  1296.         ΓöéΓöé Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ    ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿΓö£ΓöÇΓöñ UNIT 0 Γöé
  1297.         ΓöéΓöé Γöé   UNITINFO[0]   Γöé                 Γöé ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  1298.         ΓöéΓöé Γöé   UNITINFO[1]   Γöé                 Γöé   . . .
  1299.         ΓöéΓöé Γöé     . . .       Γöé                 Γöé ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  1300.         ΓöéΓöé Γöé   UNITINFO[N]   Γöé                 ΓööΓöÇΓöñ UNIT N Γöé
  1301.         ΓöéΓöé Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ                   ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  1302.         ΓöéΓöé Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1303.         ΓöéΓöé Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ    ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  1304.         ΓööΓö╝Γöé  ADAPTERINFO 1  Γö£ΓöÇΓöÇΓöÇΓöÇΓöñ ADAPTER 1 Γö£ΓöÉ ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  1305.          Γöé Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ    ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿΓö£ΓöÇΓöñ UNIT 0 Γöé
  1306.          Γöé Γöé   UNITINFO[0]   Γöé                 Γöé ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  1307.          Γöé Γöé   UNITINFO[1]   Γöé                 Γöé   . . .
  1308.          Γöé Γöé     . . .       Γöé                 Γöé ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  1309.          Γöé Γöé   UNITINFO[N]   Γöé                 ΓööΓöÇΓöñ UNIT N Γöé
  1310.          Γöé Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ                   ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  1311.          Γöé Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1312.          Γöé Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ    ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  1313.          ΓööΓöé  ADAPTERINFO N  Γö£ΓöÇΓöÇΓöÇΓöÇΓöñ ADAPTER N Γö£ΓöÉ ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  1314.            Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ    ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿΓö£ΓöÇΓöñ UNIT 0 Γöé
  1315.            Γöé   UNITINFO[0]   Γöé                 Γöé ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  1316.            Γöé   UNITINFO[1]   Γöé                 Γöé   . . .
  1317.            Γöé     . . .       Γöé                 Γöé ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  1318.            Γöé   UNITINFO[N]   Γöé                 ΓööΓöÇΓöñ UNIT N Γöé
  1319.            ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ                   ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  1320.  
  1321. IORB_CONFIGURATION 
  1322.  
  1323. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  1324. ΓöéField Name       ΓöéC Type           ΓöéLength   ΓöéDescription      Γöé
  1325. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1326. Γöéiorbh            ΓöéIORBH            ΓöéDB(68)   ΓöéIORB header      Γöé
  1327. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1328. ΓöépDeviceTable     ΓöéFAR *PDEVICETABLEΓöéDD       ΓöéDevice table     Γöé
  1329. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1330. ΓöéDeviceTableLen   ΓöéUSHORT           ΓöéDW       ΓöéLength of table  Γöé
  1331. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  1332.  
  1333. On entry to the driver: 
  1334.  
  1335. iorbh 
  1336. See IORB General Format. 
  1337.  
  1338. pDeviceTable 
  1339. contains a far pointer to a block of storage (length = DeviceTableLen), 
  1340. allocated by the caller, for the driver to return the DEVICETABLE. 
  1341.  
  1342. DeviceTableLen 
  1343. contains the length of the block of storage, in bytes, for the driver to return 
  1344. the DEVICETABLE (pDeviceTable). 
  1345.  
  1346. DEVICETABLE 
  1347.  
  1348. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  1349. ΓöéField Name       ΓöéC Type           ΓöéLength   ΓöéDescription      Γöé
  1350. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1351. ΓöéADDLevelMajor    ΓöéUCHAR            ΓöéDB       ΓöéADD major level  Γöé
  1352. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1353. ΓöéADDLevelMinor    ΓöéUCHAR            ΓöéDB       ΓöéADD minor level  Γöé
  1354. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1355. ΓöéADDHandle        ΓöéUSHORT           ΓöéDW       ΓöéADD index        Γöé
  1356. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1357. ΓöéTotalAdapters    ΓöéUSHORT           ΓöéDW       ΓöéNumber of        Γöé
  1358. Γöé                 Γöé                 Γöé         Γöéadapters         Γöé
  1359. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1360. ΓöépAdapter[N]      ΓöéNPADAPTERINFO    ΓöéDW(N)    ΓöéAdapterInfo      Γöé
  1361. Γöé                 Γöé                 Γöé         Γöépointers         Γöé
  1362. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  1363.  
  1364. On exit from the driver: 
  1365.  
  1366. ADDLevelMajor/ADDLevelMinor 
  1367. defines the level of support the adapter device driver is written to. A driver 
  1368. written to this specification (IBM  0S/2 2.0 Support Level), should set the 
  1369. fields as follows: 
  1370.  
  1371. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  1372. ΓöéField Name              ΓöéValue                               Γöé
  1373. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1374. ΓöéADD_Level_Major         ΓöéADD_LEVEL_MAJOR                     Γöé
  1375. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1376. ΓöéADD_Level_Minor         ΓöéADD_LEVEL_MINOR                     Γöé
  1377. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  1378.  
  1379. ADDHandle 
  1380. contains the adapter device driver's index returned by the RegisterDeviceClass 
  1381. DevHlp. 
  1382.  
  1383. TotalAdapters 
  1384. defines the number of adapters the device driver supports. 
  1385.  
  1386. pAdapter[N] 
  1387. contains an array of near ADAPTERINFO pointers.  The number of elements in the 
  1388. array is determined by the TotalAdapters field. 
  1389.  
  1390. AdapterInfo 
  1391.  
  1392. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  1393. ΓöéField Name          ΓöéC Type        ΓöéLength   ΓöéDescription      Γöé
  1394. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1395. ΓöéAdapterName[17]     ΓöéUCHAR         ΓöéDB(17)   ΓöéASCIIZ name      Γöé
  1396. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1397. ΓöéReserved            ΓöéUCHAR         ΓöéDB       ΓöéReserved.  Must  Γöé
  1398. Γöé                    Γöé              Γöé         Γöébe 0.            Γöé
  1399. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1400. ΓöéAdapterUnits        ΓöéUSHORT        ΓöéDW       ΓöéNumber of units  Γöé
  1401. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1402. ΓöéAdapterDevBus       ΓöéUSHORT        ΓöéDW       ΓöéDevice bus types Γöé
  1403. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1404. ΓöéAdapterIOAccess     ΓöéUCHAR         ΓöéDB       ΓöéHost I/O type    Γöé
  1405. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1406. ΓöéAdapterHostBus      ΓöéUCHAR         ΓöéDB       ΓöéHost bus type    Γöé
  1407. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1408. ΓöéAdapterSCSITargetID ΓöéUCHAR         ΓöéDB       ΓöéTarget ID        Γöé
  1409. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1410. ΓöéAdapterSCSILUN      ΓöéUCHAR         ΓöéDB       ΓöéLogical unit     Γöé
  1411. Γöé                    Γöé              Γöé         Γöénumber           Γöé
  1412. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1413. ΓöéAdapterFlags        ΓöéUSHORT        ΓöéDW       ΓöéFlags            Γöé
  1414. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1415. ΓöéMaxHWSGList         ΓöéUSHORT        ΓöéDW       ΓöéMax HW s/g       Γöé
  1416. Γöé                    Γöé              Γöé         Γöéelements         Γöé
  1417. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1418. ΓöéMaxCDBTransferLengthΓöéULONG         ΓöéDD       ΓöéMax CDB data     Γöé
  1419. Γöé                    Γöé              Γöé         Γöétransfer length  Γöé
  1420. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1421. ΓöéUnitInfo[N]         ΓöéUNITINFO      ΓöéDD(N)    ΓöéUnit information Γöé
  1422. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  1423.  
  1424. On exit from the driver: 
  1425.  
  1426. AdapterName[17] 
  1427. contains the ASCIIZ name string of the adapter.  This name is used by the 
  1428. caller for diagnostic purposes. 
  1429.  
  1430. Reserved 
  1431. contains a 0.  This is a 16-bit alignment byte. 
  1432.  
  1433. AdapterUnits 
  1434. contains the number of units supported by this adapter. 
  1435.  
  1436. AdapterDevBus 
  1437. defines the adapter-to-device bus protocol used, as shown in the following 
  1438. table. 
  1439.  
  1440. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  1441. ΓöéProtocol                ΓöéDescription                         Γöé
  1442. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1443. ΓöéAI_DEVBUS_ST506         ΓöéDASD - ST506 CAM-I                  Γöé
  1444. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1445. ΓöéAI_DEVBUS_ST506_II      ΓöéDASD - ST506 CAM-II                 Γöé
  1446. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1447. ΓöéAI_DEVBUS_ESDI          ΓöéDASD -ESDI                          Γöé
  1448. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1449. ΓöéAI_DEVBUS_FLOPPY        ΓöéDASD - Diskette                     Γöé
  1450. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1451. ΓöéAI_DEVBUS_SCSI_1        ΓöéSCSI - Version-I                    Γöé
  1452. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1453. ΓöéAI_DEVBUS_SCSI_2        ΓöéSCSI -Version-II                    Γöé
  1454. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1455. ΓöéAI_DEVBUS_SCSI_3        ΓöéSCSI - Version-III                  Γöé
  1456. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1457. ΓöéAI_DEVBUS_OTHER         ΓöéProtocol not listed.                Γöé
  1458. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1459. ΓöéAI_DEVBUS_NONSCSI_CDROM Γöénon-SCSI CD-ROM interface           Γöé
  1460. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  1461.  
  1462. One protocol should be elected.  The AdapterDevBus protocol values can be OR'd 
  1463. with one or more modifier bits as listed in the following table. 
  1464.  
  1465. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  1466. ΓöéModifier                ΓöéDescription                         Γöé
  1467. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1468. ΓöéAI_DEVBUS_FAST_SCSI     ΓöéFast SCSI bus timings               Γöé
  1469. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1470. ΓöéAI_DEVBUS_8BIT          Γöé8-bit bus width                     Γöé
  1471. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1472. ΓöéAI_DEVBUS_16BIT         Γöé16-bit bus width                    Γöé
  1473. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1474. ΓöéAI_DEVBUS_32BIT         Γöé32-bit bus width                    Γöé
  1475. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  1476.  
  1477. AdapterIOAccess 
  1478. defines the adapter-to-host I/O data transfer capabilities, as shown in the 
  1479. following table. 
  1480.  
  1481. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  1482. ΓöéFlag                    ΓöéDescription                         Γöé
  1483. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1484. ΓöéAI_IOACCESS_BUS_MASTER  Γöé1st-party DMA adapter               Γöé
  1485. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1486. ΓöéAI_IOACCESS_PIO         ΓöéProgrammed INs/OUTs                 Γöé
  1487. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1488. ΓöéAI_IOACCESS_DMA_SLAVE   Γöé2nd-party DMA adapter               Γöé
  1489. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1490. ΓöéAI_IOACCESS_MEMORY_MAP  ΓöéMemory-mapped I/O                   Γöé
  1491. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1492. ΓöéAI_IOACCESS_OTHER       ΓöéI/O access not listed.              Γöé
  1493. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  1494.  
  1495. AdapterHostBus 
  1496. defines the adapter-to-host bus type used, as shown in the following table. 
  1497.  
  1498. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  1499. ΓöéType                    ΓöéDevice Connection                   Γöé
  1500. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1501. ΓöéAI_HOSTBUS_ISA          ΓöéISA                                 Γöé
  1502. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1503. ΓöéAI_HOSTBUS_EISA         ΓöéExtended ISA                        Γöé
  1504. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1505. ΓöéAI_HOSTBUS_uCHNL        ΓöéMicro-channel                       Γöé
  1506. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1507. ΓöéAI_HOSTBUS_OTHER        ΓöéBus type not listed.                Γöé
  1508. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1509. ΓöéAI_HOSTBUS_UNKNOWN      ΓöéBus type unknown.                   Γöé
  1510. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  1511.  
  1512. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  1513. ΓöéWidth                   ΓöéDescription                         Γöé
  1514. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1515. ΓöéAI_HOSTBUS_8BIT         Γöé8-bit bus                           Γöé
  1516. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1517. ΓöéAI_HOSTBUS_16BIT        Γöé16-bit bus                          Γöé
  1518. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1519. ΓöéAI_HOSTBUS_32BIT        Γöé32-bit bus                          Γöé
  1520. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1521. ΓöéAI_HOSTBUS_64BIT        Γöé64-bit bus                          Γöé
  1522. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1523. ΓöéAI_HOSTBUS_UNKNOWN      ΓöéBus width unknown.                  Γöé
  1524. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  1525.  
  1526. Note:  One bus type should be set with one bus width OR'd in. 
  1527.  
  1528.  AdapterSCSITargetID 
  1529.  contains the target ID for the SCSI adapter.  For non-SCSI devices, this field 
  1530.  should be set to 0. 
  1531.  
  1532.  AdapterSCSILUN 
  1533.  contains the logical unit number for the SCSI adapter. For non-SCSI devices, 
  1534.  this field should be set to 0. 
  1535.  
  1536.  AdapterFlags 
  1537.  defines the adapter's characteristics, as shown in the following table. 
  1538.  
  1539.   ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  1540.   ΓöéFlag                    ΓöéDescription                         Γöé
  1541.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1542.   ΓöéAF_16M                  Γöé>16M addresses supported.  If set,  Γöé
  1543.   Γöé                        Γöéthis flag indicates that the adapterΓöé
  1544.   Γöé                        Γöésupports >16M addresses.            Γöé
  1545.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1546.   ΓöéAF_IBM_SCB              ΓöéIBM SCB support.  If set, this flag Γöé
  1547.   Γöé                        Γöéindicates that the adapter supports Γöé
  1548.   Γöé                        ΓöéIBM SCB-formatted                   Γöé
  1549.   Γöé                        ΓöéIOCC_ADAPTER_PASSTHRU requests.     Γöé
  1550.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1551.   ΓöéAF_HW_SCATGAT           ΓöéHardware scatter/gather.  If set,   Γöé
  1552.   Γöé                        Γöéthis flag indicates that hardware   Γöé
  1553.   Γöé                        Γöésupports scatter/gather.  If this   Γöé
  1554.   Γöé                        Γöéflag is not set, it indicates that  Γöé
  1555.   Γöé                        Γöéthe device driver is emulating the  Γöé
  1556.   Γöé                        Γöés/g function in software.           Γöé
  1557.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1558.   ΓöéAF_CHS_ADDRESSING       ΓöéI/O addressing.  If set, this flag  Γöé
  1559.   Γöé                        Γöéindicates that the adapter supports Γöé
  1560.   Γöé                        Γöécylinder/head/sector addressing.    Γöé
  1561.   Γöé                        ΓöéThis flag should be set only for    Γöé
  1562.   Γöé                        Γöédiskette controllers.               Γöé
  1563.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1564.   ΓöéAF_ASSOCIATED_DEVBUS    ΓöéMultiple bus adapter.  If set, this Γöé
  1565.   Γöé                        Γöéflag indicates that the adapter     Γöé
  1566.   Γöé                        Γöésupports more than one device bus.  Γöé
  1567.   Γöé                        ΓöéAn ADAPTERINFO and UNITINFO         Γöé
  1568.   Γöé                        Γöéstructure(s) should be created to   Γöé
  1569.   Γöé                        Γöédescribe each device bus. This flag Γöé
  1570.   Γöé                        Γöémust be set in each ADAPTERINFO     Γöé
  1571.   Γöé                        Γöéstructure for the adapter, except   Γöé
  1572.   Γöé                        Γöéthe first.                          Γöé
  1573.   ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  1574.  
  1575.  MaxHWSGList 
  1576.  contains the maximum number of elements supported in a single hardware 
  1577.  scatter/gather list.  This field should be set to 0 if the adapter hardware 
  1578.  supports an unlimited s/g list length. 
  1579.  
  1580.  Note:  This is not a limit on the number of s/g elements an adapter device 
  1581.         driver can receive in a scatter/gather list for an Execute_IO IORB. 
  1582.  
  1583.  See Adapter Device Driver Interface Questions and Answers for more 
  1584.  information. 
  1585.  
  1586.  MaxCDBTransferLength 
  1587.  contains the maximum number of bytes supported by this adapter on a CDB-data 
  1588.  transfer request. 
  1589.  
  1590.  This field is set in cases where a device driver needs to emulate s/g support 
  1591.  in software and requires a fixed-size buffer to do so.  This field should be 
  1592.  set to 0 if an driver does not need to emulate its s/g function using an 
  1593.  in-memory buffer. 
  1594.  
  1595.  See Adapter Device Driver Interface Questions and Answers for more 
  1596.  information. 
  1597.  
  1598.  UnitInfo[N] 
  1599.  contains an array of UNITINFO structures as shown in the following table. The 
  1600.  number of elements in the array is determined by the AdapterUnits field. 
  1601.  
  1602.  UNITINFO Structure 
  1603.  
  1604.   ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  1605.   ΓöéElement          ΓöéC Type    ΓöéLength   ΓöéDescription             Γöé
  1606.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1607.   ΓöéAdapterIndex     ΓöéUSHORT    ΓöéDW       ΓöéAssociated AdapterIndex Γöé
  1608.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1609.   ΓöéUnitIndex        ΓöéUSHORT    ΓöéDW       ΓöéUnit tag                Γöé
  1610.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1611.   ΓöéUnitFlags        ΓöéUSHORT    ΓöéDW       ΓöéUnit flags              Γöé
  1612.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1613.   ΓöéReserved         ΓöéUSHORT    ΓöéDW       ΓöéReserved. Must be 0.    Γöé
  1614.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1615.   ΓöéUnitHandle       ΓöéUSHORT    ΓöéDW       ΓöéAssigned by adapter     Γöé
  1616.   Γöé                 Γöé          Γöé         Γöédevice driver           Γöé
  1617.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1618.   ΓöéFilterADDHandle  ΓöéUSHORT    ΓöéDW       ΓöéFilter device driver    Γöé
  1619.   Γöé                 Γöé          Γöé         Γöéhandle                  Γöé
  1620.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1621.   ΓöéUnitType         ΓöéUSHORT    ΓöéDW       ΓöéUnit type               Γöé
  1622.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1623.   ΓöéQueuingCount     ΓöéUSHORT    ΓöéDW       ΓöéIORB queue length       Γöé
  1624.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1625.   ΓöéUnitSCSITargetID ΓöéUCHAR     ΓöéDB       ΓöéSCSI target ID          Γöé
  1626.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1627.   ΓöéUnitSCSILUN      ΓöéUCHAR     ΓöéDB       ΓöéSCSI logical unit numberΓöé
  1628.   ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  1629.  
  1630.  On exit from the driver: 
  1631.  
  1632.  AdapterIndex 
  1633.  contains the unit's corresponding adapter's index in the pAdapter[N] array. 
  1634.  
  1635.  UnitIndex 
  1636.  contains the unit's index in the UnitInfo[N] array. 
  1637.  
  1638.  UnitFlags 
  1639.  defines the unit's characteristics, as shown in the following table. 
  1640.  
  1641.   ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  1642.   ΓöéFlag                    ΓöéDescription                         Γöé
  1643.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1644.   ΓöéUF_REMOVABLE            ΓöéMedia can be removed.  If set, this Γöé
  1645.   Γöé                        Γöéflag indicates that the unit's mediaΓöé
  1646.   Γöé                        Γöéis removable.                       Γöé
  1647.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1648.   ΓöéUF_CHANGELINE           ΓöéChangeline supported.  If set, this Γöé
  1649.   Γöé                        Γöéflag indicates that the unit can    Γöé
  1650.   Γöé                        Γöédetect media removal.               Γöé
  1651.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1652.   ΓöéUF_PREFETCH             ΓöéRead Prefetch supported.  If set,   Γöé
  1653.   Γöé                        Γöéthis flag indicates the unit        Γöé
  1654.   Γöé                        Γöésupports read prefetch.             Γöé
  1655.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1656.   ΓöéUF_A_DRIVE              ΓöéManages drive A.  If set, this flag Γöé
  1657.   Γöé                        Γöéindicates that the unit manages     Γöé
  1658.   Γöé                        Γöédrive A.                            Γöé
  1659.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1660.   ΓöéUF_B_DRIVE              ΓöéManages drive B.  If set, this flag Γöé
  1661.   Γöé                        Γöéindicates that the unit manages     Γöé
  1662.   Γöé                        Γöédrive B.                            Γöé
  1663.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1664.   ΓöéUF_NODASD_SUPT          ΓöéSuppress DASD device manager.  If   Γöé
  1665.   Γöé                        Γöéset, this flag indicates that the   Γöé
  1666.   Γöé                        Γöédriver does not want this unit to beΓöé
  1667.   Γöé                        Γöémanaged by the OS2DASD.DMD device   Γöé
  1668.   Γöé                        Γöémanager.                            Γöé
  1669.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1670.   ΓöéUF_NOSCSI_SUPT          ΓöéSuppress SCSI device manager.  If   Γöé
  1671.   Γöé                        Γöéset, this flag indicates that the   Γöé
  1672.   Γöé                        Γöédriver does not want this unit to beΓöé
  1673.   Γöé                        Γöémanaged by the OS2SCSI.DMD device   Γöé
  1674.   Γöé                        Γöémanager.                            Γöé
  1675.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1676.   ΓöéUF_DEFECTIVE            ΓöéDevice is defective.  If set, this  Γöé
  1677.   Γöé                        Γöéflag indicates that the unit is not Γöé
  1678.   Γöé                        Γöéoperational.  Defective units are   Γöé
  1679.   Γöé                        Γöéignored by the DASD and SCSI device Γöé
  1680.   Γöé                        Γöémanagers.  However, the driver      Γöé
  1681.   Γöé                        Γöéshould accept allocation requests   Γöé
  1682.   Γöé                        Γöéfor the unit and pass commands to   Γöé
  1683.   Γöé                        Γöéthe unit for other device managers. Γöé
  1684.   Γöé                        ΓöéThe information returned by the     Γöé
  1685.   Γöé                        ΓöéIOCM_UNIT_STATUS command reflects   Γöé
  1686.   Γöé                        Γöéthis flag's current setting.        Γöé
  1687.   ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  1688.  
  1689.  Reserved 
  1690.  is reserved for future growth.  Must be set to 0 by the adapter device driver. 
  1691.  
  1692.  UnitHandle 
  1693.  defines the unit's handle.  This handle is a unique ID, assigned by either the 
  1694.  filter device driver or the adapter device driver. A unit is fully identified 
  1695.  by the UnitHandle field and its associated ADD's handle, defined by either the 
  1696.  FilterADDHandle or ADDHandle fields. 
  1697.  
  1698.  FilterADDHandle 
  1699.  contains the handle of the filter device driver.  If a filter device driver 
  1700.  does not exist, this field must be 0.  See Using Filter Device Drivers for 
  1701.  more information on filter device drivers. 
  1702.  
  1703.  UnitType 
  1704.  defines the unit's device type.  Unit types and their supported devices are 
  1705.  shown in the following table. 
  1706.  
  1707.   ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  1708.   ΓöéUnitType                      ΓöéDevices Supported             Γöé
  1709.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1710.   ΓöéUIB_TYPE_DISK                 ΓöéDirect access (DASD)          Γöé
  1711.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1712.   ΓöéUIB_TYPE_TAPE                 ΓöéTape                          Γöé
  1713.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1714.   ΓöéUIB_TYPE_PRINTER              ΓöéPrinter                       Γöé
  1715.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1716.   ΓöéUIB_TYPE_PROCESSOR            ΓöéProcessor                     Γöé
  1717.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1718.   ΓöéUIB_TYPE_WORM                 ΓöéWrite Once/Read Many          Γöé
  1719.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1720.   ΓöéUIB_TYPE_CDROM                ΓöéCD ROM                        Γöé
  1721.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1722.   ΓöéUIB_TYPE_SCANNER              ΓöéScanner                       Γöé
  1723.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1724.   ΓöéUIB_TYPE_OPTICAL_MEMORY       ΓöéOptical disk                  Γöé
  1725.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1726.   ΓöéUIB_TYPE_CHANGER              ΓöéChanger (example, jukebox)    Γöé
  1727.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1728.   ΓöéUIB_TYPE_COMM                 ΓöéCommunication                 Γöé
  1729.   ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  1730.  
  1731.  Note:  One unit type must be set. 
  1732.  
  1733.  QueuingCount 
  1734.  defines the recommended number of commands to queue for this unit. 
  1735.  
  1736.  Note:  Do not design drivers assuming a fixed length queue. 
  1737.  
  1738.  This field provides to the device manager the recommended queue length for 
  1739.  optimum performance. 
  1740.  
  1741.  UnitSCSITargetID 
  1742.  contains the target ID for SCSI devices.  For all other devices, this field 
  1743.  equals 0. 
  1744.  
  1745.  UnitSCSILUN 
  1746.  contains the logical unit number for SCSI devices.  For all other devices, 
  1747.  this field equals 0. 
  1748.  
  1749.  On exit, the driver sets the Status and ErrorCode fields of the IORBH to 
  1750.  reflect the results of the IOCC_CONFIGURATION request. 
  1751.  
  1752.  Return Codes 
  1753.  
  1754.  Following is a list of the IOCC_CONFIGURATION error codes: 
  1755.  
  1756.       IOERR_CMD_SYNTAX 
  1757.       IOERR_CMD_SW_RESOURCE. 
  1758.  
  1759.  For a detailed description of all the return codes, see Error Handling. 
  1760.  
  1761.  
  1762. ΓòÉΓòÉΓòÉ 6.3.3. IOCC_UNIT_CONTROL ΓòÉΓòÉΓòÉ
  1763.  
  1764. The IOCC_UNIT_CONTROL CommandCode consists of all the CommandModifiers 
  1765. responsible for controlling the ownership of a unit. The following table 
  1766. describes the CommandModifiers. 
  1767.  
  1768. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  1769. ΓöéCommandModifier         ΓöéDescription                         Γöé
  1770. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1771. ΓöéIOCM_ALLOCATE_UNIT      ΓöéAssigns ownership of the specified  Γöé
  1772. Γöé                        Γöéunit to the caller.  A unit must be Γöé
  1773. Γöé                        Γöéallocated prior to accepting any    Γöé
  1774. Γöé                        Γöéother direct call commands. Once    Γöé
  1775. Γöé                        Γöéallocated, a unit cannot be assignedΓöé
  1776. Γöé                        Γöéto another owner until that unit is Γöé
  1777. Γöé                        Γöédeallocated.  It is the             Γöé
  1778. Γöé                        Γöéresponsibility of the owner to      Γöé
  1779. Γöé                        Γöécoordinate sharing of a unit.       Γöé
  1780. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1781. ΓöéIOCM_DEALLOCATE_UNIT    ΓöéRemoves the caller's ownership of   Γöé
  1782. Γöé                        Γöéthe specified unit.  Once           Γöé
  1783. Γöé                        Γöédeallocated, a unit can be assigned Γöé
  1784. Γöé                        Γöéto another owner.                   Γöé
  1785. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1786. ΓöéIOCM_CHANGE_UNITINFO    ΓöéModifies the specified unit's       Γöé
  1787. Γöé                        ΓöéUNITINFO portion of the DEVICETABLE Γöé
  1788. Γöé                        Γöéstructure with the information      Γöé
  1789. Γöé                        Γöépassed by the caller.               Γöé
  1790. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  1791. Remarks 
  1792.  
  1793.  Support:            Mandatory 
  1794.  Called By:          OS2DASD.DMD, other device manager, or filter device driver 
  1795.  Context of Call:    TASK 
  1796.  
  1797.  Format of IORB 
  1798.  
  1799.    o  IORB Type 
  1800.  
  1801.         -  IORB_UNIT_CONTROL 
  1802.  
  1803.    o  IORBH Fields 
  1804.  
  1805.         -  CommandCode 
  1806.  
  1807.              o  IOCC_CONFIGURATION 
  1808.  
  1809.         -  CommandModifiers 
  1810.  
  1811.              o  IOCM_ALLOCATE_UNIT 
  1812.              o  IOCM_DEALLOCATE_UNIT 
  1813.              o  IOCM_CHANGE_UNITINFO 
  1814.  
  1815.         -  Valid RequestControl Flags 
  1816.  
  1817.              o  IORB_ASYNC_POST 
  1818.  
  1819.  IORB_UNIT_CONTROL Description 
  1820.  
  1821.  This section defines the IORB_UNIT_CONTROL control block. (See the table 
  1822.  below.) 
  1823.  
  1824.   ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  1825.   ΓöéField Name       ΓöéC Type           ΓöéLength   ΓöéDescription      Γöé
  1826.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1827.   Γöéiorbh            ΓöéIORBH            ΓöéDB(68)   ΓöéIORB header      Γöé
  1828.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1829.   ΓöéFlags            ΓöéUSHORT           ΓöéDW       ΓöéFlags            Γöé
  1830.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1831.   ΓöépUnitInfo        ΓöéPUNITINFO        ΓöéDD       ΓöéPointer to       Γöé
  1832.   Γöé                 Γöé                 Γöé         ΓöéUnitInfo         Γöé
  1833.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1834.   ΓöéUnitInfoLen      ΓöéUSHORT           ΓöéDW       ΓöéLength of        Γöé
  1835.   Γöé                 Γöé                 Γöé         ΓöéUnitInfo         Γöé
  1836.   ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  1837.  
  1838.  On entry to the driver: 
  1839.  
  1840.  iorbh 
  1841.  See IORB General Format. 
  1842.  
  1843.  Flags 
  1844.  contains a 0. 
  1845.  
  1846.  pUnitInfo 
  1847.  contains a far pointer to a buffer containing modified unit characteristics, 
  1848.  in the format defined by the UNITINFO structure.  The adapter device driver 
  1849.  uses this information to update the unit's UNITINFO structure in the 
  1850.  DEVICETABLE.  This field is valid only for the IOCM_CHANGE_UNITINFO 
  1851.  CommandModifier. 
  1852.  
  1853.  Note:  A device driver can access the UNITINFO structure provided by the 
  1854.         IOCM_CHANGE_UNITINFO IORB at any time.  The caller, therefore, must not 
  1855.         invalidate or release the passed UNITINFO structure on successful 
  1856.         completion of this IORB request. 
  1857.  
  1858.  UnitInfoLen 
  1859.  contains the length, in bytes, of the UNITINFO buffer (pUnitInfo) passed to 
  1860.  the driver.  This field is valid only for the IOCM_CHANGE_UNITINFO 
  1861.  CommandModifier. 
  1862.  
  1863.  On exit, the driver sets the Status and ErrorCode fields of the IORBH to 
  1864.  reflect the results of the IOCC_UNIT_CONTROL request. 
  1865.  
  1866.  Return Codes 
  1867.  
  1868.  Following is a list of the IOCC_UNIT_CONTROL error codes: 
  1869.  
  1870.       IOERR_CMD_SYNTAX 
  1871.       IOERR_CMD_SW_RESOURCE 
  1872.       IOERR_UNIT_ALLOCATED 
  1873.       IOERR_UNIT_NOT_ALLOCATED 
  1874.  
  1875.  For a detailed description of all the return codes, see Error Handling. 
  1876.  
  1877.  
  1878. ΓòÉΓòÉΓòÉ 6.3.4. IOCC_GEOMETRY ΓòÉΓòÉΓòÉ
  1879.  
  1880. The IOCC_GEOMETRY CommandCode consists of all the CommandModifiers responsible 
  1881. for setting and returning information about the capacity of a unit. 
  1882.  
  1883. The CommandModifiers are described in the following table: 
  1884.  
  1885. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  1886. ΓöéCommandModifier               ΓöéDescription                   Γöé
  1887. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1888. ΓöéIOCM_GET_MEDIA_GEOMETRY       ΓöéReturns the geometry of the   Γöé
  1889. Γöé                              Γöécurrent media in a drive.     Γöé
  1890. Γöé                              ΓöéFor non-removable media       Γöé
  1891. Γöé                              Γöédevices, the geometry returnedΓöé
  1892. Γöé                              Γöémust be identical to the      Γöé
  1893. Γöé                              Γöégeometry returned by          Γöé
  1894. Γöé                              ΓöéIOCM_GET_DEVICE_GEOMETRY.     Γöé
  1895. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1896. ΓöéIOCM_SET_MEDIA_GEOMETRY       ΓöéInforms the adapter device    Γöé
  1897. Γöé                              Γöédriver of the required media  Γöé
  1898. Γöé                              Γöégeometry in preparation for   Γöé
  1899. Γöé                              Γöéformatting.  This command is  Γöé
  1900. Γöé                              Γöémandatory only for standard   Γöé
  1901. Γöé                              Γöédiskette media.               Γöé
  1902. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1903. ΓöéIOCM_GET_DEVICE_GEOMETRY      ΓöéReturns the device geometry   Γöé
  1904. Γöé                              Γöécompatible with INT 13h BIOS  Γöé
  1905. Γöé                              Γöéfunction 08h.                 Γöé
  1906. Γöé                              ΓöéIf the INT 13h support for a  Γöé
  1907. Γöé                              Γöédevice provides translation,  Γöé
  1908. Γöé                              Γöéthe INT 13h geometry of the   Γöé
  1909. Γöé                              Γöédevice must be returned with  Γöé
  1910. Γöé                              Γöéthe BIOS translation performedΓöé
  1911. Γöé                              Γöéwithin the driver.  That is,  Γöé
  1912. Γöé                              Γöéthe driver must emulate any   Γöé
  1913. Γöé                              ΓöéINT 13h translation performed Γöé
  1914. Γöé                              Γöéby BIOS.                      Γöé
  1915. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1916. ΓöéIOCM_SET_LOGICAL_GEOMETRY     ΓöéIndicates that the geometry   Γöé
  1917. Γöé                              Γöérecorded in the file system   Γöé
  1918. Γöé                              Γöétables on the media does not  Γöé
  1919. Γöé                              Γöématch the physical media      Γöé
  1920. Γöé                              Γöégeometry reported by the      Γöé
  1921. Γöé                              Γöédevice driver.                Γöé
  1922. Γöé                              ΓöéThe driver should convert RBA Γöé
  1923. Γöé                              Γöéto CHS addresses according to Γöé
  1924. Γöé                              Γöéthe geometry passed in this   Γöé
  1925. Γöé                              ΓöéIORB, rather than using the   Γöé
  1926. Γöé                              Γöémedia geometry the driver is  Γöé
  1927. Γöé                              Γöéreporting.  The device driver Γöé
  1928. Γöé                              Γöéshould stop performing this   Γöé
  1929. Γöé                              Γöétranslation if a media change Γöé
  1930. Γöé                              Γöéindication is detected.       Γöé
  1931. Γöé                              ΓöéSupport of this command is    Γöé
  1932. Γöé                              Γöémandatory only for standard   Γöé
  1933. Γöé                              Γöédiskette media.               Γöé
  1934. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  1935.  
  1936. Remarks 
  1937.  
  1938.  Support:            Mandatory (See CommandModifiers for exceptions.) 
  1939.  Called By:          OS2DASD.DMD, other device manager, or filter device driver 
  1940.  Context of Call:    TASK, INTERRUPT 
  1941.  
  1942.  Format of IORB 
  1943.  
  1944.    o  IORB Type 
  1945.  
  1946.         -  IORB_GEOMETRY 
  1947.  
  1948.    o  IORBH Fields 
  1949.  
  1950.         -  CommandCode 
  1951.  
  1952.              o  IOCC_GEOMETRY 
  1953.  
  1954.         -  CommandModifiers 
  1955.  
  1956.              o  IOCM_GET_MEDIA_GEOMETRY 
  1957.              o  IOCM_SET_MEDIA_GEOMETRY 
  1958.              o  IOCM_GET_DEVICE_GEOMETRY 
  1959.              o  IOCM_SET_LOGICAL_GEOMETRY 
  1960.  
  1961.         -  Valid RequestControl Flags 
  1962.  
  1963.              o  IORB_ASYNC_POST 
  1964.              o  IORB_REQ_STATUSBLOCK 
  1965.              o  IORB_DISABLE_RETRY 
  1966.  
  1967.  IOCC_GEOMETRY Description 
  1968.  
  1969.  This section defines the IORB_GEOMETRY and GEOMETRY control blocks. (See the 
  1970.  table below.) 
  1971.  
  1972.   ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  1973.   ΓöéField Name       ΓöéC Type           ΓöéLength   ΓöéDescription      Γöé
  1974.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1975.   Γöéiorbh            ΓöéIORBH            ΓöéDB(68)   ΓöéIORB header      Γöé
  1976.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1977.   ΓöépGeometry        ΓöéPGEOMETRY        ΓöéDD       ΓöéPointer to       Γöé
  1978.   Γöé                 Γöé                 Γöé         ΓöéGEOMETRY         Γöé
  1979.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  1980.   ΓöéGeometryLen      ΓöéUSHORT           ΓöéDW       ΓöéLength of        Γöé
  1981.   Γöé                 Γöé                 Γöé         ΓöéGEOMETRY data    Γöé
  1982.   ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  1983.  
  1984.  On entry to the driver: 
  1985.  
  1986.  iorbh 
  1987.  See IORB General Format. 
  1988.  
  1989.  pGeometry 
  1990.  contains a far pointer to the block of storage (length = GeometryLen) 
  1991.  allocated by the caller for the GEOMETRY. 
  1992.  
  1993.  GeometryLen 
  1994.  contains the size of the block of storage, in bytes, for the GEOMETRY 
  1995.  structure (pGeometry). 
  1996.  
  1997.  GEOMETRY Description 
  1998.  
  1999.   ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  2000.   ΓöéField Name       ΓöéC Type           ΓöéLength   ΓöéDescription      Γöé
  2001.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  2002.   ΓöéTotalSectors     ΓöéULONG            ΓöéDD       ΓöéNumber of sectorsΓöé
  2003.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  2004.   ΓöéBytesPerSector   ΓöéUSHORT           ΓöéDW       ΓöéBytes per sector Γöé
  2005.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  2006.   ΓöéReserved         ΓöéUSHORT           ΓöéDW       ΓöéReserved         Γöé
  2007.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  2008.   ΓöéNumHeads         ΓöéUSHORT           ΓöéDW       ΓöéNumber of heads  Γöé
  2009.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  2010.   ΓöéTotalCylinders   ΓöéULONG            ΓöéDD       ΓöéNumber of        Γöé
  2011.   Γöé                 Γöé                 Γöé         Γöécylinders        Γöé
  2012.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  2013.   ΓöéSectorsPerTrack  ΓöéUSHORT           ΓöéDW       ΓöéNumber of sectorsΓöé
  2014.   Γöé                 Γöé                 Γöé         Γöéper track        Γöé
  2015.   ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  2016.  
  2017.  On entry to the driver for SET CommandModifiers, and on exit from the driver 
  2018.  for GET CommandModifiers, the following apply: 
  2019.  
  2020.  TotalSectors 
  2021.  contains the total number of sectors. 
  2022.  
  2023.  BytesPerSector 
  2024.  contains the number of bytes per sector.  The IBM OS/2 2.0 File System 
  2025.  supports only a value of 512. 
  2026.  
  2027.  Reserved 
  2028.  contains a 0.  This alignment field ensures that the GEOMETRY structure aligns 
  2029.  with SCSI Read Capacity output. 
  2030.  
  2031.  NumHeads 
  2032.  contains the number of heads. 
  2033.  
  2034.  TotalCylinders 
  2035.  contains the number of cylinders. 
  2036.  
  2037.  SectorsPerTrack 
  2038.  contains the number of sectors per track. 
  2039.  
  2040.  Note:  SCSI devices normally do not support cylinder/head/sector (CHS) 
  2041.         addressing.  However, to maintain INT 13h BIOS compatibility, most 
  2042.         controllers create CHS mapping for the devices they support. For 
  2043.         non-boot devices, which do not provide INT 13h support, NumHeads, 
  2044.         TotalCylinders, and SectorsPerTrack can be set to 0, and the device 
  2045.         manager will select appropriate CHS values. 
  2046.  
  2047.  On exit, the driver sets the Status and ErrorCode fields of the IORBH to 
  2048.  reflect the results of the IOCC_GEOMETRY request. 
  2049.  
  2050.  Return Codes 
  2051.  
  2052.  Following is a list of the IOCC_GEOMETRY error codes: 
  2053.  
  2054.       IOERR_CMD_NOT_SUPPORTED 
  2055.       IOERR_CMD_SYNTAX 
  2056.       IOERR_CMD_SW_RESOURCE 
  2057.       IOERR_UNIT_NOT_ALLOCATED 
  2058.       IOERR_UNIT_NOT_READY 
  2059.       IOERR_UNIT_PWR_OFF 
  2060.       IOERR_MEDIA_NOT_FORMATTED 
  2061.       IOERR_MEDIA_NOT_SUPPORTED 
  2062.       IOERR_MEDIA_CHANGED 
  2063.       IOERR_MEDIA_NOT_PRESENT 
  2064.       IOERR_ADAPTER_HOSTBUSCHECK 
  2065.       IOERR_ADAPTER_DEVICEBUSCHECK 
  2066.       IOERR_ADAPTER_OVERRUN 
  2067.       IOERR_ADAPTER_UNDERRUN 
  2068.       IOERR_ADAPTER_DIAGFAIL 
  2069.       IOERR_ADAPTER_TIMEOUT 
  2070.       IOERR_ADAPTER_DEVICE_TIMEOUT 
  2071.       IOERR_ADAPTER_REQ_NOT_SUPPORTED 
  2072.       IOERR_ADAPTER_REFER_TO_STATUS 
  2073.       IOERR_DEVICE_DEVICEBUSCHECK 
  2074.       IOERR_DEVICE_REQ_NOT_SUPPORTED 
  2075.       IOERR_DEVICE_DIAGFAIL 
  2076.       IOERR_DEVICE_BUSY 
  2077.       IOERR_DEVICE_OVERRUN 
  2078.       IOERR_DEVICE_UNDERRUN 
  2079.  
  2080.  For a detailed description of all the return codes, see Error Handling. 
  2081.  
  2082.  
  2083. ΓòÉΓòÉΓòÉ 6.3.5. IOCC_EXECUTE_IO ΓòÉΓòÉΓòÉ
  2084.  
  2085. The IOCC_EXECUTE_IO CommandCode consists of all CommandModifiers responsible 
  2086. for issuing a Read or Write to a unit. The following table describes the 
  2087. IOCC_EXECUTE_IO CommandModifiers: 
  2088.  
  2089. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  2090. ΓöéCommandModifier         ΓöéDescription                         Γöé
  2091. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  2092. ΓöéIOCM_READ               ΓöéReads a unit's data into the        Γöé
  2093. Γöé                        Γöéscatter/gather list buffers.        Γöé
  2094. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  2095. ΓöéIOCM_READ_VERIFY        ΓöéVerifies that the recorded data at  Γöé
  2096. Γöé                        Γöéthe requested I/O address is        Γöé
  2097. Γöé                        Γöéreadable.  No data is transferred.  Γöé
  2098. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  2099. ΓöéIOCM_READ_PREFETCH      ΓöéReads data from the device into the Γöé
  2100. Γöé                        Γöéadapter's hardware cache. Support ofΓöé
  2101. Γöé                        Γöéthis command is optional.           Γöé
  2102. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  2103. ΓöéIOCM_WRITE              ΓöéWrites data from the scatter/gather Γöé
  2104. Γöé                        Γöélist buffers to the unit's specifiedΓöé
  2105. Γöé                        ΓöéI/O address.                        Γöé
  2106. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  2107. ΓöéIOCM_WRITE_VERIFY       ΓöéWrites data from the scatter/gather Γöé
  2108. Γöé                        Γöélist buffers to the unit's specifiedΓöé
  2109. Γöé                        ΓöéI/O address, then verifies that the Γöé
  2110. Γöé                        Γöédata can be read (Write/Read Verify Γöé
  2111. Γöé                        Γöécombination).                       Γöé
  2112. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  2113.  
  2114. Remarks 
  2115.  
  2116.  Support:            Mandatory 
  2117.  Called By:          OS2DASD.DMD, other device manager, or filter device driver 
  2118.  Context of Call:    TASK, INTERRUPT 
  2119.  
  2120.  Format of IORB 
  2121.  
  2122.    o  IORB Type 
  2123.  
  2124.         -  IORB_EXECUTEIO 
  2125.  
  2126.    o  IORBH Fields 
  2127.  
  2128.         -  CommandCode 
  2129.  
  2130.              o  IOCC_EXECUTE_IO 
  2131.  
  2132.         -  CommandModifiers 
  2133.  
  2134.              o  IOCM_READ 
  2135.              o  IOCM_READ_VERIFY 
  2136.              o  IOCM_READ_PREFETCH 
  2137.              o  IOCM_WRITE 
  2138.              o  IOCM_WRITE_VERIFY 
  2139.  
  2140.         -  Valid RequestControl Flags 
  2141.  
  2142.              o  IORB_ASYNC_POST 
  2143.              o  IORB_CHAIN 
  2144.              o  IORB_CHS_ADDRESSING 
  2145.                 (Diskette only, see AF_CHS_ADDRESSING) 
  2146.              o  IORB_REQ_STATUSBLOCK 
  2147.              o  IORB_DISABLE_RETRY 
  2148.  
  2149.  IORB_EXECUTEIO Description 
  2150.  
  2151.  This section defines the IORB_EXECUTEIO control block. (See the following 
  2152.  table.) 
  2153.  
  2154.   ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  2155.   ΓöéField Name       ΓöéC Type           ΓöéLength   ΓöéDescription      Γöé
  2156.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  2157.   Γöéiorbh            ΓöéIORBH            ΓöéDB(68)   ΓöéIORB header      Γöé
  2158.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  2159.   ΓöécSGLIST          ΓöéUSHORT           ΓöéDW       ΓöéNumber of        Γöé
  2160.   Γöé                 Γöé                 Γöé         Γöéelements         Γöé
  2161.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  2162.   ΓöépSGLIST          ΓöéPSCATGATENTRY    ΓöéDD       ΓöéFar pointer to   Γöé
  2163.   Γöé                 Γöé                 Γöé         Γöés/g list         Γöé
  2164.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  2165.   ΓöéppSGLIST         ΓöéULONG            ΓöéDD       ΓöéPhysical address Γöé
  2166.   Γöé                 Γöé                 Γöé         Γöéof s/g list      Γöé
  2167.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  2168.   ΓöéRBA              ΓöéULONG            ΓöéDD       ΓöéI/O starting     Γöé
  2169.   Γöé                 Γöé                 Γöé         Γöéaddress          Γöé
  2170.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  2171.   ΓöéBlockCount       ΓöéUSHORT           ΓöéDW       ΓöéSector count     Γöé
  2172.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  2173.   ΓöéBlocksXferred    ΓöéUSHORT           ΓöéDW       ΓöéNumber of sectorsΓöé
  2174.   Γöé                 Γöé                 Γöé         Γöétransferred      Γöé
  2175.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  2176.   ΓöéBlockSize        ΓöéUSHORT           ΓöéDW       ΓöéNumber of bytes  Γöé
  2177.   Γöé                 Γöé                 Γöé         Γöéper sector       Γöé
  2178.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  2179.   ΓöéFlags            ΓöéUSHORT           ΓöéDW       ΓöéI/O-specific     Γöé
  2180.   Γöé                 Γöé                 Γöé         Γöéflags            Γöé
  2181.   ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  2182.  
  2183.  On entry to the driver: 
  2184.  
  2185.  iorbh 
  2186.  See IORB General Format. 
  2187.  
  2188.  cSGList 
  2189.  contains the number of scatter/gather elements in the scatter/gather list 
  2190.  (pSGLIST). 
  2191.  
  2192.  pSGLIST 
  2193.  contains a far pointer to the scatter/gather list, supplied by the caller. 
  2194.  The scatter/gather list consists of an array of cSGList elements, each 
  2195.  pointing to a physically contiguous area of real memory in a format defined by 
  2196.  the SCATGATENTRY structure. (See the following table.) 
  2197.  
  2198.   ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  2199.   ΓöéField Name       ΓöéC Type           ΓöéLength   ΓöéDescription      Γöé
  2200.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  2201.   ΓöéppXferBuf        ΓöéULONG            ΓöéDD       ΓöéPhysical pointer Γöé
  2202.   Γöé                 Γöé                 Γöé         Γöéto buffer        Γöé
  2203.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  2204.   ΓöéXferBufLen       ΓöéULONG            ΓöéDD       ΓöéLength of buffer Γöé
  2205.   ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  2206.  
  2207.  ppSGLIST 
  2208.  contains a 32-bit physical address of the scatter/gather list. 
  2209.  
  2210.  RBA 
  2211.  contains the starting relative block address for the data transfer operation. 
  2212.  If the IORB_CHS_ADDRESSING flag is set in the IORBH RequestControl field, then 
  2213.  the format of the RBA field is defined by the CHS_ADDR structure. (See the 
  2214.  following table.) 
  2215.  
  2216.   ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  2217.   ΓöéField Name       ΓöéC Type           ΓöéLength   ΓöéDescription      Γöé
  2218.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  2219.   ΓöéCylinder         ΓöéUSHORT           ΓöéDW       ΓöéStarting cylinderΓöé
  2220.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  2221.   ΓöéHead             ΓöéUCHAR            ΓöéDB       ΓöéStarting head    Γöé
  2222.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  2223.   ΓöéSector           ΓöéUCHAR            ΓöéDB       ΓöéStarting sector  Γöé
  2224.   ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  2225.  
  2226.  BlockCount 
  2227.  contains the number of sectors (length = BlockSize) to transfer. 
  2228.  
  2229.  Note:  If this value exceeds the adapter's maximum transfer size, the driver 
  2230.         is responsible for issuing multiple operations to the unit to complete 
  2231.         the caller's request. 
  2232.  
  2233.  BlocksXferred 
  2234.  equals 0 on entry.  On exit from the driver BlocksXferred contains the number 
  2235.  of sectors successfully transferred. 
  2236.  
  2237.  BlockSize 
  2238.  contains the number of bytes in a block or sector.  The IBM OS/2 2.0 File 
  2239.  System supports only a value of 512. 
  2240.  
  2241.  Flags 
  2242.  defines Execute I/O cache control flags, as shown in the table below. 
  2243.  
  2244.   ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  2245.   ΓöéFlag                          ΓöéDescription                   Γöé
  2246.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  2247.   ΓöéXIO_DISABLE_HW_WRITE_CACHE    ΓöéDisable-deferred Write.       Γöé
  2248.   Γöé                              ΓöéIndicates the driver should   Γöé
  2249.   Γöé                              Γöéensure that the requested dataΓöé
  2250.   Γöé                              Γöéis written to the media prior Γöé
  2251.   Γöé                              Γöéto doing a notification       Γöé
  2252.   Γöé                              Γöécallout.                      Γöé
  2253.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  2254.   ΓöéXIO_DISABLE_HW_READ_CACHE     ΓöéDisable Read caching.         Γöé
  2255.   Γöé                              ΓöéIndicates to the driver that  Γöé
  2256.   Γöé                              Γöéthe data being read is of a   Γöé
  2257.   Γöé                              Γöétransient nature and does not Γöé
  2258.   Γöé                              Γöéneed to be retained in the    Γöé
  2259.   Γöé                              Γöéadapter's hardware cache.     Γöé
  2260.   ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  2261.  
  2262.  Note:  The scatter/gather list-related fields (cSGLIST, pSGLIST, and ppSGLIST) 
  2263.         are at the same offset as their equivalent pointers in the 
  2264.         IOCC_ADAPTER_PASSTHRU and IOCC_FORMAT CommandCodes. 
  2265.  
  2266.  On exit, the driver sets the Status and ErrorCode fields of the IORBH to 
  2267.  reflect the results of the IOCC_EXECUTE_IO request. 
  2268.  
  2269.  Return Codes 
  2270.  
  2271.  Following is a list of the IOCC_EXECUTE_IO error codes: 
  2272.  
  2273.       IOERR_CMD_NOT_SUPPORTED 
  2274.       IOERR_CMD_SYNTAX 
  2275.       IOERR_CMD_SGLIST_BAD 
  2276.       IOERR_CMD_SW_RESOURCE 
  2277.       IOERR_CMD_ABORTED 
  2278.       IOERR_UNIT_NOT_ALLOCATED 
  2279.       IOERR_UNIT_NOT_READY 
  2280.       IOERR_UNIT_PWR_OFF 
  2281.       IOERR_RBA_ADDRESSING_ERROR 
  2282.       IOERR_RBA_LIMIT 
  2283.       IOERR_RBA_CRC_ERROR 
  2284.       IOERR_MEDIA_NOT_FORMATTED 
  2285.       IOERR_MEDIA_NOT_SUPPORTED 
  2286.       IOERR_MEDIA_WRITE_PROTECT 
  2287.       IOERR_MEDIA_CHANGED 
  2288.       IOERR_MEDIA_NOT_PRESENT 
  2289.       IOERR_ADAPTER_HOSTBUSCHECK 
  2290.       IOERR_ADAPTER_DEVICEBUSCHECK 
  2291.       IOERR_ADAPTER_OVERRUN 
  2292.       IOERR_ADAPTER_UNDERRUN 
  2293.       IOERR_ADAPTER_DIAGFAIL 
  2294.       IOERR_ADAPTER_TIMEOUT 
  2295.       IOERR_ADAPTER_DEVICE_TIMEOUT 
  2296.       IOERR_ADAPTER_REQ_NOT_SUPPORTED 
  2297.       IOERR_ADAPTER_REFER_TO_STATUS 
  2298.       IOERR_DEVICE_DEVICEBUSCHECK 
  2299.       IOERR_DEVICE_REQ_NOT_SUPPORTED 
  2300.       IOERR_DEVICE_DIAGFAIL 
  2301.       IOERR_DEVICE_BUSY 
  2302.       IOERR_DEVICE_OVERRUN 
  2303.       IOERR_DEVICE_UNDERRUN 
  2304.  
  2305.  For a detailed description of all the return codes, see Error Handling. 
  2306.  
  2307.  
  2308. ΓòÉΓòÉΓòÉ 6.3.6. IOCC_FORMAT ΓòÉΓòÉΓòÉ
  2309.  
  2310. The IOCC_FORMAT CommandCode consists of all CommandModifiers responsible for 
  2311. unit format requests. The following table describes the IOCC_FORMAT 
  2312. CommandModifiers: 
  2313.  
  2314. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  2315. ΓöéCommandModifier         ΓöéDescription                         Γöé
  2316. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  2317. ΓöéIOCM_FORMAT_MEDIA       ΓöéFormats the entire media in the     Γöé
  2318. Γöé                        Γöéunit. Support of this command is    Γöé
  2319. Γöé                        Γöémandatory for SCSI devices that     Γöé
  2320. Γöé                        Γöérequire low-level formatting.       Γöé
  2321. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  2322. ΓöéIOCM_FORMAT_TRACK       ΓöéFormats the specified track on the  Γöé
  2323. Γöé                        Γöéunit. Support of this command is    Γöé
  2324. Γöé                        Γöémandatory for standard diskette     Γöé
  2325. Γöé                        Γöémedia.                              Γöé
  2326. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  2327. ΓöéIOCM_FORMAT_PROGRESS    ΓöéReports the progress of the         Γöé
  2328. Γöé                        Γöéformatting. Support of this command Γöé
  2329. Γöé                        Γöéis mandatory for standard diskette  Γöé
  2330. Γöé                        Γöémedia.                              Γöé
  2331. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  2332.  
  2333. Remarks 
  2334.  
  2335.  Support:            See CommandModifiers. 
  2336.  Called By:          OS2DASD.DMD, other device manager, or filter device driver 
  2337.  Context of Call:    TASK, INTERRUPT 
  2338.  
  2339.  Format of IORB 
  2340.  
  2341.    o  IORB Type 
  2342.  
  2343.         -  IORB_FORMAT 
  2344.  
  2345.    o  IORBH Fields 
  2346.  
  2347.         -  RequestControl:  Flags can be enabled or disabled. 
  2348.         -  CommandCode 
  2349.  
  2350.              o  IOCC_FORMAT 
  2351.  
  2352.         -  CommandModifiers 
  2353.  
  2354.              o  IOCM_FORMAT_MEDIA 
  2355.              o  IOCM_FORMAT_TRACK 
  2356.              o  IOCM_FORMAT_PROGRESS 
  2357.  
  2358.         -  Valid RequestControl Flags 
  2359.  
  2360.              o  IORB_ASYNC_POST 
  2361.              o  IORB_CHS_ADDRESSING 
  2362.                 (Diskette only, see AF_CHS_ADDRESSING) 
  2363.              o  IORB_REQ_STATUSBLOCK 
  2364.              o  IORB_DISABLE_RETRY 
  2365.  
  2366.  IORB_FORMAT Description: 
  2367.  
  2368.  This section defines the IORB_FORMAT control block. (See the following table.) 
  2369.  
  2370.   ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  2371.   ΓöéField Name       ΓöéC Type           ΓöéLength   ΓöéDescription      Γöé
  2372.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  2373.   Γöéiorbh            ΓöéIORBH            ΓöéDB(68)   ΓöéIORB header      Γöé
  2374.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  2375.   ΓöécSGLIST          ΓöéUSHORT           ΓöéDW       ΓöéNumber of        Γöé
  2376.   Γöé                 Γöé                 Γöé         Γöéelements         Γöé
  2377.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  2378.   ΓöépSGLIST          ΓöéPSCATGATENTRY    ΓöéDD       ΓöéFar pointer to   Γöé
  2379.   Γöé                 Γöé                 Γöé         Γöés/g list         Γöé
  2380.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  2381.   ΓöéppSGLIST         ΓöéULONG            ΓöéDD       ΓöéPhysical address Γöé
  2382.   Γöé                 Γöé                 Γöé         Γöéof s/g list      Γöé
  2383.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  2384.   ΓöéFormatCmdLen     ΓöéUSHORT           ΓöéDW       ΓöéLength of Format Γöé
  2385.   Γöé                 Γöé                 Γöé         Γöécommand          Γöé
  2386.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  2387.   ΓöépFormatCmd       ΓöéPBYTE            ΓöéDD       ΓöéPointer to FormatΓöé
  2388.   Γöé                 Γöé                 Γöé         Γöécommand          Γöé
  2389.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  2390.   ΓöéReserved_1       ΓöéUCHAR            ΓöéDB(8)    ΓöéReserved.        Γöé
  2391.   ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  2392.  
  2393.  On entry to the driver: 
  2394.  
  2395.  iorbh 
  2396.  See IORB General Format. 
  2397.  
  2398.  cSGList 
  2399.  contains the number of scatter/gather elements in the scatter/gather list 
  2400.  (pSGLIST). 
  2401.  
  2402.  pSGLIST 
  2403.  contains a far pointer to the scatter/gather list supplied by the caller.  The 
  2404.  scatter/gather list consists of an array of cSGList elements, each pointing to 
  2405.  a physically contiguous area of real memory in a format defined by the 
  2406.  SCATGATENTRY structure. (See the following table.) 
  2407.  
  2408.   ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  2409.   ΓöéField Name       ΓöéC Type           ΓöéLength   ΓöéDescription      Γöé
  2410.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  2411.   ΓöéppXferBuf        ΓöéULONG            ΓöéDD       ΓöéPhysical pointer Γöé
  2412.   Γöé                 Γöé                 Γöé         Γöéto buffer        Γöé
  2413.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  2414.   ΓöéXferBufLen       ΓöéULONG            ΓöéDD       ΓöéLength of buffer Γöé
  2415.   ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  2416.  
  2417.  ppSGLIST 
  2418.  contains a 32-bit physical address of the scatter/gather list. 
  2419.  
  2420.  Note:  For IOCM_FORMAT_MEDIA, the s/g pointers will point to a Format Unit 
  2421.         Parameter List as defined by the SCSI-2 specification. 
  2422.  
  2423.  If the SCSI Format Unit CDB does not require a parameter list and other 
  2424.  command modifiers, the s/g pointers must be 0. 
  2425.  
  2426.  FormatCmdLen 
  2427.  contains the length of the format command (pFormatCmd), in bytes. 
  2428.  
  2429.  pFormatCmd 
  2430.  contains a pointer to device-specific formatting information. For diskette 
  2431.  controllers, this points to the FORMAT_CMD_TRACK structure (see the table 
  2432.  below). For SCSI devices, this points to a SCSI Format Unit CDB. 
  2433.  
  2434.   ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  2435.   ΓöéField Name       ΓöéC Type           ΓöéLength   ΓöéDescription      Γöé
  2436.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  2437.   ΓöéFlags            ΓöéUSHORT           ΓöéDW       ΓöéFlags            Γöé
  2438.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  2439.   ΓöéRBA              ΓöéULONG            ΓöéDD       ΓöéStarting RBA     Γöé
  2440.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  2441.   ΓöécTrackEntries    ΓöéUSHORT           ΓöéDW       ΓöéNumber of track  Γöé
  2442.   Γöé                 Γöé                 Γöé         Γöéentries          Γöé
  2443.   ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  2444.  
  2445.  On entry to the driver: 
  2446.  
  2447.  Flags 
  2448.  contains flags to define the request, as shown in the following table. 
  2449.  
  2450.   ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  2451.   ΓöéFlag           ΓöéDescription                                  Γöé
  2452.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  2453.   ΓöéFF_VERIFY      ΓöéVerify after format.  If set, this flag      Γöé
  2454.   Γöé               Γöéindicates that the driver should verify the  Γöé
  2455.   Γöé               Γöésectors after formatting.                    Γöé
  2456.   ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  2457.  
  2458.  RBA 
  2459.  contains the starting relative block address for an IOCM_FORMAT_TRACK 
  2460.  request.  For IOCM_FORMAT_MEDIA and IOCM_FORMAT_PROGRESS requests, this field 
  2461.  equals 0.  If the IORB_CHS_ADDRESSING flag is set in the IORBH->RequestControl 
  2462.  field, then the format of the RBA field is defined by the CHS_ADDR structure, 
  2463.  shown in the following table. 
  2464.  
  2465.   ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  2466.   ΓöéField Name       ΓöéC Type           ΓöéLength   ΓöéDescription      Γöé
  2467.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  2468.   ΓöéCylinder         ΓöéUSHORT           ΓöéDW       ΓöéStarting cylinderΓöé
  2469.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  2470.   ΓöéHead             ΓöéUCHAR            ΓöéDB       ΓöéStarting head    Γöé
  2471.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  2472.   ΓöéSector           ΓöéUCHAR            ΓöéDB       ΓöéStarting sector  Γöé
  2473.   ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  2474.  
  2475.  Note:  The scatter/gather list-related fields (cSGLIST,  pSGLIST, and 
  2476.         ppSGLIST) are at the same offset as its equivalent pointers in the 
  2477.         IOCC_EXECUTE_IO and IOCC_ADAPTER_PASSTHRU CommandCodes. 
  2478.  
  2479.  On exit, the driver sets the Status and ErrorCode fields of the IORBH to 
  2480.  reflect the results of the IOCC_FORMAT request. 
  2481.  
  2482.  Return Codes 
  2483.  
  2484.  Following is a list of the IOCC_FORMAT error codes: 
  2485.  
  2486.       IOERR_CMD_NOT_SUPPORTED 
  2487.       IOERR_CMD_SYNTAX 
  2488.       IOERR_CMD_SW_RESOURCE 
  2489.       IOERR_CMD_ABORTED 
  2490.       IOERR_UNIT_NOT_ALLOCATED 
  2491.       IOERR_UNIT_NOT_READY 
  2492.       IOERR_UNIT_PWR_OFF 
  2493.       IOERR_RBA_ADDRESSING_ERROR 
  2494.       IOERR_RBA_LIMIT 
  2495.       IOERR_RBA_CRC_ERROR 
  2496.       IOERR_MEDIA_NOT_SUPPORTED 
  2497.       IOERR_MEDIA_WRITE_PROTECT 
  2498.       IOERR_MEDIA_CHANGED 
  2499.       IOERR_MEDIA_NOT_PRESENT 
  2500.       IOERR_ADAPTER_HOSTBUSCHECK 
  2501.       IOERR_ADAPTER_DEVICEBUSCHECK 
  2502.       IOERR_ADAPTER_OVERRUN 
  2503.       IOERR_ADAPTER_UNDERRUN 
  2504.       IOERR_ADAPTER_DIAGFAIL 
  2505.       IOERR_ADAPTER_TIMEOUT 
  2506.       IOERR_ADAPTER_DEVICE_TIMEOUT 
  2507.       IOERR_ADAPTER_REQ_NOT_SUPPORTED 
  2508.       IOERR_ADAPTER_REFER_TO_STATUS 
  2509.       IOERR_DEVICE_DEVICEBUSCHECK 
  2510.       IOERR_DEVICE_REQ_NOT_SUPPORTED 
  2511.       IOERR_DEVICE_DIAGFAIL 
  2512.       IOERR_DEVICE_BUSY 
  2513.       IOERR_DEVICE_OVERRUN 
  2514.       IOERR_DEVICE_UNDERRUN 
  2515.  
  2516.  For a detailed description of all the return codes, see Error Handling. 
  2517.  
  2518.  
  2519. ΓòÉΓòÉΓòÉ 6.3.7. IOCC_UNIT_STATUS ΓòÉΓòÉΓòÉ
  2520.  
  2521. The IOCC_UNIT_STATUS CommandCode consists of all the CommandModifiers 
  2522. responsible for returning a unit's current status. The following table 
  2523. describes these CommandModifiers: 
  2524.  
  2525. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  2526. ΓöéCommandModifier               ΓöéDescription                   Γöé
  2527. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  2528. ΓöéIOCM_GET_UNIT_STATUS          ΓöéReturns flags indicating the  Γöé
  2529. Γöé                              Γöéunit's current Ready, Power   Γöé
  2530. Γöé                              ΓöéOn, and Defective status.  ForΓöé
  2531. Γöé                              ΓöéSCSI devices, if a SCSI TargetΓöé
  2532. Γöé                              Γöéis detected, the driver must  Γöé
  2533. Γöé                              Γöéissue a SCSI Test Unit Ready  Γöé
  2534. Γöé                              Γöécommand to obtain the current Γöé
  2535. Γöé                              Γöéunit status.                  Γöé
  2536. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  2537. ΓöéIOCM_GET_CHANGELINE_STATE     ΓöéReturns the unit's current    Γöé
  2538. Γöé                              Γöéchangeline state.  This       Γöé
  2539. Γöé                              Γöécommand is mandatory for      Γöé
  2540. Γöé                              Γöéstandard diskette devices.    Γöé
  2541. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  2542. ΓöéIOCM_GET_MEDIA_SENSE          ΓöéReturns the unit's current    Γöé
  2543. Γöé                              Γöémedia storage capacity.  This Γöé
  2544. Γöé                              Γöécommand is mandatory for      Γöé
  2545. Γöé                              Γöéstandard diskette devices.    Γöé
  2546. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  2547. ΓöéIOCM_GET_LOCK_STATUS          ΓöéReturns media sense           Γöé
  2548. Γöé                              Γöéinformation This command is   Γöé
  2549. Γöé                              Γöémandatory for standard        Γöé
  2550. Γöé                              Γöédiskette devices.             Γöé
  2551. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  2552.  
  2553. Remarks 
  2554.  
  2555.  Support:            Mandatory (See CommmandModifiers for exceptions.) 
  2556.  Called By:          OS2DASD.DMD, other device manager, or filter device driver 
  2557.  Context of Call:    TASK, INTERRUPT 
  2558.  
  2559.  Format of IORB 
  2560.  
  2561.    o  IORB Type 
  2562.  
  2563.         -  IORB_UNIT_STATUS 
  2564.  
  2565.    o  IORBH Fields 
  2566.  
  2567.         -  CommandCode 
  2568.  
  2569.              o  IOCC_UNIT_STATUS 
  2570.  
  2571.         -  CommandModifiers 
  2572.  
  2573.              o  IOCM_GET_UNIT_STATUS 
  2574.              o  IOCM_GET_CHANGELINE_STATE 
  2575.              o  IOCM_GET_MEDIA_SENSE 
  2576.              o  IOCM_GET_LOCK_STATUS 
  2577.  
  2578.         -  Valid RequestControl Flags 
  2579.  
  2580.              o  IORB_ASYNC_POST 
  2581.              o  IORB_REQ_STATUSBLOCK 
  2582.  
  2583.  IORB_UNIT_STATUS Description 
  2584.  
  2585.  This section defines the IORB_UNIT_STATUS control block. 
  2586.  
  2587.  IORB_UNIT_STATUS 
  2588.  
  2589.   ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  2590.   ΓöéField Name       ΓöéC-Type           ΓöéLength   ΓöéDescription      Γöé
  2591.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  2592.   Γöéiorbh            ΓöéIORBH            ΓöéDB(68)   ΓöéIORB header      Γöé
  2593.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  2594.   ΓöéUnitStatus       ΓöéUSHORT           ΓöéDW       ΓöéUnit status      Γöé
  2595.   ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  2596.  
  2597.  On entry to the driver: 
  2598.  
  2599.  iorbh 
  2600.  See IORB General Format. 
  2601.  
  2602.  UnitStatus 
  2603.  equals 0, on entry.  On exit from the driver, this field contains the status 
  2604.  information request, based on the CommandModifier field, as shown in the 
  2605.  following table. 
  2606.  
  2607.   ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  2608.   ΓöéCommandModifier               ΓöéDescription                   Γöé
  2609.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  2610.   ΓöéIOCM_GET_UNIT_STATUS          Γöé                              Γöé
  2611.   ΓöéUS_READY                      ΓöéUnit in Ready state           Γöé
  2612.   ΓöéUS_POWER                      ΓöéUnit Powered On               Γöé
  2613.   ΓöéUS_DEFECTIVE                  ΓöéUnit Defective                Γöé
  2614.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  2615.   ΓöéIOCM_GET_CHANGELINE_STATE     Γöé                              Γöé
  2616.   ΓöéUS_CHANGELINE_ACTIVE          ΓöéChangeline occurred           Γöé
  2617.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  2618.   ΓöéIOCM_GET_MEDIA_SENSE          Γöé                              Γöé
  2619.   ΓöéUS_MEDIA_144MB                Γöé144KB media capacity          Γöé
  2620.   ΓöéUS_MEDIA_288MB                Γöé288KB media capacity          Γöé
  2621.   ΓöéUS_MEDIA_720KB                Γöé720KB media capacity          Γöé
  2622.   ΓöéUS_MEDIA_UNKNOWN              ΓöéMedia capacity unknown        Γöé
  2623.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  2624.   ΓöéIOCM_GET_LOCK_STATUS          Γöé                              Γöé
  2625.   ΓöéUS_LOCKED                     ΓöéUnit Locked                   Γöé
  2626.   ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  2627.  
  2628.  Remarks 
  2629.  
  2630.    o  The UnitStatus field reports the general status of the unit.  If the 
  2631.       adapter device driver encounters a SCSI Check condition, it must convert 
  2632.       any retrieved sense data into IOERR_* error codes and report these in the 
  2633.       IORBH->ErrorCode field in addition to setting the UnitStatus field. 
  2634.  
  2635.    o  The reporting of units that are powered-off is optional. The driver 
  2636.       possibly might be able to determine powered-off units from configuration 
  2637.       data stored in non-volatile memory. 
  2638.  
  2639.    o  The detection of defective units is optional. 
  2640.  
  2641.  On exit, the driver sets the Status and ErrorCode fields of the IORBH to 
  2642.  reflect the results of the IOCC_UNIT_STATUS request. 
  2643.  
  2644.  Return Codes 
  2645.  
  2646.  For a detailed description of all the return codes, see IORB General Format. 
  2647.  
  2648.  
  2649. ΓòÉΓòÉΓòÉ 6.3.8. IOCC_DEVICE_CONTROL ΓòÉΓòÉΓòÉ
  2650.  
  2651. The IOCC_DEVICE_CONTROL CommandCode consists of all the CommmandModifiers 
  2652. responsible for device control. 
  2653.  
  2654. The following table describes the IOCC_DEVICE_CONTROL CommandModifiers: 
  2655.  
  2656. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  2657. ΓöéCommandModifier         ΓöéDescription                         Γöé
  2658. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  2659. ΓöéIOCM_ABORT              ΓöéAborts the unit's current operation Γöé
  2660. Γöé                        Γöéand causes the driver to return any Γöé
  2661. Γöé                        Γöépending work in its queues.         Γöé
  2662. Γöé                        ΓöéSupport is mandatory for SCSI       Γöé
  2663. Γöé                        Γöédevices.                            Γöé
  2664. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  2665. ΓöéIOCM_RESET              ΓöéResets the unit to its default      Γöé
  2666. Γöé                        Γöéoperating parameters.               Γöé
  2667. Γöé                        ΓöéSupport is mandatory for SCSI       Γöé
  2668. Γöé                        Γöédevices.                            Γöé
  2669. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  2670. ΓöéIOCM_SUSPEND            ΓöéSuspends the unit's current         Γöé
  2671. Γöé                        Γöéoperation. This command provides forΓöé
  2672. Γöé                        Γöésharing disk controller hardware    Γöé
  2673. Γöé                        Γöéwith other device drivers.          Γöé
  2674. Γöé                        ΓöéSupport is mandatory for diskette   Γöé
  2675. Γöé                        Γöécontrollers.                        Γöé
  2676. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  2677. ΓöéIOCM_RESUME             ΓöéResumes  the unit's suspended       Γöé
  2678. Γöé                        Γöéoperation.  This command provides   Γöé
  2679. Γöé                        Γöéfor the sharing of the diskette     Γöé
  2680. Γöé                        Γöécontroller with other device        Γöé
  2681. Γöé                        Γöédrivers.                            Γöé
  2682. Γöé                        ΓöéSupport is mandatory for diskette   Γöé
  2683. Γöé                        Γöécontrollers.                        Γöé
  2684. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  2685. ΓöéIOCM_LOCK_MEDIA         ΓöéLocks the current media in the unit.Γöé
  2686. Γöé                        ΓöéSupport is mandatory for SCSI       Γöé
  2687. Γöé                        Γöéadapter device drivers and for otherΓöé
  2688. Γöé                        Γöédevices that support a media-lockingΓöé
  2689. Γöé                        Γöéfunction.                           Γöé
  2690. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  2691. ΓöéIOCM_UNLOCK_MEDIA       ΓöéUnlocks the current media from the  Γöé
  2692. Γöé                        Γöéunit.                               Γöé
  2693. Γöé                        ΓöéMandatory for SCSI adapter device   Γöé
  2694. Γöé                        Γöédrivers and for other devices that  Γöé
  2695. Γöé                        Γöésupport a media-locking function.   Γöé
  2696. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  2697. ΓöéIOCM_EJECT_MEDIA        ΓöéEjects the current media from the   Γöé
  2698. Γöé                        Γöéunit.                               Γöé
  2699. Γöé                        ΓöéMandatory for SCSI adapter device   Γöé
  2700. Γöé                        Γöédrivers and for other devices that  Γöé
  2701. Γöé                        Γöésupport a media-locking function.   Γöé
  2702. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  2703.  
  2704. Remarks 
  2705.  
  2706.  Support:            See the command descriptions. 
  2707.  Called By:          OS2DASD.DMD, other device manager, or filter device driver 
  2708.  Context of Call:    TASK, INTERRUPT 
  2709.  
  2710.  Format of IORB 
  2711.  
  2712.    o  IORB Type 
  2713.  
  2714.         -  IORB_DEVICE_CONTROL 
  2715.  
  2716.    o  IORBH Fields 
  2717.  
  2718.         -  CommandCode 
  2719.  
  2720.              o  IOCC_DEVICE_CONTROL 
  2721.  
  2722.         -  CommandModifiers 
  2723.  
  2724.              o  IOCM_ABORT 
  2725.              o  IOCM_RESET 
  2726.              o  IOCM_SUSPEND 
  2727.              o  IOCM_RESUME 
  2728.              o  IOCM_LOCK_MEDIA 
  2729.              o  IOCM_UNLOCK_MEDIA 
  2730.              o  IOCM_EJECT_MEDIA 
  2731.  
  2732.         -  Valid RequestControl Flags 
  2733.  
  2734.              o  IORB_ASYNC_POST 
  2735.              o  IORB_REQ_STATUSBLOCK 
  2736.              o  IORB_DISABLE_RETRY 
  2737.  
  2738.  IORB_DEVICE_CONTROL Description 
  2739.  
  2740.  This section defines the IORB_DEVICE_CONTROL control block. (See the following 
  2741.  table.) 
  2742.  
  2743.   ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  2744.   ΓöéField Name       ΓöéC-Type           ΓöéLength   ΓöéDescription      Γöé
  2745.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  2746.   Γöéiorbh            ΓöéIORBH            ΓöéDB(68)   ΓöéIORB header      Γöé
  2747.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  2748.   ΓöéFlags            ΓöéUSHORT           ΓöéDW       ΓöéFlags            Γöé
  2749.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  2750.   ΓöéReserved         ΓöéUSHORT           ΓöéDW       ΓöéReserved         Γöé
  2751.   ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  2752.  
  2753.  On entry to the driver: 
  2754.  
  2755.  iorbh 
  2756.  See IORB General Format. 
  2757.  
  2758.  Flags 
  2759.  contains flags defined only for IOCM_SUSPEND requests.  For all other 
  2760.  requests, this field equals 0. 
  2761.  
  2762.  The following table describes the IOCM_SUSPEND flags. 
  2763.  
  2764.   ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  2765.   ΓöéFlag                    ΓöéDescription                         Γöé
  2766.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  2767.   ΓöéDC_SUSPEND_DEFERRED     ΓöéSuspend on idle.  If set, this flag Γöé
  2768.   Γöé                        Γöéindicates that the suspend should   Γöé
  2769.   Γöé                        Γöéoccur once the unit is idle.        Γöé
  2770.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  2771.   ΓöéDC_SUSPEND_IMMEDIATE    ΓöéSuspend immediate.  If set this flagΓöé
  2772.   Γöé                        Γöéindicates that the suspend should   Γöé
  2773.   Γöé                        Γöéoccur once the current request is   Γöé
  2774.   Γöé                        Γöécomplete.                           Γöé
  2775.   ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  2776.  
  2777.  Reserved 
  2778.  contains a 0. 
  2779.  
  2780.  On exit, the driver sets the Status and ErrorCode fields of the IORBH to 
  2781.  reflect the results of the IOCC_DEVICE_CONTROL request. 
  2782.  
  2783.  Return Codes 
  2784.  
  2785.  Following is a list of the IOCC_DEVICE_CONTROL error codes: 
  2786.  
  2787.       IOERR_CMD_NOT_SUPPORTED 
  2788.       IOERR_CMD_SYNTAX 
  2789.       IOERR_CMD_SW_RESOURCE 
  2790.       IOERR_UNIT_NOT_ALLOCATED 
  2791.       IOERR_UNIT_NOT_READY 
  2792.       IOERR_UNIT_PWR_OFF 
  2793.  
  2794.  For a detailed description of all the return codes, see Error Handling. 
  2795.  
  2796.  
  2797. ΓòÉΓòÉΓòÉ 6.3.9. IOCC_ADAPTER_PASSTHRU ΓòÉΓòÉΓòÉ
  2798.  
  2799. The IOCC_ADAPTER_PASSTHRU CommandCode consists of all the CommandModifiers 
  2800. responsible for issuing SCSI-formatted requests to a unit. The following table 
  2801. describes the CommandModifiers: 
  2802.  
  2803. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  2804. ΓöéCommandModifier         ΓöéDescription                         Γöé
  2805. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  2806. ΓöéIOCM_EXECUTE_SCB        ΓöéIssues an IBM Subsystem Control     Γöé
  2807. Γöé                        ΓöéBlock (SCB) request to the specifiedΓöé
  2808. Γöé                        Γöéunit.                               Γöé
  2809. Γöé                        ΓöéSupport of this command is optional.Γöé
  2810. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  2811. ΓöéIOCM_EXECUTE_CDB        ΓöéIssues a SCSI Command Descriptor    Γöé
  2812. Γöé                        ΓöéBlock (CDB) request to the specifiedΓöé
  2813. Γöé                        Γöéunit.                               Γöé
  2814. Γöé                        ΓöéThis command is mandatory for all   Γöé
  2815. Γöé                        ΓöéSCSI units.                         Γöé
  2816. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  2817.  
  2818. Remarks 
  2819.  
  2820.  Support:            Mandatory for SCSI units 
  2821.                      (See CommmandModifiers for exceptions.) 
  2822.  Called By:          OS2DASD.DMD, other device manager, or filter device driver 
  2823.  Context of Call:    TASK, INTERRUPT 
  2824.  
  2825.  Format of IORB 
  2826.  
  2827.    o  IORB Type 
  2828.  
  2829.         -  IORB_ADAPTER_PASSTHRU 
  2830.  
  2831.    o  IORBH Fields 
  2832.  
  2833.         -  CommandCode 
  2834.  
  2835.              o  IOCC_ADAPTER_PASSTHRU 
  2836.  
  2837.         -  CommandModifiers 
  2838.  
  2839.              o  IOCM_EXECUTE_SCB 
  2840.              o  IOCM_EXECUTE_CDB 
  2841.  
  2842.         -  Valid RequestControl Flags 
  2843.  
  2844.              o  IORB_ASYNC_POST 
  2845.              o  IORB_REQ_STATUSBLOCK 
  2846.              o  IORB_DISABLE_RETRY 
  2847.  
  2848.  IORB_ADAPTER_PASSTHRU Description 
  2849.  
  2850.  This section defines the IORB_ADAPTER_PASSTHRU control block. (See the 
  2851.  following table.) 
  2852.  
  2853.   ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  2854.   ΓöéField Name       ΓöéC-Type           ΓöéLength   ΓöéDescription      Γöé
  2855.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  2856.   Γöéiorbh            ΓöéIORBH            ΓöéDB(68)   ΓöéIORB header      Γöé
  2857.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  2858.   ΓöécSGLIST          ΓöéUSHORT           ΓöéDW       ΓöéNumber of        Γöé
  2859.   Γöé                 Γöé                 Γöé         Γöéelements         Γöé
  2860.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  2861.   ΓöépSGLIST          ΓöéPSCATGATENTRY    ΓöéDD       ΓöéFar pointer to   Γöé
  2862.   Γöé                 Γöé                 Γöé         Γöés/g list         Γöé
  2863.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  2864.   ΓöéppSGLIST         ΓöéULONG            ΓöéDD       ΓöéPhysical address Γöé
  2865.   Γöé                 Γöé                 Γöé         Γöéof s/g list      Γöé
  2866.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  2867.   ΓöéControllerCmdLen ΓöéUSHORT           ΓöéDW       ΓöéLength           Γöé
  2868.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  2869.   ΓöépControllerCmd   ΓöéPBYTE            ΓöéDD       ΓöéController       Γöé
  2870.   Γöé                 Γöé                 Γöé         Γöécommand pointer  Γöé
  2871.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  2872.   ΓöéppSCB            ΓöéULONG            ΓöéDD       ΓöéPhysical SCB     Γöé
  2873.   Γöé                 Γöé                 Γöé         Γöépointer          Γöé
  2874.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  2875.   ΓöéFlags            ΓöéUSHORT           ΓöéDW       ΓöéFlags            Γöé
  2876.   ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  2877.  
  2878.  On entry to the driver: 
  2879.  
  2880.  iorbh 
  2881.  See IORB General Format. 
  2882.  
  2883.  cSGList 
  2884.  contains the number of scatter/gather elements in the scatter/gather list 
  2885.  (pSGLIST), for IOCM_EXECUTE_CDB requests.  For all other requests this field 
  2886.  contains a 0. pSGLIST 
  2887.  contains a far pointer to the scatter/gather list, supplied by the caller, for 
  2888.  IOCM_EXECUTE_CDB requests.  For all other requests this field contains a 0. 
  2889.  The scatter/gather list consists of an array of cSGList elements, each 
  2890.  pointing to a physically contiguous area of real memory in a format defined by 
  2891.  the SCATGATENTRY structure, shown in the following table. 
  2892.  
  2893.   ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  2894.   ΓöéField Name       ΓöéC-Type           ΓöéLength   ΓöéDescription      Γöé
  2895.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  2896.   ΓöéppXferBuf        ΓöéULONG            ΓöéDD       ΓöéPhysical pointer Γöé
  2897.   Γöé                 Γöé                 Γöé         Γöéto buffer        Γöé
  2898.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  2899.   ΓöéXferBufLen       ΓöéULONG            ΓöéDD       ΓöéLength of buffer Γöé
  2900.   ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  2901.  
  2902.  ppSGLIST 
  2903.  contains a 32-bit physical address of the scatter/gather list for 
  2904.  IOCM_EXECUTE_CDB requests.  For all other requests, this field contains a 0. 
  2905.  
  2906.  ControllerCmdLen 
  2907.  contains the length, in bytes, of the command controller buffer. 
  2908.  
  2909.  pControllerCmd 
  2910.  contains a pointer to the controller command buffer in either SCB or CDB 
  2911.  format, based on the CommandModifier field. 
  2912.  
  2913.  ppSCB 
  2914.  contains a 32-bit physical address of the Subsystem Control Block (SCB) for 
  2915.  IOCM_EXECUTE_SCB requests.  For all other requests, this field contains a 0. 
  2916.  
  2917.  Flags 
  2918.  contains flags to define the request, as shown in the following table. 
  2919.  
  2920.   ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  2921.   ΓöéFlag                    ΓöéDescription                         Γöé
  2922.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  2923.   ΓöéPT_DIRECTION_IN         ΓöéData transfer direction.  This flag Γöé
  2924.   Γöé                        Γöédefines the direction of the data   Γöé
  2925.   Γöé                        Γöétransfer for IOCM_EXECUTE_CDB       Γöé
  2926.   Γöé                        Γöérequests.  If set, the data transferΓöé
  2927.   Γöé                        Γöéis from the target device to the    Γöé
  2928.   Γöé                        Γöéhost adapter.  For all other        Γöé
  2929.   Γöé                        Γöérequests, this flag is ignored.     Γöé
  2930.   ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  2931.  
  2932.  On exit, the driver sets the Status and ErrorCode fields of the IORBH to 
  2933.  reflect the results of the IOCC_ADAPTER_PASSTHRU request. 
  2934.  
  2935.  Return Codes 
  2936.  
  2937.  Following is a list of the IOCC_ADAPTER_PASSTHRU error codes: 
  2938.  
  2939.       IOERR_CMD_NOT_SUPPORTED 
  2940.       IOERR_CMD_SYNTAX 
  2941.       IOERR_CMD_SGLIST_BAD 
  2942.       IOERR_CMD_SW_RESOURCE 
  2943.       IOERR_CMD_ABORTED 
  2944.       IOERR_UNIT_NOT_ALLOCATED 
  2945.       IOERR_UNIT_NOT_READY 
  2946.       IOERR_UNIT_PWR_OFF 
  2947.       IOERR_ADAPTER_HOSTBUSCHECK 
  2948.       IOERR_ADAPTER_DEVICEBUSCHECK 
  2949.       IOERR_ADAPTER_OVERRUN 
  2950.       IOERR_ADAPTER_UNDERRUN 
  2951.       IOERR_ADAPTER_DIAGFAIL 
  2952.       IOERR_ADAPTER_TIMEOUT 
  2953.       IOERR_ADAPTER_DEVICE_TIMEOUT 
  2954.       IOERR_ADAPTER_REQ_NOT_SUPPORTED 
  2955.       IOERR_ADAPTER_REFER_TO_STATUS 
  2956.       IOERR_DEVICE_DEVICEBUSCHECK 
  2957.       IOERR_DEVICE_REQ_NOT_SUPPORTED 
  2958.       IOERR_DEVICE_DIAGFAIL 
  2959.       IOERR_DEVICE_BUSY 
  2960.       IOERR_DEVICE_OVERRUN 
  2961.       IOERR_DEVICE_UNDERRUN 
  2962.  
  2963.  For a detailed description of all the return codes, see Error Handling. 
  2964.  
  2965.  
  2966. ΓòÉΓòÉΓòÉ 6.4. Device Helpers (DevHlp) ΓòÉΓòÉΓòÉ
  2967.  
  2968. In this specification, device helpers are a set of C or assembler callable 
  2969. routines that provide operating system services for OS/2 device drivers.  These 
  2970. DevHlp services are RegisterDeviceClass and GetDOSVar. 
  2971.  
  2972.  
  2973. ΓòÉΓòÉΓòÉ 6.4.1. RegisterDeviceClass ΓòÉΓòÉΓòÉ
  2974.  
  2975. At initialization, the driver calls the RegisterDeviceClass DevHlp to register 
  2976. its direct call command handler entry point with the kernel. 
  2977.  
  2978. Processing 
  2979.  
  2980. ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  2981.  
  2982. LDS  SI, ADD_Name            ; DS:SI = Ptr device driver to ASCIIZ name
  2983.                              ;         maximum of 16 chars
  2984. MOV  AX,SEGMENT ADD_Function ; AX:BX = Ptr to driver's DirectCall
  2985. LEA  BX,ADD_Function         ;         Command Handler
  2986. MOV  DI,Device_Flags         ; Must be 0 for adapter device drivers
  2987. MOV  CX,Device_Class         ; Must be 1 for adapter device drivers
  2988. MOV  DL,DevHlp_RegisterADD
  2989. CALL [Device_Help]
  2990.  
  2991. ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  2992.  
  2993. Results 
  2994.  
  2995. ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  2996.  
  2997. 'C' Cleared if successful
  2998. AX = ADDHandle
  2999. 'C' Set if error
  3000. AX = ERROR_NOT_ENOUGH_MEMORY
  3001.                  if CX out of range
  3002.                  if table is full
  3003.  
  3004. ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  3005.  
  3006.  
  3007. ΓòÉΓòÉΓòÉ 6.4.2. GetDOSVar ΓòÉΓòÉΓòÉ
  3008.  
  3009. The existing GetDOSVar DevHlp has been modified to return a pointer to the 
  3010. device class table for a specified device class. This pointer is valid at 
  3011. initialization, task, and interrupt times, and is used by the device managers 
  3012. or filter device drivers to obtain the adapter device driver entry points from 
  3013. the kernel. 
  3014.  
  3015. Processing 
  3016.  
  3017. ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  3018.  
  3019. MOV  AL,DHGETDOSV_DEVICECLASSTABLE  ; Device Class table index
  3020. MOV  CX,Device_Class                ; Must be 1 for DISK adapter device drivers
  3021. MOV  DL,DevHlp_GetDOSVar
  3022. CALL [Device_Help]
  3023.  
  3024. ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  3025.  
  3026. Results 
  3027.  
  3028. ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  3029.  
  3030. 'C' Cleared if successful
  3031. AX:BX = global pointer to a table of registered adapter device driver entry points
  3032. 'C' Set if error
  3033.  
  3034. ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  3035.  
  3036. Remarks 
  3037.  
  3038.    o  Adapter Device Driver Entry Point Table format 
  3039.  
  3040.  Note:  MAX DCTableEntries can be different for each device class, as follows: 
  3041.  
  3042.  Device_Class = 1 (disk) has a maximum of 32 entries 
  3043.  
  3044.  Device_Class = 2 (mouse) has a maximum of 3 entries 
  3045.  
  3046.   ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  3047.  
  3048.   struct DevClassTableEntry {
  3049.         USHORT   DCOffset;
  3050.         USHORT   DCSelector;
  3051.         USHORT   DCFlags;
  3052.         UCHAR    DCName[16];
  3053.   };
  3054.  
  3055.   struct DevClassTableStruc {
  3056.         USHORT                     DCCount;
  3057.         USHORT                     DCMaxCount;
  3058.         struct DevClassTableEntry  DCTableEntries[MAX];
  3059.   };
  3060.  
  3061.   ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  3062.  
  3063.  Note:  The location of the entry point for an adapter device driver can be 
  3064.         derived from its adapter device driver handle, as follows: 
  3065.  
  3066.   ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  3067.  
  3068.   {
  3069.         USHORT i = ADDHandle - 1;
  3070.  
  3071.         AddSelector = pDevClassTable->DCTableEntries[i].DCSelector ;
  3072.         AddOffset   = pDevClassTable->DCTableEntries[i].DCOffset   ;
  3073.   };
  3074.  
  3075.   ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  3076.  
  3077.  
  3078. ΓòÉΓòÉΓòÉ 7. Error Handling ΓòÉΓòÉΓòÉ
  3079.  
  3080. To facilitate the use of device managers across a variety of adapter device 
  3081. drivers this specification defines a set of error codes that should be supplied 
  3082. in the ErrorCode field of the IORB in the event of a failed operation.  The 
  3083. adapter device driver is responsible for translating device error data into 
  3084. these error codes. 
  3085.  
  3086. Use the following guidelines: 
  3087.  
  3088.    o  Do not program an adapter device driver defensively; that is, an adapter 
  3089.       device driver should use the services of the device manager and not 
  3090.       implement excessive safeguards.  On the other hand, an adapter device 
  3091.       driver must be protected against commands outside of its implemented 
  3092.       command set to permit upward compatibility. 
  3093.  
  3094.    o  Program an adapter device driver to protect against timeouts and hung 
  3095.       devices, transient environmental factors, noise, and so forth. 
  3096.  
  3097.    o  Ensure that the adapter device driver has the capability to properly 
  3098.       process any scatter/gather list it receives. 
  3099.  
  3100.    o  Device error information must be translated into the error codes listed 
  3101.       in Summary of Error Codes for the OS/2 Device Manager. 
  3102.  
  3103.       Errors must be fully processed by the adapter device driver, as required 
  3104.       by the DASD Device Manager.  For example, using the 
  3105.       IOERR_ADAPTER_REFER_TO_STATUS error code will result in incorrect 
  3106.       operation. 
  3107.  
  3108.    o  For other device managers, the same error translation is recommended.  If 
  3109.       this translation does not produce a reliable error indication, the 
  3110.       IOERR_ADAPTER_REFER_TO_STATUS code can be used. 
  3111.  
  3112.    o  An IOERR_RETRY flag is included on commands that must be retried by the 
  3113.       adapter device driver. Device managers will ignore this flag because 
  3114.       retries must be performed at the adapter device driver level. This flag 
  3115.       must be ignored also if the device manager has set the IORB_DISABLE_RETRY 
  3116.       bit in the IORB. 
  3117.  
  3118.    o  An IOCM_GET_UNIT_STATUS command is not expected to fail, regardless of 
  3119.       the condition of the underlying devices. 
  3120.  
  3121.    o  The IOCM_GET_DEVICE_TABLE command addresses the entire adapter device 
  3122.       driver rather than a specific unit; ALLOCATION checks should not be 
  3123.       performed. 
  3124.  
  3125.  
  3126. ΓòÉΓòÉΓòÉ 7.1. Summary of Error Codes ΓòÉΓòÉΓòÉ
  3127.  
  3128. This section describes all the adapter device driver error codes. Upon abnormal 
  3129. termination of a direct call command, the adapter device driver sets the 
  3130. IORB_ERROR flag in the IORBH Status field, and sets the ErrorCode field in the 
  3131. IORBH with one of the error codes listed below.  The error codes are grouped by 
  3132. error category.  Where stated below, the adapter device driver is required to 
  3133. retry the function prior to returning the error code to the caller. 
  3134.  
  3135.    o  IOERR_CMD 
  3136.  
  3137.       This error category maps errors related to the IORB command an adapter 
  3138.       device driver receives. 
  3139.  
  3140.            IOERR_CMD_NOT_SUPPORTED 
  3141.            This error indicates that the adapter device driver has not 
  3142.            implemented the requested function, including commands that the 
  3143.            adapter device driver does not understand. 
  3144.  
  3145.            IOERR_CMD_SYNTAX 
  3146.            This error indicates that the ADD has detected an inconsistency in 
  3147.            the IORB that prevents successful execution of the requested 
  3148.            function. 
  3149.  
  3150.            IOERR_CMD_SGLIST_BAD 
  3151.            This error indicates that the adapter device driver cannot accept 
  3152.            the scatter/gather list passed, due to either a defect in the 
  3153.            scatter/gather list (0-length segment) or an underlying hardware 
  3154.            limitation. 
  3155.  
  3156.            IOERR_CMD_SW_RESOURCE (retry required) 
  3157.            This error indicates that the adapter device driver could not 
  3158.            perform the requested function due to the lack of a software 
  3159.            resource (for example, buffer, selector, and so forth). 
  3160.  
  3161.            Note:  The adapter device driver should attempt to recover from this 
  3162.                   condition (using a smaller buffer, for example) even if 
  3163.                   degraded performance results. 
  3164.  
  3165.            IOERR_CMD_ABORTED 
  3166.            This error is returned when an IOCM_ABORT is received for a device 
  3167.            that is currently processing a command.  This error code should be 
  3168.            set regardless of SCSI sense data that indicates a successful 
  3169.            command completion. 
  3170.  
  3171.            IOERR_CMD_ADD_SOFTWARE_FAILURE 
  3172.            This error indicates that the adapter device driver has detected an 
  3173.            internal consistency check that prevents it from executing the 
  3174.            requested IORB. 
  3175.  
  3176.            IOERR_CMD_OS_SOFTWARE_FAILURE 
  3177.            This error indicates that the adapter device driver received an 
  3178.            unexpected error return code from an operating system service.  The 
  3179.            adapter device driver might retry the operation, depending on the 
  3180.            nature of the error. 
  3181.  
  3182.    o  IOERR_UNIT 
  3183.  
  3184.       This error category maps errors related to the condition of an addressed 
  3185.       unit. 
  3186.  
  3187.            IOERR_UNIT_NOT_ALLOCATED 
  3188.            This error indicates that the unit has received an IORB command 
  3189.            prior to being allocated.  This error should be returned to all 
  3190.            commands directed to a unit prior to its receiving an 
  3191.            IOCM_ALLOCATE_UNIT command. 
  3192.  
  3193.            IOERR_UNIT_ALLOCATED 
  3194.            This error indicates that an attempt was made to allocate a unit 
  3195.            that had been allocated previously.  Normally, this error would be 
  3196.            returned in response to IOCM_ALLOCATE_UNIT. 
  3197.  
  3198.            IOERR_UNIT_NOT_READY 
  3199.            This error indicates that a unit is unable to perform an otherwise 
  3200.            valid operation, usually due to an unusual condition on a unit, such 
  3201.            as incorrect spindle speed. 
  3202.  
  3203.            Note:  The adapter device driver should not return this error as the 
  3204.                   result of normal start-up delays on devices. 
  3205.  
  3206.            IOERR_UNIT_PWR_OFF 
  3207.            As an option, the adapter device driver can return this error if it 
  3208.            has access to backup configuration data (CMOS) indicating that a 
  3209.            previously configured device is not available.  If backup 
  3210.            configuration data is not available, a powered-off unit normally 
  3211.            would not appear in the Adapter Device Driver DEVICETABLE; thus, 
  3212.            this error condition would not be possible. 
  3213.  
  3214.    o  IOERR_RBA 
  3215.  
  3216.       This error category pertains to problems accessing a relative block 
  3217.       address (RBA) on a particular unit. 
  3218.  
  3219.            IOERR_RBA_ADDRESSING_ERROR (retry required) 
  3220.            This error indicates that the requested RBA could not be located. 
  3221.            This could be due to a failure to find the appropriate address marks 
  3222.            on a particular device. 
  3223.  
  3224.            IOERR_RBA_LIMIT 
  3225.            This error indicates that the specified RBA exceeded the allowable 
  3226.            maximum for the media currently in the device. 
  3227.  
  3228.            IOERR_RBA_CRC_ERROR (retry required) 
  3229.            This error indicates that the RBA was found; however, the data 
  3230.            requested could not be read successfully. 
  3231.  
  3232.    o  IOERR_MEDIA 
  3233.  
  3234.       This error category pertains to problems relating to the media in a 
  3235.       drive. 
  3236.  
  3237.            IOERR_MEDIA_NOT_FORMATTED 
  3238.            This error indicates that the requested operation could not be 
  3239.            performed since the media in the drive requires low-level 
  3240.            formatting. This includes requests to determine media capacity 
  3241.            (IOCM_GET_MEDIA_GEOMETRY), if such requests require formatted media. 
  3242.  
  3243.            IOERR_MEDIA_NOT_SUPPORTED 
  3244.            This error indicates that the drive detected media that it cannot 
  3245.            support.  If the adapter device driver or device cannot make this 
  3246.            determination directly, an I/O error can be returned in lieu of this 
  3247.            error. 
  3248.  
  3249.            IOERR_MEDIA_WRITE_PROTECT 
  3250.            This error indicates that either the media or the drive is Write 
  3251.            protected or that the media is not writable. 
  3252.  
  3253.            IOERR_MEDIA_CHANGED 
  3254.            This error indicates that the media in the drive might have been 
  3255.            changed (for example, removal and/or insertion of the media has been 
  3256.            detected since the last operation on the device). 
  3257.  
  3258.            IOERR_MEDIA_NOT_PRESENT 
  3259.            This error indicates that the requested operation, requiring media 
  3260.            in the drive, failed because media was not in the drive. 
  3261.  
  3262.    o  IOERR_ADAPTER 
  3263.  
  3264.       This error category pertains to errors that are related to or detected by 
  3265.       the host adapter. 
  3266.  
  3267.            IOERR_ADAPTER_HOSTBUSCHECK 
  3268.            This error pertains to problems caused by the adapter's inability to 
  3269.            communicate with the host CPU.  These errors can include incorrect 
  3270.            parity on data received from the host.  Frequently these errors are 
  3271.            of a severe enough nature to cause shutdown of the host system.  In 
  3272.            such cases, normal host bus management procedures take precedence 
  3273.            over the reporting of this error. 
  3274.  
  3275.            IOERR_ADAPTER_DEVICEBUSCHECK (retry required) 
  3276.            This error pertains to problems caused by the adapter's inability to 
  3277.            communicate with an attached device.  These errors include incorrect 
  3278.            parity on data received from the attached device or incorrect bus 
  3279.            protocols.  These errors are recoverable and should be retried. 
  3280.  
  3281.            IOERR_ADAPTER_OVERRUN (retry required) 
  3282.            This error indicates either that the host adapter has lost data from 
  3283.            a device due to its buffers being filled faster than they can be 
  3284.            emptied by the host CPU or that a device attempted to supply more 
  3285.            data than was expected by the host adapter. 
  3286.  
  3287.            IOERR_ADAPTER_UNDERRUN (retry required) 
  3288.            This error indicates either that the host adapter was unable to 
  3289.            supply data on demand to a device, which caused device operation to 
  3290.            fail, or that a device was expecting more data than the adapter was 
  3291.            programmed to supply. 
  3292.  
  3293.            IOERR_ADAPTER_DIAGFAIL 
  3294.            This error indicates that the host adapter detected an internal 
  3295.            consistency check, preventing its continued operation.  Based on the 
  3296.            severity of the error, the adapter device driver may or may not 
  3297.            retry the requested operation. 
  3298.  
  3299.            IOERR_ADAPTER_TIMEOUT (retry required) 
  3300.            This error indicates that the adapter device driver timeout for an 
  3301.            adapter to respond has been exceeded.  Normally, the device 
  3302.            initiates a retry sequence if this error occurs. 
  3303.  
  3304.            IOERR_ADAPTER_DEVICE_TIMEOUT (retry required) 
  3305.            This error indicates the failure of a device to respond to the host 
  3306.            adapter. 
  3307.  
  3308.            IOERR_ADAPTER_REQ_NOT_SUPPORTED 
  3309.            This error indicates that the requested operation or function is not 
  3310.            supported by this adapter. 
  3311.  
  3312.            IOERR_ADAPTER_REFER_TO_STATUS 
  3313.            This error indicates that the reported error could not be 
  3314.            classified. Additional information can be provided in the IORB 
  3315.            StatusBlock field if requested by the device manager. The ADD should 
  3316.            retry the operation unless the IORB_DISABLE_RETRY bit is set. 
  3317.  
  3318.            IOERR_ADAPTER_NONSPECIFIC (retry required) 
  3319.            This error should be reported when an ADD cannot classify an 
  3320.            adapter-related error condition and an IORB StatusBlock value is not 
  3321.            provided.  If an IORB StatusBlock value is provided, 
  3322.            IOERR_ADAPTER_REFER_TO_STATUS should be returned. 
  3323.  
  3324.    o  IOERR_DEVICE 
  3325.  
  3326.       This error category pertains to errors detected by and relating to 
  3327.       devices connected to a host adapter. 
  3328.  
  3329.            IOERR_DEVICE_DEVICEBUSCHECK (retry required) 
  3330.            This error pertains to a problem in communications between a host 
  3331.            adapter and a device that was detected by the device.  This would 
  3332.            include incorrect parity on data received by the host adapter or a 
  3333.            breakdown in bus protocols between the device and the host adapter. 
  3334.  
  3335.            IOERR_DEVICE_REQ_NOT_SUPPORTED 
  3336.            This error indicates that the requested operation or function is not 
  3337.            supported by this device. 
  3338.  
  3339.            IOERR_DEVICE_DIAGFAIL 
  3340.            This error indicates that the device detected an internal 
  3341.            consistency check that prevents its correct operation.  Depending on 
  3342.            the severity of the problem, the ADD might or might not retry the 
  3343.            operation. 
  3344.  
  3345.            IOERR_DEVICE_BUSY (retry required) 
  3346.            This error indicates that the device is busy and cannot accept the 
  3347.            requested operation.  This error includes, but is not limited to, 
  3348.            SCSI Contingent Allegiance conditions. 
  3349.  
  3350.            IOERR_DEVICE_OVERRUN (retry required) 
  3351.            This error indicates either that the device has lost data due to its 
  3352.            buffers being filled faster than they can be emptied by the host 
  3353.            adapter or that the device attempted to supply more data than the 
  3354.            host adapter could accept. 
  3355.  
  3356.            IOERR_DEVICE_UNDERRUN (retry required) 
  3357.            This error indicates either that the device was unable to obtain 
  3358.            data on demand, which caused device operation to fail, or that 
  3359.            device operation required more data than was supplied by the host 
  3360.            adapter. 
  3361.  
  3362.            IOERR_DEVICE_RESET (retry required) 
  3363.            This error indicates that an unexpected device reset occurred that 
  3364.            caused device operation to fail.  The ADD should retry the failed 
  3365.            operation and report this condition as a recovered error. 
  3366.  
  3367.            IOERR_DEVICE_NONSPECIFIC (retry required) 
  3368.            This error should be returned when the ADD cannot classify a 
  3369.            device-related error and an IORB StatusBlock value was not supplied. 
  3370.            If an IORB StatusBlock value is supplied, 
  3371.            IOERR_ADAPTER_REFER_TO_STATUS  should be returned. 
  3372.  
  3373.  
  3374. ΓòÉΓòÉΓòÉ 7.2. IORB Status Block ΓòÉΓòÉΓòÉ
  3375.  
  3376. The IORB Status Block allows an .ADD driver to provide additional information 
  3377. describing an error condition reported in the IORB ErrorCode field. 
  3378.  
  3379. Currently, only ADD drivers controlling SCSI devices are required to return a 
  3380. StatusBlock when requested to do so. When an ADD driver does return a 
  3381. StatusBlock, it must set the IORB_REQ_STATUSBLOCK bit in the RequestControl 
  3382. flags to indicate that the StatusBlock has been updated. 
  3383.  
  3384.  
  3385. ΓòÉΓòÉΓòÉ 7.2.1. SCSI Status Block Format (SCSI_STATUS_BLOCK) ΓòÉΓòÉΓòÉ
  3386.  
  3387. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  3388. ΓöéField Name      ΓöéC Type             ΓöéLengthΓöéDescription         Γöé
  3389. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  3390. ΓöéFlags           ΓöéUSHORT             ΓöéDW    ΓöéFlags               Γöé
  3391. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  3392. ΓöéAdapterErrorCodeΓöéUSHORT             ΓöéDW    ΓöéAdapter related     Γöé
  3393. Γöé                Γöé                   Γöé      Γöéerror code          Γöé
  3394. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  3395. ΓöéTargetStatus    ΓöéUCHAR              ΓöéDB    ΓöéSCSI Target status  Γöé
  3396. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  3397. ΓöéResidualLength  ΓöéULONG              ΓöéDD    ΓöéResidual byte count Γöé
  3398. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  3399. ΓöéAdapterDiagInfo ΓöéUCHAR              ΓöéDB(8) ΓöéAdapter specific    Γöé
  3400. Γöé                Γöé                   Γöé      Γöéinfo                Γöé
  3401. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  3402. ΓöéReqSenseLen     ΓöéUSHORT             ΓöéDW    ΓöéRequest Sense Data  Γöé
  3403. Γöé                Γöé                   Γöé      Γöéallocation          Γöé
  3404. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  3405. ΓöéSenseData       ΓöéPSCSI_REQSENSE_DATAΓöéDD    ΓöéRequest Sense BufferΓöé
  3406. Γöé                Γöé                   Γöé      Γöépointer             Γöé
  3407. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  3408.  
  3409.  
  3410. ΓòÉΓòÉΓòÉ 7.2.1.1. Flags ΓòÉΓòÉΓòÉ
  3411.  
  3412. Flags contain bit flags indicating the validity of other fields within the SCSI 
  3413. Status Block. 
  3414.  
  3415. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  3416. ΓöéFlag                          ΓöéDescription                   Γöé
  3417. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  3418. ΓöéSTATUS_SENSEDATA_VALID        ΓöéSet by the ADD driver to      Γöé
  3419. Γöé                              Γöéindicate that SCSI Sense Data Γöé
  3420. Γöé                              Γöéwas recovered from the target Γöé
  3421. Γöé                              Γöéand placed in the buffer      Γöé
  3422. Γöé                              Γöéindicated by SenseData.       Γöé
  3423. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  3424. ΓöéSTATUS_RESIDUAL_VALID         ΓöéSet by the ADD driver to      Γöé
  3425. Γöé                              Γöéindicate that the target did  Γöé
  3426. Γöé                              Γöénot transfer the number of    Γöé
  3427. Γöé                              Γöébytes requested. If set the   Γöé
  3428. Γöé                              ΓöéADD driver is required to     Γöé
  3429. Γöé                              Γöéreturn a correct              Γöé
  3430. Γöé                              ΓöéResidualCount.                Γöé
  3431. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  3432. ΓöéSTATUS_DIAGINFO_VALID         ΓöéSet by the ADD driver if it   Γöé
  3433. Γöé                              Γöéreturned adapter specific     Γöé
  3434. Γöé                              Γöédiagnostic information.       Γöé
  3435. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  3436. ΓöéSTATUS_DISABLE_REQEST_SENSE   ΓöéSet by the client to indicate Γöé
  3437. Γöé                              Γöéthat the ADD driver must not  Γöé
  3438. Γöé                              Γöéissue a Request Sense Command Γöé
  3439. Γöé                              Γöéto the target regardless of   Γöé
  3440. Γöé                              Γöéthe SCSI status reported.     Γöé
  3441. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  3442.  
  3443. Note:  (SCSI_DISABLE_REQUEST_SENSE  0x0008) 
  3444.  
  3445. This is a proposed addition to the current ADD/DM specification to simplify the 
  3446. implementation of Device Managers which have clients that explicitly issue 
  3447. their own Request Sense operation. When this bit is set, the ADD driver will 
  3448. not be able to accurately determine an IORB ErrorCode. In this case, the ADD 
  3449. driver must return IOERR_DEVICE_NON_SPECIFIC in the IORB ErrorCode field if the 
  3450. target reports other than "GOOD" status. 
  3451.  
  3452.  
  3453. ΓòÉΓòÉΓòÉ 7.2.1.2. AdapterErrorCode ΓòÉΓòÉΓòÉ
  3454.  
  3455. An AdapterErrorCode indicates that an adapter related error condition occurred. 
  3456. For example, a SCSI operation which completed successfully but resulted in an 
  3457. adapter detected underrun/overrun would report this condition in this field. 
  3458. The error codes used are defined by the IOERR_* codes in the previous section. 
  3459. If no adapter error condition was detected, then this field must be cleared by 
  3460. the ADD driver. 
  3461.  
  3462. Note:  It is possible for a SCSI operation to fail, but this field would be 
  3463.        zero.  This would be the usual case for target generated error 
  3464.        conditions. 
  3465.  
  3466. Conversely, it is possible for a SCSI operation to succeed at the IORB level, 
  3467. for example, no IORB Error code reported, but this field would non-zero. This 
  3468. would be the case when the SCSI adapter detected an overrun/underrun on an 
  3469. otherwise successful SCSI operation. 
  3470.  
  3471.  
  3472. ΓòÉΓòÉΓòÉ 7.2.1.3. TargetStatus ΓòÉΓòÉΓòÉ
  3473.  
  3474. TargetStatus indicates the SCSI status byte returned by the target during the 
  3475. SCSI status bus phase. 
  3476.  
  3477.  
  3478. ΓòÉΓòÉΓòÉ 7.2.1.4. ResidualLength ΓòÉΓòÉΓòÉ
  3479.  
  3480. ResidualLength indicates the difference between the requested data transfer 
  3481. length in the IORB and the actual number of bytes transferred by the target. 
  3482. This field must always be set to as a non-negative number.  The specific error 
  3483. condition Overrun vs Underrun should be indicated by setting the appropriate 
  3484. error code in AdapterErrorCode. If the ADD driver is able to return an accurate 
  3485. ResidualLength, it must set the STATUS_RESIDUAL_VALID bit in the Flags field. 
  3486.  
  3487.  
  3488. ΓòÉΓòÉΓòÉ 7.2.1.5. AdapterDiagInfo ΓòÉΓòÉΓòÉ
  3489.  
  3490. The AdapterDiagInfo field consists of eight bytes the ADD supplier may use to 
  3491. report vendor specific information to assist in local problem determination. If 
  3492. this information is returned the ADD driver must set the bit 
  3493. STATUS_DIAGINFO_VALID in the Flags field. 
  3494.  
  3495.  
  3496. ΓòÉΓòÉΓòÉ 7.2.1.6. ReqSenseLen ΓòÉΓòÉΓòÉ
  3497.  
  3498. The ReqSenseLen field indicates the size of the SenseData buffer available. If 
  3499. the target indicates a SCSI status of CHECK_CONDITION then the ADD driver 
  3500. should issue a SCSI Request_Sense command with a data transfer length indicate 
  3501. by ReqSenseLen. 
  3502.  
  3503. Note:  ADD drivers are required to obtain Sense Data whether or not a Status 
  3504.        Block is present. In the absence of a StatusBlock, this would usually be 
  3505.        done using internal storage of the ADD driver. 
  3506.  
  3507. However, if a status block is present, then the ADD driver must transfer no 
  3508. less than the number of bytes indicated by the ReqSenseLen field and provide 
  3509. this data in the SenseData buffer. 
  3510.  
  3511.  
  3512. ΓòÉΓòÉΓòÉ 7.2.1.7. SenseData ΓòÉΓòÉΓòÉ
  3513.  
  3514. The SenseData field points to a data buffer to receive SenseData returned by 
  3515. the SCSI target as a result of a REQUEST SENSE operation issued by the ADD 
  3516. driver. 
  3517.  
  3518.  
  3519. ΓòÉΓòÉΓòÉ 8. Adapter Device Driver Command-Line Parameters ΓòÉΓòÉΓòÉ
  3520.  
  3521. Following is a diagram of an adapter device driver command-line structure: 
  3522.  
  3523. BASEDEV=AddName.ADDΓöÇΓöÇ
  3524.  
  3525. ΓöÇΓöÇDriver-ParametersΓöÇΓöÇAdapter-ParametersΓöÇΓöÇUnit-ParametersΓöÇΓö¼ΓöÉ
  3526.                                                           ΓöéΓöé
  3527.                      Γöé                    ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿΓöé
  3528.                      ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  3529.  
  3530.  
  3531. ΓòÉΓòÉΓòÉ 8.1. Syntax Conventions ΓòÉΓòÉΓòÉ
  3532.  
  3533. Following are the adapter device driver syntax conventions: 
  3534.  
  3535.    o  Command-line contents are case-insensitive. 
  3536.    o  All command-line options begin with the slash character (/). 
  3537.    o  The exclamation character (!) is a negation operator; that is, it negates 
  3538.       the option that follows it. The colon character (:) indicates that a list 
  3539.       of one or more unit IDs follows the option. 
  3540.    o  The alphabetic d character (<d>) indicates a decimal digit. 
  3541.    o  The alphabetic h character (<h>) indicates a hexadecimal digit. 
  3542.  
  3543.  
  3544. ΓòÉΓòÉΓòÉ 8.2. Command-Line Parameter Classes ΓòÉΓòÉΓòÉ
  3545.  
  3546. An adapter device driver command line contains three classes of parameters: 
  3547.  
  3548.    o  Adapter Device Driver Parameters 
  3549.       Adapter device driver parameters apply to all adapters and units managed 
  3550.       by an adapter device driver unless overridden by adapter parameters or 
  3551.       unit parameters. 
  3552.    o  Adapter Parameters 
  3553.       Adapter parameters begin with the (/A) switch and identify a specific 
  3554.       adapter card. Parameters following the (/A) switch apply only to the 
  3555.       adapter card indicated. 
  3556.    o  Unit Parameters 
  3557.       Unit parameters apply specific units on an adapter. 
  3558.  
  3559.  Note:  In some cases, a parameter may appear as both an Adapter parameter and 
  3560.         a Unit parameter. If the host adapter hardware supports specifying a 
  3561.         parameter on a per-unit basis, then it is recommended that the adapter 
  3562.         device driver support both the per-Adapter and per-Unit forms of the 
  3563.         parameter. 
  3564.  
  3565.  
  3566. ΓòÉΓòÉΓòÉ 8.3. SCSI-Specific Parameters ΓòÉΓòÉΓòÉ
  3567.  
  3568. The following diagram illustrates a SCSI adapter device driver parameter 
  3569. structure: 
  3570.  
  3571. SCSI-Driver-Parameters::= ΓöÇΓö¼ΓöÇΓöÇ /<!>SN ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  3572.                            Γö£ΓöÇΓöÇ /<!>ET ΓöÇ
  3573.                            Γö£ΓöÇΓöÇ /V     ΓöÇΓöé
  3574.                            ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  3575.  
  3576. SCSI-Adapter-Parameters::=
  3577.          ΓöÇΓöÇΓöÇ /A:d ΓöÇΓö¼ΓöÇΓöÇ /S:d   ΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇ /<!>DM ΓöÇΓöÇΓöÇΓöÇΓöÇ
  3578.                     Γö£ΓöÇΓöÇ /P:hhhhΓöÇ Γö£ΓöÇΓöÇ /<!>SN ΓöÇ
  3579.                     ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ Γö£ΓöÇΓöÇ /<!>SN ΓöÇΓöé
  3580.                                    Γö£ΓöÇΓöÇ /<!>ET ΓöÇΓöé
  3581.                                    Γö£ΓöÇΓöÇ /I     ΓöÇΓöé
  3582.                                    ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  3583.  
  3584. SCSI-Unit-Parameters::= ΓöÇΓöÇΓö¼ΓöÇΓöÇ /<!>DM  ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇ
  3585.                          Γö£ΓöÇΓöÇ /<!>SM  ΓöÇ         Γöé
  3586.                          ΓöéΓö£ΓöÇΓöÇ /<!>SN  ΓöÇΓöé         Γöé
  3587.                          ΓöéΓö£ΓöÇΓöÇ /<!>ET  ΓöÇΓöé         Γöé
  3588.                          ΓöéΓö£ΓöÇΓöÇ /<!>HCR ΓöÇΓöé         Γöé
  3589.                          ΓöéΓö£ΓöÇΓöÇ /<!>HCW ΓöÇΓöé         Γöé
  3590.                          ΓöéΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ         Γöé
  3591.                          ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  3592.  
  3593. SCSI-Target-IDs::=      ΓöÇΓö¼Γö¼ΓöÇΓöÇ d     ΓöÇΓöÇΓö¼Γö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ (d=0-7)
  3594.                          ΓöéΓööΓöÇΓöÇ (d,d) ΓöÇΓöÇΓöÿΓöé
  3595.                          ΓööΓöÇΓöÇΓöÇ ,     ΓöÇΓöÇΓöÇΓöÿ
  3596.  
  3597. Note:  All SCSI adapter device drivers must support the following parameters: 
  3598.  
  3599.  /V     Verbose 
  3600.  /A     Adapter Identification 
  3601.  /DM    Enable/Disable DASD Manager Support 
  3602.  /SM    Enable/Disable SCSI Manager Support 
  3603.  
  3604.  To insure support of various CD-ROM drives the implementation of the following 
  3605.  parameters is recommended: 
  3606.  
  3607.  /SN    Enable/Disable Synchronous Negotiation 
  3608.  /ET    Enable/Disable Embedded Target Support 
  3609.  
  3610.  Support of the remaining parameters is optional. 
  3611.  
  3612.  SCSI Adapter Device Driver Parameters 
  3613.  
  3614.  /SN       Synchronous Negotiation 
  3615.  
  3616.  This parameter indicates a SCSI Host Adapter should attempt to initiate 
  3617.  synchronous data transfers. Negating this parameter (/!SN) indicates that the 
  3618.  SCSI Host Adapter must not attempt to initiate synchronous data transfers. 
  3619.  
  3620.  /ET       Embedded Targets 
  3621.  
  3622.  This parameter indicates that the adapter device driver must search each SCSI 
  3623.  Target for logical units. Negating this parameter (/!ET) indicates that the 
  3624.  adapter device driver should only check LUN 0 on each SCSI Target regardless 
  3625.  of whether additional Logical Units are present. 
  3626.  
  3627.  /V        Verbose 
  3628.  
  3629.  This parameter indicates that the adapter device driver must display 
  3630.  diagnostic information during the OS/2 system initialization. The 
  3631.  DevHlp_Save_Message device help routine should be used to display this 
  3632.  information. 
  3633.  
  3634.  The following format for the displayed information is recommended: 
  3635.  
  3636.   ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  3637.  
  3638.   XYZ-2010 OS/2 2.0 Driver (yymmdd)
  3639.   Copyright (c) 1993 XYZ Inc. All Rights Reserved
  3640.    Adapter: 0 Base Port: 0123  IRQ: 10
  3641.     Target: 0 LUN: 0  SCSI_Inquiry_Data (Bytes 8-35)
  3642.     Target: 1 LUN: 0  SCSI_Inquiry_Data
  3643.     Target: 2 LUN: 0  SCSI_Inquiry_Data
  3644.  
  3645.   ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  3646.  
  3647.  /A:d      Adapter Index 
  3648.  
  3649.  This parameter specifies the ordering of adapters in the DEVICETABLE returned 
  3650.  by the adapter device driver. Normally, adapters are numbered consecutively, 
  3651.  starting at 0. 
  3652.  
  3653.  /S:d      Adapter Slot ID 
  3654.  
  3655.  For host systems with individually addressable slots, the adapter device 
  3656.  driver can designate the location of a host adapter by its slot number, 
  3657.  according to the host system's slot addressing scheme.  Typically <d> is a 
  3658.  small 0-based number specifying the host system slot. 
  3659.  
  3660.  /P::hhhh  Adapter Base I/O Port Address 
  3661.  
  3662.  For host systems with non-addressable slots, the adapter device driver can 
  3663.  designate the location of a host adapter by its base I/O port address. 
  3664.  Typically, <hhhh> is a 3-4 digit hexadecimal number. 
  3665.  
  3666.  Note:  In cases where a specific adapter designation is not made, the adapter 
  3667.         device driver can apply its own ordering, based on either the base I/O 
  3668.         port address or the physical slot address. 
  3669.  
  3670.  Note:  In general, an adapter device driver should choose to support only one 
  3671.         of the above addressing methods.  If an adapter device driver supports 
  3672.         more than one addressing method, it must not permit a mix of addressing 
  3673.         methods on a single line. 
  3674.  
  3675.  /DM       DASD Manager Support 
  3676.  
  3677.  This parameter indicates that this unit must be supported by the IBM-supplied 
  3678.  DASD device manager ( OS2DASD.DMD).  If this parameter is not specified, the 
  3679.  default is to permit DASD device manager support.  If this parameter is 
  3680.  negated, the adapter device driver must set the UF_NODASD_SUPT flag in the 
  3681.  UnitFlags field of the DEVICETABLE entry for the device.  This parameter is 
  3682.  used in conjunction with an OEM-supplied device manager to permit control of 
  3683.  specific DASD and SCSI targets. 
  3684.  
  3685.  /SM       SCSI Manager Support 
  3686.  
  3687.  This parameter indicates that this unit must be supported by the IBM-supplied 
  3688.  SCSI device manager (OS2SCSI.DMD).  If this parameter is not specified, the 
  3689.  default setting is to permit SCSI device manager support.  If this parameter 
  3690.  is negated, the adapter device driver must set the UF_NOSCSI_SUPT flag in the 
  3691.  UnitFlags field of the DEVICETABLE entry for the device.  This parameter is 
  3692.  used in conjunction with an OEM-supplied device manager to permit control of 
  3693.  specific non-DASD and non-SCSI targets. 
  3694.  
  3695.  /I        Ignore Adapter 
  3696.  
  3697.  This parameter indicates that adapter device driver should treat the indicated 
  3698.  adapter as an uninstalled adapter.  The purpose of this parameter is to allow 
  3699.  third party software to manage an entire adapter that would normally be 
  3700.  managed by the adapter device driver.  When specified, the driver must not 
  3701.  create a device table entry for the indicated adapter. 
  3702.  
  3703.  /HCW      Enable Hardware Write Caching 
  3704.  
  3705.  This parameter is used to control adapter-implemented deferred-write caching 
  3706.  for those adapters that support it.  If this parameter is not specified, this 
  3707.  feature must be enabled.  If this parameter is negated, deferred write caching 
  3708.  must be disabled on the specified units. Host adapters that do not implement 
  3709.  on-board caching, or that do not have direct control over the operation of the 
  3710.  cache, must ignore this parameter if specified. 
  3711.  
  3712.  /HCR      Enable Hardware Read Caching 
  3713.  
  3714.  This parameter is used to control adapter-implemented Read caching for those 
  3715.  adapters that support it.  If this parameter is not specified, this feature 
  3716.  must be enabled.  If this parameter is negated, Read caching must be disabled 
  3717.  on the specified units.  Host adapters that do not implement on-board caching, 
  3718.  or do not have direct control over the operation of the cache, must ignore 
  3719.  this parameter if specified. 
  3720.  
  3721.  d,d...    SCSI Embedded Target ID 
  3722.  
  3723.  The above parameters can be followed by a colon (:) with a list of SCSI target 
  3724.  IDs, separated by commas.  The logical unit number (LUN) for the specified 
  3725.  SCSI target is presumed to be 0. 
  3726.  
  3727.  (d,d),(d,d)...SCSI Target/LUN ID 
  3728.  
  3729.  The above parameters can be followed by a colon (:) with a list of SCSI 
  3730.  target/LUN pairs in parentheses. 
  3731.  
  3732.  
  3733. ΓòÉΓòÉΓòÉ 8.4. Diskette-Specific Parameters ΓòÉΓòÉΓòÉ
  3734.  
  3735. The following diagram illustrates a diskette-specific adapter device driver 
  3736. parameter structure: 
  3737.  
  3738. Diskette-Driver-Parameters::= ΓöÇΓö¼ΓöÇΓöÇ /MCA ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  3739.                                Γöé          
  3740.                                ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  3741. Diskette-Adapter-Parameters::=
  3742.                    ΓöÇΓöÇΓöÇ /A:d ΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇ
  3743.                               Γö£ΓöÇΓöÇ /DMZ:d     ΓöÇΓöé      Γöé
  3744.                               ΓöéΓö£ΓöÇΓöÇ /IRQ:dd    ΓöÇΓöé      Γöé
  3745.                               ΓöéΓö£ΓöÇΓöÇ /PORT:hhhh ΓöÇΓöé      Γöé
  3746.                               ΓöéΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ      Γöé
  3747.                               ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  3748.  
  3749. Diskette-Unit-Parameters::=
  3750.                    ΓöÇΓöÇΓöÇ /U:d ΓöÇΓöÇΓö¼ΓöÇ /<!>AHS             ΓöÇΓöÇΓö¼Γö¼Γö¼ΓöÇ
  3751.                              Γö£ΓöÇΓöÇ /F:Drive Capacity   ΓöÇΓöéΓöéΓöé
  3752.                     Γöé         ΓöéΓö£ΓöÇΓöÇ /SPEC:Specify-Bytes ΓöÇΓöéΓöéΓöé
  3753.                     Γöé         ΓöéΓö£ΓöÇΓöÇ /CL:Changeline-Type ΓöÇΓöéΓöéΓöé
  3754.                     Γöé         ΓöéΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿΓöéΓöé
  3755.                     Γöé         ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿΓöé
  3756.                     ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  3757.  
  3758. Drive Capacity  =  ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇ 360KB  ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  3759.                                Γö£ΓöÇΓöÇ 1.2MB  ΓöÇ
  3760.                                Γö£ΓöÇΓöÇ 720KB  ΓöÇΓöÇΓöé
  3761.                                Γö£ΓöÇΓöÇ 1.44MB ΓöÇΓöé
  3762.                                Γö£ΓöÇΓöÇ 2.88MB ΓöÇΓöé
  3763.                                ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  3764.  
  3765. Specify-Bytes   =  ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ hh,hh  ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  3766.  
  3767.  
  3768. Changeline-Type =  ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼Γö¼ΓöÇ /AT  ΓöÇΓöÇΓö¼Γö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  3769.                               ΓöéΓööΓöÇΓöÇ /PS2 ΓöÇΓöÇΓöÿΓöé
  3770.                               ΓööΓöÇΓöÇΓöÇ None ΓöÇΓöÇΓöÇΓöÿ
  3771.  
  3772. Diskette Adapter Device Driver Parameters 
  3773.  
  3774.  /MCA           Install Adapter Device Driver on uChannel machines 
  3775.  
  3776.  This parameter informs the IBM1FLPY adapter device driver to install on 
  3777.  uChannel machines.  The default is not to install on uChannel machines. 
  3778.  
  3779.  /DMA:d    DMA Channel Number 
  3780.  
  3781.  This parameter specifies the DMA channel number that must be used for the 
  3782.  diskette adapter.  DMA Channel 2 is used if this parameter is not specified. 
  3783.  
  3784.  /IRQ:dd   Interrupt Level 
  3785.  
  3786.  This parameter specifies the interrupt level that must be used for the 
  3787.  diskette adapter.  IRQ 6 is used if this parameter is not specified. 
  3788.  
  3789.  /U:d      Unit Number 
  3790.  
  3791.  This parameter specifies the diskette drive number to which options following 
  3792.  this parameter apply.  Diskette drive numbers start at 0. 
  3793.  
  3794.  Note:  To define a third diskette drive on a controller, the /U and /F 
  3795.         parameters must be specified. 
  3796.  
  3797.  /AHS      Automatic Head Switch 
  3798.  
  3799.  This parameter informs the driver to use a diskette controller feature that 
  3800.  automatically switches from Head 0 -> 1.  This improves performance by reading 
  3801.  both sides of the diskette in a single operation.  The default is to enable 
  3802.  this option.  It may be disabled by negating this parameter. 
  3803.  
  3804.  /F:cccc   Drive Capacity 
  3805.  
  3806.  This parameter overrides the BIOS-supplied drive capacity information, 
  3807.  enabling the use of drives that the host system's BIOS does not properly 
  3808.  recognize.  The drive capacity must be suffixed by a (KB) or an (MB). 
  3809.  
  3810.  /SPEC:hh,hhDrive Specify Bytes 
  3811.  
  3812.  This parameter permits the setting of diskette controller specify bytes.  This 
  3813.  is used for drives with unusual or non-standard timing requirements.  The 
  3814.  correct setting of this parameter varies with drive manufacturers and must be 
  3815.  obtained from the drive vendor. 
  3816.  
  3817.  /CL:clt   Changeline Type 
  3818.  
  3819.  This parameter permits changing the interpretation of the media change 
  3820.  detection signals.  The changeline signal can be interpreted according to 
  3821.  PC-AT* or PS/2* standards; or checking of the changeline signal can be 
  3822.  disabled using this parameter. 
  3823.  
  3824.  
  3825. ΓòÉΓòÉΓòÉ 8.5. ST-506/IDE-Specific Parameters ΓòÉΓòÉΓòÉ
  3826.  
  3827. The following diagram illustrates a ST-506/IDE unit parameter structure: 
  3828.  
  3829. ST-506-Driver-Parameters::= ΓöÇΓö¼ΓöÇ /V ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  3830.                              Γöé        
  3831.                              ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  3832. ST-506-Adapter-Parameters::=
  3833.        ΓöÇΓöÇ /A:d ΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  3834.                   Γö£ΓöÇΓöÇ /I         ΓöÇ         Γöé
  3835.                  Γöé Γö£ΓöÇΓöÇ /<!>R      ΓöÇΓöé         Γöé
  3836.                  Γöé Γö£ΓöÇΓöÇ /IRQ:dd    ΓöÇΓöé         Γöé
  3837.                  Γöé Γö£ΓöÇΓöÇ /PORT:hhhh ΓöÇΓöé         Γöé
  3838.                  Γöé ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ         Γöé
  3839.                  ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  3840.  
  3841. ST-506-Unit-Parameters::=
  3842.       ΓöÇΓöÇΓöÇ /U:d ΓöÇΓöÇΓöÇΓö¼ΓöÇ /GEO ΓöÇΓö¼ΓöÇ dd               ΓöÇΓöÇΓö¼Γö¼Γö¼Γö¼ΓöÇ
  3843.                  Γöé         Γö£ΓöÇΓöÇ (dddd,dddd,dddd) ΓöÇΓöéΓöéΓöéΓöé
  3844.        Γöé          ΓöéΓöé         ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿΓöéΓöéΓöé
  3845.        Γöé          ΓöéΓö£ΓöÇΓöÇ /T:dddd  ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñΓöéΓöé
  3846.        Γöé          ΓöéΓö£ΓöÇΓöÇ /SMS     ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñΓöéΓöé
  3847.        Γöé          ΓöéΓööΓöÇΓöÇ /LBA     ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿΓöéΓöé
  3848.        Γöé          ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿΓöé
  3849.        ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  3850.  
  3851. ST-506/IDE Adapter Device Driver Parameters 
  3852.  
  3853.  /V        Verbose - Display driver information 
  3854.  
  3855.  This parameter displays the adapter device driver level, disk controller 
  3856.  status and drive geometry information during the OS/2 system initialization. 
  3857.  
  3858.  /I        Ignore Adapter 
  3859.  
  3860.  This parameter indicates that the IBM1S506 driver should not attempt to 
  3861.  initialize the adapter indicated. 
  3862.  
  3863.  This adapter device driver automatically attempts to locate and initialize 
  3864.  both the primary and secondary adapters. In some cases other DASD controllers 
  3865.  may appear between the primary and secondary IDE controllers. In these cases 
  3866.  the system should be configured as follows: 
  3867.  
  3868.   ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  3869.  
  3870.   BASEDEV=IBM1S506.ADD /V /A:1 /I
  3871.   BASEDEV=MOREDASD.ADD
  3872.   BASEDEV=IBM1S506.ADD /V /A:0 /I
  3873.  
  3874.   ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  3875.  
  3876.  /<!>R     Reset Adapter 
  3877.  
  3878.  If this parameter is negated (/!R), adapter resets are disabled. In most cases 
  3879.  resets are beneficial to assist in recovering from transient hardware problems 
  3880.  such as lost interrupts, timeouts, or commands a particular adapter may not 
  3881.  support. 
  3882.  
  3883.  However, for some ESDI adapters, options set by vendor unique commands such as 
  3884.  "Sector Sparing" may be lost after a reset. Setting this switch is recommended 
  3885.  for ESDI adapters with disks formatted using "Sector Sparing." 
  3886.  
  3887.  /IRQ:dd   Interrupt Level 
  3888.  
  3889.  This parameter overrides the default IRQ Number for the adapter indicated. The 
  3890.  default IRQ address for Adapter 0 is (14) and for Adapter 1 is (15). 
  3891.  
  3892.  /U:d      Unit Number 
  3893.  
  3894.  This parameter specifies the fixed disk drive number to which options 
  3895.  following this parameter apply.  Fixed disk drive numbers start at 0. 
  3896.  
  3897.  /GEO      Drive Geometry 
  3898.  
  3899.  This parameter overrides the Cylinder/Head/Sector geometry for the unit 
  3900.  selected. The fourth parameter is the Write Precompensation Cylinder which may 
  3901.  be omitted for drives which do not require precompensation. 
  3902.  
  3903.  As an alternate format standard BIOS drive types may be used. Types (0-47) are 
  3904.  supported. User defined types 47-49 should be entered directly by in the 
  3905.  previous format. 
  3906.  
  3907.  If a second set of geometry is present, then the first set specifies the 
  3908.  physical geometry of the drive, and the second set indicates the translated 
  3909.  geometry which is reported to the OS/2 system. 
  3910.  
  3911.  /T:dddd   Drive Timeout 
  3912.  
  3913.  This parameter indicates the total allowable error recover time for a request. 
  3914.  Error recovery times < 5 seconds will be ignored. This parameter defaults to 
  3915.  30 seconds. A shorter interval may be desirable for fault tolerant 
  3916.  applications. 
  3917.  
  3918.  /SMS      Enable Multple Block I/O Support 
  3919.  
  3920.  This parameter enables Set Multiple Support which the improves performance of 
  3921.  some IDE drives. If the drive does not have this feature, this switch will be 
  3922.  ignored. The /V - (Verbose) option will indicate whether this feature has been 
  3923.  enabled on a particular drive. 
  3924.  
  3925.  /LBA      Enable LBA Support 
  3926.  
  3927.  This parameter enables Logical Block Support for IDE drives which support this 
  3928.  option. The /V - (Verbose) option will indicate whether this feature has been 
  3929.  enabled on a particular drive. 
  3930.  
  3931.  
  3932. ΓòÉΓòÉΓòÉ 9. DASD IOCtl Device Driver Test Tool ΓòÉΓòÉΓòÉ
  3933.  
  3934. This chapter explains the DASD IOCtl Device Driver Test Tool. 
  3935.  
  3936.  
  3937. ΓòÉΓòÉΓòÉ 9.1. Overview ΓòÉΓòÉΓòÉ
  3938.  
  3939. The DASD IOCtl Functional Verification Tests (FVTs) exercise the Application 
  3940. Program Interfaces (APIs) defined for the DosDevIOCtl interface of DASD device 
  3941. drivers.  The tests are implemented with the Device Driver Test Tool (DDTT). 
  3942. Each test is defined in a script file and these files can be modified using a 
  3943. text editor to create additional, specialized test cases. See Using the Device 
  3944. Driver Test Tool (DDTT) for a description of the DDTT.  The test scripts give 
  3945. the user a repeatable set of tests that demonstrate DASD function and 
  3946. performance.  Errors are reported and are easily isolated to a specific test 
  3947. sequence and API. 
  3948.  
  3949. User input and output from each thread of the DASD tests is by way of a 
  3950. separate Presentation Manager window.  Multi-threaded test cases log all 
  3951. information to single log file, clearly indicating the actual execution 
  3952. sequence in the event of errors. 
  3953.  
  3954.  
  3955. ΓòÉΓòÉΓòÉ 9.2. DASD IOCtl Test Architecture ΓòÉΓòÉΓòÉ
  3956.  
  3957. The DDTT provides a common front-parser for test case scripts and also tests 
  3958. several devices and APIs. The following DDTT DASD IOCtl-specific stub code and 
  3959. grammar files are required: 
  3960.  
  3961.    o  DDTDASD.DLL 
  3962.  
  3963.    o  DASD.GRA 
  3964.  The C++ source code DDTCDROM.DLL is available on the IBM Developer Connection 
  3965.  Device Driver Kit for OS/2.  The following required, common components of DDTT 
  3966.  implement DDTT's programmable parser and common test functions such as SET, 
  3967.  LOOP, and PAUSE: 
  3968.  
  3969.    o  DDTT.EXE 
  3970.  
  3971.    o  DDTT.DLL 
  3972.  
  3973.    o  GLOBAL.DLL 
  3974.  
  3975.    o  GLOBAL.GRA 
  3976.  
  3977.  
  3978. ΓòÉΓòÉΓòÉ 9.3. Installation ΓòÉΓòÉΓòÉ
  3979.  
  3980. There are two directory structures in the IBM Developer Connection Device 
  3981. Driver Kit for OS/2 that utilize test suites. The TESTCERT substructure 
  3982. contains the executables; the test cases and the TESTTOOL substructure contains 
  3983. the files required to change the code for a particular DLL and rebuild. 
  3984.  
  3985. The following procedure describes installation for running test cases: 
  3986.  
  3987.    1. Copy the executable and DASD IOCtl test case files from the IBM Developer 
  3988.       Connection Device Driver Kit for OS/2 CD-ROM disc to the hard drive.  All 
  3989.       the executable (.EXE and .DLL) files can reside in one directory, such as 
  3990.       \TDASDIO. Test-case script and command files can also be placed in this 
  3991.       directory on the hard disk. If the target directory is C:\TDASDIO and the 
  3992.       E drive contains the information from the IBM Developer Connection Device 
  3993.       Driver Kit for OS/2 CD-ROM disc, then use the following commands to copy 
  3994.       the DASD IOCtl test suite: 
  3995.  
  3996.                [C:\]md tdasdio
  3997.  
  3998.                [C:\]cd tdasdio
  3999.  
  4000.                [C:\tdasdio]copy e:\ddk_x86\testcert\storage\function\dasd\ioctl\*
  4001.  
  4002.                [C:\tdasdio]copy e:\ddk_x86\testcert\general\ddtt\*
  4003.  
  4004.    2. Add C:\TDASDIO to the LIBPATH and PATH in the CONFIG.SYS file. 
  4005.  
  4006.    3. Reboot your machine so the new LIBPATH entry and DEVICE statement take 
  4007.       effect. 
  4008.  
  4009.  
  4010. ΓòÉΓòÉΓòÉ 9.4. Test-Case Execution ΓòÉΓòÉΓòÉ
  4011.  
  4012. There are two different ways to run DASD tests.  One way is to run the program 
  4013. from a command file.  To run the command file first make sure you are in the 
  4014. directory in which the files were installed into and then type in TEST.  The 
  4015. command file will run all of the script files. 
  4016.  
  4017. Another way to run DASD IOCtl tests is to run each script file individually. 
  4018. To run one script file at a time, see Description of Test Cases for a 
  4019. description of each script file. After deciding on a script file to run, type 
  4020. in DDTT followed by the script file name: 
  4021.  
  4022.   [C:\fvt\ddt\ioctl]DDTT GLPARAMS.SCR 
  4023.  
  4024. After the script has finished executing, control will transfer back to the OS/2 
  4025. Window.  If you decide to run the script files individually, and you have not 
  4026. run the TEST command file first, run SETINFO to setup the drive letter of a 
  4027. logical drive and the drive number of a physical drive. 
  4028.  
  4029. The SETINFO command file will set up the necessary information that is needed 
  4030. for the DASD IOCtl script files.  The command file will ask the following two 
  4031. questions. (The physical numbering starts at 1 not 0.) 
  4032.  
  4033.  
  4034.      PLEASE ENTER IN THE DRIVE LETTER OF THE LOGICAL DRIVE YOU WOULD
  4035.      LIKE TO TEST  ex: D ? d
  4036.  
  4037.      PLEASE ENTER IN THE DRIVE NUMBER OF THE PHYSICAL DRIVE YOU WOULD
  4038.      LIKE TO TEST  ex: 1 ? 2
  4039.  
  4040. After you input this information, the command file will store this information 
  4041. in two different files. The files are SYSINFO.TXT and SYSINFO2.TXT. 
  4042.  
  4043. The contents of SYSINFO.TXT are: 
  4044.  
  4045.            da SET DEVICENAME=D:
  4046.  
  4047. The contents of SYSINFO2.TXT are: 
  4048.  
  4049.            da SET DISKNUMBER=2:
  4050.  
  4051.  
  4052. ΓòÉΓòÉΓòÉ 9.4.1. DASD IOCtl Test Grammar Function Calls ΓòÉΓòÉΓòÉ
  4053.  
  4054. The following is a list of DASD IOCtl Test Grammar Function Calls: 
  4055.  
  4056.    o  DASD_OPEN 
  4057.    o  DASD_CLOSE 
  4058.    o  LOCK_LOGICAL 
  4059.    o  UNLOCK_LOGICAL 
  4060.    o  GET_LOGICAL_PARAMS 
  4061.    o  QMEDIA_SENSE 
  4062.    o  QLOGICAL_MAP 
  4063.    o  SET_LOGICAL_MAP 
  4064.    o  BLOCK_REMOVABLE 
  4065.    o  REDETERMINE_MEDIA 
  4066.    o  READ_LOGICAL 
  4067.    o  WRITE_LOGICAL 
  4068.    o  VERIFY_LOGICAL 
  4069.    o  FORMAT_TRACK 
  4070.    o  OPEN_PHYSICAL 
  4071.    o  CLOSE_PHYSICAL 
  4072.    o  LOCK_PHYSICAL 
  4073.    o  UNLOCK_PHYSICAL 
  4074.    o  GET_PHYSICAL_PARAMS 
  4075.    o  WRITE_PHYSICAL 
  4076.    o  READ_PHYSICAL 
  4077.    o  VERIFY_PHYSICAL 
  4078.    o  READ_FILE 
  4079.    o  WRITE_FILE 
  4080.    o  SET_DEVICEPARAMS 
  4081.  
  4082.  
  4083. ΓòÉΓòÉΓòÉ 9.4.1.1. DASD_OPEN ΓòÉΓòÉΓòÉ
  4084.  
  4085. This function opens one partition on a physical drive. 
  4086.  
  4087.  
  4088. ΓòÉΓòÉΓòÉ 9.4.1.1.1. Input Parameter Keywords ΓòÉΓòÉΓòÉ
  4089.  
  4090. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  4091. ΓöéKeyword             ΓöéType                ΓöéDescription         Γöé
  4092. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4093. ΓöéDEVICENAME          ΓöéSTRING              ΓöéDrive letter of DASDΓöé
  4094. Γöé                    Γöé                    Γöédevice to test      Γöé
  4095. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  4096.  
  4097.  
  4098. ΓòÉΓòÉΓòÉ 9.4.1.1.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  4099.  
  4100. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  4101. ΓöéKeyword             ΓöéType                ΓöéDescription         Γöé
  4102. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4103. ΓöéDRIVEHANDLE         ΓöéNUM                 ΓöéDrive handle for    Γöé
  4104. Γöé                    Γöé                    ΓöéDASD device under   Γöé
  4105. Γöé                    Γöé                    Γöétest                Γöé
  4106. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  4107.  
  4108.  
  4109. ΓòÉΓòÉΓòÉ 9.4.1.1.3. Logged Data ΓòÉΓòÉΓòÉ
  4110.  
  4111.  
  4112. None. 
  4113.  
  4114.  
  4115. ΓòÉΓòÉΓòÉ 9.4.1.2. DASD_CLOSE ΓòÉΓòÉΓòÉ
  4116.  
  4117. This function closes one partition on a physical drive. 
  4118.  
  4119.  
  4120. ΓòÉΓòÉΓòÉ 9.4.1.2.1. Input Parameter Keywords ΓòÉΓòÉΓòÉ
  4121.  
  4122. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  4123. ΓöéKeyword             ΓöéType                ΓöéDescription         Γöé
  4124. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4125. ΓöéDRIVEHANDLE         ΓöéNUM                 ΓöéDrive handle for    Γöé
  4126. Γöé                    Γöé                    ΓöéDASD device under   Γöé
  4127. Γöé                    Γöé                    Γöétest                Γöé
  4128. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  4129.  
  4130.  
  4131. ΓòÉΓòÉΓòÉ 9.4.1.2.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  4132.  
  4133.  
  4134. None. 
  4135.  
  4136.  
  4137. ΓòÉΓòÉΓòÉ 9.4.1.2.3. Logged Data ΓòÉΓòÉΓòÉ
  4138.  
  4139.  
  4140. None. 
  4141.  
  4142.  
  4143. ΓòÉΓòÉΓòÉ 9.4.1.3. LOCK_LOGICAL ΓòÉΓòÉΓòÉ
  4144.  
  4145. Category 8h Function 00h - Lock Drive 
  4146.  
  4147. This function locks one partition on a physical drive. 
  4148.  
  4149.  
  4150. ΓòÉΓòÉΓòÉ 9.4.1.3.1. Input Parameter Keywords ΓòÉΓòÉΓòÉ
  4151.  
  4152. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  4153. ΓöéKeyword             ΓöéType                ΓöéDescription         Γöé
  4154. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4155. ΓöéDRIVEHANDLE         ΓöéNUM                 ΓöéDrive handle for    Γöé
  4156. Γöé                    Γöé                    ΓöéDASD device under   Γöé
  4157. Γöé                    Γöé                    Γöétest                Γöé
  4158. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  4159.  
  4160.  
  4161. ΓòÉΓòÉΓòÉ 9.4.1.3.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  4162.  
  4163.  
  4164. None. 
  4165.  
  4166.  
  4167. ΓòÉΓòÉΓòÉ 9.4.1.3.3. Logged Data ΓòÉΓòÉΓòÉ
  4168.  
  4169.  
  4170. None. 
  4171.  
  4172.  
  4173. ΓòÉΓòÉΓòÉ 9.4.1.4. UNLOCK_LOGICAL ΓòÉΓòÉΓòÉ
  4174.  
  4175. Category 8h Function 01h - Unlock Drive 
  4176.  
  4177. This function locks one partition on a physical drive. 
  4178.  
  4179.  
  4180. ΓòÉΓòÉΓòÉ 9.4.1.4.1. Input Parameter Keywords ΓòÉΓòÉΓòÉ
  4181.  
  4182. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  4183. ΓöéKeyword             ΓöéType                ΓöéDescription         Γöé
  4184. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4185. ΓöéDRIVEHANDLE         ΓöéNUM                 ΓöéDrive handle for    Γöé
  4186. Γöé                    Γöé                    ΓöéDASD device under   Γöé
  4187. Γöé                    Γöé                    Γöétest                Γöé
  4188. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  4189.  
  4190.  
  4191. ΓòÉΓòÉΓòÉ 9.4.1.4.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  4192.  
  4193.  
  4194. None. 
  4195.  
  4196.  
  4197. ΓòÉΓòÉΓòÉ 9.4.1.4.3. Logged Data ΓòÉΓòÉΓòÉ
  4198.  
  4199.  
  4200. None. 
  4201.  
  4202.  
  4203. ΓòÉΓòÉΓòÉ 9.4.1.5. GET_LOGICAL_PARAMS ΓòÉΓòÉΓòÉ
  4204.  
  4205. Category 8h Function 63h - Query Device Parameters 
  4206.  
  4207. This function gets the logical parameters of one partition on a physical drive. 
  4208.  
  4209.  
  4210. ΓòÉΓòÉΓòÉ 9.4.1.5.1. Input Parameter Keywords ΓòÉΓòÉΓòÉ
  4211.  
  4212. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  4213. ΓöéKeyword             ΓöéType                ΓöéDescription         Γöé
  4214. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4215. ΓöéDRIVEHANDLE         ΓöéNUM                 ΓöéDrive handle for    Γöé
  4216. Γöé                    Γöé                    ΓöéDASD device under   Γöé
  4217. Γöé                    Γöé                    Γöétest                Γöé
  4218. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  4219.  
  4220.  
  4221. ΓòÉΓòÉΓòÉ 9.4.1.5.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  4222.  
  4223. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  4224. ΓöéKeyword             ΓöéType                ΓöéDescription         Γöé
  4225. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4226. ΓöéSECTORSIZE          ΓöéNUM                 ΓöéSize of sectors     Γöé
  4227. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4228. ΓöéCLUSTERSIZE         ΓöéNUM                 ΓöéSize of clusters    Γöé
  4229. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4230. ΓöéFATCOUNT            ΓöéNUM                 ΓöéFat count           Γöé
  4231. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4232. ΓöéROOTCOUNT           ΓöéNUM                 ΓöéRoot count          Γöé
  4233. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4234. ΓöéSECTORCOUNT         ΓöéNUM                 ΓöéNumber of sectors   Γöé
  4235. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4236. ΓöéFATSIZE             ΓöéNUM                 ΓöéFat size            Γöé
  4237. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4238. ΓöéTRACKSIZE           ΓöéNUM                 ΓöéSize of tracks      Γöé
  4239. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4240. ΓöéHEADCOUNT           ΓöéNUM                 ΓöéNumber of heads     Γöé
  4241. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4242. ΓöéCYLINDER            ΓöéNUM                 ΓöéNumber of cylinders Γöé
  4243. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  4244.  
  4245.  
  4246. ΓòÉΓòÉΓòÉ 9.4.1.5.3. Logged Data ΓòÉΓòÉΓòÉ
  4247.  
  4248.  
  4249. Size of sectors 
  4250. Size of clusters 
  4251. Fat count 
  4252. Root count 
  4253. Number of sectors 
  4254. Fat size 
  4255. Size of tracks 
  4256. Number of heads 
  4257. Number of cylinders defined for the device specified 
  4258. Describes the physical layout of the device specified 
  4259. Removable media flag 
  4260. Changeline flag 
  4261. Greater than 16MB support flag 
  4262.  
  4263.  
  4264. ΓòÉΓòÉΓòÉ 9.4.1.6. QMEDIA_SENSE ΓòÉΓòÉΓòÉ
  4265.  
  4266. Category 8h Function 60h - Query Media Sense 
  4267.  
  4268. This function returns the media sense information. 
  4269.  
  4270.  
  4271. ΓòÉΓòÉΓòÉ 9.4.1.6.1. Input Parameter Keywords ΓòÉΓòÉΓòÉ
  4272.  
  4273. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  4274. ΓöéKeyword             ΓöéType                ΓöéDescription         Γöé
  4275. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4276. ΓöéDRIVEHANDLE         ΓöéNUM                 ΓöéDrive handle for    Γöé
  4277. Γöé                    Γöé                    ΓöéDASD device under   Γöé
  4278. Γöé                    Γöé                    Γöétest                Γöé
  4279. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  4280.  
  4281.  
  4282. ΓòÉΓòÉΓòÉ 9.4.1.6.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  4283.  
  4284.  
  4285. None. 
  4286.  
  4287.  
  4288. ΓòÉΓòÉΓòÉ 9.4.1.6.3. Logged Data ΓòÉΓòÉΓòÉ
  4289.  
  4290.  MEDIA SENSE INFORMATION  Returns a byte that corresponds to the type of disk 
  4291.                           that is in the 3.5-inch drive. Where: 
  4292.  
  4293.                                                     1 = 702KB Disk
  4294.                                                     2 = 1.44MB Disk
  4295.                                                     3 = 2.88MB Disk
  4296.  
  4297.  
  4298. ΓòÉΓòÉΓòÉ 9.4.1.7. QLOGICAL_MAP ΓòÉΓòÉΓòÉ
  4299.  
  4300. Category 8h Function 21h - Query Logical Map 
  4301.  
  4302. This function returns the logical drive letter that was last used to reference 
  4303. (open) the drive. 
  4304.  
  4305.  
  4306. ΓòÉΓòÉΓòÉ 9.4.1.7.1. Input Parameter Keywords ΓòÉΓòÉΓòÉ
  4307.  
  4308. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  4309. ΓöéKeyword             ΓöéType                ΓöéDescription         Γöé
  4310. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4311. ΓöéDRIVEHANDLE         ΓöéNUM                 ΓöéDrive handle for    Γöé
  4312. Γöé                    Γöé                    ΓöéDASD device under   Γöé
  4313. Γöé                    Γöé                    Γöétest                Γöé
  4314. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  4315.  
  4316.  
  4317. ΓòÉΓòÉΓòÉ 9.4.1.7.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  4318.  
  4319.  
  4320. None. 
  4321.  
  4322.  
  4323. ΓòÉΓòÉΓòÉ 9.4.1.7.3. Logged Data ΓòÉΓòÉΓòÉ
  4324.  
  4325.  
  4326. Logical drive number of the last drive letter that was used to reference the 
  4327. device under test. 
  4328.  
  4329.  
  4330. ΓòÉΓòÉΓòÉ 9.4.1.8. SET_LOGICAL_MAP ΓòÉΓòÉΓòÉ
  4331.  
  4332. Category 8h Function 03h - Set Logical Map 
  4333.  
  4334. This function sets the next logical drive letter that is used to reference the 
  4335. drive. 
  4336.  
  4337.  
  4338. ΓòÉΓòÉΓòÉ 9.4.1.8.1. Input Parameter Keywords ΓòÉΓòÉΓòÉ
  4339.  
  4340. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  4341. ΓöéKeyword             ΓöéType                ΓöéDescription         Γöé
  4342. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4343. ΓöéDRIVEHANDLE         ΓöéNUM                 ΓöéDrive handle for    Γöé
  4344. Γöé                    Γöé                    ΓöéDASD device under   Γöé
  4345. Γöé                    Γöé                    Γöétest                Γöé
  4346. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  4347.  
  4348.  
  4349. ΓòÉΓòÉΓòÉ 9.4.1.8.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  4350.  
  4351.  
  4352. None. 
  4353.  
  4354.  
  4355. ΓòÉΓòÉΓòÉ 9.4.1.8.3. Logged Data ΓòÉΓòÉΓòÉ
  4356.  
  4357.  
  4358. Logical drive currently mapped to the drive that the specified file handle is 
  4359. opened on. 
  4360.  
  4361.  
  4362. ΓòÉΓòÉΓòÉ 9.4.1.9. BLOCK_REMOVABLE ΓòÉΓòÉΓòÉ
  4363.  
  4364. Category 8h Function 20h - Block Removable 
  4365.  
  4366. This function is used to determine if the media is removable or fixed. 
  4367.  
  4368.  
  4369. ΓòÉΓòÉΓòÉ 9.4.1.9.1. Input Parameter Keywords ΓòÉΓòÉΓòÉ
  4370.  
  4371. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  4372. ΓöéKeyword             ΓöéType                ΓöéDescription         Γöé
  4373. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4374. ΓöéDRIVEHANDLE         ΓöéNUM                 ΓöéDrive handle for    Γöé
  4375. Γöé                    Γöé                    ΓöéDASD device under   Γöé
  4376. Γöé                    Γöé                    Γöétest                Γöé
  4377. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  4378.  
  4379.  
  4380. ΓòÉΓòÉΓòÉ 9.4.1.9.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  4381.  
  4382.  
  4383. None. 
  4384.  
  4385.  
  4386. ΓòÉΓòÉΓòÉ 9.4.1.9.3. Logged Data ΓòÉΓòÉΓòÉ
  4387.  
  4388.  REMOVABLE MEDIA          Returns a byte that specifies if the media is 
  4389.                           removable or not. Where: 
  4390.  
  4391.                                                     0 = Removable media
  4392.                                                     1 = Nonremovable media
  4393.  
  4394.  
  4395. ΓòÉΓòÉΓòÉ 9.4.1.10. REDETERMINE_MEDIA ΓòÉΓòÉΓòÉ
  4396.  
  4397. Category 8h Function 02h - Redetermine Media 
  4398.  
  4399. This function redetermines media.  In the process, it rebuilds the device 
  4400. parameters. 
  4401.  
  4402.  
  4403. ΓòÉΓòÉΓòÉ 9.4.1.10.1. Input Parameter Keywords ΓòÉΓòÉΓòÉ
  4404.  
  4405. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  4406. ΓöéKeyword             ΓöéType                ΓöéDescription         Γöé
  4407. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4408. ΓöéDRIVEHANDLE         ΓöéNUM                 ΓöéDrive handle for    Γöé
  4409. Γöé                    Γöé                    ΓöéDASD device under   Γöé
  4410. Γöé                    Γöé                    Γöétest                Γöé
  4411. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  4412.  
  4413.  
  4414. ΓòÉΓòÉΓòÉ 9.4.1.10.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  4415.  
  4416.  
  4417. None. 
  4418.  
  4419.  
  4420. ΓòÉΓòÉΓòÉ 9.4.1.10.3. Logged Data ΓòÉΓòÉΓòÉ
  4421.  
  4422.  
  4423. None. 
  4424.  
  4425.  
  4426. ΓòÉΓòÉΓòÉ 9.4.1.11. READ_LOGICAL ΓòÉΓòÉΓòÉ
  4427.  
  4428. Category 8h Function 64h - Read Track 
  4429.  
  4430. This function reads sectors from one partition on a physical drive. 
  4431.  
  4432.  
  4433. ΓòÉΓòÉΓòÉ 9.4.1.11.1. Input Parameter Keywords ΓòÉΓòÉΓòÉ
  4434.  
  4435. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  4436. ΓöéKeyword             ΓöéType                ΓöéDescription         Γöé
  4437. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4438. ΓöéDRIVEHANDLE         ΓöéNUM                 ΓöéDrive handle for    Γöé
  4439. Γöé                    Γöé                    ΓöéDASD device under   Γöé
  4440. Γöé                    Γöé                    Γöétest                Γöé
  4441. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4442. ΓöéHEAD                ΓöéNUM                 ΓöéThe physical head onΓöé
  4443. Γöé                    Γöé                    Γöéthe drive           Γöé
  4444. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4445. ΓöéCYLINDER            ΓöéNUM                 ΓöéThe cylinder to readΓöé
  4446. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4447. ΓöéSECTORSTART         ΓöéNUM                 ΓöéThe logical sector  Γöé
  4448. Γöé                    Γöé                    Γöénumber where DDTT   Γöé
  4449. Γöé                    Γöé                    Γöéwill start reading  Γöé
  4450. Γöé                    Γöé                    Γöéfrom                Γöé
  4451. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4452. ΓöéTRACKSIZE           ΓöéNUM                 ΓöéSize of the tracks  Γöé
  4453. Γöé                    Γöé                    Γöéon the specified    Γöé
  4454. Γöé                    Γöé                    Γöédevice              Γöé
  4455. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4456. ΓöéSECTORSIZE          ΓöéNUM                 ΓöéSize of the sectors Γöé
  4457. Γöé                    Γöé                    Γöéon the specified    Γöé
  4458. Γöé                    Γöé                    Γöédevice              Γöé
  4459. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4460. ΓöéSECTORCOUNT         ΓöéNUM                 ΓöéNumber of sectors toΓöé
  4461. Γöé                    Γöé                    Γöébe read             Γöé
  4462. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4463. Γöé$BUFFER             ΓöéSTRING              ΓöéName of a DDTT      Γöé
  4464. Γöé                    Γöé                    Γöébuffer where        Γöé
  4465. Γöé                    Γöé                    Γöéinformation will be Γöé
  4466. Γöé                    Γöé                    Γöéstored              Γöé
  4467. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  4468.  
  4469.  
  4470. ΓòÉΓòÉΓòÉ 9.4.1.11.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  4471.  
  4472. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  4473. ΓöéKeyword             ΓöéType                ΓöéDescription         Γöé
  4474. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4475. ΓöéBUFFER CONTENTS     ΓöéSTRING              ΓöéInformation that wasΓöé
  4476. Γöé                    Γöé                    Γöéread                Γöé
  4477. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  4478.  
  4479.  
  4480. ΓòÉΓòÉΓòÉ 9.4.1.11.3. Logged Data ΓòÉΓòÉΓòÉ
  4481.  
  4482.  
  4483. None. 
  4484.  
  4485.  
  4486. ΓòÉΓòÉΓòÉ 9.4.1.12. WRITE_LOGICAL ΓòÉΓòÉΓòÉ
  4487.  
  4488. Category 8h Function 44h - Write Track 
  4489.  
  4490. This function writes to one partition on a physical drive. 
  4491.  
  4492.  
  4493. ΓòÉΓòÉΓòÉ 9.4.1.12.1. Input Parameter Keywords ΓòÉΓòÉΓòÉ
  4494.  
  4495. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  4496. ΓöéKeyword             ΓöéType                ΓöéDescription         Γöé
  4497. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4498. ΓöéDRIVEHANDLE         ΓöéNUM                 ΓöéDrive handle for    Γöé
  4499. Γöé                    Γöé                    ΓöéDASD device under   Γöé
  4500. Γöé                    Γöé                    Γöétest                Γöé
  4501. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4502. ΓöéHEAD                ΓöéNUM                 ΓöéThe physical head onΓöé
  4503. Γöé                    Γöé                    Γöéthe drive           Γöé
  4504. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4505. ΓöéCYLINDER            ΓöéNUM                 ΓöéThe cylinder to     Γöé
  4506. Γöé                    Γöé                    Γöéwrite to            Γöé
  4507. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4508. ΓöéSECTORSTART         ΓöéNUM                 ΓöéThe logical sector  Γöé
  4509. Γöé                    Γöé                    Γöénumber where DDTT   Γöé
  4510. Γöé                    Γöé                    Γöéwill start writing  Γöé
  4511. Γöé                    Γöé                    Γöéto                  Γöé
  4512. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4513. ΓöéTRACKSIZE           ΓöéNUM                 ΓöéSize of the tracks  Γöé
  4514. Γöé                    Γöé                    Γöéon the specified    Γöé
  4515. Γöé                    Γöé                    Γöédevice              Γöé
  4516. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4517. Γöé$BUFFER             ΓöéSTRING              ΓöéName of a DDTT      Γöé
  4518. Γöé                    Γöé                    Γöébuffer where        Γöé
  4519. Γöé                    Γöé                    Γöéinformation is      Γöé
  4520. Γöé                    Γöé                    Γöéstored              Γöé
  4521. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  4522.  
  4523.  
  4524. ΓòÉΓòÉΓòÉ 9.4.1.12.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  4525.  
  4526.  
  4527. None. 
  4528.  
  4529.  
  4530. ΓòÉΓòÉΓòÉ 9.4.1.12.3. Logged Data ΓòÉΓòÉΓòÉ
  4531.  
  4532.  
  4533. None. 
  4534.  
  4535.  
  4536. ΓòÉΓòÉΓòÉ 9.4.1.13. VERIFY_LOGICAL ΓòÉΓòÉΓòÉ
  4537.  
  4538. Category 8h Function 65h - Verify Track 
  4539.  
  4540. This function returns the status of one partition on a physical drive. 
  4541.  
  4542.  
  4543. ΓòÉΓòÉΓòÉ 9.4.1.13.1. Input Parameter Keywords ΓòÉΓòÉΓòÉ
  4544.  
  4545. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  4546. ΓöéKeyword             ΓöéType                ΓöéDescription         Γöé
  4547. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4548. ΓöéDRIVEHANDLE         ΓöéNUM                 ΓöéDrive handle for    Γöé
  4549. Γöé                    Γöé                    ΓöéDASD device under   Γöé
  4550. Γöé                    Γöé                    Γöétest                Γöé
  4551. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4552. ΓöéHEAD                ΓöéNUM                 ΓöéThe physical head onΓöé
  4553. Γöé                    Γöé                    Γöéthe drive           Γöé
  4554. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4555. ΓöéCYLINDER            ΓöéNUM                 ΓöéThe cylinder to readΓöé
  4556. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4557. ΓöéSECTORSTART         ΓöéNUM                 ΓöéThe logical sector  Γöé
  4558. Γöé                    Γöé                    Γöénumber where DDTT   Γöé
  4559. Γöé                    Γöé                    Γöéwill start reading  Γöé
  4560. Γöé                    Γöé                    Γöéfrom                Γöé
  4561. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4562. ΓöéTRACKSIZE           ΓöéNUM                 ΓöéSize of the tracks  Γöé
  4563. Γöé                    Γöé                    Γöéon the specified    Γöé
  4564. Γöé                    Γöé                    Γöédevice              Γöé
  4565. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4566. ΓöéSECTORSIZE          ΓöéNUM                 ΓöéSize of the sectors Γöé
  4567. Γöé                    Γöé                    Γöéon the specified    Γöé
  4568. Γöé                    Γöé                    Γöédevice              Γöé
  4569. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4570. ΓöéSECTORCOUNT         ΓöéNUM                 ΓöéNumber of sectors toΓöé
  4571. Γöé                    Γöé                    Γöébe read             Γöé
  4572. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4573. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  4574.  
  4575.  
  4576. ΓòÉΓòÉΓòÉ 9.4.1.13.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  4577.  
  4578.  
  4579. None. 
  4580.  
  4581.  
  4582. ΓòÉΓòÉΓòÉ 9.4.1.13.3. Logged Data ΓòÉΓòÉΓòÉ
  4583.  
  4584.  
  4585. None. 
  4586.  
  4587.  
  4588. ΓòÉΓòÉΓòÉ 9.4.1.14. FORMAT_TRACK ΓòÉΓòÉΓòÉ
  4589.  
  4590. Category 8h Function 45h - Format Track 
  4591.  
  4592. This function formats a track. 
  4593.  
  4594.  
  4595. ΓòÉΓòÉΓòÉ 9.4.1.14.1. Input Parameter Keywords ΓòÉΓòÉΓòÉ
  4596.  
  4597. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  4598. ΓöéKeyword             ΓöéType                ΓöéDescription         Γöé
  4599. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4600. ΓöéDRIVEHANDLE         ΓöéNUM                 ΓöéDrive handle for    Γöé
  4601. Γöé                    Γöé                    ΓöéDASD device under   Γöé
  4602. Γöé                    Γöé                    Γöétest                Γöé
  4603. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4604. ΓöéHEAD                ΓöéNUM                 ΓöéThe physical head onΓöé
  4605. Γöé                    Γöé                    Γöéthe drive           Γöé
  4606. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4607. ΓöéTRACKSIZE           ΓöéNUM                 ΓöéSize of the tracks  Γöé
  4608. Γöé                    Γöé                    Γöéon the specified    Γöé
  4609. Γöé                    Γöé                    Γöédevice              Γöé
  4610. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4611. ΓöéSECTORSIZE          ΓöéNUM                 ΓöéSize of the sectors Γöé
  4612. Γöé                    Γöé                    Γöéon the specified    Γöé
  4613. Γöé                    Γöé                    Γöédevice              Γöé
  4614. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4615. ΓöéTRACKNUM            ΓöéNUM                 ΓöéNumber of track to  Γöé
  4616. Γöé                    Γöé                    Γöéformat              Γöé
  4617. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  4618.  
  4619.  
  4620. ΓòÉΓòÉΓòÉ 9.4.1.14.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  4621.  
  4622.  
  4623. None. 
  4624.  
  4625.  
  4626. ΓòÉΓòÉΓòÉ 9.4.1.14.3. Logged Data ΓòÉΓòÉΓòÉ
  4627.  
  4628.  
  4629. None. 
  4630.  
  4631.  
  4632. ΓòÉΓòÉΓòÉ 9.4.1.15. OPEN_PHYSICAL ΓòÉΓòÉΓòÉ
  4633.  
  4634. This function opens an entire physical disk. 
  4635.  
  4636.  
  4637. ΓòÉΓòÉΓòÉ 9.4.1.15.1. Input Parameter Keywords ΓòÉΓòÉΓòÉ
  4638.  
  4639. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  4640. ΓöéKeyword             ΓöéType                ΓöéDescription         Γöé
  4641. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4642. ΓöéDISKNUMBER          ΓöéSTRING              ΓöéDisk number of DASD Γöé
  4643. Γöé                    Γöé                    Γöédevice to test.     Γöé
  4644. Γöé                    Γöé                    ΓöéExample: 1: for     Γöé
  4645. Γöé                    Γöé                    Γöéfirst fixed disk    Γöé
  4646. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  4647.  
  4648.  
  4649. ΓòÉΓòÉΓòÉ 9.4.1.15.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  4650.  
  4651. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  4652. ΓöéKeyword             ΓöéType                ΓöéDescription         Γöé
  4653. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4654. ΓöéDISKHANDLE          ΓöéNUM                 ΓöéDisk handle for DASDΓöé
  4655. Γöé                    Γöé                    Γöédevice under test   Γöé
  4656. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  4657.  
  4658.  
  4659. ΓòÉΓòÉΓòÉ 9.4.1.15.3. Logged Data ΓòÉΓòÉΓòÉ
  4660.  
  4661.  
  4662. None. 
  4663.  
  4664.  
  4665. ΓòÉΓòÉΓòÉ 9.4.1.16. CLOSE_PHYSICAL ΓòÉΓòÉΓòÉ
  4666.  
  4667. This function closes a physical disk. 
  4668.  
  4669.  
  4670. ΓòÉΓòÉΓòÉ 9.4.1.16.1. Input Parameter Keywords ΓòÉΓòÉΓòÉ
  4671.  
  4672. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  4673. ΓöéKeyword             ΓöéType                ΓöéDescription         Γöé
  4674. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4675. ΓöéDISKHANDLE          ΓöéNUM                 ΓöéDisk handle for DASDΓöé
  4676. Γöé                    Γöé                    Γöédevice under test   Γöé
  4677. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  4678.  
  4679.  
  4680. ΓòÉΓòÉΓòÉ 9.4.1.16.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  4681.  
  4682.  
  4683. None. 
  4684.  
  4685.  
  4686. ΓòÉΓòÉΓòÉ 9.4.1.16.3. Logged Data ΓòÉΓòÉΓòÉ
  4687.  
  4688.  
  4689. None. 
  4690.  
  4691.  
  4692. ΓòÉΓòÉΓòÉ 9.4.1.17. LOCK_PHYSICAL ΓòÉΓòÉΓòÉ
  4693.  
  4694. Category 9h Function 00h - Lock Physical 
  4695.  
  4696. This function closes a physical disk. 
  4697.  
  4698.  
  4699. ΓòÉΓòÉΓòÉ 9.4.1.17.1. Input Parameter Keywords ΓòÉΓòÉΓòÉ
  4700.  
  4701. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  4702. ΓöéKeyword             ΓöéType                ΓöéDescription         Γöé
  4703. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4704. ΓöéDISKHANDLE          ΓöéNUM                 ΓöéDisk handle for DASDΓöé
  4705. Γöé                    Γöé                    Γöédevice under test   Γöé
  4706. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  4707.  
  4708.  
  4709. ΓòÉΓòÉΓòÉ 9.4.1.17.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  4710.  
  4711.  
  4712. None. 
  4713.  
  4714.  
  4715. ΓòÉΓòÉΓòÉ 9.4.1.17.3. Logged Data ΓòÉΓòÉΓòÉ
  4716.  
  4717.  
  4718. None. 
  4719.  
  4720.  
  4721. ΓòÉΓòÉΓòÉ 9.4.1.18. UNLOCK_PHYSICAL ΓòÉΓòÉΓòÉ
  4722.  
  4723. Category 9h Function 01h - Unlock Physical 
  4724.  
  4725. This function unlocks a physical disk. 
  4726.  
  4727.  
  4728. ΓòÉΓòÉΓòÉ 9.4.1.18.1. Input Parameter Keywords ΓòÉΓòÉΓòÉ
  4729.  
  4730. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  4731. ΓöéKeyword             ΓöéType                ΓöéDescription         Γöé
  4732. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4733. ΓöéDISKHANDLE          ΓöéNUM                 ΓöéDisk handle for DASDΓöé
  4734. Γöé                    Γöé                    Γöédevice under test   Γöé
  4735. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  4736.  
  4737.  
  4738. ΓòÉΓòÉΓòÉ 9.4.1.18.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  4739.  
  4740.  
  4741. None. 
  4742.  
  4743.  
  4744. ΓòÉΓòÉΓòÉ 9.4.1.18.3. Logged Data ΓòÉΓòÉΓòÉ
  4745.  
  4746.  
  4747. None. 
  4748.  
  4749.  
  4750. ΓòÉΓòÉΓòÉ 9.4.1.19. GET_PHYSICAL_PARAMS ΓòÉΓòÉΓòÉ
  4751.  
  4752. Category 9h Function 01h - Query Physical Device Parameters 
  4753.  
  4754. This function gets the parameters of a physical disk. 
  4755.  
  4756.  
  4757. ΓòÉΓòÉΓòÉ 9.4.1.19.1. Input Parameter Keywords ΓòÉΓòÉΓòÉ
  4758.  
  4759. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  4760. ΓöéKeyword             ΓöéType                ΓöéDescription         Γöé
  4761. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4762. ΓöéDISKHANDLE          ΓöéNUM                 ΓöéDisk handle for DASDΓöé
  4763. Γöé                    Γöé                    Γöédevice under test   Γöé
  4764. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  4765.  
  4766.  
  4767. ΓòÉΓòÉΓòÉ 9.4.1.19.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  4768.  
  4769. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  4770. ΓöéKeyword             ΓöéType                ΓöéDescription         Γöé
  4771. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4772. ΓöéCYLINDERS           ΓöéNUM                 ΓöéNumber of cylinders Γöé
  4773. Γöé                    Γöé                    Γöéon the physical diskΓöé
  4774. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4775. ΓöéHEADCOUNT           ΓöéNUM                 ΓöéNumber of heads on  Γöé
  4776. Γöé                    Γöé                    Γöéthe physical disk   Γöé
  4777. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4778. ΓöéTRACKSIZE           ΓöéNUM                 ΓöéNumber of sectors   Γöé
  4779. Γöé                    Γöé                    Γöéper track on the    Γöé
  4780. Γöé                    Γöé                    Γöéphysical disk       Γöé
  4781. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  4782.  
  4783.  
  4784. ΓòÉΓòÉΓòÉ 9.4.1.19.3. Logged Data ΓòÉΓòÉΓòÉ
  4785.  
  4786.  
  4787. Number of cylinders on the physical disk 
  4788. Number of heads on the physical disk 
  4789. Number of sectors per track on the physical disk 
  4790.  
  4791.  
  4792. ΓòÉΓòÉΓòÉ 9.4.1.20. WRITE_PHYSICAL ΓòÉΓòÉΓòÉ
  4793.  
  4794. Category 9h Function 44h - Write Physical 
  4795.  
  4796. This function writes to a physical disk. 
  4797.  
  4798.  
  4799. ΓòÉΓòÉΓòÉ 9.4.1.20.1. Input Parameter Keywords ΓòÉΓòÉΓòÉ
  4800.  
  4801. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  4802. ΓöéKeyword             ΓöéType                ΓöéDescription         Γöé
  4803. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4804. ΓöéDISKHANDLE          ΓöéNUM                 ΓöéDisk handle for DASDΓöé
  4805. Γöé                    Γöé                    Γöédevice under test   Γöé
  4806. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4807. ΓöéHEAD                ΓöéNUM                 ΓöéThe physical head onΓöé
  4808. Γöé                    Γöé                    Γöéthe drive           Γöé
  4809. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4810. ΓöéCYLINDER            ΓöéNUM                 ΓöéThe cylinder to     Γöé
  4811. Γöé                    Γöé                    Γöéwrite to            Γöé
  4812. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4813. ΓöéSECTORSTART         ΓöéNUM                 ΓöéThe physical sector Γöé
  4814. Γöé                    Γöé                    Γöénumber where DDTT   Γöé
  4815. Γöé                    Γöé                    Γöéwill start writing  Γöé
  4816. Γöé                    Γöé                    Γöéto                  Γöé
  4817. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4818. ΓöéSECTORSIZE          ΓöéNUM                 ΓöéSize of the sectors Γöé
  4819. Γöé                    Γöé                    Γöéon the specified    Γöé
  4820. Γöé                    Γöé                    Γöédevice              Γöé
  4821. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4822. ΓöéTRACKSIZE           ΓöéNUM                 ΓöéSize of the tracks  Γöé
  4823. Γöé                    Γöé                    Γöéon the specified    Γöé
  4824. Γöé                    Γöé                    Γöédevice              Γöé
  4825. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4826. Γöé$BUFFER             ΓöéSTRING              ΓöéName of a DDTT      Γöé
  4827. Γöé                    Γöé                    Γöébuffer where        Γöé
  4828. Γöé                    Γöé                    Γöéinformation is      Γöé
  4829. Γöé                    Γöé                    Γöéstored.             Γöé
  4830. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  4831.  
  4832.  
  4833. ΓòÉΓòÉΓòÉ 9.4.1.20.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  4834.  
  4835.  
  4836. None. 
  4837.  
  4838.  
  4839. ΓòÉΓòÉΓòÉ 9.4.1.20.3. Logged Data ΓòÉΓòÉΓòÉ
  4840.  
  4841.  
  4842. None. 
  4843.  
  4844.  
  4845. ΓòÉΓòÉΓòÉ 9.4.1.21. READ_PHYSICAL ΓòÉΓòÉΓòÉ
  4846.  
  4847. Category 9h Function 64h - Read Physical 
  4848.  
  4849. This function reads sectors from a physical disk. 
  4850.  
  4851.  
  4852. ΓòÉΓòÉΓòÉ 9.4.1.21.1. Input Parameter Keywords ΓòÉΓòÉΓòÉ
  4853.  
  4854. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  4855. ΓöéKeyword             ΓöéType                ΓöéDescription         Γöé
  4856. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4857. ΓöéDISKHANDLE          ΓöéNUM                 ΓöéDisk handle for DASDΓöé
  4858. Γöé                    Γöé                    Γöédevice under test   Γöé
  4859. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4860. ΓöéHEAD                ΓöéNUM                 ΓöéThe physical head onΓöé
  4861. Γöé                    Γöé                    Γöéthe drive           Γöé
  4862. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4863. ΓöéCYLINDER            ΓöéNUM                 ΓöéThe cylinder to     Γöé
  4864. Γöé                    Γöé                    Γöéwrite to            Γöé
  4865. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4866. ΓöéSECTORSTART         ΓöéNUM                 ΓöéThe physical sector Γöé
  4867. Γöé                    Γöé                    Γöénumber where DDTT   Γöé
  4868. Γöé                    Γöé                    Γöéwill start writing  Γöé
  4869. Γöé                    Γöé                    Γöéto                  Γöé
  4870. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4871. ΓöéSECTORCOUNT         ΓöéNUM                 ΓöéThe number of       Γöé
  4872. Γöé                    Γöé                    Γöéphysical sectors to Γöé
  4873. Γöé                    Γöé                    Γöéread                Γöé
  4874. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4875. ΓöéSECTORSIZE          ΓöéNUM                 ΓöéSize of the sectors Γöé
  4876. Γöé                    Γöé                    Γöéon the specified    Γöé
  4877. Γöé                    Γöé                    Γöédevice              Γöé
  4878. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4879. ΓöéTRACKSIZE           ΓöéNUM                 ΓöéSize of the tracks  Γöé
  4880. Γöé                    Γöé                    Γöéon the specified    Γöé
  4881. Γöé                    Γöé                    Γöédevice              Γöé
  4882. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4883. Γöé$BUFFER             ΓöéSTRING              ΓöéName of a DDTT      Γöé
  4884. Γöé                    Γöé                    Γöébuffer where        Γöé
  4885. Γöé                    Γöé                    Γöéinformation is      Γöé
  4886. Γöé                    Γöé                    Γöéstored.             Γöé
  4887. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  4888.  
  4889.  
  4890. ΓòÉΓòÉΓòÉ 9.4.1.21.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  4891.  
  4892. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  4893. ΓöéKeyword             ΓöéType                ΓöéDescription         Γöé
  4894. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4895. ΓöéBUFFER CONTENTS     ΓöéSTRING              ΓöéInformation that wasΓöé
  4896. Γöé                    Γöé                    Γöéread                Γöé
  4897. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  4898.  
  4899.  
  4900. ΓòÉΓòÉΓòÉ 9.4.1.21.3. Logged Data ΓòÉΓòÉΓòÉ
  4901.  
  4902.  
  4903. None. 
  4904.  
  4905.  
  4906. ΓòÉΓòÉΓòÉ 9.4.1.22. VERIFY_PHYSICAL ΓòÉΓòÉΓòÉ
  4907.  
  4908. Category 9h Function 65h - Verify Physical 
  4909.  
  4910. This function returns the status of a physical disk. 
  4911.  
  4912.  
  4913. ΓòÉΓòÉΓòÉ 9.4.1.22.1. Input Parameter Keywords ΓòÉΓòÉΓòÉ
  4914.  
  4915. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  4916. ΓöéKeyword             ΓöéType                ΓöéDescription         Γöé
  4917. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4918. ΓöéDISKHANDLE          ΓöéNUM                 ΓöéDisk handle for DASDΓöé
  4919. Γöé                    Γöé                    Γöédevice under test   Γöé
  4920. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4921. ΓöéHEAD                ΓöéNUM                 ΓöéThe physical head onΓöé
  4922. Γöé                    Γöé                    Γöéthe drive           Γöé
  4923. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4924. ΓöéCYLINDER            ΓöéNUM                 ΓöéThe cylinder to     Γöé
  4925. Γöé                    Γöé                    Γöéwrite to            Γöé
  4926. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4927. ΓöéSECTORSTART         ΓöéNUM                 ΓöéThe physical sector Γöé
  4928. Γöé                    Γöé                    Γöénumber where DDTT   Γöé
  4929. Γöé                    Γöé                    Γöéwill start writing  Γöé
  4930. Γöé                    Γöé                    Γöéto                  Γöé
  4931. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4932. ΓöéSECTORCOUNT         ΓöéNUM                 ΓöéThe number of       Γöé
  4933. Γöé                    Γöé                    Γöéphysical sectors to Γöé
  4934. Γöé                    Γöé                    Γöéread                Γöé
  4935. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4936. ΓöéSECTORSIZE          ΓöéNUM                 ΓöéSize of the sectors Γöé
  4937. Γöé                    Γöé                    Γöéon the specified    Γöé
  4938. Γöé                    Γöé                    Γöédevice              Γöé
  4939. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4940. ΓöéTRACKSIZE           ΓöéNUM                 ΓöéSize of the tracks  Γöé
  4941. Γöé                    Γöé                    Γöéon the specified    Γöé
  4942. Γöé                    Γöé                    Γöédevice              Γöé
  4943. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  4944.  
  4945.  
  4946. ΓòÉΓòÉΓòÉ 9.4.1.22.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  4947.  
  4948.  
  4949. None. 
  4950.  
  4951.  
  4952. ΓòÉΓòÉΓòÉ 9.4.1.22.3. Logged Data ΓòÉΓòÉΓòÉ
  4953.  
  4954.  
  4955. None. 
  4956.  
  4957.  
  4958. ΓòÉΓòÉΓòÉ 9.4.1.23. READ_FILE ΓòÉΓòÉΓòÉ
  4959.  
  4960. This function reads a file from a physical disk. 
  4961.  
  4962.  
  4963. ΓòÉΓòÉΓòÉ 9.4.1.23.1. Input Parameter Keywords ΓòÉΓòÉΓòÉ
  4964.  
  4965. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  4966. ΓöéKeyword             ΓöéType                ΓöéDescription         Γöé
  4967. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4968. ΓöéDISKHANDLE          ΓöéNUM                 ΓöéDisk handle for DASDΓöé
  4969. Γöé                    Γöé                    Γöédevice under test   Γöé
  4970. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4971. ΓöéFILENAME            ΓöéSTRING              ΓöéThe name of the fileΓöé
  4972. Γöé                    Γöé                    Γöéto read             Γöé
  4973. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4974. ΓöéBYTESTART           ΓöéNUM                 ΓöéThe number of the   Γöé
  4975. Γöé                    Γöé                    Γöébyte to start       Γöé
  4976. Γöé                    Γöé                    Γöéreading from        Γöé
  4977. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4978. ΓöéBYTECOUNT           ΓöéNUM                 ΓöéThe number of bytes Γöé
  4979. Γöé                    Γöé                    Γöéto read             Γöé
  4980. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4981. Γöé$BUFFER             ΓöéSTRING              ΓöéName of a DDTT      Γöé
  4982. Γöé                    Γöé                    Γöébuffer where        Γöé
  4983. Γöé                    Γöé                    Γöéinformation is      Γöé
  4984. Γöé                    Γöé                    Γöéstored.             Γöé
  4985. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  4986.  
  4987.  
  4988. ΓòÉΓòÉΓòÉ 9.4.1.23.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  4989.  
  4990. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  4991. ΓöéKeyword             ΓöéType                ΓöéDescription         Γöé
  4992. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  4993. ΓöéBUFFER CONTENTS     ΓöéSTRING              ΓöéInformation that wasΓöé
  4994. Γöé                    Γöé                    Γöéread                Γöé
  4995. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  4996.  
  4997.  
  4998. ΓòÉΓòÉΓòÉ 9.4.1.23.3. Logged Data ΓòÉΓòÉΓòÉ
  4999.  
  5000.  
  5001. None. 
  5002.  
  5003.  
  5004. ΓòÉΓòÉΓòÉ 9.4.1.24. WRITE_FILE ΓòÉΓòÉΓòÉ
  5005.  
  5006. This function writes a file to a physical disk. 
  5007.  
  5008.  
  5009. ΓòÉΓòÉΓòÉ 9.4.1.24.1. Input Parameter Keywords ΓòÉΓòÉΓòÉ
  5010.  
  5011. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  5012. ΓöéKeyword             ΓöéType                ΓöéDescription         Γöé
  5013. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5014. ΓöéDISKHANDLE          ΓöéNUM                 ΓöéDisk handle for DASDΓöé
  5015. Γöé                    Γöé                    Γöédevice under test   Γöé
  5016. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5017. ΓöéFILENAME            ΓöéSTRING              ΓöéThe name of the fileΓöé
  5018. Γöé                    Γöé                    Γöéto read             Γöé
  5019. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5020. ΓöéBYTESTART           ΓöéNUM                 ΓöéThe number of the   Γöé
  5021. Γöé                    Γöé                    Γöébyte to start       Γöé
  5022. Γöé                    Γöé                    Γöéreading from        Γöé
  5023. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5024. Γöé$BUFFER             ΓöéSTRING              ΓöéName of a DDTT      Γöé
  5025. Γöé                    Γöé                    Γöébuffer where        Γöé
  5026. Γöé                    Γöé                    Γöéinformation is      Γöé
  5027. Γöé                    Γöé                    Γöéstored.             Γöé
  5028. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  5029.  
  5030.  
  5031. ΓòÉΓòÉΓòÉ 9.4.1.24.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  5032.  
  5033.  
  5034. None. 
  5035.  
  5036.  
  5037. ΓòÉΓòÉΓòÉ 9.4.1.24.3. Logged Data ΓòÉΓòÉΓòÉ
  5038.  
  5039.  
  5040. None. 
  5041.  
  5042.  
  5043. ΓòÉΓòÉΓòÉ 9.4.1.25. SET_DEVICEPARAMS ΓòÉΓòÉΓòÉ
  5044.  
  5045. Category 8h Function 43h - Lock Drive 
  5046.  
  5047. This function sets the device parameters. 
  5048.  
  5049.  
  5050. ΓòÉΓòÉΓòÉ 9.4.1.25.1. Input Parameter Keywords ΓòÉΓòÉΓòÉ
  5051.  
  5052. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  5053. ΓöéKeyword             ΓöéType                ΓöéDescription         Γöé
  5054. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5055. ΓöéDRIVEHANDLE         ΓöéNUM                 ΓöéDrive handle for    Γöé
  5056. Γöé                    Γöé                    ΓöéDASD device under   Γöé
  5057. Γöé                    Γöé                    Γöétest                Γöé
  5058. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5059. ΓöéSECTORSIZE          ΓöéNUM                 ΓöéSize of the sectors Γöé
  5060. Γöé                    Γöé                    Γöéon the specified    Γöé
  5061. Γöé                    Γöé                    Γöédevice              Γöé
  5062. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5063. ΓöéCLUSTERSIZE         ΓöéNUM                 ΓöéSize of clusters    Γöé
  5064. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5065. ΓöéFATCOUNT            ΓöéNUM                 ΓöéFat count           Γöé
  5066. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5067. ΓöéROOTCOUNT           ΓöéNUM                 ΓöéRoot count          Γöé
  5068. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5069. ΓöéTOTALSECTORS        ΓöéNUM                 ΓöéTotal sectors       Γöé
  5070. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5071. ΓöéFATSIZE             ΓöéNUM                 ΓöéFat size            Γöé
  5072. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5073. ΓöéTRACKSIZE           ΓöéNUM                 ΓöéSize of the tracks  Γöé
  5074. Γöé                    Γöé                    Γöéon the specified    Γöé
  5075. Γöé                    Γöé                    Γöédevice              Γöé
  5076. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5077. ΓöéHEADCOUNT           ΓöéNUM                 ΓöéNumber of heads on  Γöé
  5078. Γöé                    Γöé                    Γöéthe physical disk   Γöé
  5079. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5080. ΓöéCYLINDER            ΓöéNUM                 ΓöéThe number of       Γöé
  5081. Γöé                    Γöé                    Γöécylinders           Γöé
  5082. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5083. ΓöéDEVICETYPE          ΓöéNUM                 ΓöéDescribes the       Γöé
  5084. Γöé                    Γöé                    Γöéphysical layout of  Γöé
  5085. Γöé                    Γöé                    Γöéthe device specifiedΓöé
  5086. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  5087.  
  5088.  
  5089. ΓòÉΓòÉΓòÉ 9.4.1.25.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  5090.  
  5091.  
  5092. None. 
  5093.  
  5094.  
  5095. ΓòÉΓòÉΓòÉ 9.4.1.25.3. Logged Data ΓòÉΓòÉΓòÉ
  5096.  
  5097.  
  5098. None. 
  5099.  
  5100.  
  5101. ΓòÉΓòÉΓòÉ 9.5. Description of Test Cases ΓòÉΓòÉΓòÉ
  5102.  
  5103. Each of the DASD IOCtl test cases can be executed individually as previously 
  5104. described. The corresponding test scripts are described below.  The user can 
  5105. create additional tests or combine tests into multi-threaded test cases after 
  5106. becoming familiar with the DDTT and the DASD IOCtl grammar files. 
  5107.  
  5108. All of the DASD IOCtl test cases use the DDTT @IMPORT command to include one or 
  5109. more of the script files: 
  5110.  
  5111.    o  SYSINFO.TXT 
  5112.  
  5113.    o  SYSINFO2.TXT 
  5114.  The contents of the SYSINFO*.TXT files is set by the SETINFO.CMD command file. 
  5115.  SETINFO.CMD should be executed once to establish values for the following DDTT 
  5116.  parameter keywords: 
  5117.  
  5118.    o  DEVICENAME - device name of the logical DASD device under test, for 
  5119.       example, E: 
  5120.  
  5121.    o  DISKNUMBER - disk number of the physical DASD device under test, for 
  5122.       example, 1: 
  5123.  The SYSINFO.TXT file contains the DEVICENAME keyword and the SYSINFO2.TXT file 
  5124.  contains the DISKNUMBER keyword. 
  5125.  
  5126.  All test scripts close the channels opened to the DASD device and verify 
  5127.  successful status return from every exercised API.  All test scripts log 
  5128.  information to a log file with the same file name and a file name extension, 
  5129.  .LOG.  When current status is queried (for example, track, channel, or drive), 
  5130.  this data is written to DDTT's output windows and to the log file.  Log files 
  5131.  can be examined after the test case has completed. 
  5132.  
  5133.  LOCKLOG.SCR         Locks a logical drive. 
  5134.  
  5135.  ULOCKLOG.SCR        Unlocks a logical drive. 
  5136.  
  5137.  REDETERM.SCR        Redetermines the media for a drive.  It  will rebuild the 
  5138.                      device parameters. 
  5139.  
  5140.  SLOGMAP.SCR         Sets the next logical drive letter that is used to 
  5141.                      reference the drive. 
  5142.  
  5143.  BLOCK.SCR           Determines if the media is removable or fixed. 
  5144.  
  5145.  QLOGMAP.SCR         Returns the logical drive letter that was last used to 
  5146.                      reference the drive. 
  5147.  
  5148.  RLOGT1.SCR          Reads a track from a logical drive. 
  5149.  
  5150.  WLOGT1.SCR          Writes a track to a logical drive. 
  5151.  
  5152.  VLOG.SCR            Verifies a track on a logical drive. 
  5153.  
  5154.  FORMTRK.SCR         Formats a track on the drive A. 
  5155.  
  5156.  QMEDIA.SCR          Returns the media sense information. 
  5157.  
  5158.  GLPARAMS.SCR        Returns the device parameters for a logical drive. 
  5159.  
  5160.  LOCKPHY.SCR         Locks a physical drive. 
  5161.  
  5162.  ULOCKPHY.SCR        Unlocks a physical drive. 
  5163.  
  5164.  VPHY.SCR            Verifies a physical drive. 
  5165.  
  5166.  RPHYT1.SCR          Reads from a physical drive. 
  5167.  
  5168.  WPHYT1.SCR          Writes to a physical drive. 
  5169.  
  5170.  GPPARAMS.SCR        Gets the device parameters of a physical drive. 
  5171.  
  5172.  READFILE.SCR        Reads a file from a physical drive. 
  5173.  
  5174.  WRITEFILE.SCR       Writes a file to a physical drive. 
  5175.  
  5176.  FORMTRK2.SCR        Queries the specified drive for the number of heads and 
  5177.                      then format each head. 
  5178.  
  5179.  RLOGT2.SCR          Reads from a logical drive. It will loop 100 times and 
  5180.                      read the 50 sectors each time.  It will log the time it 
  5181.                      starts the loop and the time when it finishes the loop. 
  5182.  
  5183.  RPHYT2.SCR          Reads from a physical drive. It will loop 100 times and 
  5184.                      read the 30 sectors each time.  It will log the time it 
  5185.                      starts the loop and the time when it finishes the loop. 
  5186.  
  5187.  WLOGT2.SCR          Reads from one logical drive and then writes it to another 
  5188.                      logical drive specified. It will loop 100 times and read 
  5189.                      data from the C drive and store the data in a buffer. 
  5190.                      After the read command is finished, it will write the 
  5191.                      buffer to the specified drive. It will log the time it 
  5192.                      starts the loop and the time when it finishes the loop. 
  5193.  
  5194.  WPHYT2.SCR          Reads from one physical drive and then writes it to 
  5195.                      another logical drive specified. It will loop 100 times 
  5196.                      and read data from the C drive and store the data in a 
  5197.                      buffer. After the read command is finished, it will write 
  5198.                      the buffer to the specified drive. It will log the time it 
  5199.                      starts the loop and the time when it finishes the loop. 
  5200.  
  5201.  
  5202. ΓòÉΓòÉΓòÉ 9.6. Evaluation of Test Case Results ΓòÉΓòÉΓòÉ
  5203.  
  5204. The script files test all of the different DASD IOCtl functions for physical 
  5205. and logical drives.  After each script file has finished executing, it will log 
  5206. all of the test information to a log file. When all of the script files have 
  5207. finished executing, the command file then searches all of the log files for any 
  5208. errors that have occurred. The results from this search are stored in the 
  5209. RESULTS.TXT file. When the command file has finished searching the log files, 
  5210. it will also display the results on the screen. 
  5211.  
  5212.  
  5213. ΓòÉΓòÉΓòÉ 10. DASD ADD Device Driver Test Tool ΓòÉΓòÉΓòÉ
  5214.  
  5215.  
  5216. ΓòÉΓòÉΓòÉ 10.1. Overview ΓòÉΓòÉΓòÉ
  5217.  
  5218. The DASD ADD Functional Verification Tests (FVTs) exercise the functions 
  5219. defined for the Inter-Device-Communication (IDC) interface of DASD device 
  5220. drivers.  The tests are implemented with the Device Driver Test Tool (DDTT). 
  5221. Each test is defined in a script file.  The script files can be modified using 
  5222. a text editor to create additional, specialized test cases. See Using the 
  5223. Device Driver Test Tool (DDTT) for a description of DDTT.  The test scripts 
  5224. give the user a repeatable set of tests that demonstrate DASD function and 
  5225. performance.  Errors are reported and are easily isolated to a specific test 
  5226. sequence and API. 
  5227.  
  5228. User input and output from each thread of the DASD ADD tests is by way of a 
  5229. separate Presentation Manager window.  Multi-threaded test cases log all 
  5230. information to single log file, clearly indicating the actual execution 
  5231. sequence in the event of errors. 
  5232.  
  5233.  
  5234. ΓòÉΓòÉΓòÉ 10.2. DASD ADD Test Architecture ΓòÉΓòÉΓòÉ
  5235.  
  5236. The DDTT provides a common front-parser for test case scripts and tests several 
  5237. devices and APIs. The following DDTT DASD ADD-specific files are required: 
  5238.  
  5239.    o  DASDADD.DLL 
  5240.  
  5241.    o  DASDADD.GRA. 
  5242.  
  5243.    o  DASDADD.SYS 
  5244.  
  5245.  The C++ source code for DASDADD.DLL is available on the IBM Developer 
  5246.  Connection Device Driver Kit for OS/2. 
  5247.  
  5248.  The following required, common components of DDTT implement DDTT's 
  5249.  programmable parser and common test functions such as SET, LOOP, and PAUSE: 
  5250.  
  5251.    o  DDTT.EXE 
  5252.  
  5253.    o  DDTT.DLL 
  5254.  
  5255.    o  GLOBAL.DLL 
  5256.  
  5257.    o  GLOBAL.GRA 
  5258.  
  5259.  
  5260. ΓòÉΓòÉΓòÉ 10.3. Installation ΓòÉΓòÉΓòÉ
  5261.  
  5262. There are two directory structures in the IBM Developer Connection Device 
  5263. Driver Kit for OS/2 that utilize test suites. The TESTCERT substructure 
  5264. contains the executables and test cases and the TESTTOOL substructure contains 
  5265. the files required to change and rebuild the code for a particular test DLL. 
  5266.  
  5267. The following procedure describes installation for running test cases: 
  5268.  
  5269.    1. Copy the executable and DASD ADD test case files from the IBM Developer 
  5270.       Connection Device Driver Kit for OS/2 CD-ROM disc to the hard drive.  All 
  5271.       the executable (.EXE and .DLL) files can reside in one directory, such as 
  5272.       \TDASDADD. Test-case script and command files can also be placed in this 
  5273.       directory on the hard disk. If the target directory is C:\TDASDADD and 
  5274.       the E drive contains the information from the IBM Developer Connection 
  5275.       Device Driver Kit for OS/2 CD-ROM disc, then use the following commands 
  5276.       to copy the DASD ADD test suite: 
  5277.  
  5278.             ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  5279.  
  5280.  
  5281.                [C:\]md tdasdadd
  5282.  
  5283.                [C:\]cd tdasdadd
  5284.  
  5285.                [C:\tdasdadd]copy e:\ddk_x86\testcert\storage\function\dasd\add\*
  5286.  
  5287.                [C:\tdasdadd]copy e:\ddk_x86\testcert\general\ddtt\*
  5288.  
  5289.             ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  5290.  
  5291.    2. Add C:\TDASDADD to the LIBPATH and PATH in the CONFIG.SYS file. 
  5292.  
  5293.    3. To install the device driver, edit your system's CONFIG.SYS file and add 
  5294.       the following line: 
  5295.  
  5296.             ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  5297.  
  5298.                DEVICE=c:\tdasdadd\dasdadd.sys
  5299.  
  5300.             ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  5301.  
  5302.    4. Reboot your machine so the new LIBPATH entry and DEVICE statement take 
  5303.       effect. 
  5304.  
  5305.  
  5306. ΓòÉΓòÉΓòÉ 10.4. Test-Case Execution ΓòÉΓòÉΓòÉ
  5307.  
  5308.    1. Change to the directory where the DASD ADD test script files were copied, 
  5309.       for example, c:\TDASDADD\. 
  5310.  
  5311.    2. To run the tests in synchronous mode, start TESTSY.CMD. To run in 
  5312.       asynchronous mode, start TESTASY.CMD. 
  5313.  
  5314.       Note: 
  5315.  
  5316.         o  Physical drive numbering starts with a "1". 
  5317.         o  Potentially destructive tests are commented out of the above command 
  5318.            files.  Review the DASDADD.GRA grammar file before using these 
  5319.            functions. 
  5320.         o  The asynchronous tests log results to files with extensions of *.L1 
  5321.            and a summary of all ERRORS is collected in the RESULTS1.TXT files. 
  5322.            The synchronous tests log results to files with extensions of *.L2 
  5323.            and a summary of all ERRORs is collected in the RESULTS2.TXT file. 
  5324.  
  5325.  
  5326. ΓòÉΓòÉΓòÉ 10.4.1. DASD ADD Test Grammar Function Calls ΓòÉΓòÉΓòÉ
  5327.  
  5328. The following is a list of the DASD ADD Test Grammar Function Calls: 
  5329.  
  5330.    o  DD_OPEN 
  5331.    o  DD_GETDRIVERS 
  5332.    o  DD_GETDEVICETABLE 
  5333.    o  DD_ALLOCATEUNIT 
  5334.    o  DD_DEALLOCATE 
  5335.    o  DD_CHANGEUNITINFO 
  5336.    o  DD_GETMEDIAGEOMETRY 
  5337.    o  DD_SETMEDIAGEOMETRY 
  5338.    o  DD_GETDEVICEGEOMETRY 
  5339.    o  DD_SETLOGICALGEOMETRY 
  5340.    o  DD_READ 
  5341.    o  DD_READVERIFY 
  5342.    o  DD_READPREFETCH 
  5343.    o  DD_WRITE 
  5344.    o  DD_WRITEVERIFY 
  5345.    o  DD_GETUNITSTATUS 
  5346.    o  DD_GETCHANGELINESTATE 
  5347.    o  DD_GETMEDIASENSE 
  5348.    o  DD_GETLOCKSTATUS 
  5349.    o  DD_ABORT 
  5350.    o  DD_RESET 
  5351.    o  DD_SUSPEND 
  5352.    o  DD_RESUME 
  5353.    o  DD_LOCKMEDIA 
  5354.    o  DD_UNLOCKMEDIA 
  5355.    o  DD_EJECTMEDIA 
  5356.    o  DD_CDB12 
  5357.    o  DD_CDB10 
  5358.    o  DD_CDB6 
  5359.    o  DD_CLOSE 
  5360.    o  DD_CHECKSTATUS 
  5361.  
  5362.  
  5363. ΓòÉΓòÉΓòÉ 10.4.2. DASD ADD Synchronous Calls ΓòÉΓòÉΓòÉ
  5364.  
  5365. The following functions are DASD ADD Synchronous Calls. 
  5366.  
  5367.  
  5368. ΓòÉΓòÉΓòÉ 10.4.2.1. DD_OPEN ΓòÉΓòÉΓòÉ
  5369.  
  5370. The following function opens the DASDADD SYS. 
  5371.  
  5372.  
  5373. ΓòÉΓòÉΓòÉ 10.4.2.1.1. Input Parameter Keywords ΓòÉΓòÉΓòÉ
  5374.  
  5375.  
  5376. None. 
  5377.  
  5378.  
  5379. ΓòÉΓòÉΓòÉ 10.4.2.1.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  5380.  
  5381. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  5382. ΓöéKeyword                       ΓöéType   ΓöéDescription                   Γöé
  5383. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5384. ΓöéDRIVEHANDLE                   ΓöéNUM    ΓöéDrive handle for DASD device  Γöé
  5385. Γöé                              Γöé       Γöéunder test                    Γöé
  5386. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  5387.  
  5388.  
  5389. ΓòÉΓòÉΓòÉ 10.4.2.1.3. Logged Data ΓòÉΓòÉΓòÉ
  5390.  
  5391.  
  5392. None. 
  5393.  
  5394.  
  5395. ΓòÉΓòÉΓòÉ 10.4.2.2. DD_GETDRIVERS ΓòÉΓòÉΓòÉ
  5396.  
  5397. The following function gets all installed drivers of DASD device class. 
  5398.  
  5399.  
  5400. ΓòÉΓòÉΓòÉ 10.4.2.2.1. Input Parameter Keywords ΓòÉΓòÉΓòÉ
  5401.  
  5402. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  5403. ΓöéKeyword                       ΓöéType   ΓöéDescription                   Γöé
  5404. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5405. ΓöéDRIVEHANDLE                   ΓöéNUM    ΓöéDrive handle for DASD device  Γöé
  5406. Γöé                              Γöé       Γöéunder test                    Γöé
  5407. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  5408.  
  5409.  
  5410. ΓòÉΓòÉΓòÉ 10.4.2.2.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  5411.  
  5412. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  5413. ΓöéKeyword                       ΓöéType   ΓöéDescription                   Γöé
  5414. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5415. ΓöéDRVNAME                       ΓöéSTRING Γöé16-character driver name      Γöé
  5416. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  5417.  
  5418.  
  5419. ΓòÉΓòÉΓòÉ 10.4.2.2.3. Logged Data ΓòÉΓòÉΓòÉ
  5420.  
  5421.  DRIVERS                  Names of installed drivers on system 
  5422.  
  5423.  
  5424. ΓòÉΓòÉΓòÉ 10.4.2.3. DD_GETDEVICETABLE ΓòÉΓòÉΓòÉ
  5425.  
  5426. The following function gets the devicetable for a specified device driver. 
  5427.  
  5428.  
  5429. ΓòÉΓòÉΓòÉ 10.4.2.3.1. Input Parameter Keywords ΓòÉΓòÉΓòÉ
  5430.  
  5431. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  5432. ΓöéKeyword                       ΓöéType   ΓöéDescription                   Γöé
  5433. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5434. ΓöéDRIVEHANDLE                   ΓöéNUM    ΓöéDrive handle for DASD device  Γöé
  5435. Γöé                              Γöé       Γöéunder test                    Γöé
  5436. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5437. ΓöéDRVNAME                       ΓöéSTRING Γöé16-character driver name      Γöé
  5438. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5439. ΓöéMODE                          ΓöéNUM    Γöé(0 OR 1) Optional             Γöé
  5440. Γöé                              Γöé       Γöé0 = Asynchronous (Default)    Γöé
  5441. Γöé                              Γöé       Γöé1 = Synchronous               Γöé
  5442. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  5443.  
  5444.  
  5445. ΓòÉΓòÉΓòÉ 10.4.2.3.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  5446.  
  5447.  
  5448. None. 
  5449.  
  5450.  
  5451. ΓòÉΓòÉΓòÉ 10.4.2.3.3. Logged Data ΓòÉΓòÉΓòÉ
  5452.  
  5453.  DEVICETABLE              Add major support level 
  5454.                           Add minor support level 
  5455.                           Add handle support level 
  5456.                           Number of adapters 
  5457.                           Adapter name 
  5458.                           Adapter information 
  5459.                           Number of units this adapter supports 
  5460.                           Adapter-to-device bus protocol used 
  5461.                           Adapter I/O access 
  5462.                           Adapter host bus 
  5463.                           Adapter SCSI target ID 
  5464.                           Adapter SCSI LUN 
  5465.                           Adapter flags 
  5466.                           Unit information 
  5467.                           Unit adapter index 
  5468.                           Unit index 
  5469.                           Unit flags 
  5470.                           Unit handle 
  5471.                           Unit filter Add handle 
  5472.                           Unit type 
  5473.                           Unit queuing count 
  5474.                           Unit SCSI target ID; Unit SCSI LUN 
  5475.  
  5476.  
  5477. ΓòÉΓòÉΓòÉ 10.4.2.4. DD_ALLOCATEUNIT ΓòÉΓòÉΓòÉ
  5478.  
  5479. The following function allocates a given unit. 
  5480.  
  5481.  
  5482. ΓòÉΓòÉΓòÉ 10.4.2.4.1. Input Parameter Keywords ΓòÉΓòÉΓòÉ
  5483.  
  5484. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  5485. ΓöéKeyword                       ΓöéType   ΓöéDescription                   Γöé
  5486. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5487. ΓöéDRIVEHANDLE                   ΓöéNUM    ΓöéAutomatically set by DD_OPEN  Γöé
  5488. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5489. ΓöéDRVNAME                       ΓöéSTRING Γöé16-character driver name      Γöé
  5490. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5491. ΓöéUNITHANDLE                    ΓöéNUM    ΓöéHandle to Unit to be tested   Γöé
  5492. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5493. ΓöéMODE                          ΓöéNUM    Γöé(0 OR 1) Optional             Γöé
  5494. Γöé                              Γöé       Γöé0 = Asynchronous (Default)    Γöé
  5495. Γöé                              Γöé       Γöé1 = Synchronous               Γöé
  5496. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  5497.  
  5498.  
  5499. ΓòÉΓòÉΓòÉ 10.4.2.4.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  5500.  
  5501.  
  5502. None. 
  5503.  
  5504.  
  5505. ΓòÉΓòÉΓòÉ 10.4.2.4.3. Logged Data ΓòÉΓòÉΓòÉ
  5506.  
  5507.  STATUS                   Only on failure 
  5508.  ERROR                    Only on failure 
  5509.  
  5510.  
  5511. ΓòÉΓòÉΓòÉ 10.4.2.5. DD_DEALLOCATE ΓòÉΓòÉΓòÉ
  5512.  
  5513. The following function deallocates given unit. 
  5514.  
  5515.  
  5516. ΓòÉΓòÉΓòÉ 10.4.2.5.1. Input Parameter Keywords ΓòÉΓòÉΓòÉ
  5517.  
  5518. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  5519. ΓöéKeyword                       ΓöéType   ΓöéDescription                   Γöé
  5520. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5521. ΓöéDRIVEHANDLE                   ΓöéNUM    ΓöéAutomatically set by DD_OPEN  Γöé
  5522. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5523. ΓöéDRVNAME                       ΓöéSTRING Γöé16-character driver name      Γöé
  5524. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5525. ΓöéUNITHANDLE                    ΓöéNUM    ΓöéHandle to Unit to be tested   Γöé
  5526. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5527. ΓöéMODE                          ΓöéNUM    Γöé(0 OR 1) Optional             Γöé
  5528. Γöé                              Γöé       Γöé0 = Asynchronous (Default)    Γöé
  5529. Γöé                              Γöé       Γöé1 = Synchronous               Γöé
  5530. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  5531.  
  5532.  
  5533. ΓòÉΓòÉΓòÉ 10.4.2.5.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  5534.  
  5535.  
  5536. None. 
  5537.  
  5538.  
  5539. ΓòÉΓòÉΓòÉ 10.4.2.5.3. Logged Data ΓòÉΓòÉΓòÉ
  5540.  
  5541.  STATUS                   Only on failure 
  5542.  ERROR                    Only on failure 
  5543.  
  5544.  
  5545. ΓòÉΓòÉΓòÉ 10.4.2.6. DD_CHANGEUNITINFO ΓòÉΓòÉΓòÉ
  5546.  
  5547. The following function changes UNITINFO for given unit. 
  5548.  
  5549.  
  5550. ΓòÉΓòÉΓòÉ 10.4.2.6.1. Input Parameter Keywords ΓòÉΓòÉΓòÉ
  5551.  
  5552. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  5553. ΓöéKeyword                       ΓöéType   ΓöéDescription                   Γöé
  5554. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5555. ΓöéDRIVEHANDLE                   ΓöéNUM    ΓöéAutomatically set by DD_OPEN  Γöé
  5556. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5557. ΓöéDRVNAME                       ΓöéSTRING Γöé16-character driver name      Γöé
  5558. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5559. ΓöéUNITHANDLE                    ΓöéNUM    ΓöéHandle to Unit to be tested   Γöé
  5560. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5561. ΓöéADAPTERINDEX                  ΓöéNUM    ΓöéObtained by DD_GETDEVICETABLE Γöé
  5562. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5563. ΓöéUNITINDEX                     ΓöéNUM    ΓöéObtained by DD_GETDEVICETABLE Γöé
  5564. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5565. ΓöéUNITFLAGS                     ΓöéNUM    ΓöéObtained by DD_GETDEVICETABLE Γöé
  5566. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5567. ΓöéFILTERHANDLE                  ΓöéNUM    ΓöéObtained by DD_GETDEVICETABLE Γöé
  5568. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5569. ΓöéUNITTYPE                      ΓöéNUM    ΓöéObtained by DD_GETDEVICETABLE Γöé
  5570. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5571. ΓöéQUEUINGCOUNT                  ΓöéNUM    ΓöéObtained by DD_GETDEVICETABLE Γöé
  5572. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5573. ΓöéUNITSCSIID                    ΓöéNUM    ΓöéObtained by DD_GETDEVICETABLE Γöé
  5574. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5575. ΓöéUNITSCSILUN                   ΓöéNUM    ΓöéObtained by DD_GETDEVICETABLE Γöé
  5576. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5577. ΓöéMODE                          ΓöéNUM    Γöé(0 OR 1) Optional             Γöé
  5578. Γöé                              Γöé       Γöé0 = Asynchronous (Default)    Γöé
  5579. Γöé                              Γöé       Γöé1 = Synchronous               Γöé
  5580. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  5581.  
  5582.  
  5583. ΓòÉΓòÉΓòÉ 10.4.2.6.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  5584.  
  5585.  
  5586. None. 
  5587.  
  5588.  
  5589. ΓòÉΓòÉΓòÉ 10.4.2.6.3. Logged Data ΓòÉΓòÉΓòÉ
  5590.  
  5591.  STATUS                   Only on failure 
  5592.  ERROR                    Only on failure 
  5593.  
  5594.  
  5595. ΓòÉΓòÉΓòÉ 10.4.2.7. DD_GETMEDIAGEOMETRY ΓòÉΓòÉΓòÉ
  5596.  
  5597. The following function gets Media Geometry for given unit. 
  5598.  
  5599.  
  5600. ΓòÉΓòÉΓòÉ 10.4.2.7.1. Input Parameter Keywords ΓòÉΓòÉΓòÉ
  5601.  
  5602. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  5603. ΓöéKeyword                       ΓöéType   ΓöéDescription                   Γöé
  5604. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5605. ΓöéDRIVEHANDLE                   ΓöéNUM    ΓöéAutomatically set by DD_OPEN  Γöé
  5606. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5607. ΓöéDRVNAME                       ΓöéSTRING Γöé16-character driver name      Γöé
  5608. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5609. ΓöéUNITHANDLE                    ΓöéNUM    ΓöéHandle to Unit to be tested   Γöé
  5610. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5611. ΓöéMODE                          ΓöéNUM    Γöé(0 OR 1) Optional             Γöé
  5612. Γöé                              Γöé       Γöé0 = Asynchronous (Default)    Γöé
  5613. Γöé                              Γöé       Γöé1 = Synchronous               Γöé
  5614. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  5615.  
  5616.  
  5617. ΓòÉΓòÉΓòÉ 10.4.2.7.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  5618.  
  5619.  
  5620. None. 
  5621.  
  5622.  
  5623. ΓòÉΓòÉΓòÉ 10.4.2.7.3. Logged Data ΓòÉΓòÉΓòÉ
  5624.  
  5625.  STATUS                   Only on failure 
  5626.  ERROR                    Only on failure 
  5627.  TOTALSECTORS             Total sectors for current media in drive 
  5628.  BYTESPERSECTOR           Total bytes-per-sector for current media in drive 
  5629.  NUMHEAD                  Number of heads for current media in drive 
  5630.  TOTALCYLINDER            Total cylinders for current media in drive 
  5631.  SECTORPERTRACK           Sectors-per-track for current media in drive 
  5632.  
  5633.  
  5634. ΓòÉΓòÉΓòÉ 10.4.2.8. DD_SETMEDIAGEOMETRY ΓòÉΓòÉΓòÉ
  5635.  
  5636. The following function sets Media Geometry for the given unit. 
  5637.  
  5638.  
  5639. ΓòÉΓòÉΓòÉ 10.4.2.8.1. Input Parameter Keywords ΓòÉΓòÉΓòÉ
  5640.  
  5641. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  5642. ΓöéKeyword                  ΓöéType  ΓöéDescription                   Γöé
  5643. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5644. ΓöéDRIVEHANDLE              ΓöéNUM   ΓöéAutomatically set by DD_OPEN  Γöé
  5645. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5646. ΓöéDRVNAME                  ΓöéSTRINGΓöé16-character driver name      Γöé
  5647. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5648. ΓöéUNITHANDLE               ΓöéNUM   ΓöéHandle to Unit to be tested   Γöé
  5649. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5650. ΓöéTOTALSECTORS             ΓöéNUM   ΓöéObtained by                   Γöé
  5651. Γöé                         Γöé      ΓöéDD_GETMEDIAGEOMETRY           Γöé
  5652. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5653. ΓöéBYTESPERSECTOR           ΓöéNUM   ΓöéObtained by                   Γöé
  5654. Γöé                         Γöé      ΓöéDD_GETMEDIAGEOMETRY           Γöé
  5655. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5656. ΓöéNUMHEAD                  ΓöéNUM   ΓöéObtained by                   Γöé
  5657. Γöé                         Γöé      ΓöéDD_GETMEDIAGEOMETRY           Γöé
  5658. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5659. ΓöéTOTALCYLINDER            ΓöéNUM   ΓöéObtained by                   Γöé
  5660. Γöé                         Γöé      ΓöéDD_GETMEDIAGEOMETRY           Γöé
  5661. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5662. ΓöéSECTORPERTRACK           ΓöéNUM   ΓöéObtained by                   Γöé
  5663. Γöé                         Γöé      ΓöéDD_GETMEDIAGEOMETRY           Γöé
  5664. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5665. ΓöéMODE                     ΓöéNUM   Γöé(0 OR 1) Optional             Γöé
  5666. Γöé                         Γöé      Γöé0 = Asynchronous (Default)    Γöé
  5667. Γöé                         Γöé      Γöé1 = Synchronous               Γöé
  5668. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  5669.  
  5670.  
  5671. ΓòÉΓòÉΓòÉ 10.4.2.8.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  5672.  
  5673.  
  5674. None. 
  5675.  
  5676.  
  5677. ΓòÉΓòÉΓòÉ 10.4.2.8.3. Logged Data ΓòÉΓòÉΓòÉ
  5678.  
  5679.  STATUS                   Only on failure 
  5680.  
  5681.  ERROR                    Only on failure 
  5682.  
  5683.  
  5684. ΓòÉΓòÉΓòÉ 10.4.2.9. DD_GETDEVICEGEOMETRY ΓòÉΓòÉΓòÉ
  5685.  
  5686. The following function gets device geometry. 
  5687.  
  5688.  
  5689. ΓòÉΓòÉΓòÉ 10.4.2.9.1. Input Parameter Keywords ΓòÉΓòÉΓòÉ
  5690.  
  5691. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  5692. ΓöéKeyword                       ΓöéType   ΓöéDescription                   Γöé
  5693. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5694. ΓöéDRIVEHANDLE                   ΓöéNUM    ΓöéAutomatically set by DD_OPEN  Γöé
  5695. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5696. ΓöéDRVNAME                       ΓöéSTRING Γöé16-character driver name      Γöé
  5697. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5698. ΓöéUNITHANDLE                    ΓöéNUM    ΓöéHandle to Unit to be tested   Γöé
  5699. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5700. ΓöéMODE                          ΓöéNUM    Γöé(0 OR 1) Optional             Γöé
  5701. Γöé                              Γöé       Γöé0 = Asynchronous (Default)    Γöé
  5702. Γöé                              Γöé       Γöé1 = Synchronous               Γöé
  5703. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  5704.  
  5705.  
  5706. ΓòÉΓòÉΓòÉ 10.4.2.9.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  5707.  
  5708.  
  5709. None. 
  5710.  
  5711.  
  5712. ΓòÉΓòÉΓòÉ 10.4.2.9.3. Logged Data ΓòÉΓòÉΓòÉ
  5713.  
  5714.  STATUS                   Only on failure 
  5715.  
  5716.  ERROR                    Only on failure 
  5717.  
  5718.  TOTALSECTORS             Total sectors for current device. 
  5719.  
  5720.  BYTESPERSECTOR           Bytes-per-sector for current device. 
  5721.  
  5722.  NUMHEAD                  Number-of-heads for current device. 
  5723.  
  5724.  TOTALCYLINDER            Total cylinders for current device 
  5725.  
  5726.  SECTORPERTRACK           Sectors-per-track for current device 
  5727.  
  5728.  
  5729. ΓòÉΓòÉΓòÉ 10.4.2.10. DD_SETLOGICALGEOMETRY ΓòÉΓòÉΓòÉ
  5730.  
  5731. The following function sets logical geometry. 
  5732.  
  5733.  
  5734. ΓòÉΓòÉΓòÉ 10.4.2.10.1. Input Parameter Keywords ΓòÉΓòÉΓòÉ
  5735.  
  5736. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  5737. ΓöéKeyword                  ΓöéType  ΓöéDescription                   Γöé
  5738. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5739. ΓöéDRIVEHANDLE              ΓöéNUM   ΓöéAutomatically set by DD_OPEN  Γöé
  5740. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5741. ΓöéDRVNAME                  ΓöéSTRINGΓöé16-character driver name      Γöé
  5742. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5743. ΓöéUNITHANDLE               ΓöéNUM   ΓöéHandle to Unit to be tested   Γöé
  5744. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5745. ΓöéTOTALSECTORS             ΓöéNUM   ΓöéObtained by                   Γöé
  5746. Γöé                         Γöé      ΓöéDD_GETMEDIAGEOMETRY           Γöé
  5747. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5748. ΓöéBYTESPERSECTOR           ΓöéNUM   ΓöéObtained by                   Γöé
  5749. Γöé                         Γöé      ΓöéDD_GETMEDIAGEOMETRY           Γöé
  5750. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5751. ΓöéNUMHEAD                  ΓöéNUM   ΓöéObtained by                   Γöé
  5752. Γöé                         Γöé      ΓöéDD_GETMEDIAGEOMETRY           Γöé
  5753. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5754. ΓöéTOTALCYLINDER            ΓöéNUM   ΓöéObtained by                   Γöé
  5755. Γöé                         Γöé      ΓöéDD_GETMEDIAGEOMETRY           Γöé
  5756. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5757. ΓöéSECTORPERTRACK           ΓöéNUM   ΓöéObtained by                   Γöé
  5758. Γöé                         Γöé      ΓöéDD_GETMEDIAGEOMETRY           Γöé
  5759. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5760. ΓöéMODE                     ΓöéNUM   Γöé(0 OR 1) Optional             Γöé
  5761. Γöé                         Γöé      Γöé0 = Asynchronous (Default)    Γöé
  5762. Γöé                         Γöé      Γöé1 = Synchronous               Γöé
  5763. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  5764.  
  5765.  
  5766. ΓòÉΓòÉΓòÉ 10.4.2.10.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  5767.  
  5768.  
  5769. None. 
  5770.  
  5771.  
  5772. ΓòÉΓòÉΓòÉ 10.4.2.10.3. Logged Data ΓòÉΓòÉΓòÉ
  5773.  
  5774.  STATUS                   Only on failure 
  5775.  
  5776.  ERROR                    Only on failure 
  5777.  
  5778.  
  5779. ΓòÉΓòÉΓòÉ 10.4.2.11. DD_READ ΓòÉΓòÉΓòÉ
  5780.  
  5781. The following function reads from the given unit. 
  5782.  
  5783.  
  5784. ΓòÉΓòÉΓòÉ 10.4.2.11.1. Input Parameter Keywords ΓòÉΓòÉΓòÉ
  5785.  
  5786. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  5787. ΓöéKeyword                       ΓöéType   ΓöéDescription                   Γöé
  5788. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5789. ΓöéDRIVEHANDLE                   ΓöéNUM    ΓöéAutomatically set by DD_OPEN  Γöé
  5790. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5791. ΓöéDRVNAME                       ΓöéSTRING Γöé16-character driver name      Γöé
  5792. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5793. ΓöéUNITHANDLE                    ΓöéNUM    ΓöéHandle to Unit to be tested   Γöé
  5794. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5795. ΓöéMEMSIZE                       ΓöéNUM    ΓöéTotal bytes in SCATTERGATHER  Γöé
  5796. Γöé                              Γöé       Γöélist                          Γöé
  5797. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5798. ΓöéNBUFF                         ΓöéNUM    ΓöéNumber of elements in         Γöé
  5799. Γöé                              Γöé       ΓöéSCATTERGATHER list            Γöé
  5800. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5801. ΓöéBLOCKCOUNT                    ΓöéNUM    ΓöéNumber of sectors             Γöé
  5802. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5803. ΓöéBLOCKSIZE                     ΓöéNUM    ΓöéSector size                   Γöé
  5804. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5805. ΓöéREADFLAGS                     ΓöéNUM    ΓöéRead Flags                    Γöé
  5806. Γöé                              Γöé       ΓöéWhere                         Γöé
  5807. Γöé                              Γöé       Γöé0=NONE,                       Γöé
  5808. Γöé                              Γöé       Γöé1=DISABLE WRITE CACHE,        Γöé
  5809. Γöé                              Γöé       Γöé2=DISABLE READ CACHE          Γöé
  5810. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5811. ΓöéRBA                           ΓöéNUM    ΓöéRelative Block Address        Γöé
  5812. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5813. ΓöéMODE                          ΓöéNUM    Γöé(0 OR 1) Optional             Γöé
  5814. Γöé                              Γöé       Γöé0 = Asynchronous (Default)    Γöé
  5815. Γöé                              Γöé       Γöé1 = Synchronous               Γöé
  5816. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  5817.  
  5818.  
  5819. ΓòÉΓòÉΓòÉ 10.4.2.11.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  5820.  
  5821.  
  5822. None. 
  5823.  
  5824.  
  5825. ΓòÉΓòÉΓòÉ 10.4.2.11.3. Logged Data ΓòÉΓòÉΓòÉ
  5826.  
  5827.  STATUS                   Only on failure 
  5828.  
  5829.  ERROR                    Only on failure 
  5830.  
  5831.  READ BLOCKS              Blocks read successfully 
  5832.  
  5833.  
  5834. ΓòÉΓòÉΓòÉ 10.4.2.12. DD_READVERIFY ΓòÉΓòÉΓòÉ
  5835.  
  5836. The following function verifies read from the given unit. 
  5837.  
  5838.  
  5839. ΓòÉΓòÉΓòÉ 10.4.2.12.1. Input Parameter Keywords ΓòÉΓòÉΓòÉ
  5840.  
  5841. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  5842. ΓöéKeyword                       ΓöéType   ΓöéDescription                   Γöé
  5843. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5844. ΓöéDRIVEHANDLE                   ΓöéNUM    ΓöéAutomatically set by DD_OPEN  Γöé
  5845. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5846. ΓöéDRVNAME                       ΓöéSTRING Γöé16-character driver name      Γöé
  5847. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5848. ΓöéUNITHANDLE                    ΓöéNUM    ΓöéHandle to Unit to be tested   Γöé
  5849. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5850. ΓöéMEMSIZE                       ΓöéNUM    ΓöéTotal bytes in SCATTERGATHER  Γöé
  5851. Γöé                              Γöé       Γöélist                          Γöé
  5852. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5853. ΓöéNBUFF                         ΓöéNUM    ΓöéNumber of elements in         Γöé
  5854. Γöé                              Γöé       ΓöéSCATTERGATHER list            Γöé
  5855. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5856. ΓöéBLOCKCOUNT                    ΓöéNUM    ΓöéNumber of sectors             Γöé
  5857. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5858. ΓöéBLOCKSIZE                     ΓöéNUM    ΓöéSector size                   Γöé
  5859. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5860. ΓöéREADFLAGS                     ΓöéNUM    ΓöéRead Flags                    Γöé
  5861. Γöé                              Γöé       ΓöéWhere                         Γöé
  5862. Γöé                              Γöé       Γöé0=NONE,                       Γöé
  5863. Γöé                              Γöé       Γöé1=DISABLE WRITE CACHE,        Γöé
  5864. Γöé                              Γöé       Γöé2=DISABLE READ CACHE          Γöé
  5865. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5866. ΓöéRBA                           ΓöéNUM    ΓöéRelative Block Address        Γöé
  5867. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5868. ΓöéMODE                          ΓöéNUM    Γöé(0 OR 1) Optional             Γöé
  5869. Γöé                              Γöé       Γöé0 = Asynchronous (Default)    Γöé
  5870. Γöé                              Γöé       Γöé1 = Synchronous               Γöé
  5871. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  5872.  
  5873.  
  5874. ΓòÉΓòÉΓòÉ 10.4.2.12.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  5875.  
  5876.  
  5877. None. 
  5878.  
  5879.  
  5880. ΓòÉΓòÉΓòÉ 10.4.2.12.3. Logged Data ΓòÉΓòÉΓòÉ
  5881.  
  5882.  STATUS                   Only on failure 
  5883.  
  5884.  ERROR                    Only on failure 
  5885.  
  5886.  Read Blocks              Blocks read successfully 
  5887.  
  5888.  
  5889. ΓòÉΓòÉΓòÉ 10.4.2.13. DD_READPREFETCH ΓòÉΓòÉΓòÉ
  5890.  
  5891. The following function reads prefetch. 
  5892.  
  5893.  
  5894. ΓòÉΓòÉΓòÉ 10.4.2.13.1. Input Parameter Keywords ΓòÉΓòÉΓòÉ
  5895.  
  5896. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  5897. ΓöéKeyword                       ΓöéType   ΓöéDescription                   Γöé
  5898. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5899. ΓöéDRIVEHANDLE                   ΓöéNUM    ΓöéAutomatically set by DD_OPEN  Γöé
  5900. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5901. ΓöéDRVNAME                       ΓöéSTRING Γöé16-character driver name      Γöé
  5902. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5903. ΓöéUNITHANDLE                    ΓöéNUM    ΓöéHandle to Unit to be tested   Γöé
  5904. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5905. ΓöéMEMSIZE                       ΓöéNUM    ΓöéTotal bytes in SCATTERGATHER  Γöé
  5906. Γöé                              Γöé       Γöélist                          Γöé
  5907. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5908. ΓöéNBUFF                         ΓöéNUM    ΓöéNumber of elements in         Γöé
  5909. Γöé                              Γöé       ΓöéSCATTERGATHER list            Γöé
  5910. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5911. ΓöéBLOCKCOUNT                    ΓöéNUM    ΓöéNumber of sectors             Γöé
  5912. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5913. ΓöéBLOCKSIZE                     ΓöéNUM    ΓöéSECTOR SIZE                   Γöé
  5914. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5915. ΓöéREADFLAGS                     ΓöéNUM    ΓöéREAD FLAGS                    Γöé
  5916. Γöé                              Γöé       ΓöéWhere                         Γöé
  5917. Γöé                              Γöé       Γöé0=NONE,                       Γöé
  5918. Γöé                              Γöé       Γöé1=DISABLE WRITE CACHE,        Γöé
  5919. Γöé                              Γöé       Γöé2=DISABLE READ CACHE          Γöé
  5920. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5921. ΓöéRBA                           ΓöéNUM    ΓöéRelative Block Address        Γöé
  5922. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5923. ΓöéMODE                          ΓöéNUM    Γöé(0 OR 1) Optional             Γöé
  5924. Γöé                              Γöé       Γöé0 = Asynchronous (Default)    Γöé
  5925. Γöé                              Γöé       Γöé1 = Synchronous               Γöé
  5926. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  5927.  
  5928.  
  5929. ΓòÉΓòÉΓòÉ 10.4.2.13.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  5930.  
  5931.  
  5932. None. 
  5933.  
  5934.  
  5935. ΓòÉΓòÉΓòÉ 10.4.2.13.3. Logged Data ΓòÉΓòÉΓòÉ
  5936.  
  5937.  STATUS                   Only on failure 
  5938.  
  5939.  ERROR                    Only on failure 
  5940.  
  5941.  READ BLOCKS              Blocks read successfully 
  5942.  
  5943.  
  5944. ΓòÉΓòÉΓòÉ 10.4.2.14. DD_WRITE ΓòÉΓòÉΓòÉ
  5945.  
  5946. The following function writes to a given unit. 
  5947.  
  5948.  
  5949. ΓòÉΓòÉΓòÉ 10.4.2.14.1. Input Parameter Keywords ΓòÉΓòÉΓòÉ
  5950.  
  5951. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  5952. ΓöéKeyword                       ΓöéType   ΓöéDescription                   Γöé
  5953. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5954. ΓöéDRIVEHANDLE                   ΓöéNUM    ΓöéAutomatically set by DD_OPEN  Γöé
  5955. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5956. ΓöéDRVNAME                       ΓöéSTRING Γöé16-character driver name      Γöé
  5957. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5958. ΓöéUNITHANDLE                    ΓöéNUM    ΓöéHandle to Unit to be tested   Γöé
  5959. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5960. ΓöéMEMSIZE                       ΓöéNUM    ΓöéTotal bytes in SCATTERGATHER  Γöé
  5961. Γöé                              Γöé       Γöélist                          Γöé
  5962. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5963. ΓöéNBUFF                         ΓöéNUM    ΓöéNumber of elements in         Γöé
  5964. Γöé                              Γöé       ΓöéSCATTERGATHER list            Γöé
  5965. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5966. ΓöéBLOCKCOUNT                    ΓöéNUM    ΓöéNumber of sectors             Γöé
  5967. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5968. ΓöéBLOCKSIZE                     ΓöéNUM    ΓöéSector size                   Γöé
  5969. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5970. ΓöéREADFLAGS                     ΓöéNUM    ΓöéRead flags                    Γöé
  5971. Γöé                              Γöé       ΓöéWhere                         Γöé
  5972. Γöé                              Γöé       Γöé0=NONE,                       Γöé
  5973. Γöé                              Γöé       Γöé1=DISABLE WRITE CACHE,        Γöé
  5974. Γöé                              Γöé       Γöé2=DISABLE READ CACHE          Γöé
  5975. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5976. ΓöéRBA                           ΓöéNUM    ΓöéRelative Block Address        Γöé
  5977. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  5978. ΓöéMODE                          ΓöéNUM    Γöé(0 OR 1) Optional             Γöé
  5979. Γöé                              Γöé       Γöé0 = Asynchronous (Default)    Γöé
  5980. Γöé                              Γöé       Γöé1 = Synchronous               Γöé
  5981. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  5982.  
  5983.  
  5984. ΓòÉΓòÉΓòÉ 10.4.2.14.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  5985.  
  5986.  
  5987. None. 
  5988.  
  5989.  
  5990. ΓòÉΓòÉΓòÉ 10.4.2.14.3. Logged Data ΓòÉΓòÉΓòÉ
  5991.  
  5992.  STATUS                   Only on failure 
  5993.  
  5994.  ERROR                    Only on failure 
  5995.  
  5996.  WRITTEN BLOCKS           Blocks written successfully 
  5997.  
  5998.  
  5999. ΓòÉΓòÉΓòÉ 10.4.2.15. DD_WRITEVERIFY ΓòÉΓòÉΓòÉ
  6000.  
  6001. The following function writes verify. 
  6002.  
  6003.  
  6004. ΓòÉΓòÉΓòÉ 10.4.2.15.1. Input Parameter Keywords ΓòÉΓòÉΓòÉ
  6005.  
  6006. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  6007. ΓöéKeyword                       ΓöéType   ΓöéDescription                   Γöé
  6008. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6009. ΓöéDRIVEHANDLE                   ΓöéNUM    ΓöéAutomatically set by DD_OPEN  Γöé
  6010. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6011. ΓöéDRVNAME                       ΓöéSTRING Γöé16-character driver name      Γöé
  6012. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6013. ΓöéUNITHANDLE                    ΓöéNUM    ΓöéHandle to Unit to be tested   Γöé
  6014. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6015. ΓöéMEMSIZE                       ΓöéNUM    ΓöéTotal bytes in SCATTERGATHER  Γöé
  6016. Γöé                              Γöé       Γöélist                          Γöé
  6017. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6018. ΓöéNBUFF                         ΓöéNUM    ΓöéNumber of elements in         Γöé
  6019. Γöé                              Γöé       ΓöéSCATTERGATHER list            Γöé
  6020. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6021. ΓöéBLOCKCOUNT                    ΓöéNUM    ΓöéNumber of sectors             Γöé
  6022. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6023. ΓöéBLOCKSIZE                     ΓöéNUM    ΓöéSector size                   Γöé
  6024. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6025. ΓöéREADFLAGS                     ΓöéNUM    ΓöéRead flags                    Γöé
  6026. Γöé                              Γöé       ΓöéWhere                         Γöé
  6027. Γöé                              Γöé       Γöé0=NONE,                       Γöé
  6028. Γöé                              Γöé       Γöé1=DISABLE WRITE CACHE,        Γöé
  6029. Γöé                              Γöé       Γöé2=DISABLE READ CACHE          Γöé
  6030. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6031. ΓöéRBA                           ΓöéNUM    ΓöéRelative Block Address        Γöé
  6032. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6033. ΓöéMODE                          ΓöéNUM    Γöé(0 OR 1) Optional             Γöé
  6034. Γöé                              Γöé       Γöé0 = Asynchronous (Default)    Γöé
  6035. Γöé                              Γöé       Γöé1 = Synchronous               Γöé
  6036. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  6037.  
  6038.  
  6039. ΓòÉΓòÉΓòÉ 10.4.2.15.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  6040.  
  6041.  
  6042. None. 
  6043.  
  6044.  
  6045. ΓòÉΓòÉΓòÉ 10.4.2.15.3. Logged Data ΓòÉΓòÉΓòÉ
  6046.  
  6047.  STATUS                   Only on failure 
  6048.  
  6049.  ERROR                    Only on failure 
  6050.  
  6051.  WRITTEN BLOCKS           Blocks written successfully 
  6052.  
  6053.  
  6054. ΓòÉΓòÉΓòÉ 10.4.2.16. DD_GETUNITSTATUS ΓòÉΓòÉΓòÉ
  6055.  
  6056. The following function gets unit status. 
  6057.  
  6058.  
  6059. ΓòÉΓòÉΓòÉ 10.4.2.16.1. Input Parameter Keywords ΓòÉΓòÉΓòÉ
  6060.  
  6061. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  6062. ΓöéKeyword                       ΓöéType   ΓöéDescription                   Γöé
  6063. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6064. ΓöéDRIVEHANDLE                   ΓöéNUM    ΓöéAutomatically set by DD_OPEN  Γöé
  6065. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6066. ΓöéDRVNAME                       ΓöéSTRING Γöé16-character driver name      Γöé
  6067. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6068. ΓöéUNITHANDLE                    ΓöéNUM    ΓöéHandle to Unit to be tested   Γöé
  6069. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6070. ΓöéMODE                          ΓöéNUM    Γöé(0 OR 1) Optional             Γöé
  6071. Γöé                              Γöé       Γöé0 = Asynchronous (Default)    Γöé
  6072. Γöé                              Γöé       Γöé1 = Synchronous               Γöé
  6073. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  6074.  
  6075.  
  6076. ΓòÉΓòÉΓòÉ 10.4.2.16.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  6077.  
  6078.  
  6079. None. 
  6080.  
  6081.  
  6082. ΓòÉΓòÉΓòÉ 10.4.2.16.3. Logged Data ΓòÉΓòÉΓòÉ
  6083.  
  6084.  STATUS                   Only on failure 
  6085.  
  6086.  ERROR                    Only on failure 
  6087.  
  6088.  UNIT STATUS BITS         Set bits in unit status 
  6089.  
  6090.  
  6091. ΓòÉΓòÉΓòÉ 10.4.2.17. DD_GETCHANGELINESTATE ΓòÉΓòÉΓòÉ
  6092.  
  6093. The following function gets CHANGELINE status. 
  6094.  
  6095.  
  6096. ΓòÉΓòÉΓòÉ 10.4.2.17.1. Input Parameter Keywords ΓòÉΓòÉΓòÉ
  6097.  
  6098. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  6099. ΓöéKeyword                       ΓöéType   ΓöéDescription                   Γöé
  6100. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6101. ΓöéDRIVEHANDLE                   ΓöéNUM    ΓöéAutomatically set by DD_OPEN  Γöé
  6102. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6103. ΓöéDRVNAME                       ΓöéSTRING Γöé16-character driver name      Γöé
  6104. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6105. ΓöéUNITHANDLE                    ΓöéNUM    ΓöéHandle to Unit to be tested   Γöé
  6106. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6107. ΓöéMODE                          ΓöéNUM    Γöé(0 OR 1) Optional             Γöé
  6108. Γöé                              Γöé       Γöé0 = Asynchronous (Default)    Γöé
  6109. Γöé                              Γöé       Γöé1 = Synchronous               Γöé
  6110. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  6111.  
  6112.  
  6113. ΓòÉΓòÉΓòÉ 10.4.2.17.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  6114.  
  6115.  
  6116. None. 
  6117.  
  6118.  
  6119. ΓòÉΓòÉΓòÉ 10.4.2.17.3. Logged Data ΓòÉΓòÉΓòÉ
  6120.  
  6121.  STATUS                   Only on failure 
  6122.  
  6123.  ERROR                    Only on failure 
  6124.  
  6125.  CHANGELINE STATE         CHANGELINE state 
  6126.  
  6127.  
  6128. ΓòÉΓòÉΓòÉ 10.4.2.18. DD_GETMEDIASENSE ΓòÉΓòÉΓòÉ
  6129.  
  6130. The following function gets Media Sense. 
  6131.  
  6132.  
  6133. ΓòÉΓòÉΓòÉ 10.4.2.18.1. Input Parameter Keywords ΓòÉΓòÉΓòÉ
  6134.  
  6135. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  6136. ΓöéKeyword                       ΓöéType   ΓöéDescription                   Γöé
  6137. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6138. ΓöéDRIVEHANDLE                   ΓöéNUM    ΓöéAutomatically set by DD_OPEN  Γöé
  6139. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6140. ΓöéDRVNAME                       ΓöéSTRING Γöé16-character driver name      Γöé
  6141. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6142. ΓöéUNITHANDLE                    ΓöéNUM    ΓöéHandle to Unit to be tested   Γöé
  6143. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6144. ΓöéMODE                          ΓöéNUM    Γöé(0 OR 1) Optional             Γöé
  6145. Γöé                              Γöé       Γöé0 = Asynchronous (Default)    Γöé
  6146. Γöé                              Γöé       Γöé1 = Synchronous               Γöé
  6147. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  6148.  
  6149.  
  6150. ΓòÉΓòÉΓòÉ 10.4.2.18.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  6151.  
  6152.  
  6153. None. 
  6154.  
  6155.  
  6156. ΓòÉΓòÉΓòÉ 10.4.2.18.3. Logged Data ΓòÉΓòÉΓòÉ
  6157.  
  6158.  STATUS                   Only on failure 
  6159.  
  6160.  ERROR                    Only on failure 
  6161.  
  6162.  MEDIA SENSE              Media Sense 
  6163.  
  6164.  
  6165. ΓòÉΓòÉΓòÉ 10.4.2.19. DD_GETLOCKSTATUS ΓòÉΓòÉΓòÉ
  6166.  
  6167. The following function gets Lock Status. 
  6168.  
  6169.  
  6170. ΓòÉΓòÉΓòÉ 10.4.2.19.1. Input Parameter Keywords ΓòÉΓòÉΓòÉ
  6171.  
  6172. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  6173. ΓöéKeyword                       ΓöéType   ΓöéDescription                   Γöé
  6174. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6175. ΓöéDRIVEHANDLE                   ΓöéNUM    ΓöéAutomatically set by DD_OPEN  Γöé
  6176. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6177. ΓöéDRVNAME                       ΓöéSTRING Γöé16-character driver name      Γöé
  6178. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6179. ΓöéUNITHANDLE                    ΓöéNUM    ΓöéHandle to Unit to be tested   Γöé
  6180. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6181. ΓöéMODE                          ΓöéNUM    Γöé(0 OR 1) Optional             Γöé
  6182. Γöé                              Γöé       Γöé0 = Asynchronous (Default)    Γöé
  6183. Γöé                              Γöé       Γöé1 = Synchronous               Γöé
  6184. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  6185.  
  6186.  
  6187. ΓòÉΓòÉΓòÉ 10.4.2.19.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  6188.  
  6189.  
  6190. None. 
  6191.  
  6192.  
  6193. ΓòÉΓòÉΓòÉ 10.4.2.19.3. Logged Data ΓòÉΓòÉΓòÉ
  6194.  
  6195.  STATUS                   Only on failure 
  6196.  
  6197.  ERROR                    Only on failure 
  6198.  
  6199.  LOCK STATUS              Lock Status 
  6200.  
  6201.  
  6202. ΓòÉΓòÉΓòÉ 10.4.2.20. DD_ABORT ΓòÉΓòÉΓòÉ
  6203.  
  6204. The following function aborts previous request. 
  6205.  
  6206.  
  6207. ΓòÉΓòÉΓòÉ 10.4.2.20.1. Input Parameter Keywords ΓòÉΓòÉΓòÉ
  6208.  
  6209. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  6210. ΓöéKeyword                       ΓöéType   ΓöéDescription                   Γöé
  6211. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6212. ΓöéDRIVEHANDLE                   ΓöéNUM    ΓöéAutomatically set by DD_OPEN  Γöé
  6213. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6214. ΓöéDRVNAME                       ΓöéSTRING Γöé16-character driver name      Γöé
  6215. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6216. ΓöéUNITHANDLE                    ΓöéNUM    ΓöéHandle to Unit to be tested   Γöé
  6217. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6218. ΓöéMODE                          ΓöéNUM    Γöé(0 OR 1) Optional             Γöé
  6219. Γöé                              Γöé       Γöé0 = Asynchronous (Default)    Γöé
  6220. Γöé                              Γöé       Γöé1 = Synchronous               Γöé
  6221. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  6222.  
  6223.  
  6224. ΓòÉΓòÉΓòÉ 10.4.2.20.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  6225.  
  6226.  
  6227. None. 
  6228.  
  6229.  
  6230. ΓòÉΓòÉΓòÉ 10.4.2.20.3. Logged Data ΓòÉΓòÉΓòÉ
  6231.  
  6232.  STATUS                   Only on failure 
  6233.  
  6234.  ERROR                    Only on failure 
  6235.  
  6236.  
  6237. ΓòÉΓòÉΓòÉ 10.4.2.21. DD_RESET ΓòÉΓòÉΓòÉ
  6238.  
  6239. The following function resets driver. 
  6240.  
  6241.  
  6242. ΓòÉΓòÉΓòÉ 10.4.2.21.1. Input Parameter Keywords ΓòÉΓòÉΓòÉ
  6243.  
  6244. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  6245. ΓöéKeyword                       ΓöéType   ΓöéDescription                   Γöé
  6246. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6247. ΓöéDRIVEHANDLE                   ΓöéNUM    ΓöéAutomatically set by DD_OPEN  Γöé
  6248. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6249. ΓöéDRVNAME                       ΓöéSTRING Γöé16-character driver name      Γöé
  6250. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6251. ΓöéUNITHANDLE                    ΓöéNUM    ΓöéHandle to Unit to be tested   Γöé
  6252. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6253. ΓöéMODE                          ΓöéNUM    Γöé(0 OR 1) Optional             Γöé
  6254. Γöé                              Γöé       Γöé0 = Asynchronous (Default)    Γöé
  6255. Γöé                              Γöé       Γöé1 = Synchronous               Γöé
  6256. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  6257.  
  6258.  
  6259. ΓòÉΓòÉΓòÉ 10.4.2.21.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  6260.  
  6261.  
  6262. None. 
  6263.  
  6264.  
  6265. ΓòÉΓòÉΓòÉ 10.4.2.21.3. Logged Data ΓòÉΓòÉΓòÉ
  6266.  
  6267.  STATUS                   Only on failure 
  6268.  
  6269.  ERROR                    Only on failure 
  6270.  
  6271.  
  6272. ΓòÉΓòÉΓòÉ 10.4.2.22. DD_SUSPEND ΓòÉΓòÉΓòÉ
  6273.  
  6274. The following function suspends the driver function. 
  6275.  
  6276.  
  6277. ΓòÉΓòÉΓòÉ 10.4.2.22.1. Input Parameter Keywords ΓòÉΓòÉΓòÉ
  6278.  
  6279. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  6280. ΓöéKeyword                       ΓöéType   ΓöéDescription                   Γöé
  6281. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6282. ΓöéDRIVEHANDLE                   ΓöéNUM    ΓöéAutomatically set by DD_OPEN  Γöé
  6283. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6284. ΓöéDRVNAME                       ΓöéSTRING Γöé16-character driver name      Γöé
  6285. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6286. ΓöéUNITHANDLE                    ΓöéNUM    ΓöéHandle to Unit to be tested   Γöé
  6287. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6288. ΓöéMODE                          ΓöéNUM    Γöé(0 OR 1) Optional             Γöé
  6289. Γöé                              Γöé       Γöé0 = Asynchronous (Default)    Γöé
  6290. Γöé                              Γöé       Γöé1 = Synchronous               Γöé
  6291. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  6292.  
  6293.  
  6294. ΓòÉΓòÉΓòÉ 10.4.2.22.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  6295.  
  6296.  
  6297. None. 
  6298.  
  6299.  
  6300. ΓòÉΓòÉΓòÉ 10.4.2.22.3. Logged Data ΓòÉΓòÉΓòÉ
  6301.  
  6302.  STATUS                   Only on failure 
  6303.  
  6304.  ERROR                    Only on failure 
  6305.  
  6306.  
  6307. ΓòÉΓòÉΓòÉ 10.4.2.23. DD_RESUME ΓòÉΓòÉΓòÉ
  6308.  
  6309. The following function resumes driver function. 
  6310.  
  6311.  
  6312. ΓòÉΓòÉΓòÉ 10.4.2.23.1. Input Parameter Keywords ΓòÉΓòÉΓòÉ
  6313.  
  6314. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  6315. ΓöéKeyword                       ΓöéType   ΓöéDescription                   Γöé
  6316. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6317. ΓöéDRIVEHANDLE                   ΓöéNUM    ΓöéAutomatically set by DD_OPEN  Γöé
  6318. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6319. ΓöéDRVNAME                       ΓöéSTRING Γöé16-character driver name      Γöé
  6320. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6321. ΓöéUNITHANDLE                    ΓöéNUM    ΓöéHandle to Unit to be tested   Γöé
  6322. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6323. ΓöéMODE                          ΓöéNUM    Γöé(0 OR 1) Optional             Γöé
  6324. Γöé                              Γöé       Γöé0 = Asynchronous (Default)    Γöé
  6325. Γöé                              Γöé       Γöé1 = Synchronous               Γöé
  6326. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  6327.  
  6328.  
  6329. ΓòÉΓòÉΓòÉ 10.4.2.23.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  6330.  
  6331.  
  6332. None. 
  6333.  
  6334.  
  6335. ΓòÉΓòÉΓòÉ 10.4.2.23.3. Logged Data ΓòÉΓòÉΓòÉ
  6336.  
  6337.  STATUS                   Only on failure 
  6338.  
  6339.  ERROR                    Only on failure 
  6340.  
  6341.  
  6342. ΓòÉΓòÉΓòÉ 10.4.2.24. DD_LOCKMEDIA ΓòÉΓòÉΓòÉ
  6343.  
  6344. The following function locks media. 
  6345.  
  6346.  
  6347. ΓòÉΓòÉΓòÉ 10.4.2.24.1. Input Parameter Keywords ΓòÉΓòÉΓòÉ
  6348.  
  6349. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  6350. ΓöéKeyword                       ΓöéType   ΓöéDescription                   Γöé
  6351. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6352. ΓöéDRIVEHANDLE                   ΓöéNUM    ΓöéAutomatically set by DD_OPEN  Γöé
  6353. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6354. ΓöéDRVNAME                       ΓöéSTRING Γöé16-character driver name      Γöé
  6355. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6356. ΓöéUNITHANDLE                    ΓöéNUM    ΓöéHandle to Unit to be tested   Γöé
  6357. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6358. ΓöéMODE                          ΓöéNUM    Γöé(0 OR 1) Optional             Γöé
  6359. Γöé                              Γöé       Γöé0 = Asynchronous (Default)    Γöé
  6360. Γöé                              Γöé       Γöé1 = Synchronous               Γöé
  6361. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  6362.  
  6363.  
  6364. ΓòÉΓòÉΓòÉ 10.4.2.24.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  6365.  
  6366.  
  6367. None. 
  6368.  
  6369.  
  6370. ΓòÉΓòÉΓòÉ 10.4.2.24.3. Logged Data ΓòÉΓòÉΓòÉ
  6371.  
  6372.  STATUS                   Only on failure 
  6373.  
  6374.  ERROR                    Only on failure 
  6375.  
  6376.  
  6377. ΓòÉΓòÉΓòÉ 10.4.2.25. DD_UNLOCKMEDIA ΓòÉΓòÉΓòÉ
  6378.  
  6379. The following function unlocks media. 
  6380.  
  6381.  
  6382. ΓòÉΓòÉΓòÉ 10.4.2.25.1. Input Parameter Keywords ΓòÉΓòÉΓòÉ
  6383.  
  6384. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  6385. ΓöéKeyword                       ΓöéType   ΓöéDescription                   Γöé
  6386. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6387. ΓöéDRIVEHANDLE                   ΓöéNUM    ΓöéAutomatically set by DD_OPEN  Γöé
  6388. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6389. ΓöéDRVNAME                       ΓöéSTRING Γöé16-character driver name      Γöé
  6390. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6391. ΓöéUNITHANDLE                    ΓöéNUM    ΓöéHandle to Unit to be tested   Γöé
  6392. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6393. ΓöéMODE                          ΓöéNUM    Γöé(0 OR 1) Optional             Γöé
  6394. Γöé                              Γöé       Γöé0 = Asynchronous (Default)    Γöé
  6395. Γöé                              Γöé       Γöé1 = Synchronous               Γöé
  6396. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  6397.  
  6398.  
  6399. ΓòÉΓòÉΓòÉ 10.4.2.25.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  6400.  
  6401.  
  6402. None. 
  6403.  
  6404.  
  6405. ΓòÉΓòÉΓòÉ 10.4.2.25.3. Logged Data ΓòÉΓòÉΓòÉ
  6406.  
  6407.  STATUS                   Only on failure 
  6408.  
  6409.  ERROR                    Only on failure 
  6410.  
  6411.  
  6412. ΓòÉΓòÉΓòÉ 10.4.2.26. DD_EJECTMEDIA ΓòÉΓòÉΓòÉ
  6413.  
  6414. The following function ejects media. 
  6415.  
  6416.  
  6417. ΓòÉΓòÉΓòÉ 10.4.2.26.1. Input Parameter Keywords ΓòÉΓòÉΓòÉ
  6418.  
  6419. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  6420. ΓöéKeyword                       ΓöéType   ΓöéDescription                   Γöé
  6421. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6422. ΓöéDRIVEHANDLE                   ΓöéNUM    ΓöéAutomatically set by DD_OPEN  Γöé
  6423. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6424. ΓöéDRVNAME                       ΓöéSTRING Γöé16-character driver name      Γöé
  6425. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6426. ΓöéUNITHANDLE                    ΓöéNUM    ΓöéHandle to Unit to be tested   Γöé
  6427. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6428. ΓöéMODE                          ΓöéNUM    Γöé(0 OR 1) Optional             Γöé
  6429. Γöé                              Γöé       Γöé0 = Asynchronous (Default)    Γöé
  6430. Γöé                              Γöé       Γöé1 = Synchronous               Γöé
  6431. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  6432.  
  6433.  
  6434. ΓòÉΓòÉΓòÉ 10.4.2.26.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  6435.  
  6436.  
  6437. None. 
  6438.  
  6439.  
  6440. ΓòÉΓòÉΓòÉ 10.4.2.26.3. Logged Data ΓòÉΓòÉΓòÉ
  6441.  
  6442.  STATUS                   Only on failure 
  6443.  
  6444.  ERROR                    Only on failure 
  6445.  
  6446.  
  6447. ΓòÉΓòÉΓòÉ 10.4.2.27. DD_CDB12 ΓòÉΓòÉΓòÉ
  6448.  
  6449. The following function sends a 12-byte CDB to the unit. 
  6450.  
  6451.  
  6452. ΓòÉΓòÉΓòÉ 10.4.2.27.1. Input Parameter Keywords ΓòÉΓòÉΓòÉ
  6453.  
  6454. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  6455. ΓöéKeyword                       ΓöéType   ΓöéDescription                   Γöé
  6456. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6457. ΓöéDRIVEHANDLE                   ΓöéNUM    ΓöéAutomatically set by DD_OPEN  Γöé
  6458. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6459. ΓöéDRVNAME                       ΓöéSTRING Γöé16-character driver name      Γöé
  6460. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6461. ΓöéUNITHANDLE                    ΓöéNUM    ΓöéHandle to Unit to be tested   Γöé
  6462. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6463. ΓöéMEMSIZE                       ΓöéNUM    ΓöéTotal bytes in SCATTERGATHER  Γöé
  6464. Γöé                              Γöé       Γöélist                          Γöé
  6465. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6466. ΓöéNBUFF                         ΓöéNUM    ΓöéNumber of buffers in          Γöé
  6467. Γöé                              Γöé       ΓöéSCATTERGATHER list            Γöé
  6468. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6469. ΓöéREQUESTCONTROL                ΓöéNUM    ΓöéRequest Control Flags         Γöé
  6470. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6471. ΓöéTIMEOUT                       ΓöéNUM    ΓöéDevice Driver Timeout         Γöé
  6472. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6473. ΓöéCDB_BYTE0                     ΓöéNUM    ΓöéBYTE 0 of the CDB             Γöé
  6474. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6475. ΓöéCDB_BYTE1                     ΓöéNUM    ΓöéBYTE 1 of the CDB             Γöé
  6476. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6477. ΓöéCDB_BYTE2                     ΓöéNUM    ΓöéBYTE 2 of the CDB             Γöé
  6478. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6479. ΓöéCDB_BYTE3                     ΓöéNUM    ΓöéBYTE 3 of the CDB             Γöé
  6480. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6481. ΓöéCDB_BYTE4                     ΓöéNUM    ΓöéBYTE 4 of the CDB             Γöé
  6482. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6483. ΓöéCDB_BYTE5                     ΓöéNUM    ΓöéBYTE 5 of the CDB             Γöé
  6484. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6485. ΓöéCDB_BYTE6                     ΓöéNUM    ΓöéBYTE 6 OF THE CDB             Γöé
  6486. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6487. ΓöéCDB_BYTE7                     ΓöéNUM    ΓöéBYTE 7 of the CDB             Γöé
  6488. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6489. ΓöéCDB_BYTE8                     ΓöéNUM    ΓöéBYTE 8 of the CDB             Γöé
  6490. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6491. ΓöéCDB_BYTE9                     ΓöéNUM    ΓöéBYTE 9 of the CDB             Γöé
  6492. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6493. ΓöéCDB_BYTE10                    ΓöéNUM    ΓöéBYTE 10 of the CDB            Γöé
  6494. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6495. ΓöéCDB_BYTE11                    ΓöéNUM    ΓöéBYTE 11 of the CDB            Γöé
  6496. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6497. ΓöéMODE                          ΓöéNUM    Γöé(0 OR 1) Optional             Γöé
  6498. Γöé                              Γöé       Γöé0 = Asynchronous (Default)    Γöé
  6499. Γöé                              Γöé       Γöé1 = Synchronous               Γöé
  6500. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  6501.  
  6502.  
  6503. ΓòÉΓòÉΓòÉ 10.4.2.27.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  6504.  
  6505.  
  6506. None. 
  6507.  
  6508.  
  6509. ΓòÉΓòÉΓòÉ 10.4.2.27.3. Logged Data ΓòÉΓòÉΓòÉ
  6510.  
  6511.  STATUS                   Only on failure 
  6512.  
  6513.  ERROR                    Only on failure 
  6514.  
  6515.  
  6516. ΓòÉΓòÉΓòÉ 10.4.2.28. DD_CDB10 ΓòÉΓòÉΓòÉ
  6517.  
  6518. The following function sends a 10-byte CDB to the unit. 
  6519.  
  6520.  
  6521. ΓòÉΓòÉΓòÉ 10.4.2.28.1. Input Parameter Keywords ΓòÉΓòÉΓòÉ
  6522.  
  6523. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  6524. ΓöéKeyword                       ΓöéType   ΓöéDescription                   Γöé
  6525. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6526. ΓöéDRIVEHANDLE                   ΓöéNUM    ΓöéAutomatically set by DD_OPEN  Γöé
  6527. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6528. ΓöéDRVNAME                       ΓöéSTRING Γöé16-character driver name      Γöé
  6529. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6530. ΓöéUNITHANDLE                    ΓöéNUM    ΓöéHandle to Unit to be tested   Γöé
  6531. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6532. ΓöéMEMSIZE                       ΓöéNUM    ΓöéTotal bytes in SCATTERGATHER  Γöé
  6533. Γöé                              Γöé       Γöélist                          Γöé
  6534. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6535. ΓöéNBUFF                         ΓöéNUM    ΓöéNumber of buffers in          Γöé
  6536. Γöé                              Γöé       ΓöéSCATTERGATHER list            Γöé
  6537. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6538. ΓöéREQUESTCONTROL                ΓöéNUM    ΓöéRequest Control Flags         Γöé
  6539. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6540. ΓöéTIMEOUT                       ΓöéNUM    ΓöéDevice Driver Timeout         Γöé
  6541. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6542. ΓöéCDB_BYTE0                     ΓöéNUM    ΓöéByte 0 of the CDB             Γöé
  6543. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6544. ΓöéCDB_BYTE1                     ΓöéNUM    ΓöéByte 1 of the CDB             Γöé
  6545. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6546. ΓöéCDB_BYTE2                     ΓöéNUM    ΓöéByte 2 of the CDB             Γöé
  6547. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6548. ΓöéCDB_BYTE3                     ΓöéNUM    ΓöéByte 3 of the CDB             Γöé
  6549. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6550. ΓöéCDB_BYTE4                     ΓöéNUM    ΓöéByte 4 of the CDB             Γöé
  6551. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6552. ΓöéCDB_BYTE5                     ΓöéNUM    ΓöéByte 5 of the CDB             Γöé
  6553. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6554. ΓöéCDB_BYTE6                     ΓöéNUM    ΓöéByte 6 of the CDB             Γöé
  6555. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6556. ΓöéCDB_BYTE7                     ΓöéNUM    ΓöéByte 7 of the CDB             Γöé
  6557. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6558. ΓöéCDB_BYTE8                     ΓöéNUM    ΓöéByte 8 of the CDB             Γöé
  6559. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6560. ΓöéCDB_BYTE9                     ΓöéNUM    ΓöéByte 9 of the CDB             Γöé
  6561. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6562. ΓöéMODE                          ΓöéNUM    Γöé(0 OR 1) Optional             Γöé
  6563. Γöé                              Γöé       Γöé0 = Asynchronous (Default)    Γöé
  6564. Γöé                              Γöé       Γöé1 = Synchronous               Γöé
  6565. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  6566.  
  6567.  
  6568. ΓòÉΓòÉΓòÉ 10.4.2.28.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  6569.  
  6570.  
  6571. None. 
  6572.  
  6573.  
  6574. ΓòÉΓòÉΓòÉ 10.4.2.28.3. Logged Data ΓòÉΓòÉΓòÉ
  6575.  
  6576.  STATUS                   Only on failure 
  6577.  
  6578.  ERROR                    Only on failure 
  6579.  
  6580.  
  6581. ΓòÉΓòÉΓòÉ 10.4.2.29. DD_CDB6 ΓòÉΓòÉΓòÉ
  6582.  
  6583. The following function sends a 6-byte CDB to the unit. 
  6584.  
  6585.  
  6586. ΓòÉΓòÉΓòÉ 10.4.2.29.1. Input Parameter Keywords ΓòÉΓòÉΓòÉ
  6587.  
  6588. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  6589. ΓöéKeyword                       ΓöéType   ΓöéDescription                   Γöé
  6590. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6591. ΓöéDRIVEHANDLE                   ΓöéNUM    ΓöéAutomatically set by DD_OPEN  Γöé
  6592. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6593. ΓöéDRVNAME                       ΓöéSTRING Γöé16-character driver name      Γöé
  6594. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6595. ΓöéUNITHANDLE                    ΓöéNUM    ΓöéHandle to Unit to be tested   Γöé
  6596. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6597. ΓöéMEMSIZE                       ΓöéNUM    ΓöéTotal bytes in SCATTERGATHER  Γöé
  6598. Γöé                              Γöé       Γöélist                          Γöé
  6599. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6600. ΓöéNBUFF                         ΓöéNUM    ΓöéNumber of buffers in          Γöé
  6601. Γöé                              Γöé       ΓöéSCATTERGATHER list            Γöé
  6602. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6603. ΓöéREQUESTCONTROL                ΓöéNUM    ΓöéRequest Control Flags         Γöé
  6604. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6605. ΓöéTIMEOUT                       ΓöéNUM    ΓöéDevice Driver Timeout         Γöé
  6606. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6607. ΓöéCDB_BYTE0                     ΓöéNUM    ΓöéBYTE 0 of the CDB             Γöé
  6608. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6609. ΓöéCDB_BYTE1                     ΓöéNUM    ΓöéBYTE 1 of the CDB             Γöé
  6610. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6611. ΓöéCDB_BYTE2                     ΓöéNUM    ΓöéBYTE 2 of the CDB             Γöé
  6612. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6613. ΓöéCDB_BYTE3                     ΓöéNUM    ΓöéBYTE 3 of the CDB             Γöé
  6614. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6615. ΓöéCDB_BYTE4                     ΓöéNUM    ΓöéBYTE 4 of the CDB             Γöé
  6616. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6617. ΓöéCDB_BYTE5                     ΓöéNUM    ΓöéBYTE 5 of the CDB             Γöé
  6618. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6619. ΓöéMODE                          ΓöéNUM    Γöé(0 OR 1) Optional             Γöé
  6620. Γöé                              Γöé       Γöé0 = Asynchronous (Default)    Γöé
  6621. Γöé                              Γöé       Γöé1 = Synchronous               Γöé
  6622. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  6623.  
  6624.  
  6625. ΓòÉΓòÉΓòÉ 10.4.2.29.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  6626.  
  6627.  
  6628. None. 
  6629.  
  6630.  
  6631. ΓòÉΓòÉΓòÉ 10.4.2.29.3. Logged Data ΓòÉΓòÉΓòÉ
  6632.  
  6633.  STATUS                   Only on failure 
  6634.  
  6635.  ERROR                    Only on failure 
  6636.  
  6637.  
  6638. ΓòÉΓòÉΓòÉ 10.4.2.30. DD_CLOSE ΓòÉΓòÉΓòÉ
  6639.  
  6640. The following function closes DASDADD SYS. 
  6641.  
  6642.  
  6643. ΓòÉΓòÉΓòÉ 10.4.2.30.1. Input Parameter Keywords ΓòÉΓòÉΓòÉ
  6644.  
  6645. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  6646. ΓöéKeyword                       ΓöéType   ΓöéDescription                   Γöé
  6647. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6648. ΓöéDRIVEHANDLE                   ΓöéNUM    ΓöéAutomatically set by DD_OPEN  Γöé
  6649. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  6650.  
  6651.  
  6652. ΓòÉΓòÉΓòÉ 10.4.2.30.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  6653.  
  6654.  
  6655. None. 
  6656.  
  6657.  
  6658. ΓòÉΓòÉΓòÉ 10.4.2.30.3. Logged Data ΓòÉΓòÉΓòÉ
  6659.  
  6660.  
  6661. None. 
  6662.  
  6663.  
  6664. ΓòÉΓòÉΓòÉ 10.4.2.31. DD_CHECKSTATUS ΓòÉΓòÉΓòÉ
  6665.  
  6666. The following function prints status and return data. 
  6667.  
  6668.  
  6669. ΓòÉΓòÉΓòÉ 10.4.2.31.1. Input Parameter Keywords ΓòÉΓòÉΓòÉ
  6670.  
  6671. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  6672. ΓöéKeyword                       ΓöéType   ΓöéDescription                   Γöé
  6673. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6674. ΓöéLABEL                         ΓöéSTRING ΓöéLabel assigned to AsynchronousΓöé
  6675. Γöé                              Γöé       Γöéfunction.                     Γöé
  6676. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  6677.  
  6678.  
  6679. ΓòÉΓòÉΓòÉ 10.4.2.31.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  6680.  
  6681.  
  6682. None. 
  6683.  
  6684.  
  6685. ΓòÉΓòÉΓòÉ 10.4.2.31.3. Logged Data ΓòÉΓòÉΓòÉ
  6686.  
  6687. Function specific. 
  6688.  
  6689.  
  6690. ΓòÉΓòÉΓòÉ 10.5. Description of Test Cases ΓòÉΓòÉΓòÉ
  6691.  
  6692. Each of the DASDADD test cases can be executed individually as previously 
  6693. described.  The corresponding test scripts are described below. The user can 
  6694. create additional tests or combine tests into multi-threaded test cases after 
  6695. becoming familiar with the DDTT and the DASDADD grammar files. 
  6696.  
  6697. All test scripts close the channels opened to the DASDADD device and verify 
  6698. successful status return from every exercised API.  All test scripts log 
  6699. information to a log file with the same file name and a file name extension, 
  6700. .L1 and L2.  When current status is queried (for example, track, channel, or 
  6701. drive), this data is written to DDTT's output windows and to the log file.  Log 
  6702. files can be examined after the test case has completed. 
  6703.  
  6704.  DEVTABLE.SY         Calls the DD_GETDRIVERS function and displays the 
  6705.                      installed DASD ADDs and FLTs (Filter Device Drivers) on 
  6706.                      the system.  This function then prompts the user to type 
  6707.                      in the driver name to be tested, displays the devicetable 
  6708.                      for the given driver, prompts the user for a unithandle 
  6709.                      for the unit to be tested, and creates two files: 
  6710.                      SYSINFO.U1, SYSINFO2.U1. These files are included into 
  6711.                      other test scripts.  Their content preserves the driver 
  6712.                      name and unit handle for the use of other test scripts. 
  6713.                      This script must be run before the rest of the test suite 
  6714.                      is run. 
  6715.  
  6716.  ABORT.SY            Reads asynchronously, and issues an abort message. 
  6717.  
  6718.  ABORT2.SY           Reads 10 times asynchronously, and issues an abort message 
  6719.                      from a separate thread. 
  6720.  
  6721.  ALLOCU.SY           Allocates the specified unit. That if the unit is already 
  6722.                      allocated, (most cases), it should return a valid error. 
  6723.  
  6724.  CHNGUINF.SY         Changes the unit information for the given unit. 
  6725.  
  6726.  DRIVERS.SY          Lists the installed DASD drivers on the machine. 
  6727.  
  6728.  EJECTM.SY           Ejects media.  Only for removable media. 
  6729.  
  6730.  GETCSTAT.SY         Gets the changeline state for the device.  Only for 
  6731.                      removable media. 
  6732.  
  6733.  GETDGEO.SY          Gets device geometry for the given device. 
  6734.  
  6735.  GETLSTAT.SY         Gets lock status for device. 
  6736.  
  6737.  GETMGEO.SY          Gets media geometry. 
  6738.  
  6739.  GETMSENS.SY         Gets media sense.  Only for removable media. 
  6740.  
  6741.  GETUSTAT.SY         Gets unit status. 
  6742.  
  6743.  LOCKM.SY            Locks media.  Only for removable media. 
  6744.  
  6745.  READ.SY             Reads synchronously. 
  6746.  
  6747.  READPRE.SY          Reads prefetch synchronously. 
  6748.  
  6749.  READV.SY            Reads verify synchronously. 
  6750.  
  6751.  RESET.SY            Resets unit. 
  6752.  
  6753.  SETLGEO.SY          Sets logical geometry. 
  6754.  
  6755.  SETMGEO.SY          Sets media geometry. 
  6756.  
  6757.  SUSPRESU.SY         Suspends and resumes a read operation. 
  6758.  
  6759.  UNLOCKM.SY          Unlocks media.  Only for removable media. 
  6760.  
  6761.  WRITE.SY            Reads and then writes a block. 
  6762.  
  6763.  WRITEV.SY           Reads and writes with verify. 
  6764.  
  6765.  ABORT.ASY           Reads asynchronously, and issues an abort message 
  6766.                      asynchronously. 
  6767.  
  6768.  ABORT2.ASY          Reads 10 times asynchronously, and issues an abort message 
  6769.                      from a separate thread asynchronously. 
  6770.  
  6771.  ALLOCU.ASY          Allocates the specified unit asynchronously. 
  6772.  
  6773.                      Note:  If the unit is already allocated (in most cases), 
  6774.                             it should return a valid error. 
  6775.  
  6776.  CHNGUNINF.AS        Changes the unit information for the given unit 
  6777.                      asynchronously. 
  6778.  
  6779.  EJECTM.ASY          Ejects media asynchronously. Only for removable media. 
  6780.  
  6781.  GETCSTAT.ASY        Gets the changeline state for the device asynchronously. 
  6782.                      Only for removable media. 
  6783.  
  6784.  GETDGEO.ASY         Gets device geometry for the given device asynchronously. 
  6785.  
  6786.  GETLSTAT.ASY        Gets lock status for device asynchronously. 
  6787.  
  6788.  GETMGEO.ASY         Gets media geometry asynchronously. 
  6789.  
  6790.  GETMSENS.ASY        Gets media sense asynchronously. Only for removable media. 
  6791.  
  6792.  GETUSTAT.ASY        Gets unit status asynchronously. 
  6793.  
  6794.  LOCKM.ASY           Locks media asynchronously. Only for removable media. 
  6795.  
  6796.  READ.ASY            Reads synchronously. 
  6797.  
  6798.  READPRE.ASY         Reads prefetch synchronously. 
  6799.  
  6800.  READV.ASY           Reads verify synchronously. 
  6801.  
  6802.  RESET.ASY           Resets unit asynchronously. 
  6803.  
  6804.  SETLGEO.ASY         Sets logical geometry asynchronously. 
  6805.  
  6806.  SETMGEO.ASY         Sets media geometry asynchronously. 
  6807.  
  6808.  SUSPRESU.ASY        Suspends and resumes read asynchronously. 
  6809.  
  6810.  UNLOCKM.ASY         Unlocks media asynchronously. Only for removable media. 
  6811.  
  6812.  WRITE.ASY           Reads and then writes a block asynchronously. 
  6813.  
  6814.  WRITEV.ASY          Reads and writes verify. 
  6815.  
  6816.  
  6817. ΓòÉΓòÉΓòÉ 11. SCSI IOCtl Device Driver Test Tool ΓòÉΓòÉΓòÉ
  6818.  
  6819. The SCSI IOCtl Functional Verification Tests (FVTs) exercise the Application 
  6820. Program Interfaces (APIs) defined for the DosDevIOCtl interface of SCSI device 
  6821. drivers.  The tests are implemented with the Device Driver Test Tool (DDTT). 
  6822. Each test is defined in a script file.  The script files can be modified using 
  6823. a text editor to create additional, specialized test cases.  See Using the 
  6824. Device Driver Test Tool (DDTT) for a description of DDTT.  The test scripts 
  6825. give the user a repeatable set of tests that demonstrate SCSI IOCtl function 
  6826. and performance.  Errors are reported and are easily isolated to a specific 
  6827. test sequence and API. 
  6828.  
  6829. User input and output from each thread of the SCSI IOCtl tests is by way of a 
  6830. separate Presentation Manager window.  Multi-threaded test cases log all 
  6831. information to a single log file, clearly indicating the actual execution 
  6832. sequence in the event of errors. 
  6833.  
  6834.  
  6835. ΓòÉΓòÉΓòÉ 11.1. SCSI IOCtl Test Architecture ΓòÉΓòÉΓòÉ
  6836.  
  6837. The DDTT provides a common front-parser for test case scripts and tests several 
  6838. devices and APIs.  SCSI IOCtl-specific code for the DDTT is contained in 
  6839. DDTSCSI.DLL.  The SCSI IOCtl-specific grammar is contained in SCSI.GRA. The 
  6840. following DDTT SCSI IOCtl-specific stub code and grammar files are required: 
  6841.  
  6842.    o  DDTSCSI.DLL 
  6843.  
  6844.    o  SCSI.GRA 
  6845.  The C++ source code DDTSCSI.DLL is available on the IBM Developer Connection 
  6846.  Device Driver Kit for OS/2. The following required, common components of DDTT 
  6847.  implement DDTT's programmable parser and common test functions such as SET, 
  6848.  LOOP, and PAUSE: 
  6849.  
  6850.    o  DDTT.EXE 
  6851.  
  6852.    o  DDTT.DLL 
  6853.  
  6854.    o  GLOBAL.DLL 
  6855.  
  6856.    o  GLOBAL.GRA 
  6857.  
  6858.  
  6859. ΓòÉΓòÉΓòÉ 11.2. Installation ΓòÉΓòÉΓòÉ
  6860.  
  6861. There are two directory structures in the IBM Developer Connection Device 
  6862. Driver Kit for OS/2 that utilize test suites. The TESTCERT substructure 
  6863. contains the executables and test cases; the TESTTOOL substructure contains the 
  6864. files required to change and rebuild the code for a particular test DLL. 
  6865.  
  6866. The following procedure describes installation for running test cases. 
  6867.  
  6868.    1. Copy the executable and SCSI IOCtl test case files from the IBM Developer 
  6869.       Connection Device Driver Kit for OS/2 CD-ROM disc to the hard drive.  All 
  6870.       the executable (.EXE and .DLL) files can reside in one directory, such as 
  6871.       \TSCSIIO. Test-case script and command files can also be placed in this 
  6872.       directory on the hard disk. If the target directory is C:\TSCSIIO and the 
  6873.       E drive contains information from the IBM Developer Connection Device 
  6874.       Driver Kit for OS/2 CD-ROM disc, then use the following commands to copy 
  6875.       the SCSI IOCtl test suite: 
  6876.  
  6877.             ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  6878.  
  6879.                [C:\]md tscsiio
  6880.  
  6881.                [C:\]cd tscsiio
  6882.  
  6883.                [C:\tscsiio]copy e:\ddk_x86\testcert\storage\function\dasd\ioctl\*
  6884.  
  6885.                [C:\tscsiio]copy e:\ddk_x86\testcert\general\ddtt\*
  6886.  
  6887.             ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  6888.  
  6889.    2. Add C:\TSCSIIO to the LIBPATH and PATH in the CONFIG.SYS file. 
  6890.  
  6891.    3. Reboot your machine so the new LIBPATH entry and DEVICE statement take 
  6892.       effect. 
  6893.  
  6894.  
  6895. ΓòÉΓòÉΓòÉ 11.3. Test-Case Execution ΓòÉΓòÉΓòÉ
  6896.  
  6897.    1. Change to the directory where the SCSI IOCtl test script files were 
  6898.       copied, for example C:\TSCSIIO. 
  6899.  
  6900.    2. Execute the script ALLOCDV.SCR by entering the following command 
  6901.  
  6902.               DDTT ALLOCDV.SCR
  6903.  
  6904.       This command returns the DEVICE HANDLE for the specified device 
  6905.       (default-CD_ROM). Edit the script file SCCOM.SCR and change the value of 
  6906.       DEVICEHANDLE. 
  6907.  
  6908.       Note: 
  6909.  
  6910.         o  Each script file can be executed individually. 
  6911.         o  To execute all the scripts, deallocate the device by executing the 
  6912.            script DALLOCDV.SCR and starting the command file ALL.CMD. 
  6913.  
  6914.    3. The output is written to the corresponding file names with a .LOG 
  6915.       extension. 
  6916.  
  6917.  
  6918. ΓòÉΓòÉΓòÉ 11.3.1. DDTT SCSI IOCtl Test Grammar Function Calls ΓòÉΓòÉΓòÉ
  6919.  
  6920. The following are the names of the SCSI IOCtl Test Grammar Function Calls: 
  6921.  
  6922.    o  SCSI_OPEN 
  6923.    o  SCSI_CLOSE 
  6924.    o  SCSI_PARAMS 
  6925.    o  SCSI_RESETINIT 
  6926.    o  SCSI_ENABLECACHE 
  6927.    o  SCSI_DISABLECACHE 
  6928.    o  SCSI_CACHESTATUS 
  6929.    o  SCSI_SETDEVTIMEOUT 
  6930.    o  SCSI_READDEVTIMEOUT 
  6931.    o  SCSI_TRANSFERSCB 
  6932.    o  SCSI_ALLOCATEDEVICE 
  6933.    o  SCSI_DEALLOCATEDEVICE 
  6934.    o  SCSI_PERIPHERALTYPECOUNT 
  6935.    o  SCSI_SENDABORT 
  6936.  
  6937.  
  6938. ΓòÉΓòÉΓòÉ 11.3.1.1. SCSI_OPEN ΓòÉΓòÉΓòÉ
  6939.  
  6940. This function opens the SCSI OS2SCSI.DMD device driver by opening SCSI-02$. 
  6941.  
  6942.  
  6943. ΓòÉΓòÉΓòÉ 11.3.1.1.1. Input Parameter Keywords ΓòÉΓòÉΓòÉ
  6944.  
  6945.  
  6946. None. 
  6947.  
  6948.  
  6949. ΓòÉΓòÉΓòÉ 11.3.1.1.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  6950.  
  6951. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  6952. ΓöéKeyword                       ΓöéType   ΓöéDescription                   Γöé
  6953. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6954. ΓöéDRIVEHANDLE                   ΓöéNUM    ΓöéHandle for the SCSI adapter   Γöé
  6955. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  6956.  
  6957.  
  6958. ΓòÉΓòÉΓòÉ 11.3.1.1.3. Logged Data ΓòÉΓòÉΓòÉ
  6959.  
  6960.  
  6961. None. 
  6962.  
  6963.  
  6964. ΓòÉΓòÉΓòÉ 11.3.1.2. SCSI_CLOSE ΓòÉΓòÉΓòÉ
  6965.  
  6966. This function closes the SCSI device driver OS2SCSI.DMD. 
  6967.  
  6968.  
  6969. ΓòÉΓòÉΓòÉ 11.3.1.2.1. Input Parameter Keywords ΓòÉΓòÉΓòÉ
  6970.  
  6971. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  6972. ΓöéKeyword                       ΓöéType   ΓöéDescription                   Γöé
  6973. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  6974. ΓöéDRIVEHANDLE                   ΓöéNUM    ΓöéHandle for the SCSI adapter   Γöé
  6975. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  6976.  
  6977.  
  6978. ΓòÉΓòÉΓòÉ 11.3.1.2.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  6979.  
  6980.  
  6981. None. 
  6982.  
  6983.  
  6984. ΓòÉΓòÉΓòÉ 11.3.1.2.3. Logged Data ΓòÉΓòÉΓòÉ
  6985.  
  6986.  
  6987. None. 
  6988.  
  6989.  
  6990. ΓòÉΓòÉΓòÉ 11.3.1.3. SCSI_PARAMS ΓòÉΓòÉΓòÉ
  6991.  
  6992. This function returns information about the device. 
  6993.  
  6994.  
  6995. ΓòÉΓòÉΓòÉ 11.3.1.3.1. Input Parameter Keywords ΓòÉΓòÉΓòÉ
  6996.  
  6997. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  6998. ΓöéKeyword                       ΓöéType   ΓöéDescription                   Γöé
  6999. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  7000. ΓöéDRIVEHANDLE                   ΓöéNUM    ΓöéHandle for the SCSI adapter   Γöé
  7001. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  7002. ΓöéDEVICEHANDLE                  ΓöéNUM    ΓöéHandle for the SCSI device,   Γöé
  7003. Γöé                              Γöé       Γöéobtained from                 Γöé
  7004. Γöé                              Γöé       ΓöéSCSI_ALLOCATEDEVICE           Γöé
  7005. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  7006.  
  7007.  
  7008. ΓòÉΓòÉΓòÉ 11.3.1.3.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  7009.  
  7010.  
  7011. None. 
  7012.  
  7013.  
  7014. ΓòÉΓòÉΓòÉ 11.3.1.3.3. Logged Data ΓòÉΓòÉΓòÉ
  7015.  
  7016.  
  7017. Device Key Index 
  7018. SCB Architecture Card Comp. Level 
  7019. Adapter Index 
  7020. Device Flags 
  7021. Logical Unit Number (LUN) 
  7022. Physical Unit Number (PUN) 
  7023.  
  7024.  
  7025. ΓòÉΓòÉΓòÉ 11.3.1.4. SCSI_RESETINIT ΓòÉΓòÉΓòÉ
  7026.  
  7027. This function resets the physical device. 
  7028.  
  7029.  
  7030. ΓòÉΓòÉΓòÉ 11.3.1.4.1. Input Parameter Keywords ΓòÉΓòÉΓòÉ
  7031.  
  7032. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  7033. ΓöéKeyword                       ΓöéType   ΓöéDescription                   Γöé
  7034. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  7035. ΓöéDRIVEHANDLE                   ΓöéNUM    ΓöéHandle for the SCSI adapter   Γöé
  7036. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  7037. ΓöéDEVICEHANDLE                  ΓöéNUM    ΓöéHandle for the SCSI device,   Γöé
  7038. Γöé                              Γöé       Γöéobtained from                 Γöé
  7039. Γöé                              Γöé       ΓöéSCSI_ALLOCATEDEVICE           Γöé
  7040. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  7041.  
  7042.  
  7043. ΓòÉΓòÉΓòÉ 11.3.1.4.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  7044.  
  7045.  
  7046. None. 
  7047.  
  7048.  
  7049. ΓòÉΓòÉΓòÉ 11.3.1.4.3. Logged Data ΓòÉΓòÉΓòÉ
  7050.  
  7051.  
  7052. None. 
  7053.  
  7054.  
  7055. ΓòÉΓòÉΓòÉ 11.3.1.5. SCSI_ENABLECACHE ΓòÉΓòÉΓòÉ
  7056.  
  7057. This function enables the adapter cache capability for all subsequent commands 
  7058. to the SCSI device. 
  7059.  
  7060.  
  7061. ΓòÉΓòÉΓòÉ 11.3.1.5.1. Input Parameter Keywords ΓòÉΓòÉΓòÉ
  7062.  
  7063. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  7064. ΓöéKeyword                       ΓöéType   ΓöéDescription                   Γöé
  7065. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  7066. ΓöéDRIVEHANDLE                   ΓöéNUM    ΓöéHandle for the SCSI adapter   Γöé
  7067. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  7068. ΓöéDEVICEHANDLE                  ΓöéNUM    ΓöéHandle for the SCSI device,   Γöé
  7069. Γöé                              Γöé       Γöéobtained from                 Γöé
  7070. Γöé                              Γöé       ΓöéSCSI_ALLOCATEDEVICE           Γöé
  7071. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  7072.  
  7073.  
  7074. ΓòÉΓòÉΓòÉ 11.3.1.5.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  7075.  
  7076.  
  7077. None. 
  7078.  
  7079.  
  7080. ΓòÉΓòÉΓòÉ 11.3.1.5.3. Logged Data ΓòÉΓòÉΓòÉ
  7081.  
  7082.  
  7083. None. 
  7084.  
  7085.  
  7086. ΓòÉΓòÉΓòÉ 11.3.1.6. SCSI_DISABLECACHE ΓòÉΓòÉΓòÉ
  7087.  
  7088. This function disables the adapter cache capability for all subsequent commands 
  7089. to the SCSI device. 
  7090.  
  7091.  
  7092. ΓòÉΓòÉΓòÉ 11.3.1.6.1. Input Parameter Keywords ΓòÉΓòÉΓòÉ
  7093.  
  7094. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  7095. ΓöéKeyword                       ΓöéType   ΓöéDescription                   Γöé
  7096. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  7097. ΓöéDRIVEHANDLE                   ΓöéNUM    ΓöéHandle for the SCSI adapter,  Γöé
  7098. Γöé                              Γöé       Γöéset by SSCSI_OPEN             Γöé
  7099. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  7100. ΓöéDEVICEHANDLE                  ΓöéNUM    ΓöéHandle for the SCSI device,   Γöé
  7101. Γöé                              Γöé       Γöéobtained from                 Γöé
  7102. Γöé                              Γöé       ΓöéSCSI_ALLOCATEDEVICE           Γöé
  7103. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  7104.  
  7105.  
  7106. ΓòÉΓòÉΓòÉ 11.3.1.6.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  7107.  
  7108.  
  7109. None. 
  7110.  
  7111.  
  7112. ΓòÉΓòÉΓòÉ 11.3.1.6.3. Logged Data ΓòÉΓòÉΓòÉ
  7113.  
  7114.  
  7115. None. 
  7116.  
  7117.  
  7118. ΓòÉΓòÉΓòÉ 11.3.1.7. SCSI_CACHESTATUS ΓòÉΓòÉΓòÉ
  7119.  
  7120. This function returns the adapter cache status for the specified SCSI device. 
  7121.  
  7122.  
  7123. ΓòÉΓòÉΓòÉ 11.3.1.7.1. Input Parameter Keywords ΓòÉΓòÉΓòÉ
  7124.  
  7125. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  7126. ΓöéKeyword                       ΓöéType   ΓöéDescription                   Γöé
  7127. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  7128. ΓöéDRIVEHANDLE                   ΓöéNUM    ΓöéHandle for the SCSI adapter,  Γöé
  7129. Γöé                              Γöé       Γöéset by SSCSI_OPEN             Γöé
  7130. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  7131. ΓöéDEVICEHANDLE                  ΓöéNUM    ΓöéHandle for the SCSI device,   Γöé
  7132. Γöé                              Γöé       Γöéobtained from                 Γöé
  7133. Γöé                              Γöé       ΓöéSCSI_ALLOCATEDEVICE           Γöé
  7134. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  7135.  
  7136.  
  7137. ΓòÉΓòÉΓòÉ 11.3.1.7.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  7138.  
  7139.  
  7140. None. 
  7141.  
  7142.  
  7143. ΓòÉΓòÉΓòÉ 11.3.1.7.3. Logged Data ΓòÉΓòÉΓòÉ
  7144.  
  7145.  
  7146. Adapter Cache Status (0-enabled,  1-disabled) 
  7147.  
  7148.  
  7149. ΓòÉΓòÉΓòÉ 11.3.1.8. SCSI_SETDEVTIMEOUT ΓòÉΓòÉΓòÉ
  7150.  
  7151. This function sets the timeout value for the device. 
  7152.  
  7153.  
  7154. ΓòÉΓòÉΓòÉ 11.3.1.8.1. Input Parameter Keywords ΓòÉΓòÉΓòÉ
  7155.  
  7156. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  7157. ΓöéKeyword                       ΓöéType   ΓöéDescription                   Γöé
  7158. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  7159. ΓöéDRIVEHANDLE                   ΓöéNUM    ΓöéHandle for the SCSI adapter,  Γöé
  7160. Γöé                              Γöé       Γöéset by SSCSI_OPEN             Γöé
  7161. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  7162. ΓöéDEVICEHANDLE                  ΓöéNUM    ΓöéHandle for the SCSI device,   Γöé
  7163. Γöé                              Γöé       Γöéobtained from                 Γöé
  7164. Γöé                              Γöé       ΓöéSCSI_ALLOCATEDEVICE           Γöé
  7165. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  7166. ΓöéTIMEOUT                       ΓöéNUM    ΓöéTime out value (msecs)        Γöé
  7167. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  7168.  
  7169.  
  7170. ΓòÉΓòÉΓòÉ 11.3.1.8.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  7171.  
  7172.  
  7173. None. 
  7174.  
  7175.  
  7176. ΓòÉΓòÉΓòÉ 11.3.1.8.3. Logged Data ΓòÉΓòÉΓòÉ
  7177.  
  7178.  
  7179. None. 
  7180.  
  7181.  
  7182. ΓòÉΓòÉΓòÉ 11.3.1.9. SCSI_READDEVTIMEOUT ΓòÉΓòÉΓòÉ
  7183.  
  7184. This function returns the current timeout value for the device. 
  7185.  
  7186.  
  7187. ΓòÉΓòÉΓòÉ 11.3.1.9.1. Input Parameter Keywords ΓòÉΓòÉΓòÉ
  7188.  
  7189. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  7190. ΓöéKeyword                       ΓöéType   ΓöéDescription                   Γöé
  7191. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  7192. ΓöéDRIVEHANDLE                   ΓöéNUM    ΓöéHandle for the SCSI adapter,  Γöé
  7193. Γöé                              Γöé       Γöéset by SSCSI_OPEN             Γöé
  7194. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  7195. ΓöéDEVICEHANDLE                  ΓöéNUM    ΓöéHandle for the SCSI device,   Γöé
  7196. Γöé                              Γöé       Γöéobtained from                 Γöé
  7197. Γöé                              Γöé       ΓöéSCSI_ALLOCATEDEVICE           Γöé
  7198. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  7199.  
  7200.  
  7201. ΓòÉΓòÉΓòÉ 11.3.1.9.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  7202.  
  7203.  
  7204. None. 
  7205.  
  7206.  
  7207. ΓòÉΓòÉΓòÉ 11.3.1.9.3. Logged Data ΓòÉΓòÉΓòÉ
  7208.  
  7209.  
  7210. Timeout value 
  7211.  
  7212.  
  7213. ΓòÉΓòÉΓòÉ 11.3.1.10. SCSI_TRANSFERSCB ΓòÉΓòÉΓòÉ
  7214.  
  7215. This function causes a SCSI Control Block (SCB) or a chain of SCB's to be sent 
  7216. to the adapter. 
  7217.  
  7218.  
  7219. ΓòÉΓòÉΓòÉ 11.3.1.10.1. Input Parameter Keywords ΓòÉΓòÉΓòÉ
  7220.  
  7221. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  7222. ΓöéKeyword                       ΓöéType   ΓöéDescription                   Γöé
  7223. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  7224. ΓöéDRIVEHANDLE                   ΓöéNUM    ΓöéHandle for the SCSI adapter,  Γöé
  7225. Γöé                              Γöé       Γöéset by SSCSI_OPEN             Γöé
  7226. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  7227. ΓöéDEVICEHANDLE                  ΓöéNUM    ΓöéHandle for the SCSI device,   Γöé
  7228. Γöé                              Γöé       Γöéobtained from                 Γöé
  7229. Γöé                              Γöé       ΓöéSCSI_ALLOCATEDEVICE           Γöé
  7230. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  7231. ΓöéPHYSICALSCBPTR                ΓöéNUM    ΓöéPhysical Pointer to SCB       Γöé
  7232. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  7233. ΓöéLOGICALSCBPTR                 ΓöéNUM    ΓöéLogical Pointer to SCB Chain  Γöé
  7234. Γöé                              Γöé       ΓöéHeader                        Γöé
  7235. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  7236. ΓöéFLAGS                         ΓöéNUM    ΓöéFlags                         Γöé
  7237. Γöé                              Γöé       Γöé0 = Normal Length SCB         Γöé
  7238. Γöé                              Γöé       Γöé1 = Long SCB                  Γöé
  7239. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  7240.  
  7241.  
  7242. ΓòÉΓòÉΓòÉ 11.3.1.10.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  7243.  
  7244.  
  7245. None. 
  7246.  
  7247.  
  7248. ΓòÉΓòÉΓòÉ 11.3.1.10.3. Logged Data ΓòÉΓòÉΓòÉ
  7249.  
  7250.  
  7251. None. 
  7252.  
  7253.  
  7254. ΓòÉΓòÉΓòÉ 11.3.1.11. SCSI_ALLOCATEDEVICE ΓòÉΓòÉΓòÉ
  7255.  
  7256. This function allocates a SCSI peripheral device and returns the device handle 
  7257. that will be used to access the device. 
  7258.  
  7259.  
  7260. ΓòÉΓòÉΓòÉ 11.3.1.11.1. Input Parameter Keywords ΓòÉΓòÉΓòÉ
  7261.  
  7262. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  7263. ΓöéKeyword                       ΓöéType   ΓöéDescription                   Γöé
  7264. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  7265. ΓöéDRIVEHANDLE                   ΓöéNUM    ΓöéHandle for the SCSI adapter,  Γöé
  7266. Γöé                              Γöé       Γöéset by SSCSI_OPEN             Γöé
  7267. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  7268. ΓöéPERIPHTYPE                    ΓöéNUM    ΓöéDevice Peripheral Type: where Γöé
  7269. Γöé                              Γöé       Γöé0 = Direct Access             Γöé
  7270. Γöé                              Γöé       Γöé1 = Sequential Access         Γöé
  7271. Γöé                              Γöé       Γöé2 = Printer                   Γöé
  7272. Γöé                              Γöé       Γöé3 = Processor                 Γöé
  7273. Γöé                              Γöé       Γöé4 = Write Once/Read Many      Γöé
  7274. Γöé                              Γöé       Γöé5 = CD-ROM                    Γöé
  7275. Γöé                              Γöé       Γöé6 = Scanner                   Γöé
  7276. Γöé                              Γöé       Γöé7 = Optical Memory            Γöé
  7277. Γöé                              Γöé       Γöé8 = Medium Changer            Γöé
  7278. Γöé                              Γöé       Γöé9 = Communications            Γöé
  7279. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  7280. ΓöéDEVTYPEFLG                    ΓöéNUM    ΓöéDevice Type Flags: where      Γöé
  7281. Γöé                              Γöé       ΓöéThe most significant bit of   Γöé
  7282. Γöé                              Γöé       Γöéthe device type flags set     Γöé
  7283. Γöé                              Γöé       Γöéindicates that the media is   Γöé
  7284. Γöé                              Γöé       Γöéremovable.                    Γöé
  7285. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  7286. ΓöéAVAILDEV                      ΓöéNUM    ΓöéNth device in the device type Γöé
  7287. Γöé                              Γöé       Γöégroup.                        Γöé
  7288. Γöé                              Γöé       Γöé0 = the next available device Γöé
  7289. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  7290.  
  7291.  
  7292. ΓòÉΓòÉΓòÉ 11.3.1.11.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  7293.  
  7294.  
  7295. None. 
  7296.  
  7297.  
  7298. ΓòÉΓòÉΓòÉ 11.3.1.11.3. Logged Data ΓòÉΓòÉΓòÉ
  7299.  
  7300.  
  7301. Device Handle 
  7302.  
  7303.  
  7304. ΓòÉΓòÉΓòÉ 11.3.1.12. SCSI_DEALLOCATEDEVICE ΓòÉΓòÉΓòÉ
  7305.  
  7306. This function deallocates the SCSI peripheral device assigned to this device 
  7307. handle. 
  7308.  
  7309.  
  7310. ΓòÉΓòÉΓòÉ 11.3.1.12.1. Input Parameter Keywords ΓòÉΓòÉΓòÉ
  7311.  
  7312. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  7313. ΓöéKeyword                       ΓöéType   ΓöéDescription                   Γöé
  7314. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  7315. ΓöéDRIVEHANDLE                   ΓöéNUM    ΓöéHandle for the SCSI adapter,  Γöé
  7316. Γöé                              Γöé       Γöéset by SSCSI_OPEN             Γöé
  7317. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  7318. ΓöéDEVICEHANDLE                  ΓöéNUM    ΓöéHandle for the SCSI device,   Γöé
  7319. Γöé                              Γöé       Γöéobtained from                 Γöé
  7320. Γöé                              Γöé       ΓöéSCSI_ALLOCATEDEVICE           Γöé
  7321. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  7322.  
  7323.  
  7324. ΓòÉΓòÉΓòÉ 11.3.1.12.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  7325.  
  7326.  
  7327. None. 
  7328.  
  7329.  
  7330. ΓòÉΓòÉΓòÉ 11.3.1.12.3. Logged Data ΓòÉΓòÉΓòÉ
  7331.  
  7332.  
  7333. None. 
  7334.  
  7335.  
  7336. ΓòÉΓòÉΓòÉ 11.3.1.13. SCSI_PERIPHERALTYPECOUNT ΓòÉΓòÉΓòÉ
  7337.  
  7338. This function returns a count of the number of devices of a particular type 
  7339. that are detected. 
  7340.  
  7341.  
  7342. ΓòÉΓòÉΓòÉ 11.3.1.13.1. Input Parameter Keywords ΓòÉΓòÉΓòÉ
  7343.  
  7344. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  7345. ΓöéKeyword                       ΓöéType   ΓöéDescription                   Γöé
  7346. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  7347. ΓöéDRIVEHANDLE                   ΓöéNUM    ΓöéHandle for the SCSI adapter,  Γöé
  7348. Γöé                              Γöé       Γöéset by SSCSI_OPEN             Γöé
  7349. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  7350. ΓöéPERIPHTYPE                    ΓöéNUM    ΓöéDevice Peripheral Type: where Γöé
  7351. Γöé                              Γöé       Γöé0 = Direct Access             Γöé
  7352. Γöé                              Γöé       Γöé1 = Sequential Access         Γöé
  7353. Γöé                              Γöé       Γöé2 = Printer                   Γöé
  7354. Γöé                              Γöé       Γöé3 = Processor                 Γöé
  7355. Γöé                              Γöé       Γöé4 = Write Once/Read Many      Γöé
  7356. Γöé                              Γöé       Γöé5 = CD-ROM                    Γöé
  7357. Γöé                              Γöé       Γöé6 = Scanner                   Γöé
  7358. Γöé                              Γöé       Γöé7 = Optical Memory            Γöé
  7359. Γöé                              Γöé       Γöé8 = Medium Changer            Γöé
  7360. Γöé                              Γöé       Γöé9 = Communications            Γöé
  7361. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  7362. ΓöéDEVTYPEFLG                    ΓöéNUM    ΓöéDevice Type Flags: where      Γöé
  7363. Γöé                              Γöé       ΓöéThe most significant bit of   Γöé
  7364. Γöé                              Γöé       Γöéthe device type flags set     Γöé
  7365. Γöé                              Γöé       Γöéindicates that the media is   Γöé
  7366. Γöé                              Γöé       Γöéremovable.                    Γöé
  7367. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  7368.  
  7369.  
  7370. ΓòÉΓòÉΓòÉ 11.3.1.13.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  7371.  
  7372.  
  7373. None. 
  7374.  
  7375.  
  7376. ΓòÉΓòÉΓòÉ 11.3.1.13.3. Logged Data ΓòÉΓòÉΓòÉ
  7377.  
  7378.  
  7379. Count of Device Type Requested 
  7380.  
  7381.  
  7382. ΓòÉΓòÉΓòÉ 11.3.1.14. SCSI_SENDABORT ΓòÉΓòÉΓòÉ
  7383.  
  7384. This function sends an abort request to the device. 
  7385.  
  7386.  
  7387. ΓòÉΓòÉΓòÉ 11.3.1.14.1. Input Parameter Keywords ΓòÉΓòÉΓòÉ
  7388.  
  7389. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  7390. ΓöéKeyword                       ΓöéType   ΓöéDescription                   Γöé
  7391. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  7392. ΓöéDRIVEHANDLE                   ΓöéNUM    ΓöéHandle for the SCSI adapter,  Γöé
  7393. Γöé                              Γöé       Γöéset by SSCSI_OPEN             Γöé
  7394. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  7395. ΓöéDEVICEHANDLE                  ΓöéNUM    ΓöéHandle for the SCSI device,   Γöé
  7396. Γöé                              Γöé       Γöéobtained from                 Γöé
  7397. Γöé                              Γöé       ΓöéSCSI_ALLOCATEDEVICE           Γöé
  7398. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  7399.  
  7400.  
  7401. ΓòÉΓòÉΓòÉ 11.3.1.14.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  7402.  
  7403.  
  7404. None. 
  7405.  
  7406.  
  7407. ΓòÉΓòÉΓòÉ 11.3.1.14.3. Logged Data ΓòÉΓòÉΓòÉ
  7408.  
  7409.  
  7410. None. 
  7411.  
  7412.  
  7413. ΓòÉΓòÉΓòÉ 11.4. Description of Test Cases ΓòÉΓòÉΓòÉ
  7414.  
  7415. Each of the SCSI IOCtl test cases can be executed individually as previously 
  7416. described.  The corresponding test scripts are described below. You can create 
  7417. additional tests or combine tests into multi-threaded test cases after becoming 
  7418. familiar with the DDTT and the SCSI grammar files. 
  7419.  
  7420. All test scripts close the channels opened to the SCSI adapter/device and 
  7421. verify successful status return from every exercised API.  All test scripts log 
  7422. information to a log file with the same file name with a file name extension 
  7423. .LOG.  When current status is queried (for example, the timeout value and cache 
  7424. status), this data is written to the DDTT's output windows and to the log file. 
  7425. Log files can be examined after the test case has completed. 
  7426.  
  7427.  SCCOM.SCR           This is a common script which is imported by almost all 
  7428.                      the SCSI scripts.  This script SETS hardware dependent 
  7429.                      keywords like DEVICEHANDLE. 
  7430.  
  7431.  ABORT.SCR           Causes an abort request to be sent to the device. 
  7432.  
  7433.  ALLOCDV.SCR         Allocates the specified SCSI peripheral device and returns 
  7434.                      the device handle that will be used to access the device. 
  7435.  
  7436.  CACHSTAT.SCR        Returns the adapter cache status for the specified device. 
  7437.  
  7438.  DALLOCDV.SCR        Deallocates the SCSI peripheral device assigned to the 
  7439.                      specified device handle. 
  7440.  
  7441.  DISCACHE.SCR        Disables the adapter cache capability for subsequent 
  7442.                      commands to the specified device. 
  7443.  
  7444.  ENCACHE.SCR         Enables the adapter cache capability for all subsequent 
  7445.                      commands to the specified device. 
  7446.  
  7447.  PARAM.SCR           Returns some information about the device. 
  7448.  
  7449.  PTYPECT.SCR         Returns a count of the number of devices of a specified 
  7450.                      type that are detected. 
  7451.  
  7452.  READTOUT.SCR        Returns the current timeout value of the specified device. 
  7453.  
  7454.  RESET.SCR           Issues a reset message to the specified physical device. 
  7455.  
  7456.  SETTOUT.SCR         Sets the timeout value for the specified device. 
  7457.  
  7458.  
  7459. ΓòÉΓòÉΓòÉ 12. SCSI ADD Device Driver Test Tool ΓòÉΓòÉΓòÉ
  7460.  
  7461.  
  7462. ΓòÉΓòÉΓòÉ 12.1. Overview ΓòÉΓòÉΓòÉ
  7463.  
  7464. The SCSI ADD Functional Verification Tests (FVTs) exercise the 
  7465. Inter-Device-Driver Communications (IDC) (IDCs) defined for the SCSI Adapter 
  7466. device drivers.  The tests are implemented with the Device Driver Test Tool 
  7467. (DDTT) and a test device driver (DASD.SYS), which communicates directly with 
  7468. the SCSI Adapter device driver under test. Each test is defined in a script 
  7469. file.  The script files can be modified using a text editor to create 
  7470. additional, specialized test cases.  See Using the Device Driver Test Tool 
  7471. (DDTT) for a description of the DDTT.  The test scripts give the user a 
  7472. repeatable set of tests that demonstrate SCSI function and performance.  Errors 
  7473. are reported and are easily isolated to a specific test sequence and API. 
  7474.  
  7475. User input and output from each thread of the SCSI ADD tests is by way of a 
  7476. separate Presentation Manager window.  Multi-threaded test cases log all 
  7477. information to single log file, clearly indicating the actual execution 
  7478. sequence in the event of errors. 
  7479.  
  7480.  
  7481. ΓòÉΓòÉΓòÉ 12.2. SCSI ADD Test Architecture ΓòÉΓòÉΓòÉ
  7482.  
  7483. DDTT provides a common front-parser for test case scripts and tests several 
  7484. devices and APIs. The following DDTT SCSI ADD-specific stub code and grammar 
  7485. files are required files: 
  7486.  
  7487.    o  SCSIADD.DLL 
  7488.  
  7489.    o  SCSIADD.GRA 
  7490.  
  7491.    o  DASDADD.SYS 
  7492.  The C++ source code SCSIADD.DLL is available on the IBM Developer Connection 
  7493.  Device Driver Kit for OS/2. The following required, common components of DDTT 
  7494.  implement DDTT's programmable parser and common test functions such as SET, 
  7495.  LOOP, and PAUSE: 
  7496.  
  7497.    o  DDTT.EXE 
  7498.  
  7499.    o  DDTT.DLL 
  7500.  
  7501.    o  GLOBAL.DLL 
  7502.  
  7503.    o  GLOBAL.GRA 
  7504.  
  7505.  
  7506. ΓòÉΓòÉΓòÉ 12.3. Installation ΓòÉΓòÉΓòÉ
  7507.  
  7508. There are two directory structures in the IBM Developer Connection Device 
  7509. Driver Kit for OS/2 that utilize test suites. The TESTCERT substructure 
  7510. contains the executables and test cases and the TESTTOOL substructure contains 
  7511. the files required to change and rebuild the code for a particular test DLL. 
  7512.  
  7513. The following describes installation for running test cases: 
  7514.  
  7515.    1. Copy the executable and SCSI ADD test case files from the IBM Developer 
  7516.       Connection Device Driver Kit for OS/2 CD-ROM disc to the hard drive.  All 
  7517.       the executable (.EXE and .DLL) files can reside in one directory, such as 
  7518.       \TSCSIADD. Test-case script and command files can also be placed in this 
  7519.       directory on the hard disk. If the target directory is C:\TSCSIADD and 
  7520.       the E drive contains information from the IBM Developer Connection Device 
  7521.       Driver Kit for OS/2 CD-ROM disc, then use the following commands to copy 
  7522.       the SCSI ADD test suite: 
  7523.  
  7524.             ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  7525.  
  7526.                [C:\]md tscsiadd
  7527.  
  7528.                [C:\]cd tscsiadd
  7529.  
  7530.                [C:\tscsiadd]copy e:\ddk_x86\testcert\storage\function\scsi\add\*
  7531.  
  7532.                [C:\tscsiadd]copy e:\ddk_x86\testcert\general\ddtt\*
  7533.  
  7534.             ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  7535.  
  7536.    2. Add C:\TSCSIADD to the LIBPATH and PATH in the CONFIG.SYS file. 
  7537.  
  7538.    3. To install the device driver, edit your system's CONFIG.SYS file and add 
  7539.       the following line: 
  7540.  
  7541.             ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  7542.  
  7543.                DEVICE=C:\TSCSIADD\DASDADD.SYS
  7544.  
  7545.             ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  7546.  
  7547.    4. Reboot your machine so the new LIBPATH entry and DEVICE statement take 
  7548.       effect. 
  7549.  
  7550.  
  7551. ΓòÉΓòÉΓòÉ 12.4. Test-Case Execution ΓòÉΓòÉΓòÉ
  7552.  
  7553.    1. Change to the directory where the SCSI ADD test script files were copied, 
  7554.       for example, C:\TSCSIADD. 
  7555.  
  7556.    2. To execute a test, enter DDTT followed by the name of the script file. 
  7557.  
  7558.       Note:  Review the SCSIADD.GRA grammar file before using WRITE functions 
  7559.              since they could be destructive. 
  7560.  
  7561.    3. The output is written to the corresponding file names with a .LOG 
  7562.       extension. 
  7563.  
  7564.  
  7565. ΓòÉΓòÉΓòÉ 12.4.1. DDTT SCSI ADD Test Grammar Function Calls ΓòÉΓòÉΓòÉ
  7566.  
  7567. The following are the names of the SCSI ADD Test Grammar Function Calls: 
  7568.  
  7569.    o  DD_OPEN 
  7570.    o  DD_CLOSE 
  7571.    o  DD_GETDRIVERS 
  7572.    o  DD_GETDEVICETABLE 
  7573.    o  READCAPACITY 
  7574.    o  READ10 
  7575.    o  READ6 
  7576.    o  SEEK6 
  7577.    o  REZERO_UNIT 
  7578.    o  PREFETCH 
  7579.    o  LOCK_UNLOCK_MEDIA 
  7580.    o  START_STOP_UNIT 
  7581.    o  SYNC_CACHE 
  7582.    o  WRITE_6 
  7583.    o  WRITE_10 
  7584.    o  WRITE_AND_VERIFY 
  7585.    o  WRITE_SAME 
  7586.    o  READ_LONG 
  7587.    o  WRITE_LONG 
  7588.    o  VERIFY 
  7589.    o  LOCK_UNLOCK_CACHE 
  7590.    o  INQUIRY 
  7591.    o  TEST_UNIT_READY 
  7592.    o  SEND_DIAGNOSTIC 
  7593.    o  RELEASE 
  7594.    o  RESERVE 
  7595.    o  DD_CDB12 
  7596.    o  DD_CDB10 
  7597.    o  DD_CDB6 
  7598.  
  7599.  
  7600. ΓòÉΓòÉΓòÉ 12.4.1.1. DD_OPEN ΓòÉΓòÉΓòÉ
  7601.  
  7602. This function opens the DASDADD$ (DASDADD.SYS) test device driver. 
  7603.  
  7604.  
  7605. ΓòÉΓòÉΓòÉ 12.4.1.1.1. Input Parameter Keywords ΓòÉΓòÉΓòÉ
  7606.  
  7607.  
  7608. None. 
  7609.  
  7610.  
  7611. ΓòÉΓòÉΓòÉ 12.4.1.1.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  7612.  
  7613. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  7614. ΓöéKeyword                       ΓöéType   ΓöéDescription                   Γöé
  7615. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  7616. ΓöéDRIVEHANDLE                   ΓöéNUM    ΓöéHandle for the DASD device    Γöé
  7617. Γöé                              Γöé       Γöédriver                        Γöé
  7618. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  7619.  
  7620.  
  7621. ΓòÉΓòÉΓòÉ 12.4.1.1.3. Logged Data ΓòÉΓòÉΓòÉ
  7622.  
  7623.  
  7624. None. 
  7625.  
  7626.  
  7627. ΓòÉΓòÉΓòÉ 12.4.1.2. DD_CLOSE ΓòÉΓòÉΓòÉ
  7628.  
  7629. This function closes the DASDADD$ (DASDADD.SYS) test device driver. 
  7630.  
  7631.  
  7632. ΓòÉΓòÉΓòÉ 12.4.1.2.1. Input Parameter Keywords ΓòÉΓòÉΓòÉ
  7633.  
  7634. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  7635. ΓöéKeyword                       ΓöéType   ΓöéDescription                   Γöé
  7636. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  7637. ΓöéDRIVEHANDLE                   ΓöéNUM    ΓöéHandle for the DASD device    Γöé
  7638. Γöé                              Γöé       Γöédriver                        Γöé
  7639. Γöé                              Γöé       Γöéset by DD_OPEN                Γöé
  7640. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  7641.  
  7642.  
  7643. ΓòÉΓòÉΓòÉ 12.4.1.2.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  7644.  
  7645.  
  7646. None. 
  7647.  
  7648.  
  7649. ΓòÉΓòÉΓòÉ 12.4.1.2.3. Logged Data ΓòÉΓòÉΓòÉ
  7650.  
  7651.  
  7652. None. 
  7653.  
  7654.  
  7655. ΓòÉΓòÉΓòÉ 12.4.1.3. DD_GETDRIVERS ΓòÉΓòÉΓòÉ
  7656.  
  7657. This function returns the names of all the installed drivers of DASD CLASS. 
  7658.  
  7659.  
  7660. ΓòÉΓòÉΓòÉ 12.4.1.3.1. Input Parameter Keywords ΓòÉΓòÉΓòÉ
  7661.  
  7662. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  7663. ΓöéKeyword                       ΓöéType   ΓöéDescription                   Γöé
  7664. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  7665. ΓöéDRIVEHANDLE                   ΓöéNUM    ΓöéHandle for the DASD device    Γöé
  7666. Γöé                              Γöé       Γöédriver                        Γöé
  7667. Γöé                              Γöé       Γöéset by DD_OPEN                Γöé
  7668. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  7669.  
  7670.  
  7671. ΓòÉΓòÉΓòÉ 12.4.1.3.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  7672.  
  7673.  
  7674. None. 
  7675.  
  7676.  
  7677. ΓòÉΓòÉΓòÉ 12.4.1.3.3. Logged Data ΓòÉΓòÉΓòÉ
  7678.  
  7679.  
  7680. Names of installed drivers on the system 
  7681.  
  7682.  
  7683. ΓòÉΓòÉΓòÉ 12.4.1.4. DD_GETDEVICETABLE ΓòÉΓòÉΓòÉ
  7684.  
  7685. This function gets the devicetable for a given adapter device driver. 
  7686.  
  7687.  
  7688. ΓòÉΓòÉΓòÉ 12.4.1.4.1. Input Parameter Keywords ΓòÉΓòÉΓòÉ
  7689.  
  7690. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  7691. ΓöéKeyword                       ΓöéType   ΓöéDescription                   Γöé
  7692. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  7693. ΓöéDRIVEHANDLE                   ΓöéNUM    ΓöéHandle for the DASD device    Γöé
  7694. Γöé                              Γöé       Γöédriver                        Γöé
  7695. Γöé                              Γöé       Γöéset by DD_OPEN                Γöé
  7696. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  7697. ΓöéDRVNAME                       ΓöéSTRING Γöé16-character driver name      Γöé
  7698. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  7699. ΓöéMODE                          ΓöéNUM    ΓöéOptional                      Γöé
  7700. Γöé                              Γöé       Γöé0 = Asynchronous mode         Γöé
  7701. Γöé                              Γöé       Γöé(default)                     Γöé
  7702. Γöé                              Γöé       Γöé1 = Synchronous mode          Γöé
  7703. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  7704.  
  7705.  
  7706. ΓòÉΓòÉΓòÉ 12.4.1.4.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  7707.  
  7708.  
  7709. None. 
  7710.  
  7711.  
  7712. ΓòÉΓòÉΓòÉ 12.4.1.4.3. Logged Data ΓòÉΓòÉΓòÉ
  7713.  
  7714.  
  7715.  DEVICETABLE              Add major support level 
  7716.                           Add minor support level 
  7717.                           Add handle support level 
  7718.                           Number of adapters 
  7719.                           Adapter name 
  7720.                           Adapter information 
  7721.                           Number of units this adapter supports 
  7722.                           Adapter-to-device bus protocol used 
  7723.                           Adapter I/O access 
  7724.                           Adapter host bus 
  7725.                           Adapter SCSI target ID 
  7726.                           Adapter SCSI LUN 
  7727.                           Adapter flags 
  7728.                           Unit information 
  7729.                           Unit adapter index 
  7730.                           Unit index 
  7731.                           Unit flags 
  7732.                           Unit handle 
  7733.                           Unit filter Add handle 
  7734.                           Unit type 
  7735.                           Unit queuing count 
  7736.                           Unit SCSI target ID; Unit SCSI LUN 
  7737.  
  7738.  
  7739. ΓòÉΓòÉΓòÉ 12.4.1.5. READCAPACITY ΓòÉΓòÉΓòÉ
  7740.  
  7741. This function reads information about the capacity of the logical unit. 
  7742.  
  7743.  
  7744. ΓòÉΓòÉΓòÉ 12.4.1.5.1. Input Parameter Keywords ΓòÉΓòÉΓòÉ
  7745.  
  7746. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  7747. ΓöéKeyword                       ΓöéType   ΓöéDescription                   Γöé
  7748. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  7749. ΓöéDRIVEHANDLE                   ΓöéNUM    ΓöéHandle for the DASD device    Γöé
  7750. Γöé                              Γöé       Γöédriver                        Γöé
  7751. Γöé                              Γöé       Γöéset by DD_OPEN                Γöé
  7752. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  7753. ΓöéDRVNAME                       ΓöéSTRING Γöé16-character driver name      Γöé
  7754. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  7755. ΓöéMODE                          ΓöéNUM    ΓöéOptional                      Γöé
  7756. Γöé                              Γöé       Γöé0 = Asynchronous mode         Γöé
  7757. Γöé                              Γöé       Γöé(default)                     Γöé
  7758. Γöé                              Γöé       Γöé1 = Synchronous mode          Γöé
  7759. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  7760. ΓöéUNITHANDLE                    ΓöéNUM    ΓöéObtained from device table    Γöé
  7761. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  7762. ΓöéLABEL                         ΓöéSTRING ΓöéName for the data block       Γöé
  7763. Γöé                              Γöé       Γöécontaining                    Γöé
  7764. Γöé                              Γöé       Γöéstatus and error information  Γöé
  7765. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  7766.  
  7767.  
  7768. ΓòÉΓòÉΓòÉ 12.4.1.5.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  7769.  
  7770. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  7771. ΓöéKeyword                       ΓöéType   ΓöéDescription                   Γöé
  7772. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  7773. ΓöéLAST_LOGICAL_BLOCK_ADDR       ΓöéNUM    ΓöéLast logical block address    Γöé
  7774. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  7775. ΓöéLOGICAL_BLOCK_SIZE            ΓöéNUM    ΓöéSize of each logical block    Γöé
  7776. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  7777.  
  7778.  
  7779. ΓòÉΓòÉΓòÉ 12.4.1.5.3. Logged Data ΓòÉΓòÉΓòÉ
  7780.  
  7781.  
  7782. Status and error information 
  7783. Number of logical blocks 
  7784. Size of each logical block 
  7785.  
  7786.  
  7787. ΓòÉΓòÉΓòÉ 12.4.1.6. READ10 ΓòÉΓòÉΓòÉ
  7788.  
  7789. This function reads the most recent data from the addressed logical blocks. 
  7790. Cache control bits can be set. 
  7791.  
  7792.  
  7793. ΓòÉΓòÉΓòÉ 12.4.1.6.1. Input Parameter Keywords ΓòÉΓòÉΓòÉ
  7794.  
  7795. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  7796. ΓöéKeyword                       ΓöéType   ΓöéDescription                   Γöé
  7797. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  7798. ΓöéDRIVEHANDLE                   ΓöéNUM    ΓöéHandle for the DASD device    Γöé
  7799. Γöé                              Γöé       Γöédriver                        Γöé
  7800. Γöé                              Γöé       Γöéset by DD_OPEN                Γöé
  7801. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  7802. ΓöéDRVNAME                       ΓöéSTRING Γöé16-character driver name      Γöé
  7803. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  7804. ΓöéMODE                          ΓöéNUM    ΓöéOptional                      Γöé
  7805. Γöé                              Γöé       Γöé0 = Asynchronous mode         Γöé
  7806. Γöé                              Γöé       Γöé(default)                     Γöé
  7807. Γöé                              Γöé       Γöé1 = Synchronous mode          Γöé
  7808. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  7809. ΓöéUNITHANDLE                    ΓöéNUM    ΓöéObtained from device table    Γöé
  7810. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  7811. ΓöéLABEL                         ΓöéSTRING ΓöéName for the data block       Γöé
  7812. Γöé                              Γöé       Γöécontaining                    Γöé
  7813. Γöé                              Γöé       Γöéstatus and error information  Γöé
  7814. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  7815. ΓöéSCATGAT                       ΓöéSTRING ΓöéName for the read             Γöé
  7816. Γöé                              Γöé       Γöébuffer(optional)              Γöé
  7817. Γöé                              Γöé       Γöéto be used in write operationsΓöé
  7818. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  7819. ΓöéLOGICAL_BLOCK_SIZE            ΓöéNUM    ΓöéSize of the logical block     Γöé
  7820. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  7821. ΓöéNUM_BLOCKS                    ΓöéNUM    ΓöéNo of blocks to read          Γöé
  7822. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  7823. ΓöéLOGICAL_BLOCK_ADDR            ΓöéNUM    Γöé32-bit starting logical block Γöé
  7824. Γöé                              Γöé       Γöéaddress                       Γöé
  7825. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  7826. ΓöéADDR_MODE                     ΓöéNUM    ΓöéAddressing mode               Γöé
  7827. Γöé                              Γöé       Γöé0 = Asynchronous mode         Γöé
  7828. Γöé                              Γöé       Γöé(default)                     Γöé
  7829. Γöé                              Γöé       Γöé1 = Synchronous mode          Γöé
  7830. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  7831. ΓöéFORCE_MEDIA_ACCESS            ΓöéNUM    Γöé1 (Force access from media), 0Γöé
  7832. Γöé                              Γöé       Γöé(Can access from cache)       Γöé
  7833. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  7834. ΓöéCACHE_IF_POSSIBLE             ΓöéNUM    Γöé1 (Cache if possible), 0 (NeedΓöé
  7835. Γöé                              Γöé       Γöénot cache it)                 Γöé
  7836. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  7837.  
  7838.  
  7839. ΓòÉΓòÉΓòÉ 12.4.1.6.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  7840.  
  7841.  
  7842. None. 
  7843.  
  7844.  
  7845. ΓòÉΓòÉΓòÉ 12.4.1.6.3. Logged Data ΓòÉΓòÉΓòÉ
  7846.  
  7847.  
  7848. Status and error information 
  7849. Data read from the specified blocks 
  7850.  
  7851.  
  7852. ΓòÉΓòÉΓòÉ 12.4.1.7. READ6 ΓòÉΓòÉΓòÉ
  7853.  
  7854. This function reads the most recent data from the addressed logical blocks. 
  7855. Cache control bits CANNOT be set. 
  7856.  
  7857.  
  7858. ΓòÉΓòÉΓòÉ 12.4.1.7.1. Input Parameter Keywords ΓòÉΓòÉΓòÉ
  7859.  
  7860. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  7861. ΓöéKeyword                       ΓöéType   ΓöéDescription                   Γöé
  7862. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  7863. ΓöéDRIVEHANDLE                   ΓöéNUM    ΓöéHandle for the DASD device    Γöé
  7864. Γöé                              Γöé       Γöédriver                        Γöé
  7865. Γöé                              Γöé       Γöéset by DD_OPEN                Γöé
  7866. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  7867. ΓöéDRVNAME                       ΓöéSTRING Γöé16-character driver name      Γöé
  7868. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  7869. ΓöéMODE                          ΓöéNUM    ΓöéOptional                      Γöé
  7870. Γöé                              Γöé       Γöé0 = Asynchronous mode         Γöé
  7871. Γöé                              Γöé       Γöé(default)                     Γöé
  7872. Γöé                              Γöé       Γöé1 = Synchronous mode          Γöé
  7873. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  7874. ΓöéUNITHANDLE                    ΓöéNUM    ΓöéObtained from device table    Γöé
  7875. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  7876. ΓöéLABEL                         ΓöéSTRING ΓöéName for the data block       Γöé
  7877. Γöé                              Γöé       Γöécontaining                    Γöé
  7878. Γöé                              Γöé       Γöéstatus and error information  Γöé
  7879. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  7880. ΓöéSCATGAT                       ΓöéSTRING ΓöéName for the read             Γöé
  7881. Γöé                              Γöé       Γöébuffer(optional)              Γöé
  7882. Γöé                              Γöé       Γöéto be used in write operationsΓöé
  7883. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  7884. ΓöéLOGICAL_BLOCK_SIZE            ΓöéNUM    ΓöéSize of the logical block     Γöé
  7885. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  7886. ΓöéNUM_BLOCKS                    ΓöéNUM    ΓöéNo of blocks to read          Γöé
  7887. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  7888. ΓöéLOGICAL_BLOCK_ADDR            ΓöéNUM    Γöé21-bit starting logical block Γöé
  7889. Γöé                              Γöé       Γöéaddress                       Γöé
  7890. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  7891.  
  7892.  
  7893. ΓòÉΓòÉΓòÉ 12.4.1.7.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  7894.  
  7895.  
  7896. None. 
  7897.  
  7898.  
  7899. ΓòÉΓòÉΓòÉ 12.4.1.7.3. Logged Data ΓòÉΓòÉΓòÉ
  7900.  
  7901.  
  7902. Status and error information 
  7903. Data read from the specified blocks 
  7904.  
  7905.  
  7906. ΓòÉΓòÉΓòÉ 12.4.1.8. SEEK6 ΓòÉΓòÉΓòÉ
  7907.  
  7908. This function seeks to the specified logical block address. 
  7909.  
  7910.  
  7911. ΓòÉΓòÉΓòÉ 12.4.1.8.1. Input Parameter Keywords ΓòÉΓòÉΓòÉ
  7912.  
  7913. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  7914. ΓöéKeyword                       ΓöéType   ΓöéDescription                   Γöé
  7915. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  7916. ΓöéDRIVEHANDLE                   ΓöéNUM    ΓöéHandle for the DASD device    Γöé
  7917. Γöé                              Γöé       Γöédriver                        Γöé
  7918. Γöé                              Γöé       Γöéset by DD_OPEN                Γöé
  7919. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  7920. ΓöéDRVNAME                       ΓöéSTRING Γöé16-character driver name      Γöé
  7921. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  7922. ΓöéMODE                          ΓöéNUM    ΓöéOptional                      Γöé
  7923. Γöé                              Γöé       Γöé0 = Asynchronous mode         Γöé
  7924. Γöé                              Γöé       Γöé(default)                     Γöé
  7925. Γöé                              Γöé       Γöé1 = Synchronous mode          Γöé
  7926. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  7927. ΓöéUNITHANDLE                    ΓöéNUM    ΓöéObtained from device table    Γöé
  7928. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  7929. ΓöéLABEL                         ΓöéSTRING ΓöéName for the data block       Γöé
  7930. Γöé                              Γöé       Γöécontaining                    Γöé
  7931. Γöé                              Γöé       Γöéstatus and error information  Γöé
  7932. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  7933. ΓöéLOGICAL_BLOCK_ADDR            ΓöéNUM    Γöé21-bit starting logical block Γöé
  7934. Γöé                              Γöé       Γöéaddress                       Γöé
  7935. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  7936.  
  7937.  
  7938. ΓòÉΓòÉΓòÉ 12.4.1.8.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  7939.  
  7940.  
  7941. None. 
  7942.  
  7943.  
  7944. ΓòÉΓòÉΓòÉ 12.4.1.8.3. Logged Data ΓòÉΓòÉΓòÉ
  7945.  
  7946.  
  7947. Status and error information 
  7948.  
  7949.  
  7950. ΓòÉΓòÉΓòÉ 12.4.1.9. REZERO_UNIT ΓòÉΓòÉΓòÉ
  7951.  
  7952. This function sets the logical unit to a specific state.  Details are 
  7953. vendor-specific. 
  7954.  
  7955.  
  7956. ΓòÉΓòÉΓòÉ 12.4.1.9.1. Input Parameter Keywords ΓòÉΓòÉΓòÉ
  7957.  
  7958. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  7959. ΓöéKeyword                       ΓöéType   ΓöéDescription                   Γöé
  7960. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  7961. ΓöéDRIVEHANDLE                   ΓöéNUM    ΓöéHandle for the DASD device    Γöé
  7962. Γöé                              Γöé       Γöédriver                        Γöé
  7963. Γöé                              Γöé       Γöéset by DD_OPEN                Γöé
  7964. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  7965. ΓöéDRVNAME                       ΓöéSTRING Γöé16-character driver name      Γöé
  7966. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  7967. ΓöéMODE                          ΓöéNUM    ΓöéOptional                      Γöé
  7968. Γöé                              Γöé       Γöé0 = Asynchronous mode         Γöé
  7969. Γöé                              Γöé       Γöé(default)                     Γöé
  7970. Γöé                              Γöé       Γöé1 = Synchronous mode          Γöé
  7971. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  7972. ΓöéUNITHANDLE                    ΓöéNUM    ΓöéObtained from device table    Γöé
  7973. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  7974. ΓöéLABEL                         ΓöéSTRING ΓöéName for the data block       Γöé
  7975. Γöé                              Γöé       Γöécontaining                    Γöé
  7976. Γöé                              Γöé       Γöéstatus and error information  Γöé
  7977. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  7978.  
  7979.  
  7980. ΓòÉΓòÉΓòÉ 12.4.1.9.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  7981.  
  7982.  
  7983. None. 
  7984.  
  7985.  
  7986. ΓòÉΓòÉΓòÉ 12.4.1.9.3. Logged Data ΓòÉΓòÉΓòÉ
  7987.  
  7988.  
  7989. Status and error information 
  7990.  
  7991.  
  7992. ΓòÉΓòÉΓòÉ 12.4.1.10. PREFETCH ΓòÉΓòÉΓòÉ
  7993.  
  7994. This function reads the specified logical blocks into the adapter's cache 
  7995. memory. 
  7996.  
  7997.  
  7998. ΓòÉΓòÉΓòÉ 12.4.1.10.1. Input Parameter Keywords ΓòÉΓòÉΓòÉ
  7999.  
  8000. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  8001. ΓöéKeyword                       ΓöéType   ΓöéDescription                   Γöé
  8002. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8003. ΓöéDRIVEHANDLE                   ΓöéNUM    ΓöéHandle for the DASD device    Γöé
  8004. Γöé                              Γöé       Γöédriver                        Γöé
  8005. Γöé                              Γöé       Γöéset by DD_OPEN                Γöé
  8006. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8007. ΓöéDRVNAME                       ΓöéSTRING Γöé16-character driver name      Γöé
  8008. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8009. ΓöéMODE                          ΓöéNUM    ΓöéOptional                      Γöé
  8010. Γöé                              Γöé       Γöé0 = Asynchronous mode         Γöé
  8011. Γöé                              Γöé       Γöé(default)                     Γöé
  8012. Γöé                              Γöé       Γöé1 = Synchronous mode          Γöé
  8013. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8014. ΓöéUNITHANDLE                    ΓöéNUM    ΓöéObtained from device table    Γöé
  8015. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8016. ΓöéLABEL                         ΓöéSTRING ΓöéName for the data block       Γöé
  8017. Γöé                              Γöé       Γöécontaining                    Γöé
  8018. Γöé                              Γöé       Γöéstatus and error information  Γöé
  8019. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8020. ΓöéLAST_LOGICAL_BLOCK_ADDR       ΓöéNUM    ΓöéAddress of the last logical   Γöé
  8021. Γöé                              Γöé       Γöéblock                         Γöé
  8022. Γöé                              Γöé       Γöéset by READCAPACITY           Γöé
  8023. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8024. ΓöéLOGICAL_BLOCK_SIZE            ΓöéNUM    ΓöéSize of the logical block     Γöé
  8025. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8026. ΓöéNUM_BLOCKS                    ΓöéNUM    ΓöéNo of blocks to read          Γöé
  8027. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8028. ΓöéLOGICAL_BLOCK_ADDR            ΓöéNUM    Γöé32-bit starting logical block Γöé
  8029. Γöé                              Γöé       Γöéaddress                       Γöé
  8030. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8031. ΓöéADDR_MODE                     ΓöéNUM    ΓöéAddressing mode               Γöé
  8032. Γöé                              Γöé       Γöé0 = specified address is the  Γöé
  8033. Γöé                              Γöé       Γöéfirst logical block           Γöé
  8034. Γöé                              Γöé       Γöé1 = specified address is a    Γöé
  8035. Γöé                              Γöé       Γöétwo's complement displacement Γöé
  8036. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8037. ΓöéSTATUS_RETURN_IMMED           ΓöéNUM    ΓöéStatus to be returned         Γöé
  8038. Γöé                              Γöé       Γöé0 = after the operation is    Γöé
  8039. Γöé                              Γöé       Γöécomplete                      Γöé
  8040. Γöé                              Γöé       Γöé1 = as soon as the command    Γöé
  8041. Γöé                              Γöé       Γöédescriptor block is validated Γöé
  8042. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  8043.  
  8044.  
  8045. ΓòÉΓòÉΓòÉ 12.4.1.10.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  8046.  
  8047.  
  8048. None. 
  8049.  
  8050.  
  8051. ΓòÉΓòÉΓòÉ 12.4.1.10.3. Logged Data ΓòÉΓòÉΓòÉ
  8052.  
  8053.  
  8054. Status and error information 
  8055. Data read from the specified blocks 
  8056.  
  8057.  
  8058. ΓòÉΓòÉΓòÉ 12.4.1.11. LOCK_UNLOCK_MEDIA ΓòÉΓòÉΓòÉ
  8059.  
  8060. This function enables (unlocks) or disables (locks) the removal of the media in 
  8061. the logical unit. 
  8062.  
  8063.  
  8064. ΓòÉΓòÉΓòÉ 12.4.1.11.1. Input Parameter Keywords ΓòÉΓòÉΓòÉ
  8065.  
  8066. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  8067. ΓöéKeyword                       ΓöéType   ΓöéDescription                   Γöé
  8068. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8069. ΓöéDRIVEHANDLE                   ΓöéNUM    ΓöéHandle for the DASD device    Γöé
  8070. Γöé                              Γöé       Γöédriver                        Γöé
  8071. Γöé                              Γöé       Γöéset by DD_OPEN                Γöé
  8072. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8073. ΓöéDRVNAME                       ΓöéSTRING Γöé16-character driver name      Γöé
  8074. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8075. ΓöéMODE                          ΓöéNUM    ΓöéOptional                      Γöé
  8076. Γöé                              Γöé       Γöé0 = Asynchronous mode         Γöé
  8077. Γöé                              Γöé       Γöé(default)                     Γöé
  8078. Γöé                              Γöé       Γöé1 = Synchronous mode          Γöé
  8079. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8080. ΓöéUNITHANDLE                    ΓöéNUM    ΓöéObtained from device table    Γöé
  8081. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8082. ΓöéLABEL                         ΓöéSTRING ΓöéName for the data block       Γöé
  8083. Γöé                              Γöé       Γöécontaining                    Γöé
  8084. Γöé                              Γöé       Γöéstatus and error information  Γöé
  8085. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8086. ΓöéLOCK_UNLOCK                   ΓöéNUM    Γöé1 (lock media),  0 (unlock    Γöé
  8087. Γöé                              Γöé       Γöémedia)                        Γöé
  8088. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  8089.  
  8090.  
  8091. ΓòÉΓòÉΓòÉ 12.4.1.11.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  8092.  
  8093.  
  8094. None. 
  8095.  
  8096.  
  8097. ΓòÉΓòÉΓòÉ 12.4.1.11.3. Logged Data ΓòÉΓòÉΓòÉ
  8098.  
  8099.  
  8100. Status and error information 
  8101.  
  8102.  
  8103. ΓòÉΓòÉΓòÉ 12.4.1.12. START_STOP_UNIT ΓòÉΓòÉΓòÉ
  8104.  
  8105. This function enables (Starts) or disables (stops) the media access operations 
  8106. on the logical unit. 
  8107.  
  8108.  
  8109. ΓòÉΓòÉΓòÉ 12.4.1.12.1. Input Parameter Keywords ΓòÉΓòÉΓòÉ
  8110.  
  8111. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  8112. ΓöéKeyword                       ΓöéType   ΓöéDescription                   Γöé
  8113. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8114. ΓöéDRIVEHANDLE                   ΓöéNUM    ΓöéHandle for the DASD device    Γöé
  8115. Γöé                              Γöé       Γöédriver                        Γöé
  8116. Γöé                              Γöé       Γöéset by DD_OPEN                Γöé
  8117. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8118. ΓöéDRVNAME                       ΓöéSTRING Γöé16-character driver name      Γöé
  8119. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8120. ΓöéMODE                          ΓöéNUM    ΓöéOptional                      Γöé
  8121. Γöé                              Γöé       Γöé0 = Asynchronous mode         Γöé
  8122. Γöé                              Γöé       Γöé(default)                     Γöé
  8123. Γöé                              Γöé       Γöé1 = Synchronous mode          Γöé
  8124. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8125. ΓöéUNITHANDLE                    ΓöéNUM    ΓöéObtained from device table    Γöé
  8126. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8127. ΓöéLABEL                         ΓöéSTRING ΓöéName for the data block       Γöé
  8128. Γöé                              Γöé       Γöécontaining                    Γöé
  8129. Γöé                              Γöé       Γöéstatus and error information  Γöé
  8130. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8131. ΓöéSTATUS_RETURN_IMMED           ΓöéNUM    ΓöéStatus to be returned         Γöé
  8132. Γöé                              Γöé       Γöé0 = after the operation is    Γöé
  8133. Γöé                              Γöé       Γöécomplete                      Γöé
  8134. Γöé                              Γöé       Γöé1 = as soon as the command    Γöé
  8135. Γöé                              Γöé       Γöédescriptor block is validated Γöé
  8136. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8137. ΓöéSTART_STOP                    ΓöéNUM    ΓöéStart/Stop media access       Γöé
  8138. Γöé                              Γöé       Γöé0 = stops the logical unit    Γöé
  8139. Γöé                              Γöé       Γöé(cannot access media)         Γöé
  8140. Γöé                              Γöé       Γöé1 = makes the logical unit    Γöé
  8141. Γöé                              Γöé       Γöéready for use                 Γöé
  8142. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8143. ΓöéLOAD_EJECT                    ΓöéNUM    ΓöéLoads/Ejects the media        Γöé
  8144. Γöé                              Γöé       Γöé0 = no action is taken        Γöé
  8145. Γöé                              Γöé       Γöé1= medium is unloaded if      Γöé
  8146. Γöé                              Γöé       ΓöéSTART_STOP is zero (STOP)     Γöé
  8147. Γöé                              Γöé       Γöémedium is loaded if START_STOPΓöé
  8148. Γöé                              Γöé       Γöéis one (START)                Γöé
  8149. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  8150.  
  8151.  
  8152. ΓòÉΓòÉΓòÉ 12.4.1.12.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  8153.  
  8154.  
  8155. None. 
  8156.  
  8157.  
  8158. ΓòÉΓòÉΓòÉ 12.4.1.12.3. Logged Data ΓòÉΓòÉΓòÉ
  8159.  
  8160.  
  8161. Status and error information 
  8162.  
  8163.  
  8164. ΓòÉΓòÉΓòÉ 12.4.1.13. SYNC_CACHE ΓòÉΓòÉΓòÉ
  8165.  
  8166. This function ensures that the logical blocks in the cache memory (within the 
  8167. specified range) have their most recent data value recorded on the physical 
  8168. medium. 
  8169.  
  8170.  
  8171. ΓòÉΓòÉΓòÉ 12.4.1.13.1. Input Parameter Keywords ΓòÉΓòÉΓòÉ
  8172.  
  8173. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  8174. ΓöéKeyword                       ΓöéType   ΓöéDescription                   Γöé
  8175. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8176. ΓöéDRIVEHANDLE                   ΓöéNUM    ΓöéHandle for the DASD device    Γöé
  8177. Γöé                              Γöé       Γöédriver                        Γöé
  8178. Γöé                              Γöé       Γöéset by DD_OPEN                Γöé
  8179. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8180. ΓöéDRVNAME                       ΓöéSTRING Γöé16-character driver name      Γöé
  8181. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8182. ΓöéMODE                          ΓöéNUM    ΓöéOptional                      Γöé
  8183. Γöé                              Γöé       Γöé0 = Asynchronous mode         Γöé
  8184. Γöé                              Γöé       Γöé(default)                     Γöé
  8185. Γöé                              Γöé       Γöé1 = Synchronous mode          Γöé
  8186. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8187. ΓöéUNITHANDLE                    ΓöéNUM    ΓöéObtained from device table    Γöé
  8188. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8189. ΓöéLABEL                         ΓöéSTRING ΓöéName for the data block       Γöé
  8190. Γöé                              Γöé       Γöécontaining                    Γöé
  8191. Γöé                              Γöé       Γöéstatus and error information  Γöé
  8192. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8193. ΓöéLAST_LOGICAL_BLOCK_ADDR       ΓöéNUM    ΓöéAddress of the last logical   Γöé
  8194. Γöé                              Γöé       Γöéblock                         Γöé
  8195. Γöé                              Γöé       Γöéset by READCAPACITY           Γöé
  8196. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8197. ΓöéLOGICAL_BLOCK_SIZE            ΓöéNUM    ΓöéSize of the logical block     Γöé
  8198. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8199. ΓöéNUM_BLOCKS                    ΓöéNUM    ΓöéNo of blocks to read          Γöé
  8200. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8201. ΓöéLOGICAL_BLOCK_ADDR            ΓöéNUM    Γöé32-bit starting logical block Γöé
  8202. Γöé                              Γöé       Γöéaddress                       Γöé
  8203. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8204. ΓöéADDR_MODE                     ΓöéNUM    ΓöéAddressing mode               Γöé
  8205. Γöé                              Γöé       Γöé0 = specified address is the  Γöé
  8206. Γöé                              Γöé       Γöéfirst logical block           Γöé
  8207. Γöé                              Γöé       Γöé1 = specified address is a    Γöé
  8208. Γöé                              Γöé       Γöétwo's complement displacement Γöé
  8209. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8210. ΓöéSTATUS_RETURN_IMMED           ΓöéNUM    ΓöéStatus to be returned         Γöé
  8211. Γöé                              Γöé       Γöé0 = after the operation is    Γöé
  8212. Γöé                              Γöé       Γöécomplete                      Γöé
  8213. Γöé                              Γöé       Γöé1 = as soon as the command    Γöé
  8214. Γöé                              Γöé       Γöédescriptor block is validated Γöé
  8215. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  8216.  
  8217.  
  8218. ΓòÉΓòÉΓòÉ 12.4.1.13.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  8219.  
  8220.  
  8221. None. 
  8222.  
  8223.  
  8224. ΓòÉΓòÉΓòÉ 12.4.1.13.3. Logged Data ΓòÉΓòÉΓòÉ
  8225.  
  8226.  
  8227. Status and error information 
  8228. Data read from the specified blocks 
  8229.  
  8230.  
  8231. ΓòÉΓòÉΓòÉ 12.4.1.14. WRITE6 ΓòÉΓòÉΓòÉ
  8232.  
  8233. This function writes data to the medium.  Cache control bits are not provided. 
  8234.  
  8235.  
  8236. ΓòÉΓòÉΓòÉ 12.4.1.14.1. Input Parameter Keywords ΓòÉΓòÉΓòÉ
  8237.  
  8238. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  8239. ΓöéKeyword                       ΓöéType   ΓöéDescription                   Γöé
  8240. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8241. ΓöéDRIVEHANDLE                   ΓöéNUM    ΓöéHandle for the DASD device    Γöé
  8242. Γöé                              Γöé       Γöédriver                        Γöé
  8243. Γöé                              Γöé       Γöéset by DD_OPEN                Γöé
  8244. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8245. ΓöéDRVNAME                       ΓöéSTRING Γöé16-character driver name      Γöé
  8246. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8247. ΓöéMODE                          ΓöéNUM    ΓöéOptional                      Γöé
  8248. Γöé                              Γöé       Γöé0 = Asynchronous mode         Γöé
  8249. Γöé                              Γöé       Γöé(default)                     Γöé
  8250. Γöé                              Γöé       Γöé1 = Synchronous mode          Γöé
  8251. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8252. ΓöéUNITHANDLE                    ΓöéNUM    ΓöéObtained from device table    Γöé
  8253. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8254. ΓöéLABEL                         ΓöéSTRING ΓöéName for the data block       Γöé
  8255. Γöé                              Γöé       Γöécontaining                    Γöé
  8256. Γöé                              Γöé       Γöéstatus and error information  Γöé
  8257. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8258. ΓöéSCATGAT                       ΓöéSTRING ΓöéName of the buffer to write   Γöé
  8259. Γöé                              Γöé       Γöédata from                     Γöé
  8260. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8261. ΓöéLOGICAL_BLOCK_SIZE            ΓöéNUM    ΓöéSize of the logical block     Γöé
  8262. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8263. ΓöéNUM_BLOCKS                    ΓöéNUM    ΓöéNo of blocks to read          Γöé
  8264. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8265. ΓöéLOGICAL_BLOCK_ADDR            ΓöéNUM    Γöé21-bit starting logical block Γöé
  8266. Γöé                              Γöé       Γöéaddress                       Γöé
  8267. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  8268.  
  8269.  
  8270. ΓòÉΓòÉΓòÉ 12.4.1.14.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  8271.  
  8272.  
  8273. None. 
  8274.  
  8275.  
  8276. ΓòÉΓòÉΓòÉ 12.4.1.14.3. Logged Data ΓòÉΓòÉΓòÉ
  8277.  
  8278.  
  8279. Status and error information 
  8280. Data written to the specified blocks 
  8281.  
  8282.  
  8283. ΓòÉΓòÉΓòÉ 12.4.1.15. WRITE10 ΓòÉΓòÉΓòÉ
  8284.  
  8285. This function writes data to the medium. Cache control bits can be set. 
  8286.  
  8287.  
  8288. ΓòÉΓòÉΓòÉ 12.4.1.15.1. Input Parameter Keywords ΓòÉΓòÉΓòÉ
  8289.  
  8290. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  8291. ΓöéKeyword                       ΓöéType   ΓöéDescription                   Γöé
  8292. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8293. ΓöéDRIVEHANDLE                   ΓöéNUM    ΓöéHandle for the DASD device    Γöé
  8294. Γöé                              Γöé       Γöédriver                        Γöé
  8295. Γöé                              Γöé       Γöéset by DD_OPEN                Γöé
  8296. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8297. ΓöéDRVNAME                       ΓöéSTRING Γöé16-character driver name      Γöé
  8298. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8299. ΓöéMODE                          ΓöéNUM    ΓöéOptional                      Γöé
  8300. Γöé                              Γöé       Γöé0 = Asynchronous mode         Γöé
  8301. Γöé                              Γöé       Γöé(default)                     Γöé
  8302. Γöé                              Γöé       Γöé1 = Synchronous mode          Γöé
  8303. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8304. ΓöéUNITHANDLE                    ΓöéNUM    ΓöéObtained from device table    Γöé
  8305. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8306. ΓöéLABEL                         ΓöéSTRING ΓöéName for the data block       Γöé
  8307. Γöé                              Γöé       Γöécontaining                    Γöé
  8308. Γöé                              Γöé       Γöéstatus and error information  Γöé
  8309. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8310. ΓöéSCATGAT                       ΓöéSTRING ΓöéName of the buffer to write   Γöé
  8311. Γöé                              Γöé       Γöédata from                     Γöé
  8312. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8313. ΓöéLOGICAL_BLOCK_SIZE            ΓöéNUM    ΓöéSize of the logical block     Γöé
  8314. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8315. ΓöéNUM_BLOCKS                    ΓöéNUM    ΓöéNo of blocks to read          Γöé
  8316. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8317. ΓöéLOGICAL_BLOCK_ADDR            ΓöéNUM    Γöé32-bit starting logical block Γöé
  8318. Γöé                              Γöé       Γöéaddress                       Γöé
  8319. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8320. ΓöéADDR_MODE                     ΓöéNUM    ΓöéAddressing mode               Γöé
  8321. Γöé                              Γöé       Γöé0 = specified address is the  Γöé
  8322. Γöé                              Γöé       Γöéfirst logical block           Γöé
  8323. Γöé                              Γöé       Γöé1 = specified address is a    Γöé
  8324. Γöé                              Γöé       Γöétwo's complement displacement Γöé
  8325. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8326. ΓöéFORCE_MEDIA_ACCESS            ΓöéNUM    Γöé1 (Force access from media), 0Γöé
  8327. Γöé                              Γöé       Γöé(can access from cache)       Γöé
  8328. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8329. ΓöéCACHE_IF_POSSIBLE             ΓöéNUM    Γöé1 (Cache if possible), 0 (NeedΓöé
  8330. Γöé                              Γöé       Γöénot cache it)                 Γöé
  8331. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  8332.  
  8333.  
  8334. ΓòÉΓòÉΓòÉ 12.4.1.15.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  8335.  
  8336.  
  8337. None. 
  8338.  
  8339.  
  8340. ΓòÉΓòÉΓòÉ 12.4.1.15.3. Logged Data ΓòÉΓòÉΓòÉ
  8341.  
  8342.  
  8343. Status and error information 
  8344. Data written to the specified blocks 
  8345.  
  8346.  
  8347. ΓòÉΓòÉΓòÉ 12.4.1.16. WRITE_AND_VERIFY ΓòÉΓòÉΓòÉ
  8348.  
  8349. This function writes the data to the medium and verifies if data is correctly 
  8350. written. 
  8351.  
  8352.  
  8353. ΓòÉΓòÉΓòÉ 12.4.1.16.1. Input Parameter Keywords ΓòÉΓòÉΓòÉ
  8354.  
  8355. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  8356. ΓöéKeyword                       ΓöéType   ΓöéDescription                   Γöé
  8357. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8358. ΓöéDRIVEHANDLE                   ΓöéNUM    ΓöéHandle for the DASD device    Γöé
  8359. Γöé                              Γöé       Γöédriver                        Γöé
  8360. Γöé                              Γöé       Γöéset by DD_OPEN                Γöé
  8361. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8362. ΓöéDRVNAME                       ΓöéSTRING Γöé16-character driver name      Γöé
  8363. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8364. ΓöéMODE                          ΓöéNUM    ΓöéOptional                      Γöé
  8365. Γöé                              Γöé       Γöé0 = Asynchronous mode         Γöé
  8366. Γöé                              Γöé       Γöé(default)                     Γöé
  8367. Γöé                              Γöé       Γöé1 = Synchronous mode          Γöé
  8368. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8369. ΓöéUNITHANDLE                    ΓöéNUM    ΓöéObtained from device table    Γöé
  8370. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8371. ΓöéLABEL                         ΓöéSTRING ΓöéName for the data block       Γöé
  8372. Γöé                              Γöé       Γöécontaining                    Γöé
  8373. Γöé                              Γöé       Γöéstatus and error information  Γöé
  8374. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8375. ΓöéSCATGAT                       ΓöéSTRING ΓöéName of the buffer to write   Γöé
  8376. Γöé                              Γöé       Γöédata from                     Γöé
  8377. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8378. ΓöéLOGICAL_BLOCK_SIZE            ΓöéNUM    ΓöéSize of the logical block     Γöé
  8379. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8380. ΓöéNUM_BLOCKS                    ΓöéNUM    ΓöéNo of blocks to read          Γöé
  8381. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8382. ΓöéLOGICAL_BLOCK_ADDR            ΓöéNUM    Γöé32-bit starting logical block Γöé
  8383. Γöé                              Γöé       Γöéaddress                       Γöé
  8384. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8385. ΓöéADDR_MODE                     ΓöéNUM    ΓöéAddressing mode               Γöé
  8386. Γöé                              Γöé       Γöé0 = specified address is the  Γöé
  8387. Γöé                              Γöé       Γöéfirst logical block           Γöé
  8388. Γöé                              Γöé       Γöé1 = specified address is a    Γöé
  8389. Γöé                              Γöé       Γöétwo's complement displacement Γöé
  8390. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8391. ΓöéBYTE_CHECK                    ΓöéNUM    ΓöéVerify data                   Γöé
  8392. Γöé                              Γöé       Γöé0 = no data comparison        Γöé
  8393. Γöé                              Γöé       Γöé1 = byte-by-byte compare      Γöé
  8394. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8395. ΓöéCACHE_IF_POSSIBLE             ΓöéNUM    Γöé1 (Cache if possible), 0 (NeedΓöé
  8396. Γöé                              Γöé       Γöénot cache it)                 Γöé
  8397. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  8398.  
  8399.  
  8400. ΓòÉΓòÉΓòÉ 12.4.1.16.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  8401.  
  8402.  
  8403. None. 
  8404.  
  8405.  
  8406. ΓòÉΓòÉΓòÉ 12.4.1.16.3. Logged Data ΓòÉΓòÉΓòÉ
  8407.  
  8408.  
  8409. Status and error information 
  8410. Data written to the specified blocks 
  8411.  
  8412.  
  8413. ΓòÉΓòÉΓòÉ 12.4.1.17. WRITE_SAME ΓòÉΓòÉΓòÉ
  8414.  
  8415. This function writes the single block of data to the medium multiple times. 
  8416.  
  8417.  
  8418. ΓòÉΓòÉΓòÉ 12.4.1.17.1. Input Parameter Keywords ΓòÉΓòÉΓòÉ
  8419.  
  8420. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  8421. ΓöéKeyword                       ΓöéType   ΓöéDescription                   Γöé
  8422. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8423. ΓöéDRIVEHANDLE                   ΓöéNUM    ΓöéHandle for the DASD device    Γöé
  8424. Γöé                              Γöé       Γöédriver                        Γöé
  8425. Γöé                              Γöé       Γöéset by DD_OPEN                Γöé
  8426. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8427. ΓöéDRVNAME                       ΓöéSTRING Γöé16-character driver name      Γöé
  8428. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8429. ΓöéMODE                          ΓöéNUM    ΓöéOptional                      Γöé
  8430. Γöé                              Γöé       Γöé0 = Asynchronous mode         Γöé
  8431. Γöé                              Γöé       Γöé(default)                     Γöé
  8432. Γöé                              Γöé       Γöé1 = Synchronous mode          Γöé
  8433. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8434. ΓöéUNITHANDLE                    ΓöéNUM    ΓöéObtained from device table    Γöé
  8435. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8436. ΓöéLABEL                         ΓöéSTRING ΓöéName for the data block       Γöé
  8437. Γöé                              Γöé       Γöécontaining                    Γöé
  8438. Γöé                              Γöé       Γöéstatus and error information  Γöé
  8439. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8440. ΓöéSCATGAT                       ΓöéSTRING ΓöéName of the buffer to write   Γöé
  8441. Γöé                              Γöé       Γöédata from                     Γöé
  8442. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8443. ΓöéLAST_LOGICAL_BLOCK_ADDR       ΓöéNUM    ΓöéAddress of the last logical   Γöé
  8444. Γöé                              Γöé       Γöéblock                         Γöé
  8445. Γöé                              Γöé       Γöéset by READCAPACITY           Γöé
  8446. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8447. ΓöéLOGICAL_BLOCK_SIZE            ΓöéNUM    ΓöéSize of the logical block     Γöé
  8448. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8449. ΓöéNUM_BLOCKS                    ΓöéNUM    ΓöéNo of blocks to read          Γöé
  8450. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8451. ΓöéLOGICAL_BLOCK_ADDR            ΓöéNUM    Γöé32-bit starting logical block Γöé
  8452. Γöé                              Γöé       Γöéaddress                       Γöé
  8453. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8454. ΓöéADDR_MODE                     ΓöéNUM    ΓöéAddressing mode               Γöé
  8455. Γöé                              Γöé       Γöé0 = specified address is the  Γöé
  8456. Γöé                              Γöé       Γöéfirst logical block           Γöé
  8457. Γöé                              Γöé       Γöé1 = specified address is a    Γöé
  8458. Γöé                              Γöé       Γöétwo's complement displacement Γöé
  8459. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8460. ΓöéLOGICAL_BLOCK_DATA            ΓöéNUM    ΓöéLogical block data            Γöé
  8461. Γöé                              Γöé       Γöé1 = replaces the first four   Γöé
  8462. Γöé                              Γöé       Γöébytes of the data to be       Γöé
  8463. Γöé                              Γöé       Γöéwritten to the current logicalΓöé
  8464. Γöé                              Γöé       Γöéblock with the logical block  Γöé
  8465. Γöé                              Γöé       Γöéaddress of the block currentlyΓöé
  8466. Γöé                              Γöé       Γöébeing written.                Γöé
  8467. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8468. ΓöéPHYSICAL_BLOCK_DATA           ΓöéNUM    ΓöéPhysical block data           Γöé
  8469. Γöé                              Γöé       Γöé1 = replaces the first eight  Γöé
  8470. Γöé                              Γöé       Γöébytes of the data to be       Γöé
  8471. Γöé                              Γöé       Γöéwritten to the current        Γöé
  8472. Γöé                              Γöé       Γöéphysical sector with the      Γöé
  8473. Γöé                              Γöé       Γöéphysical address of the sectorΓöé
  8474. Γöé                              Γöé       Γöécurrently being written using Γöé
  8475. Γöé                              Γöé       Γöéthe physical sector format.   Γöé
  8476. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  8477.  
  8478.  
  8479. ΓòÉΓòÉΓòÉ 12.4.1.17.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  8480.  
  8481.  
  8482. None. 
  8483.  
  8484.  
  8485. ΓòÉΓòÉΓòÉ 12.4.1.17.3. Logged Data ΓòÉΓòÉΓòÉ
  8486.  
  8487.  
  8488. Status and error information 
  8489. Data written to the specified blocks 
  8490.  
  8491.  
  8492. ΓòÉΓòÉΓòÉ 12.4.1.18. READ_LONG ΓòÉΓòÉΓòÉ
  8493.  
  8494. This function reads the most recent data from the addressed logical block 
  8495. (reads only one block). The data passed is vendor-specific, but includes the 
  8496. data bytes and the ECC bytes recorded on the medium. 
  8497.  
  8498.  
  8499. ΓòÉΓòÉΓòÉ 12.4.1.18.1. Input Parameter Keywords ΓòÉΓòÉΓòÉ
  8500.  
  8501. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  8502. ΓöéKeyword                       ΓöéType   ΓöéDescription                   Γöé
  8503. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8504. ΓöéDRIVEHANDLE                   ΓöéNUM    ΓöéHandle for the DASD device    Γöé
  8505. Γöé                              Γöé       Γöédriver                        Γöé
  8506. Γöé                              Γöé       Γöéset by DD_OPEN                Γöé
  8507. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8508. ΓöéDRVNAME                       ΓöéSTRING Γöé16-character driver name      Γöé
  8509. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8510. ΓöéMODE                          ΓöéNUM    ΓöéOptional                      Γöé
  8511. Γöé                              Γöé       Γöé0 = Asynchronous mode         Γöé
  8512. Γöé                              Γöé       Γöé(default)                     Γöé
  8513. Γöé                              Γöé       Γöé1 = Synchronous mode          Γöé
  8514. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8515. ΓöéUNITHANDLE                    ΓöéNUM    ΓöéObtained from device table    Γöé
  8516. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8517. ΓöéLABEL                         ΓöéSTRING ΓöéName for the data block       Γöé
  8518. Γöé                              Γöé       Γöécontaining                    Γöé
  8519. Γöé                              Γöé       Γöéstatus and error information  Γöé
  8520. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8521. ΓöéSCATGAT                       ΓöéSTRING ΓöéName for the read             Γöé
  8522. Γöé                              Γöé       Γöébuffer(optional)              Γöé
  8523. Γöé                              Γöé       Γöéto be used in write operationsΓöé
  8524. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8525. ΓöéLOGICAL_BLOCK_SIZE            ΓöéNUM    ΓöéSize of the logical block     Γöé
  8526. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8527. ΓöéNUM_BYTES                     ΓöéNUM    ΓöéNo of bytes to read           Γöé
  8528. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8529. ΓöéLOGICAL_BLOCK_ADDR            ΓöéNUM    Γöé32-bit starting logical block Γöé
  8530. Γöé                              Γöé       Γöéaddress                       Γöé
  8531. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8532. ΓöéADDR_MODE                     ΓöéNUM    ΓöéAddressing mode               Γöé
  8533. Γöé                              Γöé       Γöé0 = specified address is the  Γöé
  8534. Γöé                              Γöé       Γöéfirst logical block           Γöé
  8535. Γöé                              Γöé       Γöé1 = specified address is a    Γöé
  8536. Γöé                              Γöé       Γöétwo's complement displacement Γöé
  8537. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8538. ΓöéECC_CORRECT                   ΓöéNUM    ΓöéECC correction                Γöé
  8539. Γöé                              Γöé       Γöé0 = read without making any   Γöé
  8540. Γöé                              Γöé       Γöécorrection                    Γöé
  8541. Γöé                              Γöé       Γöé1 = data to be corrected by   Γöé
  8542. Γöé                              Γöé       ΓöéECC before transferring       Γöé
  8543. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  8544.  
  8545.  
  8546. ΓòÉΓòÉΓòÉ 12.4.1.18.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  8547.  
  8548.  
  8549. None. 
  8550.  
  8551.  
  8552. ΓòÉΓòÉΓòÉ 12.4.1.18.3. Logged Data ΓòÉΓòÉΓòÉ
  8553.  
  8554.  
  8555. Status and error information 
  8556. Data read from the specified block 
  8557.  
  8558.  
  8559. ΓòÉΓòÉΓòÉ 12.4.1.19. WRITE_LONG ΓòÉΓòÉΓòÉ
  8560.  
  8561. This function writes data to the medium (writes only one block). The data 
  8562. passed is implementation-specific, but includes the data bytes and the ECC 
  8563. bytes recorded on the medium.  The READ LONG command is usually issued before 
  8564. issuing a WRITE LONG command. 
  8565.  
  8566.  
  8567. ΓòÉΓòÉΓòÉ 12.4.1.19.1. Input Parameter Keywords ΓòÉΓòÉΓòÉ
  8568.  
  8569. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  8570. ΓöéKeyword                       ΓöéType   ΓöéDescription                   Γöé
  8571. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8572. ΓöéDRIVEHANDLE                   ΓöéNUM    ΓöéHandle for the DASD device    Γöé
  8573. Γöé                              Γöé       Γöédriver                        Γöé
  8574. Γöé                              Γöé       Γöéset by DD_OPEN                Γöé
  8575. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8576. ΓöéDRVNAME                       ΓöéSTRING Γöé16-character driver name      Γöé
  8577. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8578. ΓöéMODE                          ΓöéNUM    ΓöéOptional                      Γöé
  8579. Γöé                              Γöé       Γöé0 = Asynchronous mode         Γöé
  8580. Γöé                              Γöé       Γöé(default)                     Γöé
  8581. Γöé                              Γöé       Γöé1 = Synchronous mode          Γöé
  8582. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8583. ΓöéUNITHANDLE                    ΓöéNUM    ΓöéObtained from device table    Γöé
  8584. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8585. ΓöéLABEL                         ΓöéSTRING ΓöéName for the data block       Γöé
  8586. Γöé                              Γöé       Γöécontaining                    Γöé
  8587. Γöé                              Γöé       Γöéstatus and error information  Γöé
  8588. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8589. ΓöéSCATGAT                       ΓöéSTRING ΓöéName of the buffer to write   Γöé
  8590. Γöé                              Γöé       Γöédata from                     Γöé
  8591. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8592. ΓöéLOGICAL_BLOCK_SIZE            ΓöéNUM    ΓöéSize of the logical block     Γöé
  8593. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8594. ΓöéNUM_BYTES                     ΓöéNUM    ΓöéNo of bytes to read           Γöé
  8595. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8596. ΓöéLOGICAL_BLOCK_ADDR            ΓöéNUM    Γöé32-bit starting logical block Γöé
  8597. Γöé                              Γöé       Γöéaddress                       Γöé
  8598. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8599. ΓöéADDR_MODE                     ΓöéNUM    ΓöéAddressing mode               Γöé
  8600. Γöé                              Γöé       Γöé0 = specified address is the  Γöé
  8601. Γöé                              Γöé       Γöéfirst logical block           Γöé
  8602. Γöé                              Γöé       Γöé1 = specified address is a    Γöé
  8603. Γöé                              Γöé       Γöétwo's complement displacement Γöé
  8604. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  8605.  
  8606.  
  8607. ΓòÉΓòÉΓòÉ 12.4.1.19.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  8608.  
  8609.  
  8610. None. 
  8611.  
  8612.  
  8613. ΓòÉΓòÉΓòÉ 12.4.1.19.3. Logged Data ΓòÉΓòÉΓòÉ
  8614.  
  8615.  
  8616. Status and error information 
  8617. Data written to the specified block 
  8618.  
  8619.  
  8620. ΓòÉΓòÉΓòÉ 12.4.1.20. SET_LIMITS ΓòÉΓòÉΓòÉ
  8621.  
  8622. This function defines the range within which subsequent linked commands can 
  8623. operate. 
  8624.  
  8625.  
  8626. ΓòÉΓòÉΓòÉ 12.4.1.20.1. Input Parameter Keywords ΓòÉΓòÉΓòÉ
  8627.  
  8628. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  8629. ΓöéKeyword                       ΓöéType   ΓöéDescription                   Γöé
  8630. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8631. ΓöéDRIVEHANDLE                   ΓöéNUM    ΓöéHandle for the DASD device    Γöé
  8632. Γöé                              Γöé       Γöédriver                        Γöé
  8633. Γöé                              Γöé       Γöéset by DD_OPEN                Γöé
  8634. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8635. ΓöéDRVNAME                       ΓöéSTRING Γöé16-character driver name      Γöé
  8636. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8637. ΓöéMODE                          ΓöéNUM    ΓöéOptional                      Γöé
  8638. Γöé                              Γöé       Γöé0 = Asynchronous mode         Γöé
  8639. Γöé                              Γöé       Γöé(default)                     Γöé
  8640. Γöé                              Γöé       Γöé1 = Synchronous mode          Γöé
  8641. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8642. ΓöéUNITHANDLE                    ΓöéNUM    ΓöéObtained from device table    Γöé
  8643. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8644. ΓöéLABEL                         ΓöéSTRING ΓöéName for the data block       Γöé
  8645. Γöé                              Γöé       Γöécontaining status and error   Γöé
  8646. Γöé                              Γöé       Γöéinformation                   Γöé
  8647. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8648. ΓöéLAST_LOGICAL_BLOCK_ADDR       ΓöéNUM    ΓöéAddress of the last logical   Γöé
  8649. Γöé                              Γöé       Γöéblock                         Γöé
  8650. Γöé                              Γöé       Γöéset by READCAPACITY           Γöé
  8651. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8652. ΓöéLOGICAL_BLOCK_SIZE            ΓöéNUM    ΓöéSize of the logical block     Γöé
  8653. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8654. ΓöéNUM_BLOCKS                    ΓöéNUM    ΓöéNo of blocks to read          Γöé
  8655. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8656. ΓöéLOGICAL_BLOCK_ADDR            ΓöéNUM    Γöé32-bit starting logical block Γöé
  8657. Γöé                              Γöé       Γöéaddress                       Γöé
  8658. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8659. ΓöéWRITE_INHIBIT                 ΓöéNUM    ΓöéWrite inhibit                 Γöé
  8660. Γöé                              Γöé       Γöé1 = write operations within   Γöé
  8661. Γöé                              Γöé       Γöéthe range will be inhibited.  Γöé
  8662. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8663. ΓöéREAD_INHIBIT                  ΓöéNUM    ΓöéRead inhibit                  Γöé
  8664. Γöé                              Γöé       Γöé1 = read operations within theΓöé
  8665. Γöé                              Γöé       Γöérange will be inhibited.      Γöé
  8666. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  8667.  
  8668.  
  8669. ΓòÉΓòÉΓòÉ 12.4.1.20.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  8670.  
  8671.  
  8672. None. 
  8673.  
  8674.  
  8675. ΓòÉΓòÉΓòÉ 12.4.1.20.3. Logged Data ΓòÉΓòÉΓòÉ
  8676.  
  8677.  
  8678. Status and error information 
  8679.  
  8680.  
  8681. ΓòÉΓòÉΓòÉ 12.4.1.21. VERIFY ΓòÉΓòÉΓòÉ
  8682.  
  8683. This function verifies the data written on the medium. 
  8684.  
  8685.  
  8686. ΓòÉΓòÉΓòÉ 12.4.1.21.1. Input Parameter Keywords ΓòÉΓòÉΓòÉ
  8687.  
  8688. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  8689. ΓöéKeyword                       ΓöéType   ΓöéDescription                   Γöé
  8690. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8691. ΓöéDRIVEHANDLE                   ΓöéNUM    ΓöéHandle for the DASD device    Γöé
  8692. Γöé                              Γöé       Γöédriver                        Γöé
  8693. Γöé                              Γöé       Γöéset by DD_OPEN                Γöé
  8694. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8695. ΓöéDRVNAME                       ΓöéSTRING Γöé16-character driver name      Γöé
  8696. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8697. ΓöéMODE                          ΓöéNUM    ΓöéOptional                      Γöé
  8698. Γöé                              Γöé       Γöé0 = Asynchronous mode         Γöé
  8699. Γöé                              Γöé       Γöé(default)                     Γöé
  8700. Γöé                              Γöé       Γöé1 = Synchronous mode          Γöé
  8701. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8702. ΓöéUNITHANDLE                    ΓöéNUM    ΓöéObtained from device table    Γöé
  8703. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8704. ΓöéLABEL                         ΓöéSTRING ΓöéName for the data block       Γöé
  8705. Γöé                              Γöé       Γöécontaining                    Γöé
  8706. Γöé                              Γöé       Γöéstatus and error information  Γöé
  8707. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8708. ΓöéLOGICAL_BLOCK_SIZE            ΓöéNUM    ΓöéSize of the logical block     Γöé
  8709. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8710. ΓöéNUM_BLOCKS                    ΓöéNUM    ΓöéNo of blocks to read          Γöé
  8711. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8712. ΓöéLOGICAL_BLOCK_ADDR            ΓöéNUM    Γöé32-bit starting logical block Γöé
  8713. Γöé                              Γöé       Γöéaddress                       Γöé
  8714. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8715. ΓöéADDR_MODE                     ΓöéNUM    ΓöéAddressing mode               Γöé
  8716. Γöé                              Γöé       Γöé0 = specified address is the  Γöé
  8717. Γöé                              Γöé       Γöéfirst logical block           Γöé
  8718. Γöé                              Γöé       Γöé1 = specified address is a    Γöé
  8719. Γöé                              Γöé       Γöétwo's complement displacement Γöé
  8720. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8721. ΓöéBYTE_CHECK                    ΓöéNUM    ΓöéVerify data                   Γöé
  8722. Γöé                              Γöé       Γöé0 = no data comparison        Γöé
  8723. Γöé                              Γöé       Γöé1 = byte-by-byte compare      Γöé
  8724. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8725. ΓöéCACHE_IF_POSSIBLE             ΓöéNUM    Γöé1 (Cache if possible), 0 (NeedΓöé
  8726. Γöé                              Γöé       Γöénot cache it)                 Γöé
  8727. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  8728.  
  8729.  
  8730. ΓòÉΓòÉΓòÉ 12.4.1.21.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  8731.  
  8732.  
  8733. None. 
  8734.  
  8735.  
  8736. ΓòÉΓòÉΓòÉ 12.4.1.21.3. Logged Data ΓòÉΓòÉΓòÉ
  8737.  
  8738.  
  8739. Status and error information 
  8740. Data from the specified blocks 
  8741.  
  8742.  
  8743. ΓòÉΓòÉΓòÉ 12.4.1.22. LOCK_UNLOCK_CACHE ΓòÉΓòÉΓòÉ
  8744.  
  8745. This function requests the target device to allow or disallow logical blocks 
  8746. within the specified range to be removed from the cache memory. 
  8747.  
  8748.  
  8749. ΓòÉΓòÉΓòÉ 12.4.1.22.1. Input Parameter Keywords ΓòÉΓòÉΓòÉ
  8750.  
  8751. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  8752. ΓöéKeyword                       ΓöéType   ΓöéDescription                   Γöé
  8753. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8754. ΓöéDRIVEHANDLE                   ΓöéNUM    ΓöéHandle for the DASD device    Γöé
  8755. Γöé                              Γöé       Γöédriver                        Γöé
  8756. Γöé                              Γöé       Γöéset by DD_OPEN                Γöé
  8757. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8758. ΓöéDRVNAME                       ΓöéSTRING Γöé16-character driver name      Γöé
  8759. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8760. ΓöéMODE                          ΓöéNUM    ΓöéOptional                      Γöé
  8761. Γöé                              Γöé       Γöé0 = Asynchronous mode         Γöé
  8762. Γöé                              Γöé       Γöé(default)                     Γöé
  8763. Γöé                              Γöé       Γöé1 = Synchronous mode          Γöé
  8764. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8765. ΓöéUNITHANDLE                    ΓöéNUM    ΓöéObtained from device table    Γöé
  8766. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8767. ΓöéLABEL                         ΓöéSTRING ΓöéName for the data block       Γöé
  8768. Γöé                              Γöé       Γöécontaining                    Γöé
  8769. Γöé                              Γöé       Γöéstatus and error information  Γöé
  8770. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8771. ΓöéLOGICAL_BLOCK_SIZE            ΓöéNUM    ΓöéSize of the logical block     Γöé
  8772. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8773. ΓöéNUM_BLOCKS                    ΓöéNUM    ΓöéNo of blocks to read          Γöé
  8774. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8775. ΓöéLOGICAL_BLOCK_ADDR            ΓöéNUM    Γöé32-bit starting logical block Γöé
  8776. Γöé                              Γöé       Γöéaddress                       Γöé
  8777. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8778. ΓöéADDR_MODE                     ΓöéNUM    ΓöéAddressing mode               Γöé
  8779. Γöé                              Γöé       Γöé0 = specified address is the  Γöé
  8780. Γöé                              Γöé       Γöéfirst logical block           Γöé
  8781. Γöé                              Γöé       Γöé1 = specified address is a    Γöé
  8782. Γöé                              Γöé       Γöétwo's complement displacement Γöé
  8783. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8784. ΓöéLOCK_CACHE                    ΓöéNUM    Γöé1 (lock cache),  0 (unlock    Γöé
  8785. Γöé                              Γöé       Γöécache)                        Γöé
  8786. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  8787.  
  8788.  
  8789. ΓòÉΓòÉΓòÉ 12.4.1.22.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  8790.  
  8791.  
  8792. None. 
  8793.  
  8794.  
  8795. ΓòÉΓòÉΓòÉ 12.4.1.22.3. Logged Data ΓòÉΓòÉΓòÉ
  8796.  
  8797.  
  8798. Status and error information 
  8799.  
  8800.  
  8801. ΓòÉΓòÉΓòÉ 12.4.1.23. INQUIRY ΓòÉΓòÉΓòÉ
  8802.  
  8803. This function returns information regarding parameters of the target and its 
  8804. attached peripheral device(s). 
  8805.  
  8806.  
  8807. ΓòÉΓòÉΓòÉ 12.4.1.23.1. Input Parameter Keywords ΓòÉΓòÉΓòÉ
  8808.  
  8809. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  8810. ΓöéKeyword                       ΓöéType   ΓöéDescription                   Γöé
  8811. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8812. ΓöéDRIVEHANDLE                   ΓöéNUM    ΓöéHandle for the DASD device    Γöé
  8813. Γöé                              Γöé       Γöédriver                        Γöé
  8814. Γöé                              Γöé       Γöéset by DD_OPEN                Γöé
  8815. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8816. ΓöéDRVNAME                       ΓöéSTRING Γöé16-character driver name      Γöé
  8817. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8818. ΓöéMODE                          ΓöéNUM    ΓöéOptional                      Γöé
  8819. Γöé                              Γöé       Γöé0 = Asynchronous mode         Γöé
  8820. Γöé                              Γöé       Γöé(default)                     Γöé
  8821. Γöé                              Γöé       Γöé1 = Synchronous mode          Γöé
  8822. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8823. ΓöéUNITHANDLE                    ΓöéNUM    ΓöéObtained from device table    Γöé
  8824. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8825. ΓöéLABEL                         ΓöéSTRING ΓöéName for the data block       Γöé
  8826. Γöé                              Γöé       Γöécontaining                    Γöé
  8827. Γöé                              Γöé       Γöéstatus and error information  Γöé
  8828. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8829. ΓöéNUM_BYTES                     ΓöéNUM    Γöélength of returned data in    Γöé
  8830. Γöé                              Γöé       Γöébytes                         Γöé
  8831. Γöé                              Γöé       Γöéshould not exceed 255         Γöé
  8832. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8833. ΓöéENABLE_VITAL_PRODUCT_DATA     ΓöéNUM    ΓöéVital product data            Γöé
  8834. Γöé                              Γöé       Γöé0 = returns standard inquiry  Γöé
  8835. Γöé                              Γöé       Γöédata                          Γöé
  8836. Γöé                              Γöé       Γöé1 = returns the optional vitalΓöé
  8837. Γöé                              Γöé       Γöéproduct data specified by the Γöé
  8838. Γöé                              Γöé       Γöépage code field (not          Γöé
  8839. Γöé                              Γöé       Γöéimplemented)                  Γöé
  8840. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8841. ΓöéCODE_PAGE                     ΓöéNUM    ΓöéData page codes(not           Γöé
  8842. Γöé                              Γöé       Γöéimplemented)                  Γöé
  8843. Γöé                              Γöé       Γöé82h   ASCII implemented       Γöé
  8844. Γöé                              Γöé       Γöéoperating definition page     Γöé
  8845. Γöé                              Γöé       Γöé01h-7Fh  ASCII information    Γöé
  8846. Γöé                              Γöé       Γöépage                          Γöé
  8847. Γöé                              Γöé       Γöé81h      Implemented operatingΓöé
  8848. Γöé                              Γöé       Γöédefinitions page              Γöé
  8849. Γöé                              Γöé       Γöé80h      Unit serial number   Γöé
  8850. Γöé                              Γöé       Γöépage                          Γöé
  8851. Γöé                              Γöé       Γöé83h-BFh  Reserved             Γöé
  8852. Γöé                              Γöé       ΓöéC0h-FFh  Vendor-specific      Γöé
  8853. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  8854.  
  8855.  
  8856. ΓòÉΓòÉΓòÉ 12.4.1.23.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  8857.  
  8858.  
  8859. None. 
  8860.  
  8861.  
  8862. ΓòÉΓòÉΓòÉ 12.4.1.23.3. Logged Data ΓòÉΓòÉΓòÉ
  8863.  
  8864.  
  8865. Status and error information 
  8866. Standard inquiry data contains 36 bytes followed by a variable number of 
  8867. vendor-specific parameters.  Bytes 56 - 95 are reserved for future 
  8868. standardization.  The data contains info such as peripheral type, version, 
  8869. capabilities, and so on. 
  8870.  
  8871.  
  8872. ΓòÉΓòÉΓòÉ 12.4.1.24. TEST_UNIT_READY ΓòÉΓòÉΓòÉ
  8873.  
  8874. This function checks if the logical unit is ready. 
  8875.  
  8876.  
  8877. ΓòÉΓòÉΓòÉ 12.4.1.24.1. Input Parameter Keywords ΓòÉΓòÉΓòÉ
  8878.  
  8879. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  8880. ΓöéKeyword                       ΓöéType   ΓöéDescription                   Γöé
  8881. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8882. ΓöéDRIVEHANDLE                   ΓöéNUM    ΓöéHandle for the DASD device    Γöé
  8883. Γöé                              Γöé       Γöédriver                        Γöé
  8884. Γöé                              Γöé       Γöéset by DD_OPEN                Γöé
  8885. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8886. ΓöéDRVNAME                       ΓöéSTRING Γöé16-character driver name      Γöé
  8887. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8888. ΓöéMODE                          ΓöéNUM    ΓöéOptional                      Γöé
  8889. Γöé                              Γöé       Γöé0 = Asynchronous mode         Γöé
  8890. Γöé                              Γöé       Γöé(default)                     Γöé
  8891. Γöé                              Γöé       Γöé1 = Synchronous mode          Γöé
  8892. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8893. ΓöéUNITHANDLE                    ΓöéNUM    ΓöéObtained from device table    Γöé
  8894. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8895. ΓöéLABEL                         ΓöéSTRING ΓöéName for the data block       Γöé
  8896. Γöé                              Γöé       Γöécontaining                    Γöé
  8897. Γöé                              Γöé       Γöéstatus and error information  Γöé
  8898. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  8899.  
  8900.  
  8901. ΓòÉΓòÉΓòÉ 12.4.1.24.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  8902.  
  8903.  
  8904. None. 
  8905.  
  8906.  
  8907. ΓòÉΓòÉΓòÉ 12.4.1.24.3. Logged Data ΓòÉΓòÉΓòÉ
  8908.  
  8909.  
  8910. Status and error information 
  8911.  
  8912.  
  8913. ΓòÉΓòÉΓòÉ 12.4.1.25. SEND_DIAGNOSTIC ΓòÉΓòÉΓòÉ
  8914.  
  8915. This function requests the target to perform diagnostic operations on itself. 
  8916.  
  8917.  
  8918. ΓòÉΓòÉΓòÉ 12.4.1.25.1. Input Parameter Keywords ΓòÉΓòÉΓòÉ
  8919.  
  8920. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  8921. ΓöéKeyword                       ΓöéType   ΓöéDescription                   Γöé
  8922. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8923. ΓöéDRIVEHANDLE                   ΓöéNUM    ΓöéHandle for the DASD device    Γöé
  8924. Γöé                              Γöé       Γöédriver                        Γöé
  8925. Γöé                              Γöé       Γöéset by DD_OPEN                Γöé
  8926. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8927. ΓöéDRVNAME                       ΓöéSTRING Γöé16-character driver name      Γöé
  8928. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8929. ΓöéMODE                          ΓöéNUM    ΓöéOptional                      Γöé
  8930. Γöé                              Γöé       Γöé0 = Asynchronous mode         Γöé
  8931. Γöé                              Γöé       Γöé(default)                     Γöé
  8932. Γöé                              Γöé       Γöé1 = Synchronous mode          Γöé
  8933. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8934. ΓöéUNITHANDLE                    ΓöéNUM    ΓöéObtained from device table    Γöé
  8935. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8936. ΓöéLABEL                         ΓöéSTRING ΓöéName for the data block       Γöé
  8937. Γöé                              Γöé       Γöécontaining                    Γöé
  8938. Γöé                              Γöé       Γöéstatus and error information  Γöé
  8939. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8940. ΓöéNUM_BYTES                     ΓöéNUM    ΓöéParameter list length in bytesΓöé
  8941. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8942. ΓöéUNIT_OFF_LINE                 ΓöéNUM    ΓöéUnit access permissions(not   Γöé
  8943. Γöé                              Γöé       Γöéimplemented)                  Γöé
  8944. Γöé                              Γöé       Γöé0 =  prohibits any diagnostic Γöé
  8945. Γöé                              Γöé       Γöéoperations that can be        Γöé
  8946. Γöé                              Γöé       Γöédetected by subsequent I/O    Γöé
  8947. Γöé                              Γöé       Γöéprocesses.                    Γöé
  8948. Γöé                              Γöé       Γöé1 =  grants permission to the Γöé
  8949. Γöé                              Γöé       Γöétarget to perform diagnostic  Γöé
  8950. Γöé                              Γöé       Γöéoperations that can affect theΓöé
  8951. Γöé                              Γöé       Γöéuser accessible medium on the Γöé
  8952. Γöé                              Γöé       Γöélogical unit, for example,    Γöé
  8953. Γöé                              Γöé       Γöéwrite operations to the user  Γöé
  8954. Γöé                              Γöé       Γöéaccessible medium, or         Γöé
  8955. Γöé                              Γöé       Γöérepositioning of the medium onΓöé
  8956. Γöé                              Γöé       Γöésequential access devices.    Γöé
  8957. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8958. ΓöéDEVICE_OFF_LINE               ΓöéNUM    ΓöéDevice access permissions(not Γöé
  8959. Γöé                              Γöé       Γöéimplemented)                  Γöé
  8960. Γöé                              Γöé       Γöé0 =  prohibits diagnostic     Γöé
  8961. Γöé                              Γöé       Γöéoperations that can be        Γöé
  8962. Γöé                              Γöé       Γöédetected by subsequent I/O    Γöé
  8963. Γöé                              Γöé       Γöéprocesses.                    Γöé
  8964. Γöé                              Γöé       Γöé1 =  grants permission to the Γöé
  8965. Γöé                              Γöé       Γöétarget to perform diagnostic  Γöé
  8966. Γöé                              Γöé       Γöéoperations that can affect allΓöé
  8967. Γöé                              Γöé       Γöéthe logical units on a target,Γöé
  8968. Γöé                              Γöé       Γöéfor example, alteration of    Γöé
  8969. Γöé                              Γöé       Γöéreservations, log parameters, Γöé
  8970. Γöé                              Γöé       Γöéor sense data.                Γöé
  8971. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8972. ΓöéSELF_TEST                     ΓöéNUM    ΓöéDefault test-test             Γöé
  8973. Γöé                              Γöé       Γöé0 =  requests the target      Γöé
  8974. Γöé                              Γöé       Γöéperform the diagnostic        Γöé
  8975. Γöé                              Γöé       Γöéoperation specified in the    Γöé
  8976. Γöé                              Γöé       Γöéparameter list.               Γöé
  8977. Γöé                              Γöé       Γöé1 =  directs the target to    Γöé
  8978. Γöé                              Γöé       Γöécomplete its default          Γöé
  8979. Γöé                              Γöé       Γöéself-test.                    Γöé
  8980. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  8981. ΓöéPAGE_FORMAT                   ΓöéNUM    ΓöéPage structure                Γöé
  8982. Γöé                              Γöé       Γöé0 =  parameters are as        Γöé
  8983. Γöé                              Γöé       Γöéspecified in SCSI-1 (all      Γöé
  8984. Γöé                              Γöé       Γöéparameters are                Γöé
  8985. Γöé                              Γöé       Γöévendor-specific).             Γöé
  8986. Γöé                              Γöé       Γöé1 =  parameters conform to theΓöé
  8987. Γöé                              Γöé       Γöépage structure as specified inΓöé
  8988. Γöé                              Γöé       Γöéthe International Standard.   Γöé
  8989. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  8990.  
  8991.  
  8992. ΓòÉΓòÉΓòÉ 12.4.1.25.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  8993.  
  8994.  
  8995. None. 
  8996.  
  8997.  
  8998. ΓòÉΓòÉΓòÉ 12.4.1.25.3. Logged Data ΓòÉΓòÉΓòÉ
  8999.  
  9000.  
  9001. Status and error information 
  9002.  
  9003.  
  9004. ΓòÉΓòÉΓòÉ 12.4.1.26. RELEASE ΓòÉΓòÉΓòÉ
  9005.  
  9006. This function releases the previously reserved logical unit. 
  9007.  
  9008.  
  9009. ΓòÉΓòÉΓòÉ 12.4.1.26.1. Input Parameter Keywords ΓòÉΓòÉΓòÉ
  9010.  
  9011. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  9012. ΓöéKeyword                       ΓöéType   ΓöéDescription                   Γöé
  9013. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  9014. ΓöéDRIVEHANDLE                   ΓöéNUM    ΓöéHandle for the DASD device    Γöé
  9015. Γöé                              Γöé       Γöédriver                        Γöé
  9016. Γöé                              Γöé       Γöéset by DD_OPEN                Γöé
  9017. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  9018. ΓöéDRVNAME                       ΓöéSTRING Γöé16-character driver name      Γöé
  9019. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  9020. ΓöéMODE                          ΓöéNUM    ΓöéOptional                      Γöé
  9021. Γöé                              Γöé       Γöé0 = Asynchronous mode         Γöé
  9022. Γöé                              Γöé       Γöé(default)                     Γöé
  9023. Γöé                              Γöé       Γöé1 = Synchronous mode          Γöé
  9024. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  9025. ΓöéUNITHANDLE                    ΓöéNUM    ΓöéObtained from device table    Γöé
  9026. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  9027. ΓöéLABEL                         ΓöéSTRING ΓöéName for the data block       Γöé
  9028. Γöé                              Γöé       Γöécontaining                    Γöé
  9029. Γöé                              Γöé       Γöéstatus and error information  Γöé
  9030. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  9031. ΓöéEXTENT_RELEASE                ΓöéNUM    ΓöéRelease extents (not          Γöé
  9032. Γöé                              Γöé       Γöéimplemented)                  Γöé
  9033. Γöé                              Γöé       Γöé0 = terminates all            Γöé
  9034. Γöé                              Γöé       Γöénon-third-party logical unit  Γöé
  9035. Γöé                              Γöé       Γöéand extent reservations that  Γöé
  9036. Γöé                              Γöé       Γöéare active on the specified   Γöé
  9037. Γöé                              Γöé       Γöélogical unit. The reservation Γöé
  9038. Γöé                              Γöé       ΓöéID field is ignored.          Γöé
  9039. Γöé                              Γöé       Γöé1 = terminates any reservationΓöé
  9040. Γöé                              Γöé       Γöématching the reservation      Γöé
  9041. Γöé                              Γöé       Γöéidentification.  Other        Γöé
  9042. Γöé                              Γöé       Γöéreservations will remain in   Γöé
  9043. Γöé                              Γöé       Γöéeffect.                       Γöé
  9044. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  9045. ΓöéTHIRD_PARTY_DEVICE_ID         ΓöéNUM    ΓöéThird party device ID         Γöé
  9046. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  9047. ΓöéTHIRD_PARTY_RELEASE           ΓöéNUM    ΓöéThird party release           Γöé
  9048. Γöé                              Γöé       Γöé0 = Third Party release is notΓöé
  9049. Γöé                              Γöé       Γöérequested.                    Γöé
  9050. Γöé                              Γöé       Γöé1 = Releases the specified    Γöé
  9051. Γöé                              Γöé       Γöélogical unit or extents.      Γöé
  9052. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  9053. ΓöéRESERVATION_ID                ΓöéNUM    ΓöéReservation ID                Γöé
  9054. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  9055.  
  9056.  
  9057. ΓòÉΓòÉΓòÉ 12.4.1.26.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  9058.  
  9059.  
  9060. None. 
  9061.  
  9062.  
  9063. ΓòÉΓòÉΓòÉ 12.4.1.26.3. Logged Data ΓòÉΓòÉΓòÉ
  9064.  
  9065.  
  9066. Status and error information 
  9067.  
  9068.  
  9069. ΓòÉΓòÉΓòÉ 12.4.1.27. RESERVE ΓòÉΓòÉΓòÉ
  9070.  
  9071. This function reserves a logical unit. 
  9072.  
  9073.  
  9074. ΓòÉΓòÉΓòÉ 12.4.1.27.1. Input Parameter Keywords ΓòÉΓòÉΓòÉ
  9075.  
  9076. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  9077. ΓöéKeyword                       ΓöéType   ΓöéDescription                   Γöé
  9078. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  9079. ΓöéDRIVEHANDLE                   ΓöéNUM    ΓöéHandle for the DASD device    Γöé
  9080. Γöé                              Γöé       Γöédriver                        Γöé
  9081. Γöé                              Γöé       Γöéset by DD_OPEN                Γöé
  9082. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  9083. ΓöéDRVNAME                       ΓöéSTRING Γöé16-character driver name      Γöé
  9084. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  9085. ΓöéMODE                          ΓöéNUM    ΓöéOptional                      Γöé
  9086. Γöé                              Γöé       Γöé0 = Asynchronous mode         Γöé
  9087. Γöé                              Γöé       Γöé(default)                     Γöé
  9088. Γöé                              Γöé       Γöé1 = Synchronous mode          Γöé
  9089. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  9090. ΓöéUNITHANDLE                    ΓöéNUM    ΓöéObtained from device table    Γöé
  9091. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  9092. ΓöéLABEL                         ΓöéSTRING ΓöéName for the data block       Γöé
  9093. Γöé                              Γöé       Γöécontaining                    Γöé
  9094. Γöé                              Γöé       Γöéstatus and error information  Γöé
  9095. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  9096. ΓöéEXTENT_RESERVE                ΓöéNUM    ΓöéReserve extents (not          Γöé
  9097. Γöé                              Γöé       Γöéimplemented)                  Γöé
  9098. Γöé                              Γöé       Γöé0 = Reserves the entire       Γöé
  9099. Γöé                              Γöé       Γöélogical unit for exclusive useΓöé
  9100. Γöé                              Γöé       Γöé1 = Reserves the extents      Γöé
  9101. Γöé                              Γöé       Γöéspecified                     Γöé
  9102. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  9103. ΓöéTHIRD_PARTY_DEVICE_ID         ΓöéNUM    ΓöéThird party device ID         Γöé
  9104. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  9105. ΓöéTHIRD_PARTY_RESERVE           ΓöéNUM    ΓöéThird party reserve           Γöé
  9106. Γöé                              Γöé       Γöé0 = Third Party reservation isΓöé
  9107. Γöé                              Γöé       Γöénot requested.                Γöé
  9108. Γöé                              Γöé       Γöé1 = Reserves the specified    Γöé
  9109. Γöé                              Γöé       Γöélogical unit or extents.      Γöé
  9110. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  9111. ΓöéRESERVATION_ID                ΓöéNUM    ΓöéReservation ID                Γöé
  9112. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  9113.  
  9114.  
  9115. ΓòÉΓòÉΓòÉ 12.4.1.27.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  9116.  
  9117.  
  9118. None. 
  9119.  
  9120.  
  9121. ΓòÉΓòÉΓòÉ 12.4.1.27.3. Logged Data ΓòÉΓòÉΓòÉ
  9122.  
  9123.  
  9124. Status and error information 
  9125.  
  9126.  
  9127. ΓòÉΓòÉΓòÉ 12.4.1.28. DD_CDB12 ΓòÉΓòÉΓòÉ
  9128.  
  9129. This function sends a CDB for 12-byte commands. 
  9130.  
  9131.  
  9132. ΓòÉΓòÉΓòÉ 12.4.1.28.1. Input Parameter Keywords ΓòÉΓòÉΓòÉ
  9133.  
  9134. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  9135. ΓöéKeyword                       ΓöéType   ΓöéDescription                   Γöé
  9136. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  9137. ΓöéDRIVEHANDLE                   ΓöéNUM    ΓöéHandle for the DASD device    Γöé
  9138. Γöé                              Γöé       Γöédriver                        Γöé
  9139. Γöé                              Γöé       Γöéset by DD_OPEN                Γöé
  9140. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  9141. ΓöéDRVNAME                       ΓöéSTRING Γöé16-character driver name      Γöé
  9142. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  9143. ΓöéMODE                          ΓöéNUM    ΓöéOptional                      Γöé
  9144. Γöé                              Γöé       Γöé0 = Asynchronous mode         Γöé
  9145. Γöé                              Γöé       Γöé(default)                     Γöé
  9146. Γöé                              Γöé       Γöé1 = Synchronous mode          Γöé
  9147. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  9148. ΓöéUNITHANDLE                    ΓöéNUM    ΓöéObtained from device table    Γöé
  9149. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  9150. ΓöéLABEL                         ΓöéSTRING ΓöéName for the data block       Γöé
  9151. Γöé                              Γöé       Γöécontaining                    Γöé
  9152. Γöé                              Γöé       Γöéstatus and error information  Γöé
  9153. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  9154. ΓöéMEMSIZE                       ΓöéNUM    ΓöéTotal no of bytes in          Γöé
  9155. Γöé                              Γöé       ΓöéScatter/Gather list           Γöé
  9156. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  9157. ΓöéNBUFF                         ΓöéNUM    ΓöéNo of buffers in              Γöé
  9158. Γöé                              Γöé       ΓöéScatter/Gather list           Γöé
  9159. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  9160. ΓöéREQUESTCONTROL                ΓöéNUM    ΓöéRequest Control flags         Γöé
  9161. Γöé                              Γöé       Γöé0x01   Asynchronous post      Γöé
  9162. Γöé                              Γöé       Γöéenabled                       Γöé
  9163. Γöé                              Γöé       Γöé0x02   IORB Chain Link enabledΓöé
  9164. Γöé                              Γöé       Γöé0x04   CHS fmt addr in RBA    Γöé
  9165. Γöé                              Γöé       ΓöéField                         Γöé
  9166. Γöé                              Γöé       Γöé0x08   Obtain Status Block    Γöé
  9167. Γöé                              Γöé       ΓöéData                          Γöé
  9168. Γöé                              Γöé       Γöé0x10   Disable retries in ADD Γöé
  9169. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  9170. ΓöéTIMEOUT                       ΓöéNUM    ΓöéDevice driver timeout (secs)  Γöé
  9171. Γöé                              Γöé       Γöé0 = default set by the driver.Γöé
  9172. Γöé                              Γöé       Γöé-1 = infinite.                Γöé
  9173. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  9174. ΓöéCDB_BYTE0                     ΓöéNUM    ΓöéByte 0 of the CDB.            Γöé
  9175. Γöé                              Γöé       ΓöéOperation Code                Γöé
  9176. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  9177. ΓöéCDB_BYTE1                     ΓöéNUM    ΓöéByte 1 of the CDB.            Γöé
  9178. Γöé                              Γöé       Γöébits 0-4 = Command specific   Γöé
  9179. Γöé                              Γöé       Γöé     5-7 = LUN (ZERO)         Γöé
  9180. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  9181. ΓöéCDB_BYTE2                     ΓöéNUM    ΓöéByte 2 of the CDB.            Γöé
  9182. Γöé                              Γöé       ΓöéMSB of the starting logical   Γöé
  9183. Γöé                              Γöé       Γöéblock address                 Γöé
  9184. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  9185. ΓöéCDB_BYTE3                     ΓöéNUM    ΓöéByte 3 of the CDB.            Γöé
  9186. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  9187. ΓöéCDB_BYTE4                     ΓöéNUM    ΓöéByte 4 of the CDB.            Γöé
  9188. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  9189. ΓöéCDB_BYTE5                     ΓöéNUM    ΓöéByte 5 of the CDB.            Γöé
  9190. Γöé                              Γöé       ΓöéLSB of the starting logical   Γöé
  9191. Γöé                              Γöé       Γöéblock address                 Γöé
  9192. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  9193. ΓöéCDB_BYTE6                     ΓöéNUM    ΓöéByte 6 of the CDB.            Γöé
  9194. Γöé                              Γöé       ΓöéMSB of Transfer/Parameter     Γöé
  9195. Γöé                              Γöé       Γöélist/Allocation length        Γöé
  9196. Γöé                              Γöé       Γöé(command specific)            Γöé
  9197. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  9198. ΓöéCDB_BYTE7                     ΓöéNUM    ΓöéByte 7 of the CDB.            Γöé
  9199. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  9200. ΓöéCDB_BYTE8                     ΓöéNUM    ΓöéByte 8 of the CDB.            Γöé
  9201. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  9202. ΓöéCDB_BYTE9                     ΓöéNUM    ΓöéByte 9 of the CDB.            Γöé
  9203. Γöé                              Γöé       ΓöéLSB of Transfer/Parameter     Γöé
  9204. Γöé                              Γöé       Γöélist/Allocation length        Γöé
  9205. Γöé                              Γöé       Γöé(command specific)            Γöé
  9206. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  9207. ΓöéCDB_BYTE10                    ΓöéNUM    ΓöéByte 10 of the CDB (Reserved).Γöé
  9208. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  9209. ΓöéCDB_BYTE11                    ΓöéNUM    ΓöéByte 11 of the CDB - Control  Γöé
  9210. Γöé                              Γöé       ΓöéField                         Γöé
  9211. Γöé                              Γöé       ΓöéBit 0 = Link bit              Γöé
  9212. Γöé                              Γöé       Γöé    1 = flag bit              Γöé
  9213. Γöé                              Γöé       Γöé2-5 = Reserved                Γöé
  9214. Γöé                              Γöé       Γöé6-7 = Vendor-specific         Γöé
  9215. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  9216.  
  9217.  
  9218. ΓòÉΓòÉΓòÉ 12.4.1.28.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  9219.  
  9220.  
  9221. None. 
  9222.  
  9223.  
  9224. ΓòÉΓòÉΓòÉ 12.4.1.28.3. Logged Data ΓòÉΓòÉΓòÉ
  9225.  
  9226.  
  9227. Status and error information 
  9228.  
  9229.  
  9230. ΓòÉΓòÉΓòÉ 12.4.1.29. DD_CDB10 ΓòÉΓòÉΓòÉ
  9231.  
  9232. This function sends a CDB for 10-byte commands. 
  9233.  
  9234.  
  9235. ΓòÉΓòÉΓòÉ 12.4.1.29.1. Input Parameter Keywords ΓòÉΓòÉΓòÉ
  9236.  
  9237. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  9238. ΓöéKeyword                       ΓöéType   ΓöéDescription                   Γöé
  9239. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  9240. ΓöéDRIVEHANDLE                   ΓöéNUM    ΓöéHandle for the DASD device    Γöé
  9241. Γöé                              Γöé       Γöédriver                        Γöé
  9242. Γöé                              Γöé       Γöéset by DD_OPEN                Γöé
  9243. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  9244. ΓöéDRVNAME                       ΓöéSTRING Γöé16-character driver name      Γöé
  9245. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  9246. ΓöéMODE                          ΓöéNUM    ΓöéOptional                      Γöé
  9247. Γöé                              Γöé       Γöé0 = Asynchronous mode         Γöé
  9248. Γöé                              Γöé       Γöé(default)                     Γöé
  9249. Γöé                              Γöé       Γöé1 = Synchronous mode          Γöé
  9250. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  9251. ΓöéUNITHANDLE                    ΓöéNUM    ΓöéObtained from device table    Γöé
  9252. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  9253. ΓöéLABEL                         ΓöéSTRING ΓöéName for the data block       Γöé
  9254. Γöé                              Γöé       Γöécontaining                    Γöé
  9255. Γöé                              Γöé       Γöéstatus and error information  Γöé
  9256. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  9257. ΓöéMEMSIZE                       ΓöéNUM    ΓöéTotal no of bytes in          Γöé
  9258. Γöé                              Γöé       ΓöéScatter/Gather list           Γöé
  9259. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  9260. ΓöéNBUFF                         ΓöéNUM    ΓöéNo of buffers in              Γöé
  9261. Γöé                              Γöé       ΓöéScatter/Gather list           Γöé
  9262. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  9263. ΓöéREQUESTCONTROL                ΓöéNUM    ΓöéRequest Control flags         Γöé
  9264. Γöé                              Γöé       Γöé0x01   Asynchronous post      Γöé
  9265. Γöé                              Γöé       Γöéenabled                       Γöé
  9266. Γöé                              Γöé       Γöé0x02   IORB Chain Link enabledΓöé
  9267. Γöé                              Γöé       Γöé0x04   CHS fmt addr in RBA    Γöé
  9268. Γöé                              Γöé       ΓöéField                         Γöé
  9269. Γöé                              Γöé       Γöé0x08   Obtain Status Block    Γöé
  9270. Γöé                              Γöé       ΓöéData                          Γöé
  9271. Γöé                              Γöé       Γöé0x10   Disable retries in ADD Γöé
  9272. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  9273. ΓöéTIMEOUT                       ΓöéNUM    ΓöéDevice driver timeout (secs)  Γöé
  9274. Γöé                              Γöé       Γöé0 = default set by the driver.Γöé
  9275. Γöé                              Γöé       Γöé-1 = infinite.                Γöé
  9276. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  9277. ΓöéCDB_BYTE0                     ΓöéNUM    ΓöéByte 0 of the CDB.            Γöé
  9278. Γöé                              Γöé       ΓöéOperation Code                Γöé
  9279. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  9280. ΓöéCDB_BYTE1                     ΓöéNUM    ΓöéByte 1 of the CDB.            Γöé
  9281. Γöé                              Γöé       Γöébits 0-4 = Command specific   Γöé
  9282. Γöé                              Γöé       Γöé     5-7 = LUN (ZERO)         Γöé
  9283. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  9284. ΓöéCDB_BYTE2                     ΓöéNUM    ΓöéByte 2 of the CDB.            Γöé
  9285. Γöé                              Γöé       ΓöéMSB of the starting logical   Γöé
  9286. Γöé                              Γöé       Γöéblock address                 Γöé
  9287. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  9288. ΓöéCDB_BYTE3                     ΓöéNUM    ΓöéByte 3 of the CDB.            Γöé
  9289. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  9290. ΓöéCDB_BYTE4                     ΓöéNUM    ΓöéByte 4 of the CDB.            Γöé
  9291. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  9292. ΓöéCDB_BYTE5                     ΓöéNUM    ΓöéByte 5 of the CDB.            Γöé
  9293. Γöé                              Γöé       ΓöéLSB of the starting logical   Γöé
  9294. Γöé                              Γöé       Γöéblock address                 Γöé
  9295. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  9296. ΓöéCDB_BYTE6                     ΓöéNUM    ΓöéByte 6 of the CDB (Reserved). Γöé
  9297. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  9298. ΓöéCDB_BYTE7                     ΓöéNUM    ΓöéByte 7 of the CDB.            Γöé
  9299. Γöé                              Γöé       ΓöéMSB of Transfer/Parameter     Γöé
  9300. Γöé                              Γöé       Γöélist/Allocation length        Γöé
  9301. Γöé                              Γöé       Γöé(command specific)            Γöé
  9302. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  9303. ΓöéCDB_BYTE8                     ΓöéNUM    ΓöéByte 8 of the CDB.            Γöé
  9304. Γöé                              Γöé       ΓöéLSB of Transfer/Parameter     Γöé
  9305. Γöé                              Γöé       Γöélist/Allocation length        Γöé
  9306. Γöé                              Γöé       Γöé(command specific)            Γöé
  9307. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  9308. ΓöéCDB_BYTE9                     ΓöéNUM    ΓöéByte 9 of the CDB - Control   Γöé
  9309. Γöé                              Γöé       ΓöéField                         Γöé
  9310. Γöé                              Γöé       ΓöéBit 0 = Link bit              Γöé
  9311. Γöé                              Γöé       Γöé    1 = flag bit              Γöé
  9312. Γöé                              Γöé       Γöé  2-5 = Reserved              Γöé
  9313. Γöé                              Γöé       Γöé  6-7 = Vendor-specific       Γöé
  9314. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  9315.  
  9316.  
  9317. ΓòÉΓòÉΓòÉ 12.4.1.29.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  9318.  
  9319.  
  9320. None. 
  9321.  
  9322.  
  9323. ΓòÉΓòÉΓòÉ 12.4.1.29.3. Logged Data ΓòÉΓòÉΓòÉ
  9324.  
  9325.  
  9326. Status and error information 
  9327.  
  9328.  
  9329. ΓòÉΓòÉΓòÉ 12.4.1.30. DD_CDB6 ΓòÉΓòÉΓòÉ
  9330.  
  9331. This function sends a CDB for 6-byte commands. 
  9332.  
  9333.  
  9334. ΓòÉΓòÉΓòÉ 12.4.1.30.1. Input Parameter Keywords ΓòÉΓòÉΓòÉ
  9335.  
  9336. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  9337. ΓöéKeyword                       ΓöéType   ΓöéDescription                   Γöé
  9338. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  9339. ΓöéDRIVEHANDLE                   ΓöéNUM    ΓöéHandle for the DASD device    Γöé
  9340. Γöé                              Γöé       Γöédriver                        Γöé
  9341. Γöé                              Γöé       Γöéset by DD_OPEN                Γöé
  9342. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  9343. ΓöéDRVNAME                       ΓöéSTRING Γöé16-character driver name      Γöé
  9344. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  9345. ΓöéMODE                          ΓöéNUM    ΓöéOptional                      Γöé
  9346. Γöé                              Γöé       Γöé0 = Asynchronous mode         Γöé
  9347. Γöé                              Γöé       Γöé(default)                     Γöé
  9348. Γöé                              Γöé       Γöé1 = Synchronous mode          Γöé
  9349. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  9350. ΓöéUNITHANDLE                    ΓöéNUM    ΓöéObtained from device table    Γöé
  9351. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  9352. ΓöéLABEL                         ΓöéSTRING ΓöéName for the data block       Γöé
  9353. Γöé                              Γöé       Γöécontaining                    Γöé
  9354. Γöé                              Γöé       Γöéstatus and error information  Γöé
  9355. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  9356. ΓöéMEMSIZE                       ΓöéNUM    ΓöéTotal no of bytes in          Γöé
  9357. Γöé                              Γöé       ΓöéScatter/Gather list           Γöé
  9358. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  9359. ΓöéNBUFF                         ΓöéNUM    ΓöéNo of buffers in              Γöé
  9360. Γöé                              Γöé       ΓöéScatter/Gather list           Γöé
  9361. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  9362. ΓöéREQUESTCONTROL                ΓöéNUM    ΓöéRequest Control flags         Γöé
  9363. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  9364. ΓöéTIMEOUT                       ΓöéNUM    ΓöéDevice driver timeout (secs)  Γöé
  9365. Γöé                              Γöé       Γöé 0 = default set by the       Γöé
  9366. Γöé                              Γöé       Γöédriver.                       Γöé
  9367. Γöé                              Γöé       Γöé-1 = infinite.                Γöé
  9368. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  9369. ΓöéCDB_BYTE0                     ΓöéNUM    ΓöéByte 0 of the CDB.            Γöé
  9370. Γöé                              Γöé       ΓöéOperation Code                Γöé
  9371. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  9372. ΓöéCDB_BYTE1                     ΓöéNUM    ΓöéByte 1 of the CDB.            Γöé
  9373. Γöé                              Γöé       Γöébits 0-4 = MSB of the startingΓöé
  9374. Γöé                              Γöé       Γöélogical block addr            Γöé
  9375. Γöé                              Γöé       Γöé     5-7 = LUN (ZERO)         Γöé
  9376. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  9377. ΓöéCDB_BYTE2                     ΓöéNUM    ΓöéByte 2 of the CDB.            Γöé
  9378. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  9379. ΓöéCDB_BYTE3                     ΓöéNUM    ΓöéByte 3 of the CDB.            Γöé
  9380. Γöé                              Γöé       ΓöéLSB of the starting logical   Γöé
  9381. Γöé                              Γöé       Γöéblock address                 Γöé
  9382. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  9383. ΓöéCDB_BYTE4                     ΓöéNUM    ΓöéByte 4 of the CDB             Γöé
  9384. Γöé                              Γöé       ΓöéTransfer/Parameter            Γöé
  9385. Γöé                              Γöé       Γöélist/Allocation length        Γöé
  9386. Γöé                              Γöé       Γöé(command specific)            Γöé
  9387. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  9388. ΓöéCDB_BYTE5                     ΓöéNUM    ΓöéByte 5 of the CDB - Control   Γöé
  9389. Γöé                              Γöé       ΓöéField                         Γöé
  9390. Γöé                              Γöé       ΓöéBit 0 = Link bit              Γöé
  9391. Γöé                              Γöé       Γöé    1 = flag bit              Γöé
  9392. Γöé                              Γöé       Γöé  2-5 = Reserved              Γöé
  9393. Γöé                              Γöé       Γöé  6-7 = Vendor-specific       Γöé
  9394. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  9395.  
  9396.  
  9397. ΓòÉΓòÉΓòÉ 12.4.1.30.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  9398.  
  9399.  
  9400. None. 
  9401.  
  9402.  
  9403. ΓòÉΓòÉΓòÉ 12.4.1.30.3. Logged Data ΓòÉΓòÉΓòÉ
  9404.  
  9405.  
  9406. Status and error information 
  9407.  
  9408.  
  9409. ΓòÉΓòÉΓòÉ 12.5. Description of Test Cases ΓòÉΓòÉΓòÉ
  9410.  
  9411. Each of the SCSI ADD test cases can be executed individually as previously 
  9412. described.  The corresponding test scripts are described below. You can create 
  9413. additional tests or combine tests into multi-threaded test cases after becoming 
  9414. familiar with the DDTT and the SCSI ADD grammar files. 
  9415.  
  9416. All test scripts close the channels opened to the SCSI adapter or device and 
  9417. verify successful status return from every exercised API.  All test scripts log 
  9418. information to a log file with the same file name with a file name extension 
  9419. .LOG.  When current status is queried (for example, for the timeout value and 
  9420. cache status), this data is written to the DDTT's output windows and to the log 
  9421. file.  Log files can be examined after the test case has completed. 
  9422.  
  9423.  SCSICOM.SCR         ASSIGN COMMON KEYWORDS - This is a common script which is 
  9424.                      imported  by almost all the SCSIADD scripts.  This script 
  9425.                      sets hardware-dependent keywords such as DRVNAME, 
  9426.                      UNITHANDLE. 
  9427.  
  9428.  DEVTABLE.SCR        GET DEVICE TABLE - Prints the currently loaded drivers, 
  9429.                      and prints  the device table for the device driver 
  9430.                      specified in the script SCSICOM.SCR 
  9431.  
  9432.  DRIVERS.SCR         GET DRIVERS - Prints the currently loaded drivers to the 
  9433.                      log file. 
  9434.  
  9435.  INQUIRY.SCR         INQUIRY - Returns information regarding parameters of the 
  9436.                      target and its attached peripheral device(s). 
  9437.  
  9438.  LCKCACH.SCR         LOCK CACHE - Requests the target device to disallow 
  9439.                      logical blocks within the specified range to be removed 
  9440.                      from the cache memory. 
  9441.  
  9442.  LCKMED.SCR          LOCK MEDIA - Disables the removal of the media in the 
  9443.                      logical unit. 
  9444.  
  9445.  PREFETCH.SCR        PRE-FETCH - Reads the specified logical blocks into the 
  9446.                      adapter's cache memory. 
  9447.  
  9448.  READLONG.SCR        READ LONG - Reads the most recent data from the addressed 
  9449.                      logical block (reads only one block).  The data passed is 
  9450.                      vendor-specific, but includes the data bytes and the ECC 
  9451.                      bytes recorded on the medium. 
  9452.  
  9453.  READ10.SCR          READ(10) - Reads the most recent data from the addressed 
  9454.                      logical blocks. Cache control bits can be set. 
  9455.  
  9456.  READ6.SCR           READ(6) - Reads the most recent data from the addressed 
  9457.                      logical blocks. Cache controlbits are not provided. 
  9458.  
  9459.  READCAP.SCR         READ CAPACITY - Reads information about the capacity of 
  9460.                      the logical unit. It returns the logical block address and 
  9461.                      the block length in bytes of the last logical block on the 
  9462.                      logical unit. 
  9463.  
  9464.  RELEASE.SCR         RELEASE - Releases the previously reserved logical unit. 
  9465.  
  9466.  RESERVE.SCR         RESERVE - Reserves a logical unit. 
  9467.  
  9468.  REZERO.SCR          REZERO UNIT - Sets the logical unit to a specific state. 
  9469.                      Details are vendor-specific. 
  9470.  
  9471.  SEEK6.SCR           SEEK(6) - Seeks to the specified logical block address. 
  9472.  
  9473.  SETLIMIT.SCR        SET LIMITS - Defines the range within which subsequent 
  9474.                      linked commands can operate. 
  9475.  
  9476.  SNDIAGNO.SCR        SEND DIAGNOSTIC - Requests the target to perform 
  9477.                      diagnostic operations on itself. 
  9478.  
  9479.  START.SCR           START UNIT - Enables the media access operations on the 
  9480.                      logical unit. 
  9481.  
  9482.  STOP.SCR            STOP UNIT - Disables the media access operations on the 
  9483.                      logical unit. 
  9484.  
  9485.  SYNCACHE.SCR        SYNCHRONIZE CACHE - Ensures that logical blocks in the 
  9486.                      cache memory, within the specified range, have their most 
  9487.                      recent data value recorded on the physical medium. 
  9488.  
  9489.  TSTREADY            TEST READY - Checks if the logical unit is ready. 
  9490.  
  9491.  UNLKCACH.SCR        UNLOCK CACHE - Requests the target device to allow logical 
  9492.                      blocks within the specified range to be removed from the 
  9493.                      cache memory. 
  9494.  
  9495.  UNLCKMED.SCR        UNLOCK MEDIA - Enables the removal of the media in the 
  9496.                      logical unit. 
  9497.  
  9498.  VERIFY.SCR          VERIFY - Verifies the data written on the medium. 
  9499.  
  9500.  WRITE10.SCR         WRITE(10) - Writes data to the medium. Cache control bits 
  9501.                      can be set. 
  9502.  
  9503.  WRITE6.SCR          WRITE(6) - Writes data to the medium.  Cache control bits 
  9504.                      are not provided. 
  9505.  
  9506.  WRTLONG.SCR         WRITE LONG - Writes data to the medium ( writes only one 
  9507.                      block).  The data passed is implementation-specific, but 
  9508.                      includes the data bytes and the ECC bytes recorded on the 
  9509.                      medium.  The READ LONG command is usually issued before 
  9510.                      issuing a WRITE LONG command. 
  9511.  
  9512.  WRTSAME.SCR         WRITE SAME - Writes the single block of data to the medium 
  9513.                      multiple times. 
  9514.  
  9515.  WRTVERFY.SCR        WRITE AND VERIFY - Writes the data to the medium and then 
  9516.                      verify the data is correctly written. 
  9517.  
  9518.  
  9519. ΓòÉΓòÉΓòÉ 13. Using Filter Device Drivers ΓòÉΓòÉΓòÉ
  9520.  
  9521. There are a number of scenarios in which it is useful to insert one or more 
  9522. filtering algorithms between a device manager and the adapter device driver 
  9523. that is driving the device interface.  This is accomplished under the adapter 
  9524. device driver model by installing one or more filter device drivers into the 
  9525. call-down path between the DM and the device-interfacing adapter device driver. 
  9526. Filter device drivers are also referred to as filter adapter device drivers, 
  9527. filter drivers, or simply filters. 
  9528.  
  9529. A sample scenario that utilizes a filter device driver to encrypt the data 
  9530. maintained on a DASD unit is depicted in the following figure: 
  9531.  
  9532.        Without Filter                   With Filter
  9533.  
  9534.  ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ        ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  9535.  Γöé     System DASD DM     Γöé        Γöé   System DASD DM        Γöé
  9536.  Γöé      (OS2DASD.DM)      Γöé        Γöé    (OS2DASD.DM)         Γöé
  9537.  ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ        ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  9538.                                               
  9539.             Γöé                                  Γöé
  9540.             Γöé                                  
  9541.             Γöé                      ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  9542.             Γöé                      Γöé Encryption Algorithm    Γöé
  9543.             Γöé                      Γöé  (A Filter Driver)      Γöé
  9544.             Γöé                      ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  9545.             Γöé                                  
  9546.             Γöé                                  Γöé
  9547.                                               
  9548.  ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ        ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  9549.  ΓöéST-506 Interface Driver Γöé        Γöé ST-506 Interface Driver Γöé
  9550.  Γöé    (IBM1S506.ADD)      Γöé        Γöé     (IBM1S506.ADD)      Γöé
  9551.  ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ        ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  9552.  
  9553. Filter algorithms are packaged as filter device driver drivers and, in general, 
  9554. they provide the same set of services as any other adapter device driver. Once 
  9555. initialized, filter device drivers receive IORBs from upstream drivers (for 
  9556. example, device managers), perform the filtering function on the data in the 
  9557. IORB, then pass the IORB to call down to the adapter device drivers that the 
  9558. filter device driver is controlling. 
  9559.  
  9560. One or more filter device drivers can be inserted into the call-down path for a 
  9561. selected device. 
  9562.  
  9563. One or more call-down paths can share the same filter device driver. For 
  9564. example, multiple call-down paths can share a filter device driver that is 
  9565. providing an encryption function. 
  9566.  
  9567. The remainder of this chapter contains detailed information on how filter 
  9568. device drivers can be constructed and, subsequently, inserted into the device 
  9569. support for a given I/O system. 
  9570.  
  9571.  
  9572. ΓòÉΓòÉΓòÉ 13.1. Strategies for Providing Filter Functions ΓòÉΓòÉΓòÉ
  9573.  
  9574. There are two strategies for inserting a filter device driver into the 
  9575. call-down path for a given unit's device support: 
  9576.  
  9577.    1. Edit the target unit's UNITINFO table, but do not allocate permanent 
  9578.       ownership of the unit. 
  9579.  
  9580.    2. Allocate the target unit, and present a new UNITINFO table to any 
  9581.       upstream driver that might issue I/O requests. 
  9582.  
  9583.  In most cases, the first strategy, in which the caller does not permanently 
  9584.  allocate the unit, is simpler than the second. The filter device driver simply 
  9585.  daisy-chains a filter indicator into the UNITINFO structure of the target 
  9586.  unit; then, I/O that otherwise would go directly to the target unit's adapter 
  9587.  device driver is redirected through the filter device driver. 
  9588.  
  9589.  The second strategy is required when the filter device driver needs to hide 
  9590.  units.  For example, a data-stripping feature can be implemented using a 
  9591.  filter device driver as follows. The data-stripping filter device driver must 
  9592.  allocate all target units to hide them from upstream device managers. Then the 
  9593.  data-stripping filter device driver constructs a new UNITINFO table to contain 
  9594.  the appropriate information for presenting a logical view of a single, logical 
  9595.  (stripped) drive. 
  9596.  
  9597.  
  9598. ΓòÉΓòÉΓòÉ 13.2. Installation and Initialization ΓòÉΓòÉΓòÉ
  9599.  
  9600. Filter device drivers are installed the same as adapter device drivers, using 
  9601. BASEDEV= statements in the CONFIG.SYS file of the workstation. In CONFIG.SYS, 
  9602. the filter device driver is loaded after any adapter device drivers it will 
  9603. control but before any device managers that the filter device driver will 
  9604. serve; this is ensured by use of the FLT file-name extension. 
  9605.  
  9606. When the filter device driver receives its initialization packet from the 
  9607. kernel, it must scan the workstation's configuration to determine which units 
  9608. it wants to control, just as a device manager must when it initializes.  A 
  9609. filter device driver uses the DevHlp_GetDOSVar to obtain a list of the entry 
  9610. points for all installed adapter device drivers, then it calls each ADD to 
  9611. obtain their device tables. The filter device driver must provide storage for 
  9612. these device tables. 
  9613.  
  9614. Once the device tables are obtained, each is scanned by the filter device 
  9615. driver for units of interest.  Having located the units of interest, the filter 
  9616. device driver must take one of the two actions previously listed, depending on 
  9617. whether the filter driver is using the permanent allocation method. 
  9618.  
  9619.  
  9620. ΓòÉΓòÉΓòÉ 13.3. Editing an Adapter Device Driver Device Table ΓòÉΓòÉΓòÉ
  9621.  
  9622. If the filter device driver does not need to hide the downstream units, it can 
  9623. initiate filtering operations by the following steps. 
  9624.  
  9625.    1. Change the value of the FilterADDHandle field in the target unit's 
  9626.       UNITINFO structure so that the field selects the filter device driver. 
  9627.  
  9628.       When no filter device drivers are installed, the FilterADDHandle value 
  9629.       will be 0.  So, when a device manager (or other upstream adapter device 
  9630.       driver) finds a 0 value in this field, the referenced adapter device 
  9631.       driver is directly managing the device interface. 
  9632.  
  9633.    2. Change the UnitHandle field of the target unit's UNITINFO structure to a 
  9634.       value assigned by the filter device driver. 
  9635.  
  9636.  Notice that the filter device driver is daisy-chaining itself into the 
  9637.  call-down path for a given unit.  As a result, the filter device driver must 
  9638.  save the existing values in FilterADDHandle (if nonzero) and UnitHandle for 
  9639.  the downstream driver.  After the filter device driver processes a service 
  9640.  request, it must pass the request to the downstream filter device driver or 
  9641.  device-interface adapter driver. 
  9642.  
  9643.  The following protocol must be adhered to when editing a UNITINFO structure of 
  9644.  another adapter device driver. 
  9645.  
  9646.  The filter device driver alters the information provided in the target 
  9647.  UNITINFO structure by using the (IOCC_UNIT_CONTROL) IOCM_CHANGE_UNITINFO 
  9648.  command.  To issue IOCM_CHANGE_UNITINFO, the filter device driver first must 
  9649.  allocate the unit, change the UNITINFO information, and then deallocate the 
  9650.  unit. 
  9651.  
  9652.  Changing the UNITINFO information does not affect the operation of the 
  9653.  downstream adapter device driver. For example, if a filter device driver 
  9654.  changes the UF_HW_SCATGAT bit, the downstream device driver's treatment of the 
  9655.  unit is not affected.  However, the downstream adapter device driver must 
  9656.  present the changed UNITINFO structure when its DEVICETABLE is requested.  It 
  9657.  is the responsibility of the filter device driver to convert the changed unit 
  9658.  definition it sets to the actual unit definition of the adapter device driver 
  9659.  owning the unit. 
  9660.  
  9661.  A filter device driver can modify a unit's flags without actually hooking the 
  9662.  unit.  For example a filter device driver could UF_set the A_DRIVE flag 
  9663.  without actually receiving requests by leaving the original UnitHandle and 
  9664.  FilterADDHandle fields intact. 
  9665.  
  9666.  
  9667. ΓòÉΓòÉΓòÉ 13.4. Allocating Permanent Ownership of a Unit ΓòÉΓòÉΓòÉ
  9668.  
  9669. Alternatively, a filter device driver can allocate permanent ownership of the 
  9670. target unit from the downstream driver and present a device table containing 
  9671. the new representation of the unit to any upstream drivers.  Since the filter 
  9672. device driver retains ownership of the downstream resource, it is not necessary 
  9673. to edit to the downstream driver's UNITINFO structures. 
  9674.  
  9675.  
  9676. ΓòÉΓòÉΓòÉ 13.5. IORBs and Filtering ΓòÉΓòÉΓòÉ
  9677.  
  9678. Once installed, a filter device driver can apply the following to the IORBs it 
  9679. is filtering: 
  9680.  
  9681.    o  Generally, the filter device driver will retain the original IORB and 
  9682.       create new IORBs to pass on to the downstream drivers. 
  9683.  
  9684.    o  However, a filter device driver can modify an IORB it receives and pass 
  9685.       on the same copy of the IORB data structure (as opposed to passing on a 
  9686.       local copy of the IORB).  If the adapter device driver does this, it must 
  9687.       alter the notification address and restore any input fields it had 
  9688.       modified prior to doing notification callouts back to the upstream 
  9689.       driver. 
  9690.  
  9691.  The filter device driver must not assume that the contents of the 
  9692.  pIORB->ADDWorkSpace field will be preserved by a downstream driver. 
  9693.  
  9694.  
  9695. ΓòÉΓòÉΓòÉ 14. Library and Services ΓòÉΓòÉΓòÉ
  9696.  
  9697. A complement of library services for common adapter device driver tasks is 
  9698. provided in the IBM Device Driver Source Kit for OS/2.  This adapter device 
  9699. driver library includes a set of functions that can be statically linked with 
  9700. an adapter device driver at build time. 
  9701.  
  9702. These library services are provided in both source and object form. This code 
  9703. is in the \addcalls and \devhelp subdirectories of the \src tree.  You can 
  9704. modify and extend this code to suit your needs. 
  9705.  
  9706. The DevHlp services are provided with FAR code and data-calling convention 
  9707. support.  Adapter Device Driver Calls services are generally provided with both 
  9708. FAR and NEAR calling-convention support. 
  9709.  
  9710. The library services include the following: 
  9711.  
  9712.    o  'C' interface to the DevHlp kernel services 
  9713.    o  Timer services 
  9714.    o  Scatter/gather buffer transfers 
  9715.    o  RBA <-> CHS computations 
  9716.    o  DMA setup and channel control, ISA bus machines 
  9717.    o  Command line parsing 
  9718.  
  9719.  See the headers of the individual functions for a detailed description of 
  9720.  function services and their calling conventions. 
  9721.  
  9722.  Command-Line Parsing 
  9723.  
  9724.  To facilitate parsing of command-line parameters and to help encourage 
  9725.  uniformity in command-line syntax, a parser/tokenizer is provided in the IBM 
  9726.  Device Driver Source Kit for OS/2. See Adapter Device Driver Command-Line 
  9727.  Parameters for a command-line syntax definition. 
  9728.  
  9729.  The output of the parser/tokenizer is a stream of tokens that represent the 
  9730.  contents of the command line.  The parser/tokenizer performs preliminary 
  9731.  syntactical checks on the command line and indicates the results of these 
  9732.  checks in return codes. 
  9733.  
  9734.  As with the other library services provided in the IBM Device Driver Source 
  9735.  Kit for OS/2, you can modify the parser and its included tables to add 
  9736.  adapter-unique flags and parameters. 
  9737.  
  9738.  
  9739. ΓòÉΓòÉΓòÉ 15. CD-ROM Device Manager Interface Specification ΓòÉΓòÉΓòÉ
  9740.  
  9741. This chapter contains a description of: 
  9742.  
  9743.    o  CD-ROM device management 
  9744.    o  SCSI and Non-SCSI adapter drivers 
  9745.    o  Command support 
  9746.  
  9747.  
  9748. ΓòÉΓòÉΓòÉ 15.1. Overview ΓòÉΓòÉΓòÉ
  9749.  
  9750. The following figure illustrates the layered CD-ROM Device Management structure 
  9751. in the OS/2 operating system. 
  9752.  
  9753.  ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  9754.  Γöé                 CD-ROM Device Manager                  Γöé
  9755.  Γöé                   (OS/2 CDROM.DMD)                     Γöé
  9756.  ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  9757.                      SCSI-2 Commands           
  9758.                   Γöé                             
  9759.                   Γöé                     ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  9760.                   Γöé                     Γöé SCSI-2 Emulator Γöé
  9761.                   Γöé                     Γöé Filter          Γöé
  9762.                                        ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  9763.            ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ       Vendor Unique
  9764.                                           SCSI-1 Commands
  9765.  ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ       ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  9766.  ΓöéNon-SCSI CD-ROM       Γöé       Γöé SCSI Bus              Γöé
  9767.  ΓöéAdapter Device Driver Γöé       Γöé Adapter Device Driver Γöé
  9768.  ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ       ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  9769.                                            
  9770.   Non-SCSI CD-ROM                 SCSI Adapter
  9771.   Adapter  Γöé                                Γöé
  9772.                                            
  9773.   CD-ROM Drive                    CD-ROM Drive
  9774.  
  9775.  
  9776. ΓòÉΓòÉΓòÉ 15.1.1. The CD-ROM Device Manager ΓòÉΓòÉΓòÉ
  9777.  
  9778. The OS/2 CD-ROM Device Manager (OS2CDROM.DMD) is a generic CD-ROM device driver 
  9779. for CD-ROM drives that comply with the ANSI SCSI-2 standard X3T9.2/86-109 
  9780. (SCSI-2 draft proposed American National Standard Revision 10g).  The device 
  9781. driver provides generic data and audio support for drives that support the 
  9782. command set specified in that standard. Vendor unique CD-ROM XA support and 
  9783. multi-session support is provided for selected drive models. 
  9784.  
  9785. The CD-ROM Device Manager provides a uniform interface between its clients and 
  9786. adapter device drivers.  Clients of the Device Manager include: 
  9787.  
  9788.    o  CD-ROM Installable File System (CDFS.IFS) 
  9789.    o  Multimedia Presentation Manager/2* subsystem 
  9790.    o  virtual CD-ROM device driver (VCDROM.SYS) 
  9791.    o  OS/2 applications 
  9792.  
  9793.  The CD-ROM File System communicates with the CD-ROM Device Manager using the 
  9794.  request packet interface defined in the OS/2 Physical Device Driver Reference 
  9795.  version 2.00 or later. 
  9796.  
  9797.  The Multimedia Presentation Manager/2 subsystem and OS/2 applications 
  9798.  communicate with the CD-ROM Device Manager using the Category 80 and 81 IOCtl 
  9799.  services defined in the OS/2 Physical Device Driver Reference. 
  9800.  
  9801.  DOS applications communicate with the CD-ROM Device Manager indirectly through 
  9802.  the virtual DOS CD-ROM device driver VCDROM.SYS.  VCDROM.SYS provides virtual 
  9803.  support and converts the DOS application request into a file system or Cat 
  9804.  80/81 IOCTL request which is routed to the CD-ROM Device Manager using system 
  9805.  device helper services. 
  9806.  
  9807.  The interface between the CD-ROM Device Manager and adapter device drivers 
  9808.  adheres to the adapter device driver interface defined in earlier chapters of 
  9809.  this reference. The CD-ROM Device Manager converts a request from its client 
  9810.  into a SCSI-2 command descriptor block and routes the SCSI-2 command to the 
  9811.  specified adapter device driver.  The SCSI-2 commands are sent using the IORB 
  9812.  adapter passthru command (command code = ADAPTER_PASSTHRU, command modifier = 
  9813.  EXECUTE_CDB). 
  9814.  
  9815.  The CD-ROM Device Manager driver (OS2CDROM.DMD) is an installable block device 
  9816.  driver and is loaded using a DEVICE= statement in CONFIG.SYS. The driver 
  9817.  replaces CDROM.SYS, the CD-ROM device driver shipped in the OS/2 2.1 product. 
  9818.  
  9819.  
  9820. ΓòÉΓòÉΓòÉ 15.1.2. SCSI-2 Emulation Filters ΓòÉΓòÉΓòÉ
  9821.  
  9822. SCSI CD-ROM target devices with vendor unique commands not supported in the 
  9823. SCSI-2 standard require a SCSI-2 emulation filter. The emulation filter maps 
  9824. SCSI-2 commands received from the CD-ROM Device Manager to the vendor unique 
  9825. commands supported by the target device. This support is required to enable 
  9826. audio support on CD-ROM drives that adhere to the SCSI-1 standard. The SCSI-1 
  9827. standard does not define a standard command set for audio control. 
  9828.  
  9829. A SCSI-2 emulation filter is required for each vendor unique CD-ROM drive. 
  9830. Typically, a CD-ROM manufacturer uses the same vendor unique command set for 
  9831. all it's CD-ROM drives, therefore, one filter driver is required for each 
  9832. manufacturer. 
  9833.  
  9834. The filter driver receives SCSI-2 commands from the CD-ROM Device Manager, 
  9835. converts the command to it's vendor unique equivalent, and routes the filtered 
  9836. command to the SCSI adapter device driver. If data returned with the command 
  9837. needs to be filtered, the filter driver regains control when the request is 
  9838. complete, converts the outgoing data to it's SCSI-2 equivalent, and then 
  9839. returns to the CD-ROM Device Manager.  The filtering process is transparent to 
  9840. the Device Manager and to the adapter device drivers. 
  9841.  
  9842. Filter drivers adhere to the adapter device driver interface previously 
  9843. defined.  (See DASD, SCSI, and CD-ROM Device Manager Interface Specification.) 
  9844. The filter driver is loaded using the BASEDEV= statement in CONFIG.SYS. 
  9845.  
  9846.  
  9847. ΓòÉΓòÉΓòÉ 15.1.3. SCSI Adapter Device Drivers ΓòÉΓòÉΓòÉ
  9848.  
  9849. A SCSI adapter device driver complies with the adapter device driver interface 
  9850. defined in DASD, SCSI, and CD-ROM Device Manager Interface Specification. It 
  9851. must support the ADAPTER_PASSTHRU command for EXECUTE_CDB requests. SCSI-2 
  9852. commands are sent from the CD-ROM Device Manager using this command.  SCSI 
  9853. sense data must be returned when requested. 
  9854.  
  9855.  
  9856. ΓòÉΓòÉΓòÉ 15.1.4. Non-SCSI CD-ROM Adapter Device Drivers ΓòÉΓòÉΓòÉ
  9857.  
  9858. Several leading CD-ROM drive manufacturers use a proprietary, non-SCSI, host 
  9859. adapter interface for the CD-ROM drive.  To support a non-SCSI CD-ROM drive, an 
  9860. adapter device driver is required that emulates a SCSI-2 target device.  This 
  9861. enables the CD-ROM Device Manager to issue a common command set to it's target 
  9862. devices, whether or not the firmware on the target device directly supports the 
  9863. SCSI-2 command set. 
  9864.  
  9865. A non-SCSI CD-ROM adapter device driver adheres to the adapter device driver 
  9866. interface defined in DASD, SCSI, and CD-ROM Device Manager Interface 
  9867. Specification. It must support the ADAPTER_PASSTHRU command for EXECUTE_CDB 
  9868. requests, The SCSI-2 commands are sent from the CD-ROM Device Manager using 
  9869. this command. 
  9870.  
  9871. The SCSI-2 commands must be emulated by the adapter device driver.  This 
  9872. includes sense data which is returned back to the CD-ROM Device Manager. 
  9873.  
  9874.  
  9875. ΓòÉΓòÉΓòÉ 15.2. Non-SCSI CD-ROM Adapter Device Driver Specification ΓòÉΓòÉΓòÉ
  9876.  
  9877. A non-SCSI CD-ROM adapter device driver adheres to the adapter device driver 
  9878. interface defined in DASD, SCSI, and CD-ROM Device Manager Interface 
  9879. Specification. Most commands are received as SCSI-2 command descriptor blocks 
  9880. sent using the IORB ADAPTER_PASSTHRU command. The SCSI command descriptor 
  9881. blocks comply with the ANSI SCSI-2 standard X3T9.2/86-109 (SCSI-2 draft 
  9882. proposed American National Standard Revision 10g). 
  9883.  
  9884. The following sections describe the mandatory IORB and SCSI-2 commands that a 
  9885. non-SCSI CD-ROM adapter device driver must support.  The command structures for 
  9886. the IORB command blocks are defined in IORB Control Blocks. 
  9887.  
  9888. The C Language definitions for the IORB control blocks are included in I/O 
  9889. Request Block - C Definitions. 
  9890.  
  9891.  
  9892. ΓòÉΓòÉΓòÉ 15.2.1. Mandatory IORB Command Support ΓòÉΓòÉΓòÉ
  9893.  
  9894. The Adapter Device Driver must support the IORB command set defined in the 
  9895. table below. 
  9896.  
  9897. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  9898. ΓöéCommand Code                  ΓöéCommand Modifier              Γöé
  9899. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  9900. ΓöéIOCC_CONFIGURATION            ΓöéIOCM_GET_DEVICE_TABLE         Γöé
  9901. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  9902. ΓöéIOCC_UNIT_CONTROL             ΓöéIOCM_ALLOCATE_UNIT            Γöé
  9903. Γöé                              ΓöéIOCM_DEALLOCATE_UNIT          Γöé
  9904. Γöé                              ΓöéIOCM_CHANGE_UNITINFO          Γöé
  9905. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  9906. ΓöéIOCC_GEOMETRY                 ΓöéIOCM_GET_MEDIA_GEOMETRY       Γöé
  9907. Γöé                              ΓöéIOCM_GET_DEVICE_GEOMETRY      Γöé
  9908. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  9909. ΓöéIOCC_EXECUTE_IO               ΓöéIOCM_READ                     Γöé
  9910. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  9911. ΓöéIOCC_UNIT_STATUS              ΓöéIOCM_GET_UNIT_STATUS          Γöé
  9912. Γöé                              ΓöéIOCM_GET_LOCK_STATUS          Γöé
  9913. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  9914. ΓöéIOCC_DEVICE_CONTROL           ΓöéIOCM_ABORT IOCM_RESET         Γöé
  9915. Γöé                              ΓöéIOCM_LOCK_MEDIA               Γöé
  9916. Γöé                              ΓöéIOCM_UNLOCK_MEDIA             Γöé
  9917. Γöé                              ΓöéIOCM_EJECT_MEDIA              Γöé
  9918. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  9919. ΓöéIOCC_ADAPTER_PASSTHRU         ΓöéIOCM_EXECUTE_CDB              Γöé
  9920. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  9921.  
  9922.  
  9923. ΓòÉΓòÉΓòÉ 15.2.1.1. IOCC_CONFIGURATION ΓòÉΓòÉΓòÉ
  9924.  
  9925. For the IOCM_GET_DEVICE_TABLE command, the following information must be 
  9926. returned in the device table. 
  9927.  
  9928.    o  The Adapter-to-Device protocol in the AdapterDevBus field of the 
  9929.       ADAPTERINFO structure must be set to AI_DEVBUS_NONSCSI_CDROM. 
  9930.    o  The UnitType field in the UNITINFO structure must be set to 
  9931.       UIB_TYPE_CDROM 
  9932.    o  The UF_REMOVABLE bit must be set in the UnitFlags field of the UNITINFO 
  9933.       structure. The UF_NODASD_SUPT and UF_NOSCSI_SUPT bits should be set to 
  9934.       zero. 
  9935.  
  9936.  The adapter device driver should return all other fields in the device table 
  9937.  as specified in DASD, SCSI, and CD-ROM Device Manager Interface Specification. 
  9938.  
  9939.  
  9940. ΓòÉΓòÉΓòÉ 15.2.1.2. IOCC_UNIT_CONTROL ΓòÉΓòÉΓòÉ
  9941.  
  9942. The IOCM_ALLOCATE_UNIT, IOCM_DEALLOCATE_UNIT and IOCM_CHANGE_UNITINFO must be 
  9943. supported as specified in DASD, SCSI, and CD-ROM Device Manager Interface 
  9944. Specification. 
  9945.  
  9946.  
  9947. ΓòÉΓòÉΓòÉ 15.2.1.3. IOCC_GEOMETRY ΓòÉΓòÉΓòÉ
  9948.  
  9949. The geometry returned must be the same for both the IOCM_GET_MEDIA_GEOMETRY and 
  9950. the IOCM_GET_DEVICE_GEOMETRY commands.  For both commands, only the 
  9951. TotalSectors and the BytesPerSector fields should be set. The TotalSectors 
  9952. field should be equal to the last addressable logical block address on the 
  9953. media + 1.  This value should correspond to the value returned in the SCSI-2 
  9954. Read Capacity command + 1, which is the starting address of the lead out area. 
  9955. The BytesPerSector field should be set to 2048. TheNumHeads, TotalCylinders and 
  9956. SectorsPerTrack fields should be set to 0. 
  9957.  
  9958. If there is no media present in the drive, the driver should return 
  9959. IOERR_UNIT_NOT_READY. 
  9960.  
  9961.  
  9962. ΓòÉΓòÉΓòÉ 15.2.1.4. IOCC_EXECUTE_IO ΓòÉΓòÉΓòÉ
  9963.  
  9964. The adapter device driver must support the IOCM_READ command as specified in 
  9965. DASD, SCSI, and CD-ROM Device Manager Interface Specification. 
  9966.  
  9967.  
  9968. ΓòÉΓòÉΓòÉ 15.2.1.5. IOCC_UNIT_STATUS ΓòÉΓòÉΓòÉ
  9969.  
  9970. The adapter device driver must support the IOCM_GET_UNIT_STATUS and 
  9971. IOCM_GET_LOCK_STATUS commands as specified in DASD, SCSI, and CD-ROM Device 
  9972. Manager Interface Specification. 
  9973.  
  9974.  
  9975. ΓòÉΓòÉΓòÉ 15.2.1.6. IOCC_DEVICE_CONTROL ΓòÉΓòÉΓòÉ
  9976.  
  9977. The adapter device driver must support the IOCM_ABORT, IOCM_RESET, 
  9978. IOCM_LOCK_MEDIA, IOCM_UNLOCK_MEDIA and IOCM_EJECT_MEDIA commands as specified 
  9979. in DASD, SCSI, and CD-ROM Device Manager Interface Specification. 
  9980.  
  9981.  
  9982. ΓòÉΓòÉΓòÉ 15.2.1.7. IOCC_ADAPTER_PASSTHRU ΓòÉΓòÉΓòÉ
  9983.  
  9984. The adapter device driver must support the IOCM_EXECUTE_CDB command. The list 
  9985. of mandatory SCSI-2 command descriptor blocks which must be supported via this 
  9986. command is defined in the following section. 
  9987.  
  9988.  
  9989. ΓòÉΓòÉΓòÉ 15.2.2. Mandatory SCSI-2 Command Support ΓòÉΓòÉΓòÉ
  9990.  
  9991. The following table lists the SCSI-2 commands which must be supported. The 
  9992. command structure for the SCSI-2 command descriptor blocks are defined in the 
  9993. ANSI SCSI-2 standard X3T9.2/86-109 (SCSI-2 draft proposed American National 
  9994. Standard Revision 10g). Developers should refer to the ANSI SCSI-2 
  9995. specification for a definition of each command.  Usage notes for each command, 
  9996. as it relates to implementation under the OS/2 operating system, are included 
  9997. in the following sections. 
  9998.  
  9999. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  10000. ΓöéCommand Name                            ΓöéCommand Code        Γöé
  10001. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  10002. ΓöéGroup 0 Commands                        Γöé                    Γöé
  10003. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  10004. Γöé                                        Γöé                    Γöé
  10005. ΓöéTEST UNIT READY                         Γöé00h                 Γöé
  10006. ΓöéREQUEST SENSE                           Γöé03h                 Γöé
  10007. ΓöéREAD (6)                                Γöé08h                 Γöé
  10008. ΓöéSEEK (6)                                Γöé0Bh                 Γöé
  10009. ΓöéINQUIRY                                 Γöé12h                 Γöé
  10010. ΓöéMODE SELECT (6)                         Γöé15h    (see note)   Γöé
  10011. ΓöéMODE SENSE (6)                          Γöé1Ah    (see note)   Γöé
  10012. ΓöéSTART/STOP UNIT                         Γöé1Bh                 Γöé
  10013. ΓöéPREVENT/ALLOW MEDIUM REMOVAL            Γöé1Eh                 Γöé
  10014. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  10015. ΓöéGroup 1 Commands                        Γöé                    Γöé
  10016. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  10017. Γöé                                        Γöé                    Γöé
  10018. ΓöéREAD CD-ROM CAPACITY                    Γöé25h                 Γöé
  10019. ΓöéREAD (10)                               Γöé28h                 Γöé
  10020. ΓöéSEEK (10)                               Γöé2Bh                 Γöé
  10021. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  10022. ΓöéGroup 2 Commands                        Γöé                    Γöé
  10023. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  10024. Γöé                                        Γöé                    Γöé
  10025. ΓöéREAD SUB-CHANNEL                        Γöé42h                 Γöé
  10026. ΓöéREAD TOC                                Γöé43h                 Γöé
  10027. ΓöéREAD HEADER                             Γöé44h                 Γöé
  10028. ΓöéPLAY AUDIO (10)                         Γöé45h                 Γöé
  10029. ΓöéPLAY AUDIO MSF                          Γöé47h                 Γöé
  10030. ΓöéPAUSE/RESUME                            Γöé4Bh                 Γöé
  10031. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  10032. ΓöéVendor Unique Commands                  Γöé                    Γöé
  10033. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  10034. ΓöéREAD DISC INFORMATION                   ΓöéF0h                 Γöé
  10035. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  10036.  
  10037. Note:  The Mode Select and Mode Sense commands need only support the Block 
  10038.        Descriptor and the Audio Control Page (Page 0E). 
  10039.  
  10040.  
  10041. ΓòÉΓòÉΓòÉ 15.2.2.1. TEST UNIT READY (00h) ΓòÉΓòÉΓòÉ
  10042.  
  10043. The TEST UNIT READY command provides a means to check if the logical unit is 
  10044. ready. Refer to the ANSI SCSI-2 specification for a detailed description of 
  10045. this command. 
  10046.  
  10047.  
  10048. ΓòÉΓòÉΓòÉ 15.2.2.2. REQUEST SENSE (03h) ΓòÉΓòÉΓòÉ
  10049.  
  10050. The REQUEST SENSE command requests that the target transfer sense data to the 
  10051. initiator. 
  10052.  
  10053. The Adapter Device Driver should return 18 bytes of sense data, as shown in the 
  10054. following table. 
  10055.  
  10056. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  10057. Γöé Bit  Γöé   7  Γöé   6  Γöé   5  Γöé   4  Γöé   3  Γöé   2  Γöé   1  Γöé   0  Γöé
  10058. Γöé Byte Γöé      Γöé      Γöé      Γöé      Γöé      Γöé      Γöé      Γöé      Γöé
  10059. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  10060. Γöé  0   Γöé ValidΓöé                Error Code (70h)                Γöé
  10061. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  10062. Γöé  1   Γöé                        Reserved                       Γöé
  10063. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  10064. Γöé  2   Γöé         Reserved          Γöé         Reserved          Γöé
  10065. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  10066. Γöé  3   Γöé (MSB)                                                 Γöé
  10067. Γöé ---  Γöé                      Information                      Γöé
  10068. Γöé  6   Γöé (LSB)                                                 Γöé
  10069. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  10070. Γöé  7   Γöé             Additional Sense Length (0Ah)             Γöé
  10071. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  10072. Γöé8-11  Γöé                        Reserved                       Γöé
  10073. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöé
  10074. Γöé 12   Γöé                  Additional Sense Code                Γöé
  10075. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  10076. Γöé 13   Γöé             Additional Sense Code Qualifier           Γöé
  10077. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  10078. Γöé 14   Γöé                        Reserved                       Γöé
  10079. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  10080. Γöé15-17 Γöé                        Reserved                       Γöé
  10081. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  10082.  
  10083.    o  A valid bit of zero indicates that the Information Bytes field is not 
  10084.       defined 
  10085.    o  A valid bit if one indicates the Information Bytes field contains valid 
  10086.       information 
  10087.  
  10088.  Setting this bit is optional.  If set, the Information Byte field must contain 
  10089.  the logical block address associated with the command in error. 
  10090.  
  10091.  The Sense Key, Additional Sense Code and Additional Sense Code Qualifier 
  10092.  represent the error condition and must be returned. 
  10093.  
  10094.  All other sense data fields are unused and should be set to 0. 
  10095.  
  10096.  Refer to the ANSI SCSI-2 specification for a detailed description of this 
  10097.  command and the complete list of sense key definitions. See I/O Request Block 
  10098.  - C Definitions for a discussion on error processing and the mapping of sense 
  10099.  data to IORB error codes. 
  10100.  
  10101.  
  10102. ΓòÉΓòÉΓòÉ 15.2.2.3. READ (08h) and READ (028h) ΓòÉΓòÉΓòÉ
  10103.  
  10104. The READ (6-byte) and READ (10-byte) commands request that the target transfer 
  10105. data to the initiator. 
  10106.  
  10107. The Adapter Device Driver should return with a sense key error of 08h (Blank 
  10108. Check) and additional sense code of 064h (illegal mode for this track) if any 
  10109. of the following events occur. 
  10110.  
  10111.    1. If the requested logical block address is in an audio track and the drive 
  10112.       does not support reading raw 2352 byte CD-DA data. 
  10113.    2. If the requested logical block address is a mode 2 sector and the drive 
  10114.       does not support reading mode 2 sectors. 
  10115.  
  10116.  Refer to the ANSI SCSI-2 specification for a detailed description of this 
  10117.  command. 
  10118.  
  10119.  Reading Mode-2 Sectors 
  10120.  
  10121.  If the CD-ROM drive supports the reading of Mode 2 Form 1 and Mode 2 Form 2 
  10122.  sectors, the Adapter Device Driver should mask the complexity of reading the 
  10123.  target sector and return successfully, even if the mode of the target sector 
  10124.  does not match the currently specified mode for the drive. 
  10125.  
  10126.  Some drives require the drive be set to the proper mode of the target sector 
  10127.  prior to issuing the read. For those drives, the Adapter Device Driver should 
  10128.  issue the original read, and if the read fails with an error indicating the 
  10129.  current drive mode does not match the mode of the target sector, the adapter 
  10130.  device driver must issue the mode select to set the proper mode and then 
  10131.  re-issue the read request. 
  10132.  
  10133.  It is the responsibility of the CD-ROM Device Manager to ensure the proper 
  10134.  block length is specified via the Mode Select command prior to issuing the 
  10135.  read command.  So, for Mode 2 Form 1 sectors, the device manager will issue a 
  10136.  Mode Select command to set the block length to 2048 bytes.  For a Mode 2 Form 
  10137.  2 sector, the device manager will issue a Mode Select to set the block length 
  10138.  to 2340 or 2352 bytes, depending on the max block length the drive supports. 
  10139.  See the Mode Select command section MODE SELECT  (15h). 
  10140.  
  10141.  
  10142. ΓòÉΓòÉΓòÉ 15.2.2.4. SEEK (0Bh) and Seek (2Bh) ΓòÉΓòÉΓòÉ
  10143.  
  10144. The SEEK (6 byte) and SEEK (10 byte) commands request that the logical unit 
  10145. seek to the specified logical block address. 
  10146.  
  10147. The adapter device driver must complete the seek operation successfully even if 
  10148. the target sector is an audio sector.  If a seek command to an audio sector is 
  10149. not supported by the drive, the driver should issue an alternative command 
  10150. which can successfully seek to the audio sector. 
  10151.  
  10152.  
  10153. ΓòÉΓòÉΓòÉ 15.2.2.5. INQUIRY (12h) ΓòÉΓòÉΓòÉ
  10154.  
  10155. The INQUIRY command requests that information regarding parameters of the 
  10156. target and its attached peripheral devices(s) be sent to the initiator. 
  10157.  
  10158. The standard inquiry data contains 36 required bytes and should be returned as 
  10159. shown in the following table. 
  10160.  
  10161. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  10162. Γöé Bit  Γöé   7  Γöé   6  Γöé   5  Γöé   4  Γöé   3  Γöé   2  Γöé   1  Γöé   0  Γöé
  10163. Γöé Byte Γöé      Γöé      Γöé      Γöé      Γöé      Γöé      Γöé      Γöé      Γöé
  10164. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  10165. Γöé  0   Γöé  Peripheral Qual.  Γöé   Peripheral Device Type (05h)   Γöé
  10166. Γöé      Γöé      (00h)         Γöé                                  Γöé
  10167. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  10168. Γöé  1   Γöé  RMB Γöé           Device Type Modifier (00h)           Γöé
  10169. Γöé      Γöé  (1) Γöé                                                Γöé
  10170. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  10171. Γöé  2   Γöé ISO Version Γöé ECMA Version (00h)   ANSI Version (02h) Γöé
  10172. Γöé      Γöé    (00h)    Γöé                                         Γöé
  10173. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  10174. Γöé  3   Γöé           Reserved        ΓöéResponse Data Format (02h) Γöé
  10175. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  10176. Γöé  4   Γöé                Additional Length (1Fh)                Γöé
  10177. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  10178. Γöé  5   Γöé                       Reserved                        Γöé
  10179. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  10180. Γöé  6   Γöé                       Reserved                        Γöé
  10181. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  10182. Γöé  7   Γöé                       Reserved                        Γöé
  10183. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  10184. Γöé  8   Γöé(MSB)                                                  Γöé
  10185. Γöé ---  Γöé                Vendor Identification                  Γöé
  10186. Γöé 15   Γöé(LSB)                                                  Γöé
  10187. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  10188. Γöé 16   Γöé(MSB)                                                  Γöé
  10189. Γöé ---  Γöé                Product Identification                 Γöé
  10190. Γöé 31   Γöé(LSB)                                                  Γöé
  10191. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  10192. Γöé 32   Γöé(MSB)                                                  Γöé
  10193. Γöé ---  Γöé                Product Revision Level                 Γöé
  10194. Γöé 35   Γöé(LSB)                                                  Γöé
  10195. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  10196.  
  10197.    o  The Peripheral Qualifier is set to 00h. 
  10198.    o  The Peripheral Device Type is set to 05h (CD-ROM device). 
  10199.    o  The Removable Medium (RMB) bit is set to 1 to indicate the media is 
  10200.       removable. 
  10201.    o  The Device Type Modifier is set to 00h. 
  10202.    o  The ISO version is set to 00h. 
  10203.    o  The ECMA version is set to 00h. 
  10204.    o  The ANSI-Approved Version field is set to 02h, indicating this driver 
  10205.       adheres to the SCSI-2 specification. 
  10206.    o  The Response Data Format field is set to 02h to indicate compatibility 
  10207.       with the SCSI-2 standard. 
  10208.  
  10209.  The Vendor Identification field contains eight bytes of ASCII data identifying 
  10210.  the vendor of the product.  For example: 
  10211.  
  10212.   ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  10213.  
  10214.   Byte     08   09   10   11   12   13   14   15
  10215.   ASCII    S    O    N    Y    sp   sp   sp   sp
  10216.   Code     53h  4Fh  4Eh  59h  20h  20h  20h  20h
  10217.  
  10218.   ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  10219.  
  10220.  The Product Identification field contains sixteen bytes of ASCII data 
  10221.  identifying the product model.  For example: 
  10222.  
  10223.   ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  10224.  
  10225.   Byte     16  17  18  19  20  21  22  23  24  25  26  27  28  29  30  31
  10226.   ASCII    C   D   -   R   O   M   sp  C   D   U   5   6   1   sp  sp  sp
  10227.   Code     43h 44h 2Dh 52h 4Fh 4Dh 20h 43h 44h 55h 35h 36h 31h 20h 20h 20h
  10228.  
  10229.   ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  10230.  
  10231.  The Product Revision Level field contains four bytes of ASCII data which 
  10232.  indicates the revision level of the controller firmware.  For example: 
  10233.  
  10234.   ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  10235.  
  10236.   Byte     32   33   34   35
  10237.   ASCII    1    .    0    0
  10238.   Code     31h  2Eh  30h  30h
  10239.  
  10240.   ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  10241.  
  10242.  
  10243. ΓòÉΓòÉΓòÉ 15.2.2.6. MODE SELECT  (15h) ΓòÉΓòÉΓòÉ
  10244.  
  10245. The Adapter Device Driver must support the Mode Select command for the Mode 
  10246. Parameter Block Descriptor and the Audio Control Parameters Page (0x0E). 
  10247.  
  10248. The mode parameter list contains a header, followed by zero or more block 
  10249. descriptors, followed by zero or more variable-length pages. 
  10250.  
  10251.  
  10252. ΓòÉΓòÉΓòÉ 15.2.2.7. Mode Select Parameter List ΓòÉΓòÉΓòÉ
  10253.  
  10254. The following table describes the mode select header. 
  10255.  
  10256. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  10257. Γöé Bit  Γöé   7  Γöé   6  Γöé   5  Γöé   4  Γöé   3  Γöé   2  Γöé   1  Γöé   0  Γöé
  10258. Γöé Byte Γöé      Γöé      Γöé      Γöé      Γöé      Γöé      Γöé      Γöé      Γöé
  10259. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  10260. Γöé  0   ΓöéResv. Γöé                                                Γöé
  10261. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  10262. Γöé  1   Γöé                   Medium Type (00h)                   Γöé
  10263. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  10264. Γöé  2   Γöé                       Reserved                        Γöé
  10265. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  10266. Γöé  3   Γöé          Block Descriptor Length (00h or 08h)         Γöé
  10267. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  10268.  
  10269. The following table describes the mode select block descriptor. 
  10270.  
  10271. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  10272. Γöé Bit  Γöé   7  Γöé   6  Γöé   5  Γöé   4  Γöé   3  Γöé   2  Γöé   1  Γöé   0  Γöé
  10273. Γöé Byte Γöé      Γöé      Γöé      Γöé      Γöé      Γöé      Γöé      Γöé      Γöé
  10274. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  10275. Γöé  0   Γöé                     Density Code                      Γöé
  10276. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  10277. Γöé  1   Γöé (MSB)                                                 Γöé
  10278. Γöé ---  Γöé                 Number of Blocks (00h)                Γöé
  10279. Γöé  3   Γöé (LSB)                                                 Γöé
  10280. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  10281. Γöé  4   Γöé                       Reserved                        Γöé
  10282. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  10283. Γöé  5   Γöé (MSB)                                                 Γöé
  10284. Γöé ---  Γöé                     Block Length                      Γöé
  10285. Γöé  7   Γöé                                                       Γöé
  10286. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  10287.  
  10288.    o  The medium type is set to 00h. 
  10289.    o  The block descriptor length is set to either 00h or 08h. 
  10290.    o  The density code is set to 00h. 
  10291.    o  The number of blocks field is set to 00h.  This indicates the entire disc 
  10292.       has the block length specified. 
  10293.    o  The block length specifies the length in bytes of each logical block. 
  10294.  
  10295.  
  10296. ΓòÉΓòÉΓòÉ 15.2.2.7.1. Block Length Support ΓòÉΓòÉΓòÉ
  10297.  
  10298. The CD-ROM Device Manager will initialize the block length to 2048 bytes per 
  10299. sector.  When the Device Manager receives a Readlong IOCtl request (Category 
  10300. 80h, Function 72h), it will issue a Mode Select to change the block length to 
  10301. either 2340 or 2352 bytes, depending on the maximum block length the drive 
  10302. supports. The CD-ROM Device Manager will only issue the Mode Select command to 
  10303. change the block length if the current block length does not match the 
  10304. requested block length. 
  10305.  
  10306. Prior to the first Read Long IOCtl command, the CD-ROM Device Manager will 
  10307. issue a set of Mode Select commands with various block length values to 
  10308. determine the maximum block length the drive supports. If the Adapter Device 
  10309. Driver receives a Mode Select command with a Block Length value which is not 
  10310. supported, it should return an error with a Sense Key of 05h (Illegal Request) 
  10311. and the Additional Sense Code set to 26h (Invalid field in parameter list). 
  10312.  
  10313. If the drive can only read a maximum of 2340 bytes per sector, the CD-ROM 
  10314. Device Manager will append 12 bytes of zeros (where the sync bytes are normally 
  10315. placed) to each sector after the read completes.  This will ensure a complete 
  10316. 2352 byte sector is always returned back to the application when a ReadLong 
  10317. IOCtl command is issued. 
  10318.  
  10319.  
  10320. ΓòÉΓòÉΓòÉ 15.2.2.7.2. Audio Control Parameter Page ΓòÉΓòÉΓòÉ
  10321.  
  10322. The audio control parameters page sets the playback modes and output controls 
  10323. for subsequent PLAY AUDIO commands and any current audio playback operation. 
  10324. (See the table below.) 
  10325.  
  10326. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  10327. Γöé Bit  Γöé   7  Γöé   6  Γöé   5  Γöé   4  Γöé   3  Γöé   2  Γöé   1  Γöé   0  Γöé
  10328. Γöé Byte Γöé      Γöé      Γöé      Γöé      Γöé      Γöé      Γöé      Γöé      Γöé
  10329. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  10330. Γöé  0   Γöé  Reserved   Γöé             Page Code (0Eh)             Γöé
  10331. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  10332. Γöé  1   Γöé                 Parameter Length (0Eh)                Γöé
  10333. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  10334. Γöé  2   Γöé             Reserved             ΓöéImmed Γöé   Reserved  Γöé
  10335. Γöé      Γöé                                  Γöé (1)  Γöé             Γöé
  10336. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  10337. Γöé 3-7  Γöé                       Reserved                        Γöé
  10338. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  10339. Γöé  8   Γöé         Reserved          Γöé   Output Port 0 Channel   Γöé
  10340. Γöé      Γöé                           Γöé         Selection         Γöé
  10341. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  10342. Γöé  9   Γöé                  Output Port 0 Volume                 Γöé
  10343. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  10344. Γöé 10   Γöé         Reserved          Γöé   Output Port 1 Channel   Γöé
  10345. Γöé      Γöé                           Γöé         Selection         Γöé
  10346. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  10347. Γöé 11   Γöé                  Output Port 1 Volume                 Γöé
  10348. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  10349. Γöé 12   Γöé         Reserved          Γöé   Output Port 2 Channel   Γöé
  10350. Γöé      Γöé                           Γöé       Selection (0)       Γöé
  10351. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  10352. Γöé 13   Γöé                Output Port 2 Volume (0)               Γöé
  10353. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  10354. Γöé 14   Γöé         Reserved          Γöé   Output Port 3 Channel   Γöé
  10355. Γöé      Γöé                           Γöé       Selection (0)       Γöé
  10356. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  10357. Γöé 15   Γöé                Output Port 3 Volume (0)               Γöé
  10358. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  10359.  
  10360. The immediate bit (Immed) is set to 1 to indicate the target shall send 
  10361. completion status as soon as the playback operation has been started. 
  10362.  
  10363. The Output Port channel selection specifies the audio channels from the disc to 
  10364. which this output port should be connected, as shown in the table below. 
  10365.  
  10366. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  10367. ΓöéChannel        ΓöéFunction                                     Γöé
  10368. ΓöéSelection      Γöé                                             Γöé
  10369. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  10370. Γöé00h            ΓöéOutput port muted.                           Γöé
  10371. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  10372. Γöé01h            ΓöéConnect audio channel 0 (left) to this outputΓöé
  10373. Γöé               Γöéport                                         Γöé
  10374. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  10375. Γöé02h            ΓöéConnect audio channel 1 (right) to this      Γöé
  10376. Γöé               Γöéoutput port                                  Γöé
  10377. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  10378. Γöé03h            ΓöéConnect audio channel 0 and 1 to this output Γöé
  10379. Γöé               Γöéport                                         Γöé
  10380. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  10381. Γöé04h-0Fh        ΓöéNot supported                                Γöé
  10382. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  10383.  
  10384. The channel volume control indicates the relative volume level for this audio 
  10385. output port. Values between 0x00 and 0xFF and allowed.  A volume level of zero 
  10386. indicates the output is muted, a value of 0xFF indicates maximum volume level. 
  10387.  
  10388. The Output Port 2 and Output Port 3 channel selection and volume fields (bytes 
  10389. 12 to 15) are reserved and are set to 0. 
  10390.  
  10391.  
  10392. ΓòÉΓòÉΓòÉ 15.2.2.7.3. Audio Control Determination ΓòÉΓòÉΓòÉ
  10393.  
  10394. At initialization time, the CD-ROM Device Manager will issue a series of Mode 
  10395. Select commands with various Audio Control Parameter Pages.  The Output Port 
  10396. Channel Select and Volume Level fields will be varied to determine the audio 
  10397. control capabilities of the drive.  For example, an Audio Control Parameter 
  10398. Page is sent with volume levels different for Channel 0 and Channel 1 to 
  10399. determine if the drive supports independent volume levels for each channel. 
  10400.  
  10401. If the Adapter Device Driver receives a Mode Select command with an Audio 
  10402. Control Parameter Page which is not supported by the drive, it should return an 
  10403. error with a Sense Key of 05h (Illegal Request) and the Additional Sense Code 
  10404. set to 26h (Invalid field in parameter list). This allows the CD-ROM Device 
  10405. Manager to determine the audio capabilities of the drive. 
  10406.  
  10407.  
  10408. ΓòÉΓòÉΓòÉ 15.2.2.8. MODE SENSE Command (1Ah) ΓòÉΓòÉΓòÉ
  10409.  
  10410. The MODE SENSE (6) command provides a means for a target to report parameters 
  10411. to the initiator.  It is a complementary command to the MODE SELECT (6) 
  10412. command. Refer to the ANSI SCSI-2 specification for a detailed description of 
  10413. this command. 
  10414.  
  10415.  
  10416. ΓòÉΓòÉΓòÉ 15.2.2.9. START/STOP UNIT Command (1Bh) ΓòÉΓòÉΓòÉ
  10417.  
  10418. The START/STOP UNIT command requests the target enable or disable the logical 
  10419. unit for media access operations.  This command is used to eject media from the 
  10420. drive. 
  10421.  
  10422. If a PREVENT MEDIUM REMOVAL command has been issued, a request to the disc 
  10423. should return with the sense key set to ILLEGAL REQUEST (O5h) and the 
  10424. additional sense code set to MEDIUM REMOVAL PREVENT (53h). 
  10425.  
  10426. Refer to the ANSI SCSI-2 specification for a detailed description of this 
  10427. command. 
  10428.  
  10429.  
  10430. ΓòÉΓòÉΓòÉ 15.2.2.10. PREVENT/ALLOW MEDIUM REMOVAL (1Eh) ΓòÉΓòÉΓòÉ
  10431.  
  10432. The PREVENT/ALLOW MEDIUM REMOVAL command requests that the target enable or 
  10433. disable the removal of the medium in the logical unit. 
  10434.  
  10435. Refer to the ANSI SCSI-2 specification for a detailed description of this 
  10436. command. 
  10437.  
  10438.  
  10439. ΓòÉΓòÉΓòÉ 15.2.2.11. READ CD-ROM CAPACITY (25h) ΓòÉΓòÉΓòÉ
  10440.  
  10441. The READ CD-ROM CAPACITY command provides a means for the initiator to request 
  10442. information regarding the capacity of the logical unit.  The capacity is based 
  10443. on the starting address of the lead-out area minus one. The logical block 
  10444. address returned is the address of the last user accessible block on the disc. 
  10445.  
  10446. Refer to the ANSI SCSI-2 specification for a detailed description of this 
  10447. command. 
  10448.  
  10449.  
  10450. ΓòÉΓòÉΓòÉ 15.2.2.12. READ SUB-CHANNEL (42h) ΓòÉΓòÉΓòÉ
  10451.  
  10452. The READ SUB-CHANNEL command requests that the target return the requested 
  10453. sub-channel data plus the state of audio play operations. 
  10454.  
  10455. Note:  If a READ SUB CHANNEL command is issued to request the media catalog 
  10456.        number (UPC/EAN Bar Coding), the drive should return the UPC code in 
  10457.        ASCII format as specified in the SCSI-2 specification. Some drives 
  10458.        return the UPC code in BCD. It should be converted to ASCII prior to 
  10459.        returning. All other sub-channel data is returned in binary format. 
  10460.  
  10461.  Refer to the ANSI SCSI-2 specification for a detailed description of this 
  10462.  command. 
  10463.  
  10464.  
  10465. ΓòÉΓòÉΓòÉ 15.2.2.13. READ TOC (43h) ΓòÉΓòÉΓòÉ
  10466.  
  10467. The READ TOC command requests that the target transfer data from the table of 
  10468. contents to the initiator. 
  10469.  
  10470. For drives which do not support a READ TOC command while an audio play 
  10471. operation is in progress, the adapter device driver should buffer the entire 
  10472. TOC data when media is first mounted in the drive.  This will ensure the TOC 
  10473. data is retrievable during an audio play operation. 
  10474.  
  10475. All TOC data is returned in binary format. 
  10476.  
  10477. Refer to the ANSI SCSI-2 specification for a detailed description of this 
  10478. command. 
  10479.  
  10480.  
  10481. ΓòÉΓòÉΓòÉ 15.2.2.14. READ HEADER (44h) ΓòÉΓòÉΓòÉ
  10482.  
  10483. The READ HEADER command requests that the device return the CD-ROM data block 
  10484. address header of the requested logical block. 
  10485.  
  10486. Refer to the ANSI SCSI-2 specification for a detailed description of this 
  10487. command. 
  10488.  
  10489.  
  10490. ΓòÉΓòÉΓòÉ 15.2.2.15. PLAY AUDIO (10) (45h) ΓòÉΓòÉΓòÉ
  10491.  
  10492. The PLAY AUDIO command requests the target to begin an audio playback 
  10493. operation. 
  10494.  
  10495. The relative address bit (RelAdr) is not used and will be set to 0. 
  10496.  
  10497. If the requested starting address is not in an audio track, the Adapter Device 
  10498. Driver should return with a sense key error of 08h (Blank Check) and additional 
  10499. sense code of 064h (illegal mode for this track). 
  10500.  
  10501. Refer to the ANSI SCSI-2 specification for a detailed description of this 
  10502. command. 
  10503.  
  10504.  
  10505. ΓòÉΓòÉΓòÉ 15.2.2.16. PLAY AUDIO MSF (47h) ΓòÉΓòÉΓòÉ
  10506.  
  10507. The PLAY AUDIO MSF command requests the target to begin an audio playback 
  10508. operation. 
  10509.  
  10510. As specified in the SCSI-2 specification, the starting MSF address and ending 
  10511. MSF address fields are specified in hexadecimal (not in BCD). 
  10512.  
  10513. If the requested starting address is not in an audio track, the Adapter Device 
  10514. Driver should return with a sense key error of 08h (Blank Check) and additional 
  10515. sense code of 064h (illegal mode for this track). 
  10516.  
  10517. Refer to the ANSI SCSI-2 specification for a detailed description of this 
  10518. command. 
  10519.  
  10520.  
  10521. ΓòÉΓòÉΓòÉ 15.2.2.17. PAUSE/RESUME (4Bh) ΓòÉΓòÉΓòÉ
  10522.  
  10523. The PAUSE RESUME command requests that the device stop or start an audio play 
  10524. operation. 
  10525.  
  10526. It shall not be considered an error to request a pause when a pause is already 
  10527. in effect or to request a resume when a play operation is in progress. 
  10528.  
  10529. Refer to the ANSI SCSI-2 specification for a detailed description of this 
  10530. command. 
  10531.  
  10532.  
  10533. ΓòÉΓòÉΓòÉ 15.2.2.18. READ DISC INFORMATION (F0h) ΓòÉΓòÉΓòÉ
  10534.  
  10535. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  10536. Γöé Bit  Γöé   7  Γöé   6  Γöé   5  Γöé   4  Γöé   3  Γöé   2  Γöé   1  Γöé   0  Γöé
  10537. Γöé Byte Γöé      Γöé      Γöé      Γöé      Γöé      Γöé      Γöé      Γöé      Γöé
  10538. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  10539. Γöé  0   Γöé                  Operation Code (F0h)                 Γöé
  10540. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  10541. Γöé  1   Γöé                Reserved                 Γöé    Type     Γöé
  10542. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  10543. Γöé 2-9  Γöé                       Reserved                        Γöé
  10544. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  10545.  
  10546. The READ DISC INFORMATION command is a vendor unique command to request 
  10547. information regarding capabilities of the target device.  The command is also 
  10548. used to return the starting address of the last session for a multisession 
  10549. photo CD disc. 
  10550.  
  10551.  
  10552. ΓòÉΓòÉΓòÉ 15.2.2.18.1. TYPE = 00b ΓòÉΓòÉΓòÉ
  10553.  
  10554. If the TYPE field in the command descriptor block is 00h, the adapter device 
  10555. driver should return the data shown in the following table: 
  10556.  
  10557. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  10558. Γöé Bit  Γöé  7  Γöé   6  Γöé   5  Γöé   4  Γöé   3  Γöé   2  Γöé   1  Γöé   0   Γöé
  10559. Γöé Byte Γöé     Γöé      Γöé      Γöé      Γöé      Γöé      Γöé      Γöé       Γöé
  10560. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  10561. Γöé  0   Γöé        Reserved          Γöé CDDA Γöé Form2Γöé Form1ΓöéPhotoCDΓöé
  10562. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  10563. Γöé  1   Γöé                      Reserved                         Γöé
  10564. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  10565. Γöé  2   Γöé (MSB)                                                 Γöé
  10566. Γöé ---  Γöé                 Maximum Block Length                  Γöé
  10567. Γöé  3   Γöé (LSB)                                                 Γöé
  10568. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  10569.  
  10570.    o  A multisession photo CD (PhotoCD) bit set to 1 indicates the drive 
  10571.       supports the reading of multi-session photo CD discs. 
  10572.    o  A Mode 2 Form 1 (Form1) bit set to 1 indicates the drive supports the 
  10573.       reading of Mode 2 Form 1 sectors. 
  10574.    o  A Mode 2 Form 2 (Form2) bit set to 1 indicates the drive supports the 
  10575.       reading of Mode 2 Form 2 sectors. 
  10576.    o  A CD-Digital Audio (CDDA) set to 1 indicates the drive supports reading 
  10577.       2352 byte raw CD-DA data. 
  10578.  
  10579.  The Maximum Block Length field specifies the maximum block length that can be 
  10580.  transferred by the drive during a read operation.  The value should match the 
  10581.  maximum value which can be specified in the Block Length field of the Block 
  10582.  Descriptor during a Mode Select command. 
  10583.  
  10584.  
  10585. ΓòÉΓòÉΓòÉ 15.2.2.18.2. TYPE = 01b ΓòÉΓòÉΓòÉ
  10586.  
  10587. If the TYPE field in the command descriptor block is 01h, the adapter device 
  10588. driver should return the data shown in the following table: 
  10589.  
  10590. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  10591. Γöé Bit  Γöé   7  Γöé   6  Γöé   5  Γöé   4  Γöé   3  Γöé   2  Γöé   1  Γöé   0  Γöé
  10592. Γöé Byte Γöé      Γöé      Γöé      Γöé      Γöé      Γöé      Γöé      Γöé      Γöé
  10593. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  10594. Γöé  0   Γöé                        Reserved                       Γöé
  10595. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  10596. Γöé  1   Γöé           Address of Last Session (Minutes)           Γöé
  10597. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  10598. Γöé  2   Γöé           Address of Last Session (Seconds)           Γöé
  10599. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  10600. Γöé  3   Γöé            Address of Last Session (Frame)            Γöé
  10601. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  10602.  
  10603. If the installed media is a multi-session photo CD disc, the driver should 
  10604. return the absolute address of the last session. The data is returned in MSF 
  10605. format and is expressed in hexadecimal. If the installed media is not a 
  10606. multi-session photo CD disc, the driver must return zero for all fields in the 
  10607. returned control block. 
  10608.  
  10609.  
  10610. ΓòÉΓòÉΓòÉ 15.2.2.19. Multi-Session Photo CD Support ΓòÉΓòÉΓòÉ
  10611.  
  10612. At initialization time, the CD-ROM Device Manager will issue the READ DISC 
  10613. INFORMATION command with TYPE code = 00h to determine if the drive supports the 
  10614. reading of multi-session photo CD discs.  If the drive indicates it supports 
  10615. the reading of multi-session photo CD discs (by returning with the PhotoCD bit 
  10616. set in the returned READ DISC INFORMATION data block) the CD-ROM Device Manager 
  10617. will issue the READ DISC INFORMATION command with TYPE code = 01h whenever 
  10618. media is first mounted in the drive. 
  10619.  
  10620. If the adapter device driver indicates that a multi-session disc is mounted, 
  10621. the CD-ROM Device Manager will use the returned last session address to map 
  10622. subsequent read requests for Volume Descriptor sectors to the Volume Descriptor 
  10623. sectors in the last session on the disc.  With this implementation, the 
  10624. responsibility of mapping sectors is done by the CD-ROM Device Manager and not 
  10625. by each adapter device driver. 
  10626.  
  10627.  
  10628. ΓòÉΓòÉΓòÉ 15.2.3. Error Processing ΓòÉΓòÉΓòÉ
  10629.  
  10630. When a request is issued, the CD-ROM Device Manager will set the 
  10631. IORB_REQ_STATUSBLOCK bit in the RequestControl field of the IORB header.  If 
  10632. this bit is set and an error occurs, the Adapter Device Driver must return a 
  10633. valid status block and a valid sense data block back to the Device Manager when 
  10634. the request completes. 
  10635.  
  10636. The status block is pointed to by the pStatusBlock field in the IORB header. 
  10637. It should be noted that pStatusBlock is a 16 bit near pointer, so the block is 
  10638. within the same segment as the IORB. The sense data is pointed to by the 
  10639. SenseData field in the status block.  This field is a 16:16 far pointer.  The 
  10640. length of the sense data to return is in specified in the ReqSenseLen field. 
  10641.  
  10642. The adapter device driver must set the following fields when returning sense 
  10643. data: 
  10644.  
  10645.    1. The IORB_ERROR and IORB_STATUSBLOCK_AVAIL bits must be set in the Status 
  10646.       field of the IORB header. 
  10647.    2. The STATUS_SENSEDATA_VALID bit must be set in the Flags field of the 
  10648.       Status Block. 
  10649.    3. The value in the Error Code field of the returned sense data must be set 
  10650.       to 70h. 
  10651.    4. The Sense Key, Additional Sense Code and Additional Sense Code Qualifier 
  10652.       must be set to indicate the returned error. 
  10653.  
  10654.  To maintain consistency with the adapter device driver specification, an IORB 
  10655.  error code must also be returned in the IORB header when an error occurs. 
  10656.  This is in addition to the returned sense data information. The table below 
  10657.  shows the mapping between Sense Data error codes and IORB error codes.  If the 
  10658.  Adapter Device Driver returns Sense Key and Sense Codes listed in the SCSI-2 
  10659.  specification which are not listed in the table below, the adapter device 
  10660.  driver must map the sense key and codes to the most appropriate IORB error 
  10661.  code. 
  10662.  
  10663.   ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  10664.  
  10665.     Key  = Sense Key
  10666.     ASC  = Additional Sense Code
  10667.     ASCQ = Additional Sense Code Qualifier
  10668.  
  10669.   ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  10670.  
  10671.   ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  10672.   Γöé          Γöé           ΓöéDescription               ΓöéIORB Error Code               Γöé
  10673.   Γöé          ΓöéKey ASC    Γöé                          Γöé                              Γöé
  10674.   Γöé          ΓöéASCQ       Γöé                          Γöé                              Γöé
  10675.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  10676.   Γöé          Γöé           Γöé                          Γöé                              Γöé
  10677.   ΓöéNOT READY Γöé02h 04h 00hΓöéLogical Unit Not Ready    ΓöéIOERR_UNIT_NOT_READY          Γöé
  10678.   Γöé          Γöé02h 04h 01hΓöéBecoming ready            ΓöéIOERR_UNIT_NOT_READY          Γöé
  10679.   Γöé          Γöé02h 57h 00hΓöéUnable to recover TOC     ΓöéIOERR_UNIT_NOT_READY          Γöé
  10680.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  10681.   Γöé          Γöé           Γöé                          Γöé                              Γöé
  10682.   ΓöéMEDIUM    Γöé03h 02h 00hΓöéNo Seek Complete          ΓöéIOERR_RBA_ADDRESSING_ERROR    Γöé
  10683.   ΓöéERROR     Γöé03h 11h 00hΓöéUnrecovered Read Error    ΓöéIOERR_RBA_CRC_ERROR           Γöé
  10684.   Γöé          Γöé03h 11h 05hΓöéL-EC Uncorrectable Error  ΓöéIOERR_RBA_CRC_ERROR           Γöé
  10685.   Γöé          Γöé03h 11h 06hΓöéCIRC Unrecovered Error    ΓöéIOERR_RBA_CRC_ERROR           Γöé
  10686.   Γöé          Γöé03h 12h 00hΓöéAddress Mark Not Found    ΓöéIOERR_RBA_ADDRESSING_ERROR    Γöé
  10687.   Γöé          Γöé03h 15h 00hΓöéRandom Positioning Error  ΓöéIOERR_RBA_ADDRESSING_ERROR    Γöé
  10688.   Γöé          Γöé03h 16h 00hΓöéData Synchronization ErrorΓöéIOERR_RBA_CRC_ERROR           Γöé
  10689.   Γöé          Γöé03h 30h 00hΓöéIncompatible Medium       ΓöéIOERR_MEDIA_NOT_SUPPORTED     Γöé
  10690.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  10691.   Γöé          Γöé           Γöé                          Γöé                              Γöé
  10692.   ΓöéHARDWARE  Γöé04h 08h 00hΓöéUnit Communication Fail   ΓöéIOERR_DEVICE_NONSPECIFIC      Γöé
  10693.   ΓöéERROR     Γöé04h 09h 01hΓöéTracking Servo Failure    ΓöéIOERR_DEVICE_NONSPECIFIC      Γöé
  10694.   Γöé          Γöé04h 09h 02hΓöéFocus Servo Failure       ΓöéIOERR_DEVICE_NONSPECIFIC      Γöé
  10695.   Γöé          Γöé04h 09h 03hΓöéSpindle Servo Failure     ΓöéIOERR_DEVICE_NONSPECIFIC      Γöé
  10696.   Γöé          Γöé04h 44h 00hΓöéInternal Target Failure   ΓöéIOERR_DEVICE_NONSPECIFIC      Γöé
  10697.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  10698.   Γöé          Γöé           Γöé                          Γöé                              Γöé
  10699.   ΓöéILLEGAL   Γöé05h 20h 00hΓöéInvalid Command Code      ΓöéIOERR_DEVICE_REQ_NOT_SUPPORTEDΓöé
  10700.   ΓöéREQUEST   Γöé05h 21h 00hΓöéLBA Out of Range          ΓöéIOERR_RBA_ADDRESSING_ERROR    Γöé
  10701.   Γöé          Γöé05h 24h 00hΓöéInvalid field in CDB      ΓöéIOERR_CMD_SYNTAX              Γöé
  10702.   Γöé          Γöé05h 25h 00hΓöéUnit not supported        ΓöéIOERR_CMD_SYNTAX              Γöé
  10703.   Γöé          Γöé05h 26h 00hΓöéInvalid field in parmlist ΓöéIOERR_CMD_SYNTAX              Γöé
  10704.   Γöé          Γöé05h 63h 00hΓöéEnd of user area          ΓöéIOERR_RBA_ADDRESSING_ERROR    Γöé
  10705.   Γöé          Γöé05h 64h 00hΓöéIllegal mode for track    ΓöéIOERR_RBA_ADDRESSING_ERROR    Γöé
  10706.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  10707.   Γöé          Γöé           ΓöéMedium may have changed   Γöé                              Γöé
  10708.   ΓöéUNIT      Γöé06h 28h 00hΓöéPower on reset            ΓöéIOERR_MEDIA_CHANGED           Γöé
  10709.   ΓöéATTENTION Γöé06h 29h 00hΓöé                          ΓöéIOERR_DEVICE_RESET            Γöé
  10710.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  10711.   Γöé          Γöé08h 64h 00hΓöéIllegal mode for track    ΓöéIOERR_RBA_ADDRESSING_ERROR    Γöé
  10712.   ΓöéBLANK     Γöé           Γöé                          Γöé                              Γöé
  10713.   ΓöéCHECK     Γöé           Γöé                          Γöé                              Γöé
  10714.   ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  10715.  
  10716.  
  10717. ΓòÉΓòÉΓòÉ 16. CD-ROM Device Driver Test Tool ΓòÉΓòÉΓòÉ
  10718.  
  10719. This chapter explains how to use the CD-ROM Device Driver Test Tool. 
  10720.  
  10721.  
  10722. ΓòÉΓòÉΓòÉ 16.1. Overview ΓòÉΓòÉΓòÉ
  10723.  
  10724. CD-ROM Functional Verification Tests (FVTs) exercise the Application Program 
  10725. Interfaces (APIs) defined for the DosDevIOCtl interface of CD-ROM device 
  10726. drivers. The tests are implemented with the Device Driver Test Tool (DDTT). 
  10727. Each test is defined in a script file and these files can be modified using a 
  10728. text editor to create additional, specialized test cases. See Using the Device 
  10729. Driver Test Tool (DDTT) for a description of the DDTT.  The test scripts give 
  10730. the user a repeatable set of tests that demonstrate CD-ROM function and 
  10731. performance.  Errors are reported and are easily isolated to a specific test 
  10732. sequence and API. 
  10733.  
  10734. User input and output from each thread of the CD-ROM tests is performed by way 
  10735. of a separate Presentation Manager window.  Multi-threaded test cases log all 
  10736. information to a single log file, clearly indicating the actual execution 
  10737. sequence in the event of errors. 
  10738.  
  10739.  
  10740. ΓòÉΓòÉΓòÉ 16.2. CD-ROM Test Architecture ΓòÉΓòÉΓòÉ
  10741.  
  10742. DDTT provides a common front-end parser for test-case scripts. The following 
  10743. DDTT CD-ROM-specific files are required: 
  10744.  
  10745.    o  DDTCDROM.DLL 
  10746.  
  10747.    o  CDROM.GRA 
  10748.  The C++ source code for DDTCDROM.DLL is available on the IBM Developer 
  10749.  Connection Device Driver Kit for OS/2.  The following required, common 
  10750.  components of DDTT implement DDTT's programmable parser and common test 
  10751.  functions such as SET, LOOP, and PAUSE: 
  10752.  
  10753.    o  DDTT.EXE 
  10754.  
  10755.    o  DDTT.DLL 
  10756.  
  10757.    o  GLOBAL.DLL 
  10758.  
  10759.    o  GLOBAL.GRA 
  10760.  
  10761.  
  10762. ΓòÉΓòÉΓòÉ 16.3. Installation ΓòÉΓòÉΓòÉ
  10763.  
  10764. There are two directory structures in the IBM Developer Connection Device 
  10765. Driver Kit for OS/2 that utilize test suites. The TESTCERT substructure 
  10766. contains the executables and test cases; the TESTTOOL substructure contains the 
  10767. files required to change and rebuild the code for a particular test DLL. 
  10768.  
  10769. The following procedure describes installation for running test cases. 
  10770.  
  10771.    1. Copy the executable and CD-ROM test case files from the IBM Developer 
  10772.       Connection Device Driver Kit for OS/2 CD-ROM disc to the hard drive.  All 
  10773.       the executable (.EXE and .DLL) files can reside in one directory, such as 
  10774.       \TSTCDROM. Test-case script and command files can also be placed in this 
  10775.       directory on the hard disk. If the target directory is C:\TSTCDROM and 
  10776.       the E: drive contains the information from the IBM Developer Connection 
  10777.       Device Driver Kit for OS/2, then use the following commands to copy the 
  10778.       CD-ROM test suite: 
  10779.  
  10780.             ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  10781.  
  10782.  
  10783.                [C:\]md tstcdrom
  10784.  
  10785.                [C:\]cd tstcdrom
  10786.  
  10787.                [C:\tstcdrom]copy e:\ddk_x86\testcert\storage\function\cdrom\*
  10788.  
  10789.                [C:\tstcdrom]copy e:\ddk_x86\testcert\general\ddtt\*
  10790.  
  10791.             ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  10792.  
  10793.    2. Add C:\TSTCDROM to the LIBPATH and PATH in the CONFIG.SYS file. 
  10794.  
  10795.    3. Reboot your machine so the new LIBPATH entry takes effect. 
  10796.  
  10797.  
  10798. ΓòÉΓòÉΓòÉ 16.4. Test-Case Execution ΓòÉΓòÉΓòÉ
  10799.  
  10800. The DDTT CD-ROM tests must be executed on a directly-attached CD-ROM device. 
  10801. These tests will not work when executed against a CD-ROM device accessed by way 
  10802. of a network connection. 
  10803.  
  10804. There are two ways to run CD-ROM tests. To run the program from a command file, 
  10805. be sure the files are installed in the current directory. Then, execute the 
  10806. TEST command file.  The command file will run all the script files. 
  10807.  
  10808. Refer to Description of Test Cases to get a description of each script file. 
  10809. Then, after determining which script file to run, type in DDTT followed by the 
  10810. script file name: 
  10811.  
  10812. ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  10813.  
  10814.    [C:\TSTCDROM]DDTT LOCK.SCR
  10815.  
  10816. ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  10817.  
  10818. After the script has finished executing, control will transfer back to the OS/2 
  10819. Window.  If the script files are run individually, and the TEST command file 
  10820. has not been run first, then, run SETINFO to set up your CD-ROM drive letter 
  10821. and a file name. 
  10822.  
  10823. There are two different sets of script files in the DDTT CD-ROM package.  The 
  10824. first set is the audio script files and the second set is the media script 
  10825. files.  When TEST is run, it will ask you for the drive letter of your CD-ROM 
  10826. drive and the name of a file on the media CD-ROM disc.  For these test 
  10827. purposes, enter in a file that has at least 100 000 bytes.  (If you do not 
  10828. enter in a file that has at least that many bytes, there will be some file 
  10829. comparison errors when the media script files run.)  After you enter the file 
  10830. name and press Enter, the command file will then prompt you to load an audio 
  10831. CD-ROM disc into the CD-ROM drive. 
  10832.  
  10833. After the audio script files have been completed, the CD-ROM drive will eject 
  10834. the CD-ROM disc.  The command file will then ask you to change the CD-ROM disc 
  10835. and load a data type or media CD-ROM disc.  Press Enter and the command file 
  10836. will continue running the script files until they are all completed.  To run 
  10837. only the audio script files, type in TESTAUD, or to run the media script files, 
  10838. type in TESTMED. 
  10839.  
  10840. The SETINFO command file will set up the necessary information that is needed 
  10841. for the CD-ROM script files.  The command file will ask the following two 
  10842. questions: 
  10843.  
  10844. ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  10845.  
  10846.                  PLEASE ANSWER THE FOLLOWING QUESTIONS.
  10847.  
  10848.         PLEASE ENTER IN THE DRIVE LETTER OF YOUR CD-ROM, FOLLOWED
  10849.         BY A COLON.  ex E:?  e:
  10850.  
  10851.         PLEASE ENTER THE NAME OF A DATA FILE ON THE CD-ROM DATA DISC.
  10852.         THE FILE NEEDS TO BE AT LEAST 100,000 BYTES IN LENGTH.
  10853.         PLEASE ENTER FILE NAME IN AS SHOWN BELOW.
  10854.  
  10855.         EXAMPLE   \FILENAME  OR  \DIRECTORY\FILENAME
  10856.  
  10857.         PLEASE ENTER FILE NAME:?  \minstall.exe
  10858.  
  10859. ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  10860.  
  10861. After this information is entered, the command file will store this information 
  10862. in three different files:  SYSINFO.TXT, SYSINFO2.TXT, and SYSINFO3.TXT. The 
  10863. contents of the three files are the same. 
  10864.  
  10865. ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  10866.  
  10867.            CD SET DEVICENAME=E:
  10868.            CD SET FILENAME=E:\\minstall.exe
  10869.  
  10870. ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  10871.  
  10872.  
  10873. ΓòÉΓòÉΓòÉ 16.4.1. DDTT CD-ROM Test Grammar Function Calls ΓòÉΓòÉΓòÉ
  10874.  
  10875. The following is a list of CD-ROM Test Grammar Function Calls: 
  10876.  
  10877.    o  CDROM_OPEN 
  10878.    o  CDROM_CLOSE 
  10879.    o  CDROM_QUERYDRIVELETTER 
  10880.    o  CDROM_EJECT 
  10881.    o  CDROM_LOCKDOOR 
  10882.    o  CDROM_UNLOCKDOOR 
  10883.    o  CDROM_QUERYAUDIODISCINFO 
  10884.    o  CDROM_QUERYAUDIOSTATUS 
  10885.    o  CDROM_QUERYDRIVERINFO 
  10886.    o  CDROM_QSECTORINFO 
  10887.    o  CDROM_QUERYVOLUMESIZE 
  10888.    o  CDROM_QUERYAUDIOTRACKINFO 
  10889.    o  CDROM_QUERYSTATUS 
  10890.    o  CDROM_QUERYUPC 
  10891.    o  CDROM_QUERYCHANINFO 
  10892.    o  CDROM_QUERYAUDIOCHANINFO 
  10893.    o  CDROM_AUDIOCHANINFO 
  10894.    o  CDROM_RESET 
  10895.    o  CDROM_STOPAUDIO 
  10896.    o  CDROM_RESUMEAUDIO 
  10897.    o  CDROM_PLAYAUDIO 
  10898.    o  CDROM_SEEK 
  10899.    o  CDROM_DRIVELOCATION 
  10900.    o  CDROM_READFILE 
  10901.    o  CDROM_READ2048 
  10902.    o  CDROM_READ2 352 
  10903.    o  CDROM_READPRE2 352 
  10904.  
  10905.  
  10906. ΓòÉΓòÉΓòÉ 16.4.1.1. CDROM_OPEN ΓòÉΓòÉΓòÉ
  10907.  
  10908. This function opens the CD-ROM. 
  10909.  
  10910.  
  10911. ΓòÉΓòÉΓòÉ 16.4.1.1.1. Input Parameter Keywords ΓòÉΓòÉΓòÉ
  10912.  
  10913. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  10914. ΓöéKeyword                       ΓöéType   ΓöéDescription                   Γöé
  10915. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  10916. ΓöéDEVICENAME                    ΓöéSTRING ΓöéDrive letter of CD-ROM        Γöé
  10917. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  10918.  
  10919.  
  10920. ΓòÉΓòÉΓòÉ 16.4.1.1.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  10921.  
  10922. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  10923. ΓöéKeyword                       ΓöéType   ΓöéDescription                   Γöé
  10924. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  10925. Γöé$DRIVES                       ΓöéNUM    ΓöéNumber of CD-ROM drives in theΓöé
  10926. Γöé                              Γöé       Γöésystem under test             Γöé
  10927. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  10928. Γöé$FIRSTCD                      ΓöéNUM    ΓöéDrive number for CD-ROM drive Γöé
  10929. Γöé                              Γöé       Γöéin the system                 Γöé
  10930. Γöé                              Γöé       ΓöéWhere:                        Γöé
  10931. Γöé                              Γöé       Γöé00=Drive a                    Γöé
  10932. Γöé                              Γöé       Γöé01=Drive b                    Γöé
  10933. Γöé                              Γöé       Γöé02=Drive c, and so on.        Γöé
  10934. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  10935.  
  10936.  
  10937. ΓòÉΓòÉΓòÉ 16.4.1.1.3. Logged Data ΓòÉΓòÉΓòÉ
  10938.  
  10939.  
  10940. None. 
  10941.  
  10942.  
  10943. ΓòÉΓòÉΓòÉ 16.4.1.2. CDROM_CLOSE ΓòÉΓòÉΓòÉ
  10944.  
  10945. This function closes the CD-ROM. 
  10946.  
  10947.  
  10948. ΓòÉΓòÉΓòÉ 16.4.1.2.1. Input Parameter Keywords ΓòÉΓòÉΓòÉ
  10949.  
  10950. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  10951. ΓöéKeyword                       ΓöéType   ΓöéDescription                   Γöé
  10952. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  10953. ΓöéDRIVEHANDLE                   ΓöéNUM    ΓöéDrive handle for CD-ROM drive Γöé
  10954. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  10955.  
  10956.  
  10957. ΓòÉΓòÉΓòÉ 16.4.1.2.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  10958.  
  10959.  
  10960. None. 
  10961.  
  10962.  
  10963. ΓòÉΓòÉΓòÉ 16.4.1.2.3. Logged Data ΓòÉΓòÉΓòÉ
  10964.  
  10965.  
  10966. None. 
  10967.  
  10968.  
  10969. ΓòÉΓòÉΓòÉ 16.4.1.3. CDROM_QUERYDRIVELETTER ΓòÉΓòÉΓòÉ
  10970.  
  10971. Category 82h Function 60h - Return Drive-Letter Information 
  10972.  
  10973. This function queries the CD-ROM drive letter from the system. 
  10974.  
  10975.  
  10976. ΓòÉΓòÉΓòÉ 16.4.1.3.1. Required Input Parameter Keywords ΓòÉΓòÉΓòÉ
  10977.  
  10978. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  10979. ΓöéKeyword                       ΓöéType   ΓöéDescription                   Γöé
  10980. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  10981. ΓöéDRIVEHANDLE                   ΓöéNUM    ΓöéDrive handle for CD-ROM drive Γöé
  10982. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  10983.  
  10984.  
  10985. ΓòÉΓòÉΓòÉ 16.4.1.3.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  10986.  
  10987. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  10988. ΓöéKeyword                       ΓöéType   ΓöéDescription                   Γöé
  10989. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  10990. Γöé$DRIVES                       ΓöéNUM    ΓöéNumber of CD-ROM drives in theΓöé
  10991. Γöé                              Γöé       Γöésystem under test             Γöé
  10992. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  10993. Γöé$FIRSTCD                      ΓöéNUM    ΓöéDrive number for CD-ROM drive Γöé
  10994. Γöé                              Γöé       Γöéin the system.                Γöé
  10995. Γöé                              Γöé       ΓöéWhere                         Γöé
  10996. Γöé                              Γöé       Γöé00=Drive a                    Γöé
  10997. Γöé                              Γöé       Γöé01=Drive b                    Γöé
  10998. Γöé                              Γöé       Γöé02=Drive c, and so on.        Γöé
  10999. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  11000.  
  11001.  
  11002. ΓòÉΓòÉΓòÉ 16.4.1.3.3. Logged Data ΓòÉΓòÉΓòÉ
  11003.  
  11004.  
  11005. None. 
  11006.  
  11007.  
  11008. ΓòÉΓòÉΓòÉ 16.4.1.4. CDROM_EJECT ΓòÉΓòÉΓòÉ
  11009.  
  11010. Category 80h Function 44h - Eject Disc 
  11011.  
  11012. This function ejects the CD-ROM disc from the CD-ROM drive. 
  11013.  
  11014.  
  11015. ΓòÉΓòÉΓòÉ 16.4.1.4.1. Required Input Parameter Keywords ΓòÉΓòÉΓòÉ
  11016.  
  11017. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  11018. ΓöéKeyword                       ΓöéType   ΓöéDescription                   Γöé
  11019. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  11020. ΓöéDRIVEHANDLE                   ΓöéNUM    ΓöéDrive handle for CD-ROM drive Γöé
  11021. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  11022.  
  11023.  
  11024. ΓòÉΓòÉΓòÉ 16.4.1.4.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  11025.  
  11026.  
  11027. None. 
  11028.  
  11029.  
  11030. ΓòÉΓòÉΓòÉ 16.4.1.4.3. Logged Data ΓòÉΓòÉΓòÉ
  11031.  
  11032.  
  11033. None. 
  11034.  
  11035.  
  11036. ΓòÉΓòÉΓòÉ 16.4.1.5. CDROM_LOCKDOOR ΓòÉΓòÉΓòÉ
  11037.  
  11038. Category 80h Function 46h - Lock Door 
  11039.  
  11040. This function locks the CD-ROM drive door. 
  11041.  
  11042.  
  11043. ΓòÉΓòÉΓòÉ 16.4.1.5.1. Required Input Parameter Keywords ΓòÉΓòÉΓòÉ
  11044.  
  11045. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  11046. ΓöéKeyword                       ΓöéType   ΓöéDescription                   Γöé
  11047. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  11048. ΓöéDRIVEHANDLE                   ΓöéNUM    ΓöéDrive handle for CD-ROM drive Γöé
  11049. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  11050.  
  11051.  
  11052. ΓòÉΓòÉΓòÉ 16.4.1.5.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  11053.  
  11054.  
  11055. None. 
  11056.  
  11057.  
  11058. ΓòÉΓòÉΓòÉ 16.4.1.5.3. Logged Data ΓòÉΓòÉΓòÉ
  11059.  
  11060.  
  11061. None. 
  11062.  
  11063.  
  11064. ΓòÉΓòÉΓòÉ 16.4.1.6. CDROM_UNLOCKDOOR ΓòÉΓòÉΓòÉ
  11065.  
  11066. Category 80h Function 46h - Unlock Door 
  11067.  
  11068. This function unlocks the CD-ROM drive door. 
  11069.  
  11070.  
  11071. ΓòÉΓòÉΓòÉ 16.4.1.6.1. Required Input Parameter Keywords ΓòÉΓòÉΓòÉ
  11072.  
  11073. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  11074. ΓöéKeyword                       ΓöéType   ΓöéDescription                   Γöé
  11075. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  11076. ΓöéDRIVEHANDLE                   ΓöéNUM    ΓöéDrive handle for CD-ROM drive Γöé
  11077. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  11078.  
  11079.  
  11080. ΓòÉΓòÉΓòÉ 16.4.1.6.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  11081.  
  11082.  
  11083. None. 
  11084.  
  11085.  
  11086. ΓòÉΓòÉΓòÉ 16.4.1.6.3. Logged Data ΓòÉΓòÉΓòÉ
  11087.  
  11088.  
  11089. None. 
  11090.  
  11091.  
  11092. ΓòÉΓòÉΓòÉ 16.4.1.7. CDROM_QUERYAUDIODISCINFO ΓòÉΓòÉΓòÉ
  11093.  
  11094. Category 81h Function 61h - Return Audio-Disc Information 
  11095.  
  11096. This function returns the first and last track numbers.  This function also 
  11097. returns the Redbook address for leading track. 
  11098.  
  11099.  
  11100. ΓòÉΓòÉΓòÉ 16.4.1.7.1. Required Input Parameter Keywords ΓòÉΓòÉΓòÉ
  11101.  
  11102. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  11103. ΓöéKeyword                       ΓöéType   ΓöéDescription                   Γöé
  11104. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  11105. ΓöéDRIVEHANDLE                   ΓöéNUM    ΓöéDrive handle for CD-ROM drive Γöé
  11106. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  11107.  
  11108.  
  11109. ΓòÉΓòÉΓòÉ 16.4.1.7.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  11110.  
  11111. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  11112. ΓöéKeyword                       ΓöéType   ΓöéDescription                   Γöé
  11113. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  11114. ΓöéHIGHTRACK                     ΓöéNUM    ΓöéHighest track number          Γöé
  11115. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  11116. ΓöéLOWTRACK                      ΓöéNUM    ΓöéLowest track number           Γöé
  11117. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  11118.  
  11119.  
  11120. ΓòÉΓòÉΓòÉ 16.4.1.7.3. Logged Data ΓòÉΓòÉΓòÉ
  11121.  
  11122.  
  11123. Highest track number 
  11124. Lowest track number 
  11125. Starting point of lead-out track 
  11126.  
  11127.  
  11128. ΓòÉΓòÉΓòÉ 16.4.1.8. CDROM_QUERYAUDIOSTATUS ΓòÉΓòÉΓòÉ
  11129.  
  11130. Category 81h Function 65h - Audio-Status Information 
  11131.  
  11132. This function returns the audio status, and the starting and ending locations 
  11133. of the last playback. 
  11134.  
  11135.  
  11136. ΓòÉΓòÉΓòÉ 16.4.1.8.1. Required Input Parameter Keywords ΓòÉΓòÉΓòÉ
  11137.  
  11138. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  11139. ΓöéKeyword                       ΓöéType   ΓöéDescription                   Γöé
  11140. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  11141. ΓöéDRIVEHANDLE                   ΓöéNUM    ΓöéDrive handle for CD-ROM drive Γöé
  11142. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  11143.  
  11144.  
  11145. ΓòÉΓòÉΓòÉ 16.4.1.8.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  11146.  
  11147.  
  11148. None. 
  11149.  
  11150.  
  11151. ΓòÉΓòÉΓòÉ 16.4.1.8.3. Logged Data ΓòÉΓòÉΓòÉ
  11152.  
  11153.  
  11154. Audio status bits 
  11155. Starting location of last play audio or resume audio command 
  11156. Ending location of last play audio or resume audio command 
  11157.  
  11158.  
  11159. ΓòÉΓòÉΓòÉ 16.4.1.9. CDROM_QUERYDRIVERINFO ΓòÉΓòÉΓòÉ
  11160.  
  11161. Category 80h Function 61h - Identify CD-ROM Driver 
  11162.  
  11163. This function identifies the device driver as a valid CD-ROM driver. 
  11164.  
  11165.  
  11166. ΓòÉΓòÉΓòÉ 16.4.1.9.1. Required Input Parameter Keywords ΓòÉΓòÉΓòÉ
  11167.  
  11168. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  11169. ΓöéKeyword                       ΓöéType   ΓöéDescription                   Γöé
  11170. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  11171. ΓöéDRIVEHANDLE                   ΓöéNUM    ΓöéDrive handle for CD-ROM drive Γöé
  11172. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  11173.  
  11174.  
  11175. ΓòÉΓòÉΓòÉ 16.4.1.9.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  11176.  
  11177.  
  11178. None. 
  11179.  
  11180.  
  11181. ΓòÉΓòÉΓòÉ 16.4.1.9.3. Logged Data ΓòÉΓòÉΓòÉ
  11182.  
  11183.  
  11184. CD-ROM device driver ID 
  11185.  
  11186.  
  11187. ΓòÉΓòÉΓòÉ 16.4.1.10. CDROM_QSECTORINFO ΓòÉΓòÉΓòÉ
  11188.  
  11189. Category 80h Function 63h - Return Sector Size 
  11190.  
  11191. This function returns the number of bytes-per-sector that the device driver 
  11192. supports. 
  11193.  
  11194.  
  11195. ΓòÉΓòÉΓòÉ 16.4.1.10.1. Required Input Parameter Keywords ΓòÉΓòÉΓòÉ
  11196.  
  11197. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  11198. ΓöéKeyword                       ΓöéType   ΓöéDescription                   Γöé
  11199. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  11200. ΓöéDRIVEHANDLE                   ΓöéNUM    ΓöéDrive handle for CD-ROM drive Γöé
  11201. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  11202.  
  11203.  
  11204. ΓòÉΓòÉΓòÉ 16.4.1.10.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  11205.  
  11206.  
  11207. None. 
  11208.  
  11209.  
  11210. ΓòÉΓòÉΓòÉ 16.4.1.10.3. Logged Data ΓòÉΓòÉΓòÉ
  11211.  
  11212.  
  11213. Size of sectors on disc 
  11214.  
  11215.  
  11216. ΓòÉΓòÉΓòÉ 16.4.1.11. CDROM_QUERYVOLUMESIZE ΓòÉΓòÉΓòÉ
  11217.  
  11218. Category 80h Function 78h - Return Volume Size 
  11219.  
  11220. This function returns the total number of accessible sectors on the disc. 
  11221.  
  11222.  
  11223. ΓòÉΓòÉΓòÉ 16.4.1.11.1. Required Input Parameter Keywords ΓòÉΓòÉΓòÉ
  11224.  
  11225. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  11226. ΓöéKeyword                       ΓöéType   ΓöéDescription                   Γöé
  11227. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  11228. ΓöéDRIVEHANDLE                   ΓöéNUM    ΓöéDrive handle for CD-ROM drive Γöé
  11229. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  11230.  
  11231.  
  11232. ΓòÉΓòÉΓòÉ 16.4.1.11.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  11233.  
  11234.  
  11235. None. 
  11236.  
  11237.  
  11238. ΓòÉΓòÉΓòÉ 16.4.1.11.3. Logged Data ΓòÉΓòÉΓòÉ
  11239.  
  11240.  
  11241. Volume size in sectors 
  11242.  
  11243.  
  11244. ΓòÉΓòÉΓòÉ 16.4.1.12. CDROM_QUERYAUDIOTRACKINFO ΓòÉΓòÉΓòÉ
  11245.  
  11246. Category 81h Function 62h - Return Audio-Track Information 
  11247.  
  11248. This function returns the Redbook address for the starting point and 
  11249. track-control information for a specified track. 
  11250.  
  11251.  
  11252. ΓòÉΓòÉΓòÉ 16.4.1.12.1. Required Input Parameter Keywords ΓòÉΓòÉΓòÉ
  11253.  
  11254. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  11255. ΓöéKeyword                       ΓöéType   ΓöéDescription                   Γöé
  11256. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  11257. ΓöéDRIVEHANDLE                   ΓöéNUM    ΓöéDrive handle for CD-ROM drive Γöé
  11258. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  11259. ΓöéTRACK                         ΓöéNUM    ΓöéTrack number                  Γöé
  11260. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  11261.  
  11262.  
  11263. ΓòÉΓòÉΓòÉ 16.4.1.12.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  11264.  
  11265.  
  11266. None. 
  11267.  
  11268.  
  11269. ΓòÉΓòÉΓòÉ 16.4.1.12.3. Logged Data ΓòÉΓòÉΓòÉ
  11270.  
  11271.  
  11272. Starting point of track 
  11273. Track-control information 
  11274.  
  11275.  
  11276. ΓòÉΓòÉΓòÉ 16.4.1.13. CDROM_QUERYSTATUS ΓòÉΓòÉΓòÉ
  11277.  
  11278. Category 80h Function 60h - Device Status 
  11279.  
  11280. This function returns the device driver status codes. 
  11281.  
  11282.  
  11283. ΓòÉΓòÉΓòÉ 16.4.1.13.1. Required Input Parameter Keywords ΓòÉΓòÉΓòÉ
  11284.  
  11285. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  11286. ΓöéKeyword                       ΓöéType   ΓöéDescription                   Γöé
  11287. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  11288. ΓöéDRIVEHANDLE                   ΓöéNUM    ΓöéDrive handle for CD-ROM drive Γöé
  11289. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  11290.  
  11291.  
  11292. ΓòÉΓòÉΓòÉ 16.4.1.13.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  11293.  
  11294.  
  11295. None. 
  11296.  
  11297.  
  11298. ΓòÉΓòÉΓòÉ 16.4.1.13.3. Logged Data ΓòÉΓòÉΓòÉ
  11299.  
  11300.  
  11301. CD-ROM drive status information 
  11302.  
  11303.  
  11304. ΓòÉΓòÉΓòÉ 16.4.1.14. CDROM_QUERYUPC ΓòÉΓòÉΓòÉ
  11305.  
  11306. Category 80h Function 79h - Get UPC 
  11307.  
  11308. This function returns the UPC code for the CD-ROM disc. 
  11309.  
  11310.  
  11311. ΓòÉΓòÉΓòÉ 16.4.1.14.1. Required Input Parameter Keywords ΓòÉΓòÉΓòÉ
  11312.  
  11313. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  11314. ΓöéKeyword                       ΓöéType   ΓöéDescription                   Γöé
  11315. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  11316. ΓöéDRIVEHANDLE                   ΓöéNUM    ΓöéDrive handle for CD-ROM drive Γöé
  11317. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  11318.  
  11319.  
  11320. ΓòÉΓòÉΓòÉ 16.4.1.14.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  11321.  
  11322.  
  11323. None. 
  11324.  
  11325.  
  11326. ΓòÉΓòÉΓòÉ 16.4.1.14.3. Logged Data ΓòÉΓòÉΓòÉ
  11327.  
  11328.  
  11329. Control and ADR byte 
  11330. Universal product code 
  11331. Frame 
  11332.  
  11333.  
  11334. ΓòÉΓòÉΓòÉ 16.4.1.15. CDROM_QUERYCHANINFO ΓòÉΓòÉΓòÉ
  11335.  
  11336. Category 81h Function 63h - Return Audio-Subchannel Q Information 
  11337.  
  11338. This function returns track and control information while the drive is playing 
  11339. an audio CD-ROM disc. 
  11340.  
  11341.  
  11342. ΓòÉΓòÉΓòÉ 16.4.1.15.1. Required Input Parameter Keywords ΓòÉΓòÉΓòÉ
  11343.  
  11344. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  11345. ΓöéKeyword                       ΓöéType   ΓöéDescription                   Γöé
  11346. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  11347. ΓöéDRIVEHANDLE                   ΓöéNUM    ΓöéDrive handle for CD-ROM drive Γöé
  11348. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  11349.  
  11350.  
  11351. ΓòÉΓòÉΓòÉ 16.4.1.15.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  11352.  
  11353.  
  11354. None. 
  11355.  
  11356.  
  11357. ΓòÉΓòÉΓòÉ 16.4.1.15.3. Logged Data ΓòÉΓòÉΓòÉ
  11358.  
  11359.  
  11360. Control and ADR byte 
  11361. Track number 
  11362. Index 
  11363. Running time within a track, minutes 
  11364. Running time within a track, seconds 
  11365. Running time within a track, frames 
  11366. Running time within a disc, minutes 
  11367. Running time within a disc, seconds 
  11368. Running time within a disc, frames 
  11369.  
  11370.  
  11371. ΓòÉΓòÉΓòÉ 16.4.1.16. CDROM_QUERYAUDIOCHANINFO ΓòÉΓòÉΓòÉ
  11372.  
  11373. Category 81h Function 40h - Audio Channel Control 
  11374.  
  11375. This function returns the current settings of the audio channel controls. 
  11376.  
  11377.  
  11378. ΓòÉΓòÉΓòÉ 16.4.1.16.1. Required Input Parameter Keywords ΓòÉΓòÉΓòÉ
  11379.  
  11380. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  11381. ΓöéKeyword                       ΓöéType   ΓöéDescription                   Γöé
  11382. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  11383. ΓöéDRIVEHANDLE                   ΓöéNUM    ΓöéDrive handle for CD-ROM drive Γöé
  11384. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  11385.  
  11386.  
  11387. ΓòÉΓòÉΓòÉ 16.4.1.16.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  11388.  
  11389.  
  11390. None. 
  11391.  
  11392.  
  11393. ΓòÉΓòÉΓòÉ 16.4.1.16.3. Logged Data ΓòÉΓòÉΓòÉ
  11394.  
  11395.  
  11396. Input channel for output channel 0 
  11397. Volume control for output channel 0 
  11398. Input channel for output channel 1 
  11399. Volume control for output channel 1 
  11400. Input channel for output channel 2 
  11401. Volume control for output channel 2 
  11402. Input channel for output channel 3 
  11403. Volume control for output channel 3 
  11404.  
  11405.  
  11406. ΓòÉΓòÉΓòÉ 16.4.1.17. CDROM_AUDIOCHANINFO ΓòÉΓòÉΓòÉ
  11407.  
  11408. This function sets the current settings of the audio channel controls. 
  11409.  
  11410.  
  11411. ΓòÉΓòÉΓòÉ 16.4.1.17.1. Required Input Parameter Keywords ΓòÉΓòÉΓòÉ
  11412.  
  11413. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  11414. ΓöéKeyword                       ΓöéType   ΓöéDescription                   Γöé
  11415. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  11416. ΓöéDRIVEHANDLE                   ΓöéNUM    ΓöéDrive handle for CD-ROM drive Γöé
  11417. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  11418. ΓöéVOL1                          ΓöéNUM    ΓöéVolume for channel 0          Γöé
  11419. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  11420. ΓöéVOL2                          ΓöéNUM    ΓöéVolume for channel 1          Γöé
  11421. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  11422. ΓöéVOL3                          ΓöéNUM    ΓöéVolume for channel 2          Γöé
  11423. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  11424. ΓöéVOL4                          ΓöéNUM    ΓöéVolume for channel 3          Γöé
  11425. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  11426.  
  11427. EXAMPLE: 
  11428.  
  11429. ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  11430.  
  11431.     VOL1 = (0-255)
  11432.     VOL2 = (0-255)
  11433.     VOL3 = (0-255)
  11434.     VOL4 = (0-255)
  11435.  
  11436. ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  11437.  
  11438.  
  11439. ΓòÉΓòÉΓòÉ 16.4.1.17.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  11440.  
  11441.  
  11442. None. 
  11443.  
  11444.  
  11445. ΓòÉΓòÉΓòÉ 16.4.1.17.3. Logged Data ΓòÉΓòÉΓòÉ
  11446.  
  11447.  
  11448. None. 
  11449.  
  11450.  
  11451. ΓòÉΓòÉΓòÉ 16.4.1.18. CDROM_RESET ΓòÉΓòÉΓòÉ
  11452.  
  11453. Category 80h Function 40h - Reset Drive 
  11454.  
  11455. This function resets and reinitializes the drive and controller. 
  11456.  
  11457.  
  11458. ΓòÉΓòÉΓòÉ 16.4.1.18.1. Required Input Parameter Keywords ΓòÉΓòÉΓòÉ
  11459.  
  11460. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  11461. ΓöéKeyword                       ΓöéType   ΓöéDescription                   Γöé
  11462. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  11463. ΓöéDRIVEHANDLE                   ΓöéNUM    ΓöéDrive handle for CD-ROM drive Γöé
  11464. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  11465.  
  11466.  
  11467. ΓòÉΓòÉΓòÉ 16.4.1.18.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  11468.  
  11469.  
  11470. None. 
  11471.  
  11472.  
  11473. ΓòÉΓòÉΓòÉ 16.4.1.18.3. Logged Data ΓòÉΓòÉΓòÉ
  11474.  
  11475.  
  11476. None. 
  11477.  
  11478.  
  11479. ΓòÉΓòÉΓòÉ 16.4.1.19. CDROM_STOPAUDIO ΓòÉΓòÉΓòÉ
  11480.  
  11481. Category 81h Function 51h - Stop Audio 
  11482.  
  11483. This function cancels any active play request. 
  11484.  
  11485.  
  11486. ΓòÉΓòÉΓòÉ 16.4.1.19.1. Required Input Parameter Keywords ΓòÉΓòÉΓòÉ
  11487.  
  11488. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  11489. ΓöéKeyword                       ΓöéType   ΓöéDescription                   Γöé
  11490. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  11491. ΓöéDRIVEHANDLE                   ΓöéNUM    ΓöéDrive handle for CD-ROM drive Γöé
  11492. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  11493.  
  11494.  
  11495. ΓòÉΓòÉΓòÉ 16.4.1.19.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  11496.  
  11497.  
  11498. None. 
  11499.  
  11500.  
  11501. ΓòÉΓòÉΓòÉ 16.4.1.19.3. Logged Data ΓòÉΓòÉΓòÉ
  11502.  
  11503.  
  11504. None. 
  11505.  
  11506.  
  11507. ΓòÉΓòÉΓòÉ 16.4.1.20. CDROM_RESUMEAUDIO ΓòÉΓòÉΓòÉ
  11508.  
  11509. Category 81h Function 52h - Resume Audio 
  11510.  
  11511. This function resumes playing audio after play has been interrupted by the stop 
  11512. audio command. 
  11513.  
  11514.  
  11515. ΓòÉΓòÉΓòÉ 16.4.1.20.1. Required Input Parameter Keywords ΓòÉΓòÉΓòÉ
  11516.  
  11517. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  11518. ΓöéKeyword                       ΓöéType   ΓöéDescription                   Γöé
  11519. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  11520. ΓöéDRIVEHANDLE                   ΓöéNUM    ΓöéDrive handle for CD-ROM drive Γöé
  11521. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  11522.  
  11523.  
  11524. ΓòÉΓòÉΓòÉ 16.4.1.20.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  11525.  
  11526.  
  11527. None. 
  11528.  
  11529.  
  11530. ΓòÉΓòÉΓòÉ 16.4.1.20.3. Logged Data ΓòÉΓòÉΓòÉ
  11531.  
  11532.  
  11533. None. 
  11534.  
  11535.  
  11536. ΓòÉΓòÉΓòÉ 16.4.1.21. CDROM_PLAYAUDIO ΓòÉΓòÉΓòÉ
  11537.  
  11538. Category 81h Function 50h - Play Audio 
  11539.  
  11540. This function plays a selected audio track. The function can play audio by 
  11541. being passed a sector-start value or a time-start value. 
  11542.  
  11543.  
  11544. ΓòÉΓòÉΓòÉ 16.4.1.21.1. Required Input Parameter Keywords ΓòÉΓòÉΓòÉ
  11545.  
  11546. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  11547. ΓöéKeyword                       ΓöéType   ΓöéDescription                   Γöé
  11548. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  11549. ΓöéDRIVEHANDLE                   ΓöéNUM    ΓöéDrive handle for CD-ROM drive Γöé
  11550. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  11551. ΓöéADDRESSMODE:                  ΓöéSTRING ΓöéAddressing mode:              Γöé
  11552. Γöé                              Γöé       ΓöéLOGICAL BLOCK or REDBOOK      Γöé
  11553. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  11554. ΓöéSECTORSTART                   ΓöéNUM    ΓöéIf using logical block        Γöé
  11555. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  11556. ΓöéSECTORCOUNT                   ΓöéNUM    ΓöéIf using logical block        Γöé
  11557. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  11558. ΓöéTIMESTART                     ΓöéNUM    ΓöéIf using Redbook              Γöé
  11559. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  11560. ΓöéTIMESTOP                      ΓöéNUM    ΓöéIf using Redbook              Γöé
  11561. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  11562.  
  11563. EXAMPLE: 
  11564.  
  11565. LOGICAL BLOCK: 
  11566.  
  11567. ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  11568.  
  11569.     ADDRESSMODE=LOGICALBLOCK
  11570.     SECTORSTART=20000
  11571.     SECTORCOUNT=10000
  11572.  
  11573. ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  11574.  
  11575. EXAMPLE: 
  11576.  
  11577. REDBOOK: 
  11578.  
  11579. ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  11580.  
  11581.     ADDRESSMODE=REDBOOK
  11582.     TIMESTART=02:45:00
  11583.     TIMESTOP=05:55:00
  11584.  
  11585. ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  11586.  
  11587.  
  11588. ΓòÉΓòÉΓòÉ 16.4.1.21.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  11589.  
  11590.  
  11591. None. 
  11592.  
  11593.  
  11594. ΓòÉΓòÉΓòÉ 16.4.1.21.3. Logged Data ΓòÉΓòÉΓòÉ
  11595.  
  11596.  
  11597. None. 
  11598.  
  11599.  
  11600. ΓòÉΓòÉΓòÉ 16.4.1.22. CDROM_SEEK ΓòÉΓòÉΓòÉ
  11601.  
  11602. Category 80h Function 50h - Seek 
  11603.  
  11604. This function moves the read head to a specified block that is passed to the 
  11605. function. The function can seek a specified block by having the sector-start 
  11606. value or a time-start value. 
  11607.  
  11608.  
  11609. ΓòÉΓòÉΓòÉ 16.4.1.22.1. Required Input Parameter Keywords ΓòÉΓòÉΓòÉ
  11610.  
  11611. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  11612. ΓöéKeyword                       ΓöéType   ΓöéDescription                   Γöé
  11613. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  11614. ΓöéDRIVEHANDLE                   ΓöéNUM    ΓöéDrive handle for CD-ROM drive Γöé
  11615. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  11616. ΓöéADDRESSMODE                   ΓöéSTRING ΓöéAddressing mode:              Γöé
  11617. Γöé                              Γöé       ΓöéLOGICAL BLOCK or REDBOOK      Γöé
  11618. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  11619. ΓöéSECTORSTART                   ΓöéNUM    ΓöéIf using logical block        Γöé
  11620. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  11621. ΓöéSECTORCOUNT                   ΓöéNUM    ΓöéIf using logical block        Γöé
  11622. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  11623. ΓöéTIMESTART                     ΓöéNUM    ΓöéIf using Redbook              Γöé
  11624. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  11625. ΓöéTIMESTOP                      ΓöéNUM    ΓöéIf using Redbook              Γöé
  11626. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  11627.  
  11628. EXAMPLE: 
  11629.  
  11630. LOGICAL BLOCK 
  11631.  
  11632. ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  11633.  
  11634.     ADDRESSMODE=LOGICALBLOCK
  11635.     SECTORSTART=20000
  11636.     SECTORCOUNT=10000
  11637.  
  11638. ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  11639.  
  11640. EXAMPLE: 
  11641.  
  11642. REDBOOK 
  11643.  
  11644. ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  11645.  
  11646.     ADDRESSMODE=REDBOOK
  11647.     TIMESTART=02:45:00
  11648.     TIMESTOP=05:55:00
  11649.  
  11650. ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  11651.  
  11652.  
  11653. ΓòÉΓòÉΓòÉ 16.4.1.22.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  11654.  
  11655.  
  11656. None. 
  11657.  
  11658.  
  11659. ΓòÉΓòÉΓòÉ 16.4.1.22.3. Logged Data ΓòÉΓòÉΓòÉ
  11660.  
  11661.  
  11662. None. 
  11663.  
  11664.  
  11665. ΓòÉΓòÉΓòÉ 16.4.1.23. CDROM_DRIVELOCATION ΓòÉΓòÉΓòÉ
  11666.  
  11667. Category 80h Function 70h - Location of Drive Head 
  11668.  
  11669. This function returns the current drive-head location and returns the value in 
  11670. either addressing mode. 
  11671.  
  11672.  
  11673. ΓòÉΓòÉΓòÉ 16.4.1.23.1. Required Input Parameter Keywords ΓòÉΓòÉΓòÉ
  11674.  
  11675. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  11676. ΓöéKeyword                       ΓöéType   ΓöéDescription                   Γöé
  11677. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  11678. ΓöéDRIVEHANDLE                   ΓöéNUM    ΓöéDrive handle for CD-ROM drive Γöé
  11679. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  11680. ΓöéADDRESSMODE                   ΓöéSTRING ΓöéAddressing mode               Γöé
  11681. Γöé                              Γöé       ΓöéLOGICAL BLOCK or REDBOOK      Γöé
  11682. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  11683.  
  11684. EXAMPLE: 
  11685.  
  11686. LOGICAL BLOCK 
  11687.  
  11688. ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  11689.  
  11690.     ADDRESSMODE=LOGICALBLOCK
  11691.  
  11692. ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  11693.  
  11694. EXAMPLE: 
  11695.  
  11696. REDBOOK 
  11697.  
  11698. ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  11699.  
  11700.     ADDRESSMODE=REDBOOK
  11701.  
  11702. ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  11703.  
  11704.  
  11705. ΓòÉΓòÉΓòÉ 16.4.1.23.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  11706.  
  11707.  
  11708. None. 
  11709.  
  11710.  
  11711. ΓòÉΓòÉΓòÉ 16.4.1.23.3. Logged Data ΓòÉΓòÉΓòÉ
  11712.  
  11713.  
  11714. Location of drive head 
  11715.  
  11716.  
  11717. ΓòÉΓòÉΓòÉ 16.4.1.24. CDROM_READFILE ΓòÉΓòÉΓòÉ
  11718.  
  11719. DOS READ FILE 
  11720.  
  11721. This function reads a selected file from a CD-ROM disc and reads in the number 
  11722. of bytes that are passed to the function. 
  11723.  
  11724.  
  11725. ΓòÉΓòÉΓòÉ 16.4.1.24.1. Required Input Parameter Keywords ΓòÉΓòÉΓòÉ
  11726.  
  11727. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  11728. ΓöéKeyword                       ΓöéType   ΓöéDescription                   Γöé
  11729. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  11730. ΓöéDRIVEHANDLE                   ΓöéNUM    ΓöéDrive handle for CD-ROM drive Γöé
  11731. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  11732. ΓöéFILENAME                      ΓöéSTRING ΓöéName of file to read          Γöé
  11733. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  11734. ΓöéBYTESTART                     ΓöéNUM    ΓöéStarting byte to read         Γöé
  11735. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  11736. ΓöéBYTECOUNT                     ΓöéNUM    ΓöéNumber of bytes to read       Γöé
  11737. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  11738. ΓöéBUFFER                        ΓöéSTRING ΓöéDDTT named buffer to read dataΓöé
  11739. Γöé                              Γöé       Γöéinto.                         Γöé
  11740. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  11741.  
  11742.  
  11743. ΓòÉΓòÉΓòÉ 16.4.1.24.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  11744.  
  11745.  
  11746. None. 
  11747.  
  11748.  
  11749. ΓòÉΓòÉΓòÉ 16.4.1.24.3. Logged Data ΓòÉΓòÉΓòÉ
  11750.  
  11751.  
  11752. Byte(s) read 
  11753.  
  11754.  
  11755. ΓòÉΓòÉΓòÉ 16.4.1.25. CDROM_READ2048 ΓòÉΓòÉΓòÉ
  11756.  
  11757. DOS READ 
  11758.  
  11759. This function reads a selected file from a CD-ROM disc and simultaneously reads 
  11760. in a group of sectors. Each sector contains 2048 bytes. The number of sectors 
  11761. to read need to be passed to the function. 
  11762.  
  11763.  
  11764. ΓòÉΓòÉΓòÉ 16.4.1.25.1. Required Input Parameter Keywords ΓòÉΓòÉΓòÉ
  11765.  
  11766. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  11767. ΓöéKeyword                       ΓöéType   ΓöéDescription                   Γöé
  11768. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  11769. ΓöéDRIVEHANDLE                   ΓöéNUM    ΓöéDrive handle for CD-ROM drive Γöé
  11770. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  11771. ΓöéADDRESSMODE                   ΓöéSTRING ΓöéAddressing mode:              Γöé
  11772. Γöé                              Γöé       ΓöéLOGICAL BLOCK (only)          Γöé
  11773. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  11774. ΓöéSECTORSTART                   ΓöéNUM    ΓöéStarting sector to read       Γöé
  11775. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  11776. ΓöéSECTORCOUNT                   ΓöéNUM    ΓöéNumber of sectors to read     Γöé
  11777. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  11778. ΓöéBUFFER                        ΓöéSTRING ΓöéDDTT named buffer to read dataΓöé
  11779. Γöé                              Γöé       Γöéinto.                         Γöé
  11780. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  11781.  
  11782. EXAMPLE: 
  11783.  
  11784. LOGICAL BLOCK 
  11785.  
  11786. ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  11787.  
  11788.     ADDRESSMODE=LOGICALBLOCK
  11789.     SECTORSTART=20000
  11790.     SECTORCOUNT=10000
  11791.  
  11792. ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  11793.  
  11794.  
  11795. ΓòÉΓòÉΓòÉ 16.4.1.25.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  11796.  
  11797.  
  11798. None. 
  11799.  
  11800.  
  11801. ΓòÉΓòÉΓòÉ 16.4.1.25.3. Logged Data ΓòÉΓòÉΓòÉ
  11802.  
  11803.  
  11804. Byte sync 
  11805. Byte header 
  11806. Byte data area 
  11807. Byte EDC/ECC area 
  11808.  
  11809.  
  11810. ΓòÉΓòÉΓòÉ 16.4.1.26. CDROM_READ2352 ΓòÉΓòÉΓòÉ
  11811.  
  11812. Category 80h Function 72h - Read Long 
  11813.  
  11814. This function reads a selected file from a CD-ROM disc and reads in a group of 
  11815. sectors at one time. This function reads 2 352 bytes from each sector.  Also, 
  11816. this function is the same as READ2048, except it also reads in all of the 
  11817. sector header information. The number of sectors to read need to be passed to 
  11818. the function. 
  11819.  
  11820.  
  11821. ΓòÉΓòÉΓòÉ 16.4.1.27. Required Input Parameter Keywords ΓòÉΓòÉΓòÉ
  11822.  
  11823. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  11824. ΓöéKeyword                       ΓöéType   ΓöéDescription                   Γöé
  11825. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  11826. ΓöéDRIVEHANDLE                   ΓöéNUM    ΓöéDrive handle for CD-ROM drive Γöé
  11827. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  11828. ΓöéADDRESSMODE                   ΓöéSTRING ΓöéAddressing mode:              Γöé
  11829. Γöé                              Γöé       ΓöéLOGICAL BLOCK (only)          Γöé
  11830. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  11831. ΓöéSECTORSTART                   ΓöéNUM    ΓöéStarting sector to read       Γöé
  11832. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  11833. ΓöéSECTORCOUNT                   ΓöéNUM    ΓöéNumber of sectors to read     Γöé
  11834. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  11835. ΓöéBUFFER                        ΓöéSTRING ΓöéDDTT named buffer to read dataΓöé
  11836. Γöé                              Γöé       Γöéinto                          Γöé
  11837. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  11838.  
  11839. EXAMPLE: 
  11840.  
  11841. LOGICAL BLOCK 
  11842.  
  11843. ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  11844.  
  11845.     ADDRESSMODE=LOGICALBLOCK
  11846.     SECTORSTART=20000
  11847.     SECTORCOUNT=10000
  11848.  
  11849. ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  11850.  
  11851.  
  11852. ΓòÉΓòÉΓòÉ 16.4.1.27.1. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  11853.  
  11854.  
  11855. None. 
  11856.  
  11857.  
  11858. ΓòÉΓòÉΓòÉ 16.4.1.27.2. Logged Data ΓòÉΓòÉΓòÉ
  11859.  
  11860.  
  11861. Byte sync 
  11862. Byte header 
  11863. Byte data area 
  11864. Byte EDC/ECC area 
  11865.  
  11866.  
  11867. ΓòÉΓòÉΓòÉ 16.4.1.28. CDROM_READPRE2352 ΓòÉΓòÉΓòÉ
  11868.  
  11869. Category 81h Function 71h - Read Long Prefetch 
  11870.  
  11871. This function reads a selected file from a CD-ROM disc and reads in a group of 
  11872. sectors at one time. This function reads 2 352 bytes from each sector. This 
  11873. function is the same as READ2 352, except it prefetches the sector information. 
  11874. This will read in the sector information in anticipation of a system request 
  11875. for the sector information. The number of sectors to read need to be passed to 
  11876. the function. 
  11877.  
  11878.  
  11879. ΓòÉΓòÉΓòÉ 16.4.1.28.1. Required Input Parameter Keywords ΓòÉΓòÉΓòÉ
  11880.  
  11881. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  11882. ΓöéKeyword                       ΓöéType   ΓöéDescription                   Γöé
  11883. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  11884. ΓöéDRIVEHANDLE                   ΓöéNUM    ΓöéDrive handle for CD-ROM drive Γöé
  11885. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  11886. ΓöéADDRESSMODE                   ΓöéSTRING ΓöéAddressing mode:              Γöé
  11887. Γöé                              Γöé       ΓöéLOGICAL BLOCK or REDBOOK      Γöé
  11888. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  11889. ΓöéSECTORSTART                   ΓöéNUM    ΓöéStarting sector to read       Γöé
  11890. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  11891. ΓöéSECTORCOUNT                   ΓöéNUM    ΓöéNumber of sectors to read     Γöé
  11892. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  11893.  
  11894. EXAMPLE: 
  11895.  
  11896. LOGICAL BLOCK 
  11897.  
  11898. ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  11899.  
  11900.     ADDRESSMODE=LOGICALBLOCK
  11901.     SECTORSTART=20000
  11902.     SECTORCOUNT=10000
  11903.  
  11904. ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  11905.  
  11906.  
  11907. ΓòÉΓòÉΓòÉ 16.4.1.28.2. Output Parameter Keywords ΓòÉΓòÉΓòÉ
  11908.  
  11909.  
  11910. None. 
  11911.  
  11912.  
  11913. ΓòÉΓòÉΓòÉ 16.4.1.28.3. Logged Data ΓòÉΓòÉΓòÉ
  11914.  
  11915.  
  11916. Byte sync 
  11917. Byte header 
  11918. Byte data area 
  11919. Byte EDC/ECC area 
  11920.  
  11921.  
  11922. ΓòÉΓòÉΓòÉ 16.5. Description of Test Cases ΓòÉΓòÉΓòÉ
  11923.  
  11924. Each of the CD-ROM test cases can be executed individually as previously 
  11925. described. The corresponding test scripts are described below.  The user is 
  11926. free to create additional tests or combine tests into multi-threaded test cases 
  11927. after becoming familiar with DDTT and the CD-ROM grammar files. 
  11928.  
  11929. All of the CD-ROM test cases use the DDTT @IMPORT command to include one or 
  11930. more of the script files: 
  11931.  
  11932.    o  SYSINFO.TXT 
  11933.  
  11934.    o  SYSINFO2.TXT 
  11935.  
  11936.    o  SYSINFO3.TXT 
  11937.  The content of the SYSINFO*.TXT files is set by the SETINFO.CMD command file. 
  11938.  SETINFO.CMD should be executed one time to establish values for the following 
  11939.  DDTT parameter keywords: 
  11940.  
  11941.    o  DEVICENAME - drive name of the CD-ROM device under test, such as E. 
  11942.  
  11943.    o  FILENAME  - path and name of a large data file, 100K bytes or larger, on 
  11944.       the media CD to be used in the tests.  Do not include the drive name as 
  11945.       part of this string. 
  11946.  The only difference between the three SYSINFO*.TXT files is the parameter 
  11947.  keywords are set for the different DDTT alias names used in the test scripts. 
  11948.  
  11949.  All test scripts close the channels opened to the CD-ROM device and verify 
  11950.  successful status return from every exercised API.  All test scripts log 
  11951.  information to a log file with the same file name and a file name extension, 
  11952.  .LOG.  When current status is queried (for example, track, channel, or drive), 
  11953.  this data is written to DDTT's output windows and to the log file.  Log files 
  11954.  can be examined after the test case has completed. 
  11955.  
  11956.  All CD-ROM play audio functions cause the CD-ROM drive to play the audio media 
  11957.  by sending the audio signal to the CD-ROM's own pre-amplified outputs.  The 
  11958.  audio is not played through the system speaker or any multi-media device. 
  11959.  
  11960.  CD-ROM's are accessed by Logical Block or Redbook format.  Logical block 
  11961.  format sequentially addresses each block on the disk starting at 0.  Redbook 
  11962.  format addresses each block using a time format of MM:SS:FF (MM represents 
  11963.  minutes from the start of the CD, SS represents seconds, and FF represents 
  11964.  frames.)  Each frame represents 1/75th of a second. 
  11965.  
  11966.  AUDCH.SCR           Sets all four audio channel volumes to a value of 150, 
  11967.                      queries the audio channel volumes and places the result in 
  11968.                      the log file. 
  11969.  
  11970.  AUDCH2.SCR          Thread 1 sets all four audio channel volumes to a value of 
  11971.                      175.  Thread 2 waits for 20 seconds, then retrieves and 
  11972.                      logs the current values for each of the audio channel 
  11973.                      volumes.  The retrieved volumes should be 175. 
  11974.  
  11975.  DRLOCSC.SCR         Queries the CD-ROM's current read head location.  The 
  11976.                      location is written in logical block format to the log 
  11977.                      file. 
  11978.  
  11979.  DRLOCTS.SCR         Queries the CD-ROM's current read head location.  The 
  11980.                      location is written in Redbook format to the log file. 
  11981.  
  11982.  EJECT.SCR           Eject the CD media from the CD-ROM drive.  On most drives, 
  11983.                      the user will have to manually reinsert the CD media 
  11984.                      before performing additional tests. 
  11985.  
  11986.  LOCK.SCR            Locks the CD media in the CD-ROM drive.  After performing 
  11987.                      this test, the user should not be able to remove the CD 
  11988.                      media by pressing the CD-ROM drive's "eject" button. 
  11989.  
  11990.  PAUDSC.SCR          (Requires an audio CD.) Plays the audio information 
  11991.                      through the CD-ROM drive output.  The media is accessed 
  11992.                      using logical block format and starts at Sector 40 000 and 
  11993.                      plays 42 000 sectors.  The channel to the CD-ROM drive is 
  11994.                      closed after two minutes or after the user provides some 
  11995.                      input to DDTT's input window.  Closing the channel does 
  11996.                      not terminate the play audio.  Each sector is 1/75th of a 
  11997.                      second; therefore, 42 000 sectors will play for 9 minutes, 
  11998.                      33 seconds.  Play should continue for that period, unless 
  11999.                      another command is sent to the CD-ROM or the media is 
  12000.                      manually ejected. 
  12001.  
  12002.  PAUDSC2.SCR         (Requires an audio CD.)  Plays the audio information 
  12003.                      through the CD-ROM drive output.  This test uses two 
  12004.                      threads that alternate playing audio.  Although only a 
  12005.                      single play audio command can be executed a given time, 
  12006.                      multiple threads should be able to send requests to the 
  12007.                      CD-ROM in an interleaved fashion.  The stop audio is used 
  12008.                      to terminate the play audio and coordinate use of the 
  12009.                      CD-ROM by two threads.  The resume audio command is used 
  12010.                      to continue playing the CD where it last stopped without 
  12011.                      head re-positioning, thus, Thread 2 should continue from 
  12012.                      where Thread 1 left the head. 
  12013.  
  12014.  PAUDSC3.SCR         (Requires an audio CD.)  Plays the audio information 
  12015.                      through the CD-ROM drive output.  Using logical block 
  12016.                      address format, play 42 000 sectors starting at sector 
  12017.                      40 000.  Repeat this operation three times in a loop. 
  12018.                      Play is interrupted after 20 seconds with a stop audio 
  12019.                      command.  Play will be interrupted sooner if the tester 
  12020.                      enters any information into DDTT's input window displayed 
  12021.                      during the audio play operations. 
  12022.  
  12023.  PAUDSC4.SCR         (Requires an audio CD.)  This test case has two threads 
  12024.                      (all addressing uses Logical Block format).  Thread 1 
  12025.                      plays some audio while Thread 2 attempts to retrieve audio 
  12026.                      disc and track information.  The query operations are 
  12027.                      repeated five times while the audio is playing.  The 
  12028.                      information retrieved is for the three highest-numbered 
  12029.                      audio tracks on the CD.  All information is written to the 
  12030.                      log file.  The audio disc and track query functions should 
  12031.                      work while the disc is playing the audio information. 
  12032.  
  12033.  PAUDTS.SCR          (Requires an audio CD.) Plays the audio information 
  12034.                      through the CD-ROM drive output. Using Redbook address 
  12035.                      format, this test case starts playing the audio at 
  12036.                      22:17:62 (22 minutes, 17 seconds, and 62 frames) from the 
  12037.                      start of the CD until 32:00:00.  If the CD is a 
  12038.                      multi-volume CD, then the time is from the start of the 
  12039.                      first CD in the set.  Audio play will be allowed to 
  12040.                      continue for 45 seconds or until the tester enters any 
  12041.                      data into the DDTT input window, at which time a stop 
  12042.                      audio command is executed and sound should cease 
  12043.                      immediately. 
  12044.  
  12045.  PAUDTS2.SCR         (Requires an audio CD.) Plays the audio information 
  12046.                      through the CD-ROM drive output.  This test case uses two 
  12047.                      threads and all CD-ROM addressing is by way of Redbook 
  12048.                      format.  Thread 1 plays audio starting at 24:20:00 with a 
  12049.                      programmed stop at 28:00:00. Thread 1 plays for two 
  12050.                      minutes before stopping the audio as a result of a 
  12051.                      2-minute user response time-out or for less than two 
  12052.                      minutes if the tester gives some input on DDTT's test 
  12053.                      window.  Thread 2 starts playing a different area of the 
  12054.                      CD after two minutes.  Thread 2 also plays for two minutes 
  12055.                      unless the tester provides some input to the DDTT input 
  12056.                      window.  The audio should stop instantly upon tester input 
  12057.                      for both threads. 
  12058.  
  12059.  PAUDTS3.SCR         (Requires an audio CD.)  This test case has two threads 
  12060.                      (all addressing uses Redbook format).  Thread 1 plays some 
  12061.                      audio while Thread 2 attempts to retrieve audio disc and 
  12062.                      track information.  A query audio disc information is 
  12063.                      followed by a query track function for each audio track on 
  12064.                      the CD.  The query operation are performed while the audio 
  12065.                      is playing in Thread 1. All information is written to the 
  12066.                      log file.  The audio disc and track query functions should 
  12067.                      work while the disc is playing the audio information. 
  12068.  
  12069.  PAUDTS4.SCR         (Requires an audio CD.)  The test case has three threads 
  12070.                      (all addressing uses Redbook format).  Thread 1 plays 
  12071.                      audio 20 seconds and then Thread 2 plays audio for 20 
  12072.                      seconds and finally Thread 3 plays audio for 20 seconds. 
  12073.                      Threads 2 and 3 wait for the previous threads to complete 
  12074.                      before starting their own audio plays.  The tester can 
  12075.                      complete any play or wait sooner by entering any data at 
  12076.                      the DDTT input window. 
  12077.  
  12078.  QAUDCH.SCR          Queries the CD-ROM drive and returns the current audio 
  12079.                      channel output volume channel for all four audio channel 
  12080.                      outputs. 
  12081.  
  12082.  QAUDCH2.SCR         (Requires an audio CD.)  This test case has two threads. 
  12083.                      Thread 1 uses Logical Block format to play 30 seconds of 
  12084.                      audio and Thread 2 runs queries the audio channel volume 
  12085.                      levels and logs this information in the log file.  Thread 
  12086.                      2 queries the current volume information while Thread 1 is 
  12087.                      playing audio. 
  12088.  
  12089.  QAUDDK.SCR          (Requires an audio CD.)  Queries the CD-ROM media and 
  12090.                      return the lowest and highest tracks on the audio CD-ROM 
  12091.                      disc.  This information is set in the DDTT parameter 
  12092.                      keywords: HIGHTRACK and LOWTRACK. 
  12093.  
  12094.  QAUDDK2.SCR         (Requires an audio CD.)  This test case has two threads. 
  12095.                      Thread 1 queries the audio disc information and then loops 
  12096.                      from the lowest track up to the highest track.  For each 
  12097.                      track it queries the individual track information.  Thread 
  12098.                      2 does the same thing, except that it loops from the 
  12099.                      highest track down to the lowest track. Both of these 
  12100.                      threads run concurrently. 
  12101.  
  12102.  QAUDSTA.SCR         (Requires an audio CD.)  Queries the most current audio 
  12103.                      status information.  Audio status information includes the 
  12104.                      starting and ending location of the last play command that 
  12105.                      was executed. 
  12106.  
  12107.  QAUDSTA2.SCR        (Requires an audio CD.) This test case has two threads. 
  12108.                      Thread 1 plays audio for 40 seconds.  Thread 2 queries the 
  12109.                      audio status information while Thread 1 is playing.  Audio 
  12110.                      status information includes the starting and ending 
  12111.                      location of the last play command that was executed. 
  12112.  
  12113.  QAUDTRK.SCR         (Requires an audio CD.)  Queries the CD-ROM for the audio 
  12114.                      track information from tracks 4 and 5.  Audio track 
  12115.                      information includes the type of data stored in the track 
  12116.                      and the Redbook address of the starting block in the 
  12117.                      track. 
  12118.  
  12119.  QCHAN.SCR           (Requires an audio CD.)  Queries the CD-ROM drive for the 
  12120.                      current channel information while the CD-ROM is playing 
  12121.                      audio information.  This test case uses only one DDTT 
  12122.                      thread.  Channel information includes the current track 
  12123.                      number, elapsed time within the current track, and the 
  12124.                      elapsed time on the disk. 
  12125.  
  12126.  QCHAN2.SCR          (Requires an audio CD.)  Queries the CD-ROM drive for the 
  12127.                      current channel information while the CD-ROM is playing 
  12128.                      audio information.  This test case uses two DDTT threads. 
  12129.                      Thread 1 plays 40 seconds of audio and Thread 2 queries 
  12130.                      the current channel information.  Channel information 
  12131.                      includes the current track number, elapsed time within the 
  12132.                      current track, and the elapsed time on the disc. 
  12133.  
  12134.  QDRIV.SCR           Queries the CD-ROM drive and returns the CD-ROM device 
  12135.                      driver ID. 
  12136.  
  12137.  QSECIN.SCR          Queries the CD-ROM drive and returns the size of the 
  12138.                      number of bytes in each sector on the CD-ROM media. 
  12139.  
  12140.  QSTA.SCR            Queries the CD-ROM drive and returns the CD-ROM drive 
  12141.                      status.  Device status includes: 
  12142.  
  12143.    o  door is open or closed 
  12144.    o  door is locked or unlocked 
  12145.    o  supports 2 352 byte sector reads 
  12146.    o  readable and writeable 
  12147.    o  supports audio and video data 
  12148.    o  supports interleaved access 
  12149.    o  supports prefetched reads 
  12150.    o  supports audio channel manipulations 
  12151.    o  disc is present in drive 
  12152.    o  drive is playing audio 
  12153.  
  12154.  QUPCC.SCR           Queries the CD-ROM drive and returns the current media's 
  12155.                      universal product code. 
  12156.  
  12157.                      Warning: At the current printing, this function is seldom 
  12158.                      supported. If this function is not supported, such an 
  12159.                      error should be returned by the CD-ROM device driver. 
  12160.  
  12161.  QVOLSIZE.SCR        Queries the CD-ROM drive and returns the number of logical 
  12162.                      blocks on the current CD-ROM media. 
  12163.  
  12164.  RD2048T1.SCR        Reads 25 sectors starting at sector 200 from the disc in 
  12165.                      2048 byte mode and returns the data in the DDTT-named 
  12166.                      buffer, BUFFER. 
  12167.  
  12168.  RD2048T2.SCR        Reads 400 sectors starting with sector 20 in a loop. The 
  12169.                      loop is repeated 100 times; the data is compared to the 
  12170.                      original read each time through the loop.  An error 
  12171.                      message is generated if the buffers do not compare. 
  12172.  
  12173.  RD2048T3.SCR        Reads 500 sectors starting at sector 50 and compares the 
  12174.                      data with 500 sectors read starting at sector 990. The 
  12175.                      second set of data is read in a loop 100 times.  The 
  12176.                      buffers are compared and expected to not match. 
  12177.  
  12178.  RD2048T4.SCR        Performs a timed read of 20 sectors in a loop of 40 
  12179.                      iterations.  The test case logs the time when it starts 
  12180.                      the first loop and the time it completes the final loop. 
  12181.                      The tester will need to examine the log file subtract the 
  12182.                      times to find the total duration of the read operations. 
  12183.  
  12184.  Rd23SCT1.SCR        Reads 27 sectors in 2 352 byte mode starting at the 
  12185.                      Redbook address of 02:00:00. 
  12186.  
  12187.  RD23SCT2.SCR        Reads 27 sectors in 2 352 byte mode starting at Sector 
  12188.                      100. The same data is read into a second buffer and 
  12189.                      compared to first buffer.  The data is expected to match. 
  12190.                      The second read is repeated 100 times in a loop. 
  12191.  
  12192.  RD23SCT3.SCR        Reads 27 sectors in 2 352 byte mode starting at Sector 10. 
  12193.                      The data in 27 sectors starting at sector 999 is read into 
  12194.                      a second buffer and compared to first buffer.  The data is 
  12195.                      not expected to match. 
  12196.  
  12197.  RD23SCT4.SCR        Reads 27 sectors in 2 352 byte mode starting at Sector 1. 
  12198.                      The data in 27 sectors starting at sector 00:02:00 is read 
  12199.                      into a second buffer and compared to first buffer.  The 
  12200.                      data is not expected to match. 
  12201.  
  12202.  RDFILET1.SCR        Opens the CD-ROM resident file defined in the DDTT 
  12203.                      parameter keyword: FILENAME (from SYSINFO.TXT) and reads 
  12204.                      500 bytes starting at byte 600 within the file.  The data 
  12205.                      is read into the DDTT named buffer, ALPHA. ALPHA is dumped 
  12206.                      to the log file. 
  12207.  
  12208.  RDFILET2.SCR        Opens the CD-ROM resident file defined in the DDTT 
  12209.                      parameter keyword: FILENAME (from SYSINFO.TXT) and reads 
  12210.                      100000 bytes starting at byte 600 within the file into a 
  12211.                      DDTT named buffer: ALPHA. This test case then re-reads the 
  12212.                      same data into another named buffer: BETA.  ALPHA and BETA 
  12213.                      buffers are compared; the BETA buffer re-read and the 
  12214.                      compare operation is repeated in a loop 100 times. Data in 
  12215.                      the ALPHA buffer is expected to match the data in the BETA 
  12216.                      buffer. 
  12217.  
  12218.  RDFILET3.SCR        Opens the CD-ROM resident file defined in the DDTT 
  12219.                      parameter keyword: FILENAME (from SYSINFO.TXT) and reads 
  12220.                      130000 bytes starting at byte 1 000 within the file into a 
  12221.                      DDTT named buffer: ALPHA. This test case then reads 
  12222.                      130000 bytes starting at byte 200 from the same file into 
  12223.                      another named buffer, BETA.  ALPHA and BETA buffers are 
  12224.                      compared; the BETA buffer re-read and the compare 
  12225.                      operation is repeated in a loop 100 times. Data in the 
  12226.                      ALPHA buffer is not expected to match the data in the BETA 
  12227.                      buffer. 
  12228.  
  12229.  RDFILET4.SCR        This test case uses two threads.  Both threads open the 
  12230.                      CD-ROM resident file defined in the DDTT parameter 
  12231.                      keyword: FILENAME (from SYSINFO.TXT) and then loop 20 
  12232.                      times.  Thread 1 reads 30 000 bytes starting at byte 1 000 
  12233.                      and Thread 2 reads 20 000 bytes starting at byte 200.  The 
  12234.                      operations run concurrently. 
  12235.  
  12236.  RDPRSCT1.SCR        Reads with prefetch two sectors (2 352 bytes each) of data 
  12237.                      starting at Sector 1 000. 
  12238.  
  12239.  RDPRSCT2.SCR        Reads with prefetch 27 sectors (2 352 bytes each) into two 
  12240.                      different DDTT named buffers.  The data is compared and 
  12241.                      expected to match.  The read and compare operations are 
  12242.                      repeated in a loop 30 times. 
  12243.  
  12244.  RDPRSCT3.SCR        Reads with prefetch 27 sectors (2 352 bytes each) into two 
  12245.                      different DDTT-named buffers.  Initially, the data reads 
  12246.                      starting at sector 550; a second read of the same size 
  12247.                      starts at Sector 15 500. The data is compared and expected 
  12248.                      to not match.  The read and compare operations are 
  12249.                      repeated in a loop 30 times. 
  12250.  
  12251.  RESET.SCR           Resets and reinitializes the CD-ROM drive and controller. 
  12252.  
  12253.  RESUME.SCR          (Requires an audio CD.) Resumes playing the last audio 
  12254.                      command sent to the CD-ROM drive.  The previous play audio 
  12255.                      must have been interrupted by a stop audio command.  If 
  12256.                      the last play command is finished running, then an error 
  12257.                      is returned. 
  12258.  
  12259.  RESUME2.SCR         (Requires an audio CD.)  This test case has two threads. 
  12260.                      Thread 1 starts a 13 minute play audio, but interrupts it 
  12261.                      after 25 seconds of play.  Thread 2 waits for Thread 1 to 
  12262.                      perform the stop audio and then performs a resume audio 
  12263.                      from where Thread 1 left off. 
  12264.  
  12265.  SAUD.SCR            Performs a stop audio operation on any currently active 
  12266.                      play audio operation. 
  12267.  
  12268.  SAUD2.SCR           (Requires an audio CD.)  This test case has two threads. 
  12269.                      Thread 1 starts a 4 minute play.  Thread 2 waits for 30 
  12270.                      seconds and then stops the audio. 
  12271.  
  12272.  SEEKSEC.SCR         (Requires an audio CD.)  Performs a sector seek in Logical 
  12273.                      Block address mode, plays audio for 25 seconds, performs a 
  12274.                      stop audio before exiting. 
  12275.  
  12276.  SEEKTS.SCR          (Requires an audio CD.)  Performs a sector seek in Redbook 
  12277.                      address mode, plays audio for 30 seconds, performs a stop 
  12278.                      audio before exiting. 
  12279.  
  12280.  SEEKTS2.SCR         (Requires an audio CD.) This test case has two threads. 
  12281.                      Thread 1 performs Redbook format seek, starts a 3 minute 
  12282.                      play audio and then waits for 60 seconds.  While Thread 
  12283.                      1's play audio is running, Thread two performs a query 
  12284.                      audio disc information, query drive status, and a query 
  12285.                      UPC.  All operations are expected to complete 
  12286.                      successfully, however at this printing the query UPC 
  12287.                      function seldom works correctly. 
  12288.  
  12289.  UNLOCK.SCR          Unlocks the CD-ROM drive door. 
  12290.  
  12291.  
  12292. ΓòÉΓòÉΓòÉ 16.6. Evaluation of Test Case Results ΓòÉΓòÉΓòÉ
  12293.  
  12294. Unless otherwise stated in the test-case descriptions, all test cases are 
  12295. expected to succeed.  If a test case fails in a mode detectable by DDTT, then 
  12296. the token "ERROR" will be written to the corresponding log file. 
  12297.  
  12298. The script files test all of the different CD-ROM functions. After each script 
  12299. file has finished executing, it will log all of the test information out to a 
  12300. log file.  When all of the script files have finished executing, the command 
  12301. file will search all of the log files for any errors that have occurred.  The 
  12302. results from this search are stored in the RESULTS.TXT file.  When the command 
  12303. file has finished searching the log files, it will also display the results on 
  12304. the screen. The command file is searching only for the word "ERROR". Look at 
  12305. the following script files to determine if there were any buffer comparison 
  12306. errors.  The script file names are: 
  12307.  
  12308.       RDFILET2 
  12309.       RDFILET3 
  12310.       RD2048T2 
  12311.       RD2048T3 
  12312.       RD23SCT2 
  12313.       RD23SCT3 
  12314.       RDPRSCT2 
  12315.       RDPRSCT3 
  12316.  
  12317.  If there are any buffer-comparison errors, you first must know what the 
  12318.  different script files are doing.  Some of these script files are comparing 
  12319.  the same sectors or bytes and some of them are comparing different sectors or 
  12320.  bytes.  If the script file is comparing the same information, it should come 
  12321.  back with BUFFER COMPARE SUCCESS.  If the script files are comparing different 
  12322.  information, they then should come back with BUFFER COMPARE FAILURE. 
  12323.  
  12324.  
  12325. ΓòÉΓòÉΓòÉ 16.7. Kodak Multi-session Test ΓòÉΓòÉΓòÉ
  12326.  
  12327. Testing for Kodak Kodak** multi-session photo CD compatibility requires the 
  12328. Kodak "MULTI SESSION BRANDING" PHOTO CD. A multi-session CD contains data that 
  12329. was written to the CD media at different times or recording sessions.  If the 
  12330. CD-ROM drive and device driver under test are capable of reading multi-session 
  12331. CD media then the tester should be able to view all 24 pictures on the Kodak 
  12332. photo CD test disc. 
  12333.  
  12334. The files necessary to run this test are not available through IBM, but can be 
  12335. purchased directly from Kodak at this address: 
  12336.  
  12337.         KODAK         1700 DEWEY AVE.         ROCHESTER, NY         14650-1924 
  12338. (716) 588-4155 
  12339.  
  12340.  
  12341. ΓòÉΓòÉΓòÉ 17. Building an OS/2 Virtual Disk Driver ΓòÉΓòÉΓòÉ
  12342.  
  12343. This chapter describes how to program and build an OS/2 virtual disk driver. 
  12344. In order to successfully build a virtual disk driver, should be familiar with 
  12345. the OS/2 2.0 operating system or later, and have previous experience developing 
  12346. OS/2 device drivers. 
  12347.  
  12348. In the IBM Developer Connection Device Driver Kit for OS/2, you will find an 
  12349. OS/2 virtual disk driver.  After reading this chapter and examining the code, 
  12350. you can use this information to write your own virtual device driver. 
  12351.  
  12352.  
  12353. ΓòÉΓòÉΓòÉ 17.1. Overview ΓòÉΓòÉΓòÉ
  12354.  
  12355. The virtual disk driver code provides access to a virtual disk in random access 
  12356. memory.  The virtual disk driver runs in a multi-tasking environment and is a 
  12357. protected resource. 
  12358.  
  12359. In this chapter you will find: 
  12360.  
  12361.    o  A table listing the virtual disk parameters 
  12362.    o  A table listing the virtual disk commands 
  12363.    o  An explanation of how the virtual disk initialization routine works 
  12364.    o  Information for performing time-critical tasks 
  12365.    o  A procedure for building the virtual disk device driver code that is 
  12366.       provided with the IBM Device Driver Source Kit for OS/2 
  12367.  
  12368.  Using the Virtual Disk Parameters: To allocate the virtual disk driver volume, 
  12369.  modify the following device statement in the CONFIG.SYS file. 
  12370.  
  12371.   ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  12372.  
  12373.   DEVICE = .\PATHNAME\VDISK.SYS [bbbb] [ssss] [dddd]
  12374.  
  12375.   ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  12376.  
  12377.  Where: 
  12378.  
  12379.  bbbb      Determines the disk size in K bytes. The default value is 64KB. The 
  12380.            minimum is 16KB. The maximum is 524 288 (512MB). 
  12381.  
  12382.  ssss      Determines the sector size in bytes. The default value is 128. 
  12383.            Acceptable values are increments of 128 which include 128, 256, 512, 
  12384.            and 1024. 
  12385.  
  12386.  dddd      Determines the number of root directory entries. The default is 64; 
  12387.            with a minimum of 2 and a maximum of 1024. The value is rounded up 
  12388.            to the nearest sector size boundary. 
  12389.  
  12390.            The virtual disk driver adjusts the value of dddd to the nearest 
  12391.            sector size boundary. For example if you give a value of 25, and the 
  12392.            sector size is 512 bytes, 25 will be rounded up to 32 which is the 
  12393.            next multiple of 16. 
  12394.  
  12395.  The parameters you use to specify byte and sector size and the number of 
  12396.  directory entries are positional parameters. This means that if you omit a 
  12397.  parameter, you should not leave it blank.  You should use a comma in the 
  12398.  parameter field to separate this field from the next.  The only time you can 
  12399.  use blank spaces as separators is in the instance where you are coding blanks 
  12400.  for all the parameters. 
  12401.  
  12402.  In the event that there is not enough memory to create the virtual disk driver 
  12403.  volume, the driver attempts to create a DOS volume with 16 directory entries. 
  12404.  This may result in a volume with a different number of directories than you 
  12405.  specified on the device statement (dddd). 
  12406.  
  12407.  To ensure system reliability, specify 32 megabytes or less for disk size. 
  12408.  
  12409.  Example 1 
  12410.  
  12411.   ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  12412.  
  12413.   C:\0S2\VDISK.SYS ,128,64
  12414.  
  12415.   ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  12416.  
  12417.  where the disk size is 64KB, the sector size is 128 bytes, and there are 64 
  12418.  directory entries. 
  12419.  
  12420.  Example 2 
  12421.  
  12422.   ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  12423.  
  12424.   C:\OS2\VDISK.SYS 2048,,32
  12425.  
  12426.   ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  12427.  
  12428.  where the disk size is 2 048 KB, the sector size is 128 bytes, and there are 
  12429.  32 directory entries. 
  12430.  
  12431.  Example 3 
  12432.  
  12433.   ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  12434.  
  12435.   C:\OS2\VDISK.SYS 2048,512,
  12436.  
  12437.   ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  12438.  
  12439.  where the disk size is 2 048 KB, the sector size is 512 bytes, and there are 
  12440.  64 directory entries. 
  12441.  
  12442.  Example 4 
  12443.  
  12444.   ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  12445.  
  12446.   C:\OS2\VDISK.SYS ,128,32
  12447.  
  12448.   ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  12449.  
  12450.  where the disk size is 64 KB, the sector size is 128 bytes, and there are 32 
  12451.  directory entries. 
  12452.  
  12453.  Supported Physical Device Driver Strategy Commands: The virtual disk driver is 
  12454.  a block device driver and cannot be partitioned.  For this reason, the virtual 
  12455.  disk driver uses a limited set of physical device driver strategy commands. 
  12456.  These are listed below: 
  12457.  
  12458.  Code   Function 
  12459.  0h     Init 
  12460.  1h     Media Check 
  12461.  2h     Build BPB 
  12462.  4h     Read (Input) 
  12463.  8h     Write (Output) 
  12464.  9h     Write With Verify 
  12465.  Dh     Open Device 
  12466.  Eh     Close Device 
  12467.  Fh     Removable Media 
  12468.  10h    Generic IOCtl 
  12469.  11h    Reset Media 
  12470.  12h    Get Logical Drive Map 
  12471.  13h    Set Logical Drive Map 
  12472.  18h    No Caching (read) 
  12473.  19h    No Caching (write) 
  12474.  1Ah    No Caching (Write With Verify) 
  12475.  1Dh    Get Driver Capabilities 
  12476.  
  12477.  If the virtual disk driver uses any commands other than those shown above, the 
  12478.  driver returns an unknown command error code. For more information on these 
  12479.  commands, refer to the OS/2 Physical Device Driver Reference. 
  12480.  
  12481.  The virtual disk driver supports the Extended Device Driver Interface which is 
  12482.  implemented through the Get Driver Capabilities command. This interface issues 
  12483.  a Request List of prioritized commands. VDisk_Strat2, specified in the driver 
  12484.  capabilities structure, is the entry point for all the commands. 
  12485.  
  12486.  CHKDSK uses the category 08h and function 63h IOCtl command from the kernel. 
  12487.  This is the only command supported by the virtual disk driver in the general 
  12488.  IOCtl commands category. 
  12489.  
  12490.  Virtual Disk Driver Initialization: The virtual disk driver initialization 
  12491.  routine does the following: 
  12492.  
  12493.    o  Initializes various global values and initializes the DevHelp function 
  12494.       router address. 
  12495.  
  12496.    o  Parses the command line and sets the values accordingly. 
  12497.  
  12498.       The "DEVICE = xxxxxxxxx" line pointer provided in request packet searches 
  12499.       for the various device parameters. The pointer searches through the 
  12500.       device name field to obtain the arguments. Then the pointer parses the 
  12501.       arguments as they are encountered. All parameter errors are detected at 
  12502.       this time.  The static initialization routine sets the parameter 
  12503.       variables to the default settings. 
  12504.  
  12505.    o  Allocates the memory for the virtual disk driver. 
  12506.  
  12507.       The routine issues the DevHlp_VMAlloc command to allocate random access 
  12508.       memory for the virtual disk driver. 
  12509.  
  12510.    o  Initializes the DOS volume in random access memory for the virtual disk 
  12511.       driver. 
  12512.  
  12513.       To so, the routine sets the BPB and initializes the RESERVED (boot) 
  12514.       sector, FAT sectors, and root directory sectors and writes them to the 
  12515.       virtual disk driver. First the routine initializes the BPB values. Then 
  12516.       the routine writes the BOOT record, containing the BPB, to sector 0.  The 
  12517.       routine writes to a FAT file with all of the clusters free, and writes to 
  12518.       the root directory with ONE entry (the Volume ID at VOLID). 
  12519.  
  12520.    o  Prints a report of the RAMDrive parameters. 
  12521.  
  12522.       You can print the BPB values.  To do so, use the DosGetMessage and 
  12523.       DosPutMessage functions in your virtual disk driver.  From this report, 
  12524.       you can determine the device size, cluster size, and directory size. 
  12525.  
  12526.    o  Specifies the return INIT I/O packet values. 
  12527.  
  12528.       The INIT I/O packet return values for number of units are set, as well as 
  12529.       the BPB array pointer. 
  12530.  
  12531.  At any time during the initialization steps an error may be detected.  When 
  12532.  this happens, the system prints an error message. The virtual disk driver 
  12533.  uninstalls and returns a unit count of 0 in the INIT device I/O packet. 
  12534.  
  12535.  Performing Time-Critical Tasks: To perform time-critical tasks, you must call 
  12536.  the DevHlp_GetDOSVar service from the virtual disk driver code. The virtual 
  12537.  disk driver periodically checks the TCYield flag and calls the TCYield 
  12538.  function to yield the CPU to a time-critical thread. The location of the 
  12539.  TCYield flag is obtained from a call to DevHlp_GetDosVar. The virtual disk 
  12540.  driver checks the TCYield flag each time 32,768 bytes of data have been 
  12541.  transferred. Refer to the OS/2 Physical Device Driver Reference for more 
  12542.  information. 
  12543.  
  12544.  Building the OS/2 2.0 (and later) Virtual Disk Driver sample code: To build 
  12545.  the sample virtual disk driver code, complete the following steps: 
  12546.  
  12547.    1. Add the TOOLS directory to the OS/2 IBM Developer Connection Device 
  12548.       Driver Kit for OS/2 and set it to the current path. 
  12549.  
  12550.    2. Set the TMP environment variable to point to a work area. This is shown 
  12551.       below: 
  12552.  
  12553.             ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  12554.  
  12555.             SET TMP=E:\
  12556.  
  12557.             ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  12558.  
  12559.    3. NMAKE the following makefiles in the DDK: 
  12560.  
  12561.            SRC\DEV\VDISK\MAKEFILE 
  12562.            CD\DDK\SRC\DEV\VDISK 
  12563.            NMAKE 
  12564.  
  12565.  
  12566. ΓòÉΓòÉΓòÉ 18. OS2DASD.DMD - Technical Reference ΓòÉΓòÉΓòÉ
  12567.  
  12568. The OS2DASD Device Manager (OS2DASD.DMD) provides the interface between the 
  12569. OS/2 File Systems (FAT, HPFS) and Adapter Drivers (*.ADDs) that support fixed 
  12570. and removable magnetic disks. 
  12571.  
  12572. This device manager allows the *.ADD drivers to communicate with adapter or 
  12573. disk hardware without interacting with the logical contents of these devices or 
  12574. being affected by the complexity of OS/2 block device driver interfaces. The 
  12575. device manager communicates with *.ADD drivers exclusively by way of 
  12576. Input/Output Request Blocks (IORBs), as described in the preceding chapters of 
  12577. the Storage Device Driver Reference. 
  12578.  
  12579. The primary functions of this device manager are: 
  12580.  
  12581.    1. Implementing the OS/2 Kernel/FileSystem block device driver interfaces; 
  12582.       creating IORBs as required for communication to .ADD drivers. 
  12583.  
  12584.    2. Scanning .ADD drivers for removable or fixed magnetic devices. 
  12585.  
  12586.    3. Managing partitioned devices by creating logical drives for partitioned 
  12587.       disks and reporting these logical drives to the OS/2 kernel. 
  12588.  
  12589.    4. Providing IOCtl interfaces to the file system utility applications to 
  12590.       allow for the preparation of the media. 
  12591.  
  12592.    5. Providing for the attachment from a set of logical drives to a physical 
  12593.       removable device is called pseudo drive support.  An example is the 
  12594.       mapping of drive A: or B: to a single diskette drive. 
  12595.  
  12596.  
  12597. ΓòÉΓòÉΓòÉ 18.1. Kernel/FileSystem Interfaces ΓòÉΓòÉΓòÉ
  12598.  
  12599. The OS2DASD device manager supports three major types of kernel interfaces: 
  12600. Request Packets, Extended Disk Interface, and Generic IOCtls. 
  12601.  
  12602. With the exception of Generic IOCtls, these interfaces are used by the OS/2 
  12603. Kernel and OS/2 File Systems to communicate with device drivers and are not 
  12604. directly available to applications. 
  12605.  
  12606.  
  12607. ΓòÉΓòÉΓòÉ 18.1.1. Request Packets ΓòÉΓòÉΓòÉ
  12608.  
  12609. Request Packets are used for small I/O requests or status requests to the 
  12610. device manager. 
  12611.  
  12612. The following table shows the Request Packets that are supported by the OS2DASD 
  12613. Device Manager: 
  12614.  
  12615. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  12616. ΓöéCmd Code  ΓöéPacket Name                                       Γöé
  12617. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  12618. Γöé01h       ΓöéCheck Media Change                                Γöé
  12619. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  12620. Γöé02h       ΓöéBuild BPB                                         Γöé
  12621. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  12622. Γöé04h       ΓöéRead                                              Γöé
  12623. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  12624. Γöé08h       ΓöéWrite                                             Γöé
  12625. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  12626. Γöé09h       ΓöéWrite with Verify                                 Γöé
  12627. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  12628. Γöé0Fh       ΓöéCheck Removable                                   Γöé
  12629. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  12630. Γöé10h       ΓöéGeneric IOCtl                                     Γöé
  12631. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  12632. Γöé11h       ΓöéReset Media Change                                Γöé
  12633. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  12634. Γöé12h       ΓöéGet Logical Drive Map                             Γöé
  12635. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  12636. Γöé13h       ΓöéSet Logical Drive Map                             Γöé
  12637. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  12638. Γöé16h       ΓöéGet Partitionable Disk Count                      Γöé
  12639. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  12640. Γöé17h       ΓöéMap Unit Numbers to Physical Drive                Γöé
  12641. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  12642. Γöé18h       ΓöéRead      (Suppress caching)                      Γöé
  12643. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  12644. Γöé19h       ΓöéWrite     (Suppress caching)                      Γöé
  12645. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  12646. Γöé1Ah       ΓöéWrite w/Verify (Suppress caching)                 Γöé
  12647. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  12648. Γöé1Dh       ΓöéGet Extended Disk Interface Info                  Γöé
  12649. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  12650.  
  12651. The formats of these packets can be found in the OS/2 Physical Device Driver 
  12652. Reference. For more information regarding the implementation and interpretation 
  12653. of these packets by OS2DASD, see Request Packet Management. 
  12654.  
  12655.  
  12656. ΓòÉΓòÉΓòÉ 18.1.2. Extended Disk Interface ΓòÉΓòÉΓòÉ
  12657.  
  12658. The Extended Disk Interface provides a higher performance path for a limited 
  12659. set of commands.  The advantages of this interface are: 
  12660.  
  12661.    o  Multiple I/O requests may be submitted in a single list. 
  12662.  
  12663.    o  Each request may transfer data to or from discontinuous areas of memory. 
  12664.  
  12665.    o  Each request may specify a priority to other I/O requests. 
  12666.  
  12667.    o  A file system can directly call the device driver to submit I/O requests, 
  12668.       rather than going through the OS/2 kernel. 
  12669.  
  12670.    o  This interface may be used at interrupt time. 
  12671.  
  12672.  See Request Lists and Request Control for information about the format of the 
  12673.  Extended Disk Interface "Request Lists". 
  12674.  
  12675.  
  12676. ΓòÉΓòÉΓòÉ 18.1.3. Generic IOCtls ΓòÉΓòÉΓòÉ
  12677.  
  12678. IOCtl interfaces are generally used by the file system utility applications 
  12679. such as FORMAT and CHKDSK to prepare or access media when a file system is not 
  12680. operating.  The interfaces also perform operations that query or change 
  12681. hardware-specific characteristics of a device. 
  12682.  
  12683. Category 08h IOCtls apply to a single drive letter or partition. Most file 
  12684. system utility programs access disks using this IOCtl category. 
  12685.  
  12686. Category 09h IOCtls apply to the entire physical device.  In other words, these 
  12687. IOCtls ignore any partitioning scheme that may be present on the drive. 
  12688. Partitioning utility programs such as FDISK and FDISKPM use this IOCtl category 
  12689. to set up a disk partitioning scheme. 
  12690.  
  12691. The OS2DASD Device Manager supports the IOCtls shown in the following table: 
  12692.  
  12693. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  12694. ΓöéCategory  ΓöéFunction  ΓöéPurpose                                 Γöé
  12695. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  12696. Γöé08h       Γöé22h       ΓöéCreate Alias Drive Letter               Γöé
  12697. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  12698. Γöé08h       Γöé40h       ΓöéLock/Unlock/Eject Media                 Γöé
  12699. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  12700. Γöé08h       Γöé43h       ΓöéSet Drive Parameters                    Γöé
  12701. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  12702. Γöé08h       Γöé44h       ΓöéWrite Track                             Γöé
  12703. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  12704. Γöé08h       Γöé45h       ΓöéFormat/Verify Track, Multitrack Verify  Γöé
  12705. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  12706. Γöé08h       Γöé5Dh       ΓöéStop/Start Diskette Controller          Γöé
  12707. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  12708. Γöé08h       Γöé60h       ΓöéRead Diskette Media Type Switches       Γöé
  12709. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  12710. Γöé08h       Γöé63h       ΓöéGet Drive Parameters                    Γöé
  12711. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  12712. Γöé08h       Γöé64h       ΓöéRead Track                              Γöé
  12713. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  12714. Γöé08h       Γöé65h       ΓöéVerify Track                            Γöé
  12715. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  12716. Γöé08h       Γöé66h       ΓöéGet Drive Status - Locked/Unlocked/ReadyΓöé
  12717. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  12718. Γöé09h       Γöé44h       ΓöéPhysical Volume - Write Track           Γöé
  12719. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  12720. Γöé09h       Γöé63h       ΓöéPhysical Volume - Get Drive Parameters  Γöé
  12721. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  12722. Γöé09h       Γöé64h       ΓöéPhysical Volume - Read Track            Γöé
  12723. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  12724. Γöé09h       Γöé65h       ΓöéPhysical Volume - Verify Track          Γöé
  12725. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  12726.  
  12727.  
  12728. ΓòÉΓòÉΓòÉ 18.2. Block Device Management ΓòÉΓòÉΓòÉ
  12729.  
  12730. When the OS2DASD initializes, it scans .ADD drivers for fixed or removable 
  12731. magnetic devices.  For each device found, the driver creates an internal 
  12732. control block that is called a UnitCB. 
  12733.  
  12734. To access the device, the UnitCB provides the linkage to the corresponding ADD 
  12735. driver and ADD UnitHandle. 
  12736.  
  12737. When UnitCBs have been created, the driver creates VolCBs to represent each of 
  12738. the following: 
  12739.  
  12740.    o  Physical non-removable drive 
  12741.    o  Removable drive 
  12742.    o  Logical volumes on a partitioned drive 
  12743.  
  12744.  VolCBs are linked together to create a unit number ordering system, based on 
  12745.  DOS conventions. In addition, VolCBs are linked to their corresponding UnitCB, 
  12746.  which provides the information necessary to access the physical device by way 
  12747.  of the ADD drivers. 
  12748.  
  12749.  Unit numbers are not equivalent to drive letters. The OS/2 Kernel/FileSystems 
  12750.  assigns drive letters.  For example, a block device driver cannot demand that 
  12751.  a particular set of drive letters be assigned to it. 
  12752.  
  12753.  OS2DASD assigns unit numbers as follows: 
  12754.  
  12755.  80h - 98h      Physical Drives 
  12756.  
  12757.                 A VolCB is created for each non-removable drive found.  This 
  12758.                 VolCB represents the drive as a single device and ignores any 
  12759.                 partitioning scheme.  For each drive found, a unit number is 
  12760.                 assigned from 80h to 98h. 
  12761.  
  12762.  0,1            Reserved for diskette drives 
  12763.  
  12764.                 Regardless of whether an .ADD driver is found claiming diskette 
  12765.                 units, Unit Numbers 0,1 will be declared.  This prevents the 
  12766.                 traditional unit numbering from "shifting" on workstations with 
  12767.                 0 or 1 diskette drives installed.  There is an "implicit" 
  12768.                 assumption by OS/2 System Initialization, that OS2DASD will be 
  12769.                 the first block driver loaded. In addition, if a single 
  12770.                 diskette drive is installed, OS2DASD creates a pseudo drive B 
  12771.                 unit, which is mapped to the first diskette drive. 
  12772.  
  12773.  2-24           Logical Drives / Removable Devices 
  12774.  
  12775.                 OS2DASD scans the UnitCBs created previously for non-removable 
  12776.                 drives. The Sector 0 of each drive is read and the partition 
  12777.                 record is checked for a file system partition entry. See Boot 
  12778.                 Record Architecture for more information. 
  12779.  
  12780.                 If a file system partition is found, it is considered the 
  12781.                 primary partition on the volume.  A VolCB is created and given 
  12782.                 the next available unit number from this range. 
  12783.  
  12784.                 When all non-removable drives have been scanned, sector 0 of 
  12785.                 each non-removable drive is read again and scanned for an 
  12786.                 extended volume entry. This entry points to a new extended boot 
  12787.                 sector on the same drive. 
  12788.  
  12789.                 The extended boot sector is read and scanned for a file system 
  12790.                 partition entry.  If an entry is found, then a VolCB is 
  12791.                 allocated and assigned the next available unit number from this 
  12792.                 range. The sector is also searched for another extended volume 
  12793.                 entry. 
  12794.  
  12795.                 This process is repeated until the end of the extended volume 
  12796.                 chain on the drive is reached or no drive letters are left. 
  12797.  
  12798.                 When the search is completed, the same search is repeated on 
  12799.                 the next physical drive. 
  12800.  
  12801.                 After all non-removable drives have been processed and the 
  12802.                 primary or logical drives are allocated, then VolCBs are 
  12803.                 allocated for any remaining removable drives in the system. 
  12804.  
  12805.  
  12806. ΓòÉΓòÉΓòÉ 18.3. BIOS Parameter Block (BPB) Management ΓòÉΓòÉΓòÉ
  12807.  
  12808. The BPB resides at byte 0 in the first sector of a file system partition.  This 
  12809. sector is called the operating system startup record. On non-partitioned media, 
  12810. the BPB resides at sector 0, byte 0. 
  12811.  
  12812. The operating system startup record does not contain a partition table. The 
  12813. partition containing the operating system startup record is pointed to by an 
  12814. entry at the partition table contained in a master or extended boot record. 
  12815.  
  12816. The BPB is is a shared data structure between a block device driver and the FAT 
  12817. file system. In the case of an HPFS, the driver maintains a pseudo BPB. 
  12818.  
  12819. When the VolCB for the logical drive is created during OS2DASD initialization, 
  12820. the BPB for each logical drive is read. 
  12821.  
  12822. Validation checks are made by OS2DASD on the BPB to determine if any BPB had 
  12823. been written to the media.  In the absence of a valid BPB, OS2DASD creates one, 
  12824. based on the size of the partition. The remainder of the BPB fields are filled 
  12825. in by a table-driven lookup, based on the size of the volume. This BPB is 
  12826. supplied to the OS/2 Kernel and not written to the media. 
  12827.  
  12828. The driver keeps two copies of the BPB.  One representing the BPB determined 
  12829. from the media currently in the drive and one representing the device, assuming 
  12830. its maximum capacity. 
  12831.  
  12832. For non-removable devices, the BPBs are always identical. For removable 
  12833. devices, the BPBs may differ if the media in the drive is formatted to a lower 
  12834. capacity than the drive is capable of handling. 
  12835.  
  12836. An example would be a 720KB diskette in a 1.44MB diskette drive. The media BPB 
  12837. is altered to match the media when OS2DASD receives a Build BPB request packet. 
  12838. The device BPB is only altered by using the Category 08h, Function 43 "Set 
  12839. Device Parameters" IOCtl. 
  12840.  
  12841. This would typically be done by FORMAT which forces a diskette drive to format 
  12842. media at a lower capacity than which it normally operates. 
  12843.  
  12844. One other idiosyncrasy of BPBs is the Hidden Sector field.  This is discussed 
  12845. further in the Request Packet Management section. 
  12846.  
  12847.  
  12848. ΓòÉΓòÉΓòÉ 18.4. Request Packet Management ΓòÉΓòÉΓòÉ
  12849.  
  12850. The following section groups request packets by function rather than by 
  12851. numerics. 
  12852.  
  12853.  
  12854. ΓòÉΓòÉΓòÉ 18.4.1. Removable and Non-Removable Media ΓòÉΓòÉΓòÉ
  12855.  
  12856.  04h    Read 
  12857.  08h    Write 
  12858.  09h    Write with Verify 
  12859.  18h    Read  (No caching) 
  12860.  19h    Write  (No caching) 
  12861.  1Ah    Write with Verify  (No caching) 
  12862.  
  12863.  These operations are relatively straightforward, except for the calculation of 
  12864.  the location to read. 
  12865.  
  12866.  The disk location to access is calculated as follows: 
  12867.  
  12868.  Absolute Disk Location =    Absolute location of Master/Extended Boot Record 
  12869.                              + Hidden Sector Field of Logical Drive BPB 
  12870.                              + RBA Offset in Request Packet 
  12871.  
  12872.  The no caching versions of these commands are handled identically to the 
  12873.  regular versions except when commands 18h through 1Ah are processed. To 
  12874.  suppress adapter level hardware caching, the appropriate bits are set in the 
  12875.  EXECUTE_IO IORB. 
  12876.  
  12877.  
  12878. ΓòÉΓòÉΓòÉ 18.4.2. Removable Media ΓòÉΓòÉΓòÉ
  12879.  
  12880.  01h    Check Media Change 
  12881.  11h    Reset Media Change 
  12882.  0Fh    Check for Removable Media 
  12883.  12h    Get Logical Drive Map 
  12884.  13h    Set Logical Drive Map 
  12885.  01h    Check Media Change 
  12886.  11h    Reset Media Change 
  12887.  
  12888.  01h - Check Media Change, 11h - Reset Media Change: When a Check Media Change 
  12889.  packet has been received and the last unit status indicates that a media 
  12890.  change has not occurred, then OS2DASD will send a request to the .ADD driver 
  12891.  to get an updated status.  If the current internal status indicates the media 
  12892.  has changed, then "Changed" status will be returned. 
  12893.  
  12894.  OS2DASD retains the result of this call and monitors for a media change 
  12895.  indication on other I/O operations. 
  12896.  
  12897.  When a Media Change is detected, the driver retains this information and 
  12898.  blocks subsequent I/O requests to the unit until a Reset Media Change packet 
  12899.  is received. 
  12900.  
  12901.  0Fh - Check for Removable Media: When OS2DASD receives the Check for Removable 
  12902.  Media request, it locates the appropriate VolCB that corresponds to the 
  12903.  requested unit number.  The VolCB points to the corresponding UnitCB that 
  12904.  contains the UnitInfo obtained from the .ADD driver.  The BUSY bit of the 
  12905.  request packet is set accordingly. 
  12906.  
  12907.  12h - Get Logical Drive Map, 13h - Set Logical Drive Map: OS/2 allows multiple 
  12908.  drive letters to be assigned to the same removable device.  This assignment 
  12909.  occurs automatically for the B drive on a single diskette system and by way of 
  12910.  the EXTDSKDD.SYS driver to create additional drive letter aliases for 
  12911.  removable drives. 
  12912.  
  12913.  Only one drive letter at a time may be assigned to a removable drive from a 
  12914.  set of drive letters that might potentially be mapped to the drive. 
  12915.  
  12916.  The binding of a specific unit number to a removable device is accomplished 
  12917.  through the use of Set Logical Drive Map. 
  12918.  
  12919.  When OS2DASD receives the Set Logical Drive Map request, it looks up the 
  12920.  physical removable device that should be assigned to this drive letter. It 
  12921.  then updates its tables to indicate that the requested unit number owns the 
  12922.  removable device. 
  12923.  
  12924.  When OS2DASD receives the Get Logical Drive Map request, it determines the 
  12925.  physical drive associated with the unit number provided. OS2DASD then searches 
  12926.  the VolCBs to determine which VolCB currently owns the removable device.  This 
  12927.  owning unit number is returned to the kernel. 
  12928.  
  12929.  The unit numbers returned on both of these packets must be 1-based rather than 
  12930.  zero-based.  A zero unit number returned indicates that there are no alias 
  12931.  drive letters that can be assigned to the removable device. 
  12932.  
  12933.  
  12934. ΓòÉΓòÉΓòÉ 18.4.3. Non-Removable (Partitionable) Media ΓòÉΓòÉΓòÉ
  12935.  
  12936.  16h            Get Partitionable Disk Count 
  12937.  17h            Map Unit Numbers to Physical Drive 
  12938.  
  12939.  16h - Get Partitionable Disk Count: The number of non-removable drives is 
  12940.  returned. 
  12941.  
  12942.  17h - Map Unit Numbers to Physical Drive: The request packet unit field 
  12943.  indicates a non-removable drive number that is zero-based.  OS2DASD adds 
  12944.  Function 80h and searches for VolCBs associated with that particular physical 
  12945.  unit.  A bit map of unit numbers associated with the physical drive is 
  12946.  returned.  The bit numbering scheme for the bit mask corresponds to 2**(unit 
  12947.  number) in a ULONG field. 
  12948.  
  12949.  
  12950. ΓòÉΓòÉΓòÉ 19. Boot Record Architecture ΓòÉΓòÉΓòÉ
  12951.  
  12952. This appendix describes the details of the data that appear on a physical disk. 
  12953. It also describes the structures that are placed on the disk by various 
  12954. utilities. 
  12955.  
  12956.  
  12957. ΓòÉΓòÉΓòÉ 19.1. Master Boot Record ΓòÉΓòÉΓòÉ
  12958.  
  12959. The master boot record is always located on sector 1 of the first track (track 
  12960. 0) on the disk. The following table shows the layout of the various components 
  12961. inside the Master Boot Record. The various components are described below. 
  12962.  
  12963. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  12964. ΓöéOffset    ΓöéDescription                   ΓöéSize                Γöé
  12965. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  12966. Γöé+0        ΓöéMaster Boot Record Program    Γöé446 bytes           Γöé
  12967. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  12968. Γöé+446      ΓöéPartition Table               Γöé64 bytes            Γöé
  12969. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  12970. Γöé+510      ΓöéSignature (55AAH)             Γöé2 bytes             Γöé
  12971. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  12972.  
  12973.  Master Boot Record Program 
  12974.        This code is given control from BIOS during boot. Its function is to 
  12975.        load the operating system's boot program from the partition that was 
  12976.        marked as being startable and turn control over to the (assumed) code 
  12977.        that was loaded. 
  12978.  
  12979.        The Master Boot Record Program may be placed on the disk by individual 
  12980.        operating systems. If the signature in the Master Boot Record is valid, 
  12981.        then the Master Boot Record Program must not be modified. Operating 
  12982.        systems must not place requirements on nor make assumptions about the 
  12983.        Master Boot Record Program. 
  12984.  
  12985.  Partition Table 
  12986.        This is a vector of 4 structures that allows the disk to be divided up 
  12987.        into four distinct areas or partitions. The following table shows how 
  12988.        they are arranged in this vector. 
  12989.  
  12990.               ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  12991.               ΓöéOffset            ΓöéDescription       ΓöéSize              Γöé
  12992.               Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  12993.               Γöé0                 ΓöéPartition 1       Γöé16 bytes          Γöé
  12994.               Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  12995.               Γöé16                ΓöéPartition 2       Γöé16 bytes          Γöé
  12996.               Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  12997.               Γöé32                ΓöéPartition 3       Γöé16 bytes          Γöé
  12998.               Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  12999.               Γöé48                ΓöéPartition 4       Γöé16 bytes          Γöé
  13000.               ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  13001.  
  13002.        It is up to an individual operating system if one of those parts is to 
  13003.        be further sub-divided. For example, DOS Version 3.30 implemented a 
  13004.        scheme where an "extended partition" could be used to define logical 
  13005.        disks to allow the use of larger hardfiles. 
  13006.  
  13007.        The following table shows the format of the individual entries in the 
  13008.        partition table. A description of the individual fields follows. 
  13009.  
  13010.               ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  13011.               ΓöéOffsetΓöé Description Γöé    0    Γöé    1    Γöé    2    Γöé    3    Γöé
  13012.               Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13013.               Γöé  +0  ΓöéPartion StartΓöé  Boot   Γöé  Head   Γöé Sector  ΓöéCylinder Γöé
  13014.               Γöé      Γöé             ΓöéIndicatorΓöé         Γöé         Γöé         Γöé
  13015.               Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13016.               Γöé  +4  ΓöéPartion End  Γöé System  Γöé  Head   Γöé Sector  ΓöéCylinder Γöé
  13017.               Γöé      Γöé             ΓöéIndicatorΓöé         Γöé         Γöé         Γöé
  13018.               Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13019.               Γöé      Γöé Offset from Γöé                   Γöé                   Γöé
  13020.               Γöé  +8  Γöéstart of diskΓöé     Low Word      Γöé     High Word     Γöé
  13021.               Γöé      Γöé (sectors)   Γöé                   Γöé                   Γöé
  13022.               Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13023.               Γöé      Γöé  Partion    Γöé                   Γöé                   Γöé
  13024.               Γöé +12  Γöé  Length     Γöé     Low Word      Γöé     High Word     Γöé
  13025.               Γöé      Γöé (sectors)   Γöé                   Γöé                   Γöé
  13026.               ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  13027.  
  13028.       Partition Start 
  13029.             This 4 byte field identifies the beginning of a partition. It also 
  13030.             contains an indicator that flags the partition as being active or 
  13031.             bootable. This field is composed of several bytes defined as 
  13032.             follows. 
  13033.  
  13034.       Boot Indicator 
  13035.             This byte indicates if the partition is active. If the byte 
  13036.             contains 00H, then the partition is not active and will not be 
  13037.             considered as bootable by the Master Boot Record Boot Program. If 
  13038.             the byte contains 80H, then the partition is considered active. The 
  13039.             Master Boot Record Boot Program will then attempt to load the first 
  13040.             sector described by this partition table entry and transfer control 
  13041.             to it. The Master Boot Record Boot Program should only attempt to 
  13042.             boot the first partition it finds that is marked active. 
  13043.  
  13044.       Head 
  13045.             This byte contains the number of the first head of the partition. 
  13046.  
  13047.             All partitions are allocated in cylinder multiples and begin on 
  13048.             sector 1, head 0. 
  13049.  
  13050.             EXCEPTION: The partition that is allocated at the beginning of the 
  13051.             disk should start at cylinder 0, head 1, sector 1, to leave room 
  13052.             for the disk's master boot record and other information used to 
  13053.             define the fixed disk type on that system. An operating system 
  13054.             should not use any data space on cylinder 0 head 0 of a fixed disk. 
  13055.  
  13056.       Sector 
  13057.             This byte contains the sector number of the first sector of the 
  13058.             partition. This value should always be 1 (sector numbers are 1 
  13059.             based) for the Partition Begin field because partitions are defined 
  13060.             to start on cylinder boundaries. Note that the sector number byte 
  13061.             also contains the high order 2 bits of the cylinder number in the 
  13062.             high order 2 bits of this byte. Therefore, this byte can have 
  13063.             values other than one, but the sector bits of this byte always 
  13064.             contains the value 1. 
  13065.  
  13066.       Cylinder 
  13067.             This byte contains the low order 8 bits of the 10 bit cylinder 
  13068.             number that indicates the starting cylinder of the partition. 
  13069.  
  13070.       Partition End 
  13071.             This 4 byte field identifies the end of the partition. It also 
  13072.             contains an indicator as to which operating system owns the 
  13073.             partition. This field is composed of several bytes that are defined 
  13074.             as follows. 
  13075.  
  13076.       System Indicator 
  13077.             This byte indicates what operating system owns the particular 
  13078.             partition. The values and what they represent are listed in Fixed 
  13079.             Disk Partition ID Assignments. A value of 0 indicates an unused 
  13080.             entry. 
  13081.  
  13082.       Head 
  13083.             This byte contains the last head number in the last cylinder 
  13084.             occupied by this partition. 
  13085.  
  13086.       Sector 
  13087.             This byte contains the sector number of the last sector on the last 
  13088.             cylinder occupied by this partition. It also contains the high 
  13089.             order two bits of the cylinder number in the high two bits of this 
  13090.             byte. 
  13091.  
  13092.       Cylinder 
  13093.             This byte contains the low order 8 bits of the 10-bit cylinder 
  13094.             number that indicates the ending cylinder of this partition. 
  13095.  
  13096.       Offset from Start of Disk 
  13097.             This 4-byte field contains the number of sectors preceding each 
  13098.             partition on the disk. The value is obtained by counting the 
  13099.             sectors beginning with cylinder 0, sector 1, head 0 of the disk, 
  13100.             and incrementing the sector, head, and then cylinder values up to 
  13101.             the beginning of the partition. Thus, if the disk has 17 sectors 
  13102.             per track and 4 heads, and the second partition begins at cylinder 
  13103.             1, sector 1, head 0, the partition's starting relative sector is 68 
  13104.             (decimal)-there were 17 sectors on each of 4 heads on 1 track 
  13105.             allocated ahead of it. The field is stored with the least 
  13106.             significant word first. 
  13107.  
  13108.       Partition Length 
  13109.             This 4 byte field contains the number of sectors allocated to the 
  13110.             partition. This field is stored least significant word first. 
  13111.  
  13112.  Signature 
  13113.        The last 2 bytes of the boot record (55AAH) are used as a signature to 
  13114.        identify a valid boot record containing code that is executable on Intel 
  13115.        X86 processors. Both this record and the partition boot records are 
  13116.        required to contain the signature at offset 01FEH (510). 
  13117.  
  13118.  
  13119. ΓòÉΓòÉΓòÉ 19.2. Fixed Disk Technical Information ΓòÉΓòÉΓòÉ
  13120.  
  13121. A fixed disk boot record must be written on the first sector of all fixed disks 
  13122. or logical drives within an extended partition and must contain: 
  13123.  
  13124.    o  Code to load and give control to the boot record for one of four possible 
  13125.       operating systems. 
  13126.  
  13127.    o  A partition table at the specified offset into the boot record. Each 
  13128.       table entry is 16 bytes long, and contains the starting and ending 
  13129.       cylinder, sector, and head for each of four possible partitions, as well 
  13130.       as the number of sectors preceding the partition and the number of 
  13131.       sectors occupied by the partition. The "boot indicator" byte is used by 
  13132.       the boot record to determine if one of the partitions contains a loadable 
  13133.       operating system. FDISK (or equivalent) initialization utilities mark a 
  13134.       user-selected partition as "startable" by placing a value of 80h in the 
  13135.       corresponding partition's boot indicator (setting all other partition's 
  13136.       indicators to 00h at the same time). The presence of the 80h tells the 
  13137.       Master Boot Record Program to load the sector whose location is contained 
  13138.       in the following 3 bytes. That sector is the actual boot record for the 
  13139.       selected operating system, and it is responsible for the remainder of the 
  13140.       system's loading process (as it is from diskette). All boot records are 
  13141.       loaded at absolute address 0:7C00. 
  13142.  
  13143.    o  A Signature to indicate a valid Master Boot Record. 
  13144.  
  13145.  
  13146. ΓòÉΓòÉΓòÉ 19.2.1. System Initialization ΓòÉΓòÉΓòÉ
  13147.  
  13148. The System initialization (or system boot) sequence is as follows: 
  13149.  
  13150.    1. System initialization first attempts to load an operating system from the 
  13151.       first diskette drive. If the drive is not ready or a read error occurs, 
  13152.       it then attempts to read the fixed disk master boot record from the first 
  13153.       sector of the first fixed disk on the system. If unsuccessful, or if no 
  13154.       fixed disk is present, it invokes a device, ROM BASIC or prompts for a 
  13155.       startable diskette. 
  13156.  
  13157.    2. If successful, the master boot record is given control. It examines the 
  13158.       partition table imbedded within it. If one of the entries indicates a 
  13159.       "startable" (active) partition, its boot record is read (from the 
  13160.       partition's first sector) and give control. 
  13161.  
  13162.    3. If none of the partitions is startable, a RIPL device or ROM BASIC is 
  13163.       invoked or a prompt for a bootable diskette is displayed. 
  13164.  
  13165.    4. If any of the boot indicators are invalid (values other than 00h or 80h) 
  13166.       the message Invalid partition table is displayed and the system stops. 
  13167.       You may then insert a system diskette in drive A and use system reset to 
  13168.       restart from diskette. 
  13169.  
  13170.    5. If the partition's boot record cannot be successfully read within five 
  13171.       retries due to read errors, the message Error loading operating system 
  13172.       appears and the system stops. 
  13173.  
  13174.    6. If the partition's boot record does not contain a valid "signature," the 
  13175.       message Missing operating system appears, and the system stops. 
  13176.  
  13177.  When a partition's boot record is given control, it has passed its partition 
  13178.  table entry address in the DS:SI registers. 
  13179.  
  13180.  System programmers designing a utility to initialize/manage a fixed disk must 
  13181.  provide the following functions at a minimum: 
  13182.  
  13183.    1. Write the master disk boot record/partition table to the disk's first 
  13184.       sector to initialize it if it is not already present. 
  13185.  
  13186.    2. Perform partitioning of the disk-that is, create or update partition 
  13187.       table information (all fields for the partition) when the user wishes to 
  13188.       create, modify, or remove a partition. This may be limited to creating a 
  13189.       partition for only one type of operating system, but must allow 
  13190.       repartitioning the entire disk, or adding a partition without interfering 
  13191.       with existing partitions (user's choice). 
  13192.  
  13193.       Note:  When changing the size or location of any partition, you must 
  13194.              ensure that all existing data on that partition has been backed up 
  13195.              (the partitioning process will "lose track" of the previous 
  13196.              partition boundaries). 
  13197.  
  13198.    3. Provide a means for marking a user-specified partition as startable, and 
  13199.       resetting the startable indicator bytes for other partitions at the same 
  13200.       time. 
  13201.  
  13202.    4. Such utilities should not change or move any partition information that 
  13203.       belongs to another operating system. 
  13204.  
  13205.  
  13206. ΓòÉΓòÉΓòÉ 19.3. Fixed Disk Partition ID Assignments ΓòÉΓòÉΓòÉ
  13207.  
  13208. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  13209. ΓöéPartition ΓöéDescription                                       Γöé
  13210. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13211. Γöé00        ΓöéUnused Partition                                  Γöé
  13212. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13213. Γöé01        ΓöéDOS, 12-bit FAT                                   Γöé
  13214. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13215. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13216. Γöé03        ΓöéXENIX User, includes SCO/XENIX                    Γöé
  13217. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13218. Γöé04        ΓöéDOS, 16-bit FAT                                   Γöé
  13219. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13220. Γöé05        ΓöéDOS and OS/2, >32MB support; defines an Extended  Γöé
  13221. Γöé          Γöépartition which may include other partition types.Γöé
  13222. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13223. Γöé06        ΓöéDOS, >32MB support, up to 64K Allocation unit     Γöé
  13224. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13225. Γöé07        ΓöéOS/2, >32MB partition support (IFS)               Γöé
  13226. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13227. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13228. Γöé08        ΓöéOS/2 (thru Version 1.3 only)                      Γöé
  13229. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13230. Γöé08        ΓöéDELL partition spanning multiple drives (array)   Γöé
  13231. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13232. Γöé08        ΓöéCommodore DOS Partition                           Γöé
  13233. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13234. Γöé09        ΓöéAIX                                               Γöé
  13235. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13236. Γöé0A        ΓöéOS/2 Boot Manager Partition                       Γöé
  13237. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13238. Γöé0B - 0D   ΓöéAvailable for assignment                          Γöé
  13239. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13240. Γöé0E - 0F   ΓöéReserved                                          Γöé
  13241. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13242. Γöé10        ΓöéReserved                                          Γöé
  13243. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13244. Γöé11        ΓöéOS/2 Boot Manager: DOS - Inactive type 1          Γöé
  13245. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13246. Γöé12        ΓöéReserved                                          Γöé
  13247. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13248. Γöé13        ΓöéAvailable for assignment                          Γöé
  13249. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13250. Γöé14        ΓöéOS/2 Boot Manager: DOS - Inactive type 4          Γöé
  13251. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13252. Γöé15        ΓöéAvailable for assignment                          Γöé
  13253. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13254. Γöé16        ΓöéOS/2 Boot Manager: DOS - Inactive type 6          Γöé
  13255. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13256. Γöé17        ΓöéOS/2 Boot Manager: DOS - Inactive type 7          Γöé
  13257. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13258. Γöé18 - 20   ΓöéAvailable for assignment                          Γöé
  13259. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13260. Γöé21        ΓöéReserved                                          Γöé
  13261. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13262. Γöé22        ΓöéAvailable for assignment                          Γöé
  13263. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13264. Γöé23 - 24   ΓöéReserved                                          Γöé
  13265. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13266. Γöé25        ΓöéAvailable for assignment                          Γöé
  13267. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13268. Γöé26        ΓöéReserved                                          Γöé
  13269. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13270. Γöé27 - 30   ΓöéAvailable for assignment                          Γöé
  13271. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13272. Γöé31        ΓöéReserved                                          Γöé
  13273. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13274. Γöé32        ΓöéAvailable for assignment                          Γöé
  13275. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13276. Γöé33 - 34   ΓöéReserved                                          Γöé
  13277. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13278. Γöé35        ΓöéAvailable for assignment                          Γöé
  13279. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13280. Γöé36        ΓöéReserved                                          Γöé
  13281. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13282. Γöé37 - 3F   ΓöéAvailable for assignment                          Γöé
  13283. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13284. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13285. Γöé41        ΓöéPersonal RISC Boot Partition                      Γöé
  13286. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13287. Γöé42 - 4F   ΓöéAvailable for assignment                          Γöé
  13288. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13289. Γöé50        ΓöéOnTrack Disk Manager                              Γöé
  13290. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13291. Γöé51        ΓöéOnTrack Disk Manager                              Γöé
  13292. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13293. Γöé52        ΓöéReserved                                          Γöé
  13294. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13295. Γöé53 - 55   ΓöéAvailable for assignment                          Γöé
  13296. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13297. Γöé56        ΓöéReserved                                          Γöé
  13298. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13299. Γöé57 - 60   ΓöéAvailable for assignment                          Γöé
  13300. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13301. Γöé61        ΓöéReserved                                          Γöé
  13302. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13303. Γöé62        ΓöéAvailable for assignment                          Γöé
  13304. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13305. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13306. Γöé64        ΓöéSpeedstore                                        Γöé
  13307. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13308. Γöé65        ΓöéNovell 286 Netware                                Γöé
  13309. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13310. Γöé66        ΓöéNovell 386 Netware                                Γöé
  13311. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13312. Γöé67        ΓöéNovell (future use)                               Γöé
  13313. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13314. Γöé68        ΓöéNovell (future use)                               Γöé
  13315. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13316. Γöé69        ΓöéNovell (future use)                               Γöé
  13317. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13318. Γöé6A - 70   ΓöéAvailable for assignment                          Γöé
  13319. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13320. Γöé71        ΓöéReserved                                          Γöé
  13321. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13322. Γöé72        ΓöéAvailable for assignment                          Γöé
  13323. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13324. Γöé73 - 74   ΓöéReserved                                          Γöé
  13325. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13326. Γöé75        ΓöéPC/IX                                             Γöé
  13327. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13328. Γöé76        ΓöéReserved                                          Γöé
  13329. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13330. Γöé77 - 79   ΓöéAvailable for assignment                          Γöé
  13331. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13332. Γöé80 - 81   ΓöéReserved                                          Γöé
  13333. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13334. Γöé82        ΓöéPrime                                             Γöé
  13335. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13336. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13337. Γöé85 - 85   ΓöéAvailable for assignment                          Γöé
  13338. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13339. Γöé86        ΓöéReserved                                          Γöé
  13340. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13341. Γöé87        ΓöéHPFS FT mirrored partition                        Γöé
  13342. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13343. Γöé88 - 92   ΓöéAvailable for assignment                          Γöé
  13344. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13345. Γöé93 - 94   ΓöéReserved                                          Γöé
  13346. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13347. Γöé95 - A0   ΓöéAvailable for assignment                          Γöé
  13348. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13349. ΓöéA1        ΓöéReserved                                          Γöé
  13350. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13351. ΓöéA2        ΓöéAvailable for assignment                          Γöé
  13352. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13353. ΓöéA3 - A4   ΓöéReserved                                          Γöé
  13354. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13355. ΓöéA5        ΓöéAvailable for assignment                          Γöé
  13356. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13357. ΓöéA6        ΓöéReserved                                          Γöé
  13358. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13359. ΓöéA7 - B0   ΓöéAvailable for assignment                          Γöé
  13360. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13361. ΓöéB1        ΓöéReserved                                          Γöé
  13362. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13363. ΓöéB2        ΓöéAvailable for assignment                          Γöé
  13364. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13365. ΓöéB3 - B4   ΓöéReserved                                          Γöé
  13366. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13367. ΓöéB5        ΓöéAvailable for assignment                          Γöé
  13368. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13369. ΓöéB6 - B8   ΓöéReserved                                          Γöé
  13370. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13371. ΓöéB9 - C0   ΓöéAvailable for assignment                          Γöé
  13372. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13373. ΓöéC1        ΓöéReserved                                          Γöé
  13374. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13375. ΓöéC2 - C3   ΓöéAvailable for assignment                          Γöé
  13376. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13377. ΓöéC4        ΓöéReserved                                          Γöé
  13378. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13379. ΓöéC5        ΓöéAvailable for assignment                          Γöé
  13380. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13381. ΓöéC6        ΓöéReserved                                          Γöé
  13382. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13383. ΓöéC7        ΓöéHPFS FT disabled mirrored partition               Γöé
  13384. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13385. ΓöéC8 - D7   ΓöéAvailable for assignment                          Γöé
  13386. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13387. ΓöéD8        ΓöéCP/M 86                                           Γöé
  13388. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13389. ΓöéD9 - DA   ΓöéAvailable for assignment                          Γöé
  13390. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13391. ΓöéDB        ΓöéReserved                                          Γöé
  13392. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13393. ΓöéDC - E0   ΓöéAvailable for assignment                          Γöé
  13394. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13395. ΓöéE1        ΓöéSpeedstore                                        Γöé
  13396. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13397. ΓöéE2        ΓöéAvailable for assignment                          Γöé
  13398. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13399. ΓöéE3        ΓöéStorage Dimensions (Maxtor Retail Subsidiary)     Γöé
  13400. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13401. ΓöéE4        ΓöéSpeedstore                                        Γöé
  13402. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13403. ΓöéE5 - E6   ΓöéReserved                                          Γöé
  13404. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13405. ΓöéE7 - F0   ΓöéAvailable for assignment                          Γöé
  13406. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13407. ΓöéF1        ΓöéStorage Dimensions (Maxtor Retail subsidiary)     Γöé
  13408. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13409. ΓöéF2 - F3   ΓöéReserved                                          Γöé
  13410. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13411. ΓöéF4        ΓöéStorage Dimensions (Maxtor Retail subsidiary)     Γöé
  13412. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13413. ΓöéF5        ΓöéAvailable for assignment                          Γöé
  13414. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13415. ΓöéF6        ΓöéReserved                                          Γöé
  13416. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13417. ΓöéF7 - FD   ΓöéAvailable for assignment                          Γöé
  13418. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13419. ΓöéFE        ΓöéIBM PS/2 IML                                      Γöé
  13420. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13421. ΓöéFF        ΓöéBad Block Tables - Must be on cylinder 0          Γöé
  13422. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  13423.  
  13424.  
  13425. ΓòÉΓòÉΓòÉ 19.4. Extended DOS Partition ΓòÉΓòÉΓòÉ
  13426.  
  13427. Fixed disks can be divided into primary partitions, and an extended partition 
  13428. that contains multiple logical block devices.  The extended partition is 
  13429. indicated by a System ID byte of 05h in the partition table of the Master Boot 
  13430. Record. This partition cannot be started, and programs that can set startable 
  13431. partitions (such as OS/2 FDISK) do not allow the partition to be marked as able 
  13432. to start. 
  13433.  
  13434. The extended DOS partition can be created only if a primary DOS partition 
  13435. already exists on a startable drive.  A primary partition is a partition with a 
  13436. System ID byte of 01h, 04h, 06h, or 07h.  If the drive cannot be started, then 
  13437. an extended DOS partition can be created without having a primary DOS 
  13438. partition. 
  13439.  
  13440. Note: 
  13441.  
  13442.    1. FDISK refers to extended volumes as logical drives. 
  13443.  
  13444.    2. This extended partition support can be used on any fixed disk supported 
  13445.       by the OS/2 operating system. 
  13446.  
  13447.  The extended DOS partition starts and ends on a cylinder boundary, and 
  13448.  contains a collection of extended volumes that are linked together by a 
  13449.  pointer in the extended volumes' extended boot record.  An extended volume 
  13450.  consists of an extended boot record and one logical block device.  In OS/2 
  13451.  Version 1.0, an extended volume could not be larger than 32MB, due to the 
  13452.  limitations of the FAT file system.  However, in OS/2 2.0 and 2.1, this 
  13453.  restriction has been removed.  An extended volume created within the extended 
  13454.  DOS partition can be any size, from one cylinder long through the maximum 
  13455.  available contiguous space in the extended DOS partition. All extended volumes 
  13456.  must start and end on a cylinder boundary. The extended boot record 
  13457.  corresponds to the Master Boot Record at the beginning of an actual physical 
  13458.  disk.  The logical block device corresponds to the DOS partition that is 
  13459.  pointed to by the Master Boot Record. 
  13460.  
  13461.  The logical block device begins with a normal DOS boot sector if it is a DOS 
  13462.  logical block device (System ID=1, 4, or 6).  Installable File System (IFS) 
  13463.  logical block devices (System ID=7) need not start with a normal DOS boot 
  13464.  sector.  This logical block device must start on a cylinder and head boundary 
  13465.  and must follow the extended boot record on the physical disk.  The logical 
  13466.  block device and the extended volume both end on the same cylinder boundary. 
  13467.  
  13468.  Each extended volume contains an extended boot record located in the first 
  13469.  sector of the disk location assigned to it.  This extended boot record 
  13470.  contains the 55AAh signature ID byte.  This allows programs that look at the 
  13471.  Extended (Master) Boot Record to be compatible.  This extended boot record 
  13472.  also contains a partition table, which can contain only two types of entries. 
  13473.  The boot code is not critical, as the devices are not considered startable. 
  13474.  The boot code can simply report a message indicating an unstartable partition 
  13475.  if it is executed. 
  13476.  
  13477.  The partition table portion of the extended boot record is the same as the 
  13478.  partition table structure in the Master Boot Record.  This structure has four 
  13479.  partition entries of 16 bytes each.  The System ID byte must be filled in for 
  13480.  all four entries with one of the following values: 
  13481.  
  13482.  00h    No space allocated in this entry. 
  13483.  
  13484.  01h    DOS partition up to 16MB. 
  13485.  
  13486.  04h    DOS partition with 32MB > SIZE > 16MB. 
  13487.  
  13488.  05h    Maps out area assigned to the next extended volume. Serves as a pointer 
  13489.         to the next extended boot record. 
  13490.  
  13491.  06h    DOS partition size > 32MB. 
  13492.  
  13493.  07h    Installable file system. 
  13494.  
  13495.  If the System ID byte is 0, then the values in that partition table entry are 
  13496.  set to 0. 
  13497.  
  13498.  If the operating system detects any values other than 01h, 04h, 06h, or 07h, 
  13499.  it ignores that entry and does not attempt to install the logical block 
  13500.  device.  This allows future expansion of devices in this area without problems 
  13501.  of compatibility with earlier systems. 
  13502.  
  13503.  The partition start and end fields Cylinder, Head, and Sector (C,H,S) are 
  13504.  filled in for any of the four partition entries in an extended boot record 
  13505.  that have one of the System ID bytes.  This allows a program such as FDISK to 
  13506.  determine the allocated space in the extended DOS partition, and allows the 
  13507.  physical device drivers to determine the physical DASD area that belongs to 
  13508.  it.  The partition start and end fields (C,H,S) for the partition entry that 
  13509.  points to the logical block device (System ID 01h, 04h, 06h, or 07h) map out 
  13510.  the physical boundaries of the logical block device.  They are offset relative 
  13511.  to the beginning of the extended boot record that the entry resides in.  The 
  13512.  partition start and end fields for the partition entry that points to the next 
  13513.  extended volume (System ID 05h) map out the physical boundaries of the next 
  13514.  extended volume.  They are relative to the beginning of the entire physical 
  13515.  disk. 
  13516.  
  13517.  The relative sector and number of sector fields are set up differently 
  13518.  depending on what System ID byte is used. If 01h, 04h, 06h, or 07h is in the 
  13519.  System ID field for that extended partition entry (pointer to the logical 
  13520.  block device), the relative sector field is set up as an offset from (and 
  13521.  including) the start of the extended boot record for the associated extended 
  13522.  volume.  The number of sectors field is filled in with the size of the created 
  13523.  logical block device area (that is, the number of sectors mapped out by the 
  13524.  start and stop cylinder/track/sector fields).  The size of the extended volume 
  13525.  can be calculated by adding the relative sector field and the sector size 
  13526.  field of the associated extended boot record. 
  13527.  
  13528.  If the System ID byte is 05h, then the relative sector field is the offset (of 
  13529.  the next extended volume) in sectors from the start of the entire extended DOS 
  13530.  partition The number of sectors field is not used in this field, and is filled 
  13531.  with 00hs. 
  13532.  
  13533.  This architecture allows only one logical block device to be defined for each 
  13534.  extended boot record.  Therefore, a maximum of two partition entries at a time 
  13535.  is used in each extended boot record - an entry with System ID byte of 01h, 
  13536.  04h, 06h, or 07h, and an entry with ID of 05h (which is the pointer to the 
  13537.  next extended volume). 
  13538.  
  13539.  Although only two entries can be used, a program installing these devices does 
  13540.  not assume that the first two entries will be the non-zero entries. 
  13541.  
  13542.  
  13543. ΓòÉΓòÉΓòÉ 19.5. Installing Block Devices in the Extended DOS Partition ΓòÉΓòÉΓòÉ
  13544.  
  13545. To install block devices, physical device drivers first install the primary DOS 
  13546. partitions on all physical drives, if any exist. This ensures that an existing 
  13547. drive letter, D:, on the 81h drive remains the same. After these devices are 
  13548. installed on the 80h drive, the drivers look for the existence of the extended 
  13549. DOS partition.  If one exists, then the physical device drivers look at the 
  13550. first sector of the extended DOS partition for the first extended boot record. 
  13551. If there is a valid System ID (01h, 04h, 06h, or 07h) in any of the four 
  13552. partition entries, the device is installed and assigned the next available 
  13553. drive letter.  This occurs before any CONFIG.SYS device drivers are loaded, so 
  13554. the FDISK will correctly display the drive letter when space is allocated for 
  13555. the drive. 
  13556.  
  13557. The first extended boot record (in the extended DOS partition) is a special 
  13558. case, because it is possible there will not be a device to be installed defined 
  13559. in the partition table.  The first device might have been created and then 
  13560. deleted at some time.  However, the first extended boot record is needed to 
  13561. point to the next one, if one exists.  Any other extended boot record will 
  13562. always have a device to be installed. 
  13563.  
  13564. Once a device has been installed (or the special cases above occur), the 
  13565. physical device driver searches the other partition entries for a System ID 
  13566. byte of 05h, indicating that another device (extended volume) exists. If a 05h 
  13567. is not found, there are no more logical block devices (extended volumes) in the 
  13568. extended DOS partition. 
  13569.  
  13570. If a 05h System ID is found, the start location in that partition entry is read 
  13571. in order to find the location of the next extended boot record.  When located, 
  13572. it is read in, and then the process is repeated in order to install additional 
  13573. devices. 
  13574.  
  13575. Once all the valid devices for a physical drive have been installed, the next 
  13576. physical drive is examined and the entire process is repeated. 
  13577.  
  13578. A device driver does not assume any order dependency when searching for a 
  13579. particular System ID byte in an extended boot record.  All four possible 
  13580. entries in an extended boot record partition table are searched, before a 
  13581. driver decides that a particular System ID byte does not exist. 
  13582.  
  13583. The extended DOS partition can only be created if a primary DOS or IFS 
  13584. partition already exists on a bootable drive.  A primary DOS partition has a 
  13585. System ID of 01h, 04h, or 06h.  A primary IFS partition has a System ID of 07h. 
  13586. If the drive is not bootable, an extended DOS partition can be created without 
  13587. having a primary DOS partition.  The extended DOS partition starts and ends on 
  13588. a cylinder boundary. 
  13589.  
  13590.  
  13591. ΓòÉΓòÉΓòÉ 19.6. Creating Block Devices in the Extended DOS Partition ΓòÉΓòÉΓòÉ
  13592.  
  13593. To create the structure for an extended volume in the extended DOS partition, 
  13594. FDISK determines if there is available space in the extended DOS partition and 
  13595. if less than 24 total devices are allocated in the system.  The maximum number 
  13596. of block devices allowed is 26, and two are used by diskettes, A: and B:.  The 
  13597. program then creates an extended boot record at the space located, with a 
  13598. partition entry filled in (with the size and location information) for that 
  13599. logical block device.  If this is not the first extended boot record, the 
  13600. program backs up to the last extended boot record in the chain (as linked by 
  13601. the 05h entries), and creates a partition entry in that extended boot record 
  13602. that has the size and location data for the newly created record.  This action 
  13603. creates the pointer required to locate the newly created boot record. 
  13604.  
  13605. If this is the first extended boot record in the extended DOS partition only 
  13606. the size, type, and location of the logical block device needs to be put into a 
  13607. partition entry.  The start of the extended DOS partition in the Master Boot 
  13608. Record serves as a pointer to this extended volume. 
  13609.  
  13610.  
  13611. ΓòÉΓòÉΓòÉ 19.7. Deleting Block Devices in the Extended DOS Partition ΓòÉΓòÉΓòÉ
  13612.  
  13613. To delete a block device, the program sets the 16-byte partition entry that 
  13614. contained the System ID byte, to 0.  If in the same extended boot record there 
  13615. exists a partition entry with System ID of 05h, indicating that another 
  13616. extended volume exists, this information is copied to the 05h partition entry 
  13617. of the previous extended boot record. (See the following figure for further 
  13618. information.) 
  13619.  
  13620. Note:  There is one exception to this rule.  If the deleted logical block 
  13621.        device is at the beginning of the extended DOS partition, only the 
  13622.        partition entry indicating the device type is set to 0. The 05h pointer 
  13623.        information is to be left in place. 
  13624.  
  13625.             ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  13626.             Γöé  Master Boot Record......Note 1.... Γöé
  13627.             Γöé....................ΓöîΓöÇΓöÇΓö¼ΓöÇΓöÇΓö¼ΓöÇΓöÇΓö¼ΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöñ
  13628.             Γöé............Note 2 Γöé4 Γöé2 Γöé5 Γöé0 Γöé55AAΓöé  Note 3
  13629.             Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓö┤ΓöÇΓöÇΓö┤ΓöÇΓöÇΓö┤ΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöñ
  13630.             Γöé Primary DOS Partition Note 4        Γöé
  13631.             Γöé    DOS C: drive  32MB  Size        Γöé
  13632.             Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13633.             Γöé   Other Operating System Partition  Γöé
  13634.             Γöé            (XENIX)    Note 5        Γöé     E
  13635.    E   ΓöîΓöÇΓöÇ  Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ ΓöÇΓöÇΓöÉ x
  13636.    x   Γöé    Γöé Extended Boot Record..Note 6........Γöé   Γöé t
  13637.    t   Γöé    Γöé....................ΓöîΓöÇΓöÇΓö¼ΓöÇΓöÇΓö¼ΓöÇΓöÇΓö¼ΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöñ   Γöé
  13638.        Γöé    Γöé............Note 7 Γöé4 Γöé5 Γöé0 Γöé0 Γöé55AAΓöé   Γöé V
  13639.    D   Γöé    Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓö┤ΓöÇΓöÇΓö┤ΓöÇΓöÇΓö┤ΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöñ   Γöé o
  13640.    O   Γöé    Γöé LOGICAL Block Device D:      Note 8 Γöé   Γöé l
  13641.    S   Γöé    Γöé 32MB  Size  16MB or IFS           Γöé   Γöé u
  13642.        Γöé    Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ ΓöÇΓöÇΓöÿ m
  13643.    P   Γöé    Γöé Extended Boot Record..Note 9........Γöé     e
  13644.    a   Γöé    Γöé....................ΓöîΓöÇΓöÇΓö¼ΓöÇΓöÇΓö¼ΓöÇΓöÇΓö¼ΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöñ
  13645.    r   Γöé    Γöé...........Note 10 Γöé1 Γöé5 Γöé0 Γöé0 Γöé55AAΓöé
  13646.    t   Γöé    Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓö┤ΓöÇΓöÇΓö┤ΓöÇΓöÇΓö┤ΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöñ
  13647.    i   Γöé    Γöé LOGICAL Block Device E:             Γöé
  13648.    t   Γöé    Γöé Size  16MB                         Γöé
  13649.    i   Γöé    Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13650.    o   Γöé    Γöé Extended Boot Record................Γöé
  13651.    n   Γöé    Γöé....................ΓöîΓöÇΓöÇΓö¼ΓöÇΓöÇΓö¼ΓöÇΓöÇΓö¼ΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöñ
  13652.        Γöé    Γöé...........Note 11 Γöé6 Γöé5 Γöé0 Γöé0 Γöé55AAΓöé
  13653.        Γöé    Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓö┤ΓöÇΓöÇΓö┤ΓöÇΓöÇΓö┤ΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöñ
  13654.        Γöé    Γöé Area reserved for future CP/DOS use Γöé
  13655.        Γöé    Γöé           Note 12                   Γöé
  13656.        Γöé    Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13657.        Γöé    Γöé Extended Boot Record................Γöé
  13658.        Γöé    Γöé....................ΓöîΓöÇΓöÇΓö¼ΓöÇΓöÇΓö¼ΓöÇΓöÇΓö¼ΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöñ
  13659.        Γöé    Γöé...........Note 13 Γöé4 Γöé0 Γöé0 Γöé0 Γöé55AAΓöé
  13660.        Γöé    Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓö┤ΓöÇΓöÇΓö┤ΓöÇΓöÇΓö┤ΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöñ
  13661.        Γöé    Γöé LOGICAL Block Device G:             Γöé
  13662.        Γöé    Γöé 32MB  Size  16MB                  Γöé
  13663.        Γöé    Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13664.        Γöé    Γöé Free Space in Extended Partition    Γöé
  13665.        ΓööΓöÇΓöÇ  Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13666.             Γöé Free Space not allocated to any     Γöé
  13667.             Γöé partition                           Γöé
  13668.             ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  13669.  
  13670.   Note 1     Master Boot Record code, starting at Track 000, Head 00, Sector 01 
  13671.              of disk 80h or 81h. 
  13672.  
  13673.   Note 2     Partition table for Master Boot Record.  See BPB and Get Device 
  13674.              Parameters for Extended Volumes for the layout.  The 4 is the 
  13675.              System ID byte in the partition table that indicates a DOS 
  13676.              partition greater than 16MB and less than or equal to 32MB.  The 2 
  13677.              is a XENIX XENIX** partition, and the 05h maps the extended DOS 
  13678.              partition. 
  13679.  
  13680.   Note 3     55AAh is the signature to validate the Master Boot Record. 
  13681.  
  13682.   Note 4     Primary DOS area, which must reside entirely in first 32MB of the 
  13683.              disk. C: is block device 80h.  D: is block device 81h, if it 
  13684.              exists.  This partition has a maximum size of 32MB. 
  13685.  
  13686.   Note 5     Other operating system on disk. 
  13687.  
  13688.   Note 6     Extended boot record for extended volume that corresponds to 
  13689.              logical block device D:.  (This assumes only the 80h block device 
  13690.              exists.)  If the 81h block device exists, this would be block 
  13691.              device E:. 
  13692.  
  13693.   Note 7     Logical block device D: partition table entry. This has a maximum 
  13694.              size of 32MB, which is indicated by the System ID of 4.  This must 
  13695.              set the logical DOS block device as starting at the next track 
  13696.              boundary.  The 05h System ID byte in the second partition entry 
  13697.              maps out the space allocated to the next extended volume. The 
  13698.              starting cylinder/sector/head in the partition entry with an ID of 
  13699.              05h is the location of the next extended boot record of the next 
  13700.              extended volume. 
  13701.  
  13702.   Note 8     Logical block device D:.  Logical DOS devices and the primary DOS 
  13703.              partition always begin with a DOS boot record. 
  13704.  
  13705.   Note 9     Extended boot record for logical block device E:. 
  13706.  
  13707.  Note 10     Partition table entry for logical block device E:. This logical 
  13708.              DOS block device is less than or equal to 16MB, as indicated by 
  13709.              the System ID of 01h.  The entry with System ID of 05h maps out 
  13710.              the space allocated to the next extended volume. 
  13711.  
  13712.  Note 11     The System ID byte of 06h indicates a logical block device greater 
  13713.              than 32MB.  This block device is indicated by a block device 
  13714.              letter of F.  Note also that a pointer to the next extended volume 
  13715.              exists. 
  13716.  
  13717.  Note 12     The greater than 32MB FAT partition. 
  13718.  
  13719.  Note 13     Partition table entry for final DOS logical block device. Note 
  13720.              that the absence of the 05h ID byte means that there are no other 
  13721.              extended volumes allocated in the extended DOS partition.  This 
  13722.              would have a block device letter of G:, if the previous logical 
  13723.              block device was recognized.  Otherwise, it would be F:. 
  13724.  
  13725.   Offs Purpose                             Head  Sector  Cylinder
  13726.                                ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  13727.   1BE Partition 1 begin        Γöé boot ind Γöé  H  Γöé  S  Γöé   CYL    Γöé
  13728.                                Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13729.   1C2 Partition 1 end          Γöé syst ind Γöé  H  Γöé  S  Γöé   CYL    Γöé
  13730.                                Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13731.   1C6 Partition 1 rel sect     Γöé   Low word     Γöé   High word    Γöé
  13732.                                Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13733.   1CA Partition 1 # sects      Γöé   Low word     Γöé   High word    Γöé
  13734.                                Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13735.   1CE Partition 2 begin        Γöé boot ind Γöé  H  Γöé  S  Γöé   CYL    Γöé
  13736.                                Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13737.   1D2 Partition 2 end          Γöé syst ind Γöé  H  Γöé  S  Γöé   CYL    Γöé
  13738.                                Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13739.   1D6 Partition 2 rel sect     Γöé   Low word     Γöé   High word    Γöé
  13740.                                Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13741.   1DA Partition 2 # sects      Γöé   Low word     Γöé   High word    Γöé
  13742.                                Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13743.   1DE Partition 3 begin        Γöé boot ind Γöé  H  Γöé  S  Γöé   CYL    Γöé
  13744.                                Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13745.   1E2 Partition 3 end          Γöé syst ind Γöé  H  Γöé  S  Γöé   CYL    Γöé
  13746.                                Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13747.   1E6 Partition 3 rel sect     Γöé   Low word     Γöé   High word    Γöé
  13748.                                Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13749.   1EA Partition 3 # sects      Γöé   Low word     Γöé   High word    Γöé
  13750.                                Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13751.   1EE Partition 4 begin        Γöé boot ind Γöé  H  Γöé  S  Γöé   CYL    Γöé
  13752.                                Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13753.   1F2 Partition 4 end          Γöé syst ind Γöé  H  Γöé  S  Γöé   CYL    Γöé
  13754.                                Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13755.   1F6 Partition 4 rel sect     Γöé   Low word     Γöé   High word    Γöé
  13756.                                Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13757.   1FA Partition 4 # sects      Γöé   Low word     Γöé   High word    Γöé
  13758.                                Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  13759.   1FE Signature                Γöé                Γöé
  13760.                                ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  13761.  
  13762.  
  13763. ΓòÉΓòÉΓòÉ 19.8. BPB and Get Device Parameters for Extended Volumes ΓòÉΓòÉΓòÉ
  13764.  
  13765. For purposes of the BIOS Parameter Block (BPB) and Get Device Parameters 
  13766. (generic IOCtl), an extended volume appears to the system as a fixed disk.  The 
  13767. extended boot record corresponds to the Master Boot Record of a real fixed disk 
  13768. and the logical block device corresponds to the primary DOS partition. 
  13769.  
  13770. This means the BPB of the logical DOS block device of the extended volume 
  13771. describes the environment in the extended volume.  This consists of the 
  13772. extended boot record and the logical block device. The meaning of the fields is 
  13773. consistent with the meaning of the fields for the primary DOS partition; they 
  13774. relate to the entire physical disk, the primary DOS partition, and the Master 
  13775. Boot Record.  For example, the number of hidden sectors is the distance from 
  13776. the beginning of the extended boot record (of the extended volume in question) 
  13777. to the start of the logical DOS block device (the DOS Boot Record).  The number 
  13778. of sectors field describes only the logical block device, just as it normally 
  13779. only describes the primary DOS partition. 
  13780.  
  13781.  
  13782. ΓòÉΓòÉΓòÉ 19.8.1. Category 08h Generic IOCtl Commands ΓòÉΓòÉΓòÉ
  13783.  
  13784. The philosophy described above also applies to the disk generic IOCtl commands. 
  13785. For any logical block device of an associated extended volume, physical 
  13786. cylinder, head, and sector I/O is mapped to within the extended volume - 
  13787. Cylinder 0, Head 0, Sector 1 is mapped to the extended boot record.  An error 
  13788. condition is generated for any attempt to do C,H,S I/O beyond the size of the 
  13789. extended volume in question. 
  13790.  
  13791.  
  13792. ΓòÉΓòÉΓòÉ 19.8.2. Category 09h Generic IOCtl Commands ΓòÉΓòÉΓòÉ
  13793.  
  13794. Category 09h generic IOCtl commands are used to access the entire physical 
  13795. fixed disk without consideration of logical volumes.  Physical cylinder, head, 
  13796. and sector begin at the start of the physical drive, instead of at the 
  13797. beginning of an extended volume. 
  13798.  
  13799.  
  13800. ΓòÉΓòÉΓòÉ 19.8.3. Type 6 Partition ΓòÉΓòÉΓòÉ
  13801.  
  13802. A 12-bit or 16-bit type FAT can be used to map a Type 6 partition because the 
  13803. type of FAT is based strictly on the number of allocation units (clusters), and 
  13804. is the same algorithm used to define the type of FAT in the OS/2 Version 1.0 
  13805. operating system.  FAT cluster sizes are based on powers of 2.  Assuming usage 
  13806. of the OS/2 FORMAT utility, the minimum cluster size for a hard file is 2KB. 
  13807. Cluster size and the type of FAT (12-bit verses 16-bit) are determined by the 
  13808. media partition size.  The OS/2 FORMAT algorithm is: 
  13809.  
  13810. ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  13811.  
  13812. If partition size =<16MB
  13813. then;
  13814.      use 12-bit FAT;               /* max 4084 entries    */
  13815.      max cluster size = 4KB;
  13816. end;
  13817. else;                             /* partition size >16MB */
  13818.      use 16-bit FAT;              /* max 64KB entries     */
  13819.      min cluster size = 2KB;
  13820. end;
  13821.  
  13822. ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  13823.  
  13824. The actual determination of the partition type is made based on the number of 
  13825. clusters on that partition.  OS/2 FORMAT makes sure that this is true for the 
  13826. <16MB and >16MB partitions. 
  13827.  
  13828. ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  13829.  
  13830. If number of clusters <= 4084
  13831.      use 12-bit FAT;              /* max 4084 entries  */
  13832. else
  13833.      use 16-bit FAT;              /* max 64KB entries  */
  13834.  
  13835. ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  13836.  
  13837. A partition size of 128MB requires a 2KB cluster size, based on a maximum of 
  13838. 64KB allocation units (clusters).  A partition size in the range of 129MB and 
  13839. 256MB requires a 4KB cluster size, based on 64KB allocation units.  A partition 
  13840. size in the range of 257MB and 512MB requires an 8KB cluster size, based on 
  13841. 64KB allocation units. 
  13842.  
  13843. The configuration table used by OS/2 FORMAT is show in the following table: 
  13844.  
  13845. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  13846. ΓöéTotal # of     ΓöéSize of        ΓöéSector Cluster Γöé# of Root DIR  Γöé
  13847. ΓöéSectors        ΓöéPartition      Γöé               ΓöéEntries        Γöé
  13848. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13849. Γöé32K            Γöé16MB           Γöé8              Γöé512            Γöé
  13850. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13851. Γöé64K            Γöé32MB           Γöé4              Γöé512            Γöé
  13852. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13853. Γöé256K           Γöé128MB          Γöé4              Γöé512            Γöé
  13854. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13855. Γöé512K           Γöé256MB          Γöé8              Γöé512            Γöé
  13856. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13857. Γöé1M             Γöé512MB          Γöé16             Γöé512            Γöé
  13858. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13859. Γöé2M             Γöé1GB            Γöé32             Γöé512            Γöé
  13860. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13861. Γöé4M             Γöé2GB            Γöé64             Γöé512            Γöé
  13862. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13863. Γöé8M             Γöé4GB            Γöé128            Γöé512            Γöé
  13864. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  13865.  
  13866. Note:  For Type 6 partitions, it is safe to use a non-default configuration, 
  13867.        but this might be unsafe for other partition types. 
  13868.  
  13869.  The partition can reside anywhere on the media, as the primary DOS partition, 
  13870.  or as an extended volume within the extended DOS partition. The BPB parameter 
  13871.  number of sectors per FAT field width has been extended from a byte to a WORD, 
  13872.  in order to define a full 128KB FAT structure.  This change affects all DOS 
  13873.  partition types. 
  13874.  
  13875.  
  13876. ΓòÉΓòÉΓòÉ 19.8.3.1. Layout of Block Devices with a Type 6 Partition Using XENIX ΓòÉΓòÉΓòÉ
  13877.  
  13878.           ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  13879.           Γöé  Master Startup Record...Note 1.... Γöé
  13880.           Γöé....................ΓöîΓöÇΓöÇΓö¼ΓöÇΓöÇΓö¼ΓöÇΓöÇΓö¼ΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöñ
  13881.           Γöé...........Note 2  Γöé2 Γöé6 Γöé0 Γöé0 Γöé55AAΓöé  Note 3
  13882.           Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓö┤ΓöÇΓöÇΓö┤ΓöÇΓöÇΓö┤ΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöñ
  13883.           Γöé   Other Operating System Partition  Γöé
  13884.           Γöé          (XENIX)                    Γöé
  13885.           Γöé     Size  32MB  Note 4             Γöé
  13886.           Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13887.           Γöé Primary DOS Partition Note 5        Γöé
  13888.           Γöé    DOS C: drive  32MB  Size        Γöé
  13889.           Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  13890.           Γöé             Free Space              Γöé
  13891.           Γöé  (not allocated to any partition)   Γöé
  13892.           ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  13893.  
  13894.  Note 1    Master Startup (Boot) Record code, starting at Track 000, Head 00, 
  13895.            Sector 01 of disk 80h or 81h. 
  13896.  
  13897.  Note 2    Partition table for Master Startup (Boot) Record.  The 2 is the 
  13898.            System ID byte in the partition table that indicates a XENIX 
  13899.            partition, and the 06h map indicates a primary DOS Type 6 partition. 
  13900.  
  13901.  Note 3    55AAH is the signature to validate the Master Startup (Boot) Record. 
  13902.  
  13903.  Note 4    Other operating system (XENIX) on disk. 
  13904.  
  13905.  Note 5    Primary DOS partition.  C: is block device 80h. The partition type 
  13906.            in this example is a 6, because it ends beyond the first 32MB of the 
  13907.            disk.  Within the scope of this definition, though the size of a 
  13908.            primary DOS partition can be less than 32MB (because it ends beyond 
  13909.            the first 32MB of the disk), it is defined as a Type 6. 
  13910.  
  13911.  
  13912. ΓòÉΓòÉΓòÉ 19.8.3.2. Layout of Block Devices with a Type 6 Partition ΓòÉΓòÉΓòÉ
  13913.  
  13914.           ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  13915.           Γöé  Master Startup Record...Note 1.... Γöé
  13916.           Γöé....................ΓöîΓöÇΓöÇΓö¼ΓöÇΓöÇΓö¼ΓöÇΓöÇΓö¼ΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöñ
  13917.           Γöé...........Note 2  Γöé6 Γöé0 Γöé0 Γöé0 Γöé55AAΓöé  Note 3
  13918.           Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓö┤ΓöÇΓöÇΓö┤ΓöÇΓöÇΓö┤ΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöñ
  13919.           Γöé Primary DOS Partition Note 4        Γöé
  13920.           Γöé    DOS C: drive  Size  32MB        Γöé
  13921.           ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  13922.  
  13923.  Note 1     Master Startup (Boot) Record code, starting at Track 000, Head 00, 
  13924.            Sector 01 of disk 80h or 81h. 
  13925.  
  13926.  Note 2    Partition table for Master Boot Record.  The 6 is the System ID byte 
  13927.            in the partition table that indicates a DOS partition where SIZE > 
  13928.            32MB. 
  13929.  
  13930.  Note 3    55AAh is the signature to validate the Master Startup (Boot) Record. 
  13931.  
  13932.  Note 4    Primary DOS area.  Owns the entire media and exceeds 32MB in size. 
  13933.            C: is block device 80h. 
  13934.  
  13935.  
  13936. ΓòÉΓòÉΓòÉ 19.8.4. Type 7 Partition ΓòÉΓòÉΓòÉ
  13937.  
  13938. Partition Type 7 is used for Installable File Systems only.  The internal FAT 
  13939. file system should not use this partition type because older versions of the 
  13940. DOS and OS/2 operating systems will not be able to access the partition. 
  13941.  
  13942.  
  13943. ΓòÉΓòÉΓòÉ 20. Extended Device Driver Interface Specification ΓòÉΓòÉΓòÉ
  13944.  
  13945. The Extended Device Driver interface supported in OS/2 2.1 is specifically 
  13946. targeted for service of hard disk devices.  This interface can: 
  13947.  
  13948.    o  Support submission of multiple asynchronous requests 
  13949.    o  Allow physically discontiguous data transfer areas 
  13950.    o  Support a new class of disk devices with advanced bus-mastering and 
  13951.       intelligent transfer capabilities 
  13952.    o  Allow physical device drivers to optimally service large numbers of 
  13953.       requests in a heavily loaded environment 
  13954.    o  Provide a mechanism and supporting semantics to support prioritization of 
  13955.       request services 
  13956.  
  13957.  The Extended Device Driver interface employs a Request List of prioritized 
  13958.  commands the driver can reorder to optimize disk access, subject to 
  13959.  prioritization requirements.  The requests can also be grouped by the kernel 
  13960.  for notification callout from the device driver.  In addition, READ and WRITE 
  13961.  operations use scatter/gather descriptors, which allow for data transfer to 
  13962.  and from discontiguous data buffers.  The interface is used asynchronously, 
  13963.  removing the need for blocking in the physical device driver or the physical 
  13964.  device driver manager when the I/O request itself is asynchronous. 
  13965.  
  13966.  While the asynchronous, multi-request aspects of the interface contribute 
  13967.  greatly to overall system performance on existing hardware, scatter and gather 
  13968.  is specifically targeted for new classes of disk device hardware.  This new 
  13969.  class of devices supports transfer from disk to physically discontiguous 
  13970.  memory space much more efficiently than alternative implementations. 
  13971.  
  13972.  The importance of this relative efficiency is amplified by the introduction of 
  13973.  paging to the OS/2 operating system, where linearly contiguous memory normally 
  13974.  maps to lists of discontiguous physical addresses.  In addition, this 
  13975.  interface is designed and optimized for server environments such as LAN Server 
  13976.  2.0, where file service paths are Ring 0 only and can execute at task or 
  13977.  interrupt time.  In such an environment, it must be possible to queue requests 
  13978.  to the disk driver for service in the context of a network interrupt. 
  13979.  
  13980.  Extended physical disk device drivers refer to a superset of the standard OS/2 
  13981.  1.x physical disk device drivers.  The term standard request is used to refer 
  13982.  to the old style request packets format.  The term extended request is used to 
  13983.  refer to the new request packet format. 
  13984.  
  13985.  
  13986. ΓòÉΓòÉΓòÉ 20.1. Disk Device Driver Architecture ΓòÉΓòÉΓòÉ
  13987.  
  13988. Driver architecture centers around the need to provide fast, efficient services 
  13989. to a file system in a paged environment.  In addition, consideration for the 
  13990. needs of a network file server has influenced aspects of the design; however, 
  13991. the requirements are identical in a local-only or workstation environment (that 
  13992. is, a direct, asynchronous, zero-overhead interface between the file system and 
  13993. the supporting physical disk device drivers). 
  13994.  
  13995. In the OS/2 operating system, a physical disk device driver receives requests 
  13996. for service through a strategy routine at task time in the context of the 
  13997. requestor (an OS/2 thread).  The thread of control is also obtained, in the 
  13998. context of interrupts generated by the disk controller, at the physical device 
  13999. driver interrupt routine.  In the extended architecture, a second strategy 
  14000. routine is introduced, which can be called directly by File System Drivers 
  14001. (FSDs) at task time or in the context of an arbitrary interrupt.  This yields a 
  14002. set of new requirements. 
  14003.  
  14004.  
  14005. ΓòÉΓòÉΓòÉ 20.1.1. Standard OS/2 Strategy Routine ΓòÉΓòÉΓòÉ
  14006.  
  14007. The standard OS/2 strategy routine is essentially unchanged in this 
  14008. architecture.  Underlying queueing mechanisms used by the driver in the 
  14009. strategy routine are modified to support an environment where there are 
  14010. normally two kinds of requests in the queue, standard and extended. 
  14011.  
  14012.  
  14013. ΓòÉΓòÉΓòÉ 20.1.2. Extended Strategy Routine ΓòÉΓòÉΓòÉ
  14014.  
  14015. The extended strategy routine entry point can be called at interrupt or task 
  14016. time.  At interrupt time, the driver can work only with physical addresses or 
  14017. global virtual addresses; therefore, only physical and global virtual 
  14018. addresses, which reference structures that are physically contiguous in memory, 
  14019. are used in this interface.  Physical addresses are used for data transfer 
  14020. areas.  Global virtual addresses are used for request packets, control 
  14021. structures, and entry points. 
  14022.  
  14023. Much of the performance gain realized in this interface is dependent on the 
  14024. asynchronous processing of requests.  The performance gain realized is degraded 
  14025. considerably if the driver blocks in the strategy routine, forcing the request 
  14026. to be synchronous.  Therefore, while it is not required that the driver never 
  14027. block, it is very strongly recommended if performance is of interest in the 
  14028. system for which the driver is targeted.  Additionally, if the driver has set 
  14029. the does-not-block bit in the DD_DriverCaps field returned from the GET DRIVER 
  14030. CAPABILITIES command, then the driver absolutely must not block in any code 
  14031. path accessible by the extended strategy routine entry point.  Furthermore, it 
  14032. must not call any DevHlp routine that could block, effectively limiting the 
  14033. DevHlps that can be called to only those permissible at interrupt time.  Among 
  14034. the DevHlps that could block are Lock and Unlock, so all buffers passed through 
  14035. the extended entry points are guaranteed to be locked. 
  14036.  
  14037. The extended strategy routine is used only to pass requests in Request List 
  14038. form (see Request Lists and Request Control).  The physical device driver 
  14039. queues the requests passed, services the controller as necessary, sets status 
  14040. fields in the requests, and returns. 
  14041.  
  14042.  
  14043. ΓòÉΓòÉΓòÉ 20.1.3. Sorting and Priority ΓòÉΓòÉΓòÉ
  14044.  
  14045. Requests should be sorted into internal queues based on physical disk location 
  14046. and I/O priority to optimize request servicing.  Lower priority requests should 
  14047. be satisfied only where they do not significantly slow service of higher 
  14048. priority requests (for example, when a lower priority request refers to a 
  14049. sector in the same cylinder as a high priority request).  Because the format of 
  14050. requests in Request Lists is different from the format of standard OS/2 
  14051. requests, the queue management DevHlp routines cannot be used. 
  14052.  
  14053. The queueing strategy adopted by the driver is highly dependent on the devices 
  14054. it services.  In general, efficiency and request priority are the primary 
  14055. concerns in determining a queueing strategy.  Lower priority requests should 
  14056. never slow service of higher priority requests. Lower priority requests can be 
  14057. serviced in the context of servicing higher priority requests, so long as no 
  14058. time-costly operations are necessary to service the lower priority requests. 
  14059. In addition, where contention for resources such as auxiliary, driver-allocated 
  14060. buffers or space on a controller buffer is an issue, higher priority requests 
  14061. should be given preference. 
  14062.  
  14063.  
  14064. ΓòÉΓòÉΓòÉ 20.1.4. Request Management ΓòÉΓòÉΓòÉ
  14065.  
  14066. The physical device driver needs to manage both requests submitted to the 
  14067. extended strategy routines with the Request List format and requests submitted 
  14068. to the standard strategy routine with the standard request packet format. 
  14069. Notice that the CommandCode field in the OS/2 standard request packet coincides 
  14070. with the CommandPrefix byte in the extended request packet, which is guaranteed 
  14071. to be the ExecuteChain prefix.  This allows the driver to manage both requests 
  14072. on the same queue. 
  14073.  
  14074.  
  14075. ΓòÉΓòÉΓòÉ 20.1.5. Removable Media ΓòÉΓòÉΓòÉ
  14076.  
  14077. The physical device driver should support requests targeted for removable media 
  14078. in the same way it supports requests for nonremovable media. 
  14079.  
  14080.  
  14081. ΓòÉΓòÉΓòÉ 20.1.6. Devices Not Capable of Scatter/Gather ΓòÉΓòÉΓòÉ
  14082.  
  14083. Although this interface is clearly targeted for a disk device controller 
  14084. capable of scatter/gather, even devices that are not capable of scatter/gather 
  14085. still realize overall system performance gains as a result of supporting 
  14086. multi-request, asynchronous I/O, and interrupt-time execution.  The driver is 
  14087. responsible for deciding how to emulate scatter/gather.  In general, emulating 
  14088. scatter/gather to programmed I/O devices introduces no significant overhead. 
  14089.  
  14090. However, if DMA devices, which do not support scatter/gather, attempt to 
  14091. emulate scatter/gather by mapping each scatter/gather descriptor in a single 
  14092. request to one DMA operation, performance will be poor.  The driver is better 
  14093. off staging transfers through a pair of contiguous buffers.  One buffer can be 
  14094. serviced by the controller while the other is being set up for subsequent 
  14095. operations.  While there is overhead incurred in block-copying data through the 
  14096. staging buffer, this is no worse than the overhead the file system would incur 
  14097. in contiguous cache blocks before submission to a standard OS/2 device driver. 
  14098.  
  14099.  
  14100. ΓòÉΓòÉΓòÉ 20.2. Identifying Extended Device Drivers and Capabilities ΓòÉΓòÉΓòÉ
  14101.  
  14102. If the physical device driver is an extended device driver, it recognizes the 
  14103. GET DRIVER CAPABILITIES command.  This command returns a characteristics bit 
  14104. field, which describes functional capabilities of the device driver, and an 
  14105. entry point vector, which includes the extended strategy routine and several 
  14106. device driver control routines.  If the device driver does not recognize the 
  14107. command or does not respond appropriately, the kernel and all client FSD assume 
  14108. the physical device driver supports only standard OS/2 requests and restricts 
  14109. its behavior appropriately. 
  14110.  
  14111.  
  14112. ΓòÉΓòÉΓòÉ 20.2.1. GET DRIVER CAPABILITIES Command ΓòÉΓòÉΓòÉ
  14113.  
  14114. This command is structured as a standard OS/2 request packet.  Note that the 
  14115. fields prefixed by DD_ are filled in by the physical device driver. (See the 
  14116. following table.) 
  14117.  
  14118. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  14119. ΓöéField                         ΓöéLength                        Γöé
  14120. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  14121. ΓöéRequest Header                Γöé13 BYTES                      Γöé
  14122. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  14123. ΓöéReserved.  Must be zero.      Γöé3 BYTES                       Γöé
  14124. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  14125. ΓöéDD_CapStruct                  ΓöéDWORD                         Γöé
  14126. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  14127. ΓöéDD_VolCharStruct              ΓöéDWORD                         Γöé
  14128. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  14129.  
  14130.  DD_CapStruct        A 16:16 virtual pointer to the Driver Capabilities 
  14131.                      Structure. This pointer is filled in by the physical 
  14132.                      device driver.  See Driver Capabilities Structure (DCS) 
  14133.                      for the format of this structure. 
  14134.  
  14135.  DD_VolCharStruct    A 16:16 virtual pointer to the Volume Characteristics 
  14136.                      Structure (VCS) for this volume.  This pointer is filled 
  14137.                      in by the physical device driver.  See Volume 
  14138.                      Characteristics Structure (VCS) for the format of this 
  14139.                      structure. 
  14140.  
  14141.  
  14142. ΓòÉΓòÉΓòÉ 20.2.1.1. Driver Capabilities Structure (DCS) ΓòÉΓòÉΓòÉ
  14143.  
  14144. The Driver Capabilities Structure (DCS) is maintained by the physical device 
  14145. driver and is passed by reference to the kernel and client FSDs in the GET 
  14146. DRIVER CAPABILITIES command.  The kernel and client FSDs must not modify the 
  14147. structure, as it is shared by FSDs and the physical device driver. A DCS has 
  14148. the following format: 
  14149.  
  14150. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  14151. ΓöéField                         ΓöéLength                        Γöé
  14152. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  14153. ΓöéReserved.  Must be zero.      ΓöéWORD                          Γöé
  14154. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  14155. ΓöéDD_VerMajor                   ΓöéBYTE                          Γöé
  14156. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  14157. ΓöéDD_VerMinor                   ΓöéBYTE                          Γöé
  14158. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  14159. ΓöéDD_Capabilities               ΓöéDWORD                         Γöé
  14160. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  14161. ΓöéDD_Strategy2                  ΓöéDWORD                         Γöé
  14162. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  14163. ΓöéDD_SetFSDInfo                 ΓöéDWORD                         Γöé
  14164. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  14165. ΓöéDD_ChgPriority                ΓöéDWORD                         Γöé
  14166. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  14167. ΓöéDD_SetRestPos                 ΓöéDWORD                         Γöé
  14168. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  14169. ΓöéDD_GetBoundary                ΓöéDWORD                         Γöé
  14170. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  14171.  
  14172.  DD_VerMajor         The major version number of the interface the physical 
  14173.                      device driver supports, equal to 01h in the first release. 
  14174.                      Old major versions do not function correctly with a file 
  14175.                      system using a newer version. 
  14176.  
  14177.  DD_VerMinor         The minor version number of the interface the physical 
  14178.                      device driver supports, equal to 01h in the first release. 
  14179.                      Old minor versions support a strict subset of the 
  14180.                      functionality found in newer versions. 
  14181.  
  14182.  DD_Capabilities     A bit field describing the capabilities of the physical 
  14183.                      device driver: 
  14184.  
  14185.       Bits 0-2    Reserved.  Must be zero. 
  14186.       Bit 3       If set, supports disk mirroring. 
  14187.       Bit 4       If set, supports disk duplexing. 
  14188.       Bit 5       If set, driver does not block in Strategy2.  LAN Server and 
  14189.                   LAN Manager products using the HPFS 386 file system require 
  14190.                   that bit 5 be set to guarantee that the physical device 
  14191.                   driver does not block in Strategy2. 
  14192.       Bits 6-31   Reserved.  Must be zero. 
  14193.  
  14194.  DD_Strategy2        The 16:16 entry point for the strategy routine that 
  14195.                      supports multi-request asynchronous I/O. 
  14196.  
  14197.  DD_SetFSDInfo       The 16:16 entry point for DD_SetFSDInfo. The value 
  14198.                      returned is 0:0, if the service is not provided by the 
  14199.                      physical device driver. 
  14200.  
  14201.  DD_ChgPriority      The 16:16 entry point for DD_ChgPriority. The value 
  14202.                      returned is 0:0, if the service is not provided by the 
  14203.                      physical device driver. 
  14204.  
  14205.  DD_SetRestPos       The 16:16 entry point for DD_SetRestPos. The value 
  14206.                      returned is 0:0, if the service is not provided by the 
  14207.                      physical device driver. 
  14208.  
  14209.  DD_GetBoundary      The 16:16 entry point for DD_GetBoundary. The value 
  14210.                      returned is 0:0, if the service is not provided by the 
  14211.                      physical device driver. 
  14212.  
  14213.  
  14214. ΓòÉΓòÉΓòÉ 20.2.1.2. Volume Characteristics Structure (VCS) ΓòÉΓòÉΓòÉ
  14215.  
  14216. The parameters passed in the Volume Characteristics Structure (VCS) are used by 
  14217. FSDs to optimize disk access and placement of file system structures on an 
  14218. advisory basis.  All values reflect the physical parameters of the logical 
  14219. volume, as if it were a single physical device (that is, whether the media is 
  14220. partitioned or not). This data structure is passed by reference and is 
  14221. maintained and updated by the physical device driver, as necessary.  It is 
  14222. expected that the physical device driver would maintain a separate VCS for each 
  14223. logical volume supported.  A VCS has the following format: 
  14224.  
  14225. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  14226. ΓöéField                         ΓöéLength                        Γöé
  14227. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  14228. ΓöéVolDescriptor                 ΓöéWORD                          Γöé
  14229. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  14230. ΓöéAvgSeekTime                   ΓöéWORD                          Γöé
  14231. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  14232. ΓöéAvgLatency                    ΓöéWORD                          Γöé
  14233. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  14234. ΓöéTrackMinBlocks                ΓöéWORD                          Γöé
  14235. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  14236. ΓöéTrackMaxBlocks                ΓöéWORD                          Γöé
  14237. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  14238. ΓöéHead Per Cylinder             ΓöéWORD                          Γöé
  14239. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  14240. ΓöéVolCylinderCount              ΓöéDWORD                         Γöé
  14241. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  14242. ΓöéVolMedianBlock                ΓöéDWORD                         Γöé
  14243. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  14244. ΓöéMaxSGList                     ΓöéWORD                          Γöé
  14245. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  14246.  
  14247.  VolDescriptor       A bit field, defined as follows: 
  14248.  
  14249.       Bit 0       If set, volume resides on removable media 
  14250.       Bit 1       If set, volume is read-only 
  14251.       Bit 2       If set, average seek time independent of position (RAM disk) 
  14252.       Bit 3       If set, outboard cache supported 
  14253.       Bit 4       If set, scatter/gather supported by adapter 
  14254.       Bit 5       If set, ReadPrefetch supported 
  14255.       Bits 6-15   Reserved, set to 0 
  14256.  
  14257.  AvgSeekTime         The average seek time (in milliseconds) in servicing this 
  14258.                      volume. If the seek time is unknown, FFFFH is to be 
  14259.                      specified.  Can be 0 for RAM disks. 
  14260.  
  14261.  AvgLatency          The average rotational latency (in milliseconds) for the 
  14262.                      device servicing this volume.  If the average latency is 
  14263.                      unknown, FFFFH is to be specified.  Latency can be 0 for 
  14264.                      RAM disks. 
  14265.  
  14266.  TrackMinBlocks      The number of blocks available on the smallest capacity 
  14267.                      track; if unknown or not applicable, a value of 1 is 
  14268.                      specified. 
  14269.  
  14270.  TrackMaxBlocks      The number of blocks available on the largest capacity 
  14271.                      track; if unknown or not applicable, a value of 1 is 
  14272.                      specified. 
  14273.  
  14274.  Heads Per Cylinder  The number of heads per cylinder; if unknown or not 
  14275.                      applicable, a value of 1 is specified. 
  14276.  
  14277.  VolCylinderCount    The number of cylinders in the volume; if unknown or not 
  14278.                      applicable, the number of allocation blocks (sectors) is 
  14279.                      used. 
  14280.  
  14281.  VolMedianBlock      The number of the block, which is in the center of the 
  14282.                      volume with respect to seek time (that is, the block with 
  14283.                      the smallest average seek time). 
  14284.  
  14285.  MaxSGList           The maximum number of scatter and gather list entries, 
  14286.                      which can be directly submitted to the adapter servicing 
  14287.                      this volume with one low-level I/O command.  File systems 
  14288.                      submitting extended commands with scatter and gather lists 
  14289.                      greater than MaxSGList entries must ensure that the 
  14290.                      cumulative byte count of each MaxSGList entry in the list 
  14291.                      is a multiple of the sector size.  This field is set to 0, 
  14292.                      if the volume is serviced by an adapter that does not 
  14293.                      directly support scatter/gather lists. See Scatter/Gather 
  14294.                      Descriptor for details on scatter/gather lists passed in 
  14295.                      extended requests. 
  14296.  
  14297.  
  14298. ΓòÉΓòÉΓòÉ 20.3. Request Lists and Request Control ΓòÉΓòÉΓòÉ
  14299.  
  14300. In order to support multi-request asynchronous I/O, a new request format has 
  14301. been defined, called Request Lists.  This format allows multiple requests to be 
  14302. submitted in one call to the extended strategy routine, as well as grouping of 
  14303. those requests for notification purposes.  In general, requests from any and 
  14304. all lists can be reordered and considered independently by the physical device 
  14305. driver for optimal throughput.  Presently, only READ, WRITE, and READ PREFETCH 
  14306. commands have been defined in the new format. 
  14307.  
  14308. Through Request Control flags, optional restrictions can be set on the requests 
  14309. to force sequential execution and to allow early termination of request 
  14310. processing, should any of the requests fail. 
  14311.  
  14312. The notification mechanism allows the kernel and client file systems to receive 
  14313. callout notification when specific individual requests complete, when the 
  14314. entire request list completes, or both. In addition, notification can take 
  14315. place when an error condition occurs, when requests complete successfully, or 
  14316. both.  Alternatively, no callout notification can be specified, allowing the 
  14317. system to poll for request completion during idle time. 
  14318.  
  14319. Extended disk driver requests are submitted directly through the extended 
  14320. strategy routine entry point, DD_Strategy2, obtained through the GET DRIVER 
  14321. CAPABILITIES command and passed to client FSDs through FS_MOUNT.  Requests are 
  14322. submitted in request list format, with ES:BX containing a global pointer to the 
  14323. Request List. 
  14324.  
  14325. Each request in the list is an EXECUTE CHAIN command containing the EXECUTE 
  14326. CHAIN command prefix at the same offset into the extended request packet as the 
  14327. Command field in the standard request packet. 
  14328.  
  14329. Request Lists have the following format: 
  14330.  
  14331. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  14332. ΓöéField                         ΓöéLength                        Γöé
  14333. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  14334. ΓöéRequest List Header           Γöé20 BYTES                      Γöé
  14335. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  14336. ΓöéRequests                      ΓöéARRAY                         Γöé
  14337. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  14338.  
  14339. The Request List header has the following format: 
  14340.  
  14341. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  14342. ΓöéField                         ΓöéLength                        Γöé
  14343. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  14344. ΓöéReqListCount                  ΓöéWORD                          Γöé
  14345. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  14346. ΓöéReserved                      ΓöéWORD                          Γöé
  14347. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  14348. ΓöéLstNotifyAddress              ΓöéDWORD                         Γöé
  14349. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  14350. ΓöéLstRequestControl             ΓöéWORD                          Γöé
  14351. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  14352. ΓöéBlock Device Unit             ΓöéBYTE                          Γöé
  14353. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  14354. ΓöéLstStatus                     ΓöéBYTE                          Γöé
  14355. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  14356. ΓöéDDReserved                    ΓöéDWORD                         Γöé
  14357. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  14358. ΓöéDDReserved                    ΓöéDWORD                         Γöé
  14359. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  14360.  
  14361.  ReqListCount             The number of requests in the Request List. 
  14362.  
  14363.  Reserved                 Must be 0. 
  14364.  
  14365.  LstNotifyAddress         The 16:16 address of a notification routine to be 
  14366.                           called (according to the flags in LstRequestControl) 
  14367.                           when all requests have been completed or terminated 
  14368.                           due to error conditions. LstNotifyAddress is not 
  14369.                           valid if bits 4 and 5 of LstRequestControl are clear. 
  14370.                           LstNotifyAddress is called with the following 
  14371.                           parameters: 
  14372.  
  14373.       ES:BX  16:16    Address of Request List header 
  14374.  
  14375.       CF              Set, if an unrecoverable error has occurred 
  14376.  
  14377.                           The physical device driver is responsible for saving 
  14378.                           and restoring any registers that must survive the 
  14379.                           call. 
  14380.  
  14381.  LstRequestControl        A bit field of control flags as follows: 
  14382.  
  14383.       Bit 0       Reserved. 
  14384.  
  14385.       Bit 1       If set, there is only one request in the list.  The same 
  14386.                   mechanism is used to submit one or many requests. 
  14387.  
  14388.       Bit 2       If set, requests are to be executed in sequence.  Indicates 
  14389.                   that requests in this list must be executed in the order in 
  14390.                   which they appear in the Request List.  They need not be 
  14391.                   executed adjacently; requests from other lists can interleave 
  14392.                   execution of this list. 
  14393.  
  14394.       Bit 3       If set, terminate on error.  Indicates that, if an 
  14395.                   unrecoverable error occurs in processing any request in the 
  14396.                   list, outstanding requests in the list must not be executed. 
  14397.                   All Status, ErrorCode, and BlocksXferred fields must be 
  14398.                   updated, however. 
  14399.  
  14400.       Bit 4       If set, notify immediately on error only.  Indicates that the 
  14401.                   request list notification routine, LstNotifyAddress, should 
  14402.                   be called immediately if an unrecoverable error occurs in 
  14403.                   servicing any of the requests in the Request List. 
  14404.  
  14405.       Bit 5       If set, notify on completion.  Indicates that the request 
  14406.                   list notification routine should be called when execution of 
  14407.                   the requests has completed, regardless of error conditions. 
  14408.  
  14409.                   If bit 4 and bit 5 are clear, the request list notification 
  14410.                   routine address is not valid.  If bit 4 or bit 5 is set, the 
  14411.                   notification routine address is valid. 
  14412.  
  14413.       Bits 6-15   Reserved.  Must be 0. 
  14414.  
  14415.  Block Device Unit        The logical unit number of the volume the requests 
  14416.                           are directed to. Note this forces all requests in the 
  14417.                           list to be addressed to the same block device unit. 
  14418.  
  14419.  LstStatus                Indicates the overall status for the Request List. 
  14420.                           This field should be set immediately by the physical 
  14421.                           device driver at strategy time and updated as 
  14422.                           requests complete successfully or unsuccessfully. 
  14423.  
  14424.                           The low nibble indicates the completion status of the 
  14425.                           requests in the list, giving the LstStatus byte the 
  14426.                           following values: 
  14427.  
  14428.       X0h   Indicates that no requests have been queued.  It is guaranteed that 
  14429.             the kernel will set this status on entry to the physical device 
  14430.             driver.  The physical device driver sets this status on return only 
  14431.             if queueing was not possible due to exhausted driver-internal 
  14432.             resources. 
  14433.  
  14434.       X1h   Indicates that some requests have not yet been sorted into internal 
  14435.             queues.  That is, queueing is in process but has not yet been 
  14436.             completed. 
  14437.  
  14438.       X2h   Indicates that all requests in the list have been queued and are 
  14439.             awaiting service. 
  14440.  
  14441.       X4h   Indicates that all requests in the list have been completed 
  14442.             successfully or unsuccessfully due to error conditions. 
  14443.  
  14444.       X8h   Reserved. 
  14445.  
  14446.                           The high nibble indicates the error status of the 
  14447.                           requests in the list, giving the LstStatus byte the 
  14448.                           following values: 
  14449.  
  14450.       0Xh   No error. 
  14451.  
  14452.       1Xh   Indicates that an error has occurred in processing at least one of 
  14453.             the requests, but the physical device driver has successfully 
  14454.             recovered the error through retries, ECC, disk mirroring, or 
  14455.             duplexing. 
  14456.  
  14457.       2Xh   Indicates that an unrecoverable error has occurred in processing at 
  14458.             least one of the requests. 
  14459.  
  14460.       3Xh   An unrecoverable error has occurred with retry. 
  14461.  
  14462.       4Xh   Reserved. 
  14463.  
  14464.       8Xh   Reserved. 
  14465.  
  14466.                           Bits in the high nibble can be set in combination 
  14467.                           with bits in the low nibble to indicate the various 
  14468.                           error and completion states. LstStatus is guaranteed 
  14469.                           to be 0 when the request list is submitted to the 
  14470.                           physical device driver. 
  14471.  
  14472.  DDReserved               Reserved for device driver use in tracking request 
  14473.                           completion. Since the number of requests in the list 
  14474.                           is variable, this field might be used to point to an 
  14475.                           auxiliary structure maintained by the device driver. 
  14476.  
  14477.  Each request has a fixed length header, followed by a variable length, 
  14478.  command-specific area.  The general format of an extended request is shown in 
  14479.  the following table: 
  14480.  
  14481.   ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  14482.   ΓöéField                         ΓöéLength                        Γöé
  14483.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  14484.   ΓöéRequest Header                Γöé32 BYTES                      Γöé
  14485.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  14486.   ΓöéCommand-Specific              ΓöéBYTE                          Γöé
  14487.   ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  14488.  
  14489.  
  14490. ΓòÉΓòÉΓòÉ 20.3.1. Extended Commands ΓòÉΓòÉΓòÉ
  14491.  
  14492. The following extended commands, and corresponding command codes, are defined 
  14493. for use in Request Lists: 
  14494.  
  14495.  1Eh   READ 
  14496.  1Fh   WRITE 
  14497.  20h   WRITE VERIFY 
  14498.  21h   READ PREFETCH 
  14499.  
  14500.  The format of the command-specific portion of the request packet format along 
  14501.  with details of each command are described in the sections that follow. 
  14502.  
  14503.  
  14504. ΓòÉΓòÉΓòÉ 20.3.1.1. Request Header ΓòÉΓòÉΓòÉ
  14505.  
  14506. Each request in the Request List begins with a fixed length header, which has 
  14507. the following format: 
  14508.  
  14509. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  14510. ΓöéField                         ΓöéLength                        Γöé
  14511. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  14512. ΓöéRequest Length                ΓöéWORD                          Γöé
  14513. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  14514. ΓöéCommand Prefix=1Ch            ΓöéBYTE                          Γöé
  14515. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  14516. ΓöéCommand Code                  ΓöéBYTE                          Γöé
  14517. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  14518. ΓöéHeader Offset                 ΓöéDWORD                         Γöé
  14519. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  14520. ΓöéRequest Control               ΓöéBYTE                          Γöé
  14521. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  14522. ΓöéPriority                      ΓöéBYTE                          Γöé
  14523. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  14524. ΓöéStatus                        ΓöéBYTE                          Γöé
  14525. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  14526. ΓöéError Code                    ΓöéBYTE                          Γöé
  14527. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  14528. ΓöéNotify Address                ΓöéDWORD                         Γöé
  14529. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  14530. ΓöéHint Pointer                  ΓöéDWORD                         Γöé
  14531. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  14532. ΓöéDDReserved                    ΓöéDWORD                         Γöé
  14533. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  14534. ΓöéDDReserved                    ΓöéDWORD                         Γöé
  14535. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  14536. ΓöéDDReserved                    ΓöéDWORD                         Γöé
  14537. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  14538.  
  14539.  Request Length           The offset of the next request.  If this is the last 
  14540.                           request, the value is FFFFH. 
  14541.  
  14542.  Command Prefix           At the same offset in this request header as the 
  14543.                           command code in the standard OS/2 request header. 
  14544.                           This byte is always set to EXTENDED REQUEST (1Ch) to 
  14545.                           allow the physical device driver to maintain one 
  14546.                           queue for both standard and extended requests, while 
  14547.                           distinguishing the two packet types. 
  14548.  
  14549.  Command Code             The request command code.  Can have any of the values 
  14550.                           defined in Extended Commands. 
  14551.  
  14552.  Header Offset            The offset from the beginning of the Request List 
  14553.                           header to the header of this request.  This field, 
  14554.                           when subtracted from the address of the header of 
  14555.                           this request, yields the header of the list.  This 
  14556.                           provides fast access to the control information in 
  14557.                           the header. 
  14558.  
  14559.  Request Control          A bit field of control flags as follows: 
  14560.  
  14561.       Bits 0-3    Reserved.  Must be 0. 
  14562.       Bit 4       If set, notify on error only.  Indicates that the individual 
  14563.                   request notification routine, NotifyAddress, should be called 
  14564.                   immediately in the event that an unrecoverable error occurs 
  14565.                   in servicing the request. 
  14566.       Bit 5       If set, notify on completion.  Indicates that the individual 
  14567.                   notification routine, NotifyAddress, should be called when 
  14568.                   execution of the request has completed successfully and 
  14569.                   possibly with a recoverable error.  This bit does not 
  14570.                   indicate notification in the case of an unrecoverable error. 
  14571.  
  14572.                   If bit 4 and bit 5 are clear, the individual request 
  14573.                   notification routine address is not valid.  If bit 4 or bit 5 
  14574.                   is set, the notification routine address is valid.  Bits 4 
  14575.                   and 5 can both be set to indicate notification in case of 
  14576.                   error or successful completion. 
  14577.       Bits 6-7    Reserved.  Must be 0. 
  14578.  
  14579.  Priority                 A bit field indicating the priority of the request. 
  14580.                           The following values are currently defined, and 
  14581.                           others may be added as needed, without notice: 
  14582.  
  14583.       00h   Prefetch Requests. 
  14584.       01h   Low priority request to be satisfied in the context of servicing 
  14585.             other, higher priority requests or when no other work exists 
  14586.             (lazy-write). 
  14587.       02h   Read ahead, low priority pager I/O. 
  14588.       04h   Background synchronous user I/O. 
  14589.       08h   Foreground synchronous user I/O. 
  14590.       10h   High priority pager I/O. 
  14591.       80h   Urgent request; all requests at this priority should be satisfied 
  14592.             in a single sweep of the disk; no stopping allowed at cylinders 
  14593.             other than those necessary to satisfy requests in this priority. 
  14594.             The kernel uses this priority in cases such as an impending power 
  14595.             failure or shutdown. 
  14596.  
  14597.                           The kernel or client FSD can request a priority 
  14598.                           change after the initial submission of the request to 
  14599.                           the physical device driver by issuing a call to DD 
  14600.                           _ChgPriority. 
  14601.  
  14602.  Status                   A bit field indicating the status of the request. 
  14603.                           The low nibble indicates the completion status of the 
  14604.                           request, giving the Status byte the following values: 
  14605.  
  14606.       X0h   Not yet queued 
  14607.       X1h   Queued and waiting 
  14608.       X2h   In process 
  14609.       X4h   Done 
  14610.       X8h   Reserved 
  14611.  
  14612.                           The high nibble indicates the error status of the 
  14613.                           request, giving the Status byte the following values: 
  14614.  
  14615.       0Xh   No error 
  14616.       1Xh   A recoverable error has occurred 
  14617.       2Xh   An unrecoverable error has occurred 
  14618.       3Xh   An unrecoverable error has occurred 
  14619.       4Xh   The request was abnormally ended 
  14620.       8Xh   Reserved 
  14621.  
  14622.                           High and low nibbles can be set in combination by the 
  14623.                           physical device driver to indicate combinations of 
  14624.                           error and status conditions.  For example, a code of 
  14625.                           12h indicates that a recoverable error has occurred 
  14626.                           and the request is still in progress.  An error 
  14627.                           condition indicates a valid error code in the 
  14628.                           ErrorCode field.  Status is guaranteed to be 00h when 
  14629.                           the request is submitted. 
  14630.  
  14631.  Error Code               Contains a valid error condition, if an error status 
  14632.                           is indicated in Status.  The following error codes 
  14633.                           are possible if the error is unrecoverable and are 
  14634.                           compatible with previous OS/2 error returns: 
  14635.  
  14636.       00h   Write-protect violation 
  14637.       01h   Unknown unit 
  14638.       02h   Device not ready 
  14639.       03h   Unknown command 
  14640.       04h   CRC error 
  14641.       06h   Seek error 
  14642.       07h   Unknown media 
  14643.       08h   Block not found 
  14644.       0Ah   Write fault 
  14645.       0Bh   Read fault 
  14646.       0Ch   General failure 
  14647.       10h   Uncertain media 
  14648.       13h   Invalid parameter 
  14649.  
  14650.                           The following error codes are possible, if the error 
  14651.                           is recoverable: 
  14652.  
  14653.       1Ah   Verify error on write, succeeded after retry 
  14654.       2Ah   Write error, write to mirrored or duplexed drive succeeded 
  14655.       3Ah   Write error on mirrored or duplexed drive; write to primary drive 
  14656.             succeeded 
  14657.       1Bh   Read error, corrected using ECC 
  14658.       2Bh   Read succeeded after retry 
  14659.       3Bh   Read error, recovered from mirrored or duplexed drive 
  14660.  
  14661.  NotifyAddress            The address of a notification routine to be called 
  14662.                           (according to the flags in RequestControl) when the 
  14663.                           request has completed successfully or unsuccessfully 
  14664.                           due to error conditions.  NotifyAddress is not valid 
  14665.                           if bits 4 and 5 of RequestControl are clear. 
  14666.                           NotifyAddress is called with the following 
  14667.                           parameters: 
  14668.  
  14669.       ES:BX  16:16    Address of the request header 
  14670.  
  14671.       CF              Set, if an unrecoverable error has occurred. 
  14672.  
  14673.                           The physical device driver is responsible for saving 
  14674.                           and restoring any registers that must survive the 
  14675.                           call. 
  14676.  
  14677.  Hint Pointer             A 16:16 pointer to a request packet in a Request 
  14678.                           List. This field can be used when the kernel or the 
  14679.                           client FSD determines that this request might be best 
  14680.                           grouped with another request it has already submitted 
  14681.                           to the physical device driver.  The request might 
  14682.                           have already completed, so the physical device driver 
  14683.                           must validate that the pointer points to a request on 
  14684.                           its internal queues.  This field is FFFF:FFFFH if it 
  14685.                           is unused (that is, if a hint is not being passed). 
  14686.  
  14687.  DDReserved               Fields reserved for device driver use. 
  14688.  
  14689.  
  14690. ΓòÉΓòÉΓòÉ 20.3.1.2. Write/Read/WriteVerify ΓòÉΓòÉΓòÉ
  14691.  
  14692. The format of the request packet for the WRITE, READ, and WRITE VERIFY commands 
  14693. is: 
  14694.  
  14695. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  14696. ΓöéField                         ΓöéLength                        Γöé
  14697. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  14698. ΓöéRequest Header                Γöé32 BYTES                      Γöé
  14699. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  14700. ΓöéStart Block                   ΓöéDWORD                         Γöé
  14701. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  14702. ΓöéBlock Count                   ΓöéDWORD                         Γöé
  14703. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  14704. ΓöéBlocksXferred                 ΓöéDWORD                         Γöé
  14705. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  14706. ΓöéFlags                         ΓöéWORD                          Γöé
  14707. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  14708. ΓöéSGDescrCount                  ΓöéWORD                          Γöé
  14709. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  14710. ΓöéReserved                      ΓöéDWORD                         Γöé
  14711. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  14712. ΓöéSGDescriptors                 ΓöéARRAY                         Γöé
  14713. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  14714.  
  14715.  Request Header      The fixed length request header. 
  14716.  
  14717.  Start Block         The starting disk block for the data transfer operation. 
  14718.                      A disk block is defined as a 512-byte logical disk sector. 
  14719.  
  14720.  Block Count         The number of 512-byte blocks to be transferred. 
  14721.  
  14722.  BlocksXferred       The number of 512-byte blocks successfully transferred by 
  14723.                      the driver.  This field is updated before the request and 
  14724.                      request list notification routines are called and before 
  14725.                      the Status field is marked as Done. 
  14726.  
  14727.  Flags               A bit field of command-specific control flags.  The 
  14728.                      following flags have been defined: 
  14729.  
  14730.       Bit 0       If set, write through.  Defeats any lazy-write caching 
  14731.                   performed by the physical device driver.  Notice that 
  14732.                   lazy-write, through battery-backed RAM, is permitted, even if 
  14733.                   this bit is set. 
  14734.       Bit 1       If set, cache request on outboard controller cache. 
  14735.       Bits 2-15   Reserved, set to 0. 
  14736.  
  14737.  SGDescrCount        The number of scatter/gather descriptors in the 
  14738.                      SGDescriptors field. 
  14739.  
  14740.  SGDescriptors       An array of scatter/gather descriptors describing the 
  14741.                      buffers for data transfer specified by the command. 
  14742.  
  14743.  The File System Driver (FSD) guarantees the following to be true: 
  14744.  
  14745.   ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  14746.  
  14747.   BlockCount * 512 equals the sum of the BufferSize fields in SGDescriptors.
  14748.  
  14749.   ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  14750.  
  14751.  In addition, buffers are typically DWORD aligned.  The physical device driver 
  14752.  should be optimized for this case, but should not rely upon it. 
  14753.  
  14754.  
  14755. ΓòÉΓòÉΓòÉ 20.3.1.3. Scatter/Gather Descriptor ΓòÉΓòÉΓòÉ
  14756.  
  14757. READ and WRITE operations use an array of scatter/gather descriptors to 
  14758. describe the buffer space to be used in the operation.  This enables transfers 
  14759. of contiguous disk blocks into physically discontiguous, byte-aligned memory 
  14760. blocks.  Scatter/gather descriptors have the following format: 
  14761.  
  14762. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  14763. ΓöéField                         ΓöéLength                        Γöé
  14764. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  14765. ΓöéBufferPtr                     ΓöéDWORD                         Γöé
  14766. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  14767. ΓöéBuffer Size                   ΓöéDWORD                         Γöé
  14768. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  14769.  
  14770.  BufferPtr      A 32-bit physical pointer to the buffer 
  14771.  Buffer Size    Size of the buffer in bytes 
  14772.  
  14773.  
  14774. ΓòÉΓòÉΓòÉ 20.3.1.4. READ PREFETCH ΓòÉΓòÉΓòÉ
  14775.  
  14776. READ PREFETCH is defined to take advantage of a two-tiered disk caching scheme, 
  14777. where the first tier is the file system and the second tier is the controller 
  14778. buffer.  This command is optionally supported, if the Read Prefetch bit is set 
  14779. in the VolDescriptor bit field of the VCS for the device. If this bit is set, 
  14780. it is assumed that: 
  14781.  
  14782.    o  The physical device driver manages a cache located on the controller. 
  14783.    o  A Read into controller memory, followed by a Read into system memory, is 
  14784.       less expensive (in terms of host CPU utilization) than just a Read into 
  14785.       system memory. 
  14786.  
  14787.  If both of these conditions are not met, then the physical device driver does 
  14788.  not publish READ PREFETCH capabilities because it is more efficient for the 
  14789.  file system to perform read-ahead into its own cache. READ PREFETCH commands 
  14790.  are the lowest priority requests submitted to the physical device driver 
  14791.  through the extended strategy routine and are never serviced prior to other 
  14792.  Read/Write requests. 
  14793.  
  14794.  The format of the request packet for READ PREFETCH is: 
  14795.  
  14796.   ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  14797.   ΓöéField                         ΓöéLength                        Γöé
  14798.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  14799.   ΓöéRequest Header                Γöé32 BYTES                      Γöé
  14800.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  14801.   ΓöéStart Block                   ΓöéDWORD                         Γöé
  14802.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  14803.   ΓöéBlock Count                   ΓöéDWORD                         Γöé
  14804.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  14805.   ΓöéBlocksXferred                 ΓöéDWORD                         Γöé
  14806.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  14807.   ΓöéFlags                         ΓöéWORD                          Γöé
  14808.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  14809.   ΓöéReserved.  Must be 0.         ΓöéWORD                          Γöé
  14810.   ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  14811.  
  14812.  Request Header    The fixed length request header. 
  14813.  
  14814.  Start Block       The starting disk block for the data prefetch operation.  A 
  14815.                    disk block is defined as a 512-byte logical disk sector. 
  14816.  
  14817.  Block Count       The number of 512-byte blocks to be prefetched. 
  14818.  
  14819.  BlocksXferred     The number of 512-byte blocks successfully prefetched by the 
  14820.                    physical device driver. This field is updated before the 
  14821.                    request and request list notification routines are called 
  14822.                    and before the Status field is marked as Done. 
  14823.  
  14824.  Flags             A bit field of command-specific control flags.  The 
  14825.                    following flags have been defined: 
  14826.  
  14827.       Bit 0       If set, hold only until read.  The physical device driver 
  14828.                   retains the data in controller prefetch buffers only until it 
  14829.                   is read once.  This is to prevent redundant caching in the 
  14830.                   controller. 
  14831.       Bits 1-15   Reserved, set to 0. 
  14832.  
  14833.  
  14834. ΓòÉΓòÉΓòÉ 20.3.2. Request Control Functions ΓòÉΓòÉΓòÉ
  14835.  
  14836. Request control functions are used by the FSD to manage requests after they 
  14837. have been submitted to obtain advisory information from the physical device 
  14838. driver and to pass advisory information to the physical device driver.  Entry 
  14839. points are exported by the physical device driver through the GET DRIVER 
  14840. CAPABILITIES command.  Request control functions can be called at interrupt 
  14841. time and cannot block.  Request control functions need only preserve segment 
  14842. registers. 
  14843.  
  14844. The following request control functions are defined: 
  14845.  
  14846.    o  DD_SetFSDInfo 
  14847.    o  DD_ChgPriority 
  14848.    o  DD_SetRestPos 
  14849.    o  DD_GetBoundary 
  14850.  
  14851.  
  14852. ΓòÉΓòÉΓòÉ 20.3.2.1. DD_SetFSDInfo ΓòÉΓòÉΓòÉ
  14853.  
  14854. This entry point allows the FSD to inform the physical disk device driver of 
  14855. its FSD_EndOfInt and FSD_AccValidate entry points. The physical disk device 
  14856. driver allows DD_SetFSDInfo to be called exactly once, and ignores subsequent 
  14857. calls. 
  14858.  
  14859. ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  14860.  
  14861. ENTRY
  14862.     ES:BX   16:16 pointer to the FSDInfo structure.
  14863. EXIT
  14864.     CF      Set, if call was ignored.
  14865.  
  14866. ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  14867.  
  14868. The format of the FSDInfo structure is: 
  14869.  
  14870. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  14871. ΓöéField                         ΓöéLength                        Γöé
  14872. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  14873. ΓöéReserved.  Must be 0.         ΓöéDWORD                         Γöé
  14874. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  14875. ΓöéFSD_EndOfInt                  ΓöéDWORD                         Γöé
  14876. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  14877. ΓöéReserved.  Must be 0.         ΓöéDWORD                         Γöé
  14878. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  14879. ΓöéFSD_AccValidate               ΓöéDWORD                         Γöé
  14880. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  14881.  
  14882.  FSD_EndOfInt        The 16:16 entry point of the FSD's FSD_EndOfInt routine. 
  14883.                      This field is set to 0 if the FSD does not provide an 
  14884.                      FSD_EndofInt routine.  The entry point is called by the 
  14885.                      physical device driver when it has completed interrupt 
  14886.                      processing and after it has called DevHlp_EOI. 
  14887.                      FSD_EndOfInt takes no parameters and leaves all registers 
  14888.                      intact. 
  14889.  
  14890.  FSD_AccValidate     The 16:16 entry point of the FSD's FSD_AccValidate 
  14891.                      routine.  This field is set to 0 if the FSD does not 
  14892.                      provide an FSD_AccValidate routine.  The entry point is 
  14893.                      called whenever direct I/O is done through a Category 08h 
  14894.                      or 09h IOCtl to an HPFS volume or whenever direct I/O is 
  14895.                      done to the Master Startup (Boot) record through a 
  14896.                      Category 09h IOCtl. 
  14897.  
  14898.                      For Category 09h IOCtls, the physical device driver must 
  14899.                      use the Head, Cylinder, and Sector values passed in the 
  14900.                      IOCtl.  These values are used to determine whether the I/O 
  14901.                      request falls within an HPFS volume, because the unit 
  14902.                      number in the IOCtl represents the entire physical disk 
  14903.                      and not the logical volume. 
  14904.  
  14905.                      The physical device driver should call FSD_AccValidate 
  14906.                      with: 
  14907.  
  14908.                                           ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  14909.  
  14910.                                           AL  Operation Code
  14911.                                               00  Non-destructive (READ, VERIFY)
  14912.                                               01  Destructive (WRITE, FORMAT TRACK, and so forth)
  14913.  
  14914.                                           ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  14915.  
  14916.                      On return from the FSD: 
  14917.  
  14918.                                           ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  14919.  
  14920.                                           NC  I/O access is allowed.
  14921.                                           CF  If set, access is denied.  The physical device driver should return error code 00h
  14922.                                               (Write-protection violation) to the caller.
  14923.  
  14924.                                           ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  14925.  
  14926.  
  14927. ΓòÉΓòÉΓòÉ 20.3.2.2. DD_ChgPriority ΓòÉΓòÉΓòÉ
  14928.  
  14929. This entry point allows the FSD to notify the physical device driver of a 
  14930. possible change in the priority of a request.  HPFS calls this entry point 
  14931. with: 
  14932.  
  14933. ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  14934.  
  14935. ENTRY
  14936.     ES:BX  Address of the request
  14937.     AL     New priority for the request;
  14938.  
  14939. EXIT
  14940.     CF     Set, if request packet not found on any of the physical
  14941.            device driver's internal queues
  14942.  
  14943. ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  14944.  
  14945. This call is used to change the priority of a previously submitted request. 
  14946. The physical device driver performs whatever resorting of internal queues is 
  14947. necessary, and returns. 
  14948.  
  14949. The FSD guarantees that the pointer that was passed references a valid request 
  14950. (that is, a request with allowed values in all fields).  There is no guarantee 
  14951. that the priority of the request has actually been changed or that the request 
  14952. is still on the internal queues of the driver.  If the request has been removed 
  14953. from internal queues, has already been incorporated into internal structures in 
  14954. preparation for service, or has already been serviced, the physical device 
  14955. driver can ignore the requested change. 
  14956.  
  14957.  
  14958. ΓòÉΓòÉΓòÉ 20.3.2.3. DD_SetRestPos ΓòÉΓòÉΓòÉ
  14959.  
  14960. This entry point advises the physical device driver of a block to seek when 
  14961. there is no work in the queue.  No immediate action is necessary when the call 
  14962. is made.  This call is purely advisory and can be ignored by the driver if it 
  14963. is not useful or applicable to the hardware it supports. 
  14964.  
  14965. ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  14966.  
  14967. ENTRY
  14968.     AX:BX   Block to use as resting point, FFFF:FFFFH, if none
  14969.        CL   Logical Unit Number (A:=0)
  14970.  
  14971. EXIT
  14972.     CF      Set, if block is out of range.
  14973.  
  14974. ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  14975.  
  14976. The physical device driver updates a static variable, specifying where to rest 
  14977. the heads during idle time.  When any seek occurs, either as a result of this 
  14978. call or as the result of I/O requests, the variable is set to FFFFFFFFH.  A 
  14979. value of FFFFFFFFH indicates rest-where-you-end-up. 
  14980.  
  14981. This call essentially assumes that there is only one active logical volume 
  14982. serviced by the underlying physical device.  Physical device, in this context, 
  14983. means mechanical, usually multi-headed, disk arm.  If this is not the case, 
  14984. this call should be ignored by the driver. 
  14985.  
  14986.  
  14987. ΓòÉΓòÉΓòÉ 20.3.2.4. DD_GetBoundary ΓòÉΓòÉΓòÉ
  14988.  
  14989. This entry point returns the first block number that is greater than the block 
  14990. number specified in the DWORD passed and is past an access time boundary, such 
  14991. as a cylinder.  This information can be used by file systems to optimally place 
  14992. file system objects. 
  14993.  
  14994. ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  14995.  
  14996. ENTRY
  14997.     AX:BX   Reference block number
  14998.  
  14999. EXIT
  15000.     AX:BX   Number of first block past access time boundary
  15001.     CF      Set, if block number out of range.
  15002.  
  15003. ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  15004.  
  15005. If the physical device driver cannot compute this efficiently, it can 
  15006. precompute this information and retain it internally, or if this is not 
  15007. feasible, it can return (AX:BX) + 1. 
  15008.  
  15009.  
  15010. ΓòÉΓòÉΓòÉ 21. I/O Request Block - C Definitions ΓòÉΓòÉΓòÉ
  15011.  
  15012. Following are the I/O request block C language definitions for ADD device 
  15013. support. 
  15014.  
  15015. ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  15016.  
  15017. /*static char *SCCSID = "@(#)iorb.h     6.2 92/02/20";*/
  15018. /****************************************************************************/
  15019. /* I/O Request Block (IORB) Structures                                      */
  15020. /****************************************************************************/
  15021.  
  15022. /* ASM
  15023.  
  15024.        Resolve H2INC references for .INC version of file
  15025.  
  15026.        include  iorbtype.inc
  15027. */
  15028.  
  15029. /* Typedefs to resolve forward references                                   */
  15030. typedef struct _IORBH         IORBH;
  15031. typedef struct _IORBH         FAR *PIORBH;
  15032. typedef struct _IORBH         *NPIORBH;
  15033. typedef struct _IORBH         FAR *PIORB;
  15034. typedef struct _IORBH         *NPIORB;
  15035.  
  15036. typedef struct _DEVICETABLE   DEVICETABLE;
  15037. typedef struct _DEVICETABLE   FAR *PDEVICETABLE;
  15038. typedef struct _DEVICETABLE   *NPDEVICETABLE;
  15039.  
  15040. typedef struct _UNITINFO      UNITINFO;
  15041. typedef struct _UNITINFO      FAR *PUNITINFO;
  15042. typedef struct _UNITINFO      *NPUNITINFO;
  15043.  
  15044. typedef struct _ADAPTERINFO   ADAPTERINFO;
  15045. typedef struct _ADAPTERINFO   FAR *PADAPTERINFO;
  15046. typedef struct _ADAPTERINFO   *NPADAPTERINFO;
  15047.  
  15048. typedef struct _GEOMETRY      GEOMETRY;
  15049. typedef struct _GEOMETRY      FAR *PGEOMETRY;
  15050. typedef struct _GEOMETRY      *NPGEOMETRY;
  15051.  
  15052. typedef struct _SCATGATENTRY  SCATGATENTRY;
  15053. typedef struct _SCATGATENTRY  FAR *PSCATGATENTRY;
  15054. typedef struct _SCATGATENTRY  *NPSCATGATENTRY;
  15055.  
  15056. /*--------------------------------------------------------------------------*/
  15057. /* Interface for calling ADD entry point                                    */
  15058. /*--------------------------------------------------------------------------*/
  15059. /* VOID FAR *(ADDEP) (PIORBH);                                              */
  15060.  
  15061. /*--------------------------------------------------------------------------*/
  15062. /* IORB Header                                                              */
  15063. /*--------------------------------------------------------------------------*/
  15064.  
  15065. #define DM_WORKSPACE_SIZE       20
  15066. #define ADD_WORKSPACE_SIZE      16
  15067.  
  15068. typedef struct _IORBH   {             /* IOH                                */
  15069.  
  15070. USHORT        Length;                 /* IORB length                        */
  15071. USHORT        UnitHandle;             /* Unit identifier                    */
  15072. USHORT        CommandCode;            /* Command code                       */
  15073. USHORT        CommandModifier;        /* Command modifier                   */
  15074. USHORT        RequestControl;         /* Request control flags              */
  15075. USHORT        Status;                 /* Status                             */
  15076. USHORT        ErrorCode;              /* Error code                         */
  15077. ULONG         Timeout;                /* Cmd completion timeout(s)          */
  15078. USHORT        StatusBlockLen;         /* Status block length                */
  15079. NPBYTE        pStatusBlock;           /* Status block                       */
  15080. USHORT        Reserved_1;             /* Reserved, MBZ                      */
  15081. PIORB         pNxtIORB;               /* Pointer to next IORB               */
  15082. PIORB         (FAR *NotifyAddress)(PIORB); /* Notification address          */
  15083. UCHAR         DMWorkSpace[DM_WORKSPACE_SIZE];   /* For use by DM            */
  15084. UCHAR         ADDWorkSpace[ADD_WORKSPACE_SIZE]; /* For use by ADD           */
  15085.  
  15086. } IORBH;
  15087. /*--------------------------------------------------------------------------*/
  15088. /* IORB CommandCode and CommandModifier Codes                               */
  15089. /*      Note:  CommandCodes are prefixed by IOCC and CommandModifiers       */
  15090. /*             by IOCM.                                                     */
  15091. /*--------------------------------------------------------------------------*/
  15092.                                           /*--------------------------------*/
  15093.                                           /* +----M=Mandatory support       */
  15094.                                           /* |    O=Optional support        */
  15095.                                           /* |                              */
  15096.                                           /* V     Notes                    */
  15097.                                           /*--------------------------------*/
  15098. #define IOCC_CONFIGURATION        0x0001  /*                                */
  15099. #define IOCM_GET_DEVICE_TABLE     0x0001  /* M                              */
  15100. #define IOCM_COMPLETE_INIT        0x0002  /* O                              */
  15101.                                   /*----------------------------------------*/
  15102. #define IOCC_UNIT_CONTROL         0x0002  /*                                */
  15103. #define IOCM_ALLOCATE_UNIT        0x0001  /* M                              */
  15104. #define IOCM_DEALLOCATE_UNIT      0x0002  /* M                              */
  15105. #define IOCM_CHANGE_UNITINFO      0x0003  /* M                              */
  15106. /*----------------------------------------*/
  15107.  
  15108. #define IOCC_GEOMETRY             0x0003  /*                                */
  15109. #define IOCM_GET_MEDIA_GEOMETRY   0x0001  /* M                              */
  15110. #define IOCM_SET_MEDIA_GEOMETRY   0x0002  /* O (M) >1 media type            */
  15111. #define IOCM_GET_DEVICE_GEOMETRY  0x0003  /* M                              */
  15112. #define IOCM_SET_LOGICAL_GEOMETRY 0x0004  /* O (M) CHS addressable          */
  15113.                                   /*----------------------------------------*/
  15114. #define IOCC_EXECUTE_IO           0x0004  /*                                */
  15115. #define IOCM_READ                 0x0001  /* M                              */
  15116. #define IOCM_READ_VERIFY          0x0002  /* M                              */
  15117. #define IOCM_READ_PREFETCH        0x0003  /* O                              */
  15118. #define IOCM_WRITE                0x0004  /* M                              */
  15119. #define IOCM_WRITE_VERIFY         0x0005  /* M                              */
  15120.                                   /*----------------------------------------*/
  15121. #define IOCC_FORMAT               0x0005  /*                                */
  15122. #define IOCM_FORMAT_MEDIA         0x0001  /* O (M) If HW requires           */
  15123. #define IOCM_FORMAT_TRACK         0x0002  /* O (M) If HW requires           */
  15124. #define IOCM_FORMAT_PROGRESS      0x0003  /* O                              */
  15125.  
  15126. #define IOCC_UNIT_STATUS          0x0006  /*                                */
  15127. #define IOCM_GET_UNIT_STATUS      0x0001  /* M                              */
  15128. #define IOCM_GET_CHANGELINE_STATE 0x0002  /* O (Mandatory for diskette)     */
  15129. #define IOCM_GET_MEDIA_SENSE      0x0003  /* O (Mandatory for diskette)     */
  15130. #define IOCM_GET_LOCK_STATUS      0x0004  /* M                              */
  15131.                                   /*----------------------------------------*/
  15132. #define IOCC_DEVICE_CONTROL       0x0007  /*                                */
  15133. #define IOCM_ABORT                0x0001  /* O (M) SCSI                     */
  15134. #define IOCM_RESET                0x0002  /* O (M) SCSI                     */
  15135. #define IOCM_SUSPEND              0x0003  /* O (M) Floppy driver            */
  15136. #define IOCM_RESUME               0x0004  /* O (M) Floppy driver            */
  15137. #define IOCM_LOCK_MEDIA           0x0005  /* M (O) Fixed media only         */
  15138. #define IOCM_UNLOCK_MEDIA         0x0006  /* M (O) Fixed media only         */
  15139. #define IOCM_EJECT_MEDIA          0x0007  /* M (O) SCSI and Floppy Driver   */
  15140.                                   /*----------------------------------------*/
  15141. #define IOCC_ADAPTER_PASSTHRU     0x0008  /*                                */
  15142. #define IOCM_EXECUTE_SCB          0x0001  /* O                              */
  15143. #define IOCM_EXECUTE_CDB          0x0002  /* O (M) SCSI adapters            */
  15144.                                   /*----------------------------------------*/
  15145.  
  15146. #define MAX_IOCC_COMMAND  IOCC_ADAPTER_PASSTHRU
  15147. /*--------------------------------------------------------------------------*/
  15148. /* Status flags returned in IORBH->Status                                   */
  15149. /*--------------------------------------------------------------------------*/
  15150. #define IORB_DONE                0x0001  /* 1=Done,  0=In progress          */
  15151. #define IORB_ERROR               0x0002  /* 1=Error, 0=No error             */
  15152. #define IORB_RECOV_ERROR         0x0004  /* Recovered error                 */
  15153. #define IORB_STATUSBLOCK_AVAIL   0x0008  /* Status block available          */
  15154.  
  15155. /*--------------------------------------------------------------------------*/
  15156. /* Error Codes returned in IORBH->ErrorCode                                 */
  15157. /*--------------------------------------------------------------------------*/
  15158.  
  15159. #define IOERR_RETRY                     0x8000
  15160.  
  15161. #define IOERR_CMD                       0x0100
  15162. #define IOERR_CMD_NOT_SUPPORTED         IOERR_CMD+1
  15163. #define IOERR_CMD_SYNTAX                IOERR_CMD+2
  15164. #define IOERR_CMD_SGLIST_BAD            IOERR_CMD+3
  15165. #define IOERR_CMD_SW_RESOURCE           IOERR_CMD+IOERR_RETRY+4
  15166. #define IOERR_CMD_ABORTED               IOERR_CMD+5
  15167. #define IOERR_CMD_ADD_SOFTWARE_FAILURE  IOERR_CMD+6
  15168. #define IOERR_CMD_OS_SOFTWARE_FAILURE   IOERR_CMD+7
  15169.  
  15170. #define IOERR_UNIT                      0x0200
  15171. #define IOERR_UNIT_NOT_ALLOCATED        IOERR_UNIT+1
  15172. #define IOERR_UNIT_ALLOCATED            IOERR_UNIT+2
  15173. #define IOERR_UNIT_NOT_READY            IOERR_UNIT+3
  15174. #define IOERR_UNIT_PWR_OFF              IOERR_UNIT+4
  15175.  
  15176. #define IOERR_RBA                       0x0300
  15177. #define IOERR_RBA_ADDRESSING_ERROR      IOERR_RBA+IOERR_RETRY+1
  15178. #define IOERR_RBA_LIMIT                 IOERR_RBA+2
  15179. #define IOERR_RBA_CRC_ERROR             IOERR_RBA+IOERR_RETRY+3
  15180.  
  15181. #define IOERR_MEDIA                     0x0400
  15182. #define IOERR_MEDIA_NOT_FORMATTED       IOERR_MEDIA+1
  15183. #define IOERR_MEDIA_NOT_SUPPORTED       IOERR_MEDIA+2
  15184. #define IOERR_MEDIA_WRITE_PROTECT       IOERR_MEDIA+3
  15185. #define IOERR_MEDIA_CHANGED             IOERR_MEDIA+4
  15186. #define IOERR_MEDIA_NOT_PRESENT         IOERR_MEDIA+5
  15187.  
  15188. #define IOERR_ADAPTER                   0x0500
  15189. #define IOERR_ADAPTER_HOSTBUSCHECK      IOERR_ADAPTER+1
  15190. #define IOERR_ADAPTER_DEVICEBUSCHECK    IOERR_ADAPTER+IOERR_RETRY+2
  15191. #define IOERR_ADAPTER_OVERRUN           IOERR_ADAPTER+IOERR_RETRY+3
  15192. #define IOERR_ADAPTER_UNDERRUN          IOERR_ADAPTER+IOERR_RETRY+4
  15193. #define IOERR_ADAPTER_DIAGFAIL          IOERR_ADAPTER+5
  15194. #define IOERR_ADAPTER_TIMEOUT           IOERR_ADAPTER+IOERR_RETRY+6
  15195. #define IOERR_ADAPTER_DEVICE_TIMEOUT    IOERR_ADAPTER+IOERR_RETRY+7
  15196. #define IOERR_ADAPTER_REQ_NOT_SUPPORTED IOERR_ADAPTER+8
  15197. #define IOERR_ADAPTER_REFER_TO_STATUS   IOERR_ADAPTER+9
  15198. #define IOERR_ADAPTER_NONSPECIFIC       IOERR_ADAPTER+10
  15199.  
  15200. #define IOERR_DEVICE                    0x0600
  15201. #define IOERR_DEVICE_DEVICEBUSCHECK     IOERR_DEVICE+IOERR_RETRY+1
  15202. #define IOERR_DEVICE_REQ_NOT_SUPPORTED  IOERR_DEVICE+2
  15203. #define IOERR_DEVICE_DIAGFAIL           IOERR_DEVICE+3
  15204. #define IOERR_DEVICE_BUSY               IOERR_DEVICE+IOERR_RETRY+4
  15205. #define IOERR_DEVICE_OVERRUN            IOERR_DEVICE+IOERR_RETRY+5
  15206. #define IOERR_DEVICE_UNDERRUN           IOERR_DEVICE+IOERR_RETRY+6
  15207. #define IOERR_DEVICE_RESET              IOERR_DEVICE+7
  15208. #define IOERR_DEVICE_NONSPECIFIC        IOERR_DEVICE+8
  15209. /*--------------------------------------------------------------------------*/
  15210. /* Request Control flags in IORBH->RequestControl                           */
  15211. /*--------------------------------------------------------------------------*/
  15212.  
  15213. #define  IORB_ASYNC_POST        0x0001   /* Asynchronous post enabled       */
  15214. #define  IORB_CHAIN             0x0002   /* IORB chain link enabled         */
  15215. #define  IORB_CHS_ADDRESSING    0x0004   /* CHS fmt addr in RBA field       */
  15216. #define  IORB_REQ_STATUSBLOCK   0x0008   /* Obtain status block data        */
  15217. #define  IORB_DISABLE_RETRY     0x0010   /* Disable retries in ADD          */
  15218.  
  15219.  
  15220. /****************************************************************************/
  15221. /* ADAPTER CONFIGURATION IORB         (for IOCC_CONFIGURATION)              */
  15222. /****************************************************************************/
  15223. typedef struct _IORB_CONFIGURATION   {  /* IOCFG                            */
  15224.  
  15225.   IORBH            iorbh;               /* IORB header                      */
  15226.   DEVICETABLE far *pDeviceTable;        /* Far pointer to adapt. dev. table */
  15227.   USHORT           DeviceTableLen;      /* Length of adapter device table   */
  15228. } IORB_CONFIGURATION, FAR *PIORB_CONFIGURATION, *NPIORB_CONFIGURATION;
  15229.  
  15230. /* Adapter device table returned by GET_DEVICE_TABLE                        */
  15231. typedef struct _DEVICETABLE  {            /* IODT                           */
  15232.  
  15233.   UCHAR         ADDLevelMajor;           /* ADD major support level         */
  15234.   UCHAR         ADDLevelMinor;           /* ADD minor support level         */
  15235.   USHORT        ADDHandle;               /* ADD handle                      */
  15236.   USHORT        TotalAdapters;           /* Number of adapters supported    */
  15237.   NPADAPTERINFO pAdapter[1];             /* Array of adapter info pointers  */
  15238.  
  15239. } DEVICETABLE, FAR *PDEVICETABLE;
  15240. /*--------------------------------------------------------------------------*/
  15241. /* Current ADD Level for DEVICETABLE->AddLevelMajor, AddLevelMinor          */
  15242. /*--------------------------------------------------------------------------*/
  15243.  
  15244. #define ADD_LEVEL_MAJOR         0x01
  15245. #define ADD_LEVEL_MINOR         0x00
  15246.  
  15247.  
  15248. typedef struct _UNITINFO   {              /* IOUI                           */
  15249.  
  15250.   USHORT    AdapterIndex;                 /* nth adapter this driver        */
  15251.   USHORT    UnitIndex;                    /* nth unit on this card          */
  15252.   USHORT    UnitFlags;                    /* Unit flags                     */
  15253.   USHORT    Reserved;                     /* Reserved; must be 0            */
  15254.   USHORT    UnitHandle;                   /* Assigned by ADD or filter      */
  15255.   USHORT    FilterADDHandle;              /* Handle of filter ADD 0=None    */
  15256.   USHORT    UnitType;                     /* Unit type                      */
  15257.   USHORT    QueuingCount;                 /* Recommended number to queue    */
  15258.   UCHAR     UnitSCSITargetID;             /* SCSI target ID  (SCSI only)    */
  15259.   UCHAR     UnitSCSILUN;                  /* SCSI log. unit (SCSI only)     */
  15260.  
  15261. } UNITINFO;
  15262.  
  15263.  
  15264. /*--------------------------------------------------------------------------*/
  15265. /* Unit Flags for UNITINFO->UnitFlags                                       */
  15266. /*--------------------------------------------------------------------------*/
  15267.  
  15268. #define UF_REMOVABLE     0x0001           /* Media can be removed.          */
  15269. #define UF_CHANGELINE    0x0002           /* ChangeLine supported           */
  15270. #define UF_PREFETCH      0x0004           /* Supports prefetch read         */
  15271. #define UF_A_DRIVE       0x0008           /* Manages A:                     */
  15272. #define UF_B_DRIVE       0x0010           /* Manages B:                     */
  15273. #define UF_NODASD_SUPT   0x0020           /* Suppress DASD Mgr support.     */
  15274. #define UF_NOSCSI_SUPT   0x0040           /* Suppress SCSI Mgr support.     */
  15275. #define UF_DEFECTIVE     0x0080           /* Device is defective.           */
  15276.  
  15277. /*--------------------------------------------------------------------------*/
  15278. /* Unit Types for UNITINFO->UnitType                                        */
  15279. /*--------------------------------------------------------------------------*/
  15280.  
  15281. #define  UIB_TYPE_DISK      0x0000     /* All direct access devices         */
  15282. #define  UIB_TYPE_TAPE      0x0001     /* Sequential access devices         */
  15283. #define  UIB_TYPE_PRINTER   0x0002     /* Printer device                    */
  15284. #define  UIB_TYPE_PROCESSOR 0x0003     /* Processor type device             */
  15285. #define  UIB_TYPE_WORM      0x0004     /* Write Once/Read Many device       */
  15286. #define  UIB_TYPE_CDROM     0x0005     /* CD ROM device                     */
  15287. #define  UIB_TYPE_SCANNER   0x0006     /* Scanner device                    */
  15288. #define  UIB_TYPE_OPTICAL_MEMORY 0x0007/* Some optical disk                 */
  15289. #define  UIB_TYPE_CHANGER   0x0008     /* Changer device (such as juke box) */
  15290. #define  UIB_TYPE_COMM      0x0009     /* Communication devices             */
  15291.  
  15292.  
  15293. typedef struct _ADAPTERINFO   {        /* IOAI                              */
  15294.  
  15295.   UCHAR            AdapterName[17];    /* Adapter name ASCIIZ string        */
  15296.   UCHAR            Reserved;           /*                                   */
  15297.   USHORT           AdapterUnits;       /* Number of units this adapter      */
  15298.   USHORT           AdapterDevBus;      /* Bus Type - Adapter to device      */
  15299.   UCHAR            AdapterIOAccess;    /* I/O Type - Adapter to host        */
  15300.   UCHAR            AdapterHostBus;     /* Bus Type - Adapter to host        */
  15301.   UCHAR            AdapterSCSITargetID;/* Adapter SCSI target ID            */
  15302.   UCHAR            AdapterSCSILUN;     /* Adapter SCSI LUN                  */
  15303.   USHORT           AdapterFlags;
  15304.   USHORT           MaxHWSGList;        /* Max HW S/G list entries           */
  15305.   ULONG            MaxCDBTransferLength;/* Max data length for CDBs         */
  15306.   UNITINFO         UnitInfo[1];        /* Unit info for each unit           */
  15307.  
  15308. } ADAPTERINFO;
  15309.  
  15310.  
  15311. /*--------------------------------------------------------------------------*/
  15312. /* Adapter Flags for ADAPTERINFO->AdapterFlags                              */
  15313. /*--------------------------------------------------------------------------*/
  15314.  
  15315. #define AF_16M               0x0001      /* Supports >16M addresses        */
  15316. #define AF_IBM_SCB           0x0002      /* Supports IBM SCB commands      */
  15317. #define AF_HW_SCATGAT        0x0004      /* Supports scatter/gather in HW  */
  15318. #define AF_CHS_ADDRESSING    0x0008      /* Supports CHS addressing in HW  */
  15319. #define AF_ASSOCIATED_DEVBUS 0x0010      /* Supports >1 Device Bus         */
  15320.  
  15321. /*--------------------------------------------------------------------------*/
  15322. /* Adapter-to-Device protocol for ADAPTERINFO->AdapterDevBus                */
  15323. /*--------------------------------------------------------------------------*/
  15324.  
  15325. #define  AI_DEVBUS_OTHER           0x0000
  15326. #define  AI_DEVBUS_ST506           0x0001   /* ST-506 CAM-I                */
  15327. #define  AI_DEVBUS_ST506_II        0x0002   /* ST-506 CAM-II               */
  15328. #define  AI_DEVBUS_ESDI            0x0003   /*   ESDI                       */
  15329. #define  AI_DEVBUS_FLOPPY          0x0004   /*   Diskette                   */
  15330. #define  AI_DEVBUS_SCSI_1          0x0005
  15331. #define  AI_DEVBUS_SCSI_2          0x0006
  15332. #define  AI_DEVBUS_SCSI_3          0x0007
  15333. #define  AI_DEVBUS_NONSCSI_CDROM   0x0008  /* Non-SCSI CD-ROM interface bus */
  15334.  
  15335. /*--------------------------------------------------------------------------*/
  15336. /* Note: One of the following BUS WIDTH indicators must be                  */
  15337. /*       OR'd with the above field.                                         */
  15338. /*--------------------------------------------------------------------------*/
  15339.  
  15340. #define  AI_DEVBUS_FAST_SCSI    0x0100
  15341. #define  AI_DEVBUS_8BIT         0x0200
  15342. #define  AI_DEVBUS_16BIT        0x0400
  15343. #define  AI_DEVBUS_32BIT        0x0800
  15344.  
  15345.  
  15346. /*--------------------------------------------------------------------------*/
  15347. /* Adapter-to-Device protocol for ADAPTERINFO->AdapterIOAccess              */
  15348. /*--------------------------------------------------------------------------*/
  15349.  
  15350. #define  AI_IOACCESS_OTHER      0x00
  15351. #define  AI_IOACCESS_BUS_MASTER 0x01
  15352. #define  AI_IOACCESS_PIO        0x02
  15353. #define  AI_IOACCESS_DMA_SLAVE  0x04
  15354. #define  AI_IOACCESS_MEMORY_MAP 0x08
  15355. /*--------------------------------------------------------------------------*/
  15356. /* Adapter-to-Host bus type for ADAPTERINFO->AdapterHostBus                 */
  15357. /*--------------------------------------------------------------------------*/
  15358.  
  15359. #define  AI_HOSTBUS_OTHER       0x00
  15360. #define  AI_HOSTBUS_ISA         0x01
  15361. #define  AI_HOSTBUS_EISA        0x02
  15362. #define  AI_HOSTBUS_uCHNL       0x03
  15363. #define  AI_HOSTBUS_UNKNOWN     0x0f
  15364.  
  15365. /*--------------------------------------------------------------------------*/
  15366. /* Note: One of the following BUS WIDTH indicators must be                  */
  15367. /*       OR'd with the above field.                                         */
  15368. /*--------------------------------------------------------------------------*/
  15369.  
  15370. #define  AI_BUSWIDTH_8BIT       0x10
  15371. #define  AI_BUSWIDTH_16BIT      0x20
  15372. #define  AI_BUSWIDTH_32BIT      0x30
  15373. #define  AI_BUSWIDTH_64BIT      0x40
  15374. #define  AI_BUSWIDTH_UNKNOWN    0xf0
  15375.  
  15376.  
  15377. /****************************************************************************/
  15378. /* UNIT CONTROL IORB                  (for IOCC_UNIT_CONTROL)               */
  15379. /****************************************************************************/
  15380.  
  15381. typedef struct _IORB_UNIT_CONTROL  {     /* IOUC                            */
  15382.  
  15383.   IORBH            iorbh;                /* IORB Header                     */
  15384.   USHORT           Flags;                /*                                 */
  15385.   PUNITINFO        pUnitInfo;            /* For: IOCM_CHANGE_UNITINFO       */
  15386.   USHORT           UnitInfoLen;          /* Length of UnitInfo structure    */
  15387.  
  15388. } IORB_UNIT_CONTROL, FAR *PIORB_UNIT_CONTROL, *NPIORB_UNIT_CONTROL;
  15389. /****************************************************************************/
  15390. /* DASD GEOMETRY IORB                      (for IOCC_GEOMETRY)              */
  15391. /****************************************************************************/
  15392.  
  15393. typedef struct _IORB_GEOMETRY  {         /* IOGG                            */
  15394.  
  15395.   IORBH            iorbh;                /* IORB header                     */
  15396.   PGEOMETRY        pGeometry;            /* Far pointer to GEOMETRY block   */
  15397.   USHORT           GeometryLen;          /* Length of GEOMETRY block        */
  15398.  
  15399. } IORB_GEOMETRY, FAR *PIORB_GEOMETRY, *NPIORB_GEOMETRY;
  15400.  
  15401. typedef struct _GEOMETRY  {              /* IOG                             */
  15402.  
  15403.   ULONG    TotalSectors;
  15404.   USHORT   BytesPerSector;
  15405.   USHORT   Reserved;
  15406.   USHORT   NumHeads;
  15407.   ULONG    TotalCylinders;
  15408.   USHORT   SectorsPerTrack;
  15409.  
  15410. } GEOMETRY, FAR *PGEOMETRY, *NPGEOMETRY;
  15411.  
  15412.  
  15413. /****************************************************************************/
  15414. /* Scatter/Gather List Entry                                                */
  15415. /****************************************************************************/
  15416.  
  15417. typedef struct _SCATGATENTRY  {        /* IOSG                              */
  15418.  
  15419.   ULONG         ppXferBuf;             /* Physical pointer to xfer buffer   */
  15420.   ULONG         XferBufLen;            /* Length of transfer buffer         */
  15421.  
  15422. } SCATGATENTRY, FAR *PSCATGATENTRY, *NPSCATGATENTRY;
  15423.  
  15424. #define MAXSGLISTSIZE   (sizeof(SCATGATENTRY)) * 16
  15425.  
  15426. /****************************************************************************/
  15427. /* EXECUTE_IO IORB                    (for IOCC_EXECUTE_IO)                 */
  15428. /****************************************************************************/
  15429.  
  15430. typedef struct _IORB_EXECUTEIO  {            /* IOXIO                       */
  15431.  
  15432.   IORBH         iorbh;            /* IORB header                            */
  15433.   USHORT        cSGList;          /* Count of S/G list elements             */
  15434.   PSCATGATENTRY pSGList;          /* Far pointer to s/g list                */
  15435.   ULONG         ppSGList;         /* Phys. address of S/G list              */
  15436.   ULONG         RBA;              /* RBA starting address                   */
  15437.   USHORT        BlockCount;       /* Block count                            */
  15438.   USHORT        BlocksXferred;    /* Block done count                       */
  15439.   USHORT        BlockSize;        /* Size of a block in bytes               */
  15440.   USHORT        Flags;
  15441.  
  15442. } IORB_EXECUTEIO, FAR *PIORB_EXECUTEIO, *NPIORB_EXECUTEIO;
  15443.  
  15444.  
  15445. /****************************************************************************/
  15446. /* CHS Direct Addressing (Overlays RBA field)                               */
  15447. /****************************************************************************/
  15448.  
  15449. typedef struct _CHS_ADDR  {       /* IOCHS                                  */
  15450.  
  15451.   USHORT        Cylinder;
  15452.   UCHAR         Head;
  15453.   UCHAR         Sector;
  15454.  
  15455. } CHS_ADDR, FAR *PCHS_ADDR, *NPCHS_ADDR;
  15456.  
  15457. /*--------------------------------------------------------------------------*/
  15458. /* IORB specific flags for IORB_EXECUTE_IO->Flags                           */
  15459. /*--------------------------------------------------------------------------*/
  15460.  
  15461. #define  XIO_DISABLE_HW_WRITE_CACHE      0x0001
  15462. #define  XIO_DISABLE_HW_READ_CACHE       0x0002
  15463.  
  15464. /****************************************************************************/
  15465. /* FORMAT IORB                        (for IOCC_FORMAT)                     */
  15466. /****************************************************************************/
  15467.  
  15468.  
  15469. typedef struct _IORB_FORMAT  {          /* IOFMT                            */
  15470.  
  15471.   IORBH         iorbh;                  /* IORB Header                      */
  15472.   USHORT        cSGList;                /* Count of S/G list elements       */
  15473.   PSCATGATENTRY pSGList;                /* Far pointer to s/g list          */
  15474.   ULONG         ppSGList;               /* Phys. address of S/G list        */
  15475.   USHORT        FormatCmdLen;           /*                                  */
  15476.   PBYTE         pFormatCmd;             /* SCSI CDB or track fmt cmd        */
  15477.   UCHAR         Reserved_1[8];          /* Reserved; must not be modified   */
  15478.  
  15479. } IORB_FORMAT, FAR *PIORB_FORMAT, *NPIORB_FORMAT;
  15480.  
  15481.  
  15482. typedef struct _FORMAT_CMD_TRACK {      /* FMCT                             */
  15483.  
  15484.   USHORT        Flags;
  15485.   ULONG         RBA;
  15486.   USHORT        cTrackEntries;
  15487.  
  15488. } FORMAT_CMD_TRACK, FAR *PFORMAT_CMD_TRACK, *NPFORMAT_CMD_TRACK;
  15489.  
  15490. /*--------------------------------------------------------------------------*/
  15491. /* Flags for FORMAT_CMD_TRACK->Flags                                        */
  15492. /*--------------------------------------------------------------------------*/
  15493.  
  15494. #define FF_VERIFY       0x0001          /* Verify sectors after formatting. */
  15495.  
  15496.  
  15497. /****************************************************************************/
  15498. /* ADAPTER PASS THROUGH IORB           (for IOCC_ADAPTER_PASSTHRU)          */
  15499. /****************************************************************************/
  15500.  
  15501. typedef struct _IORB_ADAPTER_PASSTHRU  { /* IOPT                            */
  15502.  
  15503.   IORBH         iorbh;                  /* IORB header                      */
  15504.   USHORT        cSGList;                /* Count of S/G list elements       */
  15505.   PSCATGATENTRY pSGList;                /* Far pointer to s/g list          */
  15506.   ULONG         ppSGLIST;               /* Phys. address of S/G list        */
  15507.   USHORT        ControllerCmdLen;
  15508.   PBYTE         pControllerCmd;
  15509.   ULONG         ppSCB;       /* Phys. pointer to SCB for SCB_PASSTHRU       */
  15510.   USHORT        Flags;
  15511.  
  15512. } IORB_ADAPTER_PASSTHRU, FAR *PIORB_ADAPTER_PASSTHRU, *NPIORB_ADAPTER_PASSTHRU;
  15513.  
  15514. /*--------------------------------------------------------------------------*/
  15515. /* IORB specific flags for IORB_ADAPTER_PASSTHRU->Flags                     */
  15516. /*                                                                          */
  15517. /* Note: These flags apply to IOCM_EXECUTE_CDB.                             */
  15518. /*--------------------------------------------------------------------------*/
  15519.  
  15520. #define PT_DIRECTION_IN     0x0001      /* Data xfer to host adapter        */
  15521.  
  15522. /****************************************************************************/
  15523. /* UNIT STATUS IORB                   (for IOCC_UNIT_STATUS)                */
  15524. /****************************************************************************/
  15525.  
  15526. typedef struct _IORB_UNIT_STATUS  {     /* IOUS                             */
  15527.  
  15528.   IORBH      iorbh;
  15529.   USHORT     UnitStatus;
  15530.  
  15531. } IORB_UNIT_STATUS, FAR *PIORB_UNIT_STATUS, *NPIORB_UNIT_STATUS;
  15532.  
  15533. /*--------------------------------------------------------------------------*/
  15534. /* Unit Status for IORB_UNIT_STATUS->UnitStatus                             */
  15535. /*                                                                          */
  15536. /* Note: These flags apply to IOCM_GET_UNIT_STATUS                          */
  15537. /*--------------------------------------------------------------------------*/
  15538.  
  15539. #define US_READY                0x0001    /* Unit ready                     */
  15540. #define US_POWER                0x0002    /* Unit powered on                */
  15541. #define US_DEFECTIVE            0x0004    /* Unit operational               */
  15542.  
  15543. /*--------------------------------------------------------------------------*/
  15544. /* Unit Status for IORB_UNIT_STATUS->UnitStatus                             */
  15545. /*                                                                          */
  15546. /* Note: These flags apply to IOCM_GET_CHANGELINE_STATE                     */
  15547. /*--------------------------------------------------------------------------*/
  15548.  
  15549. #define US_CHANGELINE_ACTIVE    0x0001    /* ChangeLine state               */
  15550.  
  15551.  
  15552. /*--------------------------------------------------------------------------*/
  15553. /* Unit Status for IORB_UNIT_STATUS->UnitStatus                             */
  15554. /*                                                                          */
  15555. /* Note: These flags apply to IOCM_GET_MEDIA_SENSE                          */
  15556. /*--------------------------------------------------------------------------*/
  15557.  
  15558. #define US_MEDIA_UNKNOWN        0x0000     /* Unable to determine media     */
  15559. #define US_MEDIA_720KB          0x0001     /* 720KB in 3.5" drive           */
  15560. #define US_MEDIA_144MB          0x0002     /* 1.44MB in 3.5" drive          */
  15561. #define US_MEDIA_288MB          0x0003     /* 2.88MB in 3.5" drive          */
  15562.  
  15563. /****************************************************************************/
  15564. /* DEVICE CONTROL IORB                (for IOCC_DEVICE_CONTROL              */
  15565. /****************************************************************************/
  15566.  
  15567. typedef struct _IORB_DEVICE_CONTROL   {   /* IODC                           */
  15568.  
  15569.   IORBH      iorbh;                        /* IORB header                   */
  15570.   USHORT     Flags;
  15571.   USHORT     Reserved;
  15572.  
  15573. } IORB_DEVICE_CONTROL, FAR *PIORB_DEVICE_CONTROL, *NPIORB_DEVICE_CONTROL;
  15574.  
  15575. /*--------------------------------------------------------------------------*/
  15576. /* IORB-specific flags for IORB_DEVICE_CONTROL->Flags                       */
  15577. /*                                                                          */
  15578. /* Note: These flags apply to IOCM_SUSPEND                                  */
  15579. /*--------------------------------------------------------------------------*/
  15580.  
  15581. #define DC_SUSPEND_DEFERRED     0x0000    /* Suspend after device idle      */
  15582. #define DC_SUSPEND_IMMEDIATE    0x0001    /* Suspend after current request  */
  15583.  
  15584. #define MAX_IORB_SIZE   128
  15585.  
  15586. ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  15587.  
  15588.  
  15589. ΓòÉΓòÉΓòÉ 22. OS/2 SCSI Device Driver Interface Specification ΓòÉΓòÉΓòÉ
  15590.  
  15591. This appendix describes the high-level interface for the SCSI device driver for 
  15592. the OS/2 operating system.  For completeness, all functions are listed; 
  15593. however, functions that are not implemented are so indicated. Some of the 
  15594. internal specifications of the device driver have not been included here so 
  15595. that this document can be externally distributed to vendors wanting to write 
  15596. device drivers to the SCSI device driver interface. 
  15597.  
  15598.  
  15599. ΓòÉΓòÉΓòÉ 22.1. Introduction ΓòÉΓòÉΓòÉ
  15600.  
  15601. The SCSI driver is the lower half of a split model for OS/2 SCSI device 
  15602. drivers.  The SCSI driver drives the SCSI adapter through the SCSI adapter 
  15603. device driver as shown in the following figure. 
  15604.  
  15605.    ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  15606.    Γöé                                                           Γöé
  15607.    Γöé                                                           Γöé
  15608.    Γöé                       OS/2 KERNEL                         Γöé
  15609.    Γöé                                                           Γöé
  15610.    Γöé                                                           Γöé
  15611.    ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  15612.           Γöé                  Γöé                 Γöé
  15613.           Γöé                  Γöé                 Γöé
  15614.    ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  15615.    Γöé CDROM CLASS  Γöé Γöé  OPTICAL CLASS Γöé Γöé OTHER CLASS  Γöé  ....
  15616.    Γöé   DRIVER     Γöé Γöé     DRIVER     Γöé Γöé    DRIVER    Γöé
  15617.    ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  15618.           Γöé                  Γöé                 Γöé
  15619.           Γöé                  Γöé                 Γöé
  15620.    ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  15621.    Γöé                                                           Γöé
  15622.    Γöé             OS2SCSI.DMD SCSI DEVICE MANAGER               Γöé
  15623.    Γöé                                                           Γöé
  15624.    ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  15625.                                  Γöé
  15626.                                  Γöé
  15627.    ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  15628.    Γöé                         SCSI ADD                          Γöé
  15629.    ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  15630.                                  Γöé
  15631.    ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  15632.    Γöé                        SCSI ADAPTER                       Γöé
  15633.    ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  15634.           Γöé                 Γöé                  Γöé
  15635.    ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  15636.    Γöé CDROM SCSI   Γöé Γöé  OPTICAL SCSI  Γöé Γöé OTHER SCSI   Γöé  ....
  15637.    Γöé    DEVICE    Γöé Γöé     DEVICE     Γöé Γöé    DEVICE    Γöé
  15638.    ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  15639.  
  15640. The diagram illustrates the relationship between the device drivers and their 
  15641. interaction with other components of the system. 
  15642.  
  15643. The split device driver model uses the principles of code layering to 
  15644. facilitate development and maintenance of new SCSI device drivers.  The 
  15645. provision of common functions in the SCSI driver also reduces memory 
  15646. requirements.  Performance is enhanced because the SCSI driver centralizes 
  15647. control of the SCSI channel, thus reducing contention.  Only one interrupt 
  15648. handler is registered for all the SCSI peripheral devices. 
  15649.  
  15650. A split device driver model has been used by IBM for all the SCSI devices 
  15651. except the SCSI fixed disks, which use the OS/2 DASD Manager. The device-class 
  15652. driver is the upper-level driver, and the SCSI driver is the lower-level 
  15653. driver.  The device-class driver does not interact directly with the SCSI 
  15654. adapter or the SCSI device.  The device-class driver sends commands to the SCSI 
  15655. device manager, which in turn sends commands to the device using the IORB ADD 
  15656. interface. 
  15657.  
  15658. The device-class driver looks very much like an OS/2 device driver. It maps an 
  15659. OS/2 request into an SCB, or a chain of SCBs, and passes the request 
  15660. immediately to the SCSI driver.  The SCSI driver handles all queuing and 
  15661. interrupts and insulates the device-class driver from the procedural details of 
  15662. managing adapter hardware.  The device-class driver requests a service, like 
  15663. Transfer SCB, from the SCSI device manager.  When control is returned to the 
  15664. device-class driver, the called service is complete.  If an error occurred, the 
  15665. termination status block (TSB) might contain error information.  In addition, 
  15666. sense data might have been returned. 
  15667.  
  15668.  
  15669. ΓòÉΓòÉΓòÉ 22.2. Naming Conventions ΓòÉΓòÉΓòÉ
  15670.  
  15671.    o  SCSI Driver 
  15672.       The file name for the SCSI driver is OS2SCSI.DMD.  The IDC entry point 
  15673.       for the SCSI driver can be obtained from the AttachDD DevHlp function by 
  15674.       using the name SCSI-02$ as the device driver name parameter. 
  15675.  
  15676.    o  IBM Device-Class Drivers 
  15677.       Current device driver names used by IBM are: 
  15678.  
  15679.            OPTICAL.SYS      Read/Write optical device driver 
  15680.  
  15681.          Note:  Naming conflicts are possible, so try to choose unique names 
  15682.                 for your device-class drivers. In a SCSI environment, different 
  15683.                 vendor devices for the same SCSI device class can be present in 
  15684.                 one system. 
  15685.  
  15686.    o  Message Files 
  15687.       The IBM-reserved message file name for device drivers that have been 
  15688.       developed internally is DEV002.MSG.  Independent vendors must not use 
  15689.       DEV002.MSG for their message files, because if they do, one of those 
  15690.       message files could be destroyed during the user installation process. It 
  15691.       is suggested that vendors choose a unique message file name by embedding 
  15692.       part of their logo or company name in the file name; that would eliminate 
  15693.       the possibility of having different vendor devices with the same message 
  15694.       file name installed in the same system. 
  15695.  
  15696.  
  15697. ΓòÉΓòÉΓòÉ 22.3. Generic IOCtl Request ΓòÉΓòÉΓòÉ
  15698.  
  15699. The input to the SCSI driver is a generic IOCtl request packet, pointed to by 
  15700. the ES:BX register pair. 
  15701.  
  15702. Note:  It is not the intention of the IOCTL definitions in the SCSI.SYS 
  15703.        specification to provide an application level programming interface to 
  15704.        SCSI devices.  The intention of the IOCTL definitions is to allow client 
  15705.        drivers at their Ring 3 INIT time to communicate with the OS2SCSI.DMD 
  15706.        which is running at a higher privilege level than the installable 
  15707.        driver. 
  15708.  
  15709. A client driver may choose to provide application level services. However, all 
  15710. responsibility for locking and removing LDT references from the IOCTL/SCB/TSB 
  15711. structures would rest with the client driver not OS2SCSI.DMD. 
  15712.  
  15713.  
  15714. ΓòÉΓòÉΓòÉ 22.3.1. OS/2 SCSI Services ΓòÉΓòÉΓòÉ
  15715.  
  15716. The SCSI driver supports the following requests: 
  15717.  
  15718.    o  Read Device Parameters 
  15719.    o  Reset/Initialization 
  15720.    o  Enable Adapter Cache 
  15721.    o  Disable Adapter Cache 
  15722.    o  Return Adapter Cache Status 
  15723.    o  Set Device Timeout 
  15724.    o  Read Device Timeout 
  15725.    o  Transfer SCB 
  15726.    o  Deallocate Device 
  15727.    o  Allocate Device 
  15728.    o  Return Peripheral Type Count 
  15729.    o  Abort 
  15730.  
  15731.  
  15732. ΓòÉΓòÉΓòÉ 22.3.1.1. Read Device Parameters ΓòÉΓòÉΓòÉ
  15733.  
  15734. This function returns some information about the device. The logical unit 
  15735. number (LUN) is required if a Send Other command is used. 
  15736.  
  15737. Input Parameter Structure 
  15738.  
  15739.  Field               Length 
  15740.  Device Handle       WORD 
  15741.  
  15742.   ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  15743.  
  15744.   FUNCTION CATEGORY : 80h
  15745.   FUNCTION CODE     : 43h
  15746.  
  15747.   ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  15748.  
  15749.  This function requires a device handle to be passed in the request. The device 
  15750.  must be allocated by the device-class driver before calling this function. 
  15751.  The function category and function code are to be set up as shown above. 
  15752.  
  15753.   ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  15754.   ΓöéField Name              ΓöéLength                              Γöé
  15755.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  15756.   ΓöéDevice Key Index        ΓöéWORD                                Γöé
  15757.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  15758.   ΓöéSCB Architecture Card   ΓöéBYTE                                Γöé
  15759.   ΓöéComp. Level             Γöé                                    Γöé
  15760.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  15761.   ΓöéAdapter Index           ΓöéBYTE                                Γöé
  15762.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  15763.   ΓöéDevice Flags            ΓöéWORD                                Γöé
  15764.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  15765.   ΓöéLogical unit number     ΓöéBYTE                                Γöé
  15766.   Γöé(LUN)                   Γöé                                    Γöé
  15767.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  15768.   ΓöéPhysical unit number    ΓöéBYTE                                Γöé
  15769.   Γöé(PUN)                   Γöé                                    Γöé
  15770.   ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  15771.  
  15772.  Adapter Index 
  15773.  contains the adapter number for the SCSI adapter. 
  15774.  
  15775.  Device Flags 
  15776.  
  15777.  Bit 4     0 = Adapter cache not supported. 
  15778.            1 = Adapter cache supported. 
  15779.  
  15780.  Bit 1     0 = Device power ON. 
  15781.            1 = Device power OFF. 
  15782.  
  15783.  Bit 0     0 = Device is not defective. 
  15784.            1 = Device is defective. 
  15785.  
  15786.  
  15787. ΓòÉΓòÉΓòÉ 22.3.1.2. Reset/Initialize ΓòÉΓòÉΓòÉ
  15788.  
  15789. This function results in a reset message being issued to the physical device. 
  15790.  
  15791. Input Parameter Structure 
  15792.  
  15793.  Field               Length 
  15794.  Device Handle       WORD 
  15795.  Sense Data Size     WORD 
  15796.  
  15797.   ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  15798.  
  15799.   FUNCTION CATEGORY : 80h
  15800.   FUNCTION CODE     : 45h
  15801.  
  15802.   ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  15803.  
  15804.  This function requires a device handle to be passed in the request. The device 
  15805.  must be allocated by the device-class driver before calling this function. 
  15806.  The function category and function code must be set up as shown above. 
  15807.  
  15808.  Data Buffer 
  15809.  
  15810.  This function does not require a data buffer.  Status is returned in the 
  15811.  Status field of the request packet. 
  15812.  
  15813.  
  15814. ΓòÉΓòÉΓòÉ 22.3.1.3. Enable Adapter Cache ΓòÉΓòÉΓòÉ
  15815.  
  15816. This function enables the adapter cache capability for all subsequent commands 
  15817. to this device. 
  15818.  
  15819. Input Parameter Structure 
  15820.  
  15821.  Field             Length 
  15822.  Device Handle     WORD 
  15823.  
  15824.   ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  15825.  
  15826.   FUNCTION CATEGORY : 80h
  15827.   FUNCTION CODE     : 4Dh
  15828.  
  15829.   ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  15830.  
  15831.  This function requires a device handle to be passed in the request. The device 
  15832.  must be allocated by the device-class driver before calling this function. 
  15833.  The function category and function code must be set up as shown above. 
  15834.  
  15835.  Data Buffer 
  15836.  
  15837.  This function does not require a data buffer.  Status is returned in the 
  15838.  Status field of the request packet. 
  15839.  
  15840.  
  15841. ΓòÉΓòÉΓòÉ 22.3.1.4. Disable Adapter Cache ΓòÉΓòÉΓòÉ
  15842.  
  15843. This function disables the adapter cache capability for subsequent commands to 
  15844. the specified device. 
  15845.  
  15846. Input Parameter Structure 
  15847.  
  15848.  Field             Length 
  15849.  Device Handle     WORD 
  15850.  
  15851.   ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  15852.  
  15853.   FUNCTION CATEGORY : 80h
  15854.   FUNCTION CODE     : 4Eh
  15855.  
  15856.   ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  15857.  
  15858.  This function requires a device handle to be passed in the request. The device 
  15859.  must be allocated by the device-class driver before calling this function. The 
  15860.  function category and function code must be set up as shown above. 
  15861.  
  15862.  Data Buffer 
  15863.  
  15864.  This function does not require a data buffer.  Status is returned in the 
  15865.  Status field of the request packet. 
  15866.  
  15867.  
  15868. ΓòÉΓòÉΓòÉ 22.3.1.5. Return Adapter Cache Status ΓòÉΓòÉΓòÉ
  15869.  
  15870. This function returns the adapter cache status for the specified device. 
  15871.  
  15872. Input Parameter Structure 
  15873.  
  15874.  Field             Length 
  15875.  Device Handle     WORD 
  15876.  
  15877.   ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  15878.  
  15879.   FUNCTION CATEGORY : 80h
  15880.   FUNCTION CODE     : 4Fh
  15881.  
  15882.   ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  15883.  
  15884.  This function requires a device handle to be passed in the request. The device 
  15885.  must be allocated by the device-class driver before calling this function. 
  15886.  The function category and function code must be set up as shown above. 
  15887.  
  15888.   ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  15889.   ΓöéField Name                    ΓöéLength                        Γöé
  15890.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  15891.   ΓöéAdapter Cache Status          ΓöéBYTE                          Γöé
  15892.   ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  15893.  
  15894.   ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  15895.  
  15896.   Adapter Cache Status : 00H  Enabled
  15897.                          01H  Disabled
  15898.  
  15899.   ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  15900.  
  15901.  
  15902. ΓòÉΓòÉΓòÉ 22.3.1.6. Set Device Timeout ΓòÉΓòÉΓòÉ
  15903.  
  15904. This function sets the timeout value for this device. 
  15905.  
  15906. Input Parameter Structure 
  15907.  
  15908.  Field             Length 
  15909.  Timeout Value     DWORD 
  15910.  
  15911.   ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  15912.  
  15913.   FUNCTION CATEGORY : 80h
  15914.   FUNCTION CODE     : 50h
  15915.  
  15916.   ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  15917.  
  15918.  This function requires a device handle and a timeout value to be passed in the 
  15919.  request.  The timeout value is in milliseconds. The device must be allocated 
  15920.  by the device-class driver before calling this function.  The function 
  15921.  category and function code must be set up as shown above. 
  15922.  
  15923.  Data Buffer 
  15924.  
  15925.  This function does not require a data buffer.  Status is returned in the 
  15926.  Status field of the request packet. 
  15927.  
  15928.  
  15929. ΓòÉΓòÉΓòÉ 22.3.1.7. Read Device Timeout ΓòÉΓòÉΓòÉ
  15930.  
  15931. This function returns the current timeout value for this device. 
  15932.  
  15933. Input Parameter Structure 
  15934.  
  15935.  Field             Length 
  15936.  Device Handle     WORD 
  15937.  
  15938.   ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  15939.  
  15940.   FUNCTION CATEGORY : 80h
  15941.   FUNCTION CODE     : 51h
  15942.  
  15943.   ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  15944.  
  15945.  This function requires a device handle to be passed in the request. The device 
  15946.  must be allocated by the device-class driver before calling this function. 
  15947.  The function category and function code must be set up as shown above. 
  15948.  
  15949.   ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  15950.   ΓöéField Name              ΓöéLength                              Γöé
  15951.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  15952.   ΓöéTimeout Value           ΓöéDWORD                               Γöé
  15953.   ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  15954.  
  15955.  The timeout value is in milliseconds. 
  15956.  
  15957.  
  15958. ΓòÉΓòÉΓòÉ 22.3.1.8. Transfer SCB ΓòÉΓòÉΓòÉ
  15959.  
  15960. This function causes an SCB or a chain of SCBs to be sent to the adapter. 
  15961.  
  15962. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  15963. ΓöéField Name                                   ΓöéLength         Γöé
  15964. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  15965. ΓöéDevice Handle                                ΓöéWORD           Γöé
  15966. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  15967. ΓöéSense Data Size                              ΓöéWORD           Γöé
  15968. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  15969. ΓöéPhysical Pointer to SCB                      ΓöéDWORD          Γöé
  15970. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  15971. ΓöéLogical Pointer to SCB Chain Header          ΓöéDWORD          Γöé
  15972. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  15973. ΓöéFlags                                        ΓöéBYTE           Γöé
  15974. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  15975.  
  15976. ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  15977.  
  15978. FUNCTION CATEGORY : 80h
  15979. FUNCTION CODE     : 52h
  15980.  
  15981. ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  15982.  
  15983. This function requires a device handle to be passed in the request. The device 
  15984. must be allocated by the device-class driver before calling this function.  The 
  15985. function category and function code are to be set up as shown above. 
  15986.  
  15987. Flags 
  15988.  
  15989.  Bit 0 =   0 Normal Length SCB 
  15990.            1 Long SCB 
  15991.  
  15992.  A normal length SCB is used to send generic SCSI commands to a device. The 
  15993.  long SCB is used to send a vendor-unique SCSI command embedded in the SCB. 
  15994.  
  15995.  Data Buffer 
  15996.  
  15997.  If an error occurs, the data buffer might contain sense data; the return code 
  15998.  indicates whether the sense data is valid.  A termination status block also 
  15999.  might be returned. 
  16000.  
  16001.  SCB Chain Header 
  16002.  
  16003.             +00h  ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  16004.                   Γöé   Reserved                 Γöé
  16005.             +02h  Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16006.                   Γöé   Logical Pointer to next  Γöé
  16007.                   Γö£ΓöÇ  SCB Chain Header        ΓöÇΓöñ
  16008.                   Γöé                            Γöé
  16009.             +06h  Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16010.                   Γöé   Reserved                 Γöé
  16011.             +08h  Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16012.                   Γöé   Reserved                 Γöé
  16013.             +0Ah  Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16014.                   Γöé   Logical Pointer to TSB   Γöé
  16015.                   Γö£ΓöÇ                          ΓöÇΓöñ
  16016.                   Γöé                            Γöé
  16017.             +0Eh  Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16018.                   Γöé   Reserved                 Γöé
  16019.             +10h  Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16020.                   Γöé                            Γöé
  16021.                   Γöé                            Γöé
  16022.                   Γöé            SCB             Γöé
  16023.                   Γöé                            Γöé
  16024.                   Γöé        Immediately         Γöé
  16025.                   Γöé                            Γöé
  16026.                   Γöé           Follows          Γöé
  16027.                   Γöé                            Γöé
  16028.                   Γöé             the            Γöé
  16029.                   Γöé                            Γöé
  16030.                   Γöé            Chain           Γöé
  16031.                   Γöé                            Γöé
  16032.                   Γöé           Header           Γöé
  16033.                   Γöé                            Γöé
  16034.                   Γöé                            Γöé
  16035.                   ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  16036.  
  16037.  See Subsystem Control Blocks for a description of the SCB architecture. 
  16038.  
  16039.  
  16040. ΓòÉΓòÉΓòÉ 22.3.1.9. Allocate Device ΓòÉΓòÉΓòÉ
  16041.  
  16042. This function allocates a SCSI peripheral device and returns the device handle 
  16043. that will be used to access the device. 
  16044.  
  16045. Input Parameter Structure 
  16046.  
  16047.  Field                     Length 
  16048.  Device Peripheral Type    BYTE 
  16049.  Device Type Flags         BYTE 
  16050.  Nth Available             WORD 
  16051.  
  16052.   ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  16053.  
  16054.   FUNCTION CATEGORY : 80h
  16055.   FUNCTION CODE     : 55h
  16056.  
  16057.   ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  16058.  
  16059.  This function requires a device type, device type flags, and Nth available 
  16060.  device to be passed in the request.  The device type flags define the 
  16061.  removable media indicator.  The most significant bit of the device type flags 
  16062.  set indicates that the media is removable.  The Nth available is the Nth 
  16063.  device in the device type group.  If Nth available is 0, the next available 
  16064.  device is returned. 
  16065.  
  16066.    o  SCSI Device Types 
  16067.  
  16068.            Direct Access                 0x00 
  16069.            Sequential Access             0x01 
  16070.            Printer                       0x02 
  16071.            Processor                     0x03 
  16072.            Write Once/Read Many          0x04 
  16073.            CD-ROM                        0x05 
  16074.            Scanner                       0x06 
  16075.            Optical Memory                0x07 
  16076.            Medium Changer                0x08 
  16077.            Communications                0x09 
  16078.  
  16079.  Data Buffer 
  16080.  
  16081.   ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  16082.   ΓöéField Name          ΓöéLength                                  Γöé
  16083.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16084.   ΓöéDevice Handle       ΓöéWORD                                    Γöé
  16085.   ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  16086.  
  16087.  Device Handle 
  16088.  Returned to the caller. 
  16089.  
  16090.  
  16091. ΓòÉΓòÉΓòÉ 22.3.1.10. Deallocate Device ΓòÉΓòÉΓòÉ
  16092.  
  16093. This function deallocates the SCSI Peripheral Device assigned to this device 
  16094. handle. 
  16095.  
  16096. Input Parameter Structure 
  16097.  
  16098.  Field             Length 
  16099.  Device Handle     WORD 
  16100.  
  16101.   ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  16102.  
  16103.   FUNCTION CATEGORY : 80h
  16104.   FUNCTION CODE     : 54h
  16105.  
  16106.   ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  16107.  
  16108.  This function requires a device handle to be passed in the request. The device 
  16109.  must be allocated by the device-class driver before calling this function. 
  16110.  The function category and function code must be set up as shown above. 
  16111.  
  16112.  Data Buffer 
  16113.  
  16114.  This function does not require a data buffer.  Status is returned in the 
  16115.  Status field of the request packet. 
  16116.  
  16117.  
  16118. ΓòÉΓòÉΓòÉ 22.3.1.11. Return Peripheral Type Count ΓòÉΓòÉΓòÉ
  16119.  
  16120. This function returns a count of the number of devices of a particular type 
  16121. that are detected. 
  16122.  
  16123. Input Parameter Structure 
  16124.  
  16125.  Field                    Length 
  16126.  Device Peripheral Type   BYTE 
  16127.  Device Type Flags        BYTE 
  16128.  
  16129.   ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  16130.  
  16131.   FUNCTION CATEGORY : 80h
  16132.   FUNCTION CODE     : 56h
  16133.  
  16134.   ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  16135.  
  16136.  This function requires a device type and device type flags to be passed in the 
  16137.  request.  The device type flags define the removable media indicator.  The 
  16138.  most significant bit of the device type flags set indicates that the media is 
  16139.  removable.  Function category and function code must be set up as shown above. 
  16140.  
  16141.   ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  16142.   ΓöéField Name          ΓöéLength                                  Γöé
  16143.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16144.   ΓöéCount of Device TypeΓöéWORD                                    Γöé
  16145.   ΓöéRequested           Γöé                                        Γöé
  16146.   ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  16147.  
  16148.  Count of Device Type Requested 
  16149.  Returned when the request is completed successfully. 
  16150.  
  16151.  
  16152. ΓòÉΓòÉΓòÉ 22.3.1.12. Send Abort ΓòÉΓòÉΓòÉ
  16153.  
  16154. This function causes an abort request to be sent to the device. 
  16155.  
  16156. Input Parameter Structure 
  16157.  
  16158.  Field             Length 
  16159.  Device Handle     WORD 
  16160.  Sense Data Size   WORD 
  16161.  Reserved          DWORD 
  16162.  
  16163.   ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  16164.  
  16165.   FUNCTION CATEGORY : 80h
  16166.   FUNCTION CODE     : 57h
  16167.  
  16168.   ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  16169.  
  16170.  Data Buffer 
  16171.  
  16172.  This function does not require a data buffer.  Status is returned in the 
  16173.  Status field of the request packet. 
  16174.  
  16175.  
  16176. ΓòÉΓòÉΓòÉ 22.4. Return Codes ΓòÉΓòÉΓòÉ
  16177.  
  16178. The following table describes return code bit categories. 
  16179.  
  16180. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  16181. ΓöéBit       ΓöéCategory                                          Γöé
  16182. ΓöéNumbers   Γöé                                                  Γöé
  16183. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16184. Γöé15        ΓöéERROR                                             Γöé
  16185. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16186. Γöé10 - 14   ΓöéRESERVED                                          Γöé
  16187. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16188. Γöé9         ΓöéBUSY                                              Γöé
  16189. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16190. Γöé8         ΓöéDONE                                              Γöé
  16191. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16192. Γöé7         ΓöéSCSI ERROR                                        Γöé
  16193. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16194. Γöé0 - 6     ΓöéERROR CODE (when Bit 15 = 1)                      Γöé
  16195. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  16196.  
  16197. The following table describes bit descriptions. 
  16198.  
  16199. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  16200. ΓöéBit       ΓöéDescription                                       Γöé
  16201. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16202. Γöé07        ΓöéSCSI Driver-Specific Error                        Γöé
  16203. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16204. Γöé08        ΓöéOperation Complete                                Γöé
  16205. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16206. Γöé15        ΓöéRequest Completed with Error                      Γöé
  16207. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  16208.  
  16209. The following table describes SCSI error codes. 
  16210.  
  16211. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  16212. ΓöéError CodeΓöéDescription                                       Γöé
  16213. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16214. Γöé00h       ΓöéDevice Error (Sense Data Returned)                Γöé
  16215. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16216. Γöé01h       ΓöéTimeout Error                                     Γöé
  16217. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16218. Γöé02h       ΓöéUnusual Wakeup Error                              Γöé
  16219. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16220. Γöé03h       ΓöéDevHlp Error                                      Γöé
  16221. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16222. Γöé04h       ΓöéRequest Block Not Available                       Γöé
  16223. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16224. Γöé05h       ΓöéMaximum Device Support Exceeded                   Γöé
  16225. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16226. Γöé06h       ΓöéInterrupt Level Not Available                     Γöé
  16227. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16228. Γöé07h       ΓöéDevice Not Available                              Γöé
  16229. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16230. Γöé08h       ΓöéMore IRQ Levels than Adapters                     Γöé
  16231. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16232. Γöé09h       ΓöéDevice Busy                                       Γöé
  16233. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16234. Γöé0Ah       ΓöéRequest Sense Failed                              Γöé
  16235. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16236. Γöé0Bh       ΓöéAdapter Cache Not Supported                       Γöé
  16237. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  16238. The SCSI device driver can return any of the standard OS/2 device driver return 
  16239. codes as well as the specific error codes listed above. 
  16240.  
  16241. If Bit 15 is set, Bits 0 - 6 contain an error code.  If, in addition, Bit 7 is 
  16242. set, the error code in Bits 0 - 6 is one of the SCSI device driver-specific 
  16243. error codes from the table. Otherwise, it is a standard OS/2 device driver 
  16244. error code, such as unknown_command or invalid_parameter. 
  16245.  
  16246. The DONE bit always is set by the SCSI device driver so that a successful 
  16247. return code is hex 0100 , not 0. 
  16248.  
  16249. At initialization time, the returned status is OR'd with hex FF00 by the 
  16250. kernel. 
  16251.  
  16252.  
  16253. ΓòÉΓòÉΓòÉ 22.5. Error Recovery Procedure ΓòÉΓòÉΓòÉ
  16254.  
  16255. The SCSI device driver will not perform any error recovery on the SCSI adapter. 
  16256. The SCSI adapter will not be allocated and, therefore, no error recovery 
  16257. procedure is followed. 
  16258.  
  16259. If a Check Condition is detected, the SCSI device driver will request sense 
  16260. data from the device and return it to the device-specific driver if successful. 
  16261. A return code of hex xx80 indicates that sense data has been returned. 
  16262.  
  16263.  
  16264. ΓòÉΓòÉΓòÉ 22.6. Device-Class Driver Model ΓòÉΓòÉΓòÉ
  16265.  
  16266. The device-class driver model is described briefly here to assist in the design 
  16267. of a device-class driver. 
  16268.  
  16269.  
  16270. ΓòÉΓòÉΓòÉ 22.6.1. Overview ΓòÉΓòÉΓòÉ
  16271.  
  16272. The device-class driver receives OS/2 request packets from the kernel.  It is 
  16273. responsible for mapping the received request to a generic IOCtl request to be 
  16274. passed to the SCSI device driver.  When a request from the kernel results in 
  16275. sending a Transfer SCB command to the SCSI driver, the device-class driver 
  16276. allocates the SCB chain header and formats the SCB and the SCB chain header. 
  16277. The TSB also must be allocated.  When a request from the kernel results in 
  16278. multiple Transfer SCBs, the device-class driver chains the SCBs and sends only 
  16279. one Transfer SCB command to the SCSI driver.  This achieves better performance 
  16280. and guarantees that requests are processed sequentially. 
  16281.  
  16282. The device-class driver calls the SCSI driver to send the request to the 
  16283. device.  The SCSI driver returns to the device-class driver after the request 
  16284. is completed.  When a Transfer SCB request completes with an error, the SCSI 
  16285. driver performs a Request Sense command to the device to obtain sense data. 
  16286. The sense data is passed back to the caller in the data buffer area of the 
  16287. generic IOCtl request packet.  The device-class driver might take some 
  16288. error-recovery steps at this point or return to the kernel, passing the return 
  16289. code from the device. 
  16290.  
  16291.  
  16292. ΓòÉΓòÉΓòÉ 22.6.2. Initialization Routine ΓòÉΓòÉΓòÉ
  16293.  
  16294. This routine is called when the device-class driver is first loaded into the 
  16295. system.  This routine performs all initialization required for the device-class 
  16296. driver and the device.  At Init time, all calls to the SCSI driver are made 
  16297. through the DosDevIoctl interface.  Typically, initialization performs the 
  16298. functions in the following list: 
  16299.  
  16300.    1. Performs a return peripheral device count to determine the count of 
  16301.       devices attached. 
  16302.    2. Allocates the device. 
  16303.    3. Queries the device to determine whether it is supported. 
  16304.    4. Sets the return code in the request block. 
  16305.    5. Returns the offsets for the end of the code and data segments. 
  16306.  
  16307.  
  16308. ΓòÉΓòÉΓòÉ 22.6.3. Strategy Routine ΓòÉΓòÉΓòÉ
  16309.  
  16310. This routine receives requests from the kernel at task time.  It builds a 
  16311. generic IOCtl request packet and sends it to the SCSI driver through the IDC 
  16312. entry point. 
  16313.  
  16314. The generic IOCtl request contains the following parameters: 
  16315.  
  16316.    o  FUNCTION CATEGORY 
  16317.       80h 
  16318.  
  16319.    o  FUNCTION CODE 
  16320.       Represents function to be performed by the SCSI driver. 
  16321.  
  16322.    o  PARAMETER BUFFER ADDRESS 
  16323.       Contains a pointer to the parameters required for the function to be 
  16324.       performed. 
  16325.  
  16326.    o  DATA BUFFER ADDRESS 
  16327.       Contains a pointer to the data buffer where returned data is stored. 
  16328.  
  16329.  
  16330. ΓòÉΓòÉΓòÉ 22.6.4. Interrupt Handler ΓòÉΓòÉΓòÉ
  16331.  
  16332. An interrupt handler is not required for the device-class driver. All 
  16333. interrupts from the SCSI peripheral devices are handled by the SCSI driver. 
  16334.  
  16335.  
  16336. ΓòÉΓòÉΓòÉ 22.6.5. DMA Data Structures ΓòÉΓòÉΓòÉ
  16337.  
  16338. All data structures that will be accessed by the DMA must be locked into memory 
  16339. before calling OS2SCSI.DMD.  These data structures include the following: 
  16340.  
  16341.    o  SCB chain header and SCBs 
  16342.    o  Scatter/gather list 
  16343.    o  Scatter/gather data areas 
  16344.    o  TSB 
  16345.    o  Sense data area 
  16346.    o  User data areas. 
  16347.  
  16348.  
  16349. ΓòÉΓòÉΓòÉ 22.7. Subsystem Control Blocks ΓòÉΓòÉΓòÉ
  16350.  
  16351. The SCB commands relieve the system of transferring command blocks to the 
  16352. adapter through programmed input and output.  The SCB specifies the desired 
  16353. command and associated parameters.  An SCB must begin on a doubleword boundary, 
  16354. and any address translations, from virtual to physical, must be performed by 
  16355. system software before the SCB pointer is loaded into the command interface 
  16356. registers. If 80386 virtual page mode is being used, system software must also 
  16357. ensure that the SCB, data buffers, and termination status block (TSB) areas are 
  16358. locked into memory.  The SCB specifies the desired command and associated 
  16359. parameters.  When the SCB (or chain of SCBs) has been performed by the adapter, 
  16360. an interrupt request is issued to the system.  The adapter presents only one 
  16361. interrupt request at a time to the system. 
  16362.  
  16363. The following figure shows the format of the subsystem control block as it 
  16364. applies to device-related commands. 
  16365.  
  16366. ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  16367.  
  16368. 15  14  13  12  11  10  9  8  7  6  5  4  3  2  1  0     Remarks
  16369.  
  16370. <---- Command Dependent ---> ND NS C5 C4 C3 C2 C1 C0     Command Word
  16371. RD  ES  RE  PT   0  SS  BB 0  0  0  0  0  0  0  0 CH     Enable Word
  16372. <------------ Least Significant Word -------------->     Logical Block
  16373. <------------ Most Significant Word --------------->      Address
  16374. <------------ Least Significant Word -------------->     System Buffer
  16375. <------------ Most Significant Word --------------->      Address
  16376. <------------ Least Significant Word -------------->     System Buffer
  16377. <------------ Most Significant Word --------------->      Byte Count
  16378. <------------ Least Significant Word -------------->     Termination Status
  16379. <------------ Most Significant Word --------------->      Block Address
  16380. <------------ Least Significant Word -------------->     Optional SCB Chain
  16381. <------------ Most Significant Word --------------->      Address
  16382. <------------ Number of Blocks -------------------->     Block Count
  16383. <------------ Block Size -------------------------->     Block Length
  16384.  
  16385. ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  16386.  
  16387. A command is encoded in the first word of the SCB.  The setting of bits 15 - 8 
  16388. of the first word depends on the specific command identified in bits 5 - 0.  If 
  16389. bit 7 (ND) of this word is set to 1, the adapter will not disconnect the target 
  16390. device during command execution.  If bit 6 (NS) of this word is set to 1, the 
  16391. adapter will not send any Synchronous Data Transfer Request messages to the 
  16392. target device. 
  16393.  
  16394. The second word of the SCB is used to enable options that are used to modify a 
  16395. specified command, as shown in the following table. 
  16396.  
  16397. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  16398. ΓöéBit   ΓöéSymbolΓöéFunction                                          Γöé
  16399. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16400. Γöé15    ΓöéRD    ΓöéInput/Output Control                              Γöé
  16401. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16402. Γöé14    ΓöéES    ΓöéReport TSB Status Only on Error                   Γöé
  16403. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16404. Γöé13    ΓöéRE    ΓöéRetry Enable                                      Γöé
  16405. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16406. Γöé12    ΓöéPT    ΓöéPointer to List                                   Γöé
  16407. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16408. Γöé10    ΓöéSS    ΓöéSuppress Exception Short                          Γöé
  16409. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16410. Γöé9     ΓöéBB    ΓöéBypass Buffer                                     Γöé
  16411. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16412. Γöé8 - 1 Γöé      ΓöéReserved                                          Γöé
  16413. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16414. Γöé0     ΓöéCH    ΓöéChain on No Error                                 Γöé
  16415. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16416. Γöé      Γöé      Γöé                                                  Γöé
  16417. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  16418.  
  16419.  Bit 15 (RD)    When this bit is set to 1, the adapter transfers data from the 
  16420.                 SCSI device or adapter into system memory (read).  When this 
  16421.                 bit is set to 0, the adapter transfers data from system memory 
  16422.                 to the SCSI device or adapter (write). 
  16423.  
  16424.  Bit 14 (ES)    When this bit is set to 1, the TSB is transferred to memory 
  16425.                 only if an error (Interrupt ID = C) is detected. When this bit 
  16426.                 is set to 0, the TSB is always transferred. 
  16427.  
  16428.                 Note:  This bit should always be set to 1, unless the command 
  16429.                        requires the TSB when no error occurs; command 
  16430.                        performance is degraded by unnecessarily writing to 
  16431.                        memory. 
  16432.  
  16433.  Bit 13 (RE)    When this bit is set to 1, the adapter automatically retries 
  16434.                 certain operations that fail.  This bit may be set to 0 by 
  16435.                 diagnostic programs to enhance fault isolation.  Normally, this 
  16436.                 bit should be set to 1. See Word 1 - Retry Counts for more 
  16437.                 information. 
  16438.  
  16439.  Bit 12 (PT)    When this bit is set to 1, it allows a single command to write 
  16440.                 data to or read data from several different areas in memory 
  16441.                 (buffers) as specified in a list. This list contains up to 16 
  16442.                 pairs of values, each pair being a 32-bit address and its 
  16443.                 related 32-bit count. In the SCB, the system buffer address 
  16444.                 field contains the address of the list, and the system buffer 
  16445.                 byte count field contains the length of the list in bytes. 
  16446.  
  16447.  Bit 10 (SS)    When this bit is set to 1, it allows the amount of data 
  16448.                 transferred on a read operation to be shorter than the system 
  16449.                 buffer byte count, specified in the SCB, without generating an 
  16450.                 error. 
  16451.  
  16452.  Bit 9 (BB)     When set to 1, this bit forces the adapter to transfer data 
  16453.                 directly from the SCSI device and not from a copy in the cache. 
  16454.                 Some buffer maintenance may still be performed by the adapter. 
  16455.  
  16456.  Bits 8 - 1     These bits are reserved. 
  16457.  
  16458.  Bit 0 (CH)     This bit selects the type of chaining condition used in command 
  16459.                 block transfers.  When it is set to 0, chaining is disabled. 
  16460.                 When command blocks are chained, the SCB must contain the 
  16461.                 32-bit address of the next SCB. When this bit is set to 1, 
  16462.                 chaining will occur if the SCB ends with no error. 
  16463.  
  16464.  
  16465. ΓòÉΓòÉΓòÉ 22.7.1. System Interface ΓòÉΓòÉΓòÉ
  16466.  
  16467. The following is a list of supported SCBS commands. 
  16468.  
  16469. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  16470. ΓöéCommand    ΓöéCommand                                   ΓöéHex    Γöé
  16471. ΓöéType       Γöé                                          ΓöéCode   Γöé
  16472. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16473. ΓöéSCB        ΓöéDevice Inquiry                            Γöé0B     Γöé
  16474. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16475. ΓöéSCB        ΓöéFormat Unit                               Γöé16     Γöé
  16476. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16477. ΓöéSCB        ΓöéGet Command Complete Status               Γöé07     Γöé
  16478. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16479. ΓöéSCB        ΓöéRead Data                                 Γöé01     Γöé
  16480. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16481. ΓöéSCB        ΓöéRead Device Capacity                      Γöé09     Γöé
  16482. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16483. ΓöéSCB        ΓöéRead Prefetch                             Γöé31     Γöé
  16484. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16485. ΓöéSCB        ΓöéRead Verify                               Γöé03     Γöé
  16486. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16487. ΓöéSCB        ΓöéReassign Block                            Γöé18     Γöé
  16488. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16489. ΓöéSCB        ΓöéRequest Sense                             Γöé08     Γöé
  16490. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16491. ΓöéSCB        ΓöéSend Other SCSI Command (SCSI CDB)        Γöé1F     Γöé
  16492. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16493. ΓöéSCB        ΓöéWrite Data                                Γöé02     Γöé
  16494. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16495. ΓöéSCB        ΓöéWrite with Verify                         Γöé04     Γöé
  16496. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  16497.  
  16498. Note:  The hex code represents bits 5 - 0 of the first command word. 
  16499.  
  16500. The adapter maintains a Command Complete status block for each of the command 
  16501. blocks.  The command blocks are updated at the completion of each command. 
  16502. This command status block can be obtained by using the Get Command Complete 
  16503. Status Block command. See Command Complete Status Block. 
  16504.  
  16505. The format for each command is given following the associated command. 
  16506.  
  16507.  
  16508. ΓòÉΓòÉΓòÉ 22.7.1.1. Device Inquiry ΓòÉΓòÉΓòÉ
  16509.  
  16510. Through the SCB Device Inquiry command, the system determines which SCSI 
  16511. devices are attached to the adapter, and specific information about those 
  16512. devices. When the Device Inquiry data block has been transferred, the adapter 
  16513. interrupts the system. Because the length of the returned data block is 
  16514. device-dependent, the system should specify the amount of data to be returned. 
  16515. If this is not known, then the system should specify the maximum value (255) 
  16516. and set the suppress short exception (SS) bit to 1. After the Device Inquiry 
  16517. data block is transferred to the specific address, the adapter interrupts the 
  16518. system to indicate that the command is complete. 
  16519.  
  16520. If a SCSI device is not attached at the assigned physical SCSI address, the 
  16521. command-completed-with-failure interrupt will be returned in the Interrupt 
  16522. Status register.  The Command Complete status will indicate selection time-out. 
  16523. If the SCSI logical unit number is not supported by an attached SCSI physical 
  16524. unit, the device type in the Device Inquiry data block is set to hex 7F by the 
  16525. SCSI physical device. 
  16526.  
  16527. ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  16528.  
  16529. 15 14 13 12 11 10  9  8  7  6  5  4  3  2  1  0    Remarks
  16530.  
  16531.  0  0  0  1  1  1  0  0 ND NS  0  0  1  0  1  1    Device Inquiry
  16532.  1 ES RE  0  0 SS  1  0  0  0  0  0  0  0  0 CH    Enable Word
  16533.  <---------- Reserved ------------------------>
  16534.  <---------- Reserved ------------------------>
  16535.  <---------- Least Significant Word ---------->    System Buffer
  16536.  <---------- Most Significant Word ----------->     Address
  16537.  <---------- Least Significant Word ---------->    System Buffer
  16538.  <---------- Most Significant Word ----------->     Byte Count
  16539.  <---------- Least Significant Word ---------->    Termination Status Block
  16540.  <---------- Most Significant Word ----------->     Address
  16541.  <---------- Least Significant Word ---------->    Optional SCB Chain
  16542.  <---------- Most Significant Word ----------->     Address
  16543.  <---------- Reserved ------------------------>
  16544.  <---------- Reserved ------------------------>
  16545.  
  16546. ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  16547.  
  16548.  
  16549. ΓòÉΓòÉΓòÉ 22.7.1.2. Device Inquiry Data Block ΓòÉΓòÉΓòÉ
  16550.  
  16551. ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  16552.  
  16553. Byte    7  6  5  4  3  2  1  0    Remarks
  16554.  
  16555.  0     <Peripheral Device Type>   Major Type
  16556.  1     RMB <- Type Qualifier ->   Removable Media Bit
  16557.  2     <ISO>  <-ECMA-> <-ANSI->   Standards Compliance
  16558.  3     <------ Reserved ------>
  16559.  4     <- Additional Length -->   # Of Bytes (N-4)
  16560.   - - - - - - - - - - - - - - - - - - - - - - - - - -
  16561.  5     <-- Additional Data --->   Additional
  16562.  
  16563.                  .                Inquiry
  16564.  
  16565.  N     <-- Additional Data --->   Data
  16566.  
  16567.  
  16568.  ECMA - European Computer Manufacturer's Association
  16569.  ISO  - International Standards Organization
  16570.  
  16571. ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  16572.  
  16573. For more information about the Device Inquiry data block, refer to the American 
  16574. National Standards Institute SCSI Standard X3.131-1986. 
  16575.  
  16576.  
  16577. ΓòÉΓòÉΓòÉ 22.7.1.3. Format Unit ΓòÉΓòÉΓòÉ
  16578.  
  16579. This SCB command is used to format a storage device. Formatting the storage 
  16580. device destroys all data. The device performs defect management as specified in 
  16581. the command. Bits within the command specify the source of the defect list and 
  16582. the use and disposition of any defect list on the device.  Because all device 
  16583. data is considered erased, any cache data for the device is cleared. 
  16584.  
  16585. ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  16586.  
  16587. 15 14 13 12 11 10  9  8  7  6  5  4  3  2  1  0    Remarks
  16588.  
  16589.  0  0  0  1  1  1  0  0 ND NS  0  1  0  1  1  0    Format Unit
  16590.  0 ES RE  0  0  0  1  0  0  0  0  0  0  0  0 CH    Enable Word
  16591.  <------ Reserved ---->  0  0  0 FD CL  0  0  0    Modifier Bits
  16592.  <---------- Interleave Factor ---------------->   Interleave
  16593.  <---------- Least Significant Word ----------->   System Buffer
  16594.  <---------- Most Significant Word ------------>    Address
  16595.  <---------- Least Significant Word ----------->   Defect List
  16596.  <---------- Most Significant Word ------------>    Byte Count
  16597.  <---------- Least Significant Word ----------->   Termination Status
  16598.  <---------- Most Significant Word ------------>    Block Address
  16599.  <---------- Least Significant Word ----------->   Optional SCB Chain
  16600.  <---------- Most Significant Word ------------>    Address
  16601.  <---------- Number of Blocks ----------------->   Block Count
  16602.  <---------- Block Size ----------------------->   Block Length
  16603.  
  16604. ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  16605.  
  16606. The interleave factor used during the format operation is specified in the 
  16607. control block.  An interleave factor of 0 selects the device default. A factor 
  16608. of 1 selects sequential numbering of logical blocks. All other factor values 
  16609. are device dependent. 
  16610.  
  16611. Modifier bits select options to be used during formatting and are defined as 
  16612. follows: 
  16613.  
  16614.  FD        Format Data:  When this modifier bit is set to 1, the system 
  16615.            supplies a defect list for the format operation.  The structure of 
  16616.            the list depends on the device being formatted.  The system buffer 
  16617.            address points to the defect list; the length is specified in the 
  16618.            byte count. If this bit is set to 0, no defect list is transferred 
  16619.            to the device. 
  16620.  
  16621.            Note:  Not all SCSI devices support the transfer of a defect list. 
  16622.  
  16623.  CL        Complete List:  If the defect list is supplied, this bit determines 
  16624.            whether the supplied defect list is in addition to, or replaces, the 
  16625.            defect list already in the device.  If the bit is set to 1, any 
  16626.            previous defect list is replaced. 
  16627.  
  16628.  Note:  Only a defect list in the following block format is supported by the 
  16629.         adapter.  See the ANSI SCSI Standard or specific device specification 
  16630.         for more information. 
  16631.  
  16632.   ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  16633.  
  16634.                 Defect List Header
  16635.   Byte        7  6  5  4  3  2  1  0    Remarks
  16636.  
  16637.  
  16638.    0          <----- Reserved ----->
  16639.    1          <----- Reserved -BF-->
  16640.    2          <----- High Byte ---->
  16641.    3          <----- Low Byte ----->
  16642.                 Defect Descriptors
  16643.    4          <----- High Byte ---->    First
  16644.    5          <-------------------->    Defective Block
  16645.    6          <-------------------->    Address
  16646.    7          <----- Low Byte ----->
  16647.                       .
  16648.                       .
  16649.                       .
  16650.               <----- High Byte ---->    Last
  16651.               <-------------------->    Defective Block
  16652.               <-------------------->    Address
  16653.    N          <----- Low Byte ----->
  16654.  
  16655.   ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  16656.  
  16657.  BF        Background Format:  When this bit is set to 1, the device performs a 
  16658.            background format.  If the device supports this option, it checks 
  16659.            the format of the command, then returns a command status indicating 
  16660.            good status, and starts the format operation.  If the device does 
  16661.            not support the option, it may return a command status block 
  16662.            indicating a check condition. 
  16663.  
  16664.            Commands received before completing the background format are 
  16665.            returned with a command status block indicating a check condition. 
  16666.            The Request Sense command returns a sense key indicating that the 
  16667.            device is not ready and returns an additional sense code indicating 
  16668.            that a Format operation is in progress.  The Request Sense data 
  16669.            block also shows the percentage of the format completed. 
  16670.  
  16671.  
  16672. ΓòÉΓòÉΓòÉ 22.7.1.4. Get Command Complete Status ΓòÉΓòÉΓòÉ
  16673.  
  16674. This SCB command requests the Command Complete status block for the last 
  16675. command executed on a specified device.  When the status block is transferred 
  16676. to the system, the adapter generates an interrupt and updates the Interrupt 
  16677. Status register. 
  16678.  
  16679. ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  16680.  
  16681. 15 14 13 12 11 10  9  8  7  6  5  4  3  2  1  0    Remarks
  16682.  
  16683.  0  0  0  1  1  1  0  0  0  0  0  0  0  1  1  1    Get Command Status
  16684.  1 ES RE  0  0  0  1  0  0  0  0  0  0  0  0 CH    Enable Word
  16685.  <---------- Reserved ------------------------>
  16686.  <---------- Reserved ------------------------>
  16687.  <---------- Least Significant Word ---------->    System Buffer
  16688.  <---------- Most Significant Word ----------->     Address
  16689.  0  0  0  0  0  0  0  0  0  0  0  1  1  0  1  0    System Buffer
  16690.  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0    Byte Count
  16691.  <---------- Least Significant Word ---------->    Termination Status Block
  16692.  <---------- Most Significant Word ----------->     Address
  16693.  <---------- Least Significant Word ---------->    Optional SCB Chain
  16694.  <---------- Most Significant Word ----------->     Address
  16695.  <---------- Reserved ------------------------>
  16696.  <---------- Reserved ------------------------>
  16697.  
  16698. ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  16699.  
  16700.  
  16701. ΓòÉΓòÉΓòÉ 22.7.1.5. Command Complete Status Block ΓòÉΓòÉΓòÉ
  16702.  
  16703. The command complete status block is returned to the location specified in the 
  16704. system buffer address field of the Get Command Complete Status command. It 
  16705. contains the status of the last command to a device.  It is unchanged until 
  16706. another command is issued to that device or until a reset occurs. 
  16707.  
  16708. An optional termination status block is returned automatically whenever an 
  16709. error occurs.  This allows command complete status to be returned for error 
  16710. recovery. 
  16711.  
  16712. The command complete status block and termination status block contain the same 
  16713. information. 
  16714.  
  16715. ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  16716.  
  16717. Word     15 14 13 12 11 10  9  8  7  6  5  4  3  2  1  0    Remarks
  16718.  
  16719.  0      <---------- SCB End Status Word -------------->    SCB Status
  16720.  1      <---------- Retry Counts --------------------->    Retry Counts
  16721.  2      <---------- Least Significant Word ----------->    Residual Byte
  16722.  3      <---------- Most Significant Word ------------>    Count
  16723.  4      <---------- Least Significant Word------------>    Scatter/Gather
  16724.                                                             List
  16725.  5      <---------- Most Significant Word ------------>    Element Address
  16726.  6      0  0  0  0  0  0  0  0  0  0  0  0  1  1  0  0     Device Dependent
  16727.                                                             Status Length
  16728.  7      <-- Command Status --><---- Device Status ---->    Command Device
  16729.                                                             Status
  16730.  8      <-- Command Error ---><---- Device Error ----->    Error Codes
  16731.  9      <---------- Reserved ------------------------->
  16732.  A      <---------- Cache Information Word ----------->
  16733.  B      <---------- Least Significant Word ----------->    Last SCB Address
  16734.  C      <---------- Most Significant Word ------------>     Processed
  16735.  
  16736. ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  16737.  
  16738.  
  16739. ΓòÉΓòÉΓòÉ 22.7.1.5.1. Word 0 - Subsystem Control Block End Status ΓòÉΓòÉΓòÉ
  16740.  
  16741. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  16742. ΓöéBit       ΓöéFunction                                          Γöé
  16743. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16744. Γöé15 - 13   ΓöéReserved                                          Γöé
  16745. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16746. Γöé12        ΓöéMajor Exception Occurred                          Γöé
  16747. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16748. Γöé11        ΓöéDevice Not Initialized                            Γöé
  16749. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16750. Γöé10        ΓöéReserved                                          Γöé
  16751. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16752. Γöé 9        ΓöéDevice Dependent Status Available                 Γöé
  16753. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16754. Γöé 8        ΓöéAdditional Status Available                       Γöé
  16755. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16756. Γöé 7        ΓöéSCB Interrupt Queued                              Γöé
  16757. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16758. Γöé 6        ΓöéSCB Halted (Error/End Chain)                      Γöé
  16759. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16760. Γöé 5        ΓöéLong Record Exception                             Γöé
  16761. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16762. Γöé 4        ΓöéSCB Specification Check                           Γöé
  16763. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16764. Γöé 3        ΓöéSCB Rejected                                      Γöé
  16765. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16766. Γöé 2        ΓöéInvalid Command Rejected                          Γöé
  16767. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16768. Γöé 1        ΓöéShort Record Exception                            Γöé
  16769. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16770. Γöé 0        ΓöéSCB Ended (No Error)                              Γöé
  16771. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  16772.  
  16773. Note:  The function indicated is true when the value of the bit is one. 
  16774.        Reserved bits are undefined. 
  16775.  
  16776.  
  16777. ΓòÉΓòÉΓòÉ 22.7.1.5.2. Word 1 - Retry Counts ΓòÉΓòÉΓòÉ
  16778.  
  16779. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  16780. ΓöéBit       ΓöéFunction                                          Γöé
  16781. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16782. Γöé15        ΓöéAdapter Retry Invoked                             Γöé
  16783. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16784. Γöé14 - 6    ΓöéReserved                                          Γöé
  16785. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16786. Γöé5         ΓöéSystem Interface Check Retry                      Γöé
  16787. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16788. Γöé4 - 0     ΓöéReserved                                          Γöé
  16789. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  16790.  
  16791.  
  16792. ΓòÉΓòÉΓòÉ 22.7.1.5.3. Words 2 and 3 - Residual Byte Count ΓòÉΓòÉΓòÉ
  16793.  
  16794. These words contain the number of bytes that were not transferred. 
  16795.  
  16796.  
  16797. ΓòÉΓòÉΓòÉ 22.7.1.5.4. Words 4 and 5 - Scatter/Gather List Element Address ΓòÉΓòÉΓòÉ
  16798.  
  16799. These words contain the address of the scatter/gather list element being used 
  16800. when the command was ended. 
  16801.  
  16802.  
  16803. ΓòÉΓòÉΓòÉ 22.7.1.5.5. Word 6 - Device Dependent Status Length ΓòÉΓòÉΓòÉ
  16804.  
  16805. This word contains the number of bytes of device status information that 
  16806. follow.  This word is set to hex 0C to indicate 12 bytes. 
  16807.  
  16808.  
  16809. ΓòÉΓòÉΓòÉ 22.7.1.5.6. Word 7 - Command and Device Status ΓòÉΓòÉΓòÉ
  16810.  
  16811. The following table describes command status codes. 
  16812.  
  16813. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  16814. ΓöéHex       ΓöéCommand Status                                    Γöé
  16815. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16816. Γöé1         ΓöéSCB Command Completed with Success                Γöé
  16817. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16818. Γöé5         ΓöéSCB Command Completed with Success after Retries  Γöé
  16819. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16820. Γöé7         ΓöéAdapter Hardware Failure                          Γöé
  16821. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16822. ΓöéA         ΓöéImmediate Command Completed                       Γöé
  16823. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16824. ΓöéC         ΓöéCommand Completed with Failure                    Γöé
  16825. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16826. ΓöéE         ΓöéCommand Error (Invalid Command or Parameter)      Γöé
  16827. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16828. ΓöéF         ΓöéSoftware Sequencing Error                         Γöé
  16829. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  16830.  
  16831. Note:  All values not shown are reserved. 
  16832.  
  16833. The following table describes device status bytes. 
  16834.  
  16835. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  16836. ΓöéBit       ΓöéFunction                                          Γöé
  16837. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16838. Γöé7         ΓöéReserved                                          Γöé
  16839. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16840. Γöé6         ΓöéVendor Unique Bit                                 Γöé
  16841. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16842. Γöé5         ΓöéVendor Unique Bit                                 Γöé
  16843. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16844. Γöé4 - 1     ΓöéDevice Status Code                                Γöé
  16845. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16846. Γöé0         ΓöéVendor Unique Bit                                 Γöé
  16847. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  16848.  
  16849. The following table describes bytes 4-1 device status code. 
  16850.  
  16851. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  16852. ΓöéHex       ΓöéDevice Status                                     Γöé
  16853. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16854. Γöé0         ΓöéGood Status (No Error)                            Γöé
  16855. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16856. Γöé1         ΓöéCheck Condition (Error)                           Γöé
  16857. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16858. Γöé2         ΓöéCondition Met/Good (No Error)                     Γöé
  16859. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16860. Γöé4         ΓöéBusy (Error)                                      Γöé
  16861. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16862. Γöé8         ΓöéIntermediate/Good (No Error)                      Γöé
  16863. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16864. ΓöéA         ΓöéIntermediate/Condition Met/Good (No Error)        Γöé
  16865. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16866. ΓöéC         ΓöéReservation Conflict (Error)                      Γöé
  16867. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  16868.  
  16869. Note:  All values not shown are reserved. 
  16870.  
  16871.  
  16872. ΓòÉΓòÉΓòÉ 22.7.1.5.7. Word 8 - Command Error Code/Device Error Code ΓòÉΓòÉΓòÉ
  16873.  
  16874. The following table describes bits 15-8 command error codes. 
  16875.  
  16876. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  16877. ΓöéHex       ΓöéError                                             Γöé
  16878. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16879. Γöé00        ΓöéNo Error                                          Γöé
  16880. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16881. Γöé01        ΓöéInvalid Parameter in SCB                          Γöé
  16882. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16883. Γöé02        ΓöéReserved                                          Γöé
  16884. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16885. Γöé03        ΓöéCommand Not Supported                             Γöé
  16886. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16887. Γöé04        ΓöéCommand Aborted (By System)                       Γöé
  16888. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16889. Γöé05        ΓöéReserved                                          Γöé
  16890. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16891. Γöé06        ΓöéReserved                                          Γöé
  16892. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16893. Γöé07        ΓöéFormat Rejected - Sequence Error                  Γöé
  16894. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16895. Γöé08        ΓöéAssign Rejected - Command in Progress on Device   Γöé
  16896. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16897. Γöé09        ΓöéAssign Rejected - SCSI Device Already Assigned    Γöé
  16898. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16899. Γöé0A        ΓöéCommand Rejected - SCSI Device Not Assigned       Γöé
  16900. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16901. ΓöéOB        ΓöéMaximum Logical Block Address Exceeded            Γöé
  16902. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16903. ΓöéOC        Γöé16-Bit Card Slot Address Range Exceeded.          Γöé
  16904. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16905. Γöé0D - 12   ΓöéReserved                                          Γöé
  16906. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16907. Γöé13        ΓöéInvalid Device for Command                        Γöé
  16908. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16909. Γöé14 - 1F   ΓöéReserved                                          Γöé
  16910. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16911. Γöé20        ΓöéAdapter Hardware Error                            Γöé
  16912. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16913. Γöé21        ΓöéGlobal Command Time-out                           Γöé
  16914. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16915. Γöé22        ΓöéDMA Error                                         Γöé
  16916. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16917. Γöé23        ΓöéAdapter Buffer Defective                          Γöé
  16918. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16919. Γöé24        ΓöéCommand Aborted by Adapter                        Γöé
  16920. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16921. Γöé25 - 7F   ΓöéReserved                                          Γöé
  16922. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16923. Γöé80        ΓöéAdapter Microprocessor Detected Error             Γöé
  16924. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16925. Γöé81 - FF   ΓöéReserved                                          Γöé
  16926. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  16927.  
  16928. The following table describes bits 7-0 device error codes. 
  16929.  
  16930. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  16931. ΓöéHex       ΓöéError                                             Γöé
  16932. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16933. Γöé00        ΓöéNo Error                                          Γöé
  16934. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16935. Γöé01        ΓöéSCSI Bus Reset Occurred                           Γöé
  16936. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16937. Γöé02        ΓöéSCSI Interface Fault                              Γöé
  16938. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16939. Γöé03 - 0F   ΓöéReserved                                          Γöé
  16940. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16941. Γöé10        ΓöéSCSI Selection Time-out (device not available)    Γöé
  16942. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16943. Γöé11        ΓöéUnexpected SCSI Bus Free                          Γöé
  16944. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16945. Γöé12        ΓöéReserved                                          Γöé
  16946. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16947. Γöé13        ΓöéInvalid SCSI Phase Sequence                       Γöé
  16948. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16949. Γöé14 - 1F   ΓöéReserved                                          Γöé
  16950. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16951. Γöé20        ΓöéShort Length Record                               Γöé
  16952. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16953. Γöé21 - FF   ΓöéReserved                                          Γöé
  16954. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  16955.  
  16956.  
  16957. ΓòÉΓòÉΓòÉ 22.7.1.5.8. Word 9 - Reserved ΓòÉΓòÉΓòÉ
  16958.  
  16959.  
  16960. ΓòÉΓòÉΓòÉ 22.7.1.5.9. Word A - Cache Information Word ΓòÉΓòÉΓòÉ
  16961.  
  16962. Bits 7 - 0 are the cache-read hit ratio (expressed as a percentage in a binary 
  16963. coded decimal format). 
  16964.  
  16965. The following table describes cache-read hit rations. 
  16966.  
  16967. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  16968. ΓöéHex       ΓöéPercent                                           Γöé
  16969. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16970. Γöé00 - 99   Γöé00% - 99%                                         Γöé
  16971. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16972. ΓöéA0        Γöé100%                                              Γöé
  16973. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  16974.  
  16975. The following table describes bits 15-8 cache statuses. 
  16976.  
  16977. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  16978. ΓöéBit       ΓöéFunction                                          Γöé
  16979. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16980. Γöé15 - 12   ΓöéReserved                                          Γöé
  16981. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16982. Γöé11        ΓöéCache Enabled                                     Γöé
  16983. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16984. Γöé10        ΓöéCache Retry Occurred                              Γöé
  16985. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16986. Γöé9         ΓöéTotal Write Hit                                   Γöé
  16987. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  16988. Γöé8         ΓöéTotal Read Hit                                    Γöé
  16989. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  16990.  
  16991.  
  16992. ΓòÉΓòÉΓòÉ 22.7.1.5.10. Word B - Last SCB Address Processed - Low Word ΓòÉΓòÉΓòÉ
  16993.  
  16994.  
  16995. ΓòÉΓòÉΓòÉ 22.7.1.5.11. Word C - Last SCB Address Processed - High Word ΓòÉΓòÉΓòÉ
  16996.  
  16997.  
  16998. ΓòÉΓòÉΓòÉ 22.7.1.6. Read Data ΓòÉΓòÉΓòÉ
  16999.  
  17000. This SCB command is used for devices with fixed length blocks, such as fixed 
  17001. disk drives.  This command causes the adapter to send the SCSI Read command to 
  17002. the device.  The blocks specified are read and the data is transferred to the 
  17003. system. 
  17004.  
  17005. The Read Data command supports multiple block operations up to 65,535 blocks or 
  17006. 16MB minus 1 byte (MB = 1,048,576 bytes), whichever is less, of total data 
  17007. transferred. 
  17008.  
  17009. For devices with variable length blocks, such as tape drives, the Send Other 
  17010. SCSI SCB command should be used to generate the SCSI Read command. 
  17011.  
  17012. ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  17013.  
  17014. 15 14 13 12 11 10  9  8  7  6  5  4  3  2  1  0    Remarks
  17015.  
  17016.  0  0  0  1  1  1  0  0 ND NS  0  0  0  0  0  1    Read Data
  17017.  1 ES RE PT  0  0 BB  0  0  0  0  0  0  0  0 CH    Enable Word
  17018.  <---------- Least Significant Word ---------->    Logical
  17019.  <---------- Most Significant Word ----------->     Address
  17020.  <---------- Least Significant Word ---------->    System Buffer
  17021.  <---------- Most Significant Word ----------->     Address
  17022.  <---------- Least Significant Word ---------->    System Buffer
  17023.  <---------- Most Significant Word ----------->     Byte Count
  17024.  <---------- Least Significant Word ---------->    Termination Status Block
  17025.  <---------- Most Significant Word ----------->     Address
  17026.  <---------- Least Significant Word ---------->    Optional SCB Chain
  17027.  <---------- Most Significant Word ----------->     Address
  17028.  <---------- Number of Blocks ---------------->    Block Count
  17029.  <---------- Block Size ---------------------->    Block Length
  17030.  
  17031. ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  17032.  
  17033.  
  17034. ΓòÉΓòÉΓòÉ 22.7.1.7. Read Device Capacity ΓòÉΓòÉΓòÉ
  17035.  
  17036. This SCB command is used to return the Device Capacity status block of the 
  17037. specific device. 
  17038.  
  17039. ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  17040.  
  17041. 15 14 13 12 11 10  9  8  7  6  5  4  3  2  1  0    Remarks
  17042.  
  17043.  0  0  0  1  1  1  0  0 ND NS  0  0  1  0  0  1    Read Device Capacity
  17044.  1 ES RE  0  0  0  1  0  0  0  0  0  0  0  0 CH    Enable Word
  17045.  <---------- Reserved ------------------------>
  17046.  <---------- Reserved ------------------------>
  17047.  <---------- Least Significant Word ---------->    System Buffer
  17048.  <---------- Most Significant Word ----------->     Address
  17049.  0  0  0  0  0  0  0  0  0  0  0  0  1  0  0  0    System Buffer
  17050.  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0    Byte Count
  17051.  <---------- Least Significant Word ---------->    Termination Status Block
  17052.  <---------- Most Significant Word ----------->     Address
  17053.  <---------- Least Significant Word ---------->    Optional SCB Chain
  17054.  <---------- Most Significant Word ----------->     Address
  17055.  <---------- Reserved ------------------------>
  17056.  <---------- Reserved ------------------------>
  17057.  
  17058. ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  17059.  
  17060.  
  17061. ΓòÉΓòÉΓòÉ 22.7.1.8. Device Capacity Data Block ΓòÉΓòÉΓòÉ
  17062.  
  17063. ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  17064.  
  17065. Byte       7  6  5  4  3  2  1  0      Remarks
  17066.  
  17067.  0         <----- High Byte ------>
  17068.  1         <---------------------->     Last Logical
  17069.  2         <---------------------->     Block Address
  17070.  3         <----- Low Byte ------->
  17071.  4         <----- High Byte ------>
  17072.  5         <---------------------->     Block
  17073.  6         <---------------------->     Length
  17074.  7         <----- Low Byte ------->
  17075.  
  17076. ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  17077.  
  17078.  
  17079. ΓòÉΓòÉΓòÉ 22.7.1.9. Read Prefetch ΓòÉΓòÉΓòÉ
  17080.  
  17081. For this SCB command, the blocks specified are read and the data is transferred 
  17082. into the on-card disk cache for later access by a Read Data command.  The block 
  17083. length specified must be 512 bytes and the block count must be less than or 
  17084. equal to 17 for the command to transfer data into the cache.  If other values 
  17085. are specified, the command is treated as a no-operation.  This command is 
  17086. supported only by the cached adapter.  The non-cached adapter will reject this 
  17087. command with a Command Error Interrupt ID.  The presence of a cached adapter 
  17088. can be determined by bit 11 of the Cache Information word in the Command 
  17089. Complete Status Block.  If this bit is set to 1, the adapter has a cache. 
  17090. Otherwise, no cache is present. 
  17091.  
  17092. ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  17093.  
  17094. 15 14 13 12 11 10  9  8  7  6  5  4  3  2  1  0    Remarks
  17095.  
  17096.  0  0  0  1  1  1  0  0 ND NS  1  1  0  0  0  1    Read Prefetch
  17097.  1 ES RE  0  0  0  1  0  0  0  0  0  0  0  0 CH    Enable Word
  17098.  <---------- Least Significant Word ---------->    Logical Block
  17099.  <---------- Most Significant Word ----------->     Address
  17100.  <---------- Reserved ------------------------>
  17101.  <---------- Reserved ------------------------>
  17102.  <---------- Reserved ------------------------>
  17103.  <---------- Reserved ------------------------>
  17104.  <---------- Least Significant Word ---------->    Termination Status Block
  17105.  <---------- Most Significant Word ----------->     Address
  17106.  <---------- Least Significant Word ---------->    Optional SCB Chain
  17107.  <---------- Most Significant Word ----------->     Address
  17108.  <---------- Number of Blocks ---------------->    Block Count
  17109.  <---------- Block Size ---------------------->    Block Length
  17110.  
  17111. ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  17112.  
  17113.  
  17114. ΓòÉΓòÉΓòÉ 22.7.1.10. Read Verify ΓòÉΓòÉΓòÉ
  17115.  
  17116. This SCB command reads the specified blocks of data and checks for errors. 
  17117. Data is not transferred by this command; it serves to verify the readability of 
  17118. the data and the correct operation of the device. This command is used for 
  17119. devices with fixed length blocks, such as fixed disk drives.  This command 
  17120. causes the adapter to send the SCSI Read and Verify commands to the device. 
  17121. The blocks specified are read and the data is transferred to the system. 
  17122.  
  17123. The Read Verify command supports multiple block operations up to 65,535 blocks 
  17124. or 16MB minus 1 byte (MB = 1,048,576 bytes), whichever is less, of total data 
  17125. transferred. 
  17126.  
  17127. For devices with variable length blocks, such as tape drives, the Send Other 
  17128. SCSI SCB command should be used to generate the SCSI Read and Verify commands. 
  17129.  
  17130. ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  17131.  
  17132. 15 14 13 12 11 10  9  8  7  6  5  4  3  2  1  0    Remarks
  17133.  
  17134.  0  0  0  1  1  1  0  0 ND NS  0  0  0  0  1  1    Read Verify
  17135.  1 ES RE  0  0  0  1  0  0  0  0  0  0  0  0 CH    Enable Word
  17136.  <---------- Least Significant Word ---------->    Logical Block
  17137.  <---------- Most Significant Word ----------->     Address
  17138.  <---------- Reserved ------------------------>
  17139.  <---------- Reserved ------------------------>
  17140.  <---------- Reserved ------------------------>
  17141.  <---------- Reserved ------------------------>
  17142.  <---------- Least Significant Word ---------->    Termination Status Block
  17143.  <---------- Most Significant Word ----------->     Address
  17144.  <---------- Least Significant Word ---------->    Optional SCB Chain
  17145.  <---------- Most Significant Word ----------->     Address
  17146.  <---------- Number of Blocks ---------------->    Block Count
  17147.  <---------- Block Size ---------------------->    Block Length
  17148.  
  17149. ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  17150.  
  17151.  
  17152. ΓòÉΓòÉΓòÉ 22.7.1.11. Reassign Block ΓòÉΓòÉΓòÉ
  17153.  
  17154. This SCB command reassigns the logical block address for a defective block to a 
  17155. spare block.  The system supplies the reassign block defect list.  The system 
  17156. buffer address in the command block serves as a pointer to the defect list. 
  17157. Because the device data is considered erased by a Reassign Block command, the 
  17158. cache automatically clears any data from the device having a block reassigned. 
  17159.  
  17160. ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  17161.  
  17162. 15 14 13 12 11 10  9  8  7  6  5  4  3  2  1  0    Remarks
  17163.  
  17164.  0  0  0  1  1  1  0  0  0  0  0  1  1  0  0  0    Reassign Block
  17165.  0 ES RE  0  0  0  1  0  0  0  0  0  0  0  0 CH    Enable Word
  17166.  <--------- Reserved ------------------------->
  17167.  <--------- Reserved ------------------------->
  17168.  <--------- Least Significant Word ----------->    System Buffer
  17169.  <--------- Most Significant Word ------------>     Address
  17170.  <--------- Least Significant Word ----------->    System Buffer
  17171.  <--------- Most Significant Word ------------>     Byte Count
  17172.  <--------- Least Significant Word ----------->    Termination Status Block
  17173.  <----------Most Significant Word ------------>     Address
  17174.  <--------- Least Significant Word ----------->    Optional SCB Chain
  17175.  <--------- Most Significant Word ------------>     Address
  17176.  <--------- Reserved ------------------------->
  17177.  <--------- Reserved ------------------------->
  17178.  
  17179. ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  17180.  
  17181.  
  17182. ΓòÉΓòÉΓòÉ 22.7.1.12. Reassign Block Defect List ΓòÉΓòÉΓòÉ
  17183.  
  17184. ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  17185.  
  17186.               Defect List Header
  17187. Byte        7  6  5  4  3  2  1  0    Remarks
  17188.  
  17189.  0          <----- Reserved ----->
  17190.  1          <----- Reserved ----->
  17191.  2          <----- High Byte ---->    Defect List
  17192.  3          <----- Low Byte ----->    Length
  17193.               Defect Descriptors
  17194.  4          <----- High Byte ---->
  17195.  5          <-------------------->    Defective Logical
  17196.  6          <-------------------->    Block
  17197.  7          <----- Low Byte ----->    Address
  17198.  
  17199. ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  17200.  
  17201.  
  17202. ΓòÉΓòÉΓòÉ 22.7.1.13. Request Sense ΓòÉΓòÉΓòÉ
  17203.  
  17204. This SCB command is used to return the sense data for the specified device. 
  17205. The adapter interrupts the system when the Sense data block is transferred. 
  17206. The length of the data block depends on the device and can be four bytes 
  17207. (non-extended) or more (extended).  The format of the data block for both cases 
  17208. is shown.  The system should specify the amount of data to be returned in the 
  17209. SCB based on the particular device attached, or specify the maximum value (255) 
  17210. and set the suppress short exception (SS) bit to 1. 
  17211.  
  17212. The sense data is valid only if a Check Condition status was returned for the 
  17213. previous command to the device.  The sense data provides additional information 
  17214. on the check condition. Refer to the ANSI SCSI publication or the particular 
  17215. SCSI device specification for detailed information about the Request Sense data 
  17216. block. 
  17217.  
  17218. ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  17219.  
  17220. 15 14 13 12 11 10  9  8  7  6  5  4  3  2  1  0    Remarks
  17221.  
  17222.  0  0  0  1  1  1  0  0 ND NS  0  0  1  0  0  0    Request Sense
  17223.  1 ES RE  0  0 SS  1  0  0  0  0  0  0  0  0 CH    Enable Word
  17224.  <---------- Reserved ------------------------>
  17225.  <---------- Reserved ------------------------>
  17226.  <---------- Least Significant Word ---------->    System Buffer
  17227.  <---------- Most Significant Word ----------->     Address
  17228.  <---------- Least Significant Word ---------->    System Buffer
  17229.  <---------- Most Significant Word ----------->     Byte Count
  17230.  <---------- Least Significant Word ---------->    Termination Status Block
  17231.  <---------- Most Significant Word ----------->     Address
  17232.  <---------- Least Significant Word ---------->    Optional SCB Chain
  17233.  <---------- Most Significant Word ----------->     Address
  17234.  <---------- Reserved ------------------------>
  17235.  <---------- Reserved ------------------------>
  17236.  
  17237. ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  17238.  
  17239.  
  17240. ΓòÉΓòÉΓòÉ 22.7.1.14. Sense Data Block ΓòÉΓòÉΓòÉ
  17241.  
  17242. ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  17243.  
  17244. Byte               Sense Bits
  17245.              7  6  5  4  3  2  1  0    Remarks
  17246.  
  17247.  0           AV <Class>  <- Code ->    Error Class/Code
  17248.  1           X  X  X  < High Byte >    Logical
  17249.  2           <-------------------->    Block
  17250.  3           <----- Low Byte ----->    Address
  17251.  
  17252. ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  17253.  
  17254.  
  17255. ΓòÉΓòÉΓòÉ 22.7.1.14.1. Byte 0  Error Class/Error Code ΓòÉΓòÉΓòÉ
  17256.  
  17257.       Bit 7          Address Valid:  When this bit is set to 1, the logical 
  17258.                      block address field is valid. 
  17259.  
  17260.       Bits 6 - 4     Error Class:  When the error class is 0, the sense data 
  17261.                      block is in the format shown above.  When the error class 
  17262.                      is 7, the sense data block is in the extended format, 
  17263.                      shown on the following page.  All other settings are 
  17264.                      device dependent. 
  17265.  
  17266.       Bits 3 - 0     Error Code:  Errors are device dependent. 
  17267.  
  17268.  
  17269. ΓòÉΓòÉΓòÉ 22.7.1.14.2. Bytes 1 - 3 Logical Block Address ΓòÉΓòÉΓòÉ
  17270.  
  17271. This address is device dependent. 
  17272.  
  17273. Note:  The adapter does not examine or use device-dependent information. 
  17274.  
  17275.  
  17276. ΓòÉΓòÉΓòÉ 22.7.1.15. Extended Sense Data Block ΓòÉΓòÉΓòÉ
  17277.  
  17278. ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  17279.  
  17280. Byte               Sense Bits
  17281.              7  6  5  4  3  2  1  0    Remarks
  17282.  
  17283.  0           V  1  1  1 <-- Code -->   Error Class/Code
  17284.  1           <----- Segment # ----->   Segment Number
  17285.  2           FM EM IL  X <-- Key -->   Sense Key
  17286.  3           <- Most Significant -->   Information Bytes
  17287.  4           <--------------------->
  17288.  5           <--------------------->
  17289.  6           <- Least Significant ->
  17290.  7           <--Additional Length-->   # of Bytes
  17291.  8           <--Additional Sense -->   Additional
  17292.                         .              Sense
  17293.                         .
  17294.  N           <--Additional Sense--->   Bytes
  17295.  
  17296. ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  17297.  
  17298.  
  17299. ΓòÉΓòÉΓòÉ 22.7.1.15.1. Byte 0  Error Class/Error Code ΓòÉΓòÉΓòÉ
  17300.  
  17301.       Bit 7          The Information bytes are valid only if this bit is a 1. 
  17302.  
  17303.       Bits 6 - 4     Error class 7 is for extended sense data. 
  17304.  
  17305.       Bits 3 - 0     Error code 0 is standard format. Error codes hex 1 - E are 
  17306.                      reserved. Error code hex F is device dependent. 
  17307.  
  17308.  
  17309. ΓòÉΓòÉΓòÉ 22.7.1.15.2. Byte 1  Segment Number ΓòÉΓòÉΓòÉ
  17310.  
  17311. This byte contains the current segment descriptor. 
  17312.  
  17313.  
  17314. ΓòÉΓòÉΓòÉ 22.7.1.15.3. Byte 2  Extended Error Bits/Sense Key ΓòÉΓòÉΓòÉ
  17315.  
  17316.       Bit 7          A filemark (FM) has been reached on a sequential access 
  17317.                      device. 
  17318.  
  17319.       Bit 6          An end of medium (EM) has been reached on a sequential 
  17320.                      access device. 
  17321.  
  17322.       Bit 5          An Invalid Length (IL) resulted when the specified logical 
  17323.                      block length did not match the device. 
  17324.  
  17325.       Bit 4          X - This bit is reserved. 
  17326.  
  17327.       Bits 3 - 0     The coding of these bits is shown in the following table. 
  17328.  
  17329.   ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  17330.   ΓöéHex Value   ΓöéFunction                                        Γöé
  17331.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  17332.   Γöé0           ΓöéNo Sense                                        Γöé
  17333.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  17334.   Γöé1           ΓöéRecovered Error                                 Γöé
  17335.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  17336.   Γöé2           ΓöéNot Ready                                       Γöé
  17337.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  17338.   Γöé3           ΓöéMedium Error                                    Γöé
  17339.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  17340.   Γöé4           ΓöéHardware Error                                  Γöé
  17341.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  17342.   Γöé5           ΓöéIllegal Request                                 Γöé
  17343.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  17344.   Γöé6           ΓöéUnit Attention                                  Γöé
  17345.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  17346.   Γöé7           ΓöéData Protect                                    Γöé
  17347.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  17348.   Γöé8           ΓöéBlank Check                                     Γöé
  17349.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  17350.   Γöé9           ΓöéDevice Dependent                                Γöé
  17351.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  17352.   ΓöéA           ΓöéCopy Aborted                                    Γöé
  17353.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  17354.   ΓöéB           ΓöéAborted Command                                 Γöé
  17355.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  17356.   ΓöéC           ΓöéEqual                                           Γöé
  17357.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  17358.   ΓöéD           ΓöéVolume Overflow                                 Γöé
  17359.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  17360.   ΓöéE           ΓöéMiscompare                                      Γöé
  17361.   Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  17362.   ΓöéF           ΓöéReserved                                        Γöé
  17363.   ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  17364.  
  17365.  Bytes 3 - N    Device-Dependent Status:  Refer to the particular device 
  17366.                 specifications for a definition of these bytes. 
  17367.  
  17368.  Note:  The adapter does not examine or use device-dependent information. 
  17369.  
  17370.  
  17371. ΓòÉΓòÉΓòÉ 22.7.1.16. Send Other SCSI Command (SCSI CDB) ΓòÉΓòÉΓòÉ
  17372.  
  17373. This SCB command is used to send any SCSI command not supported by the adapter 
  17374. directly to a SCSI device. The command to be issued is placed at the end of the 
  17375. SCB.  When commands are issued directly to a device using this command, 
  17376. messages are handled by the adapter.  Data transfer direction is controlled by 
  17377. the read-option bit (RD) in the Enable word.  When this bit is set to 1, the 
  17378. adapter transfers data to the system from the device.  When the read-option bit 
  17379. is set to 0, the adapter transfers data to the device from the system.  If the 
  17380. system-buffer byte count specified in the SCB is 0, no data is transferred. 
  17381. Because device data can be altered by this command, the cache is automatically 
  17382. cleared of any data from that device. 
  17383.  
  17384. Note: 
  17385.  
  17386. This command should be used only when other commands cannot perform the 
  17387. operation; otherwise, performance of the SCSI subsystem can be impacted. 
  17388.  
  17389. This command should be issued only to logical device numbers 0 to 14. 
  17390.  
  17391.   ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  17392.  
  17393.   15 14 13 12 11 10  9  8  7  6  5  4  3  2  1  0    Remarks
  17394.  
  17395.    0  0  1  0  0  1  0  0 ND NS  0  1  1  1  1  1    Send Other SCSI Command
  17396.   RD ES RE PT  0 SS  1  0  0  0  0  0  0  0  0 CH    Enable Word
  17397.   <------ Reserved -----><-- SCSI CMD Length --->
  17398.   <---------- Reserved ------------------------->
  17399.   <---------- Least Significant Word ----------->    System Buffer
  17400.   <---------- Most Significant Word ------------>     Address
  17401.   <---------- Least Significant Word ----------->    System Buffer
  17402.   <---------- Most Significant Word ------------>     Byte Count
  17403.   <---------- Least Significant Word ----------->    Termination Status Block
  17404.   <---------- Most Significant Word ------------>     Address
  17405.   <---------- Least Significant Word ----------->    Optional SCB Chain
  17406.   <---------- Most Significant Word ------------>     Address
  17407.   <-------1------- SCSI Command -------0-------->    SCSI Command
  17408.   <-------3------- SCSI Command -------2-------->
  17409.   <-------5------- SCSI Command -------4-------->    Six Bytes or
  17410.   <-------7------- SCSI Command -------6-------->
  17411.   <-------9------- SCSI Command -------8-------->    Ten Bytes or
  17412.   <------11------- SCSI Command ------10-------->    Twelve Bytes
  17413.  
  17414.   ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  17415.  
  17416.  
  17417. ΓòÉΓòÉΓòÉ 22.7.1.17. Write Data ΓòÉΓòÉΓòÉ
  17418.  
  17419. This SCB command writes data from the system to the device in consecutive 
  17420. blocks. This command is used for devices with fixed length blocks, such as 
  17421. fixed disk drives.  This command causes the adapter to send the SCSI Write 
  17422. command to the device.  The blocks specified are read and the data is 
  17423. transferred to the system.  No verification is performed. 
  17424.  
  17425. The Read Data command supports multiple block operations up to 65,535 blocks or 
  17426. 16MB minus 1 byte (MB = 1,048,576 bytes), whichever is less, of total data 
  17427. transferred. 
  17428.  
  17429. For devices with variable length blocks, such as tape drives, the Send Other 
  17430. SCSI SCB command should be used to generate the SCSI Write command. 
  17431.  
  17432. ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  17433.  
  17434. 15 14 13 12 11 10  9  8  7  6  5  4  3  2  1  0    Remarks
  17435.  
  17436.  0  0  0  1  1  1  0  0 ND NS  0  0  0  0  1  0    Write Data
  17437.  0 ES RE PT  0  0 BB  0  0  0  0  0  0  0  0 CH    Enable Word
  17438.  <---------- Least Significant Word ----------->   Logical Block
  17439.  <---------- Most Significant Word ------------>    Address
  17440.  <---------- Least Significant Word ----------->   System Buffer
  17441.  <---------- Most Significant Word ------------>    Address
  17442.  <---------- Least Significant Word ----------->   System Buffer
  17443.  <---------- Most Significant Word ------------>    Byte Count
  17444.  <---------- Least Significant Word ----------->   Termination Status Block
  17445.  <---------- Most Significant Word ------------>    Address
  17446.  <---------- Least Significant Word ----------->   Optional SCB Chain
  17447.  <---------- Most Significant Word ------------>    Address
  17448.  <---------- Number of Blocks ----------------->   Block Count
  17449.  <---------- Block Size ----------------------->   Block Length
  17450.  
  17451. ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  17452.  
  17453.  
  17454. ΓòÉΓòÉΓòÉ 22.7.1.18. Write with Verify ΓòÉΓòÉΓòÉ
  17455.  
  17456. This SCB command is similar to Write Data, except that a Read Verify command is 
  17457. performed after all blocks are written. This command is used for devices with 
  17458. fixed length blocks, such as fixed disk drives.  This command causes the 
  17459. adapter to send the SCSI Write and Verify commands to the device. The blocks 
  17460. specified are read and the data is transferred to the system. 
  17461.  
  17462. The Write with Verify command supports multiple block operations up to 65 535 
  17463. blocks or 16MB minus 1 byte (MB = 1,048,576 bytes), whichever is less, of total 
  17464. data transferred. 
  17465.  
  17466. If an error occurs during a Write with Verify command, the system should retry 
  17467. the command. If all retries of the command fail, the system can allocate a 
  17468. spare block to replace the failing one through the Reassign Block command, and 
  17469. then reissue the command. 
  17470.  
  17471. For devices with variable length blocks, such as tape drives, the Send Other 
  17472. SCSI SCB command should be used to generate the SCSI Write and Verify commands. 
  17473.  
  17474. ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  17475.  
  17476. 15 14 13 12 11 10  9  8  7  6  5  4  3  2  1  0    Remarks
  17477.  
  17478.  0  0  0  1  1  1  0  0 ND NS  0  0  0  1  0  0     Write Verify
  17479.  0 ES RE PT  0  0 BB  0  0  0  0  0  0  0  0 CH     Enable Word
  17480.  <---------- Least Significant Word ----------->    Logical Block
  17481.  <---------- Most Significant Word ------------>     Address
  17482.  <---------- Least Significant Word ----------->    System Buffer
  17483.  <---------- Most Significant Word ------------>     Address
  17484.  <---------- Least Significant Word ----------->    System Buffer
  17485.  <---------- Most Significant Word ------------>     Byte Count
  17486.  <---------- Least Significant Word ----------->    Termination Status Block
  17487.  <---------- Most Significant Word ------------>     Address
  17488.  <---------- Least Significant Word ----------->    Optional SCB Chain
  17489.  <---------- Most Significant Word ------------>     Address
  17490.  <---------- Number of Blocks ----------------->    Block Count
  17491.  <---------- Block Size ----------------------->    Block Length
  17492.  
  17493. ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  17494.  
  17495.  
  17496. ΓòÉΓòÉΓòÉ 23. Advanced SCSI Programming Interface (ASPI) OS/2 Specification ΓòÉΓòÉΓòÉ
  17497.  
  17498. This chapter describes the function of ASPI, gives an overview of the steps 
  17499. involved in programming ASPI for OS/2, and discusses the SCSI request block and 
  17500. ASPI command codes executed by the ASPI manager. 
  17501.  
  17502.  
  17503. ΓòÉΓòÉΓòÉ 23.1. Introduction to ASPI ΓòÉΓòÉΓòÉ
  17504.  
  17505. ASPI is an application interface that allows easier access to SCSI devices. 
  17506. When running DOS, users typically load an ASPI manager that routes all requests 
  17507. directly to the hardware. ASPI drivers (such as ASPIDISK and ASPICD) send 
  17508. requests to the ASPI manager, which then sends the command to the appropriate 
  17509. device. 
  17510.  
  17511. The device driver model used by OS/2 is layered (similar to ASPI) so that an 
  17512. adapter device driver (ADD) is responsible for knowing about the hardware 
  17513. dependencies of a particular SCSI adapter. Applications that want to send ASPI 
  17514. requests do so by routing these requests to a device manager (OS2ASPI.DMD) and 
  17515. then converts them into requests recognizable to any ADD. 
  17516.  
  17517. The ASPI support currently embedded within OS/2 2.x allows any OS/2 application 
  17518. to send commands to a SCSI device. However, there are a large number of DOS and 
  17519. Windows applications that could be supported if the commands were routed to 
  17520. OS2ASPI.DMD. 
  17521.  
  17522. VASPI.SYS is a virtual device driver that allows DOS applications to issue SCSI 
  17523. commands that will be handled by OS2ASPI.DMD. If you have an existing DOS or 
  17524. Windows ASPI application, it should now be able to run in a virtual DOS session 
  17525. under OS/2 2.x. 
  17526.  
  17527.  
  17528. ΓòÉΓòÉΓòÉ 23.2. Accessing ASPI ΓòÉΓòÉΓòÉ
  17529.  
  17530. Device drivers that need to access ASPIN, must determine the address of the 
  17531. ASPI entry point through an OS/2 Attach DevHelp call as follows: 
  17532.  
  17533.  
  17534.    SCSIMGR$                                DB              'SCSIMGR$',0
  17535.    Return_Data_Buffer                      DB              12      DUP     (?)
  17536.  
  17537.                                            MOV             BX,OFFSET SCSIMGR
  17538.                                            MOV             DI,OFFSET Return_Data_Buffer
  17539.                                            MOV             DL,DevHlp_AttachDD
  17540.  
  17541.                                            CALL            [DevHlp]
  17542.  
  17543. On return from the Attach DevHelp call, a clear-carry flag indicates that the 
  17544. SCSI manager SCSIMGR$ was found and the return data is valid.  A set-carry flag 
  17545. indicates that the SCSI manager was not found.  The return data buffer has the 
  17546. following format: 
  17547.  
  17548.         ASPI_Real       DW              Real Mode offset of ASPI entry point
  17549.                         DW              Real Mode CS segment of ASPI entry point
  17550.         Real_DS         DW              Real Mode DS of ASPI entry point
  17551.         ASPI_Prot       DW              Protected Mode offset of ASPI entry point
  17552.                         DW              Protected Mode CS selector of ASPI entry point
  17553.         Prot_DS         DW              Protected Mode DS of ASPI entry point
  17554.  
  17555. Note:  ASPI_Real and Real_DS are used by OS/2 1.x only. Information returned 
  17556.        under OS/2 2.x is irrelevant. 
  17557.  
  17558.  
  17559. ΓòÉΓòÉΓòÉ 23.2.1. Calling ASPI ΓòÉΓòÉΓòÉ
  17560.  
  17561. When the ASPI entry-point parameters have been successfully determined, calling 
  17562. ASPI uses the values appropriate to the mode of the processor. The address of 
  17563. the ASPI request block and the DS of the ASPI entry point must be pushed onto 
  17564. the stack before making a FAR call. The following is an example of how to call 
  17565. ASPI: 
  17566.  
  17567.                           PUSH            AX                      ;Save AX
  17568.                           PUSH            @ASPI_SRB               ;Push pointer to ASPI SRB
  17569.                           SMSW            AX                      ;Check mode of processor
  17570.                           TEST            AX,PROTECT_MODE
  17571.                           JNZ             PROT_CALL
  17572.  
  17573.                           PUSH            Real_DS
  17574.                           CALL            [ASPI_REAL]
  17575.                           JMP             CALL_DONE
  17576.  
  17577.         PROT_CALL:        PUSH            Prot_DS
  17578.                           CALL            [ASPI_PROT]
  17579.  
  17580.         CALL_DONE:        ADD             SP,6                    ;Restore the stack
  17581.                           POP             AX
  17582.  
  17583.  
  17584. ΓòÉΓòÉΓòÉ 23.2.2. Accessing ASPI At Initialization Time ΓòÉΓòÉΓòÉ
  17585.  
  17586. At initialization time, an OS/2 device driver lacks the privilege level for 
  17587. making a FAR call to the ASPI interface. To circumvent this restriction, the 
  17588. SCSI manager provides a special IOCtl which can be used by a driver to pass an 
  17589. ASPI request. To use the IOCtl, the driver must first use a DosOpen call to get 
  17590. a file handle for the SCSI manager. Having completed this successfully, the 
  17591. driver can call ASPI at initialization time as follows: 
  17592.  
  17593.         PUSH            @DATA_BUFFER                   ;Not Applicable
  17594.         PUSH            @REQUEST_BLOCK                 ;Parameter List = SRB
  17595.         PUSH            40H                            ;Function Code
  17596.         PUSH            80H                            ;Function Category
  17597.         PUSH            ASPI_Handle                    ;File handle from DosOpen
  17598.         CALL            DOSDEVIOCTL
  17599.  
  17600. When the driver has returned from initialization, this access method is no 
  17601. longer valid. 
  17602.  
  17603.  
  17604. ΓòÉΓòÉΓòÉ 23.2.3. ASPI and OS/2 2.x ΓòÉΓòÉΓòÉ
  17605.  
  17606. The device driver architecture for OS/2 2.x is divided into several basic 
  17607. layers.  The Device Manager Drivers (DMD) receive requests from the file 
  17608. systems and other device drivers. These requests are passed on to an Adapter 
  17609. Device Driver (ADD), which then sends the appropriate command to the host 
  17610. adapter. 
  17611.  
  17612. ASPI for OS/2 2.x is a translation layer, and has been implemented as a device 
  17613. driver (OS2ASPI.DMD). An application can send SRBs to any SCSI adapter which 
  17614. has an ADD installed. It is no longer possible to set host adapter parameters 
  17615. because OS2ASPI has no direct control over the host adapter. 
  17616.  
  17617.  
  17618. ΓòÉΓòÉΓòÉ 23.2.4. Target Allocation With OS/2 2.x ΓòÉΓòÉΓòÉ
  17619.  
  17620. The device driver architecture for OS/2 2.x is structured so that targets 
  17621. controlled by an ADD must be allocated to an individual (DMD). For example, 
  17622. when the system boots, OS2DASD.DMD is usually the first device manager loaded, 
  17623. and it automatically searches for all available hard drives and permanently 
  17624. allocates them for use by the file systems. Other DMDs usually do something 
  17625. similar with targets that they assume should be controlled by them. 
  17626.  
  17627. The standard method for preventing a DMD from allocating a particular target is 
  17628. through the use of command line switches on the ADD that handles the device. If 
  17629. you are planning to use ASPI to control a device that may be allocated by a DMD 
  17630. that loads before OS2ASPI.DMD, be sure to specify that the device manager in 
  17631. question is not allowed access to it. 
  17632.  
  17633.    o  If you are writing an ASPI application for a magneto-optical drive 
  17634.       (target 6 on an AHA-1540) that returns device type 0 (DASD) in the 
  17635.       Inquiry data, you must be sure to prevent OS2DASD from accessing it by 
  17636.       adding the parameter /!DM6 to disable ID 6. See the following example: 
  17637.  
  17638.  
  17639.             BASEDEV=AHA154X.ADD /A:0 /!DM:6
  17640.  
  17641.    o  If you are writing an ASPI application for a device that also may be 
  17642.       controlled by a device driver through os2scsi.dmd (target 6 on an 
  17643.       AHA-1540), you can also prevent OS2SCSI from accessing it by adding the 
  17644.       parameter /!SM6 for ID 6. See the following example: 
  17645.  
  17646.  
  17647.             BASEDEV=AHA154X.ADD /A:0 /!SM:6
  17648.  
  17649.  
  17650.  Currently, only OS2DASD.DMD and OS2SCSI.DMD can be controlled in this manner 
  17651.  because they are the only DMDs to be mentioned in IBM's specification for 
  17652.  ADDs. For a complete explanation of command line switches supported by the ADD 
  17653.  that are provided with OS/2 2.1, search for SCSI in the OS/2 Command Line 
  17654.  Reference. Device managers can handle allocations in one of two ways:  wait 
  17655.  for a device driver to issue an allocation request (OS2SCSI.DMD performs this) 
  17656.  or permanently allocate the device during system boot (OS2DASD.DMD and 
  17657.  OS2CDROM.DMD perform this function). 
  17658.  
  17659.  Typically, OS2ASPI will not allocate a device until the first execute I/O 
  17660.  command is issued.  This command allows it to scan for devices and not 
  17661.  interfere with them until an application decides to issue a command. However, 
  17662.  once this allocation takes place, OS2ASPI will not release the device because 
  17663.  it can never be sure when the application is finished with it. 
  17664.  
  17665.  O2ASPI.DMD can be used without any command line switches, but there are 
  17666.  usually two situations that can arise that OS2ASPI must address: 
  17667.  
  17668.    o  A user wants to utilize two applications by way of different interfaces 
  17669.       (such as OS2ASPI and OS2SCSI) and both need to access the device.  In 
  17670.       this case, if the application using OS2SCSI is well-behaved, it will 
  17671.       release the device when it is finished and OS2ASPI will be able to 
  17672.       allocate it.  If OS2ASPI does not release the device, the OS2SCSI 
  17673.       application will not be able to access the device until the system is 
  17674.       rebooted and the device allocation information is reset. 
  17675.  
  17676.    o  A user wants to access a device that has been permanently allocated by 
  17677.       another device manager, such as a diagnostic that reports information 
  17678.       about the system configuration.  However, if the devices are allocated to 
  17679.       another manager, the application will never be able to see them. 
  17680.  
  17681.  The previous two problems can be solved by the use of optional command line 
  17682.  switches such as the following: 
  17683.  
  17684.  
  17685.      /ALL - This switch instructs OS2ASPI.DMD to allow commands to be
  17686.             issued to ANY device on the SCSI bus, even those allocated
  17687.             by other managers.
  17688.  
  17689.  Warning: Commands should be issued to devices under the control of other 
  17690.  managers with extreme caution.  If you are using the /ALL switch and plan to 
  17691.  issue commands to devices that are shared with another manager, try and limit 
  17692.  them to non-destructive commands such as Inquiry and Test Unity Ready. 
  17693.  
  17694.  
  17695.      /SHARE - This switch instructs OS2ASPI.DMD to release any target after
  17696.               each command, allowing multiple managers to access a target at
  17697.               different times.  Because this requires more commands to be
  17698.               issued to the driver, there will be a slight performance
  17699.               penalty when this switch is used.
  17700.  
  17701.  Warning: When sharing devices and sending multiple concurrent requests, it is 
  17702.  possible that allocation/deallocation of the device will cause a command to be 
  17703.  rejected.  This switch is best suited for use when you have applications that 
  17704.  require different managers, but will not be used simultaneously. 
  17705.  
  17706.  
  17707.   BASEDEV=OS2ASPI.DMD /SHARE
  17708.   BASEDEV=OS2ASPI.DMD /ALL
  17709.  
  17710.  
  17711. ΓòÉΓòÉΓòÉ 23.3. SCSI Request Block (SRB) ΓòÉΓòÉΓòÉ
  17712.  
  17713. A SCSI Request Block (SRB) contains the command to be executed by the ASPI 
  17714. manager and is used by both drivers and application programs. An SRB consists 
  17715. of an SRB header followed by additional fields dependent on the command code. 
  17716. All request blocks have an 8-byte header. 
  17717.  
  17718. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  17719. ΓöéOffset         Γöé# Bytes        ΓöéDescription    ΓöéR/W*           Γöé
  17720. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  17721. Γöé00h (00)       Γöé01h (01)       ΓöéCommand Code   ΓöéW              Γöé
  17722. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  17723. Γöé01h (01)       Γöé01h (01)       ΓöéStatus         ΓöéR              Γöé
  17724. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  17725. Γöé02h (02)       Γöé01h (01)       ΓöéHost Adapter   ΓöéW              Γöé
  17726. Γöé               Γöé               ΓöéNumber         Γöé               Γöé
  17727. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  17728. Γöé03h (03)       Γöé01h (01)       ΓöéSCSI Request   ΓöéW              Γöé
  17729. Γöé               Γöé               ΓöéFlags          Γöé               Γöé
  17730. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  17731. Γöé04h (04)       Γöé04h (04)       ΓöéReserved for   Γöé-              Γöé
  17732. Γöé               Γöé               ΓöéExpansion = 0  Γöé               Γöé
  17733. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  17734.  
  17735. *The R/W column indicates whether the field is sent to ASPI (W), returned from 
  17736. ASPI (R), or reserved (-). 
  17737.  
  17738. Command Code: The Command Code field indicates which of the ASPI services is 
  17739. being accessed. Refer to ASPI Command Codes. 
  17740.  
  17741. Status: The Status Byte field is used to post the status of the command. Refer 
  17742. to ASPI Status Bytes. 
  17743.  
  17744. Host Adapter Number: The Host Adapter Number field specifies which installed 
  17745. host adapter the request is intended for. Host adapter numbers are always 
  17746. assigned by the SCSI manager layer beginning with zero. 
  17747.  
  17748. SCSI Request Flags: The SCSI Request Flags field definition is command-code 
  17749. specific. 
  17750.  
  17751. Reserved for Expansion: The last four bytes of the header are reserved and must 
  17752. be zero. 
  17753.  
  17754.  
  17755. ΓòÉΓòÉΓòÉ 23.3.1. ASPI Command Codes ΓòÉΓòÉΓòÉ
  17756.  
  17757. The ASPI Command Codes, including valid ASPI command codes and ASPI status 
  17758. bytes and their descriptions are given as follows. 
  17759.  
  17760.  
  17761. ΓòÉΓòÉΓòÉ 23.3.1.1. Valid ASPI Command Codes ΓòÉΓòÉΓòÉ
  17762.  
  17763. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  17764. ΓöéCommand Code                  ΓöéDescription                   Γöé
  17765. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  17766. Γöé00h                           ΓöéHost Adapter Inquiry          Γöé
  17767. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  17768. Γöé01h                           ΓöéGet Device Type               Γöé
  17769. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  17770. Γöé02h                           ΓöéExecute SCSI I/O Command      Γöé
  17771. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  17772. Γöé03h                           ΓöéAbort SCSI I/O Command        Γöé
  17773. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  17774. Γöé04h                           ΓöéReset SCSI Device             Γöé
  17775. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  17776. Γöé05h                           ΓöéSet Host Adapter Parameters   Γöé
  17777. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  17778. Γöé06h-7Fh                       ΓöéReserved for Future Expansion Γöé
  17779. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  17780. Γöé80h-FFh                       ΓöéReserved for Vendor Unique    Γöé
  17781. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  17782.  
  17783.  
  17784. ΓòÉΓòÉΓòÉ 23.3.2. ASPI Status Bytes ΓòÉΓòÉΓòÉ
  17785.  
  17786. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  17787. ΓöéStatus Byte                   ΓöéDescription                   Γöé
  17788. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  17789. Γöé00h                           ΓöéSCSI Request In Progress      Γöé
  17790. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  17791. Γöé01h                           ΓöéSCSI Request Completed WithoutΓöé
  17792. Γöé                              ΓöéError                         Γöé
  17793. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  17794. Γöé02h                           ΓöéSCSI Request Aborted By Host  Γöé
  17795. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  17796. Γöé04h                           ΓöéSCSI Request Completed With   Γöé
  17797. Γöé                              ΓöéError                         Γöé
  17798. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  17799. Γöé80h                           ΓöéInvalid SCSI Request          Γöé
  17800. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  17801. Γöé81h                           ΓöéInvalid Host Adapter Number   Γöé
  17802. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  17803. Γöé82h                           ΓöéSCSI Device Not Installed     Γöé
  17804. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  17805.  
  17806.  
  17807. ΓòÉΓòÉΓòÉ 23.3.2.1. ASPI Command Code = 0: Host Adapter Inquiry ΓòÉΓòÉΓòÉ
  17808.  
  17809. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  17810. ΓöéOffset         Γöé# Bytes        ΓöéDescription    ΓöéR/W*           Γöé
  17811. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  17812. Γöé00h (00)       Γöé01h (01)       ΓöéCommand Code = ΓöéW              Γöé
  17813. Γöé               Γöé               Γöé0              Γöé               Γöé
  17814. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  17815. Γöé01h (01)       Γöé01h (01)       ΓöéStatus         ΓöéR              Γöé
  17816. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  17817. Γöé02h (02)       Γöé01h (01)       ΓöéHost Adapter   ΓöéW              Γöé
  17818. Γöé               Γöé               ΓöéNumber         Γöé               Γöé
  17819. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  17820. Γöé03h (03)       Γöé01h (01)       ΓöéSCSI Request   ΓöéW              Γöé
  17821. Γöé               Γöé               ΓöéFlags          Γöé               Γöé
  17822. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  17823. Γöé04h (04)       Γöé04h (04)       ΓöéReserved for   Γöé-              Γöé
  17824. Γöé               Γöé               ΓöéExpansion = 0  Γöé               Γöé
  17825. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  17826. Γöé08h (08)       Γöé01h (01)       ΓöéNumber of Host ΓöéR              Γöé
  17827. Γöé               Γöé               ΓöéAdapters       Γöé               Γöé
  17828. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  17829. Γöé09h (09)       Γöé01h (01)       ΓöéTarget ID of   ΓöéR              Γöé
  17830. Γöé               Γöé               ΓöéHost Adapter   Γöé               Γöé
  17831. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  17832. Γöé0Ah (10)       Γöé10h (16)       ΓöéSCSI Manager IDΓöéR              Γöé
  17833. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  17834. Γöé1Ah (26)       Γöé10h (16)       ΓöéHost Adapter IDΓöéR              Γöé
  17835. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  17836. Γöé2Ah (42)       Γöé10h (16)       ΓöéHost Adapter   ΓöéR              Γöé
  17837. Γöé               Γöé               ΓöéUnique         Γöé               Γöé
  17838. Γöé               Γöé               ΓöéParameters     Γöé               Γöé
  17839. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  17840.  
  17841. *The R/W column indicates whether the field is sent to ASPI (W), returned from 
  17842. ASPI (R), or reserved (-). 
  17843.  
  17844. The status byte always returns with a non-zero status. A SCSI Request Completed 
  17845. Without Error (01h) status indicates that the remaining fields are valid. An 
  17846. Invalid Host Adapter Number (81h) status indicates that the specified host 
  17847. adapter is not installed. 
  17848.  
  17849. This function gets information on the installed host adapter hardware, 
  17850. including number of host adapters installed. It can be issued once with host 
  17851. adapter zero specified, to get the number of host adapters. If further 
  17852. information is desired, it can be issued for each individual host adapter. 
  17853.  
  17854.       The SCSI Request Flags field is currently undefined for this command and 
  17855.       should be zeroed. 
  17856.  
  17857.       The SCSI Manager ID field contains a 16-byte ASCII string describing the 
  17858.       SCSI manager. 
  17859.  
  17860.       The Host Adapter ID field contains a 16-byte ASCII string describing the 
  17861.       SCSI host adapter. 
  17862.  
  17863.       The definition of the Host Adapter Unique Parameters field is left to 
  17864.       implementation notes, specific to a particular host adapter. 
  17865.  
  17866.  
  17867. ΓòÉΓòÉΓòÉ 23.3.2.2. ASPI Command Code = 1: Get Device Type ΓòÉΓòÉΓòÉ
  17868.  
  17869. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  17870. ΓöéOffset         Γöé# Bytes        ΓöéDescription    ΓöéR/W*           Γöé
  17871. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  17872. Γöé00h (00)       Γöé01h (01)       ΓöéCommand Code = ΓöéW              Γöé
  17873. Γöé               Γöé               Γöé1              Γöé               Γöé
  17874. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  17875. Γöé01h (01)       Γöé01h (01)       ΓöéStatus         ΓöéR              Γöé
  17876. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  17877. Γöé02h (02)       Γöé01h (01)       ΓöéHost Adapter   ΓöéW              Γöé
  17878. Γöé               Γöé               ΓöéNumber         Γöé               Γöé
  17879. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  17880. Γöé03h (03)       Γöé01h (01)       ΓöéSCSI Request   ΓöéW              Γöé
  17881. Γöé               Γöé               ΓöéFlags          Γöé               Γöé
  17882. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  17883. Γöé04h (04)       Γöé04h (04)       ΓöéReserved for   Γöé-              Γöé
  17884. Γöé               Γöé               ΓöéExpansion = 0  Γöé               Γöé
  17885. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  17886. Γöé08h (08)       Γöé01h (01)       ΓöéTarget ID      ΓöéW              Γöé
  17887. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  17888. Γöé09h (09)       Γöé01h (01)       ΓöéLUN            ΓöéW              Γöé
  17889. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  17890. Γöé0Ah (10)       Γöé01h (01)       ΓöéPeripheral     ΓöéR              Γöé
  17891. Γöé               Γöé               ΓöéDevice Type of Γöé               Γöé
  17892. Γöé               Γöé               ΓöéTarget/LUN     Γöé               Γöé
  17893. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  17894. *The R/W column indicates whether the field is sent to ASPI (W), returned from 
  17895. ASPI (R), or reserved (-). 
  17896.  
  17897. This command always returns with a non-zero status. 
  17898.  
  17899. A SCSI Request Completed Without Error (01h) status indicates that the 
  17900. specified device is installed and the peripheral device type field is valid. A 
  17901. SCSI Device Not Installed Error (82h) indicates that the peripheral device type 
  17902. field is not valid. 
  17903.  
  17904. This command is intended for use by various drivers, during initialization, for 
  17905. identifying the targets that they need to support. A CD-ROM driver, for 
  17906. example, can scan each Target/LUN on each installed host adapter looking for 
  17907. the device type corresponding to CD-ROM devices. This eliminates the need for 
  17908. each driver to duplicate the effort of scanning the SCSI bus for devices. 
  17909.  
  17910. The peripheral device type is determined by sending a SCSI Inquiry command to 
  17911. the given target. Refer to any SCSI specification to learn more about the 
  17912. Inquiry command. The SCSI Request Flags field is currently undefined for this 
  17913. command and should be zeroed. 
  17914.  
  17915.  
  17916. ΓòÉΓòÉΓòÉ 23.3.2.3. ASPI Command Code = 2: Execute SCSI I/O Command ΓòÉΓòÉΓòÉ
  17917.  
  17918. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  17919. ΓöéOffset         Γöé# Bytes        ΓöéDescription    ΓöéR/W*           Γöé
  17920. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  17921. Γöé00h (00)       Γöé01h (01)       ΓöéCommand Code = ΓöéW              Γöé
  17922. Γöé               Γöé               Γöé2              Γöé               Γöé
  17923. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  17924. Γöé01h (01)       Γöé01h (01)       ΓöéStatus         ΓöéR              Γöé
  17925. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  17926. Γöé02h (02)       Γöé01h (01)       ΓöéHost Adapter   ΓöéW              Γöé
  17927. Γöé               Γöé               ΓöéNumber         Γöé               Γöé
  17928. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  17929. Γöé03h (03)       Γöé01h (01)       ΓöéSCSI Request   ΓöéW              Γöé
  17930. Γöé               Γöé               ΓöéFlags          Γöé               Γöé
  17931. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  17932. Γöé04h (04)       Γöé02h (02)       ΓöéLength of      ΓöéW              Γöé
  17933. Γöé               Γöé               ΓöéScatter/Gather Γöé               Γöé
  17934. Γöé               Γöé               ΓöéList           Γöé               Γöé
  17935. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  17936. Γöé06h (06)       Γöé02h (02)       ΓöéReserved for   Γöé-              Γöé
  17937. Γöé               Γöé               ΓöéExpansion = 0  Γöé               Γöé
  17938. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  17939. Γöé08h (08)       Γöé01h (01)       ΓöéTarget ID      ΓöéW              Γöé
  17940. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  17941. Γöé09h (09)       Γöé01h (01)       ΓöéLUN            ΓöéW              Γöé
  17942. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  17943. Γöé0Ah (10)       Γöé04h (04)       ΓöéData AllocationΓöéW              Γöé
  17944. Γöé               Γöé               ΓöéLength         Γöé               Γöé
  17945. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  17946. Γöé0Eh (14)       Γöé01h (01)       ΓöéSense          ΓöéW              Γöé
  17947. Γöé               Γöé               ΓöéAllocation     Γöé               Γöé
  17948. Γöé               Γöé               ΓöéLength (N)     Γöé               Γöé
  17949. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  17950. Γöé0Fh (15)       Γöé04h (04)       ΓöéData Buffer    ΓöéW              Γöé
  17951. Γöé               Γöé               ΓöéPointer        Γöé               Γöé
  17952. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  17953. Γöé13h (19)       Γöé04h (04)       ΓöéSRB Link       ΓöéW              Γöé
  17954. Γöé               Γöé               ΓöéPointer        Γöé               Γöé
  17955. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  17956. Γöé17h (23)       Γöé01h (01)       ΓöéSCSI CDB LengthΓöéW              Γöé
  17957. Γöé               Γöé               Γöé(M)            Γöé               Γöé
  17958. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  17959. Γöé18h (24)       Γöé01h (01)       ΓöéHost Adapter   ΓöéR              Γöé
  17960. Γöé               Γöé               ΓöéStatus         Γöé               Γöé
  17961. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  17962. Γöé19h (25)       Γöé01h (01)       ΓöéTarget Status  ΓöéR              Γöé
  17963. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  17964. Γöé1Ah (26)       Γöé02h (02)       ΓöéReal Mode Post ΓöéW              Γöé
  17965. Γöé               Γöé               ΓöéRoutine        Γöé               Γöé
  17966. Γöé               Γöé               ΓöéOffset**       Γöé               Γöé
  17967. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  17968. Γöé1Ch (28)       Γöé02h (02)       ΓöéReal Mode Post ΓöéW              Γöé
  17969. Γöé               Γöé               ΓöéRoutine CS**   Γöé               Γöé
  17970. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  17971. Γöé1Eh (30)       Γöé02h (02)       ΓöéReal Mode Post ΓöéW              Γöé
  17972. Γöé               Γöé               ΓöéRoutine DS**   Γöé               Γöé
  17973. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  17974. Γöé20h (32)       Γöé02h (02)       ΓöéProtected Mode ΓöéW              Γöé
  17975. Γöé               Γöé               ΓöéPost Routine   Γöé               Γöé
  17976. Γöé               Γöé               ΓöéOffset         Γöé               Γöé
  17977. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  17978. Γöé22h (34)       Γöé02h (02)       ΓöéProtected Mode ΓöéW              Γöé
  17979. Γöé               Γöé               ΓöéPost Routine CSΓöé               Γöé
  17980. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  17981. Γöé24h (36)       Γöé02h (02)       ΓöéProtected Mode ΓöéW              Γöé
  17982. Γöé               Γöé               ΓöéPost Routine DSΓöé               Γöé
  17983. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  17984. Γöé26h (38)       Γöé04h (04)       ΓöéPhysical       ΓöéW              Γöé
  17985. Γöé               Γöé               ΓöéAddress of SRB Γöé               Γöé
  17986. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  17987. Γöé2Ah (42)       Γöé16h (22)       ΓöéReserved for   Γöé-              Γöé
  17988. Γöé               Γöé               ΓöéASPI Workspace Γöé               Γöé
  17989. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  17990. Γöé40h (64)       ΓöéM              ΓöéSCSI Command   ΓöéW              Γöé
  17991. Γöé               Γöé               ΓöéDescriptor     Γöé               Γöé
  17992. Γöé               Γöé               ΓöéBlock (CDB)    Γöé               Γöé
  17993. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  17994. Γöé40h+M          ΓöéN              ΓöéSense          ΓöéR              Γöé
  17995. Γöé               Γöé               ΓöéAllocation AreaΓöé               Γöé
  17996. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  17997.  
  17998. *The R/W column indicates whether the field is sent to ASPI (W), returned from 
  17999. ASPI (R), or reserved (-). **Used by OS/2 1.x only. Fields are not used under 
  18000. OS/2 2.x. 
  18001.  
  18002. This command usually returns with zero status indicating that the request was 
  18003. queued successfully. Command completion can be determined by polling for 
  18004. non-zero status or through the use of the Post Routine Address field. If you 
  18005. are going to use polling, interrupts must be enabled. The SCSI Request Flags 
  18006. byte is defined as follows: 
  18007.  
  18008. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  18009. Γöé7        Γöé6        Γöé5        Γöé4        Γöé3        Γöé2        Γöé1        Γöé0        Γöé
  18010. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  18011. ΓöéRsvd     ΓöéRsvd     ΓöéSGE      ΓöéDirectionΓöéDirectionΓöéReserved ΓöéLink     ΓöéPost     Γöé
  18012. Γöé         Γöé         Γöé         ΓöéBits     ΓöéBits     Γöé         Γöé         Γöé         Γöé
  18013. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  18014.  
  18015. The Post bit specifies whether posting is enabled (bit 0 = 1) or disabled (bit 
  18016. 0 = 0). The Link bit specifies whether linking is enabled (bit 1 = 1) or 
  18017. disabled (bit 1 = 0). The Direction Bits specify the direction of the transfer: 
  18018.  
  18019.       00 - Direction determined by SCSI command. Length not checked. 
  18020.       01 - Transfer from SCSI target to host. Length checked. 
  18021.       10 - Transfer from host to SCSI target. Length checked. 
  18022.       11 - No data transfer. 
  18023.  
  18024.  The Scatter/Gather Enable (SGE) bit specifies whether scatter/gather is 
  18025.  enabled (bit 5=1) or disabled (bit 5=0). The Target ID and LUN fields are used 
  18026.  to specify the peripheral device involved in the I/O. 
  18027.  
  18028.  The Data Allocation Length field indicates the number of bytes to be 
  18029.  transferred. If the SCSI command to be executed does not transfer data (such 
  18030.  as Rewind, Start Unit, and so forth) the data allocation length must be set to 
  18031.  zero. 
  18032.  
  18033.  The Length of Scatter/Gather List field is valid only when the scatter/gather 
  18034.  enable bit in the flags is set. It contains the number of descriptors in the 
  18035.  array pointed by the Data Buffer Pointer field. 
  18036.  
  18037.  The Sense Allocation Length field indicates the number of bytes allocated at 
  18038.  the end of the SRB for sense data.  A request sense is automatically generated 
  18039.  if a check condition is presented at the end of a SCSI command. 
  18040.  
  18041.  The Data Buffer Pointer field is a pointer to the I/O data buffer. When 
  18042.  scatter/gather is enabled, this field is a physical pointer to a 
  18043.  scatter/gather list. A scatter/gather list is made up of one or more 
  18044.  descriptors of the following format: 
  18045.  
  18046.                  ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  18047.                  ΓöéDWORD Buffer Pointer Γöé
  18048.                  Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  18049.                  Γöé DWORD Buffer Size   Γöé
  18050.                  ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  18051.  
  18052.  The SRB Link Pointer field is a pointer to the next SRB in a chain. See the 
  18053.  SCSI Command Linking With ASPI for more information. 
  18054.  
  18055.  The SCSI CDB Length field establishes the length, in bytes, of the SCSI 
  18056.  Command Descriptor Block (CDB). 
  18057.  
  18058.  The Host Adapter Status field reports the host adapter status, as follows: 
  18059.  
  18060.       00h - Host adapter did not detect any error 
  18061.       11h - Selection timeout 
  18062.       12h - Data overrun/underrun 
  18063.       13h - Unexpected bus free 
  18064.       14h - Target bus phase sequence failure 
  18065.  
  18066.  The Target Status field reports the target's SCSI status, including: 
  18067.  
  18068.       00h - No target status 
  18069.       02h - Check status (sense data is in sense allocation area) 
  18070.       08h - Specified target/LUN is busy 
  18071.       18h - Reservation conflict 
  18072.  
  18073.       Note:  The host adapter status and the target status are valid only when 
  18074.              the status byte is either 2 or 4. 
  18075.  
  18076.  
  18077.  The Post Routine Address field, if specified, is called when the I/O is 
  18078.  completed. 
  18079.  
  18080.  The SCSI Command Descriptor Block (CDB) field contains the CDB as defined by 
  18081.  the target's SCSI command set. The length of the SCSI CDB is specified in the 
  18082.  SCSI Command Length field. 
  18083.  
  18084.  The Sense Allocation Area is filled with sense data on a check condition. The 
  18085.  maximum length of this field is specified in the Sense Allocation Length 
  18086.  field. The target can return fewer than the number of sense bytes requested. 
  18087.  
  18088.  
  18089. ΓòÉΓòÉΓòÉ 23.3.2.3.1. SCSI Command Linking With ASPI ΓòÉΓòÉΓòÉ
  18090.  
  18091. ASPI provides the ability to use SCSI linking to guarantee the sequential 
  18092. execution of several commands. This feature requires that the involved 
  18093. target(s) support SCSI linking. 
  18094.  
  18095. To use SCSI linking, a chain of SRBs is built with the SRB link pointer used to 
  18096. link the elements together. The link bit should be set in the SCSI request 
  18097. flags byte of all SRBs except the last in the chain. When a SCSI target returns 
  18098. indicating that the linked command is complete, the next SRB is immediately 
  18099. processed, and the appropriate CDB is dispatched. When using SCSI linking, make 
  18100. sure that the linking flags in the SCSI CDB agree with the link bit in the SCSI 
  18101. request flags. Inconsistencies can cause unpredictable results. For example, 
  18102. setting the CDB up for linking but failing to set the link bit may result in a 
  18103. random address being used for the next SRB pointer. 
  18104.  
  18105. Any error returned from the target on a linked command will break the chain. 
  18106. Note that if linking without tags is used, as defined in SCSI, posting may not 
  18107. occur on any elements in the chain until the chain is complete. If you have the 
  18108. post bit set in each SRB's SCSI request flags byte, then each SRB's post 
  18109. routine will be called. 
  18110.  
  18111. Note:  Do not use SCSI linking. Many SCSI targets, as well as SCSI host 
  18112.        adapters, do not handle SCSI linking and will not work with your ASPI 
  18113.        module. 
  18114.  
  18115.  
  18116. ΓòÉΓòÉΓòÉ 23.3.2.3.2. ASPI Command Posting ΓòÉΓòÉΓòÉ
  18117.  
  18118. Posting refers to the SCSI manager making a FAR call to a post routine as 
  18119. specified in the SRB. This can be used by a driver much like a hardware 
  18120. interrupt might be used. Post routines have all the same privileges and 
  18121. restrictions as a hardware-interrupt service routine in OS/2. Posting is 
  18122. optional, but should almost always be used in OS/2. 
  18123.  
  18124. To use Posting, the post bit must be set in the SCSI request flags. The post 
  18125. routine is called to indicate that the requested I/O is complete. The specific 
  18126. SRB completed is indicated by the four-byte SRB pointer on the stack. The DS of 
  18127. the post routine as specified in the SRB is also passed to the stack. The post 
  18128. routine will be called with interrupts enabled. It is assumed that all 
  18129. registers are preserved by the post routine. 
  18130.  
  18131.    ASPI_Post          proc         far
  18132.                       push         bp             ;Use bp as a reference
  18133.                       mov          bp,sp
  18134.  
  18135.                       pusha                       ;Save all registers
  18136.                       push         es             ;Save ES
  18137.                       mov          bx,[bp+6]      ;Load DS of POST routine
  18138.                       mov          ax,[bp+10]     ;Physical address of SRB-->AX:BX
  18139.                       mov          ax,[bp+8]
  18140.                                    .
  18141.                                    .
  18142.                                    .
  18143.                       pop          es             ;Restore registers
  18144.                       popa
  18145.                       pop          ds
  18146.  
  18147.                       pop          bp
  18148.                       retf
  18149.    ASPI_Post                                  endp
  18150.  
  18151. When your post routine is first entered, the stack looks like this: 
  18152.  
  18153.  
  18154.                        ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  18155. Top of Stack  [SP+0] > Γöé Return Address (Offset)  Γöé
  18156.                        Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  18157.               [SP+2] > Γöé Return Address (Segment) Γöé
  18158.                        Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  18159.               [SP+4] > Γöé SRB Pointer (Offset)     Γöé
  18160.                        Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  18161.               [SP+6] > Γöé SRB Pointer (Segment)    Γöé
  18162.                        Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  18163.                        Γöé        . . .             Γöé
  18164.                        Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  18165.                        Γöé        . . .             Γöé
  18166.                        Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  18167.                        Γöé        . . .             Γöé
  18168.                        Γöé                          Γöé
  18169.                        ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  18170.  
  18171. You can issue any ASPI command from within your post routine except for an 
  18172. abort command. Your post routine should get in and out as quickly as possible. 
  18173.  
  18174.  
  18175. ΓòÉΓòÉΓòÉ 23.3.2.3.3. ASPI Command Code = 3: Abort SCSI I/O Request ΓòÉΓòÉΓòÉ
  18176.  
  18177. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  18178. ΓöéOffset         Γöé# Bytes        ΓöéDescription    ΓöéR/W*           Γöé
  18179. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  18180. Γöé00h (00)       Γöé01h (01)       ΓöéCommand Code = ΓöéW              Γöé
  18181. Γöé               Γöé               Γöé3              Γöé               Γöé
  18182. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  18183. Γöé01h (01)       Γöé01h (01)       ΓöéStatus         ΓöéR              Γöé
  18184. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  18185. Γöé02h (02)       Γöé01h (01)       ΓöéHost Adapter   ΓöéW              Γöé
  18186. Γöé               Γöé               ΓöéNumber         Γöé               Γöé
  18187. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  18188. Γöé03h (03)       Γöé01h (01)       ΓöéSCSI Request   ΓöéW              Γöé
  18189. Γöé               Γöé               ΓöéFlags          Γöé               Γöé
  18190. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  18191. Γöé04h (04)       Γöé04h (04)       ΓöéReserved for   Γöé-              Γöé
  18192. Γöé               Γöé               ΓöéExpansion = 0  Γöé               Γöé
  18193. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  18194. Γöé08h (08)       Γöé04h (04)       ΓöéPhysical SRB   ΓöéW              Γöé
  18195. Γöé               Γöé               ΓöéPointer        Γöé               Γöé
  18196. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  18197.  
  18198. *The R/W column indicates whether the field is sent to ASPI (W), returned from 
  18199. ASPI (R), or reserved (-). 
  18200.  
  18201. This command is used to request that an SRB be aborted. It should be issued on 
  18202. any I/O request that has not completed if the driver wishes to timeout on that 
  18203. request. Success of the Abort command is never assured. 
  18204.  
  18205. This command always returns with SCSI Request Completed Without Error, but the 
  18206. actual failure or success of the abort operation is indicated by the status 
  18207. eventually returned in the SRB specified. 
  18208.  
  18209. The SCSI Request Flags field is currently undefined for this command and should 
  18210. be zeroed. The SRB Pointer to Abort field contains a pointer to the SRB which 
  18211. is to be aborted. 
  18212.  
  18213. Note:  An abort command should not be issued during a post routine. 
  18214.  
  18215.  
  18216. ΓòÉΓòÉΓòÉ 23.3.2.3.4. ASPI Command Code = 4: Reset SCSI Device ΓòÉΓòÉΓòÉ
  18217.  
  18218. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  18219. ΓöéOffset         Γöé# Bytes        ΓöéDescription    ΓöéR/W*           Γöé
  18220. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  18221. Γöé00h (00)       Γöé01h (01)       ΓöéCommand Code = ΓöéW              Γöé
  18222. Γöé               Γöé               Γöé4              Γöé               Γöé
  18223. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  18224. Γöé01h (01)       Γöé01h (01)       ΓöéStatus         ΓöéR              Γöé
  18225. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  18226. Γöé02h (02)       Γöé01h (01)       ΓöéHost Adapter   ΓöéW              Γöé
  18227. Γöé               Γöé               ΓöéNumber         Γöé               Γöé
  18228. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  18229. Γöé03h (03)       Γöé01h (01)       ΓöéSCSI Request   ΓöéW              Γöé
  18230. Γöé               Γöé               ΓöéFlags          Γöé               Γöé
  18231. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  18232. Γöé04h (04)       Γöé04h (04)       ΓöéReserved for   Γöé-              Γöé
  18233. Γöé               Γöé               ΓöéExpansion = 0  Γöé               Γöé
  18234. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  18235. Γöé08h (08)       Γöé01h (01)       ΓöéTarget ID      ΓöéW              Γöé
  18236. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  18237. Γöé09h (09)       Γöé01h (01)       ΓöéLUN            ΓöéW              Γöé
  18238. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  18239. Γöé0Ah (10)       Γöé0Eh (14)       ΓöéReserved       Γöé-              Γöé
  18240. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  18241. Γöé18h (24)       Γöé01h (01)       ΓöéHost Adapter   ΓöéR              Γöé
  18242. Γöé               Γöé               ΓöéStatus         Γöé               Γöé
  18243. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  18244. Γöé19h (25)       Γöé01h (01)       ΓöéTarget Status  ΓöéR              Γöé
  18245. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  18246. Γöé1Ah (26)       Γöé02h (02)       ΓöéReal Mode POST ΓöéW              Γöé
  18247. Γöé               Γöé               ΓöéRoutine        Γöé               Γöé
  18248. Γöé               Γöé               ΓöéOffset**       Γöé               Γöé
  18249. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  18250. Γöé1Ch (28)       Γöé02h (02)       ΓöéReal Mode POST ΓöéW              Γöé
  18251. Γöé               Γöé               ΓöéRoutine CS**   Γöé               Γöé
  18252. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  18253. Γöé1Eh (30)       Γöé02h (02)       ΓöéReal Mode POST ΓöéW              Γöé
  18254. Γöé               Γöé               ΓöéRoutine DS**   Γöé               Γöé
  18255. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  18256. Γöé20h (32)       Γöé02h (02)       ΓöéProtected Mode ΓöéW              Γöé
  18257. Γöé               Γöé               ΓöéPOST Routine   Γöé               Γöé
  18258. Γöé               Γöé               ΓöéOffset         Γöé               Γöé
  18259. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  18260. Γöé22h (34)       Γöé02h (02)       ΓöéProtected Mode ΓöéW              Γöé
  18261. Γöé               Γöé               ΓöéPOST Routine CSΓöé               Γöé
  18262. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  18263. Γöé24h (36)       Γöé02h (02)       ΓöéProtected Mode ΓöéW              Γöé
  18264. Γöé               Γöé               ΓöéPOST Routine DSΓöé               Γöé
  18265. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  18266. Γöé26h (38)       Γöé16h (22)       ΓöéReserved for   Γöé-              Γöé
  18267. Γöé               Γöé               ΓöéASPI Workspace Γöé               Γöé
  18268. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  18269.  
  18270. *The R/W column indicates whether the field is sent to ASPI (W), returned from 
  18271. ASPI (R), or reserved (-). **Used by OS/2 1.x only. Fields are not used under 
  18272. OS/2 2.x. 
  18273.  
  18274. This command is used to reset a specific SCSI target. Note that the structure 
  18275. passed is almost identical to the execute SCSI I/O SRB except that some of the 
  18276. fields are not used. 
  18277.  
  18278. This command usually returns with zero status indicating that the request was 
  18279. queued successfully. Command completion can be determined by polling for 
  18280. non-zero status or through the use of posting. The SCSI Request Flags byte is 
  18281. defined as follows: 
  18282.  
  18283. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  18284. Γöé7        Γöé6        Γöé5        Γöé4        Γöé3        Γöé2        Γöé1        Γöé0        Γöé
  18285. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  18286. ΓöéRsvd     ΓöéRsvd     ΓöéRsvd     ΓöéRsvd     ΓöéRsvd     ΓöéRsvd     ΓöéRsvd     ΓöéPost     Γöé
  18287. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  18288. The Post bit specifies whether posting is enabled (bit 0 = 1) or disabled (bit 
  18289. 0 = 0). 
  18290.  
  18291.  
  18292. ΓòÉΓòÉΓòÉ 23.3.2.3.5. ASPI Command Code = 5: Set Host Adapter Parameters ΓòÉΓòÉΓòÉ
  18293.  
  18294. ΓöîΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö¼ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÉ
  18295. ΓöéOffset         Γöé# Bytes        ΓöéDescription    ΓöéR/W*           Γöé
  18296. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  18297. Γöé00h (00)       Γöé01h (01)       ΓöéCommand Code = ΓöéW              Γöé
  18298. Γöé               Γöé               Γöé5              Γöé               Γöé
  18299. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  18300. Γöé01h (01)       Γöé01h (01)       ΓöéStatus         ΓöéR              Γöé
  18301. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  18302. Γöé02h (02)       Γöé01h (01)       ΓöéHost Adapter   ΓöéW              Γöé
  18303. Γöé               Γöé               ΓöéNumber         Γöé               Γöé
  18304. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  18305. Γöé03h (03)       Γöé01h (01)       ΓöéSCSI Request   ΓöéW              Γöé
  18306. Γöé               Γöé               ΓöéFlags          Γöé               Γöé
  18307. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  18308. Γöé04h (04)       Γöé04h (04)       ΓöéReserved for   Γöé-              Γöé
  18309. Γöé               Γöé               ΓöéExpansion = 0  Γöé               Γöé
  18310. Γö£ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö╝ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöñ
  18311. Γöé08h (08)       Γöé10h (16)       ΓöéHost Adapter   ΓöéW              Γöé
  18312. Γöé               Γöé               ΓöéUnique         Γöé               Γöé
  18313. Γöé               Γöé               ΓöéParameters     Γöé               Γöé
  18314. ΓööΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓö┤ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÿ
  18315. *The R/W column indicates whether the field is sent to ASPI (W), returned from 
  18316. ASPI (R), or reserved (-). 
  18317.  
  18318. The definition of the host adapter unique parameters is left to implementation 
  18319. notes specific to a particular host adapter. 
  18320.  
  18321.  
  18322. ΓòÉΓòÉΓòÉ 24. Adapter Device Driver Interface Questions and Answers ΓòÉΓòÉΓòÉ
  18323.  
  18324. This appendix covers the most commonly asked questions about adapter device 
  18325. driver interfaces, including discussion of scatter/gather lists and 
  18326. functionality.  The answers are presented in detail. 
  18327.  
  18328.  
  18329. ΓòÉΓòÉΓòÉ 24.1. Scatter/Gather Lists ΓòÉΓòÉΓòÉ
  18330.  
  18331. Question: 
  18332. Is there a limit on the length of an individual scatter/gather element? 
  18333.  
  18334. Answer: 
  18335. No.  We are aware that some SCSI PIO drivers have a 64KB limitation on 
  18336. scatter/gather elements.  At present, OS/2 2.0 appears to remain within this 
  18337. limitation.  However, it is recommended that this restriction be lifted because 
  18338. there is no guarantee that adapter device drivers with such a limitation will 
  18339. be compatible with future OS/2 operating system releases. 
  18340.  
  18341. Question: 
  18342. Is there a limit on the number of elements in a scatter/gather list? 
  18343.  
  18344. Answer: 
  18345. No. 
  18346.  
  18347. Question: 
  18348. What is the meaning of the field: 
  18349.  
  18350. ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  18351.  
  18352. AdapterInfo->UnitInfo->MaxHWSGList
  18353.  
  18354. ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  18355.  
  18356. Answer: 
  18357. This is the maximum number of scatter/gather list entries your adapter hardware 
  18358. can handle. The OS/2 operating system will ensure that the adapter device 
  18359. driver is not required to split a sector across a MaxHWSGList boundary. 
  18360. However, the adapter device driver is responsible for iterating an I/O command 
  18361. because of limitations in its s/g support. 
  18362.  
  18363. Question: 
  18364. What about s/g lists associated with CDB PassThru commands? 
  18365.  
  18366. Answer: 
  18367. adapter device drivers are not required to iterate commands through the CDB 
  18368. PassThru mechanism. 
  18369.  
  18370. Commands received from SCSI.SYS device class drivers will require a minimum of 
  18371. 16 s/g elements.  At present, the number of s/g elements required by device 
  18372. modules written to ASPI interfaces is not known. If the OS2SCSI or OS2ASPI 
  18373. device managers receive an s/g list that does not conform to the adapter device 
  18374. driver's s/g requirement, these device managers will reject the request. 
  18375.  
  18376. Question: 
  18377. What is the meaning of the field: 
  18378.  
  18379. ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  18380.  
  18381. AdapterInfo->UnitInfo->MaxCDBXferLen
  18382.  
  18383. ΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇΓöÇ
  18384.  
  18385. Answer: 
  18386. This field is not the maximum CDB length.  The purpose of this field relates to 
  18387. the limitations on s/g list lengths and their effect on PassThru commands. 
  18388.  
  18389. For adapter device drivers written for adapters that have severe s/g list 
  18390. limitations or unusual s/g address limitations, the adapter device driver might 
  18391. emulate s/g functionality using an I/O buffer.  In this case, the adapter 
  18392. device driver would inform the OS2SCSI or OS2ASPI device managers of the length 
  18393. of its emulation buffer by way of the above field.  It is up to the adapter 
  18394. device driver to perform this emulation. 
  18395.  
  18396. Question: 
  18397. My adapter requires an s/g list format different from the one provided.  Do I 
  18398. need to allocate storage for separate lists? 
  18399.  
  18400. Answer: 
  18401. No.  Provided that your transformations are reversible, you can reformat the 
  18402. passed s/g list to what your adapter can accept. You must reverse the 
  18403. reformatting prior to performing your notification call out. 
  18404.  
  18405.  
  18406. ΓòÉΓòÉΓòÉ 24.2. Adapter Device Driver Functionality ΓòÉΓòÉΓòÉ
  18407.  
  18408. Question: 
  18409. Do I need to support every command in this specification? 
  18410.  
  18411. Answer: 
  18412. No.  For specific device types, some commands are mandatory and others are 
  18413. optional.  For example, there are several commands that apply only to floppy 
  18414. controllers.  We must support these commands due to the unusual characteristics 
  18415. of diskette media. 
  18416.  
  18417. Where possible, mandatory commands for particular device types are indicated. 
  18418.  
  18419. Question: 
  18420. Some commands do not appear to be used by the current OS/2 2.0 device managers. 
  18421. Must I implement these commands? 
  18422.  
  18423. Answer: 
  18424. Yes.  To preclude compatibility problems with future releases of OS/2, you 
  18425. should follow this specification as closely as possible with respect to 
  18426. mandatory commands. 
  18427.  
  18428. Question: 
  18429. What happens if IBM-supplied sample code differs in some way from this 
  18430. specification? 
  18431.  
  18432. Answer: 
  18433. This specification takes precedence over IBM-supplied samples.  Obtain 
  18434. clarification from IBM if you have questions on a particular code sample. 
  18435.  
  18436. Question: 
  18437. SCSI defines different command formats for different device types. Do I need to 
  18438. support all the different CDB formats? 
  18439.  
  18440. Answer: 
  18441. No. You must support the DASD type formats only.  The remainder of the device 
  18442. types will be supported by way of CDB PassThru; that is, the adapter device 
  18443. driver will be supplied with an appropriate CDB. 
  18444.  
  18445. Question: 
  18446. Do I need to support the IORB_CHAIN RequestControl flag on every IORB command 
  18447. type? 
  18448.  
  18449. Answer: 
  18450. No.  The chain flag is used only on IOCC_EXECUTE_IO commands.  In addition, all 
  18451. IORBs contained in the chained request will reference the same UnitHandle. 
  18452.  
  18453. Question: 
  18454. Do I need to support any unusual SCSI commands? 
  18455.  
  18456. Answer: 
  18457. No.  We expect most DASD devices to conform to CCS. Regarding SCSI 
  18458. Write/Verify, adapter device driver writers are encouraged to emulate this 
  18459. command for drives that do not provide this function directly. Suppliers of 
  18460. devices that have unusual command requirements are expected to provide filter 
  18461. device drivers. 
  18462.  
  18463. Question: 
  18464. What kind of error recovery is an adapter device driver required to perform? 
  18465.  
  18466. Answer: 
  18467. Adapter device drivers are responsible for error recovery.  An error reported 
  18468. to the layers above the adapter device driver is considered not recoverable. 
  18469. In general, SCSI devices retry at the device  level, so the adapter device 
  18470. driver does not need to retry commands that failed at the device. However, the 
  18471. adapter device driver should retry commands that failed due to errors on the 
  18472. SCSI bus during either the command or data transfer phases. 
  18473.  
  18474. Question: 
  18475. Must the adapter device driver retry commands that were disrupted due to an 
  18476. adapter reset for a hang condition? 
  18477.  
  18478. Answer: 
  18479. Yes, the adapter device driver is responsible for retrying commands disrupted 
  18480. by an adapter device driver-initiated reset of an adapter to clear a hang 
  18481. condition. 
  18482.  
  18483. Question: 
  18484. Does the adapter device driver have to report media removal with an error code 
  18485. to the device manager? 
  18486.  
  18487. Answer: 
  18488. If the unit supports media removal, the adapter device driver is required to 
  18489. report media removal to the device manager by way of the appropriate IOERR_* 
  18490. code.  In addition, the adapter device driver should return the same error code 
  18491. for all work queued for the unit.  The adapter device driver should not retry 
  18492. this error.  The adapter device driver should treat a power-on condition the 
  18493. same as media removal.  The adapter device driver should return the appropriate 
  18494. IOERR_* code for all queued work after a not ready condition. 
  18495.  
  18496. If the unit does not support media removal, the adapter device driver should 
  18497. retry the operation. 
  18498.  
  18499. Question: 
  18500. Must my adapter device driver perform SCSI sense code->IOERR_* translation? 
  18501.  
  18502. Answer: 
  18503. Yes.  The OS/2 DASD device manager expects a uniform set of error codes and 
  18504. will not examine SCSI sense codes. 
  18505.  
  18506. Question: 
  18507. Must my adapter device driver return sense data when requested? 
  18508.  
  18509. Answer: 
  18510. Yes.  The OS2SCSI and OS2ASPI device mangers need to return this data to their 
  18511. clients. 
  18512.  
  18513.  
  18514. ΓòÉΓòÉΓòÉ 25. Using the Device Driver Test Tool (DDTT) ΓòÉΓòÉΓòÉ
  18515.  
  18516. The Device Driver Test Tool (DDTT) provides an efficient environment to create, 
  18517. execute, and refine device driver test cases.  The DDTT is extensible by the 
  18518. addition of new device-dependent DLLs and grammar files.  DLL files implement 
  18519. device-specific interface functions, such as DosDevIOCtl calls.  Actual 
  18520. test-case content and execution is controlled by test-case script files. 
  18521.  
  18522. Test-case script files are parsed by DDTT's generic parser.  Device-specific 
  18523. functions resident in the DLLs are indirectly called from the test-case parser. 
  18524. Device-specific grammar files tell the parser which device-specific function 
  18525. and parameter keywords to expect in the test-case script files. 
  18526.  
  18527. Accelerated development of test interfaces to new devices is achieved with the 
  18528. DDTT by isolating the device-specific calls in "stub routines", which are 
  18529. compiled and linked into a separate DLL file.  Linkage to the device-interface 
  18530. routines is established at run-time by demand loading the DLL functions.  The 
  18531. DLL name and function name information is obtained from the device-specific 
  18532. grammar file. 
  18533.  
  18534. The DDTT parser reads a test-case file and locates a @NEWALIAS command. The 
  18535. @NEWALIAS command contains the name of a DDTT grammar file for all commands 
  18536. prefaced with the specified new alias name.  The parser uses the device grammar 
  18537. file name to map all device-specific commands to the correct DLL and function 
  18538. name within the DLL. 
  18539.  
  18540.  
  18541. ΓòÉΓòÉΓòÉ 25.1. Overall Data Flow Diagram ΓòÉΓòÉΓòÉ
  18542.  
  18543. The following data flow diagram shows the major components of the DDTT.  Shaded 
  18544. modules represent components that are intended to be modified or re-created 
  18545. when adding new support for devices and test cases. 
  18546.  
  18547. Note:  When adding new C++ device interface modules, it is necessary to provide 
  18548.        a device-dependent grammar file that provides run-time linkage 
  18549.        information to DDTT's parser. 
  18550.  
  18551.  
  18552. ΓòÉΓòÉΓòÉ 25.1.1. Development Environments ΓòÉΓòÉΓòÉ
  18553.  
  18554. The DDTT provides the following three development environments: 
  18555.  
  18556.    o  Test Case Execution 
  18557.  
  18558.    o  Test Case Development 
  18559.  
  18560.    o  Ring-3 Device Interface 
  18561.  
  18562.  
  18563. ΓòÉΓòÉΓòÉ 25.1.1.1. Test-Case Execution ΓòÉΓòÉΓòÉ
  18564.  
  18565. Test case executors are the intended users of the DDTT at this level and is a 
  18566. procedural interface.  DDTT test cases are contained in flat text files called 
  18567. Script Files.  Typically, each script file contains one test case, although a 
  18568. test case could span multiple files by utilizing the DDTT's script file's 
  18569. include capability. 
  18570.  
  18571. To start a test case contained within a file named TEST01.SCR, type DDTT 
  18572. TEST01.SCR from an OS/2 command prompt. 
  18573.  
  18574. Operator prompts are displayed in separate windows, one window for each test 
  18575. thread.  Any resulting logs are written to the file names specified on the 
  18576. @THREAD commands in the test script file. 
  18577.  
  18578. At the Test-Case Execution level, the DDTT requires limited knowledge of OS/2 
  18579. (for example, how to start and stop command files, and any device-specific 
  18580. knowledge required by the test-case grammar file. 
  18581.  
  18582. DDTT scripted test cases are repeatable.  When a test case is defined and 
  18583. contained within a Test-Case Script File, the execution and subsequent 
  18584. re-executions of the test case always execute functions within a thread in the 
  18585. same order.  Although intra-thread operations occur in the same order, there is 
  18586. no guarantee that inter-thread operations will always occur in the same order. 
  18587. Use the DDTT's shared file logging to determine test-case execution order in 
  18588. multiple thread test cases. 
  18589.  
  18590.  
  18591. ΓòÉΓòÉΓòÉ 25.1.1.2. Test-Case Development ΓòÉΓòÉΓòÉ
  18592.  
  18593. When a device's function set has been defined, additional test cases can be 
  18594. created by adding or modifying existing test-case scripts.  Thus, adding new 
  18595. test cases for an existing device requires knowledge of that device and an flat 
  18596. file editor.  Using DDTT's scripting capabilities, new test cases can be 
  18597. quickly developed to cover any "holes" identified in existing test "buckets". 
  18598.  
  18599. In addition to device-specific functions, DDTT test case developers can use all 
  18600. of the functions described in Script Utility Functions. 
  18601.  
  18602. The interface provided for the test case script writer is procedural.  Commands 
  18603. are executed top-to-bottom within a given test-case thread. 
  18604.  
  18605. Built-in generic functions are provided for creating test case scripts. 
  18606. Generic functions are independent of any device under test. Syntax of these 
  18607. functions is the same across all DDTT device interfaces. 
  18608.  
  18609.  
  18610. ΓòÉΓòÉΓòÉ 25.1.1.3. Ring-3 Device Interface ΓòÉΓòÉΓòÉ
  18611.  
  18612. The C++ DLL modules implement DDTT device-specific stub functions.  Creating 
  18613. DDTT device interfaces requires knowledge of the C++ programming language and a 
  18614. detailed understanding of the device driver to be tested (such as which 
  18615. functions the device is capable of performing).  The DDTT provides many common 
  18616. functions, such as log file management and cover routines for the OS/2 APIs. 
  18617.  
  18618. DDTT device stub function developers can use all of the functions described in 
  18619. Stub Utility Functions. 
  18620.  
  18621.  
  18622. ΓòÉΓòÉΓòÉ 25.1.2. Script Utility Functions ΓòÉΓòÉΓòÉ
  18623.  
  18624. Test-case script functions are device-specific or generic.  Generic or 
  18625. utility-script functions are part of all DDTT grammar files.  Most DDTT 
  18626. commands are associated with an aliasname.  The general form of a DDTT command 
  18627. is as follows: 
  18628.  
  18629.  
  18630.    alias_name FUNCTION_NAME [[PARAMETER=value], ...]
  18631.  
  18632. The DDTT built-in functions which are not associated with an aliasname are 
  18633. preceded with an "at"(@) character. 
  18634.  
  18635. Script Utility Function keywords and their parameters are case insensitive and 
  18636. all tokens are uppercased by the DDTT.  In the descriptions below, upper case 
  18637. represents fixed tokens or keywords, and lower case indicates a variable token, 
  18638. specific to the particular function invokation.  To preserve a token's case, 
  18639. use the syntax $(Token). 
  18640.  
  18641. All DDTT commands are automatically continued to the next line if the last 
  18642. character in the line is the backslash character (\). 
  18643.  
  18644. The DDTT test case files can use OS/2 environment variables. Environment 
  18645. variables can be used anywhere in the script.  Any valid symbolic token with a 
  18646. (%) sign preceding it will be interpreted as an OS/2 system environment 
  18647. variable. To establish or change an environment variable from an OS/2 prompt, 
  18648. type the following: 
  18649.  
  18650.  
  18651.    [C:\]set cdrom=cdrom.scr.
  18652.  
  18653. The environment variable can then be referenced from within a test case script 
  18654. as follows: 
  18655.  
  18656.  
  18657.    @thread %cdrom.
  18658.  
  18659. (%cdrom will then be replaced by cdrom.scr.) 
  18660.  
  18661.  
  18662. ΓòÉΓòÉΓòÉ 25.1.2.1. @THREAD ΓòÉΓòÉΓòÉ
  18663.  
  18664.  
  18665.    @Thread log_filename
  18666.  
  18667. This function starts the new thread of execution.  Any resulting DDTT file logs 
  18668. will be written to log_filename.  The DDTT shares access to log_filename, and 
  18669. the same log_filename may be used for multiple @THREAD commands within the same 
  18670. test case.  The DDTT also creates a separate OS/2 Presentation Manager window 
  18671. for every @THREAD token.  Any operator messages and prompts generated in the 
  18672. @THREAD section are displayed in the corresponding window. 
  18673.  
  18674. Each occurrence of the @THREAD token marks the start of a section in the test 
  18675. case script file which is to be executed sequentially under the control of a 
  18676. single OS/2 thread created by DDTT. DDTT parses the entire test case file 
  18677. looking for @THREAD tokens.  When the entire test case file (including any 
  18678. @IMPORT commands) has been parsed, DDTT creates and starts an OS/2 thread for 
  18679. each @THREAD token located.  All threads are initially created within the DDTT 
  18680. process with the following  characteristics: 
  18681.  
  18682.  
  18683.    Stack size:   4KB
  18684.  
  18685. Note: 
  18686.  
  18687.    o  Thread windows are created on top of each other.  To access multiple 
  18688.       windows simultaneously, drag the thread windows to separate places on the 
  18689.       screen 
  18690.  
  18691.    o  All OS/2 threads are started at approximately the same time. 
  18692.  
  18693.    o  The DDTT must encounter an @THREAD command as the first command after 
  18694.       resolving all @IMPORT commands in the test case file. 
  18695.  
  18696.    o  The DDTT test scripts can start no more than 50 threads. 
  18697.  
  18698.  
  18699. ΓòÉΓòÉΓòÉ 25.1.2.2. @NEWALIAS ΓòÉΓòÉΓòÉ
  18700.  
  18701.  
  18702.    @NEWALIAS alias_name grammar_file
  18703.  
  18704. Create a DDTT alias name and establish the device-specific grammar to use when 
  18705. parsing all other commands with the same alias_name in the test case.  The 
  18706. first required parameter is the alias_name and can be any alpha-numeric string. 
  18707. The specified alias_name is the first token in all commands that follow and 
  18708. share the same family of parameter keywords. 
  18709.  
  18710. The second required parameter specifies the grammar file to be used when 
  18711. parsing all commands which start with the alias_name token.  The DDTT's parser 
  18712. uses the content resolve all device-grammar file function, the parameter 
  18713. keyword and the expected value keywords used in the test case commands. 
  18714.  
  18715.  
  18716. ΓòÉΓòÉΓòÉ 25.1.2.3. @IMPORT ΓòÉΓòÉΓòÉ
  18717.  
  18718.  
  18719.    @IMPORT import_filename
  18720.  
  18721. Insert the content of the specified import_filename into the test-case file. 
  18722. DDTT test-script files can include or insert other DDTT test script files.  Up 
  18723. to ten levels of imported files are allowed.  An environment variable may be 
  18724. used to contain the file name of the file to be included. 
  18725.  
  18726.  
  18727. ΓòÉΓòÉΓòÉ 25.1.2.4. @LOOP ΓòÉΓòÉΓòÉ
  18728.  
  18729.  
  18730.    @LOOP loop_cnt | [alias_name, numeric_parameter_kwd]
  18731.  
  18732. Execute the following block of one or more scripted functions up to the next 
  18733. @ENDLOOP token in a loop.  Nested loops are permitted.  The number of loop 
  18734. iterations is controlled in one of two methods.  A single loop count-positive 
  18735. numeric value may be specified or a DDTT environment variable may be used. 
  18736.  
  18737. The other method is syntactically different, but allows specification of a DDTT 
  18738. parameter_keyword as the loop count.  Place the DDTT alias_name and a numeric 
  18739. parameter_keyword defined by the alias inside square brackets {[]}. Use a comma 
  18740. separator between these tokens. 
  18741.  
  18742. Note: 
  18743.  
  18744.    o  The value used for the loop count is the current value of the 
  18745.       parameter_keyword at the start of the loop.  The actual value of the 
  18746.       parameter_keyword is not changed by executing the @LOOP command. 
  18747.  
  18748.    o  The current loop count value is not accessible from within the loop. 
  18749.  
  18750.  
  18751. ΓòÉΓòÉΓòÉ 25.1.2.5. @LOG ΓòÉΓòÉΓòÉ
  18752.  
  18753.  
  18754.    @LOG "string"
  18755.  
  18756. This function logs the only parameter to the log file opened with the previous 
  18757. @THREAD command.  The log entry is time-stamped. If the log command string 
  18758. contains script variables, the script variables will be expanded before the 
  18759. text is placed in the log file.  Every log file entry made from the script 
  18760. interface will be prefaced with the current time/date stamp from the real-time 
  18761. clock of the machine under test.  The quotation marks are required only if the 
  18762. string contains white space. 
  18763.  
  18764.  
  18765. ΓòÉΓòÉΓòÉ 25.1.2.6. @PAUSE ΓòÉΓòÉΓòÉ
  18766.  
  18767.  
  18768.    @PAUSE seconds
  18769.  
  18770. This function stops execution of all aliases in the current thread for the 
  18771. specified number of seconds.  Execution is automatically resumed.  No tester 
  18772. action is required. 
  18773.  
  18774.  
  18775. ΓòÉΓòÉΓòÉ 25.1.2.7. @FLUSH ΓòÉΓòÉΓòÉ
  18776.  
  18777.  
  18778.    @FLUSH alias_name
  18779.  
  18780. This function releases buffers and closes the log file for the current thread. 
  18781.  
  18782.  
  18783. ΓòÉΓòÉΓòÉ 25.1.2.8. SET ΓòÉΓòÉΓòÉ
  18784.  
  18785.  
  18786.    alias_name SET parameter_name=value
  18787.  
  18788. This function initializes or reinitializes the current value of the DDTT 
  18789. keyword parameter_name to the string value.  Any previous value is erased. 
  18790. Multiple keyword parameters may be set in one DDTT SET command.  Separate each 
  18791. parameter equate with white space. All keyword parameters are associated with 
  18792. the specified alias_name. 
  18793.  
  18794. A keyword parameter_name need not exist or be expected; no warning or error is 
  18795. generated if a SET command is performed on a nonexistent parameter_name.  The 
  18796. parameter_name will exist after executing the SET command. 
  18797.  
  18798. Type checking of values for parameter_names is not performed with the SET 
  18799. command, instead, type checking is done when DDTT invokes the device function. 
  18800.  
  18801.  
  18802. ΓòÉΓòÉΓòÉ 25.1.2.9. LOG ΓòÉΓòÉΓòÉ
  18803.  
  18804.  
  18805.    alias_name LOG $PROMPT="String to be logged"
  18806.  
  18807. This function generates a time-stamped entry in the log file opened at the 
  18808. previous @THREAD command.  The string specified in the $PROMPT keyword is also 
  18809. written to the DDTT thread window during test case execution.  If the $PROMPT 
  18810. keyword is not set, then a time-stamp is written to the log file. 
  18811.  
  18812.  
  18813. ΓòÉΓòÉΓòÉ 25.1.2.10. RESPONSE ΓòÉΓòÉΓòÉ
  18814.  
  18815.  
  18816.    alias_name RESPONSE $PROMPT="String to be output" $PAUSE=seconds $RESPONSE=param_kwd
  18817.  
  18818. This function displays a tester prompt string contained in the $PROMPT 
  18819. parameter keyword  and returns any tester input in the parameter keyword 
  18820. referenced by $RESPONSE.  The $PAUSE keyword can be used to specify the number 
  18821. of seconds to wait for the tester to start inputting the response.  As long as 
  18822. the tester has pressed at least one keystroke before $PAUSE seconds has 
  18823. elapsed, DDTT will wait with an infinite timeout for the remainder of the 
  18824. input.  Input is terminated by the enter key. 
  18825.  
  18826. If no value is specified for the $PROMPT keyword, this function causes test 
  18827. case execution to pause for $PAUSE seconds. If $PAUSE is not defined or 
  18828. specified as 0, then no tester input will be accepted, but the $PROMPT is 
  18829. displayed.  If $PAUSE is specified to be -1, the DDTT will wait for a tester 
  18830. response with an infinite timeout. 
  18831.  
  18832. Note:  Place the cursor in the input window before providing tester input to a 
  18833.        DDTT thread panel.  The cursor does not automatically go to the thread 
  18834.        input window. 
  18835.  
  18836.  
  18837. ΓòÉΓòÉΓòÉ 25.1.2.11. INCREMENT ΓòÉΓòÉΓòÉ
  18838.  
  18839.  
  18840.    alias_name INCREMENT
  18841.  
  18842. This function increments the DDTT $COUNT keyword parameter in alias_name by 1. 
  18843.  
  18844.  
  18845. ΓòÉΓòÉΓòÉ 25.1.2.12. DECREMENT ΓòÉΓòÉΓòÉ
  18846.  
  18847.  
  18848.    alias_name DECREMENT
  18849.  
  18850. This function decrements the DDTT $COUNT keyword parameter in alias_name by 1. 
  18851.  
  18852.  
  18853. ΓòÉΓòÉΓòÉ 25.1.2.13. ADD ΓòÉΓòÉΓòÉ
  18854.  
  18855.  
  18856.    alias_name ADD
  18857.  
  18858. This function adds the DDTT $OP1 and $OP2 keyword parameters and places the 
  18859. result into the $RESULT keyword parameter. 
  18860.  
  18861.  
  18862. ΓòÉΓòÉΓòÉ 25.1.2.14. SUB ΓòÉΓòÉΓòÉ
  18863.  
  18864.  
  18865.    alias_name SUB
  18866.  
  18867. This function subtracts the DDTT $OP2 keyword parameter from $OP1 and places 
  18868. the result into the $RESULT keyword parameter. 
  18869.  
  18870.  
  18871. ΓòÉΓòÉΓòÉ 25.1.2.15. COMPARE ΓòÉΓòÉΓòÉ
  18872.  
  18873.  
  18874.    alias_name COMPARE BUFFER1=alpha BUFFER2=beta
  18875.  
  18876. This function compares the two DDTT keywords.  It returns BUFFER COMPARE 
  18877. SUCCESS or BUFFER COMPARE FAILURE. 
  18878.  
  18879.  
  18880. ΓòÉΓòÉΓòÉ 25.1.2.16. DUMP ΓòÉΓòÉΓòÉ
  18881.  
  18882.  
  18883.    alias_name DUMP $BUFFER=alpha
  18884.  
  18885. This function will place the contents of a buffer in the log file. 
  18886.  
  18887.  
  18888. ΓòÉΓòÉΓòÉ 25.1.2.17. Named Data Buffers ΓòÉΓòÉΓòÉ
  18889.  
  18890. The DDTT test scripts can access named buffers by way of device-dependent read 
  18891. and write operations.  The named buffer is device-independent and may be used 
  18892. with different devices from within the same test script.  A named data buffer 
  18893. is initialized by referencing the named buffer as part of a device-read 
  18894. operation.  Data from a device can be read into a named data buffer and then 
  18895. written to another device or file.  Comparison of two named data buffers and 
  18896. dumping a buffer to a log file is provided.  Named buffer comparison and 
  18897. dumping operations are provided as device-independent functions. 
  18898.  
  18899.  
  18900. ΓòÉΓòÉΓòÉ 25.1.3. OS/2 API Cover Functions ΓòÉΓòÉΓòÉ
  18901.  
  18902. A set of DDTT OS/2 API-cover routines is provided.  These routines detect and 
  18903. report error conditions returned by OS/2 API calls.  Formatted error messages 
  18904. do not have to be created for each API called; however, if the API returns an 
  18905. error, it will be reported in the log file.  The provided cover APIs have the 
  18906. same name as their OS/2 counterparts but are prefaced with ddt. Likewise, the 
  18907. calling parameters are also identical, except for three additional parameters 
  18908. added after the standard parameters: 
  18909.  
  18910.    IString pszCallingRoutineName;
  18911.  
  18912.  
  18913.    / / Name  of  the  device  specific  stub  function
  18914.    / /  calling  routine .   This  IString  is  printed
  18915.    / /  as  part  of  any  error  message  generated  in
  18916.    / /  the  API  cover  routine .
  18917.     IString  pszLocationDescription ; 
  18918.  
  18919.  
  18920.    / /  Any  text  the  DLL  writer  wants  included
  18921.    / /  with  the  error  message  text  from  the  API
  18922.    / /  cover  routine .
  18923.     OutputStream &  output ; 
  18924.  
  18925.  
  18926.    / /  OutputStream  to  send  any  error  or
  18927.    / /  informational  messages  from  the  API  cover
  18928.    / /  routine .
  18929.  
  18930. Listed below is the current set of OS/2 APIs for which DDTT has implemented 
  18931. cover routines: 
  18932.  
  18933.       ddtDosOpen 
  18934.       ddtDosRead 
  18935.       ddtDosWrite 
  18936.       ddtDosDevIOCtl 
  18937.       ddtDosClose 
  18938.       ddtDosPhysicalDisk 
  18939.  
  18940.  The writer of a device-specific DLL must include ddtos2.h. 
  18941.  
  18942.  
  18943.      # include ddtos2.h
  18944.  
  18945.  Below is a sample prototype of one of the most frequently used API cover 
  18946.  routines. 
  18947.  
  18948.  
  18949.      APIRET _export ddtDosDevIOCtl(
  18950.                     HFILE hDevice,
  18951.                     ULONG category,
  18952.                     ULONG function,
  18953.                     PVOID pParams,
  18954.                     ULONG cbParmLenMax,
  18955.                     PULONG pcbParmLen,
  18956.                     PVOID pData,
  18957.                     ULONG cbDataLenMax,
  18958.                     PULONG pcbDataLen,
  18959.                     IString pszCallingRoutineName,
  18960.                     IString pszLocationDescription,
  18961.                     OutputStream& output);
  18962.  
  18963.  
  18964. ΓòÉΓòÉΓòÉ 25.1.4. Stub Utility Functions ΓòÉΓòÉΓòÉ
  18965.  
  18966. The functions and classes described in this section are intended for use in 
  18967. developing interface stub functions and are accessed through a C++ interface. 
  18968. Although these functions are written in and accessed through C++, these 
  18969. functions can be called from device stub functions that are primarily written 
  18970. in C.  The utility classes described are the following: 
  18971.  
  18972.       IString 
  18973.       Kwd_List 
  18974.       DdtOStream 
  18975.       Buffer 
  18976.  
  18977.  
  18978. ΓòÉΓòÉΓòÉ 25.1.4.1. IString Class ΓòÉΓòÉΓòÉ
  18979.  
  18980. The IString class is the most basic of the utility classes.  Items of type 
  18981. IString contain and manipulate character data.  Data types other than 
  18982. characters can be stored in a IString object, however, other types of data will 
  18983. first be converted to a character representation.  IString objects 
  18984. automatically grow and shrink as their content is manipulated and are not 
  18985. pre-allocated to a known size. 
  18986.  
  18987. The complete information on the functionality of the IString class is found in 
  18988. the ISTRING.HPP header file. This class and associated files were taken from 
  18989. what became part of a user interface class library in the IBM C++ product. The 
  18990. following is a subset of the constructor methods available to create IString 
  18991. objects: 
  18992.  
  18993.  
  18994.    IString();
  18995.    IString( const char* );
  18996.    IString( int );
  18997.    IString( const IString& );
  18998.    IString( char );
  18999.    IString( const void *pBuffer1, unsigned lenBuffer1, char padCharacter=' ' );
  19000.  
  19001. The following is a subset of the methods available for IString objects: 
  19002.  
  19003.  
  19004.    long asInt() const;
  19005.    unsigned size() const;
  19006.    unsigned length() const;
  19007.    IString subString( unsigned startPos, unsigned length=0, char padCharacter=' ' ) const;
  19008.  
  19009. The following is a subset of the overloaded operator methods available for 
  19010. IString objects: 
  19011.  
  19012.  
  19013.    char &operator[]( unsigned index );
  19014.    IString &operator=( const IString &aString );
  19015.    IString operator + ( const IString &aString ) const;
  19016.    IString operator + ( const char *pString ) const;
  19017.    friend _export IString operator +
  19018.       ( const char *pString, const IString &aString );
  19019.    IString operator - ( const IString &aString ) const;
  19020.    IString operator - ( const char *pString ) const;
  19021.    friend _export IString operator -
  19022.       ( const char *pString, const IString &aString );
  19023.    IString & operator += ( const IString &aString );
  19024.    IString & operator += ( const char *pString );
  19025.    operator char*() const;
  19026.    const char &operator[]( unsigned index )
  19027. const;\
  19028.  
  19029. The == operator prototyped below works similarly for operators: !=, <, <=, >, 
  19030. and >=. 
  19031.  
  19032.  
  19033.    friend _export Boolean operator == ( const IString &string1,
  19034.         const IString &string2 );
  19035.    friend _export Boolean operator == ( const IString &string1,
  19036.         const char *pString2 );
  19037.    friend _export Boolean operator == ( const char *pString1,
  19038.         const IString &string2 );
  19039.  
  19040. IString objects can be automatically instantiated on the stack as shown below. 
  19041. This example creates a IString object named str: 
  19042.  
  19043.  
  19044.    #include "istring.hpp"
  19045.    .
  19046.    .
  19047.    .
  19048.    IString str;
  19049.  
  19050. IString objects can also be dynamically instantiated by way of a constructor 
  19051. method. Below is an example of constructing a IString and referencing it with a 
  19052. pointer named pstr: 
  19053.  
  19054.  
  19055.    #include "istring.hpp"
  19056.    .
  19057.    .
  19058.    IString * pstr;
  19059.    .
  19060.    .
  19061.    pstr = new IString("ABC");
  19062.  
  19063. IStrings act as a repository for data given to them. All data given to an 
  19064. IString object is first converted to ASCII character data and then copied into 
  19065. the IString.  Thus, after constructing an IString, data may be deposited into 
  19066. it such as the following: 
  19067.  
  19068.  
  19069.    str = "Output from YourFunction:\n";
  19070.  
  19071. The creating and initialization of a IString object may be combined as the 
  19072. following: 
  19073.  
  19074.  
  19075.    IString str("Output from YourFunction:\n");
  19076.  
  19077. Used as above in the first example, with the = operator, any existing content 
  19078. of the IString item is entirely replaced with the new data, Output from 
  19079. YourFunction. 
  19080.  
  19081. The IString class provides additional overridden operators for manipulating the 
  19082. content of an IString object.  To concatenate data to an existing IString item, 
  19083. use the +=operator: 
  19084.  
  19085.  
  19086.    str += (IString)"Input ABC returned XZY\n";
  19087.  
  19088. or, 
  19089.  
  19090.  
  19091.    str = (IString)"Input ABC " + (IString)"returned XYZ\n";
  19092.  
  19093. The following is also an eraser or subtraction operator which deletes the first 
  19094. occurrence of the specified substring. 
  19095.  
  19096.  
  19097.    (str = str - (IString)"returned")
  19098.  
  19099. If the above three IString operations were performed in sequence, str would 
  19100. contain the following: 
  19101.  
  19102.  
  19103.    Output from YourFunction:\n
  19104.    Input ABC  XZY\n
  19105.  
  19106. Notice the use of the (IString) casting operator on the RHS operands when using 
  19107. the + operator.  This function is necessary for the + and - overridden IString 
  19108. operators in order to keep the compiler from getting confused and trying to do 
  19109. the wrong type of "addition" or "subtraction". 
  19110.  
  19111. In addition to character strings, IString items can also accept other data 
  19112. types.  IString items recognize these other data types and convert the data 
  19113. into a character string. 
  19114.  
  19115. The user must tell the IString what type of data is being input through the use 
  19116. of casting operators, for example: 
  19117.  
  19118.  
  19119.    str += (int)101;
  19120.  
  19121. The integer will be converted to its base 10, character equivalent and the 
  19122. resultant content of str would be the: 
  19123.  
  19124.  
  19125.    Output from YourFunction:\n
  19126.    Input ABC  XZY\n
  19127.    101
  19128.  
  19129. IString items can accept for input and convert the following data types: 
  19130.  
  19131.  
  19132.    (const char *)   // Deref's ptr, copies in string, %s
  19133.    (char)           // Converts to ASCII, %c
  19134.    (IString &)      // Deref's ref, copies in IString
  19135.    (int)            // Converts integer to ASCII, %d
  19136.    (void *)         // Converts pointer to integer ASCII, %p
  19137.  
  19138. One last overridden operator is the square brackets, [], which provide similar 
  19139. function as they do for normal C strings except the index origin begins with 1. 
  19140. They provide a convenient mechanism for indexed access to individual characters 
  19141. within the IString.  The index has an origin of 1.  From the above example, 
  19142. str[2] is currently equal to the character u. 
  19143.  
  19144. IString substrings can be accessed through the following subString method: 
  19145.  
  19146.  
  19147.    str = (IString)"ABCEFG";
  19148.    IString str2 = str.subString(3,3);
  19149.  
  19150. After executing these lines, str2 contains CEF. Although IString objects store 
  19151. all data internally as character data, several methods are provided to retrieve 
  19152. data types other than characters.  For example: 
  19153.  
  19154.  
  19155.    int i;
  19156.    IString str;
  19157.    .
  19158.    .
  19159.    .
  19160.    i = 5;
  19161.    str = (IString)2 + (IString)i;
  19162.    i = str.asInt();  // Returns IString as an integer
  19163.  
  19164. After this code executes, str[1] = '2', str[2] = '5', and i = 25. 
  19165.  
  19166. A length method is included that returns the current number of characters 
  19167. stored in the following IString object: 
  19168.  
  19169.  
  19170.    i = str.length();
  19171.  
  19172. results in: 
  19173.  
  19174.  
  19175.    i = 2.
  19176.  
  19177.  
  19178. ΓòÉΓòÉΓòÉ 25.1.4.2. Kwd_List Class ΓòÉΓòÉΓòÉ
  19179.  
  19180. A reference to a Kwd_List object is passed into every stub function. The 
  19181. Kwd_List object contains all the parameters for the current alias name. Through 
  19182. operations on the Kwd_List object, values of parameters may be set or retrieved 
  19183. from the current alias the test script.  By referencing the same Kwd_List 
  19184. parameter, two or more stub functions can share a parameter.  Each Kwd_List is 
  19185. a List object.  Each item "on the" Kwd_List is also an object and consists of a 
  19186. Keyword and a Value.  Both Keyword and Value are IString objects. Think of the 
  19187. Keyword as that parameter's "ASCII handle" and Value as the current content or 
  19188. value of that parameter.  The DDTT creates an entry for each parameter keyword 
  19189. specified in the associated grammar file for the current DDTT alias.  Thus, the 
  19190. stub function's view of the Kwd_List object is primarily that of accessing and 
  19191. updating the existing entries in the Kwd_List. 
  19192.  
  19193. The following constructor method is available to create Kwd_List objects: 
  19194.  
  19195.  
  19196.    Kwd_List();            // Creates an empty list
  19197.  
  19198. The following methods are available for Kwd_List objects: 
  19199.  
  19200.  
  19201.    // Add or update a keyword-value pair in the  Kwd_List
  19202.    void set(IString kwd, IString value);
  19203.  
  19204.    // Remove a keyword-value pair from the Kwd_List
  19205.    void unset(IString kwd);
  19206.  
  19207.    // Return an sscanf'd int corresponding to a keyword
  19208.    long int getInt(IString kwd);
  19209.  
  19210.    // Return an sscanf'd pointer corresponding to a keyword
  19211.    void * getPtr(IString kwd);
  19212.  
  19213.    // Return true if the keyword is known
  19214.    BOOL isKeyword(IString kwd);
  19215.  
  19216.    // Return the number of entries in the Kwd_List
  19217.    int nKey();
  19218.  
  19219.    // Return a pointer corresponding to the FILES keyword
  19220.    FileInfo * files();
  19221.  
  19222. The following overloaded operator methods are available for Kwd_List objects: 
  19223.  
  19224.  
  19225.    // Return the corresponding value to a keyword
  19226.    IString operator[](IString kwd);
  19227.  
  19228.    // Numerically indexes the list, return  keyword-value
  19229.    void operator()(int inx, IString& kwd, IString& value);
  19230.  
  19231. Below is a declaration of a sample stub function: 
  19232.  
  19233.  
  19234.    #include "kwdlist.h"
  19235.    .
  19236.    .
  19237.    APIRET SampleStubFtn( Kwd_List ¶m )
  19238.    { // code here };
  19239.  
  19240. The only parameter to all stub functions must be a Kwd_List object reference. 
  19241. Assume the grammar file specifies the following parameter keywords: 
  19242.  
  19243.       DEVICENAME 
  19244.       READTRYS 
  19245.       BUFFERCOUNT 
  19246.       OUTPUTBUFFER 
  19247.  
  19248.  Also assume that input kwd_list reference is named param, as in the above 
  19249.  example stub declaration. 
  19250.  
  19251.  To access DEVICENAME as an IString use the overloaded operator:  [] 
  19252.  
  19253.  
  19254.      IString name;
  19255.      .
  19256.      .
  19257.      .
  19258.      name = param["DEVICENAME"];
  19259.  
  19260.  The overloaded operator [] expects an IString object as input, (an input 
  19261.  variable of type const char * works also, because const char * can convert 
  19262.  themselves to IString objects). The [] operator then automatically converts to 
  19263.  IString, performs the lookup in the Kwd_List, param, and returns a copy of the 
  19264.  value associated with the parameter keyword. A stub function can change the 
  19265.  current Value of an item on the input Kwd_List by way of the set method. 
  19266.  
  19267.  
  19268. ΓòÉΓòÉΓòÉ 25.1.4.3. READTRYS ΓòÉΓòÉΓòÉ
  19269.  
  19270.  
  19271.    param.set("READTRYS", (long)6);
  19272.  
  19273. This function sets the current value of the READTRYS parameter keyword to 6. 
  19274. This procedure will overwrite any value set in the test case script file to 
  19275. this point in the script file's execution. 
  19276.  
  19277. Keyword parameter values can be retrieved as long integers and pointers 
  19278. respectively, by way of the getInt getPtr methods: 
  19279.  
  19280.  
  19281.    long loop_cnt;
  19282.    char * huge_buf;
  19283.    .
  19284.    .
  19285.    .
  19286.    loop_cnt = param.getInt("READTRYS");
  19287.    huge_buf = param.getPtr("OUTPUTBUFFER");
  19288.  
  19289. The unset method has a more permanent effect on the input parameter's keyword 
  19290. param.unset("READTRYS");. 
  19291.  
  19292. This unset operation removes READTRYS from Kwd_List. After executing this 
  19293. method, any future reference to the READTRYS parameter keyword within the 
  19294. execution of the current DDTT alias would return an empty IString object.  The 
  19295. unset method drops the entire Keyword and Value pair from the input Kwd_List. 
  19296. As such, the unset method should be used with caution! 
  19297.  
  19298. The isKeyword method tests the Kwd_List object to determine if the specified 
  19299. parameter keyword is currently in the Kwd_List object. 
  19300.  
  19301.  
  19302.    int test;
  19303.    .
  19304.    .
  19305.    // This will return TRUE
  19306.    test = param.isKeyword("READTRYS");
  19307.    // This will return FALSE.
  19308.    test = param.isKeyword("RETRYCNT");
  19309.  
  19310. Returns TRUE if the keyword is on the list, FALSE otherwise. 
  19311.  
  19312.  
  19313.    int kwd_count;
  19314.    .
  19315.    .
  19316.    kwd_count = param.nKey();
  19317.  
  19318. Returns the number of keywords currently in the Kwd_List object. 
  19319.  
  19320. By convention, keywords that begin with a "$" character are built-in, automatic 
  19321. variables.  Existing  #define macros in the DDTKWDS.H file ensure proper error 
  19322. checking by the compiler.  For example: 
  19323.  
  19324.  
  19325.    // Pointer to associated FileInfo object
  19326.    #define FILES_KEY   "$FILES"
  19327.    // Pointer to associated BufferList object
  19328.    #define BUFFER_LIST "$BUFFERLIST"
  19329.    // Current DO, FOR loop index value
  19330.    #define COUNTER     "$I"
  19331.  
  19332. Access to the protected log file output stream is obtained through the $FILES 
  19333. parameter keyword.  The required C++ syntax is relatively complicated; 
  19334. therefore, a special Kwd_List method, files(), is provided to simplify access 
  19335. to the standard logging output stream 
  19336.  
  19337.  
  19338.    IString s1;
  19339.    .
  19340.    .
  19341.    param.files()->out1<<s1;
  19342.  
  19343.  
  19344. ΓòÉΓòÉΓòÉ 25.1.4.4. DdtOStream Class ΓòÉΓòÉΓòÉ
  19345.  
  19346. The DdtOStream Class is a subclass of OutputStream. DdtOStream objects provide 
  19347. a mechanism for sending one or more lines of output data to a log file used 
  19348. simultaneously by multiple threads.  The output data sent to an OutputStream or 
  19349. DdtOStream is kept contiguous within the log file.  Colliding requests wait for 
  19350. the current request to complete before their output is sent to the file. 
  19351.  
  19352. Although it is unlikely a stub writer would create new DdtOStream objects, the 
  19353. following constructor method is available to create DdtOStream objects: 
  19354.  
  19355.  
  19356.    DdtOStream(IString &filename);
  19357.  
  19358. The following method is available for DdtOStream objects: 
  19359.  
  19360.  
  19361.    // Set or reset the automatic thread identifier prefix
  19362.    void settid(IString),
  19363.  
  19364. The following overloaded operator methods are available for Kwd_List objects: 
  19365.  
  19366.  
  19367.    // Send the IString object to the DdtOStream
  19368.    void operator<<(IString& str);
  19369.    // Send the Buffer object to the DdtOStream
  19370.    void operator<<(Buffer& buf);
  19371.  
  19372. The bit-shift operator is overloaded to "look like" the redirection operator 
  19373. and is used to send IStrings to the output log: 
  19374.  
  19375.  
  19376.    #include "threadio.h"
  19377.    .
  19378.    .
  19379.    param.files()->out1<<(IString)"Hello world!";
  19380.  
  19381. The only difference between a DdtOStream and an OutputStream is that each 
  19382. output to a DdtOStream is precluded with the current Thread Identification. The 
  19383. current threadID is set for DdtOStream when DDTT executes an @THREAD command. 
  19384. The current ThreadID can be changed through the settid method: out1.settid("New 
  19385. thread name");. 
  19386.  
  19387.  
  19388. ΓòÉΓòÉΓòÉ 25.1.4.5. Buffer Class ΓòÉΓòÉΓòÉ
  19389.  
  19390. The Buffer class provides a memory buffer object that can be used to contain 
  19391. blocks of data read and written to devices. Buffer objects must always be 
  19392. created by the stub writer.  If they are attached to the Kwd_List by way of the 
  19393. BUFFER_LIST keyword, then Buffer object destruction will occur automatically by 
  19394. DDTT. 
  19395.  
  19396. A test script writer references a buffer name in a test script such as in the 
  19397. DEV_ALIAS READ_SECTOR BUFFER1=ALPHA. script command. 
  19398.  
  19399. ALPHA is only the specified name of the buffer, not the actual Buffer object. 
  19400. The function stub must create the actual Buffer object and associate the name, 
  19401. ALPHA, with the created Buffer object.  The function stub uses the DDTT 
  19402. keyword, BUFFER1, to access the Buffer's specified name, ALPHA. 
  19403.  
  19404. The following constructor method is available for Buffer objects: 
  19405.  
  19406.  
  19407.    Buffer(const char * name, size_t size, void * = NULL);
  19408.  
  19409. The following methods are available for operating on Buffer objects: 
  19410.  
  19411.  
  19412.    // Return a pointer to the Buffer's data
  19413.    PVOID buffer();
  19414.    void reallocate(size_t size);
  19415.    int compare(Buffer&, size_t);
  19416.    PCHAR kwd();
  19417.    size_t size();
  19418.  
  19419. The following overridden operator methods are available for operating on Buffer 
  19420. objects: 
  19421.  
  19422.  
  19423.    // Replace RHS Buffer with a copy of LHS Buffer
  19424.    Buffer& operator=(Buffer& buf2);
  19425.    // Compare Buffer objects
  19426.    BOOL operator==(Buffer&);
  19427.  
  19428. The #include "buffer.h" include statement must be at the top your C++ stub 
  19429. module in order to use Buffer objects. The following are some examples showing 
  19430. usage of the C++ methods provided to operate on Buffer objects. 
  19431.  
  19432.  
  19433.    size_t size = 2048;
  19434.    Buffer * buf;
  19435.    .
  19436.    .
  19437.    buf = new Buffer( param["BUF_NAME"], size,
  19438.                  param.getPtr(BUFFER_LIST));
  19439.  
  19440. The above statement constructs a new Buffer object with memory block of 
  19441. length-size bytes associated with the test script keyword BUF_NAME.  The 
  19442. constructor also adds the new buffer to a BufferList attached to the Kwd_List, 
  19443. by the keyword BUFFER_LIST.  By specifying the last parameter in the 
  19444. constructor, a BufferList pointer, DDTT, will automatically destroy the Buffer 
  19445. object when the current thread terminates. The BufferList parameter can be left 
  19446. out or specified as NULL, in which case, the new Buffer object is not attached 
  19447. to the Kwd_List. However, the user is then responsible for deleting the Buffer 
  19448. object when it is no longer required by the stub functions. 
  19449.  
  19450. The delete buf; function destroys the Buffer object and deallocates its memory. 
  19451. For example: 
  19452.  
  19453.  
  19454.    Buffer buf;
  19455.    void * ptr;
  19456.    .
  19457.    .
  19458.    ptr = buf.buffer();
  19459.  
  19460. The delete buf; function returns a pointer to the buffer's internal block of 
  19461. memory.  For example: 
  19462.  
  19463.  
  19464.    void * datap;
  19465.    .
  19466.    .
  19467.    datap = (param.getPtr(param["BUFFER"]))->buffer();
  19468.  
  19469. Buffer objects can be easily "dumped" to the standard DDTT log file as: 
  19470.  
  19471.  
  19472.    Buffer buf1;
  19473.    .
  19474.    .
  19475.    param.files()->out1<<buf1;
  19476.  
  19477. The content of Buffer object buf1 is formatted in hexadecimal ASCII and is sent 
  19478. to the standard log file. This file eturns a pointer to the Buffer object's 
  19479. memory block. The Buffer object is referenced by the keyword parameter BUFFER 
  19480. in the test script. 
  19481.  
  19482.  
  19483.    size = 4096;
  19484.    buf.reallocate(size);
  19485.  
  19486. This function re-sizes the buffer to "size."  The data in the old block is 
  19487. lost. 
  19488.  
  19489.  
  19490.    Buffer buf, buf2;
  19491.    .
  19492.    .
  19493.    buf2 = buf;
  19494.  
  19495. The = operator is overridden to copy the block from one Buffer to another, 
  19496. re-sizing the destination Buffer if necessary. 
  19497.  
  19498.  
  19499.    if( buf == buf2 )...
  19500.  
  19501. The == operator is overridden to returns True if two Buffers are identical, 
  19502. otherwise. the == operator is overridden to returns False. 
  19503.  
  19504.  
  19505.    if( buf.compare(buf2, (size_t)1024) );
  19506.  
  19507. This function compares buf to buf2 for the specified number of bytes, or fewer 
  19508. bytes if one buffer is smaller than the specified number.  It also returns the 
  19509. value from memcmp().  (0 if the buffers are equal, and so on.) 
  19510.  
  19511.  
  19512.    size_t size2;
  19513.    .
  19514.    .
  19515.    size2 = buf.size();
  19516.  
  19517. This function returns the size of the buffer in bytes. 
  19518.  
  19519.  
  19520.    Buffer * bufp;
  19521.    .
  19522.    .
  19523.    bufp = new Buffer("TEMP_BUF", (size_t)10000, NULL);
  19524.    .
  19525.    .
  19526.    bufp->Destroy();
  19527.  
  19528. This function deletes Buffer pointed to by bufp. 
  19529.  
  19530.  
  19531. ΓòÉΓòÉΓòÉ 25.1.5. Adding New Grammar Specifications ΓòÉΓòÉΓòÉ
  19532.  
  19533. A grammar file is a flat text file that specifies the stub functions available 
  19534. for a particular DDTT test grammar.  Within DDTT, the scope of a grammar is the 
  19535. alias.  Each alias specified in a test script associates a single grammar with 
  19536. the alias. For example: 
  19537.  
  19538.  
  19539.    @NEWALIAS ABC ABC_GRAM.GRA
  19540.  
  19541. The above line from a test script file creates the ABC alias and associates the 
  19542. grammar specified in the file, ABC_GRAM.GRA , with the ABC alias.  All further 
  19543. references to functions called within the ABC alias will use the ABC_GRAM.GRA 
  19544. grammar file to resolve the DDTT stub function entry point. 
  19545.  
  19546. Every DDTT callable stub function has a corresponding entry in a grammar file. 
  19547. The grammar file provides the mapping between the function name as it is 
  19548. referenced in the test script file and the actual entry point in a DDTT stub 
  19549. function DLL file. See Sample Grammar Specification for a sample DDTT grammar 
  19550. file. 
  19551.  
  19552.  
  19553. ΓòÉΓòÉΓòÉ 25.1.5.1. Specifying Comments ΓòÉΓòÉΓòÉ
  19554.  
  19555. The DDTT grammar files should serve as the primary mechanism for communicating 
  19556. function and parameter details to the test script writer.  As such, use of 
  19557. comments is encouraged. All lines with an (*) as the first character specifies 
  19558. a comment line in the DDTT grammar file and its entire content is ignored by 
  19559. the parser. 
  19560.  
  19561.  
  19562. * this is a comment
  19563.  
  19564.  
  19565. ΓòÉΓòÉΓòÉ 25.1.5.2. Stub Function Entry Specification ΓòÉΓòÉΓòÉ
  19566.  
  19567. Each DDTT callable stub function is defined by a Stub Function Entry 
  19568. Specification.  The following is syntax for a grammar file Stub Function Entry 
  19569. Specification: 
  19570.  
  19571.  
  19572.    func_kwd $DLL=dll_name                     \
  19573.             $FUNC=_func_name                  \
  19574.      [param_kwd=param_type]...                \
  19575.      [$EXPECTED [param_kwd=param_type]...]
  19576.  
  19577. The complier name of the stub function's DLL entry point is 
  19578. @func_name$qr8Kwd_List. The name shown here is specific to Borland's OS/2 
  19579. Version 1.5 C++ compiler.  The function, func_name, is as it appears in the C++ 
  19580. function stub source. Use the prefix (@) and suffix $qr8Kwd_List for all stub 
  19581. functions called by the DDTT. Where param_type is defined as one of the 
  19582. following parameter type tokens: 
  19583.  
  19584. param_type=NUM|ALPHA|ALNUM|STRING
  19585. Param_type token definitions:
  19586.     NUM   - All characters in this parameter must be numeric,
  19587.          [0..9, +, -, .]
  19588.     ALPHA  - All characters in this parameter must be alphabetic,
  19589.          [a..z, A..Z]
  19590.     ALNUM  - All characters in this parameter must be alphabetic or
  19591.          numeric,[a..z, A..Z, 0..9, +, -, .]
  19592.     STRING - Any character string or nothing (null string) may be
  19593.          specified.  This is the default param_type.
  19594.  
  19595. Each complete Stub Function Specification must be on a single logical line. 
  19596. Actual lines in the grammar file may be extended by placing backward slash, (\) 
  19597. as the last non-blank character in the line. 
  19598.  
  19599. For OS/2, the dll_name must be a valid DDTT DLL file with the location 
  19600. specified in LIBPATH.  For DOS, $DLL is still used to determine which set of 
  19601. functions the stub is called from; it does not refer to a DLL name, but is 
  19602. prefaced with the underscore character,(_). The name of the stub function, 
  19603. func_kwd, is used in the test case script file.  All func_kwds must be unique 
  19604. within a grammar file.  The same param_kwd may be used for different functions. 
  19605. If the same param_kwd is used, then only one parameter keyword is created and 
  19606. the value of this parameter keyword is used for all functions specifying the 
  19607. same param_kwd. One or more param_kwds with param_type may be specified to pass 
  19608. data into the DDTT stub function.  Param_kwds defined before the $EXPECTED 
  19609. keyword in the Stub Function Entry Specification are required. At runtime, 
  19610. DDTT's parser will not call a function specified in the test script unless all 
  19611. required param_kwds are defined and of the correct type.  If the user attempts 
  19612. to call a stub function with incorrectly specified parameters, DDTT prints an 
  19613. error message identifying which function is not being called and what 
  19614. parameter(s) are incorrect. 
  19615.  
  19616. If a script file calls a stub function without specifying EV_ or ET_ values for 
  19617. all $EXPECTED parameters then DDTT calls the function, checks any specified 
  19618. parameters and also prints a warning message to the log file specifying which 
  19619. expected parameters are missing. 
  19620.  
  19621.  
  19622. ΓòÉΓòÉΓòÉ 25.1.5.3. Automatic Expected Value Checking ΓòÉΓòÉΓòÉ
  19623.  
  19624. If the Stub Function includes a $EXPECTED keyword then the list of param_kwd(s) 
  19625. which follow will be automatically verified by DDTT.  Use of the $EXPECTED 
  19626. param_kwd list permits the user to specify expected results in the test case 
  19627. script file.  The DDTT will automatically compare the specified expected 
  19628. results with the param_kwd's actual resultant value.  If the results match, 
  19629. then no log message is produced.  If the value or type fails to compare then an 
  19630. ERROR message is logged which show the actual and expected results. Each 
  19631. param_kwd specified in the grammar file's $EXPECTED list may contain a 
  19632. param_type specifier.  It is not necessary to specify a param_type if the 
  19633. param_kwd is a required input parameter and as such has already been specified 
  19634. in the Stub Function Specification.  If the parameter is not a required input 
  19635. then the param_type specifier is required. The test case writer may verify the 
  19636. expected results two ways: 
  19637.  
  19638.    o  Prefix: ET_ - Verify result has the same param_type, NUM, ALNUM, ALPHA, 
  19639.       or STRING as the associated param_kwd. 
  19640.  
  19641.    o  Prefix: EV_ - Verify the result matches the expected value of the 
  19642.       associated param_kwd. 
  19643.  
  19644.  The test case script writer specifies which verification method by placing 
  19645.  either an "EV_" or "ET_" prefix on param_kwd to be verified. in the test case 
  19646.  script file.  Consider the following example grammar and test script files: 
  19647.  
  19648.  
  19649.      *
  19650.      * Example grammar entry, video.gra
  19651.      *
  19652.      @import global.gra
  19653.  
  19654.      read_video  $DLL=vidotest               \
  19655.            $FUNC=@MMVID_GETCLIP$qr8Kwd_List  \
  19656.            MODE=ALNUM                        \
  19657.            START_FRAME=NUM                   \
  19658.            FRAME_COUNT=NUM                   \
  19659.            $EXPECTED                         \
  19660.               NEXT_FRAME=NUM                 \
  19661.               ACT_FRAME_CNT=NUM              \
  19662.               FRAME_TYPE=ALNUM
  19663.      *
  19664.      * Example Test Case Script
  19665.      *
  19666.      @newalias alias_1 video.gra
  19667.      alias_1 read_video                      \
  19668.            MODE=UNCOMPRESSED                 \
  19669.            START_FRAME=100                   \
  19670.            FRAME_COUNT=30                    \
  19671.            EV_NEXT_FRAME=131                 \
  19672.            EV_ACT_FRAME_CNT=30               \
  19673.            ET_FRAME_TYPE
  19674.  
  19675.  The above example grammar defines the read_video function, Before this 
  19676.  function can be invoked, the test script must have previously defined the 
  19677.  input parameters: MODE, START_FRAME, and FRAME_COUNT. The script writer can 
  19678.  also provide definitions for expected values, "EV_", or specify that DDTT 
  19679.  verify the param_types with the "ET_" prefix for the returned parameters: 
  19680.  NEXT_FRAME,  ACT_FRAME_CNT, and FRAME_TYPE. 
  19681.  
  19682.  If the script writer does not define expected values with the "EV_" or "ET_" 
  19683.  prefix for all of the param_kwds listed under $EXPECTED, then DDTT will by 
  19684.  default issue a warning that no parameter checking is taking place for the 
  19685.  missing param_kwd(s). 
  19686.  
  19687.  After executing the above example, DDTT verifies NEXT_FRAME has the value of 
  19688.  131, ACT_FRAME_CNT has the value of 30, and FRAME_TYPE returns an 
  19689.  alpha-numeric string.  DDTT logs an error message if any of these conditions 
  19690.  are not met. 
  19691.  
  19692.  The script writer may turn off all parameter verification by setting the 
  19693.  param_kwd $EXPECTED to "off". Parameter verification may be re-activated by 
  19694.  setting it back to "ON". 
  19695.  
  19696.      alias_1 set $EXPECTED=OFF
  19697.      *
  19698.      *   Parameter Verification is now disabled.
  19699.      ...
  19700.      alias_1 set $EXPECTED=ON
  19701.      *
  19702.      *   Parameter Verification is now re-enabled.
  19703.      ...
  19704.  
  19705.  API returns may be automatically checked for expected non-zero returns by 
  19706.  capturing the APIRET from the DDTT API cover routines and setting the value 
  19707.  into a DDTT keyword variable such as: APIRET_01.  Extend the associated 
  19708.  grammar specification for the function under test as: 
  19709.  
  19710.  
  19711.         $EXPECTED                   \
  19712.            APIRET_00=NUM
  19713.  
  19714.  Test cases which call a function instrumented as such will be required to 
  19715.  specify an expected value for APIRET_00 and if it fails to match, DDTT will 
  19716.  automatically send an error message to the log file. 
  19717.  
  19718.  
  19719. ΓòÉΓòÉΓòÉ 25.2. Sample Grammar Specification ΓòÉΓòÉΓòÉ
  19720.  
  19721.  
  19722.    *
  19723.    * Sample grammar file for a set of DDTT stub
  19724.    * functions.
  19725.    *
  19726.    ********************************************
  19727.  
  19728.    * Empty lines are ignored.
  19729.  
  19730.    * The @IMPORT function imports the contents
  19731.    * of the specified filename into this file.
  19732.    * Global.gra is needed to define generic
  19733.    * DDTT test case script functions such as:
  19734.    * set, log, and loop
  19735.    @IMPORT \PATH\GLOBAL.GRA
  19736.  
  19737.    ********************************************
  19738.    * CD_OPEN -
  19739.    * Open a channel to the CDROM device.
  19740.    *
  19741.    * Required Input Parameters:
  19742.    *    DEVICENAME   - Name of the CDROM drive
  19743.    *                   to open, i.e., E:.
  19744.    *
  19745.    * Output Parameters:
  19746.    *    DRIVEHANDLE  - Open Drive handle to
  19747.    *                   CDROM device.
  19748.    *
  19749.    ********************************************
  19750.    CD_OPEN  $DLL=DDTCDROM                     \
  19751.             $FUNC=_cdrom_devopen              \
  19752.             DEVICENAME=STRING
  19753.    ********************************************
  19754.    * CD_CLOSE -
  19755.    * Close channel to the CDROM device.
  19756.    *
  19757.    * Required Input Parameters:
  19758.    *    DRIVEHANDLE  - Open Drive handle to
  19759.    *                   CDROM device.
  19760.    *
  19761.    * Output Parameters:
  19762.    *    -none-
  19763.    *
  19764.    ********************************************
  19765.    CD_CLOSE $DLL=DDTCDROM                     \
  19766.             $FUNC=_cdrom_devclose             \
  19767.             DRIVEHANDLE=NUM
  19768.    ********************************************
  19769.    * CD_EJECT -
  19770.    * Eject disk from the CDROM drive.
  19771.    *
  19772.    * Required Input Parameters:
  19773.    *    DRIVEHANDLE  - Open Drive handle to
  19774.    *                   CDROM device.
  19775.    *
  19776.    * Output Parameters:
  19777.    *    -none-
  19778.    *
  19779.    ********************************************
  19780.    CD_EJECT $DLL=DDTCDROM                     \
  19781.             $FUNC=_cdrom_eject                \
  19782.             DRIVEHANDLE=NUM
  19783.    ********************************************
  19784.    * CD_PLAYAUDIO -
  19785.    * Play a selected audio track from the audio
  19786.    * CDROM.  The starting location may be
  19787.    * specified in either Logical Block format
  19788.    * or Redbook (time offset) format.
  19789.    *
  19790.    * Required Input Parameters:
  19791.    *    DRIVEHANDLE  - Open Drive handle to
  19792.    *                   CDROM device.
  19793.    *    ADDRESSMODE  - Addressing mode, one of:
  19794.    *                   LOGICAL_BLOCK
  19795.    *                   REDBOOK -
  19796.    *                    minutes/seconds/frames
  19797.    *    START_SECTOR - First block to play
  19798.    *    END_SECTOR   - Last block to play
  19799.    ********************************************
  19800.    CD_PLAYAUDIO                               \
  19801.       $DLL=DDTCDROM                           \
  19802.       $FUNC=_cdrom_playaudio                  \
  19803.       DRIVEHANDLE=NUM                         \
  19804.       ADDRESSMODE=STRING                      \
  19805.       START_SECTOR=ALNUM                      \
  19806.       END_SECTOR=ALNUM
  19807.  
  19808.  
  19809. ΓòÉΓòÉΓòÉ 25.2.1. Sample Test Script ΓòÉΓòÉΓòÉ
  19810.  
  19811.  
  19812.    * This is an example script file. It
  19813.    * includes most commands supported by the
  19814.    * parser.
  19815.    ********************************************
  19816.    * @thread takes a filename as a parameter
  19817.    * to open as * the thread log file
  19818.    @thread test
  19819.    ********************************************
  19820.    * @log accepts a string to be logged to the
  19821.    * log file specified in the immediately
  19822.    * preceding @thread command.  All entries to
  19823.    * the log file are preceded with the current
  19824.    * date/time stamp taken from the system
  19825.    * real-time clock.
  19826.    @log "Beginning of thread 1"
  19827.    ********************************************
  19828.    * @newalias takes a unique alias name and
  19829.    * name of device grammar file to be opened
  19830.    * for input
  19831.    @newalias mycd cdrom.scr
  19832.    ********************************************
  19833.    * @import takes a filename as a parameter.
  19834.    * The filename is a script filename which
  19835.    * contains script commands that follow
  19836.    * conventions described in this file.
  19837.    @import filename
  19838.    ********************************************
  19839.    * example device directive lines.  The first
  19840.    * token is a previously opened @newalias
  19841.    * name, 2nd token is device specific
  19842.    * function keyword as declared in the device
  19843.    * grammar file.
  19844.    mycd CD_OPEN DEVICENAME=G:
  19845.    mycd CD_READFILE
  19846.    mycd cd_close
  19847.    mycd cd_open
  19848.    ********************************************
  19849.    * The following commands/functions are
  19850.    * available to any grammar that imports
  19851.    * global.gra
  19852.    * For all global functions the first
  19853.    * token is a previously-opened alias name,
  19854.    * 2nd token is a generic function name.
  19855.    mycd set param_kwd=value
  19856.    mycd message "some string to be prompted"
  19857.       $pause=5
  19858.       $response=MESSAGE_1
  19859.    mycd log "Send this text to the log file."
  19860.  
  19861.  
  19862. ΓòÉΓòÉΓòÉ 25.2.2. Sample Function Stub Source ΓòÉΓòÉΓòÉ
  19863.  
  19864.  
  19865.    * Name: APIRET _export sample_stub(Kwd_List param)
  19866.    *
  19867.    * Description: Sample stub function.
  19868.    *
  19869.    * Parameters:  Kwd_List &.
  19870.    *
  19871.    * Returns:     APIRET.
  19872.    *
  19873.    * Cautions:
  19874.    *
  19875.    *******************************************/
  19876.    APIRET _export sample_stub(Kwd_List & param)
  19877.    {
  19878.      APIRET apiret;
  19879.      struct
  19880.      {
  19881.        BYTE one;
  19882.        BYTE two;
  19883.        BYTE three;
  19884.      } paramblock;
  19885.  
  19886.      ULONG ulParamsize = sizeof(paramblock);
  19887.      paramblock.one = param.getInt("ONE");
  19888.      paramblock.two = param["TWO"];
  19889.      paramblock.three = param.getPtr("THREE");
  19890.      struct
  19891.      {
  19892.        BYTE  data1;
  19893.        BYTE  data2;
  19894.      } data;
  19895.  
  19896.      ULONG  ulDataSize = sizeof(data);
  19897.      HFILE  hfDrvHandle =
  19898.             param.getInt("DRIVEHANDLE");
  19899.  
  19900.      apiret = ddtDosDevIOCtl(hfDrvHandle, 0x99,
  19901.               0x99,
  19902.               ¶mblock, ulParamsize,
  19903.               &ulParamsize,
  19904.               &data, ulDataSize, &ulDataSize,
  19905.               "Sample Stub",
  19906.               "only call",
  19907.               param.files()->out1);
  19908.      // Let DDTT check the APIRET
  19909.      param.set("APIRET_00", (IString)apiret );
  19910.      if (apiret == 0)
  19911.      {
  19912.        IString s1;
  19913.        s1 = "The result is:";
  19914.        s1 += "\n\tdata1 :";
  19915.        s1 += (LONG)data.data1;
  19916.        s1 += "\n\tdata2 :";
  19917.        s1 += (LONG)data.data2;
  19918.      }
  19919.      return 0;
  19920.    }
  19921.  
  19922.  
  19923. ΓòÉΓòÉΓòÉ 26. Glossary ΓòÉΓòÉΓòÉ
  19924.  
  19925. This glossary contains terms and definitions that are, for the most part, used 
  19926. for OS/2 products. This is not a complete dictionary of computer terms. 
  19927.  
  19928.  
  19929. ΓòÉΓòÉΓòÉ 26.1. Introduction ΓòÉΓòÉΓòÉ
  19930.  
  19931. This glossary defines many of the terms used in this book. It includes terms 
  19932. and definitions from the IBM Dictionary of Computing, as well as terms specific 
  19933. to the Presentation Manager, but it is not a complete glossary for OS/2. 
  19934.  
  19935. Other primary sources for these definitions are: 
  19936.  
  19937.    o  The American National Standard Dictionary for Information Systems, ANSI 
  19938.       X3.172-1990, copyrighted 1990 by the American National Standards 
  19939.       Institute, 11 West 42nd Street, New York, New York 10036. These 
  19940.       definitions are identified by the symbol (A) after the definition. 
  19941.  
  19942.    o  The Information Technology Vocabulary, developed by Subcommittee 1, Joint 
  19943.       Technical Committee 1, of the International Organization for 
  19944.       Standardization and the International Electrotechnical Commission 
  19945.       (ISO/IEC JTC1/SC1). Definitions of published parts of this vocabulary are 
  19946.       identified by the symbol (I) after the definition; definitions taken from 
  19947.       draft international standards, committee drafts, and working papers being 
  19948.       developed by ISO/IEC JTC1/SC1 are identified by the symbol (T) after the 
  19949.       definition, indicating that final agreement has not yet been reached 
  19950.       among the participating National Bodies of SC1. 
  19951.  
  19952.  
  19953. ΓòÉΓòÉΓòÉ 26.2. Glossary Listing ΓòÉΓòÉΓòÉ
  19954.  
  19955. Select a starting letter of glossary terms: 
  19956.  
  19957.  A    N 
  19958.  B    O 
  19959.  C    P 
  19960.  D    Q 
  19961.  E    R 
  19962.  F    S 
  19963.  G    T 
  19964.  H    U 
  19965.  I    V 
  19966.  J    W 
  19967.  K    X 
  19968.  L    Y 
  19969.  M    Z 
  19970.  
  19971.  
  19972. ΓòÉΓòÉΓòÉ <hidden> Glossary - A ΓòÉΓòÉΓòÉ
  19973.  
  19974.  A 
  19975.  
  19976.  ABIOS - Advanced BIOS. See BIOS. 
  19977.  
  19978.  accumulator - (1) A register in which one operand of an operation can be 
  19979.     stored and subsequently replaced by the result of that operation. (T)  (2) 
  19980.     In the IBM 3800 Printing Subsystem Models 3 and 8, a feature that supplies 
  19981.     a separate storage that can hold data in raster form. It can be used either 
  19982.     for composing a sheet of data that combines a large amount of variable and 
  19983.     constant data, or for storing an electronic overlay in raster form that 
  19984.     will be merged with variable data as the sheet is printed. 
  19985.  
  19986.  access permission - All access rights a user has regarding an object. (I) 
  19987.  
  19988.  adapter - A piece of hardware that modifies the system unit to allow it to 
  19989.     operate in a particular way, often by connecting the system unit to an 
  19990.     external device such as a video monitor. 
  19991.  
  19992.  adapter device driver - A device driver that provides hardware-dependent 
  19993.     services for an OEM adapter. 
  19994.  
  19995.  address space -  (1) The range of addresses available to a program. (A)  (2) 
  19996.     The area of virtual storage available for a particular job. 
  19997.  
  19998.  all points addressable (APA) - In computer graphics, pertaining to the ability 
  19999.     to address and display or not display each picture element (pel) on a 
  20000.     display surface. 
  20001.  
  20002.  anchor block - An area of the internal resources of OS/2 Presentation Manager 
  20003.     which is allocated to a process or thread that calls WinInitialize. 
  20004.  
  20005.  anchor point - The position or choice from which selection or deselection is 
  20006.     extended. 
  20007.  
  20008.  APA - All points addressable. 
  20009.  
  20010.  API - Application programming interface. 
  20011.  
  20012.  application programming interface (API) - A functional interface supplied by 
  20013.     the operating system, or by a separately-orderable licensed program, that 
  20014.     allows an application program written in a high-level language to use 
  20015.     specific data or functions of the operating system or the licensed program. 
  20016.  
  20017.  archive flag - In the OS/2 operating system, a flag of files and directories 
  20018.     that the operating system uses to determine which files are new or 
  20019.     modified. Files with this flag are included when a backup copy is made or 
  20020.     when all the files are restored on a hard disk. See flag. 
  20021.  
  20022.  area - In computer graphics, a filled shape such as a solid rectangle. 
  20023.  
  20024.  ASCIIZ - A string of ASCII characters that is terminated with a byte 
  20025.     containing the value 0. 
  20026.  
  20027.  aspect ratio - (1) The ratio of the height of a rectangle to its width. A 
  20028.     rectangle of width 10 inches and height 5 inches has an aspect ratio of 
  20029.     10/5 or 2.  (2) On a display screen, the ratio of the maximum length of a 
  20030.     display line to the maximum length of a display column. 
  20031.  
  20032.  asynchronous (ASYNC) - (1) Pertaining to two or more processes that do not 
  20033.     depend upon the occurrence of specific events such as common timing 
  20034.     signals. (T)  (2) Without regular time relationship; unexpected or 
  20035.     unpredictable with respect to the execution of program instructions. 
  20036.  
  20037.  atom - A constant that represents a string. Once a string has been defined as 
  20038.     an atom, the atom can be used in place of the string to save space. Strings 
  20039.     are associated with their respective atoms in an atom table. See integer 
  20040.     atom. 
  20041.  
  20042.  atom table - A table used to associate atoms with the strings that they 
  20043.     represent. This table contains the mechanism by which the presence of a 
  20044.     string can be verified. 
  20045.  
  20046.  AVIO - Advanced Video Input/Output 
  20047.  
  20048.  
  20049. ΓòÉΓòÉΓòÉ <hidden> Glossary - B ΓòÉΓòÉΓòÉ
  20050.  
  20051.  B 
  20052.  
  20053.  background color - The color assigned to a background image. 
  20054.  
  20055.  background mix - An attribute that determines how the background of a graphic 
  20056.     primitive is combined with the existing color of the graphics presentation 
  20057.     space. 
  20058.  
  20059.  base device driver - An OS/2 device driver that performs I/O during the OS/2 
  20060.     kernel boot sequence to provide IPL support. Base device drivers are loaded 
  20061.     by way of the CONFIG.SYS BASEDEV keyword, rather than the DEVICE keyword. 
  20062.     See BASEDEV keyword, adapter device driver, and device manager. 
  20063.  
  20064.  BASEDEV keyword - New CONFIG.SYS keyword; loads a base device driver into the 
  20065.     operating system. 
  20066.  
  20067.  Basic Input/Output System (BIOS) - Code that controls basic hardware 
  20068.     operations, such as interactions with diskette drives, hard disk drives, 
  20069.     and the keyboard. 
  20070.  
  20071.  Bezier curve - A mathematical technique of specifying a smooth, continuous 
  20072.     line or surface, requiring a starting point and an ending point, with 
  20073.     several intermediate points that influence or control the path of the 
  20074.     linking curve. 
  20075.  
  20076.  BIOS - Basic Input/Output System. 
  20077.  
  20078.  bit-block transfer (bitblt) - Transfer of a rectangular array of bit-map data. 
  20079.  
  20080.  bitblt - Bit-block transfer. 
  20081.  
  20082.  bit map - A representation of an image by an array of bits. 
  20083.  
  20084.  block - (1) In programming languages, a compound statement that coincides with 
  20085.     the scope of at least one of the declarations contained within it. A block 
  20086.     may also specify storage allocation or segment programs for other 
  20087.     purposes. (I)  (2) A string of data elements recorded or transmitted as a 
  20088.     unit. The elements may be characters, words or physical records. (T)  (3) A 
  20089.     collection of contiguous records recorded as a unit. Blocks are separated 
  20090.     by interblock gaps and each block may contain one or more records. (A)
  20091.  
  20092.  Bit block transfer (bitblt) - The process of transferring one or more blocks 
  20093.     of data. 
  20094.  
  20095.  border - A visual indicator of a window's boundaries. 
  20096.  
  20097.  BPB - BIOS Parameter Block. 
  20098.  
  20099.  breakpoint - (1) A point in a computer program where execution may be halted. 
  20100.     A breakpoint is usually at the beginning of an instruction where halts, 
  20101.     caused by external intervention, are convenient for resuming 
  20102.     execution. (T)  (2) An instruction in a program for halting execution. 
  20103.     Breakpoints are usually established at positions in a program where halts, 
  20104.     caused by external intervention, are convenient for restarting. (T)  (3) A 
  20105.     place in a program, specified by a command or a condition, where the system 
  20106.     halts execution and gives control to the workstation user or to a specified 
  20107.     program. 
  20108.  
  20109.  Bus Master adapter - An adapter capable of performing Reads and Writes to 
  20110.     physical storage by communicating directly with the storage subsystem 
  20111.     (memory) rather than depending on a host DMA channel or host CPU. 
  20112.     Synonymous with first-party DMA adapter. 
  20113.  
  20114.  
  20115. ΓòÉΓòÉΓòÉ <hidden> Glossary - C ΓòÉΓòÉΓòÉ
  20116.  
  20117.  C 
  20118.  
  20119.  cached micro presentation space - A presentation space from a Presentation 
  20120.     Manager owned store of micro presentation spaces. It can be used for 
  20121.     drawing to a window only, and must be returned to the store when the task 
  20122.     is complete. 
  20123.  
  20124.  CDB - Command Descriptor Block. 
  20125.  
  20126.  cell - See character cell. 
  20127.  
  20128.  character box -  (1) An imaginary parallelogram on a display surface that 
  20129.     contains all parts of one graphic character. Synonymous with bounding 
  20130.     box. (T)  (2) The maximum area in which a symbol and all associated 
  20131.     elements, such as a cursor, an underline, or space surrounding the symbol 
  20132.     to separate it from other symbols, can be printed or displayed. Synonymous 
  20133.     with character cell. (3) The imaginary parallelogram whose boundaries 
  20134.     govern the size, orientation, and spacing of individual characters to be 
  20135.     displayed on a graphics display device. 
  20136.  
  20137.  character cell -  (1) An addressable location on a display surface or printing 
  20138.     medium.  (2) The physical width and height in pels of a font. See also 
  20139.     bounding box.  (3) The imaginary box whose boundaries govern the size, 
  20140.     orientation, and spacing of individual characters to be displayed on a 
  20141.     workstation. 
  20142.  
  20143.  character mode - A mode that, in conjunction with the font type, determines 
  20144.     the extent to which graphics characters are affected by the character box, 
  20145.     shear, and angle attributes. 
  20146.  
  20147.  clipping - In computer graphics, removing those parts of display elements that 
  20148.     lie outside of given boundary. 
  20149.  
  20150.  clip limits - The area of the paper that can be reached by a printer or 
  20151.     plotter. 
  20152.  
  20153.  clipping path - A clipping boundary in world-coordinate space. 
  20154.  
  20155.  code page - An assignment of graphic characters and control function meanings 
  20156.     to all code points; for example, assignment of characters and meanings to 
  20157.     256 code points for an 8-bit code, assignment of characters and meanings to 
  20158.     128 code points for a 7-bit code. 
  20159.  
  20160.  code point - A 1-byte code representing one of 256 potential characters. 
  20161.  
  20162.  code segment - An executable section of programming code within a load module. 
  20163.  
  20164.  color conversion - Changing one color format to another. Required, for 
  20165.     example, when the source color format is different from the destination 
  20166.     color format. When going from the monochrome color format to the color 
  20167.     format, 1 (one) bits are converted to the image foreground color, and 0 
  20168.     (zero) bits are converted to the image background color. 
  20169.  
  20170.     When going from color to monochrome, all pels that match the passed 
  20171.     background color are converted to the image background color of the 
  20172.     destination. 
  20173.  
  20174.     All other pels are converted to the image foreground color of the 
  20175.     destination. The color conversion takes place prior to any mix mode. 
  20176.  
  20177.  color dithering - See dithering. 
  20178.  
  20179.  command code - In this specification, refers to a group of related commands 
  20180.     that an adapter device driver can receive. 
  20181.  
  20182.     All command codes have a prefix of "IOCC_". For example, common I/O 
  20183.     requests (such as Read, Write, etc.) are grouped under the command code 
  20184.     IOCC_EXECUTE_IO. 
  20185.  
  20186.  command data block - A data structure defined by the Small Computer System 
  20187.     Interface standard to send commands to devices that conform to SCSI 
  20188.     standards. 
  20189.  
  20190.  command descriptor block (CDB) - The structure used to communicate commands 
  20191.     from a source to a destination. 
  20192.  
  20193.  command modifier - In this specification, a specific operation that an adapter 
  20194.     device driver is to perform. 
  20195.  
  20196.     All command modifiers have a prefix of "IOCM_". For example, an adapter 
  20197.     device driver might receive an IOCC_EXECUTE_IO command with a command 
  20198.     modifier of IOCM_READ. 
  20199.  
  20200.  compatibility kernel - The portion of the OS/2 kernel that exists to support 
  20201.     DOS INT 20, 21, 25, 26, and 27 functions. It acts as an interface to common 
  20202.     kernel functionality such as the file system. 
  20203.  
  20204.  CON - Character-device name reserved for the console keyboard and screen. 
  20205.  
  20206.  conditional compilation - Processing by the preprocessor of certain specified 
  20207.     code in the file, depending on the evaluation of a specified condition. 
  20208.  
  20209.  context hook - Similar to a "force flag" in earlier versions of OS/2. These 
  20210.     are events, signaled by a virtual device driver, that are processed at task 
  20211.     time. Forcing an IRET, and simulating an NMI, can fall into this category. 
  20212.  
  20213.  control program - A computer program designed to schedule and to supervise the 
  20214.     execution of programs of a computer system. 
  20215.  
  20216.  controller sector buffer - One or more buffers, managed by a hardware adapter, 
  20217.     to improve I/O transfer rates by helping to match a device and software 
  20218.     timing requirements. 
  20219.  
  20220.  
  20221. ΓòÉΓòÉΓòÉ <hidden> Glossary - D ΓòÉΓòÉΓòÉ
  20222.  
  20223.  D 
  20224.  
  20225.  DASD - Direct-access storage device. 
  20226.  
  20227.  data bus - A bus used to communicate data internally and externally to and 
  20228.     from a processing unit, storage, and peripheral devices. (A)  See bus. 
  20229.  
  20230.  data structure - The syntactic structure of symbolic expressions and their 
  20231.     storage allocation characteristics. (T)
  20232.  
  20233.  DBCS - Double-byte character set. 
  20234.  
  20235.  DC - Device context. 
  20236.  
  20237.  DDB - Device-dependent bit map. 
  20238.  
  20239.  deinstantiation - See instantiation. 
  20240.  
  20241.  DevHlp - Device helper. 
  20242.  
  20243.  device context (DC) - A logical description of a data destination such as 
  20244.     memory, metafile, display, printer, or plotter. See also direct device 
  20245.     context, information device context, memory device context, metafile device 
  20246.     context, and screen device context. 
  20247.  
  20248.  device driver -  A file that contains the code needed to attach and use a 
  20249.     device such as a display, printer, or plotter. 
  20250.  
  20251.  device driver initialization (init) time - See initialization (init) time, 
  20252.     device driver. 
  20253.  
  20254.  device driver profile - A file with a "DDP" extension, containing a script 
  20255.     that is interpreted by the OS/2 DDINSTAL utility. Among other things, it 
  20256.     defines which files to copy from installation diskettes to target 
  20257.     directories and specifies how the CONFIG.SYS file will be updated. 
  20258.  
  20259.  device helper (DevHlp) -  (1) A kernel service (memory, hardware interrupt, 
  20260.     software interrupt, queuing, semaphore, and so forth) provided to physical 
  20261.     device drivers. (2) A callable C-language or assembler-language routine 
  20262.     that provides an operating system service for an OS/2 device driver. 
  20263.  
  20264.  device object - A device that provides a means of communication between a 
  20265.     computer and the outside world. A printer is an example of a device object. 
  20266.  
  20267.  device table - A data structure containing a summary of the adapters an 
  20268.     adapter device driver supports and a list of the I/O devices attached to 
  20269.     each adapter. This data structure is built by the adapter device driver in 
  20270.     response to an IOCC_CONFIGURATION IOCM_GET_DEVICE_TABLE request. 
  20271.  
  20272.  direct access storage device (DASD) - A device in which access time is 
  20273.     effectively independent of the location of the data. 
  20274.  
  20275.  direct memory access (DMA) -  (1) A technique for moving data directly between 
  20276.     main storage and peripheral equipment without requiring processing of the 
  20277.     data by the processing unit. (2) The transfer of data between memory and 
  20278.     input/output units without processor intervention. 
  20279.  
  20280.  display frame - (1) In computer graphics, an area in storage in which a 
  20281.     display image can be recorded.  (2) In computer micrographics, an area on a 
  20282.     microform in which a display image can be recorded. 
  20283.  
  20284.  dispatch table -  (1) A block of memory, allocated by the graphics engine, for 
  20285.     the containment of entry points for use by a display driver. (2) An array 
  20286.     of pointers to function-handling routines. 
  20287.  
  20288.  dithering - A technique for interleaving dark and light pels so that the 
  20289.     resulting image looks smoothly shaded from a distance. 
  20290.  
  20291.  DLL - Dynamic link library. 
  20292.  
  20293.  DMA - Direct memory access. 
  20294.  
  20295.  double-byte character set (DBCS) - A set of characters in which each character 
  20296.     is represented by two bytes. Languages such as Japanese, Chinese, and 
  20297.     Korean, which contain more characters than can be represented by 256 code 
  20298.     points, require double-byte character sets. Because each character requires 
  20299.     2 bytes, the typing, display, and printing of DBCS characters requires 
  20300.     hardware and programs that support DBCS. Contrast with single-byte 
  20301.     character set. 
  20302.  
  20303.  driver - (1) A program (and possibly data files) that contain information 
  20304.     needed to run a particular unit, such as a plotter, printer, port, or 
  20305.     mouse. See also device driver and printer driver. (2) A system or device 
  20306.     that enables a functional unit to operate. 
  20307.  
  20308.  dynamic link library (DLL) - A file containing executable code and data bound 
  20309.     to a program at load time or run time, rather than during linking. The code 
  20310.     and data in a dynamic link library can be shared by several applications 
  20311.     simultaneously. 
  20312.  
  20313.  
  20314. ΓòÉΓòÉΓòÉ <hidden> Glossary - E ΓòÉΓòÉΓòÉ
  20315.  
  20316.  E 
  20317.  
  20318.  entry point - (1) In a database, the record that is first accessed upon entry 
  20319.     into a database, caused by a user's command. (T)  (2) The address or label 
  20320.     of the first instruction executed on entering a computer program, routine, 
  20321.     or subroutine. A computer program, routine, or subroutine may have a number 
  20322.     of different entry points, each perhaps corresponding to a different 
  20323.     function or purpose. (I)  (A)  Synonymous with entrance, entry. (3) In a 
  20324.     routine, any place to which control can be passed. (A)  (4) In the C, 
  20325.     FORTRAN, and Pascal languages, the address or label of the first 
  20326.     instruction processed or entered in a program, routine, or subroutine. A 
  20327.     program, routine, or subroutine can have a number of different entry 
  20328.     points, each corresponding to a different function or purpose. 
  20329.  
  20330.  EOI - End Of Interrupt 
  20331.  
  20332.  
  20333. ΓòÉΓòÉΓòÉ <hidden> Glossary - F ΓòÉΓòÉΓòÉ
  20334.  
  20335.  F 
  20336.  
  20337.  Far call - Code that calls from one segment into another segment. 
  20338.  
  20339.  fillet - An arc that is tangential to the end points of two adjacent lines. 
  20340.     See also polyfillet. 
  20341.  
  20342.  filter adapter device driver - A special class of adapter device drivers that 
  20343.     do not manage the hardware directly, but monitor the stream of commands 
  20344.     between a device manager and an adapter device driver. See Device Manager 
  20345.     and adapter device driver. 
  20346.  
  20347.  first-party DMA adapter - See bus master adapter. 
  20348.  
  20349.  flag - A characteristic of a file or directory that enables it to be used in 
  20350.     certain ways. See also archive flag, hidden flag, and read-only flag. 
  20351.  
  20352.  flat address - See linear address. 
  20353.  
  20354.  frame styles - Standard window layouts provided by the Presentation Manager. 
  20355.  
  20356.  freeze and thaw services - Functions that prevent a DOS session from executing 
  20357.     (VDHFreezeVDM) until the matching thaw function (VDHThawVDM) is called. The 
  20358.     freeze occurs when the specified DOS session leaves kernel mode. 
  20359.  
  20360.  
  20361. ΓòÉΓòÉΓòÉ <hidden> Glossary - G ΓòÉΓòÉΓòÉ
  20362.  
  20363.  G 
  20364.  
  20365.  GDT - Global descriptor table. 
  20366.  
  20367.  Global Descriptor Table (GDT) - A table that defines code and data segments 
  20368.     available to all tasks in an application. 
  20369.  
  20370.  glyph - A graphic symbol whose appearance conveys information; for example, 
  20371.     the vertical and horizontal arrows on cursor keys that indicate the 
  20372.     directions in which they control cursor movement, the sunburst symbol on 
  20373.     the screen illumination control of a display device. 
  20374.  
  20375.  GPI - Graphics programming interface 
  20376.  
  20377.  graphic primitive - In computer graphics, a basic element, such as an arc or a 
  20378.     line, that is not made up of smaller parts and that is used to create 
  20379.     diagrams and pictures. 
  20380.  
  20381.  graphics attributes - The attributes that apply to graphics primitives. 
  20382.     Examples are color selection, line type, and shading pattern definition. 
  20383.     Contrast with segment attributes. 
  20384.  
  20385.  Graphics programming interface (GPI) - The formally-defined programming 
  20386.     language that lies between an IBM graphics program and the user of the 
  20387.     program. 
  20388.  
  20389.  graphics segment - A sequence of related graphic primitives and graphics 
  20390.     attributes. See also graphic primitive. 
  20391.  
  20392.  GRE - Graphics engine. 
  20393.  
  20394.  
  20395. ΓòÉΓòÉΓòÉ <hidden> Glossary - H ΓòÉΓòÉΓòÉ
  20396.  
  20397.  H 
  20398.  
  20399.  handle - (1) An identifier that represents an object, such as a device or a 
  20400.     window, to the Presentation Interface.  (2) In the Advanced DOS and OS/2 
  20401.     operating systems, a binary value created by the system that identifies a 
  20402.     drive, directory, and file so that the file can be found and opened. 
  20403.  
  20404.  handshaking - A method by which two pieces of hardware, such as a personal 
  20405.     computer and a plotter, can communicate. Depending upon the devices 
  20406.     communicating, handshaking occurs either as a hardware function or through 
  20407.     software, such as a device driver. 
  20408.  
  20409.  hard error - An error condition on a network that requires that the network be 
  20410.     reconfigured or that the source of the error be removed before the network 
  20411.     can resume reliable operation. 
  20412.  
  20413.  hardware palette - The array of RGBs that the physical device is displaying. 
  20414.  
  20415.  heap - An area of free storage available for dynamic allocation by an 
  20416.     application. Its size varies depending on the storage requirements of the 
  20417.     application. 
  20418.  
  20419.  hex - See hexadecimal 
  20420.  
  20421.  hexadecimal - Pertaining to a system of numbers to the base 16; hexadecimal 
  20422.     digits range from 0 through 9 and A through F, where A represents 10 and F 
  20423.     represents 15. 
  20424.  
  20425.  hook - A point in a system-defined function where an application can supply 
  20426.     additional code that the system processes as though it were part of the 
  20427.     function. 
  20428.  
  20429.  hook chain - A sequence of hook procedures that are "chained" together so that 
  20430.     each event is passed in turn to each procedure in the chain. 
  20431.  
  20432.  
  20433. ΓòÉΓòÉΓòÉ <hidden> Glossary - I ΓòÉΓòÉΓòÉ
  20434.  
  20435.  I 
  20436.  
  20437.  IDC - Inter-device-driver communication. 
  20438.  
  20439.  in-memory buffer - A block of memory in the address space of the host machine, 
  20440.     used for data transfer. 
  20441.  
  20442.  init time - See initialization time, device driver. 
  20443.  
  20444.  initialization time, device driver - After the OS/2 loads a device driver, it 
  20445.     sends it an OS/2 request packet to initialize. During this initialization, 
  20446.     certain DevHlp functions are not permitted. Also called init time. 
  20447.  
  20448.  Input/Output Control (IOCtl) - A system service that provides a way for an 
  20449.     application to send device-specific control commands to a device driver. 
  20450.  
  20451.  Input/Output Privilege Level (IOPL) - Allows part of a Ring 3 application or 
  20452.     device driver to execute at Ring 0. 
  20453.  
  20454.  input router - OS/2 internal process that removes messages from the system 
  20455.     queue. 
  20456.  
  20457.  inter-device-driver communication (IDC) - A mechanism that enables a physical 
  20458.     device driver to communicate with another physical device driver. 
  20459.  
  20460.  interprocess communication - In the OS/2 operating system, the exchange of 
  20461.     information between processes or threads through semaphores, queues, and 
  20462.     shared memory. 
  20463.  
  20464.  interrupt - An instruction that directs the microprocessor to suspend what it 
  20465.     is doing and run a specified routine. When the routine is complete, the 
  20466.     microprocessor resumes its original work. See also routine. 
  20467.  
  20468.  interrupt request (IR) - Broadly, an "interrupt request level", referring to 
  20469.     pending or in-service interrupt requests, or to a specific level (for 
  20470.     example, IR 4). 
  20471.  
  20472.  interrupt request flag - A bit in the 8259 PIC controller that indicates an 
  20473.     interrupt is pending on particular level. The VPIC also maintains a virtual 
  20474.     interrupt request flag for each interrupt level for each DOS session. 
  20475.  
  20476.  interrupt service flag - A bit in the 8259 PIC controller that indicates an 
  20477.     interrupt request is being serviced. It is cleared when the PIC is sent 
  20478.     EOI. The VPIC maintains a virtual interrupt service flag indicating that a 
  20479.     simulated interrupt is in-progress in a DOS session. 
  20480.  
  20481.  interrupt time - When a device driver is run because of an interrupt rather 
  20482.     than because of an application request. OS/2 device drivers receive 
  20483.     interrupts either from the hardware they manage or from the system 
  20484.     real-time clock. 
  20485.  
  20486.     During interrupt time, certain DevHlp functions are not permitted. Also, 
  20487.     addresses received directly from OS/2 applications might not be valid 
  20488.     unless they are converted system addresses. 
  20489.  
  20490.  IOCtl - Input/Output Control. 
  20491.  
  20492.  IOPL - Input/Output Privilege Level. 
  20493.  
  20494.  IORB - Input/Output Request Block. 
  20495.  
  20496.  Input/Output Request Block (IORB) - A data structure defined by this 
  20497.     specification that is passed as a parameter on all calls to an adapter 
  20498.     device driver. It contains a fixed section, followed by a command-dependent 
  20499.     section. 
  20500.  
  20501.  IORBH - Input/Output Request Block Header 
  20502.  
  20503.  IRET - Interrupt return. 
  20504.  
  20505.  IRQ - Interrupt Request. 
  20506.  
  20507.  
  20508. ΓòÉΓòÉΓòÉ <hidden> Glossary - J ΓòÉΓòÉΓòÉ
  20509.  
  20510.  J 
  20511.  
  20512.  journal - A special-purpose file or data set that can be used to provide an 
  20513.     audit trail of operator and system actions, or as a means of recovering 
  20514.     superseded data. 
  20515.  
  20516.  
  20517. ΓòÉΓòÉΓòÉ <hidden> Glossary - K ΓòÉΓòÉΓòÉ
  20518.  
  20519.  K 
  20520.  
  20521.  kanji - A graphic character set consisting of symbols used in Japanese 
  20522.     ideographic alphabets. Each character is represented by 2 bytes. 
  20523.  
  20524.  kernel - (1) The part of an operating system that performs basic functions 
  20525.     such as allocating hardware resources. (2) A program that can run under 
  20526.     different operating system environments. 
  20527.  
  20528.  kerning - The design of graphic characters so that their character boxes 
  20529.     overlap. The toned picture elements (pels) of the character appear outside 
  20530.     the character cell. 
  20531.  
  20532.     Note:  Kerning allows character boxes to overlap and characters to run 
  20533.     together, so that characters can be designed for cursive languages, 
  20534.     ligatures, or any other kind of character that requires more than one 
  20535.     character box. It also allows for design of proportional-spaced fonts. By 
  20536.     overlapping character boxes, characters can be placed closer together, or 
  20537.     they can be placed farther apart by using overlapped blank character boxes. 
  20538.  
  20539.  
  20540. ΓòÉΓòÉΓòÉ <hidden> Glossary - L ΓòÉΓòÉΓòÉ
  20541.  
  20542.  L 
  20543.  
  20544.  LCT - logical color table. 
  20545.  
  20546.  LDT - Local descriptor table. 
  20547.  
  20548.  LIFO stack - A data structure from which data is retrieved in "Last-In, 
  20549.     First-Out" order. 
  20550.  
  20551.  linked list - A list in which the data elements may be dispersed, but in which 
  20552.     each data element contains information for locating the next. Synonym for 
  20553.     chained list. 
  20554.  
  20555.  linear address - A unique value that identifies the memory object. 
  20556.  
  20557.  Local Descriptor Table (LDT) - A table that defines code and data segments 
  20558.     specific to a single task. 
  20559.  
  20560.  logical palette - An array of RGB and mapping index pairs, created by the 
  20561.     device driver when defining a palette (as a result of a GpqCreatePalette 
  20562.     call). 
  20563.  
  20564.  LVB - Logical Video Buffer. 
  20565.  
  20566.  
  20567. ΓòÉΓòÉΓòÉ <hidden> Glossary - M ΓòÉΓòÉΓòÉ
  20568.  
  20569.  M 
  20570.  
  20571.  memory device context - A logical description of a data destination that is a 
  20572.     memory bit map. See also device context. 
  20573.  
  20574.  metafile - A file containing a series of attributes that set color, shape, and 
  20575.     size, usually of a picture or a drawing. Using a program that can interpret 
  20576.     these attributes, a user can view the assembled image. 
  20577.  
  20578.  metafile device context - A logical description of a data destination that is 
  20579.     a metafile which is used for graphics interchange. See also device context. 
  20580.  
  20581.  mickey - A unit of measurement for physical mouse motion whose value depends 
  20582.     on the mouse device driver that is currently loaded. 
  20583.  
  20584.  mixed character string - A string containing a mixture of one-byte and kanji 
  20585.     or Hangeul (two-byte) characters. 
  20586.  
  20587.  mutex semaphore - (Mutual exclusion semaphore). A semaphore that enables 
  20588.     threads to serialize their access to resources. Only the thread that 
  20589.     currently owns the mutex semaphore can gain access to the resource, thus 
  20590.     preventing one thread from interrupting operations being performed by 
  20591.     another. 
  20592.  
  20593.  
  20594. ΓòÉΓòÉΓòÉ <hidden> Glossary - N ΓòÉΓòÉΓòÉ
  20595.  
  20596.  N 
  20597.  
  20598.  named pipe - A named buffer that provides client-to-server, server-to-client 
  20599.     or duplex communication between unrelated processes. Contrast with unnamed 
  20600.     pipe. 
  20601.  
  20602.  notification callout - The feature that provides for a routine to be called on 
  20603.     completion of an input/output request. See also notification routine. 
  20604.  
  20605.  notification routine - The routine indicated in an input/output request block 
  20606.     to be called on completion of that request. See also notification callout. 
  20607.  
  20608.  null-terminated string - A string of (n+1) characters where the (n+1)th 
  20609.     character is the "null" character (X'00') and is used to represent an 
  20610.     n-character string with implicit length. Also called a "zero-terminated" 
  20611.     string or an "ASCIIZ". string. 
  20612.  
  20613.  
  20614. ΓòÉΓòÉΓòÉ <hidden> Glossary - O ΓòÉΓòÉΓòÉ
  20615.  
  20616.  O 
  20617.  
  20618.  
  20619. ΓòÉΓòÉΓòÉ <hidden> Glossary - P ΓòÉΓòÉΓòÉ
  20620.  
  20621.  P 
  20622.  
  20623.  palette - A list of colors assigned to various areas on a panel. A user can 
  20624.     change the color of these areas. 
  20625.  
  20626.  PDD - Physical Device Driver. 
  20627.  
  20628.  PDE - PageDirectoryEntry. 
  20629.  
  20630.  pel - Picture element. 
  20631.  
  20632.  permissible action - In a conceptual schema language, an action conforming to 
  20633.     specified rules or constraints that changes a presumably consistent 
  20634.     collection of sentences into a consistent one or makes known a consistent 
  20635.     one present in the information base or conceptual schema. 
  20636.  
  20637.  phase alignment - Aligning source bits with destination bits. Often required 
  20638.     in a Bitblt function move operation where byte blocks are moved on bit 
  20639.     boundaries. 
  20640.  
  20641.  physical address - A 32-bit byte address giving the actual address in physical 
  20642.     storage for a data item. 
  20643.  
  20644.  physical device driver (PDD) - A system interface that handles hardware 
  20645.     interrupts and supports a set of input and output functions. 
  20646.  
  20647.  pipe - See named pipe, unnamed pipe. 
  20648.  
  20649.  picture element (pel, pixel) -  (1) In computer graphics, the smallest element 
  20650.     of a display surface that can be independently assigned color and 
  20651.     intensity. (T). (2) The area of the finest detail that can be reproduced 
  20652.     effectively on the recording medium.  (3) An element of a raster pattern 
  20653.     about which a toned area on a photoconductor can appear. 
  20654.  
  20655.  PIO - Programmed I/O. 
  20656.  
  20657.  pixel - Picture element. 
  20658.  
  20659.  polyfillet - A curve based on a sequence of lines. The curve is tangential to 
  20660.     the end points of the first and last lines, and tangential also to the 
  20661.     midpoints of all other lines. 
  20662.  
  20663.  polyline - In computer graphics, a sequence of adjoining lines. 
  20664.  
  20665.  pop - To remove an item from the top of a pushdown list. Contrast with push. 
  20666.  
  20667.  prefetch - To locate and load a quantity of data in anticipation of a request. 
  20668.  
  20669.  presence-check function - A Ring 3 (non-privileged) .EXE program that 
  20670.     determines whether a given hardware interface is present on a workstation. 
  20671.  
  20672.  PRESENCECHECK - A keyword, interpreted by the DDINSTAL utility, to determine 
  20673.     whether to process the device driver profile file, based on the return code 
  20674.     from PRESENCECHECK. 
  20675.  
  20676.  printer driver - A file that describes the physical characteristics of a 
  20677.     printer, plotter, or other peripheral device, and is used to convert 
  20678.     graphics and text into device-specific data at the time of printing or 
  20679.     plotting. 
  20680.  
  20681.  Print Manager - In the Presentation Manager, the part of the spooler that 
  20682.     manages the spooling process. It also allows the user to view print queues 
  20683.     and to manipulate print jobs. 
  20684.  
  20685.  privilege level - A method of protection that allows only certain program 
  20686.     instructions to be used by certain programs. 
  20687.  
  20688.  program group - Several programs that can be acted upon as a single entity. 
  20689.  
  20690.  protect mode - A method of program operation that limits or prevents access to 
  20691.     certain instructions or areas of storage. Contrast with real mode. 
  20692.  
  20693.  push - To add an item to the top of a pushdown list. Contrast with pop. 
  20694.  
  20695.  
  20696. ΓòÉΓòÉΓòÉ <hidden> Glossary - Q ΓòÉΓòÉΓòÉ
  20697.  
  20698.  Q 
  20699.  
  20700.  queued device context - A logical description of a data destination (for 
  20701.     example, a printer or plotter) where the output is to go through the 
  20702.     spooler. See also device context. 
  20703.  
  20704.  
  20705. ΓòÉΓòÉΓòÉ <hidden> Glossary - R ΓòÉΓòÉΓòÉ
  20706.  
  20707.  R 
  20708.  
  20709.  read-only memory basic input/output system (ROM-BIOS) - Microcode in read-only 
  20710.     memory that controls basic input/output operations such as interactions 
  20711.     with cassettes, diskette drives, hard disk drives, and the keyboard. See 
  20712.     also BIOS, NetBIOS. 
  20713.  
  20714.     Note:  ROM BIOS allows the user to write programs and add or remove devices 
  20715.     without concern for characteristics such as device addresses. 
  20716.  
  20717.  real mode - In the OS/2 operating system, a method of program operation that 
  20718.     does not limit or prevent access to any instructions or areas of storage. 
  20719.     The operating system loads the entire program into storage and gives the 
  20720.     program access to all system resources. 
  20721.  
  20722.  reentrant - The attribute of a program or routine that allows the same copy of 
  20723.     the program or routine to be used concurrently by two or more tasks. 
  20724.  
  20725.  removable-media indicator - A flag (bit) indicating that a device permits 
  20726.     media removal. 
  20727.  
  20728.  resource - The means of providing extra information used in the definition of 
  20729.     a window. A resource can contain definitions of fonts, templates, 
  20730.     accelerators and mnemonics; the definitions are held in a resource file. 
  20731.  
  20732.  resurrection - The Presentation Manager event that occurs when switched back 
  20733.     from a full-screen DOS or WIN-OS/2 session. 
  20734.  
  20735.  RETF - Return far. 
  20736.  
  20737.  reverse video - A form of highlighting a character, field, or cursor by 
  20738.     reversing the color of the character, field, or cursor with its background; 
  20739.     for example, changing a red character on a black background to a black 
  20740.     character on a red background. 
  20741.  
  20742.  ROM BIOS - Read-Only Memory Basic Input/Output System. 
  20743.  
  20744.  ROP - Raster operation. 
  20745.  
  20746.  RTC - Real-Time Clock. 
  20747.  
  20748.  
  20749. ΓòÉΓòÉΓòÉ <hidden> Glossary - S ΓòÉΓòÉΓòÉ
  20750.  
  20751.  S 
  20752.  
  20753.  SBCS - Single-byte character set 
  20754.  
  20755.  SCB - See subsystem control block architecture. 
  20756.  
  20757.  screen device context - A logical description of a data destination that is a 
  20758.     particular window on the screen. See also device context. 
  20759.  
  20760.  SCSI - Small Computer System Interface. 
  20761.  
  20762.  seamless windows - An architecture contained within OS/2 which permits one or 
  20763.     more applications to share windowed desktop graphical space and other 
  20764.     resources, while executing concurrently. Application session windows 
  20765.     managed by seamless windows can share border information, and pointing 
  20766.     device transitions from session to session are handled smoothly and 
  20767.     transparently. 
  20768.  
  20769.  second-party DMA adapter - See DMA slave. 
  20770.  
  20771.  semaphore -  (1) A variable that is used to enforce mutual exclusion. (T)  (2) 
  20772.     An indicator used to control access to a file; for example, in a multiuser 
  20773.     application, a flag that prevents simultaneous access to a file. (3) An 
  20774.     entity used to control access to system resources. Processes can be locked 
  20775.     to a resource with semaphores if the processes follow certain programming 
  20776.     conventions. 
  20777.  
  20778.  sense data - Data which describes an I/O error as defined by the ANSI SCSI 
  20779.     specifications. 
  20780.  
  20781.  single-byte character set (SBCS) - A character set in which each character is 
  20782.     represented by a one-byte code. Contrast with double-byte character set. 
  20783.  
  20784.  Small Computer System Interface (SCSI) - An input and output bus that provides 
  20785.     a standard interface between the OS/2 multimedia system and peripheral 
  20786.     devices. 
  20787.  
  20788.  spline curve - In computer graphics, a shape created when a user specifies a 
  20789.     series of points and the computer software draws a curve that smoothly 
  20790.     approaches those points. 
  20791.  
  20792.  spooler - A program that intercepts data going to a device driver and writes 
  20793.     it to a disk. The data is later printed or plotted when the required device 
  20794.     is available. A spooler prevents output from different sources from being 
  20795.     intermixed. 
  20796.  
  20797.  synchronous - Pertaining to two or more processes that depend upon the 
  20798.     occurrence of specific events such as common timing signals. 
  20799.  
  20800.  
  20801. ΓòÉΓòÉΓòÉ <hidden> Glossary - T ΓòÉΓòÉΓòÉ
  20802.  
  20803.  T 
  20804.  
  20805.  text window - See VIO window. 
  20806.  
  20807.  thread - The smallest unit of operation to be performed within a process. 
  20808.  
  20809.  thunk - term used to describe the process of address conversion, stack, and 
  20810.     structure realignment that is necessary when passing control between 16-bit 
  20811.     and 32-bit modules. 
  20812.  
  20813.  thunk layer - An interface that converts 32-bit parameters to 16-bit 
  20814.     parameters, and maps linear addresses to segmented addresses. 
  20815.  
  20816.  time slice -  (1) The period of processing time allocated for running a 
  20817.     program. (2) An interval of time on the processing unit allocated for use 
  20818.     in performing a task. After the interval has expired, processing unit time 
  20819.     is allocated to another task, so a task cannot monopolize processing unit 
  20820.     time beyond a fixed limit. 
  20821.  
  20822.  tuple - In a relational database, a part of a relation that uniquely describes 
  20823.     an entity and its attribute. 
  20824.  
  20825.  
  20826. ΓòÉΓòÉΓòÉ <hidden> Glossary - U ΓòÉΓòÉΓòÉ
  20827.  
  20828.  U 
  20829.  
  20830.  unnamed pipe - A circular buffer created in memory; used by related processes 
  20831.     to communicate with one another. Contrast with named pipe. 
  20832.  
  20833.  
  20834. ΓòÉΓòÉΓòÉ <hidden> Glossary - V ΓòÉΓòÉΓòÉ
  20835.  
  20836.  V 
  20837.  
  20838.  VBIOS - Virtual BIOS device driver 
  20839.  
  20840.  VCMOS - Virtual CMOS device driver 
  20841.  
  20842.  VDD - Virtual device driver 
  20843.  
  20844.  VDH - Virtual video Device Handler 
  20845.  
  20846.  VDM - Virtual DOS Machine; use DOS session. 
  20847.  
  20848.  VDMA - Virtual Direct Memory Access device driver 
  20849.  
  20850.  VDSK - Virtual hard DiSK device driver 
  20851.  
  20852.  video graphics adapter (VGA) - A computer adapter that provides 
  20853.     high-resolution graphics and a total of 256 colors. 
  20854.  
  20855.  VIO - Virtual Input/Output 
  20856.  
  20857.  VIRR - Virtual Interrupt Request Register 
  20858.  
  20859.  Virtual Device Driver (VDD) - In the OS/2 operating system, a type of device 
  20860.     driver used by DOS programs running in a DOS session to access devices, 
  20861.     such as the screen or mouse, which must be shared with other processes in 
  20862.     the system. The virtual device driver maps DOS device commands to the 
  20863.     normal (physical) device driver under OS/2 2.0 and later versions of the 
  20864.     operating system. 
  20865.  
  20866.  virtual DevHlp (VDH) - Kernel (linear memory, paging, hardware interrupt, 
  20867.     event control, port control) services provided to virtual device drivers. 
  20868.  
  20869.  virtual I/O (VIO) - A facility that pages data into and out of external page 
  20870.     storage. 
  20871.  
  20872.  virtual memory - Synonym for virtual storage. 
  20873.  
  20874.  Virtual Programmable Interrupt Controller - Virtualizes the 8259 Programmable 
  20875.     Interrupt Controller (PIC). A special virtual device driver, in that it 
  20876.     provides services to other virtual device drivers. 
  20877.  
  20878.  virtual storage - Addressable space that is apparent to the user as the 
  20879.     processor storage space, from which the instructions and the data are 
  20880.     mapped into the processor storage locations. Synonymous with virtual 
  20881.     memory. 
  20882.  
  20883.  visible region - A window's presentation space clipped to the boundary of the 
  20884.     window and the boundaries of any overlying window. 
  20885.  
  20886.  VPIC - Virtual Programmable Interrupt Controller device driver. 
  20887.  
  20888.  VRAM - Video Random-Access Memory. 
  20889.  
  20890.  VTIMER - Virtual TIMER device driver. 
  20891.  
  20892.  V86 mode - Virtual 8086 mode of the 80386 CPU. 
  20893.  
  20894.  
  20895. ΓòÉΓòÉΓòÉ <hidden> Glossary - W ΓòÉΓòÉΓòÉ
  20896.  
  20897.  W 
  20898.  
  20899.  window coordinates - A set of coordinates by which a window position or size 
  20900.     is defined; measured in device units, or pels. 
  20901.  
  20902.  
  20903. ΓòÉΓòÉΓòÉ <hidden> Glossary - X ΓòÉΓòÉΓòÉ
  20904.  
  20905.  X 
  20906.  
  20907.  
  20908. ΓòÉΓòÉΓòÉ <hidden> Glossary - Y ΓòÉΓòÉΓòÉ
  20909.  
  20910.  Y 
  20911.  
  20912.     There are no glossary terms for this initial letter. 
  20913.  
  20914.  
  20915. ΓòÉΓòÉΓòÉ <hidden> Glossary - Z ΓòÉΓòÉΓòÉ
  20916.  
  20917.  Z 
  20918.