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.

LambdaMikel

#50
Quote from: Duke on 12:40, 05 October 18
Also I am fairly sure that XMEM supports "Dk'tronics" C3 mode, so if the fails in Batman demo are due to that mode, maybe it is a timing issue.
It would be interesting to make a memory tester for all extended modes. Maybe I'll find some time to do that, as I have done some partial tests already.


At some point, I had XMem working with Batman demo. Currently, it had stopped working altogether. Maybe it is defect by now. But I also used a different 464. I will pull out the 464 with worked fine with XMem and see if I can reproduce the successful running of Batman that I had back then here with XMem and that 464:

http://www.cpcwiki.eu/forum/amstrad-cpc-hardware/4mb-externial-ram-expansion-will-be-soon/100/


Reading through my old post - what cracks me up is that I wrote

All of these 5 CPCs work perfectly fine with Batman Demo with XMem. 

That should also include the current CPC I am using. I am really clueless.
I think XMem has been damaged somehow.

revaldinho

@LambdaMikel - I've sent you a PM to arrange getting one of my cards to you.


I have done some testing today using my card with a 464 and also a couple of 6128s and things are looking actually more advanced than I thought.


Of the programs I reported some trouble with, it turns out that I have similar problems with at least one of the 6128s so these are not necessarily RAM card related issues at all. The Double-Dragon on screen garbage in the loading phase is a CRTC issue - both my 464 and a 6128 with a type 2 CRTC show this while the other 6128 (which has a type 0 CRTC and  _can_ run Batman Forever) does not. I have another image of Alien-8 which only works on the type 0 CRTC as well. None of the machines can run my P47 disk image. Is that a Plus only game ? Or a duff disk image maybe? Also potentially a duff image is my BBC BASIC CP/M one. That fails to run on any of the machines so also doesn't looks like a RAM card related image. I tried making a new version but again none of the machines like it even when running a stock 6128 booting CP/M from floppy.


All the other stuff I reported working is still working with the latest code, and on top of that the Phortem demo runs fine also. All of these work well even with the RAM card voltage turned down to 4.5V.


Let's not get too carried away though - this is all on my scientifically and statistically suspect sample of one CPC464.


Let's see how @LambdaMikel 's CPC farm gets on with the card before thinking of letting more samples into the wild.


R.




Duke

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

revaldinho

Brilliant. That's great Duke and particularly the updated v1.0.1


Running on my 464 card with the overdrive and shadow modes turned on the test correctly identifies the card as a 448KB expansion (remember that I have to give up a 64K bank for the shadow mode) and it passes all of the tests including the C3 mode.


With the shadow mode turned off the 464 card is instead a 512KB card and should work like all the others. In this case it passes all the tests except for the C3 mode where I see the message 'rom remapped 0x4000!' on all banks except the last one. The last one says 'bank 3 no base ram remap! - rom remapped 0x4000!'


I've attached the screen shots

-P1130703.jpg is the 464 with overdrive ON, shadow mode OFF
-P1130704.jog is the 464 with overdrive ON, shadow mode ON, shadow bank set to 7

R




LambdaMikel

#54
@Duke , great, thansk for making the test!I have problem running it though - please see screenshots and correct any errors.
EDIT: looking at the Z80 I also tried load and call &8000, which gives me a black screen.

Tried with 2 diffferent CPCs, and 2 different cable connectins. You can see the XMem is detected (firmware message).

Duke

Quote from: LambdaMikel on 16:43, 07 October 18
@Duke , great, thansk for making the test!I have problem running it though - please see screenshots and correct any errors.
EDIT: looking at the Z80 I also tried load and call &8000, which gives me a black screen.

Weird stuff, it works on my 464, when using M4 to run the file. I attached a .DSK here just incase. It works fine with WinApe too.

@revaldinho
Notice the "Rom remap 0x4000!" error, could also be another error with the area at 0x4000 - 0x7FFF mapping. More checking needed.

revaldinho

@Duke
Quote from: Duke on 16:59, 07 October 18
Notice the "Rom remap 0x4000!" error, could also be another error with the area at 0x4000 - 0x7FFF mapping. More checking needed.


On the run with shadow RAM enabled, I get no errors at all.


