[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Question on ProDOS SmartPort drive remapping



David Wilson <mcs6502@gmail.com> wrote:

> On Dec 5, 5:26 pm, demp...@actrix.gen.nz (David Empson) wrote:
> A great explanation of SmartPort.
> 
> > For its SmartPort unit remapping, ProDOS can "reuse" any slot (apart
> > from 3) which doesn't contain a storage device. (Slot 3 is out because
> > of /RAM.)
> 
> Slot 3 Drive 1 will be used by the v2.0.x remapping code.
> The order of use is:
> 
> 4/1 4/2 1/1 1/2 2/1 2/2 5/1 5/2 6/1 6/2 7/1 7/2 3/1

Ah, OK. I had a vague recollection that 3/1 was special cased. Doing
slot 4 out of order is presumable because of common usage patterns.

> > Assuming you have a 5.25" drive in slot 6, I'm guessing you have another
> > storage device in slot 5, which is why it skipped that one when
> > allocating slot 4.
> 
> As can be seen in the table above, slot 5 is midway down the list
> (probably as both IIc and IIgs have disk drives in that slot).

In that case, Eric might be able to get a total of 11 volumes (352 MB
total) without heroic measures, depending on what is in slots 1, 2 and
5.

> > You probably can't get much more than 8. The absolute maximum limit is
> > 14 units, but you could only get that if you took out all disk
> > controller and other storage interface cards (apart from the Microdrive
> > card), and removed the extended 80-column card.
> 
> ProDOS supports up to 14 volumes but reserves 3/2 for /RAM (v2.0.1
> forgot to do that and would, if you had enough SmartPort devices, map
> a drive to it and then overwrite it with /RAM). I have managed to get
> 15 drives working under ProDOS by using 0/2 (0/1 aka Unit 00 is
> special and cannot be used).

I thought the unit list in the global page only had room for 14. Perhaps
it can be stretched by 1 - did it require code patches?

> > In principle, someone could write a program which patched the SmartPort
> > device mapping table inside ProDOS's language card, and this could allow
> > more units to be swapped in under user control, as long as the interface
> > card firmware supported more devices.
> 
> Would anyone be interested in such a program? I must do some 6502
> programming again before I forget how to...

That's something else ingrained in my brain.

A9 C1 20 ED FD 18 69 01 C9 DB D0 F6 60

I don't know all the opcodes, just the common ones.

Complete and utter waste of brain cells. :-)

> > Standard 5.25" drives have no connection with SmartPort at all (apart
> > from sharing the same physical port on a IIgs or IIc).
> 
> Unless they are plugged into a Laser UDC card in which case they can
> be accessed through the SmartPort firmware interface (which makes them
> behave differently under Apple Pascal 1.3 - they get different boot
> blocks when formatted to those found on drives connected to a Disk ]
> [ controller card [neither Pascal 5.25" disk will boot on the other
> controller]).

Ah, right. I haven't had much to do with the UDC. I have one I inherited
but I don't think I've even plugged it in.

> > You can check wheter a card has a SmartPort interface by examining the
> > firmware. No manuals handy, but I remembered this level of detail from
> > at least 11 years ago. :-)
> >
> > The ID bytes for a ProDOS block device are:
> >
> > Cn01 = 20
> > Cn03 = 00
> > Cn05 = 03
> > CnFF is not FF (13-sector 5.25") or 00 (16-bit 5.25")
> 
> 16-sector :-)

Nerve glitch between brain and finger. :-)

> Pretty darn good memory.

Indeed. I frighten myself sometimes. Unfortunately it only works really
well for stuff I learned in my teenage years and have never been able to
forget.

-- 
David Empson
dempson@actrix.gen.nz