News:

Printed Amstrad Addict magazine announced, check it out here!

Main Menu
L

Wanted - working Memory Expansion for CPC 464

Started by LambdaMikel, 19:17, 30 September 18

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

GUNHED

Come on guys! Let's work together. Some problems can only be solved with the help of all of us (creators).  :) :) :)


BTW: I totally understand that making hardware is a real hard task. I can't do it. But even doing software makes one freak out once in a while and one can get desperate. We have only very few productive people in the CPC scene. Hope you few can get united.  ;) :)
http://futureos.de --> Get the revolutionary FutureOS (Update: 2023.11.30)
http://futureos.cpc-live.com/files/LambdaSpeak_RSX_by_TFM.zip --> Get the RSX-ROM for LambdaSpeak :-) (Updated: 2021.12.26)

revaldinho

I agree with @TotO that all the '464 memory expansions are a bit of a hack. They all have to back-drive CPU signals which is far from ideal and variations in drive strengths, wiring and contact resistance and local voltages all contribute to not achieving 100% success across all machine revisions and build variations here.

I addressed the back-driving issue when protecting internal memory in two ways in the board design: firstly I ganged up two CPLD pins to drive against the CPU, and secondly I chose to drive RD* low to write protect the internal CPC memory rather than drive MREQ* high, on the basis that it's easier to win a logic level fight against TTL when TTL is trying to pull-up. I've been very up-front in sharing the results of the testing across motherboard types, different CPU types and voltage ranges (see links to the Google Sheet elsewhere in this thread) and overall this strategy seems to have worked well.

At some point though the CPLD also needs to drive an address bit high while the CPU is pulling it low. Again I ganged up two CPLD pins to do this and this seems to be good for DK'tronics mode on all tested machines, but for the unique C3 shadow mode (mainly for FutureOS) @LambdaMikel  and I have found that the timing is more susceptible to machine variation. All my own CPC464 motherboards work well in this mode using any CPU type and running the RAM card either off the internal CPC supply, or with an external supply of +4.5V which is all great. However, I have one of LM's Schneider '464s here to debug which will run in C3 shadow mode but needs at least an external supply of at least +5V to be applied. Nothing less will do. I have cleaned up connectors, tried all types of CPUs (Sharp, Mostek, Zilog, ST and even UA880s) and a couple of different CPLDs in the RAM card, but all behave the same on that one particular machine. It's only C3 mode which is affected though - the same machine and card runs fine at lower voltages in DK'tronics mode - and the very same RAM card runs well at lower voltages on my other CPCs.

So, yes I would agree that for RAM expansions the CPC6128 is definitely the better starting point since the flaws of the original '464/'664 implementations are all resolved on the motherboard. In an irrational way though I prefer using my old '464 because that's what I had back in the day. And I prefer the keyboard. And this is retro-computing which defies all laws of logic, though sadly not physics.  :D  My card is still a good option for users who particularly want to use the C3 shadow mode for FutureOS on a CPC464. It appears to be reliable on all machines in DK'tronics mode as far as I can see, and it seems that in the very worst case a good external PSU will resolve issues in the C3 shadow mode with more problematic motherboards. I'm happy to refund anyone who finds otherwise.

I've had a bit of a slow start to CPC projects this year, but I'm still actively supporting all my open source projects and hoping to get a bit more momentum going now (particularly on the Z80Tube card). Any users with issues or feedback positive and negative can PM me or log an issue in the github database. If anyone else is interested in getting hold of one of these '464 cards then I do have a small number available so drop me a PM. I can build more to order but of course there will be a slight delay after the current batch runs out as I'd need to get in more PCBs and components.


Rev.

LambdaMikel

Quote from: revaldinho on 18:21, 29 May 19If anyone else is interested in getting hold of one of these '464 cards then I do have a small number available so drop me a PM. I can build more to order but of course there will be a slight delay after the current batch runs out as I'd need to get in more PCBs and components.


I could actually use a second one, PM sent  :) 

LambdaMikel