I was expecting to see errors without the shadow RAM enabled in mode C3 because my card then just overdrives address bit 15 to remap 0x4000-0x7FFF to 0xC000-0xFFFF, which will result in reading data back from ROMs if enabled. (This is what causes the trail of debris in the FutureOS GUI on all other cards). So, is this message indicating something other than that ?


Can someone share a screenshot of what it looks like on any of the other cards ?


R


Duke

Quote from: revaldinho on 17:17, 07 October 18
On the run with shadow RAM enabled, I get no errors at all.

I was expecting to see errors without the shadow RAM enabled in mode C3 because my card then just overdrives address bit 15 to remap 0x4000-0x7FFF to 0xC000-0xFFFF, which will result in reading data back from ROMs if enabled. (This is what causes the trail of debris in the FutureOS GUI on all other cards). So, is this message indicating something other than that ?
Yes, it seems the shadow RAM one is working as it should (similar to 6128). Which is cool.

And the error message would be correct in your second test with the overdrive, just stating it as I realized other mapping errors could result in same message, as I don't check if it's ROM data, just if it's base RAM data normally at 0xC000 when mapping upper rom 0 ontop of C3 mode.

revaldinho

Thanks Duke


Aha, that all sounds good then.


I would hope that all the overdrive only cards report the same messages...


The only one I didn't understand was why I got the message ''Page07, bank 03 no base ram remap! - rom remapped 0x4000!'  which was different to the others. I don't see anything in the CPLD code that would make that bank any different when not in shadow mode.

Very handy to have your test - it's one of the ones at the top of my long list of things to run now when updating the CPLD code now. That + the test.bin which I downloaded from a link in the forum somewhere + FutureOS GUI + Phortem seem to flush out almost everything.

Duke

Quote from: revaldinho on 17:40, 07 October 18
The only one I didn't understand was why I got the message ''Page07, bank 03 no base ram remap! - rom remapped 0x4000!'  which was different to the others. I don't see anything in the CPLD code that would make that bank any different when not in shadow mode.

Maybe I have some bug in the code, will re-check it all later, but it should mean that 0xC000 in base ram is not present at 0x4000 when in C3 mode.

Here is the result of XMEM on a 464. All ok, except in C3 mode as expected with the upper-rom showing at 0x4000, similar to "dk'tronics" C3 mode.


revaldinho

And another thing !  :D


Buoyed up with a bit more confidence after passing Duke's new test and seeing a lot of other issues fall away I finally tackled the CP/M plus BBC BASIC problem again.


Definitely a disk image issue. I don't know what happened to that .dsk, but after deleting it and recreating afresh I can now run BBC BASIC on my 464 again. You might remember from the other thread that I did manage to run it previously on my original non-overdriving card, but only with frequent, if mild video snowstorms.  It works much better now both in overdrive-only and overdrive + shadow modes on the revised card - snap attached.


HIMEM is 60928, which is surely enough.


R


PS @LambdaMikel - I have made up and tested a second board for you to test, so just a reminder that you'll need to let me know where to post it.





LambdaMikel

#61
@Duke  thanks for the DSK - I have no idea what went wrong with that DSK creation process! I added AMSDOS headers etc., it seems there is some weird bug in DSKtool.jar??? Anyhow. Was able to load now.

It indeed seems that most of my issues are cable reliabilty issues. After fiddeling with your test with Piotr expansion, I made sure it would pass all OK, then ran Batman, and it worked - that means, it got through the "truecolor" demo! That usually crashes. After all, 4 MB Piotr seems to be working fine now on this one 464. I can test others as well.

I will prepare a Lambdaboard where 4 MB Piotr is soldered in permanetly.

LambdaMikel

XMem also passes the test now (I reseated all the chips... that seems to have made a difference) I am getting this:

Batman either crashes or blank screen after loader.

LambdaMikel

Quote from: revaldinho on 22:33, 06 October 18
@LambdaMikel - I've sent you a PM to arrange getting one of my cards to you.

Let's see how @LambdaMikel 's CPC farm gets on with the card before thinking of letting more samples into the wild.


R.
Thank @revaldinho !

LambdaMikel

