[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: What do I do next?
- Subject: Re: What do I do next?
- From: dempson@actrix.gen.nz (David Empson)
- Date: Sat, 16 Feb 2002 06:05:45 +1300
- Newsgroups: comp.sys.apple2
- Organization: Empsoft
- References: <D0748.1874$mU4.97659@bgtnsc06-news.ops.worldnet.att.net> <zk748.144$_F4.92538@news0.telusplanet.net> <0eo48.2650$S67.154202@bgtnsc05-news.ops.worldnet.att.net> <Pvp48.3995$M3.596295@news1.telusplanet.net> <BMq48.2770$Ab1.169192@bgtnsc04-news.ops.worldnet.att.net> <Bqr48.4716$M3.671977@news1.telusplanet.net> <a453h9$6vv$1@venus.itns.co.za> <a45k9r$16ki$2@nserve1.acs.ucalgary.ca> <1f7fsrr.kmo88l1lwsr7vN%dempson@actrix.gen.nz> <a47d30$1a0k$2@nserve1.acs.ucalgary.ca> <3c6c8b0a$1@news.uow.edu.au>
- User-agent: MacSOUP/2.4.2
- Xref: archiver1.google.com comp.sys.apple2:17556
David Wilson <david@uow.edu.au> wrote:
> dempson@actrix.gen.nz (David Empson) writes:
> >Yes. The "Apple II Memory Expansion Card" works on all Apple II models
> >with slots. It was typically supplied with 256 KB of RAM and is
> >expandable up to 1 MB, using 256Kx1 RAM chips in sets of eight.
>
> >I'm somewhat rusty on the other user-level details. I'm slightly more
> >familiar with AE's RamFactor, which works on the same principle but has
> >additional functionality. In particular, I forget whether Apple's card
> >supports DOS 3.3.
>
> It does - IN#n will patch DOS to allow the card to be used as a 256KB or
> 400KB disk (if I recall this correctly).
Ah, good. I had a feeling that it did this, but couldn't recall how it
hooked into DOS.
The RamFactor lets you partition the card between at least DOS and
ProDOS.
> >At the hardware level, the card uses four locations in the I/O space
> >allocated to the slot to implement a three-byte address register and
> >one-byte data register. Applications are not supposed to use this
> >interface directly - the SmartPort driver on the card is the recommended
> >method for doing data transfers between the card and main memory.
>
> Yes. Looking at the source code (either disassembled or as listed in the
> Technical Manual for the card) reveals that the Smartport firmware also
> can read/write directly into Aux RAM.
By "main memory", I meant "the normally addressable RAM of the
computer", not specifically the motherboard RAM. I should have been
clearer.
> >The Apple IIc memory expansion card (supported by the revision 3 and 4
> >firmware, and the last motherboard revision of the IIc) works on the
> >same principles, and is 100% compatible at the software level.
>
> The //c card is almost the same as the ][ card apart from the connector
> and the lack of onboard firmware (the //c has the firmware on the
> motherboard).
I knew about the firmware. The rest makes sense - if the design works,
why change it?
> >The Apple IIc+ memory expansion slot also works on the same basis, but I
> >gather that the IIc memory expansion card doesn't work in the IIc+,
> >possibly due to timing issues or some other hardware problem.
>
> The code is highly optimised and I suspect that the ASIC cannot handle the
> data throughput of an accellerated machine (my Transwarp //e had problems
> with it as well) - the cache could improve things to the point that back
> to back writes to (or reads from) the card could occur without giving it
> time to increment its address registers (or perhaps perform refresh).
>
> One day I will try pessimizing the code and see if it works with my
> Transwarp.
"Pessimizing" - I like it. :-)
It sounds like the same sort of problem that Apple had with AppleTalk on
an accelerated IIgs, prior to System 6.0.1.
- The accelerators were obeying the IIgs speed register if it was set to
run in slow mode, but were going full tilt if set to fast mode.
- Older versions of the AppleTalk driver were doing speed-critical
timing while the CPU was set to fast mode.
The combination of these two was throwing the timing out, resulting in
communication errors. In 6.0.1, Apple changed the driver so that the
time-critical stuff was done with the IIgs speed set to normal, which
was obeyed by the accelerator.
A similar solution could work in this case - if the slot is set to
operate in slow mode, then the delays provided by the Zip or Transwarp
(or the IIc+'s built-in Zip equivalent) should be sufficient to avoid
issues with the code running too fast for the hardware.
--
David Empson
dempson@actrix.gen.nz