8

For starters, the Saturn 128K card was a RAM expansion card produced during the Apple ][+ era. From what I recall, unlike the later AUX slot RAM expansions for the Apple //e, it did not provide bank switching of the full 6502 address space, but rather multiple pages that were mapped to a block of memory on the ][+ (LC space?), more like the slinky RAM card that Apple produced. That being said, the question isn't really about its mechanics and I just put this here for some background.

The question really is if you ran a version of ProDOS that supported the Apple II/II+ machines (i.e. v1.0.x), would a Saturn card be recognized and used as a /RAM device (a.k.a. slot 3 drive 2)? Or was that a feature reserved for the extended 80-column card of the Apple //e (and naturally the //c and IIgs)? Would it make a difference if the card was installed in a //e?

If the card wasn't supported in the original ProDOS versions from Apple, did this get picked up by the recent releases of v2.4.x?

2 Answers 2

6

rather multiple pages that were mapped to a block of memory on the ][+ (LC space?),

Exactly (*1). The Saturn card is like 4 (64 Ki) or 8 (128 Ki) language cards at once. It does in fact replace the language card (*2).

The question really is if you ran a version of ProDOS that supported the Apple II/II+ machines (i.e. v1.0.x), would a Saturn card be recognized and used as a /RAM device (a.k.a. slot 3 drive 2)?

No. The ProDOS /RAM driver is tied to the banking scheme of the IIe. It works with all plain 64 KiB AUX-Slot cards, even with some offering more than 64 KiB, but not any LC variant.

But there were third party drivers like this one created by Matthew Stier for ProDOS 1.01. There's also a cleaned up version that might work with ProDOS 2.x

Would it make a difference if the card was installed in a //e?

Not really, as it simply works different from AUX-Slot cards

If the card wasn't supported in the original ProDOS versions from Apple, did this get picked up by the recent releases of v2.4.x?

Not that I know of. After all, it's kind of odd to add a rather outdated Saturn 128 to a IIe, when there are way bigger cards made for the IIe are available. Then again, the Apple II+ is defined as an explicit different machine type and 2.5a does act different for a II+ when it comes to character handling. So, adding Saturn support would be kinda cool.


*1 - If I decode LC rightful as Language-Card :)

*2 - In vanilla setup at least. there are ways to hack a Saturn to work with a language card, but only as long as it's not an early one.

4
  • While original Saturn cards are definitely outdated, the interest about it is probably fed by the existence of several cheap compatible modern cards, some even as open source projects. ct6502.org/product/saturn128 or finapple.hho.fi/finapple/index.php/2020/11/15/… or github.com/garrettsworkshop/RAM128 Jan 27 at 12:03
  • @PatrickSchlüter True, much is possible, but so far not asked for. Also, as far as Saturn compatibility goes, they will most likely behave the same :)
    – Raffzahn
    Jan 27 at 13:03
  • The only software I ever had hands-on with in combination with a Saturn was VisiCalc around 1983. I don't own one anymore nor have interest, but am more curious if ProDOS would leverage it at all, especially the newer v2.4.2 release that apparently will run on a ][+ again.
    – bjb
    Jan 27 at 18:46
  • @bjb Would be nice, but to my understanding 2.4.x (or 2.5 fwiw) does not add a /RAM driver for Saturn cards. Though, I would believe it being a cool feature.
    – Raffzahn
    Jan 27 at 19:03
1

Posting this information as addendum to Raffzahn's answer as I got information straight from John Brooks (maintainer of ProDOS v2.4+) about the Saturn card on ProDOS.

Apparently it is tricky to make use of Saturn cards with ProDOS since that card only bank switches the LC RAM space which happens to be where ProDOS lives and has its file buffers. The AUX mem Ramdisk drivers have a fast block-copy-code between AUX 48K and the main LC (i.e. ProDOS temp block buffers) which relies on reading driver code from AUX memory, while reading or writing ProDOS LC. There is a 2nd, slower block-copy routine between AUX 16K LC and main 16K LC that relies on the fact that the code runs from AUX $0200, so the CPU can read the copy code from AUX 48K and toggle between AUX LC and main LC during the copy.

For the Saturn, the block copy code would have to be moved out of LC memory so the CPU could run the copy code while it bankes out ProDOS LC for Saturn LC.

For someone who wanted to get a /RAM device on an older ][ / ][+, the only route appears to be the Apple Slinky or AE RamFast card since they don't bother the LC or do any other bank switching. Instead, these cards do this by mapping a single byte data port into the slots $C0sX address space. The drawback of this approach is that it is not possible to run code out of a slinky memory card. You must have a driver (ProDOS/Smartport driver in slinky ROM) which copies bytes between $C0sX and Apple II RAM.

1
  • Cool. Thanks for asking. Did you mention Matthew Stier's driver, as that does work with ProDOS in LC while using the Saturn by it's own (slow) block move. Maybe not perfect, but worthwhile to run Prodos 2.5 on II+
    – Raffzahn
    Jan 31 at 21:51

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.