[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 18, 2:33 am, mdj <mdj....@gmail.com> wrote:
> > I'd aim for 6502 64k machines with lowercase support, and try to be
> > compatible with ProDOS v1.9 as well.
>
> Support for Smartport devices with more than 2 drives (4 in slot 5)
> was only added with P8 2.0.x so my program will not be able to do
> anything on 1.9.
>
> I would refer you to ProDOS Technical Note #23 but I cannot find one
> that is new enough to include the v2.0.x versions of ProDOS.
I have a copy dated May 1992 which covers 2.0.1, but nothing later.
I don't recall where I got it - I except it was the last update from
APDA or on Apple's FTP server, or maybe Resource Central.
I seem to remember there was a "partial" update of some of the technical
notes rather than a complete replacement of the master set, and I might
have stumbled upon it by accident rather than receiving official notice.
I'll have a hunt around my IIgs to see if I can find the original files
in my download archives. I'm working from a complete set of technotes I
copied to my Mac about ten years ago.
Here is the portion describing 2.0.1 (reformatted slightly):
PRODOS 8 V2.0.1
o ProDOS 8 now supports more than two SmartPort devices per slot by
remapping the third device and beyond to different slots.
There's still a limit of 14 devices altogether, though.
o ProDOS 8 version 2.0.1 and later require a 65C02 microprocessor
or equivalent; you get RELOCATION/CONFIGURATION ERROR if you
don't have one. ProDOS 8 tests for a 65C02 by setting
binary-coded decimal (BCD) mode and adding $01 to $99, which is
the largest negative BCD value representable in an 8-bit
register. 65C02 microprocessors correctly clear the N flag when
the addition wraps to zero; 6502 microprocessors do not.
Since all of Apple's 65C02 or greater computers also have
lower-case capability, the ProDOS 8 splash screen now uses
lower-case letters. After only nine years, too.
o The file's been rearranged again, so if you have a program that
patches the P8 file, it probably breaks now. Please learn your
lesson and write a .SYSTEM program that patches ProDOS 8 in
memory and not on disk.
o The prefix is now set correctly when launching Applesoft
programs.
o Old never-used code to handle call $42 is now gone.
o Removed some RAM-disk code that was not used.
o ProDOS 8 now sets the prefix to empty when you try to set the
prefix to "/".
o The Apple IIgs clock driver inside ProDOS 8 now limits the year
to the range 00 through 99.
o Sparse seedling files are now truncated properly.
o When filling up a volume with a WRITE call, ProDOS 8 used to
return the disk full error but leave the file's mark set past the
file's EOF. This is now fixed.
o If you try to mount a new volume but all eight VCB slots are
filled, ProDOS 8 now tries to kick out the first volume in the
table with no open files. If all volumes have open files, you'll
still get error $55.
o The new quit code (introduced with 1.9) now beeps and lets the
user try another subdirectory if the one they chose can't be
opened. Previously it went forward to the next volume.
o The new quit code also now closes a directory if it gets a ProDOS
error in the directory read loop.
o When synthesizing a directory entry for a volume, ProDOS 8 always
used to assume the directory was four blocks long (for 51 files).
The /RAM disk's directory is shorter than this (one block), and
ProDOS 8 no longer returns funky errors when trying to read past
the end of this shortened directory. The EOF and blocks used are
now returned as $200 and 1, respectively.
o The system death messages are now displayed in the center of the
40-column screen, bordered by inverse spaces. This is an
improvement over the line of garbage showing at the bottom of the
screen since approximately version 1.5.
o The new quit code was rearranged to clear the screen prior to
loading the selected application. This insures that MSLOT
($07F8) points to the "boot" slot prior to starting the
application. In this way, you can launch the ProDOS file from
GS/OS to start up GS/OS. (Note that MSLOT must be set properly
for this to work.)
o If the device search code at start time finds a SCSI SmartPort, a
SmartPort status call is issued to device #2. This lets the
Apple II High-Speed SCSI card build its device tables and return
the true number of devices connected. Without this, it always
returns "4" for slot 5 or "2" for any other slot.
o KVERSION is now $21.
KNOWN PRODOS 8 V2.0.1 BUGS
o ProDOS 8 still doesn't behave perfectly when 14 or more devices
are present. Specifically, the /RAM driver tends to install
itself without checking to see whether or not there's room in the
device table.
CAUTION : ProDOS 8's remapping of SmartPort devices may interfere with
intelligent SmartPort peripherals that were already doing
their own remapping. ProDOS 8 remaps additional SmartPort
devices, even if the SmartPort firmware already did this on
its own, and this can cause problems. We never said this
would work, but we never said it wouldn't--ProDOS 8 has no way
to determine what remapping has already been done. If you
make such a card and your customers have problems, tell them
to disable your SmartPort remapping and let ProDOS 8 do it
all.
--
David Empson
dempson@actrix.gen.nz