home *** CD-ROM | disk | FTP | other *** search
/ Crawly Crypt Collection 1 / crawlyvol1.bin / program / hard_ref / dma_docs / bootiext.txt next >
Text File  |  1985-11-19  |  7KB  |  150 lines

  1.                 HARD DISK BOOT SECTOR INFORMATION
  2.                             (EXTENDED)
  3.  
  4.                         SUPRA CORPORATION
  5.                        1133 Commercial Way
  6.                          Albany, OR 97321
  7.                           (503) 967-9075
  8.                         DATE: 1 Sept 1986
  9.  
  10.      Boot sector information for both the root boot sector and for 
  11. the  boot sector of each partition.   The root boot sector  is  on 
  12. physical  sector zero on the hard disk.   The logical sector  zero 
  13. for each partition contains a boot sector for that partition.  The 
  14. number  of partitions has been extended by SUPRA CORPORATION  from 
  15. the normal 4 to 12.  This extension is NOT Atari supported, but to 
  16. allow  for  more than a maximum of 64 megabytes of hard  disk  the 
  17. extension has been added thus allowing for maximum 192 megabytes.
  18.  
  19. ROOT BOOT SECTOR:
  20.  
  21. 0x00 -> 0x156                      ; Boot program
  22.                                    ;  - execute if checksum is 0x1234
  23. PART4 (Extension):
  24. 0x156     DS.B 1    P4_FLAG        ; Non-zero if partition enabled
  25. 0x157     DS.B 3    P4_ID          ; "GEM" if partition enabled
  26. 0x15A     DS.L 1    P4_START       ; Start sector of partition
  27. 0x15E     DS.L 1    P4_SIZE        ; Size of partition in sectors
  28.  
  29. PART5 (Extension):
  30. 0x162     DS.B 1    P5_FLAG        ; Non-zero if partition enabled
  31. 0x163     DS.B 3    P5_ID          ; "GEM" if partition enabled
  32. 0x166     DS.L 1    P5_START       ; Start sector of partition
  33. 0x16A     DS.L 1    P5_SIZE        ; Size of partition in sectors
  34.  
  35. PART6 (Extension):
  36. 0x16E     DS.B 1    P6_FLAG        ; Non-zero if partition enabled
  37. 0x16F     DS.B 3    P6_ID          ; "GEM" if partition enabled
  38. 0x172     DS.L 1    P6_START       ; Start sector of partition
  39. 0x176     DS.L 1    P6_SIZE        ; Size of partition in sectors
  40.  
  41. PART7 (Extension):
  42. 0x17A     DS.B 1    P7_FLAG        ; Non-zero if partition enabled
  43. 0x17B     DS.B 3    P7_ID          ; "GEM" if partition enabled
  44. 0x17E     DS.L 1    P7_START       ; Start sector of partition
  45. 0x182     DS.L 1    P7_SIZE        ; Size of partition in sectors
  46.  
  47. PART8 (Extension):
  48. 0x186     DS.B 1    P8_FLAG        ; Non-zero if partition enabled
  49. 0x187     DS.B 3    P8_ID          ; "GEM" if partition enabled
  50. 0x18A     DS.L 1    P8_START       ; Start sector of partition
  51. 0x18E     DS.L 1    P8_SIZE        ; Size of partition in sectors
  52.  
  53. PART9 (Extension):
  54. 0x192     DS.B 1    P9_FLAG        ; Non-zero if partition enabled
  55. 0x193     DS.B 3    P9_ID          ; "GEM" if partition enabled
  56. 0x196     DS.L 1    P9_START       ; Start sector of partition
  57. 0x19A     DS.L 1    P9_SIZE        ; Size of partition in sectors
  58.  
  59. PART10 (Extension):
  60. 0x19E     DS.B 1    P10_FLAG        ; Non-zero if partition enabled
  61. 0x19F     DS.B 3    P10_ID          ; "GEM" if partition enabled
  62. 0x1A2     DS.L 1    P10_START       ; Start sector of partition
  63. 0x1A6     DS.L 1    P10_SIZE        ; Size of partition in sectors
  64.  
  65. PART11 (Extension):
  66. 0x1AA     DS.B 1    P11_FLAG        ; Non-zero if partition enabled
  67. 0x1AB     DS.B 3    P11_ID          ; "GEM" if partition enabled
  68. 0x1AE     DS.L 1    P11_START       ; Start sector of partition
  69. 0x1B2     DS.L 1    P11_SIZE        ; Size of partition in sectors
  70.  
  71. HARD DISK SPECIFICATIONS:
  72. 0x1B6     DS.W 1    HI_CC          ; Number of cylinders on media
  73. 0x1B8     DS.B 1    HI_DHC         ; Number of heads on media
  74. 0x1B9     DS.B 1    RES            ; Reserved
  75. 0x1BA     DS.W 1    HI_RWCC        ; Reduced write current cylinder
  76. 0x1BC     DS.W 1    HI_WPC         ; Reduced write pre-comp cylinder
  77. 0x1BE     DS.B 1    HI_LZ          ; Landing zone for head park
  78. 0x1BF     DS.B 1    HI_RT          ; Seek rate pulse
  79. 0x1C0     DS.B 1    HI_IN          ; Interleave
  80. 0x1C1     DS.B 1    HI_SPT         ; Sectors per track
  81.  
  82.  
  83. 0x1C2     DS.L 1    HD_SIZE        ; Number of sectors on media
  84.  
  85. PART0:
  86. 0x1C6     DS.B 1    P0_FLAG        ; Non-zero if partition enabled
  87. 0x1C7     DS.B 3    P0_ID          ; "GEM" if partition enabled
  88. 0x1CA     DS.L 1    P0_START       ; Start sector of partition
  89. 0x1CE     DS.L 1    P0_SIZE        ; Size of partition in sectors
  90.  
  91. PART1:
  92. 0x1D2     DS.B 1    P1_FLAG        ; Non-zero if partition enabled
  93. 0x1D3     DS.B 3    P1_ID          ; "GEM" if partition enabled
  94. 0x1D6     DS.L 1    P1_START       ; Start sector of partition
  95. 0x1DA     DS.L 1    P1_SIZE        ; Size of partition in sectors
  96.  
  97. PART2:
  98. 0x1DE     DS.B 1    P2_FLAG        ; Non-zero if partition enabled
  99. 0x1DF     DS.B 3    P2_ID          ; "GEM" if partition enabled
  100. 0x1E2     DS.L 1    P2_START       ; Start sector of partition
  101. 0x1E6     DS.L 1    P2_SIZE        ; Size of partition in sectors
  102.  
  103. PART3:
  104. 0x1EA     DS.B 1    P3_FLAG        ; Non-zero if partition enabled
  105. 0x1EB     DS.B 3    P3_ID          ; "GEM" if partition enabled
  106. 0x1EE     DS.L 1    P3_START       ; Start sector of partition
  107. 0x1F2     DS.L 1    P3_SIZE        ; Size of partition in sectors
  108.  
  109. 0x1F6     DS.L 1    BSL_START      ; Start of bad sector list
  110. 0x1FA     DS.L 1    BSL_COUNT      ; Number of bad sectors
  111.  
  112. 0x1FE     DS.W 1    EVN_CKSM       ; Evening out checksum
  113.  
  114.  
  115.  
  116. LOGICAL BOOT SECTORS:
  117.      NOTE: All labels ending in '_LH' are in 8086 format (low - high ).
  118.  
  119. 0x00      DS.W 1    BRA_CODE       00 00     ; Branch to code (not used)
  120. 0x02      DS.B 6    FILLER         "\0SUPRA" ; filler info
  121. 0x08      DS.B 3    SER_NUM        "2.0"     ; Serial number
  122. 0x0B      DS.B 2    BPS_LH         00 02     ; Bytes per sector
  123. 0x0D      DS.B 1    SPC            02        ; Sectors per cluster
  124. 0x0E      DS.B 2    RES_LH         01 00     ; Reserved sectors
  125. 0x10      DS.B 1    NFATS          02        ; Number of fats
  126. 0x11      DS.B 2    NDIRS_LH       00 01     ; Number of director entrys
  127. 0x13      DS.B 2    NSECTS_LH      xx xx     ; Number of sectors in partition
  128. 0x15      DS.B 1    MEDIA          F8        ; Media descriptor
  129. 0x16      DS.B 2    SPF_LH         xx xx     ; Sectors per fat (=NSECTS>>9)
  130. 0x18      DS.B 2    SPT_LH         xx xx     ; Sectors per track
  131. 0x1A      DS.B 2    NSIDES_LH      xx xx     ; Number of sides
  132. 0x1C      DS.B 2    NHID_LH        01 00     ; Number of hidden sectors
  133. 0x1E -> 0x1FF                                ; Unused (currently)
  134.  
  135.  
  136.      The BPB in the ST operating system is built from  information 
  137. contained  in  the boot sector for each  partition.   The  BPB  is 
  138. computed as follows:
  139.  
  140.           DS.W 1    RECSIZ         ; Record size (=BPS_LH)
  141.           DS.W 1    CLSIZ          ; Cluster size (=SPC)
  142.           DS.W 1    BCLSIZ         ; Bytes in cluster (=RECSIZ*CLSIZ)
  143.           DS.W 1    RDLEN          ; Root directory length (=NDIRS_LH>>8)
  144.           DS.W 1    FSIZ           ; Fat size (=SPF_LH)
  145.           DS.W 1    FATREC         ; Start of second fat (=FSIZ+1)
  146.           DS.W 1    DATREC         ; Start of data (=RDLEN+FSIZ+FATREC)
  147.           DS.W 1    NUMCL          ; Number of clusters (=(NSECTS/2)-DATREC-1)
  148.           DS.W 1    FLAGS          ; Flags
  149.  
  150.