[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: DOS 3.3 Nibble Encoding
In article <1993Nov19.203215.16509@nntpd2.cxo.dec.com>
k_bouchard@csc32.enet.dec.com (My name is...) writes:
>
> Am I out in left field on this? All this verbage to explain something
> basic? I always thought that *any* computer boots from sector0-track0
> because early in the boot process of *any* computer,a RESET signal is
> sent out on the computer's I/O bus (or whatever bus the various
> controllers sit on) and this "RESET" results in all registers being
> set to zero. (including both sector and track registers)
The Apple II doesn't have anything which could be described as a
"track register" or "sector register". It does all low-level sector
encoding and decoding in software (for a floppy disk).
This might be how it works on some computers, but none that I'm
familiar with. The vast majority of computers do all of this via
software. Some have hardware support (e.g. the PC's disk controller
handles all the sector encoding and track stepping), but still select
the desired track/sector or block through software.
For computers that bootstrap load from the disk (including the Apple
II and PC), the startup ROM in the computer makes a decision about
which drive to boot, then reads from a predefined track/sector or block
(or whatever they decide to call it) and transfers control to it.
This is usually the first track/sector or block on the disk, but there
could be a type of computer which decides to read some other sector to
boot.
One example of this is SCSI hard drives on an Apple II. The SCSI card
reads partitioning information from the first few blocks on the disk,
then boots by reading block 0 of the first logical partition on the
drive (for the Apple SCSI cards, at least - the RAMFast can boot from
any partition). The physical block number could be up in the
hundreds, depending on the size of the partition map, and any device
drivers which are installed on the disk.
A Macintosh booting from a floppy doesn't read any code from a fixed
location on the disk. It reads several data tables at the start of the
disk, then loads several files from the System folder (the location of
which is given in the tables loaded from low-numbered blocks). The
Macintosh ROM contains the file system, so that doesn't need to be
loaded from disk (unlike the Apple II or PC).
A Macintosh booting from a hard drive is more like an Apple II. It
reads physical block 0 to get the "driver descriptor map", which
contains the physical disk location of the device driver. This is
loaded into memory, and used to boot from a preselected partition, in
a similar manner to floppy booting.
The PC works very much like the Apple II in this area.
--
David Empson
dempson@swell.actrix.gen.nz
Snail mail: P.O. Box 27-103, Wellington, New Zealand