ENTERPRISE KLUB
2021. október 2., 1055 Budapest, Nyugati tér 9. 14-19 óráig
Belépés kizárólag klubtagok részére! (Klubkártyával vagy előfizetéssel!)
Welcome, Guest. Please login or register.


Author Topic: Internal memory expansion (Read 141021 times)

Offline Judge

  • EP user
  • *
  • Posts: 473
  • Country: hu
  • OS:
  • Windows NT 10.0 Windows NT 10.0
  • Browser:
  • Chrome 84.0.4147.135 Chrome 84.0.4147.135
    • View Profile
Re: Internal memory expansion
« Reply #255 on: 2020.August.21. 15:01:47 »
I already see your problem ...

Use a cable like this:

 25317-0

The order of the threads is changeable.
Üdv.Judge

Offline elmer

  • EP fan
  • *
  • Posts: 196
  • Country: us
  • OS:
  • Windows 7/Server 2008 R2 Windows 7/Server 2008 R2
  • Browser:
  • Firefox 79.0 Firefox 79.0
    • View Profile
Re: Internal memory expansion
« Reply #256 on: 2020.August.22. 01:55:05 »
The order of the threads is changeable.

Yes, that is one good solution. :)

Another possibility is to just use two 5-pin DuPont cables, and flip them as needed.

Offline gflorez

  • EP addict
  • *
  • Posts: 3184
  • Country: es
  • OS:
  • Windows NT 6.3 Windows NT 6.3
  • Browser:
  • Firefox 79.0 Firefox 79.0
    • View Profile
Re: Internal memory expansion
« Reply #257 on: 2020.August.22. 23:48:06 »
I have added an upper picture of the second version of Saint's expansion here.

Offline elmer

  • EP fan
  • *
  • Posts: 196
  • Country: us
  • OS:
  • Windows 7/Server 2008 R2 Windows 7/Server 2008 R2
  • Browser:
  • Firefox 79.0 Firefox 79.0
    • View Profile
Re: Internal memory expansion
« Reply #258 on: 2020.August.23. 00:47:55 »
I have added an upper picture of the second version of Saint's expansion here.

Thanks, that's really nice to see! :)

If I'm seeing it correctly, most of the layout looks identical to the earlier board, but he's added an extra decoupling capacitor for the piggyback SRAM chip, and also added a trace and via/hole for connecting the /CE pin on the piggyback SRAM chip.


BTW, you mentioned earlier that you were going to contact SainT and see if he would share the schematic/Gerbers for his expansion board. Did you ever get a response from him?

I see that he's been on the AtariAge forum recently, so he's still around.

Offline Judge

  • EP user
  • *
  • Posts: 473
  • Country: hu
  • OS:
  • Windows NT 10.0 Windows NT 10.0
  • Browser:
  • Chrome 84.0.4147.135 Chrome 84.0.4147.135
    • View Profile
Re: Internal memory expansion
« Reply #259 on: 2020.August.23. 10:09:53 »
BTW, you mentioned earlier that you were going to contact SainT and see if he would share the schematic/Gerbers for his expansion board. Did you ever get a response from him?
I see that he's been on the AtariAge forum recently, so he's still around.

Someone who speaks good English can ask here... :)
Üdv.Judge

Offline gflorez

  • EP addict
  • *
  • Posts: 3184
  • Country: es
  • OS:
  • Windows NT 6.3 Windows NT 6.3
  • Browser:
  • Firefox 79.0 Firefox 79.0
    • View Profile
Re: Internal memory expansion
« Reply #260 on: 2020.August.23. 13:04:43 »
I have already asked him by mail. I am waiting an answer.

Offline Judge

  • EP user
  • *
  • Posts: 473
  • Country: hu
  • OS:
  • Windows NT 10.0 Windows NT 10.0
  • Browser:
  • Chrome 84.0.4147.135 Chrome 84.0.4147.135
    • View Profile
Re: Internal memory expansion
« Reply #261 on: 2020.August.23. 14:44:13 »
I have already asked him by mail. I am waiting an answer.

It's OK then... :smt023  We hope he will respond :cry:
« Last Edit: 2020.August.23. 14:47:45 by Judge »
Üdv.Judge

Offline elmer

  • EP fan
  • *
  • Posts: 196
  • Country: us
  • OS:
  • Windows 7/Server 2008 R2 Windows 7/Server 2008 R2
  • Browser:
  • Firefox 79.0 Firefox 79.0
    • View Profile
