• Hello MLAers! We've re-enabled auto-approval for accounts. If you are still waiting on account approval, please check this thread for more information.

Early Macintosh home brew 4MB memory upgrade board development

I chimes, and then the 03FFFF
Here are a few steps I almost always take every time I encounter 'Sad Mac' error codes with this expansion board.

The fact that you are getting a clean and good chime strongly suggests that the power supply and some of the complementary address multiplexing logic of the expansion board are functioning correctly. This logic involves address multiplexed signals MSRA0F and MSRA1F handled by U9 and U10. It seems these components are performing as expected, and the signals tapped from the LB (Logic Board) are likely sound.

MSRA8F and MSRA9F are not involved in the address interleaving with the sound hardware, so you have to discard faulty connections between J8 and U4F (from the backside of the LB to the connections on top of the socket J8).

If J8/U4F connections are sound, your problem may mostly reside with the data bus or the control signals that route to the RAM ICs.

With the schematics on hand and the RAM expansion board installed, start by checking the resistance of each data bit trace.

Measure the resistance between the corresponding pins of the CPU (D0 through D15) and the pins of the input buffers (ICs U7 and U8). You should see values that are near-zero.

Next, check the resistance between the common buffered data bits between the relocated output buffers U20 and U21 (which must be logically traced from the backside of the LB to discard any faulty connection between the sockets on the LB and the pin headers of the expansion board) to the input buffers U7 and U8. I am referring to signals DQ0-DQ15.

If at this point everything still checks out, check the multiplexed address lines that go directly from the LB (RA2, RA3, RA4, RA5, RA6, RA7 at RP2 and RP3 pins from the backside of the LB) to the corresponding pins at the RAM ICs (RA2F, RA3F, RA4F, RA5F, RA6F, and RA7F) to ensure they are showing 47 ohms each.

Also, check RA0 from the LB to pin 4 at U9 and pin 7 at U10. Similarly, check RA1 from the LB to pin 7 at U11 and pin 12 at U9.

Finally, you could use an oscilloscope to quickly verify that you have active C2M (the 2 MHz clock at pins 4 and 10 of U1), RAS, and system WE signals on the expansion board. The System CAS signals must be present on the expansion board because the configuration you described with the Dip switches (disabling expansion RAM and enabling system RAM) works.

You can check the new generated CAS lines at test points TP1, TP2, TP3, and TP4, and the RAS and WE (RAM R/WF at R33 on the LB) signals on pins 13 and 14 on both RAM ICs.

Good luck!
 
Last edited:
hey guys, i still have the boards in JLCPCB packaging, a lot of Apple projects and stuff came in my way the last months=)
I am also procrastinating because i have a hope of combo SCSI/Rominator/68030 board and to build it at once
 
Ok, so I got it working :)
Unfortunately, it seems to have a compatibility issue with the 128k shared board.
When installed in a 512k board with Mac Plus ROMs, it's working :)
Next, I'll order a set of components for a second board and try to make it work in the 128k.
Unless you guys have any other ideas, I'll just add the optional components to turn it into a 512k board.

Great project, thanks for making it :)

Here's the vid:
 
Ok, so I got it working :)
Unfortunately, it seems to have a compatibility issue with the 128k shared board.
When installed in a 512k board with Mac Plus ROMs, it's working :)
Next, I'll order a set of components for a second board and try to make it work in the 128k.
Unless you guys have any other ideas, I'll just add the optional components to turn it into a 512k board.

Great project, thanks for making it :)

Here's the vid:
Hey there!

I'm genuinely psyched to hear you finally got it working! I watched your video—it's seriously excellent!

I really liked your approach to soldering the board. I promise I’ll release an updated version soon that includes the option to offset the relocated chips, just like you suggested.

I'll definitely keep the piggyback option available in the new revision, too. I know it's not the most elegant solution, but not every enthusiast has the confidence or the skills to successfully remove those chips from the LB, and without the right tools and technique, there's a real risk of lifting some pads.

About your comment on the ROM instructions: that detail can be confusing. The GitHub page does mention the upgrade was tested using 128KB ROMs and ROM-inator ROMs (properly patched). The Mac 128K and 512K originally used 64KB ROMs. Since the Mac Plus ROMs are 128KB, and they’re the same ones used in the 512Ke, the simple takeaway is: 128KB ROMs = Mac Plus ROMs.

I also want to tackle your theory about the missing "additional components" on the 128K Logic Board (630-0101) being the source of the "incompatibility issue" (error 03FFF) with the "shared" PCB revision #820-0141-A (that number is on the backside of the LB).

