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

Re: Apple //c smartport compact flash adapter



Robert Justice wrote:
I ran some tests to see how the speed compared to all of this theory.
I created a basic program with 10 bload test,A$4000,L$4000, so 10 x
16K of data. This took  10.6 - 10.9 seconds. so my calculations make
this about 15KBytes/s. Not that fast, but its a start. This time was
from hitting the enter on the run, until the prompt came back.  It
took 28.3s for writing, so this was considerably slower. I'll have to
have a look why this is so much slower. The internal floppy took 29.5
for reading, and 148 for writing.

Its interesting that smartport devices where only ever connected to
cards with the IWM on them. Looking at the original disk ii interface,
I don't see why this would not have supported smartport devices, as
they only use the normal timing as per a disk II drive. I suppose they
just used the iwm with the liron, as it needed to be a new card
because of the firmware rom to run the smartport,

Also, i wonder why they have not used the 2x mode available on the
iwm? Although, looking at the code in the iic, it does a good job of
decoding the packet as it comes in. If it where to run the interface
at double speed, then it would probably have to concentrate on reading
the data, and then decode it later. ( if it can read it fast enough)

You're right--it's a big win to decode on the fly, and it saves
another buffer.  This was a major speed win in ProDOS relative to
DOS.

You can separate out the data transfer rate from the fixed overhead
by timing BLOADs of different sizes--say, 16KB as you did, and also
8KB and 4KB sizes.  Then plot the times vs. size and look at the slope
of the line and the intercept at zero size.

The inverse of the slope is the effective data transfer rate, and the
intercept is the fixed overhead for a BLOAD.

You'll also find it easier to do the timing if you print a beep
(chr$(7)) at the end of the test--it's easier to look at a watch
and listen for a beep than try to look at both the watch and the
prompt.  ;-)

It's also handy to up the number of iterations so that the total
time for a test is on the order of a minute.  Then if you read the
time to the nearest half-second, you have better than 1% accuracy.

-michael

NadaNet 3.1 for Apple II parallel computing!
Home page:  http://home.comcast.net/~mjmahon/

"The wastebasket is our most important design
tool--and it's seriously underused."