The Amiga 1000 had a small, hidden memory expansion port on the front-middle of the machine. From what I've seen, this was always populated with a 256KB RAM expansion card that brought the base machine memory up to 512KB.

I think I've read that this might have been done due to the cost of RAM at the time to help lower the price of the base machine. However, I'm curious if this port is capable of anything more than 256KB and if so was there ever a card produced as such? Going beyond that, was this port usable for anything other than RAM expansion?

  • 3
    The pinout is available at old.pinouts.ru/Slots/RamexA1000_pinout.shtml in case anybody here is more familiar with the Amiga's bus signals. To me it looks like the "DMA register address" lines give an 8-bit address bus into 16-bit memory, but I'm not especially familiar with 68000 machines and failing immediately to understand the intended purpose of the four separate CAS-related lines. But my best guess is 18 address lines in effect (8 row + 8 column + 2 more delivered via 'upper' and 'lower' CAS?). For a 512kb maximum addressable?
    – Tommy
    Jan 11 '18 at 18:53
  • 2
    @Tommy - I've never worked with the 68000 either, but to me it looks like there's provision for two separate banks of RAM (numbered 0 and 1), plus the ability to separately address the 8-bit components if required instead of addressing all 16-bits at once (upper & lower - both would be strobed for a 16-bit access and only one for an 8-bit access). So this gives a maximum of 2 banks of 8+8 address lines * 16-bits = 256KB as suggested in the question.
    – Jules
    Jan 11 '18 at 19:41
  • 1
    I bought my A1000 in March 1986 - $1295 plus $200 for the 256Kb expansion. I didn't have enough left over for the Commodore monitor at $495, but the Amiga was also backwards compatible with my cheap Magnavox Digital RGB monitor... Winning!
    – Brian H
    Jan 12 '18 at 0:19

I'm curious if this port is capable of anything more than 256KB

No, as @Tommy already pointed out, it's just a DRAM interface and not usable for anything else.

and if so was there ever a card produced as such?

Not that I ever heared of.

Going beyond that, was this port usable for anything other than RAM expansion?

As usual, every interface could be 'reused' by throwing 'enough' hardware at the issue. Not that it would make any sense with the A1000, given that a more traditional and better usable expansion port was also available.

Why only RAM?

Why an adding such an restricted interface not good for anything beside adding a limited mmount of RAM?

It's save to assume that it was to drive down cost (of the base unit) in combination with absence of imagination. Especially when considering that the original design for the A1000 called for 256 KiB of (Kickstart) ROM and only 128 KiB RAM in the base unit. The story goes that the design team did fight hard for a larger memory with 512 KiB as target. So 256 KiB in base unit plus a cheap (PCB) connector and a plasic cap instead of full 512 KiB looks quite like the typical compromise with management (*1).

Why so complicated?

Sure, 8 simple sockets on the mainboard have been a way better solution, but then again customers could have just went ahead and bought 8 cheap chips instead of a precious RAMEX board (*2).

Technical Background:

It's basicly a 4164/4464 (*3) type chip interface for 4 blocks of 8 or 2 ICs each.

DRA0..7 provides a multiplexed 16 bit address where

/RAS signals an 8 bit row address and

/CASxy signals the lower 8 bit column address where

Due activation of either /CASxy line or lines, one or more blocks are accessed.

All data lines of chips selecetd with /CASLy are connected to D00..D07, while the ones with /CASUy are connected to D08..D15.

Sounds complicated, but is rather simple:

For 16Bit access simultanius use of
/CASL0 + /CASU0 selects the lower (first) 128 KiB
/CASL1 + /CASU1 selects the higher (second) 128 KiB

For 8Bit access use of
/CASL0 selects the lower byte of the lower (first) 128 KiB
/CASU0 selects the upper byte of the lower (first) 128 KiB
/CASL1 selects the lower byte of the higher (second) 128 KiB
/CASU1 selects the upper byte of the higher (second) 128 KiB

*1 - I bet the expectation of selling a cheap to produce 256 KiB with good profit expansions did add apeal to Commodore management :))

*2 - see *1

*3 - Yes, it's not only technical feasible to use 4164s, but even has been done. I own an early prototype card using 4164s.

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.