Path: utzoo!attcan!utgpu!jarvis.csri.toronto.edu!mailrus!wuarchive!gem.mps.ohio-state.edu!ginosko!uunet!microsoft!brianw From: brianw@microsoft.UUCP (Brian Willoughby) Newsgroups: comp.sys.apple Subject: Re: 35 track floppies Summary: More of the same, skip now if uninterested Keywords: Formatting Message-ID: <7972@microsoft.UUCP> Date: 6 Oct 89 04:11:46 GMT References: <890921211121.002635@DOCKMASTER.ARPA> <7834@microsoft.UUCP> <7922@microsoft.UUCP> <13251@athertn.Atherton.COM> Reply-To: brianw@microsoft.UUCP (Brian Willoughby) Organization: Microsoft Corp., Redmond WA Lines: 88 In article <13251@athertn.Atherton.COM> paul@athertn.Atherton.COM (Paul Sander) writes: >In article <7922@microsoft.UUCP>, brianw@microsoft.UUCP (Brian Willoughby) writes: > >>I suggest that the Disk ][ driver inside the ProDOS code (the ONLY driver >>within ProDOS other than the clock card support, all other drivers are in >>ROM) allow access to floppies of ANY block size, but that the track >>access be limited in how long it will try to seek. > >This may be a viable compromise, but it breaks down if the drive is a 40-track >drive but the head actuator is sticky enough (dust, soda, age, whatever) that >the amount of time (or number of retries) is exceeded before the seek routine >gives up. The purpose of using a number of retries is NOT so that the OS will work with damaged drives or floppies. The feature is there because 5.25 floppies are soft-sectored and there is also no Track 0 sensor to read the location of the head. If the head seek is inhibited in any way it would probably be good to quit early, thus forcing the user to fix their drive. >>>The boot ROMs on the controller contain only an IWM and a bootstrap loader. >>>They give no indication to the capacity of the drive. >> >>BTW, the IWM is made up of logic gates, and therefore cannot be contained >>within a ROM. > >For the record, ROMs _are_ logic gates. Replace the diodes that define the >1-bits with nicrome fuses, you get a PROM. Reduce the number of inputs >to the gates, you get an FPLA. Add feedback from the logic gate outputs to >their inputs, and maybe some registers, you get a PAL. By the way, the >DISK ][ controller contains two identically numbered PROMs, with different >stickers on them; one contains executable code, the other contains (with the >help of a register) a finite state machine. More than one computer >manufacturer has used PROMs as a way of increasing the flexibility of a circuit >when timing requirements are not so tight that dedicated logic was needed. OK, the IWM is made up of several different kinds of logic gates, and therefore cannot be contained within a ROM. Namely there is a bit-addressable register, a shift register, open collector drivers and a 555 Timer to keep the disk motor on for a short period after an access. These functions cannot be implemented within a ROM. [more deletions] >I must be missing something. You can produce 40-track diskettes for your >own use, AND produce 35-track diskettes that I can read, with NO special >steps (e.g. rebooting) in either process? Or do you need to hack a special >formatter for one of the formats? Or is there something else I've missed? Yes, you got it babe. I can write or copy all the files I want to a 35 track disk and then hand it to you to use on Apple's standard ProDOS with nary a single hitch involved. Formatting is a special case, but as you'll no doubt find, it is a special case for every ProDOS user. I don't use the provided FILER.SYSTEM for formatting. Instead, I use DOS 3.3 to format a disk (I always format all 40 tracks with the soft-sector address markers) and then copy a blank ProDOS directory to the disk of the appropriate size (35 [280 blocks] or 40 track [320 blocks]). This process is roughly equivalent to 'zero'ing a volume with the Pascal Filer, after the low-level formatting has been done by another routine. I looked up the directory format in Beneath Apple ProDOS and found the byte to change which indicates volume size. Using a sector editor, I wrote this change to a blank 40 track disk which is now my master for all blank disks (named /PRO40). BTW, it doesn't hurt anything if I format all disks to 40 track, because the OS doesn't use the extra blocks unless the directory size includes them. Plus, I always have the option of changing a 35er to a 40 track disk with a sector editor. > In any case, another tweek to the application must be done if >Apple decides to support 77-track 5.25" floppies in such a way that they plug >into a Disk ][ controller; such a tweek shouldn't be necessary. The device >driver should do right thing and make its functionality available to the >application. If the seek routine did not assume that it could ALWAYS find the requested track AND ProDOS read the volume size from the 5.25 disk instead of hard-coding it, then 5.25 drives larger than 40 tracks would also work if they were truely Disk ][ interface compatible. I would have to know more about these 77-track drives before I could comment on whether or not I think they could be supported in the 5.25 driver which is part of ProDOS (i.e. not a loaded driver). >Paul Sander (408) 734-9822 | If you must describe both quantity and Brian Willoughby UUCP: ...!{tikal, sun, uunet, elwood}!microsoft!brianw InterNet: microsoft!brianw@uunet.UU.NET or: microsoft!brianw@Sun.COM Bitnet brianw@microsoft.UUCP