calling SmartPort interface directly

General forum for support issues related to the CFFA3000

calling SmartPort interface directly

Postby peterferrie » Mon Sep 10, 2018 10:02 am

I have configured my CFFA card with five ProDOS volumes, based on a bug report for something that I wrote.
On my system, ProDOS maps two volumes at slot 7, two at slot 4, and the final one at slot 1.
If I ask ProDOS to do a block read of the unit in slot 1, it succeeds and I see the expected content.
If I try to do the same thing without ProDOS (by calling $C70D with the exact unit number), I get garbage being read.
If I iterate through all unit numbers and then dump the volume names, I see all of the volumes other than the one in slot 1.
i.e. I can read any volume successfully other than the one in slot 1.
I didn't see anything in the firmware disassembly that would suggest special handling for ProDOS but I might have missed it.
Any idea what else could be the cause?
peterferrie
 
Posts: 7
Joined: Tue Oct 06, 2015 5:41 pm

Re: calling SmartPort interface directly

Postby dlyons » Fri Oct 26, 2018 1:31 pm

Hi Peter,

The CFFA3000 should not be able to tell the difference between your call to $C70D, and the same call made by ProDOS. That's what ProDOS would do for the slot-1 device.

Let's track this down...I'm not aware of any issues with the 3K's handling of SmartPort calls, but we won't know until we figure this out.

I believe you're issuing a SmartPort read-block command for Unit 5 and Block 2. (Does your code check for an error (A=00) on return?)

Are you running on an Apple IIgs, or some other model? (The 3K has different code on the Apple II side.) If a GS, are you using a Standard or Extended SmartPort call? The 3K supports the extended calls only on the GS, because the main use is for buffer pointers into any IIgs memory bank. I believe ProDOS uses a standard call.

Can you post more details of your SmartPort call, including the parameter block?

Cheers,

--Dave
dlyons
 
Posts: 39
Joined: Sun Feb 17, 2002 6:00 pm


Return to CFFA3000 Support

Who is online

Users browsing this forum: No registered users and 1 guest

cron