Re: Internal memory expansion
« Reply #262 on: 2020.August.23. 22:40:19 »
Also to make the design even easier you can connect the data lines to the SRAM chip in any order.

And the address lines to the RAM chip can also be in any order. The only addresses that can't be swapped around are the ones you're using for /CE.

Yes, doing this really has made the routing a lot simpler, and dramatically reduced the number of vias that are needed on the board.

Here is the schematic and PCB design that I've come up with, using the same 1x10 pin ordering for the EXP2 connector that SainT's board uses, just to keep things easier for people.

The board itself is a tiny bit smaller than SainT's board, but not by a lot.

Most of that is because of the size of the 1x10 and 2x14 headers, but since this is my first PCB design, I've been very careful to try to keep large spaces between the components, and use wider tracks than are probably necessary.

I still need to have this sanity-checked for errors by some friends, and I'd also love it if the electronics folks here could take a look and see if anything looks bad.

Offline dangerman

  • User
  • *
  • Posts: 99
  • OS:
  • Linux (Ubuntu) Linux (Ubuntu)
  • Browser:
  • Firefox 79.0 Firefox 79.0
    • View Profile
Re: Internal memory expansion
« Reply #263 on: 2020.August.24. 11:35:35 »
Wow - great work! :smt041 Not worrying about the order of the address and data lines makes life much easier doesn't it?

I'm afraid I'm not good enough at electronics to reliably check it. Although I do have a question for my own learning if that's okay. Why are there 3 capacitors? When I designed my [amateur] expansion I just had one capacitor to smooth the supply to the 512k chip. So it turns out I should have put one on the ATF16V8 as well. But why the 3rd capacitor?

Basically I didn't really know what I was doing and was amazed that what I did worked at all. :)
« Last Edit: 2020.August.24. 11:56:00 by dangerman »

Offline elmer

  • EP fan
  • *
  • Posts: 196
  • Country: us
  • OS:
  • Windows 7/Server 2008 R2 Windows 7/Server 2008 R2
  • Browser:
  • Firefox 79.0 Firefox 79.0
    • View Profile
Re: Internal memory expansion
« Reply #264 on: 2020.August.24. 20:41:21 »
Wow - great work! :smt041

Thanks! I've already made some small changes based upon feedback, and I think that I will need to make a few more.


Why are there 3 capacitors? When I designed my [amateur] expansion I just had one capacitor to smooth the supply to the 512k chip. So it turns out I should have put one on the ATF16V8 as well. But why the 3rd capacitor?

The 3rd capacitor is a larger 10uf decoupling capacitor to smooth out the power supply for the whole expansion-board.

The advice that I got from friends was ...

For decoupling caps you'll want one small (.1uF) capacitor per VCC pin and one larger (4.7uF or 10uF) for a the whole board. You can use small ceramic caps for these. Keep the .1uF caps as close to the VCC pin + paired ground as possible.

In certain technical books like "The Art of Electronics" there is an explanation of the theory behind how to choose the value... but nobody ever bothers with that until they have a problem. These (0.1 and 10uF) are ready-made rule-of-thumb solutions.


That matches the advice here.


You can see the same board-level large (low frequency) decouping capacitor on the original EP128 board schematic here and in the photo here, but they were using a big 100uf capacitor because of the large number of higher-power TTL chips on that old board.


Not worrying about the order of the address and data lines makes life much easier doesn't it?

Oh yes, MUCH easier! ;)

But now that I have a tiny bit more experience, I'm going to go back a step and see if I can get the pins in order again, and try to add the socket for a FLASH ROM chip onto the board.

Offline dangerman

  • User
  • *
  • Posts: 99
  • OS:
  • Linux (Ubuntu) Linux (Ubuntu)
  • Browser:
  • Firefox 79.0 Firefox 79.0
    • View Profile
Re: Internal memory expansion
« Reply #265 on: 2020.August.24. 21:18:27 »
Thanks for the info. Starts to make sense now.

Good luck with adding the Flash ROM. I expect you know already but the original EXOS will only find ROMs in segments which are multiples of 16. So you'll need Zozosoft's unofficial EXOS upgrade to recognise system ROMs that don't start on 256k boundaries. 

Offline gflorez

  • EP addict
  • *
  • Posts: 3184
  • Country: es
  • OS:
  • Windows NT 6.3 Windows NT 6.3
  • Browser:
  • Firefox 79.0 Firefox 79.0
    • View Profile
Re: Internal memory expansion
« Reply #266 on: 2020.August.24. 23:24:17 »
Once they will add the Ram expansion, adding Zozo's modified EXOS seems a trivial step.