#103
Quote from: TotO on 11:48, 28 May 19
So, if you think that your CPC expansion slot is shiny, may be a good start is to provide your mainboard revisions and CPU model.


If you had cared for the content of this thread rather than only stating XMem stats, you would have seen that I have posted all that information, with pictures of the mainboards and CPUs, and test results posted as well... somtimes just stating XMem is great, all 464 users clean your expansion port and ignore the rest of the content in a thread doesn't cut it. Sorry to say.



EDIT - never mind... just forget about it  8) Peace  :)  I admire XMem and I have *3* of it, and I wouldn't wanna live without it - and I mean that. But still, problems should be acknowledged and not swapped under the carpet. (I am NOT saying these are XMem problems... ) All I want is a working mem expansion for the 464, and so far, @revaldinho 's comes closest to that.

XeNoMoRPH

@revaldinho , what is Z80Tube card please ?  :o                         
your amstrad news source in spanish language : https://auamstrad.es


260Z

Installing FutureOS on the CPC 464 ?


See below  :D

LambdaMikel

#107
Your answer disaapeared, but there are a couple of options for ROM for FOS:

       
  • I have FOS at 1 to 4 with RomboRedux, the installer can change the ROM numbers
  • @revaldinho  also sells a SixROM card which allows you to replace the lower and upper ROM  (firmware, BASIC)
  • for 464 and FOS, only @revaldinho  RAM card will do
  • you can also use XMem with a 6128, then you only need the XMem

260Z

Thanks @LambdaMikel

Yea, sorry I thought I had deleted it soon enough  :)
I found a post referencing the installer, and tried it on an emulator.

Great info though, for future 464 users  :D

Cheers,
Rob

GUNHED

If you need support for FutureOS just let me know.  :)
http://futureos.de --> Get the revolutionary FutureOS (Update: 2023.11.30)
http://futureos.cpc-live.com/files/LambdaSpeak_RSX_by_TFM.zip --> Get the RSX-ROM for LambdaSpeak :-) (Updated: 2021.12.26)

zhulien

#110
Quote from: LambdaMikel on 05:38, 01 November 18
Gunhead's "Tribute to the sisters" FutureOS Game runs fine on the 464 in C3 mode!
Great game, btw - awesome playability (scrolling!!), music and graphics.  :)

I wished someone created an alternative to chaining all our hardware 'towards' the monitor... the mx4 is great for what it is, but... then when you add a 2nd mx4, it needs to rotate 90 degrees and when you add something to the end of the 2nd one (dd1 for example or a 9th mx4 card), it really is a bit lengthy.  I'd love an 9 slot mx4 board that has 8 of them horizontally behind the cpc and the 9th being the through connector.  That might make the chain of things with memory being most important more reliable.

LambdaMikel

#111
I could probably extend the LambdaBoard quite easily to 8 slots... it's just a matter of copy & paste in KiCAD.
You mean that the orientation of the extension cards is parallel to the CPC (like in your picture), or perpendicular?

zhulien

Quote from: LambdaMikel on 21:04, 07 July 19
I could probably extend the LambdaBoard quite easily to 8 slots... it's just a matter of copy & paste in KiCAD.
You mean that the orientation of the extension cards is parallel to the CPC (like in your picture), or perpendicular?


if the mx4 board itself was horizontal, then each extension card would be perpendicular to the CPC.  if a 9th slot was still behind it as a through connector, it means less wobble for a dd1 interface at the end of the chain too.  If the Lambdaspeak was within and the M4 Wifi Board, then the cables (not the upright cables) of the Lambdaspeak would stick out back and the M4 SD card would point towards the computer.


Basically:


       -
| | | | | | | |
       -
[COMPUTER]

xesrjb

Quote from: Duke on 08:27, 07 October 18
Put together a little extended ram tester (for first 512KB only, for now).
It will test regular banking mode, C1 mode and C3 mode.
Will add C2 mode later.

Maybe useful to check various expansions.

Instructions:
RUN"RAM512KB

EDIT: Updated to v1.0.1 - now checks if upper ROM in C3 mode is messing with 0x4000.
EDIT2: Messy source code if anyone is interested -> https://github.com/M4Duke/z80/blob/master/RAM512KB.s


