dml wrote: Sun Jun 08, 2025 8:44 am
sety wrote: Sun Jun 08, 2025 3:58 am
I think slot0 is mandatory, I'm sure I have read that somewhere, but now that I have a working system I'll go check for you right now.

Yep! You need slot0 populated
Thanks for checking that.
If I'm reading the schematic correctly, it appears the SIMM sockets are routed with only pins 68+69 (OE/WE) differentiating each slot. So the phyiscal ordering of the RAM slots could be reversed (slots 0 & 2 could be swapped around), by re-routing just 4 tracks?
Yep that should be doable.
Alternatively, and this might be easier, is to change pin setup in the ATF1508 bus logic:
Code: Select all
pin 44 = !RB0RD;
pin 45 = !RB0WR;
pin 46 = !RB1RD;
pin 48 = !RB1WR;
pin 49 = !RB2RD;
pin 50 = !RB2WR;
pin 51 = !RB3RD;
pin 52 = !RB3WR;
You'd need the WinCUPL software to rebuild it. It's old and finicky but it's free

In my installation I have replaced the fitter executable with the slightly newer one found in ProChip 5.0.1 but I'm not sure if you'll need to do that or not. Probably not.
And the third option would be changes in the bootloader software only.
Right now the bootloader requires slot0 for stack and working ram but in theory it should be possible to let it use the first slot found.
You'd probably need to add a small mmu table setup quite early in that case, and then the proper mmu setup during the final stages may need some changes. (or keeping just the one mmu setup but moving it to way earlier in the boot)
Now you have three options
Edit: I do like the third options regardless, and if someone else doesn't implement that I might do that some time in the (distant) future as it feels like it would be a fun thing to do.