home *** CD-ROM | disk | FTP | other *** search
/ Amiga MA Magazine 1998 #6 / amigamamagazinepolishissue1998.iso / disks / tools / hd_examine / hd_examine.doc < prev    next >
Text File  |  1996-05-10  |  7KB  |  173 lines

  1.             HD_examine
  2.             Version 1.0
  3.  
  4. The program allows examination and changing of any sector
  5. of devices connected to an Amiga's SCSI bus.  The pro-
  6. gram is a GUI-based utility requiring AmigaDOS 2.04 or
  7. later.
  8.  
  9. The program may be freely distributed in its binary form.
  10. It is freeware although the author would appreciate any
  11. donations sent his way.  Comments and critiques would be
  12. appreciated also.
  13.  
  14. No source is provided for the program since many of the
  15. components are from the author's commercial genealogy data
  16. management program, Family Connections.  Use of the com-
  17. ponents expedited production of HD_examine.
  18.  
  19. When started from either the CLI or Workbench, the program
  20. presents a window on its own screen.  The window and screen
  21. follow your Workbench screen and font preference settings.
  22. You may get a rare font selection in that the program re-
  23. quests a default mono-spaced font consistent with your
  24. screen mode.  Intuition selects the actual font used.
  25.  
  26. No icon for operating the program from the Workbench is
  27. provided because the author is a pathetic artist and has no
  28. tools nor talent for producing a pretty icon.  If anyone
  29. should be inclined to produce an icon and donate it to the
  30. cause, proper acknowledgement will be given in future dis-
  31. tributions.
  32.  
  33. The window contains gadgets to allow specifying the I/O
  34. device name to be used and the SCSI device ID.  The device
  35. ID selection can be clicked through the seven legitimate
  36. selections (0-6);  as each ID is selected, a display of
  37. the device's inquiry data will appear in the two text
  38. gadgets if there is a device with that ID on the bus.
  39.  
  40. For those familiar with the SCSI standard, the upper text
  41. gadget displays an interpretation of the inquiry data's
  42. peripheral device type, peripheral qualifier, and ANSI
  43. version fields.  The lower text gadget displays the con-
  44. tent of the inquiry data beginning with the vendor ident-
  45. ifcation field to the end of the inquiry data.  This latter
  46. data includes the vendor identification, product ident-
  47. ification, and revision level, followed by anything the
  48. manufacturer cares to include.
  49.  
  50. A hex listing of the first sector's data will appear at the
  51. same time if the device is present.  If the device is a
  52. hard disk which has been formatted to operate with AmigaDOS,
  53. the characters "RDSK" will appear as the first four bytes
  54. of the first sector.  The first line of the display shows
  55. the number of bytes which are valid in case the read of the
  56. sector's data failed to complete properly.  The sector data
  57. will not be displayed if the device type is such that an
  58. attempt to read its sector data is nonsensical (a printer
  59. device, for instance).
  60.  
  61. If the program encounters an I/O error while performing an
  62. operation on the SCSI bus, a requester will appear showing
  63. the operation being attempted and the error codes.  The
  64. error codes are shown as two decimal numbers, the first
  65. being the AmigaDOS I/O error code (see below) and the second
  66. being the SCSI status byte.  The only value of SCSI status
  67. you will probably ever see is 2 ("check condition").
  68. If the disk sector being examined is a known component of
  69. the RigidDisk data, an expanded presentation of the sec-
  70. tor's data can be obtained by clicking on the "Expand"
  71. button in the lower left corner of the window.  A separate
  72. window will open with a textual interpretation of the sec-
  73. tor's content given.  At the present time, this feature
  74. works only for RDSK, PART, and FSHD sectors.  In all other
  75. cases, the clicking of the "expand" button will be ignored.
  76.  
  77. The "Next" and "Prev" button gadgets allow stepping to the
  78. next or previous sector.  These two buttons have keyboard
  79. equivalents.
  80.  
  81. The "Quit" button gadget exits the program and has a
  82. keyboard equivalent.
  83.  
  84. The "Load", "Save", "Edit", and "Write" button gadgets
  85. allow operations to be performed on the current sector.
  86. Attempting to use these functions when there is no device
  87. selected will result in a requester being displayed and
  88. the command ignored.
  89.  
  90. The "save" and "load" gadgets are more or less complement-
  91. ary in that the "save" gadget will allow writing the con-
  92. tent of the current sector to a file or the printer while
  93. the "load" button will allow loading the sector with data
  94. obtained from a file (previously created by saving a sec-
  95. tor).  The mechanism for loading sector data is somewhat
  96. crude and is sensitve to the format of the file data, so
  97. be judicious in its use.
  98.  
  99. The "edit" button allows making changes to the current
  100. sector's content.  The mechanization of this feature is
  101. a "brute force" approach of writing the sector data to a
  102. temporary file in the T: directory and invoking Memacs to
  103. allow the making of changes.  When the changes are com-
  104. plete, exiting Memacs will result in the file's content
  105. being processed to retrieve the data values.  The hex
  106. display is updated to reflect the changes, if any.  It is
  107. wise to verify that the changes have been made as intended
  108. before proceeding.
  109.  
  110. Note:  You can only change the hexadecimal values in the
  111. editing file.  The ASCII equivalents and data offsets
  112. into the block are included for assistance in locating the
  113. values to change but are otherwise ignored when being read
  114. the data back into the program.
  115.  
  116. A word of warning about editing a sector's data:  Do not
  117. alter the format of the file during the editing process!
  118. The program makes a crude check of the format for correct-
  119. ness when processing it, but it is far from foolproof.
  120. Any arbitrary format changes made during the editing pro-
  121. cess will undoubtedly result in garbage being seen.
  122.  
  123. The "write" button gadget provides for writing the sector
  124. data currently displayed to the disk sector.  This is a
  125. highly sensitive operation and you should do this only if
  126. you know what you're doing!  Writing garbage data to the
  127. boot blocks especially can result in your having to recover
  128. your drive's data as best you can and rebuilding the drive's
  129. content (or at least a partition's worth).  To prevent inad-
  130. vertant write operations from occurring, a requester will
  131. appear asking you to confirm that you really wish to write
  132. the data.
  133.  
  134. Error code summary
  135. ------------------
  136.  
  137. The following error codes are extracted from the programming
  138. "include" files for the relevant "devices".  The entire set
  139. is included for completeness, although many will never be
  140. seen by the user.
  141.  
  142. * Trackdisk device error codes
  143.  
  144. 20    general catchall
  145. 21    couldn't even find a sector
  146. 22    sector looked wrong
  147. 23    ditto
  148. 24    header had incorrect checksum
  149. 25    data had incorrect checksum
  150. 26    couldn't find enough sectors
  151. 27    another "sector looked wrong"
  152. 28    can't write to a protected disk
  153. 29    no disk in the drive
  154. 30    couldn't find track 0
  155. 31    ran out of memory
  156. 32    asked for a unit > NUMUNITS
  157. 33    not a drive that trackdisk groks
  158. 34    someone else allocated the drive
  159. 35    user hit reset; awaiting doom
  160.  
  161. * SCSIdisk device error codes
  162. 40    cannot issue SCSI command to self
  163. 41    DMA error
  164. 42    illegal or unexpected SCSI phase
  165. 43    SCSI parity error
  166. 44    Selection timed out
  167. 45    status and/or sense error
  168.  
  169. Everett M. Greene
  170. May 10, 1996
  171.  
  172. mojaveg@ridgecrest.ca.us
  173.