home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / ddrivers.zip / README.DOC < prev   
Text File  |  1992-12-29  |  4KB  |  119 lines

  1. Driver Library Version 1.7 01 January 1993 (c) Personal Systems, Inc.
  2.  
  3. To all registered users:
  4.  
  5. 1) Please note our new mailing address and phone numbers:
  6.  
  7.    Personal Systems Software, Inc.
  8.    15 Great Oak Lane
  9.    Unionville, CT 06085
  10.  
  11.    How to contact us:
  12.  
  13.    Voice    (203) 693-0404
  14.    FAX      (203) 693-9042
  15.    CI$      71501,1652
  16.    BIX      smastrianni
  17.    Internet 509-9225@mcimail.com
  18.    Internet smastrianni@bix.com
  19.  
  20. 2) As always, tech support can be had by calling our voice number, 9-5 EST.
  21.    However, we prefer CompuServe so everyone else can benefit by a posting
  22.    in the device Device Driver section of the OS2DF1 conference (GO OS2DF1).
  23.  
  24.    Bug fixes are always free. Please don't call with 
  25.   
  26.    1) questions on C programming (yes, we get tons of these) 
  27.  
  28.    2) how to run the compiler and/or linker
  29.  
  30.    3) how to set up the keyboard debugger, this is explained in the IBM
  31.       toolkit documentation. Also, don't call us with questions on how
  32.       to wire the cable. Use a simple cable with transmit, receive and
  33.       ground, with *no* handshake pins wired.
  34.  
  35.    4) why you can't write your drivers with C Set/2, or why IBM does not
  36.       supply an assembler.
  37.  
  38. 3) Please let me know if you come across any bugs, or suggestions on how
  39.    we can improve the package.
  40.  
  41. 4) This release fixed a few bugs since version 1.6. The PhysToUVirt DevHlp
  42.    caused a fatal error if the selector was released in the Init routine.
  43.    ES was pointing to the memory, and once released, popping ES caused a
  44.    GP fault. You probably never encountered this, as once an LDT entry
  45.    is created, its usually not released until a close.
  46.  
  47. 5) The companion disk no includes a C Set/2 device monitor program, a kernel
  48.    printf function, a complete memory-mapped device driver for ISA and Micro
  49.    Channel, and IOPL routines with 16-bit and 32-bit calling programs. The
  50.    code and data constitute over 500K bytes of zipped source code.
  51.  
  52.    Thanks.
  53.  
  54.  
  55.    Steve Mastrianni
  56.  
  57. =============================================================================
  58.  
  59.  
  60. The following is errata for Writing OS/2 2.0 Device Drivers in C as
  61. of 29 May, 1992.
  62.  
  63.  
  64. Page 9, last paragraph, line 2, replace "Figure 3-2" with "Figure
  65. 2-3"
  66.  
  67. Page 16, first paragraph, replace entire paragraph with:
  68.  
  69. "Processors are generally referred to by the size of the data which
  70.  can be handled at any one given time. The 8088 is referred to as a
  71.  16-bit processor, although technically it can only handle 8 bits at
  72.  a time (The 8088 performs 16-bit operations by transparently
  73.  multiplexing two 8-bit operations). The 80286, for example, is
  74.  called a 16-bit processor because it can handle data 16 bits at a
  75.  time. The 80386 and 80486 are referred to as 32-bit processors
  76.  because they can directly manipulate data 32 bits at a time."
  77.  
  78. Page 17, first paragraph, line 2, replace "eight-bit" with "16-bit"
  79.  
  80. Page 18, last paragraph, first sentence, replace "30" with "25".
  81.  
  82. Page 19, first paragraph, line 2, replace "25" with "33".
  83.  
  84. Page 19, last paragraph, third sentence which begins "The processor
  85. speed", delete entire sentence.
  86.  
  87. Page 49, last paragraph, second sentence, replace "Figure 5-3" with
  88. "Figure 5-5".
  89.  
  90. Pages 106, 107, 108, 109, 358, 360, 361, 362, in the MoveBytes 
  91. function call, be sure to cast the "address of" pointer with
  92. FARPOINTER. For example, on page 107, the example shows a call to
  93. Movebytes that looks like this:
  94.  
  95.   if(MoveBytes(&input_char,rp->s.IOCtl.buffer,1))....
  96.  
  97. Change it to look like:
  98.  
  99.   if(MoveBytes((FARPOINTER)&input_char,rp->s.IOCtl.buffer,1))....
  100.  
  101. Do this for all eight pages listed above.
  102.  
  103. Page 308, Delete last paragraph, beginning with "Note", in its
  104. entirety.
  105.  
  106. Page 310, SetIRQ Device Helper, IRQNumber should be a UCHAR, not
  107. a USHORT.
  108.  
  109. Page 315, UnSetIRQ Device Helper, IRQNum should be a UCHAR, not
  110. a USHORT
  111.  
  112. Page 318, VMAlloc Device Helper, the calling sequence should be:
  113.  
  114. if (VMAlloc(ULONG Physaddr,ULONG Size,ULONG Flags,PULONG Linaddr)) error;
  115.  
  116. Page 399, Listings, change "#define WRITE_POS_REG_CARD 0x0D" with
  117. "#define WRITE_POS_REG_CARD 0x0E"
  118.  
  119.