Here’s a quick explanation of why that's probably not the cause:

Those "additional components" are only there to add a ninth multiplexed address bit, which is labeled as RA8 in the LB schematics. This RA8 signal is only necessary for the RAM chips used in the Mac 512K/Ke (the 1-bit x 256 Kbit CMOS Fast Page, or simply 41256 RAM ICs)

Also, I'm almost sure that if you populate the missing components without changing the RAM ICs as well (to 41256s), you will end up shorting something! (Check PIN N°1 of the RAM ICs on the 128K version, it's connected to Vcc. In the 512K version pin N°1 is for RA8 input)

Crucially, our RAM expansion board doesn't use the RA8 signal from the Logic Board, and nothing else on the logic board does either. (besides the onboard RAM made of 41256 ICs)

What's more, the way that signal is multiplexed makes it totally incompatible with the newer RAM ICs (16-bit x 1 Mbit FP/EDO CMOS RAM, 1024 refresh cycles) we're using for this project. The original 512K LB DRAM controller logic only works with RAM chips requiring 256 or 512 refresh cycles "RAS-only" refresh method. The real clever part is that Golden Potato figured additional "glue logic" to handle the modern RAM chips that requires 1024 refresh cycles, and keeping the "RAS only" refresh method in place.

That's why it's highly unlikely that the 03FFF error is caused by the lack of those components (which only generate the RA8 signal for the 512K version of the shared board).

Still, since you seem to be the first one to attempt this upgrade on the 128K version of the shared LB, it's totally possible that "something else" besides the lack of the RA8 signal is different between the two versions. So far, the only differences I've found between both LB revisions are the type of RAM ICs used and the components to produce RA8. Perhaps someone with more expertise could shed some light on this. I must confess I was totally taken aback by the results of your testing with the 128K LB; I genuinely thought it would just work as well as in the 512K LB.

Here is a great takeaway I wanted to share: The logic of this upgrade board is 100% compatible with the Macintosh Plus LB. That means this could be a future solution that could be implemented in the foreseeable future when those 30-pin SIMMs with eight chips become really scarce and pricey!
 
Last edited:
Thanks!
Ok, I'll probably convert my 128k shared board into a 512k board anyway, just for fun, and learning, even if it doesn't solve the problem.
Thanks for the heads up about the pinout of the RAM chips! I would have fried them if you hadn't mentioned it lol.
I'll find the time to sit down and do a thorough comparison of the two configurations on the shared boards.

I'm pretty sure my unrestored Mac Plus doesn't have extra RAM, so that's awesome to hear that it might be solved with this project, too!
 
hey guys, i still have the boards in JLCPCB packaging, a lot of Apple projects and stuff came in my way the last months=)
I am also procrastinating because i have a hope of combo SCSI/Rominator/68030 board and to build it at once
Joopmac,

I am responding here regarding your question about the status of the integrated accelerator board for the Mac 128/512K from another thread.

No, the board isn't available yet. I’m currently working on a new prototype that integrates 32-bit RAM (Bolle shared some unconfirmed schematics and GAL dumps of the RAM expansion board for the Mercury 030 in another of my threads a while ago). Unfortunately, I had no success with the first PCB run. I’ve had to reverse-engineer the logic behind the DRAM controller on the Mercury board to understand how it works and what could be incompatible with the DRAM ICs I selected as replacements for the 30-pin 1MB SIMMs. Specifically, I had to unravel every transition state of its finite state machine and the DRAM refresh method implemented. So far, the setup and hold timings of the DRAM controller's signals seem to match, and my RAM ICs can be refreshed with the same logic without any modification; however, the first PCB run likely had signal integrity issues that I hope are solved in the second PCB run I am about to receive.

Luckily, the owner of a Mercury 030 accelerator board with the 32-bit RAM expansion contacted me very recently (today, in fact!) offering to help verify the schematics. All this together makes me believe there is now a good chance that in the near future, we will have an open-source 68030 accelerator with a SCSI I/O interface and 32-bit RAM that is bootable from ROM for the Mac 128/512K!
 
Last edited:
Don't buy these RAM ICs (AS4C1M16F5/E5) from the only seller who offer them on AMAZON. They are fake!!. fake.jpeg

They don't even have the right number of pins. The AS4C1M16F5-60JC should come in an SOJ-42 package, but these are SOJ-40.
 
Last edited:
Back
Top