So here is the situation mentioned earlier, that Batman (or 4 MB Piotr) needs a reset sometimes.
Works then. And even goes through truecolor currently.

LambdaMikel

And here are some tests with *ZMem*.
Batman either hangs after load screen or crashes with pixels, same as with XMem.


LambdaMikel

So it seems that currently I have at least have 2 CPC 464 that work with Piotr 4 MB (Batman)... XMem and ZMem couldn't reactivate yet (ROM of XMem works fine)

LambdaMikel

#67
So, it seems that @Duke 's test is not "strong / conclusive enough" in order to understand why XMem is not running Batman, right?
It seems everything looks fine in the test, yet Batman doesn't work. Unlike 4 MB Piotr, which is perfectly fine now.

Duke

Quote from: LambdaMikel on 03:18, 08 October 18
So, it seems that @Duke 's test is not "strong / conclusive enough" in order to understand why XMem is not running Batman, right?
It seems everything looks fine in the test, yet Batman doesn't work. Unlike 4 MB Piotr, which is perfectly fine now.
Actually the error message you got for XMEM in C3 mode, indicates that the "464 / 6128" switch on the XMEM is set to 6128.
I can see it is not, maybe the switch does not work properly anymore?

LambdaMikel

@Duke  - Interesting!! Let me check that and report back...

LambdaMikel

Quote from: LambdaMikel on 15:22, 08 October 18
@Duke  - Interesting!! Let me check that and report back...
No, the switch is fine. Measured it (continuity tester). Maybe the CPLD is f****ed by now.

revaldinho

#71


I've posted off a board for @LambdaMikel to test earlier this week.


So, mainly for his benefit but also for anyone else interested, there is a PDF of release notes to go with that (mainly important for getting the DIP switch setting right) in GitHub here:

https://github.com/revaldinho/cpc_ram_expansion/blob/master/cpc_ram_expansion/releases/rc-2-bulldog/Revaldinho_512K_RAM_RC-2-BUlldog_Release_notes.pdf

And here is a link to a Google Sheet of testing results with this particular cut of the CPLD code

https://docs.google.com/spreadsheets/d/11wxhIDWy2wNmKSXZwBqjqQjMN2nNZDtILEvy6_GrM8I/edit?usp=sharing

All looks good on my CPC464 and a couple of 6128s to date I have to say, although with the various issues and behaviours reported across different motherboard types in this thread, I await @LambdaMikel 's test results with a bit of trepidation.


One slightly amusing aside in the meantime, I was also able to test the full shadow mode (where the shadow bank services all CPC Base RAM reads other than those done by the video circuitry) using @gerald 's RamTest ROM with no problems. So, I think that the card has the miraculous and unintended property of being able to revive dead CPC464s if they are suffering from faulty base RAM ! Of course if the memory fault is in a video RAM area then that'll show up as on-screen corruption, but otherwise I think this must be true. Let's see.

GUNHED

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)

LambdaMikel

#73
Quote from: revaldinho on 20:13, 10 October 18

I've posted off a board for @LambdaMikel to test earlier this week....
So, I think that the card has the miraculous and unintended property of being able to revive dead CPC464s if they are suffering from faulty base RAM !
So looking forward to checking your board out, @revaldinho  !!  And I can even try FutureOS on the 464 then it seems  :) However, you should reconsider the name - you should have called it Lazarus for obvious reasons  :laugh:

revaldinho

Quote from: LambdaMikel on 07:27, 13 October 18
So looking forward to checking your board out, @revaldinho  !!  And I can even try FutureOS on the 464 then it seems  :) However, you should reconsider the name - you should have called it Lazarus for obvious reasons  :laugh:


I still have my fingers crossed given I've only been able to test with one CPC464 motherboard so far. It's not a scientifically huge sample.


I did some additional tests this week running the card from the CPC power supply rather than an external bench supply. Got a bit of a surprise when I put my voltmeter on the power rails and measured only 4.45V! OK, there was a DDI-3 and a couple of ROM cards hanging off the back of the machine too, but that was quite a bit lower than I'd expected. Still, no cause for alarm. All still working.  I think I should probably lower the voltage on my lab PSU for more tests though.

Powered by SMFPacks Menu Editor Mod