[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Apple II SRAM card
On Sun, 10 May 2009, srkh28@gmail.com wrote:
Cool, thanks for the info. The bank addresses are important, but its
that first 16k bank I need the most. Now its a matter of understanding
the read/write control. Ive noticed with a lot of ram cards (actually,
most) that they have a ribbon cable to the II's main memory - i expect
to pinch pre-generated CAS/RAS, but in all honesty I dont know - this
is where a schematic can provide instant understanding. The saturn
doesnt have this cable, but it does have a LSI MC3242A, which would
require understanding. Im contemplating what ill have to do to removet
the "RAS add data", then "CAS addr data' from the design to make it a
single access cycle to my SRAM, and just how much is provided by the
main board, and how much is provided by the plug in card in slot 0.
But it should be simpler. The standard language card had the plug
because it was easier to pick up the signals from a dynamic RAM IC than
add the logic to do it on the board. The Saturn does it on board.
Dynamic ram uses a set of pins for address selection, but instead of a
full set, they use half as many, so the address bus from the computer has
to be split, the lower half going to the dynamic ram's address pins
(along with the needed control signals on the other pins) and then
the upper half of the address bus goes to those same pins (with
other sets of control signals). This always makes dynamic ram
more complicated to use than static, though the higher density
of dynamic ram pushes things towards dynamic.
Static ram doesn't need the upper and lower bits of the address
bus impressed onto their address lines, it's dynamic ram that needs it.
A 16K static ram card would require 16k of static RAM, I can't remember
whether you can get it all in one package or not, but let's pretend
it can. The data pins go to the databus, likely buffers makes sense
in between. The lower address bits go to the address bus. There's a chip
select that you either need to have a bit of address decoding (using
the highest bits of the address bus) or maybe the Apple II itself
has enough decoding (one of the pins on the interface bus). There
is either a r/w pin on the RAM, or separate read and write pins, I can't
remember, and that would connect to the r/w pin out of the 6502 and on
the interface bus.
What's required is no different from what would be required if you had
a small amount of ram on a board, which the interface bus is arranged
to handle. The only difference is that you are dealing with a larger
amount of ram.
Endless 6502 based computers were made with static ram, it's far
simpler than dynamic ram, except for the density back then. Static
ram is much denser than it was when the Apple II was designed. I've
seen people suggest getting static ram off older "IBM PC" boards,
where relatively high density static ram is available in the form
of cache ram.
It's far simpler, for the purpose of adding RAM, to use static than
dynamic.
After you get that simple circuit going, then you have to add
more ram (pretty much all the pins would be connected in parallel
with the first RAM IC), a latch, the output of which would control
which bank of RAM is being used (and the output would either control
an address pin on the RAM, or the chip select, depending on the
specific design and the density of the static RAM).
For this purpose, you just ignore the dynamic ram in the Apple II,
and the circuitry needed to interface it with the 6502.
It would be more complicated if you were trying to superimpose this
static ram board over the full address space that is currently occupied by
RAM, but you aren't, you are filling a space with static ram that is
empty (or at least occupied by ROM).
Michael
Does the saturn behave like a standard 16k ram card for the first bank
when plugged into slot 0?
Sorry for torturing you guy's with the pleb questions.