Discussion:
Best RAM expansion cards
(too old to reply)
Anthony Ortiz
2017-08-18 23:56:27 UTC
Permalink
Raw Message
I have a question for you veterans... if you had to choose a RAM expansion card based on a) maximizing RAM and b) maximizing compatibility (ie. app support) which ones would you get ? I'm guessing the top two would be RAMWorks and RAMFactor but I've never actually owned these so I'm wondering what you guys think. Another way to look at this is : if you have an emulator, say AppleWin, and it could emulate a few RAM cards for you, which ones would they be?
Steve Nickolas
2017-08-19 00:21:52 UTC
Permalink
Raw Message
Post by Anthony Ortiz
I have a question for you veterans... if you had to choose a RAM
expansion card based on a) maximizing RAM and b) maximizing
compatibility (ie. app support) which ones would you get ? I'm guessing
the top two would be RAMWorks and RAMFactor but I've never actually
owned these so I'm wondering what you guys think. Another way to look at
this is : if you have an emulator, say AppleWin, and it could emulate a
few RAM cards for you, which ones would they be?
AppleWin and ApplePC both emulate a RAMworks, right?

I think theoretically you could prolly stuff a box full of Slinkies into
Modapple but I don't know how well that would work =P. MAME could
probably do 5 Ramfactors and a Ramworks, but I haven't tested.

-uso.
Michael 'AppleWin Debugger Dev'
2017-08-19 01:08:32 UTC
Permalink
Raw Message
AppleWin

* supports RamWorks (up to 127 pages)
* Saturn support is in currently in development. I'm hoping to get it in the next release of AppleWin but we'll see. All Saturn self tests pass -- just need to track down why it isn't emulating a 16K LC properly.
Anthony Ortiz
2017-08-19 01:14:22 UTC
Permalink
Raw Message
Post by Anthony Ortiz
AppleWin
* supports RamWorks (up to 127 pages)
* Saturn support is in currently in development. I'm hoping to get it in the next release of AppleWin but we'll see. All Saturn self tests pass -- just need to track down why it isn't emulating a 16K LC properly.
Hey Michael! I didn't know it supported RamWorks, thanks for the info. Out of curiosity, why did you stop at 127? That's 8mb, you could have gone the full 256 for 16mb right?

Also, how the heck does it actually work? I would think that the second you switch banks your program would crash hard since it doesn't exist in the other banks.
Michael 'AppleWin Debugger Dev'
2017-08-19 02:10:03 UTC
Permalink
Raw Message
Post by Anthony Ortiz
Hey Michael! I didn't know it supported RamWorks, thanks for the info.
No prob.
Post by Anthony Ortiz
Out of curiosity, why did you stop at 127? That's 8mb, you could have gone the full 256 for 16mb right?
I didn't write the RamWorks emulation -- Tom is the maintainer of that sub-system so hopefully he can chime in why 127 was chosen over 255.

But, yeah, wouldn't be too hard to modify AppleWin to support 256 pages of 64K = 16 MB.
Post by Anthony Ortiz
Also, how the heck does it actually work?
Aside from the $C071 and $C073 soft switches I don't know which parts of memory are "banked in". Again, hopefully Tom (or someone else) can add the details.

If you don't want to wait all the gory details can be found in Memory.cpp
https://github.com/AppleWin/AppleWin/blob/master/source/Memory.cpp