I will try...


xesrjb
,,The pellet with the poison's in the vessel with the pestle; the chalice from the palace has the brew that is true."

tjjq44

#114
Hi, I'm digging an old topic but since I got 2 other cpc 464 recently, I ran some tests again.

The memory expansion I currently use is the 512kB made by zaxxon (I shrunked it up to 64kB by de-soldering A16, A17 & A18 pins of the memory chip and connecting them permanently to ground), I know this one as issues and isn't fully 6128 compatible but I only need DK'tronics compatibility. I choosed this one for its very small footprint as it allows me to use it in my modified DDI-1 and because it was rather cheap.

I now have 4 cpc 464, 2 "first generation" with tall keys and 2 "2nd generation" with smaller keys. All 4 have "long" motherboard of course. The memory expansion works fine (Batman Forever, Pinball Dreams) with the first generation ones but not well at all with the 2nd generation...

Here are the results of my different tests:

- MEMTEST:
Here are the results with 1st generation:


And with 2nd generation:


As you can see there's a difference in the last line (7EC4), with the 1st generation, it's greyed as it should be but it isn't with the 2nd generation. There's also a difference in the bottom of the screen "FF" vs "41". Does anyone have a clue about this behaviour?

- AMSTRAD DIAGNOSTICS:
Here are the results with 1st generation:



And with 2nd generation:



The 1st generation reports 128kB ok total ram, which is good, the 2nd reports 192kB of ram which is of course impossible... During the test I get something weird after the 1st 512kB memory space...

- Batman Forever passes true color demo and runs till the end on 1st generation:


On 2nd generation, no way...


I can't understant why all CPCs don't behave the same way, does anyone have an idea?

tjjq44

#115
When I edit my message I can see my attached pictures, but not in the thread...  :-X

Edit : tested with firefox instead, it works!

Rabs

Quote from: tjjq44 on 07:43, 20 December 23Hi, I'm digging an old topic but since I got 2 other cpc 464 recently, I ran some tests again.

The memory expansion I currently use is the 512kB made by zaxxon (I shrunked it up to 64kB by de-soldering A16, A17 & A18 pins of the memory chip and connecting them permanently to ground), I know this one as issues and isn't fully 6128 compatible but I only need DK'tronics compatibility. I choosed this one for its very small footprint as it allows me to use it in my modified DDI-1 and because it was rather cheap.

I now have 4 cpc 464, 2 "first generation" with tall keys and 2 "2nd generation" with smaller keys. All 4 have "long" motherboard of course. The memory expansion works fine (Batman Forever, Pinball Dreams) with the first generation ones but not well at all with the 2nd generation...

Here are the results of my different tests:

- MEMTEST:
Here are the results with 1st generation:


And with 2nd generation:


As you can see there's a difference in the last line (7EC4), with the 1st generation, it's greyed as it should be but it isn't with the 2nd generation. There's also a difference in the bottom of the screen "FF" vs "41". Does anyone have a clue about this behaviour?

- AMSTRAD DIAGNOSTICS:
Here are the results with 1st generation:



And with 2nd generation:



The 1st generation reports 128kB ok total ram, which is good, the 2nd reports 192kB of ram which is of course impossible... During the test I get something weird after the 1st 512kB memory space...

- Batman Forever passes true color demo and runs till the end on 1st generation:


On 2nd generation, no way...


I can't understant why all CPCs don't behave the same way, does anyone have an idea?
What CRTC version do you gave in the 2nd gen CPCs, as I believe there are issues with the version 2.

tjjq44


Rabs


SerErris

Must be a logic problem.

Whatever the new CPCs do, they manage to activate the same external RAM as a different bank, so reporting 96kb. 

But I do not have ever seen this RAM expansion and no details are known on how it works (no schematics availble etc). 
Proud owner of 2 Schneider CPC 464, 1 Schneider CPC 6128, GT65 and lots of books
Still learning all the details on how things work.

Powered by SMFPacks Menu Editor Mod