Jump to content
techknight

Designing a portable RAM card

Recommended Posts

I found the problem. Not the solution yet... 

 

Soon as I tie in the last MB of RAM, to take it up to 9MB is when it goes haywire. I'm thinking its running into ROM somehow. odd... As long as I stay at 8MB and under, it all works beautifully. 

 

Soon as I add the last MB, spectacular failures ;)

 

My original CPLD design is perfect. Just didnt like the last MB. 

Share this post


Link to post
Share on other sites

Techknight.. from what I recall they could only go up to a certain size depending on the model.. I think the limit was 9 on one of them.. the other 8MB.. I remember seeing this.. Perhaps this is why my PDS was missing the last chip so it only had 8MB total.. and that was a card from a 5120.. I wish i could remember.. but the max was 8MB on one and 9 on the other..

Share this post


Link to post
Share on other sites

So can you add the last chip for a total of 8MB on the card and make a jumper depending on the model??? So you can flip between 7MB and 8MB.. Get the order forms ready.. LOL!!!!

Share this post


Link to post
Share on other sites

No jumper needed. its right at 8MB. I just turned off the last MB, so it stays at 8MB instead of 9MB. So basically we are wasting half of the last chip. doing nothing. 

 

I could remap it in the expansion ROM area, but then we would need a special driver to tell the Mac OS to use it as RAM. 

 

The last thing I need to do is toss it in a Backlit model and see if it works. In theory, it should be universal. I actually did NOT need the DTACK connection on the non-backlit. So, we will see on the Backlit whether I need it or not. 

Edited by techknight

Share this post


Link to post
Share on other sites

Found this...

 

NAME  

MACINTOSH Portable M5126

MANUFACTURER  

Apple

TYPE  

Portable Computer

ORIGIN  

U.S.A.

YEAR  

1990

END OF PRODUCTION 

1991

BUILT IN LANGUAGE 

None

KEYBOARD  

Typewriter style, 80-key with numeric keypad

CPU  

Low power version of Motorola 68000

SPEED  

16 MHz

RAM  

1 MB (up to 9 MB)

ROM  

256 KB

GRAPHIC MODES 

640 x 400

COLORS  

Monochrome

SOUND  

8-bit stereo

SIZE / WEIGHT 

33.8 x 37.7 x 10.3 cm / 7.1 kg

I/O PORTS 

Serial, Parallel, SCSI, ADBx2

BUILT IN MEDIA 

One 3.5'' FDD 40 MB HDD (optional)

OS  

MAC OS 6.0.4 to 7.5.5

POWER SUPPLY 

Internal lead-acid battery 6.5V

PRICE  

$4200

Share this post


Link to post
Share on other sites

So 5120 can only go to 8MB total and 5126 to 9MB total.. You are testing on a 5120.. You should test on a 5126 board and bring it up… Perhaps my 5126 board.. heeee….

Share this post


Link to post
Share on other sites

That means I need two different CPLD firmwares. One for backlit, one for not...

 

Maybe the next PCB i need to add a jumper to enable/disable the 9th MB. 

 

On my machine, that 9th MB will overlap ROM and she falls flat on its ass. lol.

 

I only ordered 5 PCBs on the first run to make sure I didnt have any hardware bugs. And I didnt, as I figured i wouldnt. I looked over that thing time and time again proofreading it. 

 

New PCB will have the jumper. I need to see if the fab house has solder paste stencils. that will make things so much easier and faster. I did my first board all by hand. 

Edited by techknight

Share this post


Link to post
Share on other sites

I'm sure everyone is cool with just getting 8MB's… I just thought there might be a way to just use that little extra ram… Yeah next design throw a jumper scenario on it if possible to flip back and forth.. :)

Share this post


Link to post
Share on other sites

Well, I know for a fact that the M5120 I have here on my desk, ROM starts at &H900000 which is the 9Megabyte marker. So yea I cant go past 9MB. 

 

Unless I add the last MB of RAM to the ROM Expansion address location, but that would require a special extension to tell System 6/7 to use that as RAM. That is something I dont know how to do. 

Share this post


Link to post
Share on other sites

So 5120 can only go to 8MB total and 5126 to 9MB total.. You are testing on a 5120.. You should test on a 5126 board and bring it up… Perhaps my 5126 board.. heeee….

Backlit needs the /AS jumper. Without it it only sees 5MB. with it I can get all 8MB.

 

However there is an odd bug. When an application goes into expanded RAM the backlight flickers on and off rapidly with RAM accesses.

 

If I dont use the /AS wire and cap it at 5mb its perfectly fine.

 

But my /AS wire was a horrendously long clip lead plus I didnt have /DTACK hooked up either, so that could have been an issue.

 

post-366-0-21626600-1415119498_thumb.jpg

post-366-0-06521100-1415119538_thumb.jpg

Share this post


Link to post
Share on other sites

Wow! Excellently cool progress, Techknight.

 

What does /AS do? Is that Address Strobe? Still don't know what it does, even if that's the correct name. It seems bizarre that putting a load on that wire could cause the backlight to switch off and on.

Share this post


Link to post
Share on other sites

the /AS is the address strobe, yes...

 

Starting with the Backlit portable, they removed the /AS in the RAM connector and replaced it with a signal, known as /RAM.CS 

 

This signal is controlled by an external address decoder network, which actually sits between the ROM socket, and the RAM itself. a series of 74 series gates. but I digress... 

 

This /RAM.CS will only assert within the first 5MB of address space. After that, the signal no longer gets asserted. Therefore, on the M5126, you have a RAM ceiling of 5MB in the RAM slot. PDS is an exception though because you have access to the entire bus so these limitations dont exist. 

 

but since I didnt feel like dealing with the Eurocard connectors, or the PDS, I designed the card to fit in the existing RAM slot. 

 

So.... In order to gain full addressing on the backlit portable via the RAM slot, you have to pick off the /AS address strobe signal either from the PDS, or from the ROM slot. Since ROM is still attached directly to the bus, and not isolated through an external decoder. 

 

The catch is, after 5+MB the RAM decoder network no longer generates a /DTACK signal to tell the processor that the data transfer was successful. 

 

So, I am thinking that since I didnt hook the DTACK line up, it was causing a ton of bus errors even though the system information was showing the full 8MB of RAM. 

 

If I use the /RAM.CS signal instead of /AS, everything works great. But only sees 5MB as expected. If I remove the jumper that connects to /RAM.CS and replace it with a wire that goes to /AS instead, It shows the full 8MB of RAM. But every time an application launches and uses the extended RAM (RAM past 1MB), the backlight flickers on and off extremely rapidly, at the same pace as the RAM accessing occurs. 

 

so i think the DTACK connection not being made is an issue, OR, since my /AS wire clip lead was so long and coiled, it was distorting the signal to the RAM card causing issues with data transfers in and out of RAM. 

 

Funny thing though... no bombs, or system errors/sad macs. Just kept right on chugging with backlight flickering. Soon as I exited microsoft word 5.1, it quit. backlight stayed on. 

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×