Great decision to put a FlashRom. Adding the /WE signal even can allow to write it in situ. Don't use Winbond or other cheap makers, better AMD. Zozo can modify his SD cartridge flasher for your memory expansion.

A good range to put a 512KB Rom zone is 60-7F, said by Zozo that it is a scarcely used  area. And for the Ram, like Saint's expansion, filling F0-FB, E0-EF, DC-DF, if 512KB, or F0-FB, E0-EF, D0-DF, C0-CF, BC-BF if 1MB.

Simbiface3 also uses 60-7F as a Rom zone but it can put the Roms in any place so no problem.
« Last Edit: 2020.August.25. 02:03:33 by gflorez »

Offline elmer

  • EP fan
  • *
  • Posts: 196
  • Country: us
  • OS:
  • Windows 7/Server 2008 R2 Windows 7/Server 2008 R2
  • Browser:
  • Firefox 79.0 Firefox 79.0
    • View Profile
Re: Internal memory expansion
« Reply #267 on: 2020.August.25. 18:56:32 »
Once they will add the Ram expansion, adding Zozo's modified EXOS seems a trivial step.

I agree ... if you've already had to get inside the Enterprise to solder wires onto the EXP2 connector, then adding one more wire so that you can use EXOS 2.4 seems pretty trivial.


Great decision to put a FlashRom. Adding the /WE signal even can allow to write it in situ. Don't use Winbond or other cheap makers, better AMD. Zozo can modify his SD cartridge flasher for your memory expansion.

A good range to put a 512KB Rom zone is 60-7F, said by Zozo that it is a scarcely used  area. And for the Ram, like Saint's expansion, filling F0-FB, E0-EF, DC-DF, if 512KB, or F0-FB, E0-EF, D0-DF, C0-CF, BC-BF if 1MB.

Simbiface3 also uses 60-7F as a Rom zone but it can put the Roms in any place so no problem.

From what I can see, AMD don't *seem* to be making 5V flash chips anymore, especially in PDIP format.

The modern 5V part that is being recommended to me is Microchip's SST39F040, which uses the same pin layout as AMD's old 29F040.


Unless I change the address decoding logic from the simple 74HCT138, then I can't decode any of those ranges like that.

The obvious choice would be to use output 4 on the 74HCT138, which would decode to banks 80h-83h, 88h-8Bh, 90h-93h, 98h-9Bh, A0h-A3h, A8-ABh, B0h-B3h, and B8-BBh.

The other choice would be to use output 2 on the 74HCT138, which would decode to banks 40h-43h, 48h-4Bh, 50h-53h, 58h-5Bh, 60h-63h, 68-6Bh, 70h-773h, and 78-7Bh.


Is there a list anywhere of what expansion-bus cards use which segments?

Offline geco

  • EP addict
  • *
  • Posts: 6282
  • Country: hu
  • OS:
  • Linux Linux
  • Browser:
  • Chrome 84.0.4147.111 Chrome 84.0.4147.111
    • View Profile
Re: Internal memory expansion
« Reply #268 on: 2020.August.25. 20:36:56 »
Unfortunately i did not find any documentation, but i am nearly sure that at 80 and above it there is no ROM defined, between 40-7F the chance is a bit bigger, but there should not be so much.
there is only one problem with these 2 possibilities, most of old non EXOS compatible programs will not run.

Offline elmer

  • EP fan
  • *
  • Posts: 196
  • Country: us
  • OS:
  • Windows 7/Server 2008 R2 Windows 7/Server 2008 R2
  • Browser:
  • Firefox 79.0 Firefox 79.0
    • View Profile
Re: Internal memory expansion
« Reply #269 on: 2020.August.25. 22:49:37 »
Great decision to put a FlashRom.

I've been looking at this all day, and I'm afraid that I can't find any way to add that PDIP socket for the FLASH chip, and still end up with any kind of sensible board layout.

I'm sorry, I just don't have good enough design skills, and so I'm going to have to abandon the FLASH idea, and just keep the board as a simple 512KB SRAM expansion.


People who need lots of FLASH ROM space already have the Symbiface3 card that you've done such excellent work on, and perhaps in the future they'll also have Pear's lovely looking Dream Turbo Card.


Unfortunately i did not find any documentation, but i am nearly sure that at 80 and above it there is no ROM defined, between 40-7F the chance is a bit bigger, but there should not be so much.

This is the only thing that I could find.

Looking at that, there doesn't seem to be any conflict with the 74HCT138 segment mappping for the SRAM that I am proposing to use, even if it is a bit wasteful.