You can also search for: RAMWORKS
https://github.com/AppleWin/AppleWin/search?utf8=%E2%9C%93&q=RAMWORKS&type=
Post by Anthony Ortiz
I would think that the second you switch banks your program would crash hard since it doesn't exist in the other banks.
I would assume it depends on where you are executing from and what parts of RAM are banked in/out. i.e. Run from LC, and bank in/out main 48K, etc.
Anthony Ortiz
2017-08-20 02:16:52 UTC
Permalink
Raw Message
Post by Michael 'AppleWin Debugger Dev'
Post by Anthony Ortiz
Hey Michael! I didn't know it supported RamWorks, thanks for the info.
No prob.
Post by Anthony Ortiz
Out of curiosity, why did you stop at 127? That's 8mb, you could have gone the full 256 for 16mb right?
I didn't write the RamWorks emulation -- Tom is the maintainer of that sub-system so hopefully he can chime in why 127 was chosen over 255.
But, yeah, wouldn't be too hard to modify AppleWin to support 256 pages of 64K = 16 MB.
Post by Anthony Ortiz
Also, how the heck does it actually work?
Aside from the $C071 and $C073 soft switches I don't know which parts of memory are "banked in". Again, hopefully Tom (or someone else) can add the details.
If you don't want to wait all the gory details can be found in Memory.cpp
https://github.com/AppleWin/AppleWin/blob/master/source/Memory.cpp
You can also search for: RAMWORKS
https://github.com/AppleWin/AppleWin/search?utf8=%E2%9C%93&q=RAMWORKS&type=
Post by Anthony Ortiz
I would think that the second you switch banks your program would crash hard since it doesn't exist in the other banks.
I would assume it depends on where you are executing from and what parts of RAM are banked in/out. i.e. Run from LC, and bank in/out main 48K, etc.
I'd love to understand what's behind some of those switches; what would you guys say is the definitive resource for mastering bank-switched memory, including the full use of the RAMWorks card?
John Brooks
2017-08-20 04:35:24 UTC
Permalink
Raw Message
Post by Anthony Ortiz
Post by Michael 'AppleWin Debugger Dev'
Post by Anthony Ortiz
Hey Michael! I didn't know it supported RamWorks, thanks for the info.
No prob.
Post by Anthony Ortiz
Out of curiosity, why did you stop at 127? That's 8mb, you could have gone the full 256 for 16mb right?
I didn't write the RamWorks emulation -- Tom is the maintainer of that sub-system so hopefully he can chime in why 127 was chosen over 255.
But, yeah, wouldn't be too hard to modify AppleWin to support 256 pages of 64K = 16 MB.
Post by Anthony Ortiz
Also, how the heck does it actually work?
Aside from the $C071 and $C073 soft switches I don't know which parts of memory are "banked in". Again, hopefully Tom (or someone else) can add the details.
If you don't want to wait all the gory details can be found in Memory.cpp
https://github.com/AppleWin/AppleWin/blob/master/source/Memory.cpp
You can also search for: RAMWORKS
https://github.com/AppleWin/AppleWin/search?utf8=%E2%9C%93&q=RAMWORKS&type=
Post by Anthony Ortiz
I would think that the second you switch banks your program would crash hard since it doesn't exist in the other banks.
I would assume it depends on where you are executing from and what parts of RAM are banked in/out. i.e. Run from LC, and bank in/out main 48K, etc.
I'd love to understand what's behind some of those switches; what would you guys say is the definitive resource for mastering bank-switched memory, including the full use of the RAMWorks card?
For a thorough understanding of the Apple switches, the best resource is Understanding the Apple //e by Jim Sather. Pages 5-20 to 5-29 cover the MMU bank switch registers.

-JB
@JBrooksBSI
Antoine Vignau
2017-08-20 05:52:16 UTC
Permalink
Raw Message
The Apple IIe technical reference (Addison-Wesley, Apple) is another great resource for the switches.
TomCh
2017-08-20 15:11:09 UTC
Permalink
Raw Message
Post by Michael 'AppleWin Debugger Dev'
Post by Anthony Ortiz
Hey Michael! I didn't know it supported RamWorks, thanks for the info.
No prob.
Post by Anthony Ortiz
Out of curiosity, why did you stop at 127? That's 8mb, you could have gone the full 256 for 16mb right?
I didn't write the RamWorks emulation -- Tom is the maintainer of that sub-system so hopefully he can chime in why 127 was chosen over 255.
But, yeah, wouldn't be too hard to modify AppleWin to support 256 pages of 64K = 16 MB.
Post by Anthony Ortiz
Also, how the heck does it actually work?
Aside from the $C071 and $C073 soft switches I don't know which parts of memory are "banked in". Again, hopefully Tom (or someone else) can add the details.
If you don't want to wait all the gory details can be found in Memory.cpp
https://github.com/AppleWin/AppleWin/blob/master/source/Memory.cpp
You can also search for: RAMWORKS
https://github.com/AppleWin/AppleWin/search?utf8=%E2%9C%93&q=RAMWORKS&type=
Post by Anthony Ortiz
I would think that the second you switch banks your program would crash hard since it doesn't exist in the other banks.
I would assume it depends on where you are executing from and what parts of RAM are banked in/out. i.e. Run from LC, and bank in/out main 48K, etc.
re. AppleWin & RAMworks support
Currently you can only enable support via the command line, eg: applewin.exe -r 127

Be sure to use the latest (experimental AppleWin version) 1.26.3.0:
https://github.com/AppleWin/AppleWin/releases/tag/v1.26.3.0
...so that you get these RAMworks fixes:
. [Bug #413] Save-state: bug when saving >9 RAMWorks III 64K banks
. [Bug #409] Fix for AppleWorks 5.1 flickering when booting (latent bug from 2006!)

re. "Out of curiosity, why did you stop at 127? That's 8mb, you could have gone the full 256 for 16mb right?"

Actually I didn't do the RAMworks support in AppleWin either. Perhaps real RAMworks III cards can only be populated up to 8MB? Anyway as Michael says, there's no reason why we can't allow up to 255x 64KB banks.

re. "Also, how the heck does it actually work? I would think that the second you switch banks your program would crash hard since it doesn't exist in the other banks."

It works as an extension to the existing aux 64KB memory. But in addition you use the soft switches $C071/3 (but provide the same function in AppleWin) to select the aux RAMworks 64KB bank (eg. [0..126]), then just the regular RDRAM/WRTRAM ($C003-5) switches to configure the main/aux r/w mappings.

Tom
g***@sasktel.net
2017-08-20 23:42:10 UTC
Permalink
Raw Message
Post by TomCh
Post by Michael 'AppleWin Debugger Dev'
Post by Anthony Ortiz
Hey Michael! I didn't know it supported RamWorks, thanks for the info.
No prob.
Post by Anthony Ortiz
Out of curiosity, why did you stop at 127? That's 8mb, you could have gone the full 256 for 16mb right?
I didn't write the RamWorks emulation -- Tom is the maintainer of that sub-system so hopefully he can chime in why 127 was chosen over 255.
But, yeah, wouldn't be too hard to modify AppleWin to support 256 pages of 64K = 16 MB.
Post by Anthony Ortiz
Also, how the heck does it actually work?
Aside from the $C071 and $C073 soft switches I don't know which parts of memory are "banked in". Again, hopefully Tom (or someone else) can add the details.
If you don't want to wait all the gory details can be found in Memory.cpp
https://github.com/AppleWin/AppleWin/blob/master/source/Memory.cpp
You can also search for: RAMWORKS
https://github.com/AppleWin/AppleWin/search?utf8=%E2%9C%93&q=RAMWORKS&type=
Post by Anthony Ortiz
I would think that the second you switch banks your program would crash hard since it doesn't exist in the other banks.
I would assume it depends on where you are executing from and what parts of RAM are banked in/out. i.e. Run from LC, and bank in/out main 48K, etc.
re. AppleWin & RAMworks support
Currently you can only enable support via the command line, eg: applewin.exe -r 127
https://github.com/AppleWin/AppleWin/releases/tag/v1.26.3.0
. [Bug #413] Save-state: bug when saving >9 RAMWorks III 64K banks
. [Bug #409] Fix for AppleWorks 5.1 flickering when booting (latent bug from 2006!)
re. "Out of curiosity, why did you stop at 127? That's 8mb, you could have gone the full 256 for 16mb right?"
Actually I didn't do the RAMworks support in AppleWin either. Perhaps real RAMworks III cards can only be populated up to 8MB? Anyway as Michael says, there's no reason why we can't allow up to 255x 64KB banks.
re. "Also, how the heck does it actually work? I would think that the second you switch banks your program would crash hard since it doesn't exist in the other banks."
It works as an extension to the existing aux 64KB memory. But in addition you use the soft switches $C071/3 (but provide the same function in AppleWin) to select the aux RAMworks 64KB bank (eg. [0..126]), then just the regular RDRAM/WRTRAM ($C003-5) switches to configure the main/aux r/w mappings.
Tom
Just a note: Applewin works with "applewin.exe -r 128" to get 0..127 banks
John Brooks
2017-08-19 03:02:55 UTC
Permalink
Raw Message
Post by Anthony Ortiz
AppleWin
* supports RamWorks (up to 127 pages)
* Saturn support is in currently in development. I'm hoping to get it in the next release of AppleWin but we'll see. All Saturn self tests pass -- just need to track down why it isn't emulating a 16K LC properly.
BTW, the ProDOS 2.5 will include a RamWorks driver that supports up to 256 aux banks which it uses to create two ram disks:

S3,D2: /RAM in Aux bank 0 has 122 blocks free (61 KB)

S3,D1: /RAM3 in Aux banks 1-255 has 32,376 blocks free (16,188 KB)

-JB
@JBrooksBSI
Mark D. Overholser
2017-08-19 23:30:12 UTC
Permalink
Raw Message
Post by John Brooks
Post by Anthony Ortiz
AppleWin
* supports RamWorks (up to 127 pages)
* Saturn support is in currently in development. I'm hoping to get it in the next release of AppleWin but we'll see. All Saturn self tests pass -- just need to track down why it isn't emulating a 16K LC properly.
S3,D2: /RAM in Aux bank 0 has 122 blocks free (61 KB)
S3,D1: /RAM3 in Aux banks 1-255 has 32,376 blocks free (16,188 KB)
-JB
@JBrooksBSI
How will you limit the RAM Disk Driver to less than the MAX RAM of the
RAMWORKS card????


MarkO
John Brooks
2017-08-20 04:29:06 UTC
Permalink
Raw Message
Post by Mark D. Overholser
Post by John Brooks
Post by Anthony Ortiz
AppleWin
* supports RamWorks (up to 127 pages)
* Saturn support is in currently in development. I'm hoping to get it in the next release of AppleWin but we'll see. All Saturn self tests pass -- just need to track down why it isn't emulating a 16K LC properly.
S3,D2: /RAM in Aux bank 0 has 122 blocks free (61 KB)
S3,D1: /RAM3 in Aux banks 1-255 has 32,376 blocks free (16,188 KB)
-JB
@JBrooksBSI
How will you limit the RAM Disk Driver to less than the MAX RAM of the
RAMWORKS card????
MarkO
I'm not sure yet. I'm thinking of having a way to reserve aux banks either from the low ($00) end or the high ($FF) end. Reserved banks will be excluded when /RAM3 is created and formatted.

-JB
@JBrooksBSI
Hugh Hood
2017-08-22 02:46:03 UTC
Permalink
Raw Message
John,

FWIW AppleWorks 3/4/5 will step on and use all (up to either 3 Meg or 6
Meg) RamWorks aux banks for its 'Desktop Memory' _unless_ it is patched
(memory byte $11B6 / LockOutBanks) to exclude some of those aux banks.

That is an easy process, BTW, so no AppleWorks user should be seriously
deterred from using your ProDOS 2.5 built-in aux RAM disk.

AppleWorks takes its aux banks from the 'bottom' up, so users of your
RAM disk would want to reserve aux banks from the low ($00) end.




Hugh Hood
Post by John Brooks
Post by Mark D. Overholser
How will you limit the RAM Disk Driver to less than the MAX RAM of the
RAMWORKS card????
MarkO
I'm not sure yet. I'm thinking of having a way to reserve aux banks either from the low ($00) end or the high ($FF) end. Reserved banks will be excluded when /RAM3 is created and formatted.
-JB
@JBrooksBSI
retrogear
2017-08-22 17:25:13 UTC
Permalink
Raw Message
I owned (and still own) several RamFactor cards but never had the RamKeeper so partitioning it seemed futile since no backup. I just bought a Ramfactor8M from a2heaven.com which has a coin battery for backup so now I have os bootable partitions for ProDOS, Pascal and hopefully DOS and CP/AM. Just exploring the possibilities now.

Larry G

Ralf Kiefer
2017-08-19 01:42:24 UTC
Permalink
Raw Message
Post by Anthony Ortiz
I'm guessing the top two would be RAMWorks and RAMFactor but I've never
actually owned these so I'm wondering what you guys think.
You can use a RAM card in the AUX slot with Appleworks to get more RAM
with the application. RAM cards in other slots can just used as RAM
disk.

But RAM cards used as RAM disks in the AUX slot are slower than RAM
cards in the normal slots like the RAMFactor which is the fastest.

If you want to run Apple Pascal 1.3 the AE RAMWorks card in the AUX slot
should run as RAM disk without additional driver.

- Ralf
Michael Mann
2017-08-20 18:18:42 UTC
Permalink
Raw Message
I have a question for you veterans... if you had to choose a RAM expansion card...
What a great question. Which RAM card was the best, specifically for the ][+ (no aux slot)?
Steve Nickolas
2017-08-20 19:13:23 UTC
Permalink
Raw Message
Post by Michael Mann
I have a question for you veterans... if you had to choose a RAM expansion card...
What a great question. Which RAM card was the best, specifically for the ][+ (no aux slot)?
Probably a Saturn type.

-uso.
Michael J. Mahon
2017-08-20 22:07:00 UTC
Permalink
Raw Message
Post by Steve Nickolas
Post by Michael Mann
I have a question for you veterans... if you had to choose a RAM expansion card...
What a great question. Which RAM card was the best, specifically for the
][+ (no aux slot)?
Probably a Saturn type.
-uso.
I agree. The Saturn 128K card provided the first useful RAM disk for my
][+.
--
-michael - NadaNet 3.1 and AppleCrate II: http://michaeljmahon.com
g***@sasktel.net
2017-08-20 23:53:14 UTC
Permalink
Raw Message
Post by Michael J. Mahon
Post by Steve Nickolas
Post by Michael Mann
I have a question for you veterans... if you had to choose a RAM expansion card...
What a great question. Which RAM card was the best, specifically for the
][+ (no aux slot)?
Probably a Saturn type.
-uso.
I agree. The Saturn 128K card provided the first useful RAM disk for my
][+.
--
-michael - NadaNet 3.1 and AppleCrate II: http://michaeljmahon.com
I have to disagree. A 1 Mb Ramfactor allowed for 4 different ramdisks and had memory left over for Appleworks.

I had 2 ramdisks for Dos 3.3 and 2 for Prodos and it allowed you to boot into any of them.
Michael J. Mahon
2017-08-21 14:20:10 UTC
Permalink
Raw Message
Post by g***@sasktel.net
Post by Michael J. Mahon
Post by Steve Nickolas
Post by Michael Mann
I have a question for you veterans... if you had to choose a RAM expansion card...
What a great question. Which RAM card was the best, specifically for the
][+ (no aux slot)?
Probably a Saturn type.
-uso.
I agree. The Saturn 128K card provided the first useful RAM disk for my
][+.
--
-michael - NadaNet 3.1 and AppleCrate II: http://michaeljmahon.com
I have to disagree. A 1 Mb Ramfactor allowed for 4 different ramdisks
and had memory left over for Appleworks.
I had 2 ramdisks for Dos 3.3 and 2 for Prodos and it allowed you to boot into any of them.
Good point. But by the time of the Ramfactor, I had pretty much retired my
][+ and was using a //e with an Aux slot card.

I was usually trying to find the least expensive path, so I built my own
Saturn clone from a board purchased at a computer fest around 1982.
--
-michael - NadaNet 3.1 and AppleCrate II: http://michaeljmahon.com
g***@sasktel.net
2017-08-21 20:54:51 UTC
Permalink
Raw Message
Post by Michael J. Mahon
Post by g***@sasktel.net
Post by Michael J. Mahon
Post by Steve Nickolas
Post by Michael Mann
I have a question for you veterans... if you had to choose a RAM expansion card...
What a great question. Which RAM card was the best, specifically for the
][+ (no aux slot)?
Probably a Saturn type.
-uso.
I agree. The Saturn 128K card provided the first useful RAM disk for my
][+.
--
-michael - NadaNet 3.1 and AppleCrate II: http://michaeljmahon.com
I have to disagree. A 1 Mb Ramfactor allowed for 4 different ramdisks
and had memory left over for Appleworks.
I had 2 ramdisks for Dos 3.3 and 2 for Prodos and it allowed you to boot into any of them.
Good point. But by the time of the Ramfactor, I had pretty much retired my
][+ and was using a //e with an Aux slot card.
I was usually trying to find the least expensive path, so I built my own
Saturn clone from a board purchased at a computer fest around 1982.
I was so impressed with everything the Ramfactor did that I bought 4 more, but I was too cheap to buy a RamKeeper. Go figure.

IAH (in all honesty), I didn't even know about the RamKeeper until almost 5 years after I bought the Ramfactors. Don't know how it escaped my attention.
Anthony Ortiz
2017-08-22 00:57:20 UTC
Permalink
Raw Message
Post by g***@sasktel.net
Post by Michael J. Mahon
Post by g***@sasktel.net
Post by Michael J. Mahon
Post by Steve Nickolas
Post by Michael Mann
I have a question for you veterans... if you had to choose a RAM expansion card...
What a great question. Which RAM card was the best, specifically for the
][+ (no aux slot)?
Probably a Saturn type.
-uso.
I agree. The Saturn 128K card provided the first useful RAM disk for my
][+.
--
-michael - NadaNet 3.1 and AppleCrate II: http://michaeljmahon.com
I have to disagree. A 1 Mb Ramfactor allowed for 4 different ramdisks
and had memory left over for Appleworks.
I had 2 ramdisks for Dos 3.3 and 2 for Prodos and it allowed you to boot into any of them.
Good point. But by the time of the Ramfactor, I had pretty much retired my
][+ and was using a //e with an Aux slot card.
I was usually trying to find the least expensive path, so I built my own
Saturn clone from a board purchased at a computer fest around 1982.
I was so impressed with everything the Ramfactor did that I bought 4 more, but I was too cheap to buy a RamKeeper. Go figure.
IAH (in all honesty), I didn't even know about the RamKeeper until almost 5 years after I bought the Ramfactors. Don't know how it escaped my attention.
I recall being in awe of AE and seeing their beautiful purple-themed ads in every Apple magazine and drooling over everything they made. I was too young to make any practical use of their RAM cards but I still desired them along with their sound card, internal hard-drive, disk-drives, etc... There was something about their particular brand that appealed to me so much; their level of refinement and polish was something that left an indelible mark on me to this day. I recently read about their troubles towards the end and it's a shame that they ended the way they did; wonder what happened to the folks at AE and if they every show up at KansasFest or these forums.
Loading...