News:

Printed Amstrad Addict magazine announced, check it out here!

Main Menu
avatar_eto

WIP: internal 512K expansion

Started by eto, 16:11, 09 September 24

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

eto

Quote from: eto on 13:05, 30 January 25- sorry, that was not clear. I need to cut a few lanes on the PCB, make new connections and free up a pin on one of the PALs. No big issue but I don't have time over the next couple of days.
Well... I could not resist ;-) Two tiny cuts on the PCB, a short new lane - and now I also control RD and don't set RD to 0 if I access 4000-7fff in C3 mode.

 C3 now perfectly works. My own test programs work and the Future OS mouse pointer no longer paints ROM data to the screen.

(The equations are pretty much identical so I don't have any other explanation than that the GateArray does not evaluate MREQ to set ROMEN.)

However I still can't get the Dandanator to work. It boots but when I start a game, the system crashes.

Does anyone have an idea what the Dandanator does when a game is selected and loaded into RAM?

McArti0

CPC 6128, Whole 6128 and Only 6128, with .....
NewPAL v3 for use all 128kB RAM by CRTC as VRAM
One chip drver for 512kB extRAM 6128
TYPICAL :) TV Funai 22FL532/10 with VGA-RGB-in.

McArti0

#152
Quote from: eto on 07:48, 10 September 24
Quote from: McArti0 on 06:57, 10 September 24Can't you fit in one atf750?
I probably could. What programmer/software would support that IC? I didn't really find an answer.
Change of situation.
TL866-II Plus with V12.78 fw support ATF 22

http://www.xgecu.com/MiniPro/TL866II_List.txt

T56 support all ATF 750 and 2500 too.

http://www.xgecu.com/MiniPro/T56_List.txt
CPC 6128, Whole 6128 and Only 6128, with .....
NewPAL v3 for use all 128kB RAM by CRTC as VRAM
One chip drver for 512kB extRAM 6128
TYPICAL :) TV Funai 22FL532/10 with VGA-RGB-in.

eto

Quote from: McArti0 on 10:08, 31 January 25Change of situation.
TL866-II Plus with V12.78 fw support ATF 22
What has changed? ATF22 is not used in this project and TL866-II already supported the ATF22 in the past. The ATF750 is unfortunately not supported and I didn't find anything that supports it (except for a 6 year old branch of the afterburner project).

McArti0

Quote from: eto on 10:31, 31 January 25The ATF750 is unfortunately not supported and I didn't find anything that supports it

XGecu T56 Universal Programmer Device Support List:

            Software Version:   V12.78  Date : 1.19.2025
           Supported Devices:   37906
Supported Operating Systems:   Windows XP,2003,2008,Vista  Win7 WIN8 WIN10 WIN11

===================================================================
Press Ctrl+F to search support list
===================================================================
  [ MY FAVORITES-User ]     

      Very useful favorites               
         
      ATF750C                @DIP24       ATF750C(MODE-V750)     @DIP24       ATF750C(MODE-V750B)    @DIP24       ATF750C                @SOIC24     
      ATF750C(MODE-V750)     @SOIC24      ATF750C(MODE-V750B)    @SOIC24      ATF750C                @PLCC28      ATF750C(MODE-V750)     @PLCC28     
      ATF750C(MODE-V750B)    @PLCC28      ATF750CL               @DIP24       ATF750CL(MODE-V750)    @DIP24       ATF750CL(MODE-V750B)   @DIP24       
      ATF750CL               @SOIC24      ATF750CL(MODE-V750)    @SOIC24      ATF750CL(MODE-V750B)   @SOIC24      ATF750CL               @PLCC28     
      ATF750CL(MODE-V750)    @PLCC28      ATF750CL(MODE-V750B)   @PLCC28      ATF750LVC              @DIP24       ATF750LVC(MODE-V750)   @DIP24       
      ATF750LVC(MODE-V750B)  @DIP24       ATF750LVC              @SOIC24      ATF750LVC(MODE-V750)   @SOIC24      ATF750LVC(MODE-V750B)  @SOIC24     
      ATF750LVC              @PLCC28      ATF750LVC(MODE-V750)   @PLCC28      ATF750LVC(MODE-V750B)  @PLCC28      ATF750LVCL             @DIP24       
      ATF750LVCL(MODE-V750)  @DIP24       ATF750LVCL(MODE-V750B) @DIP24       ATF750LVCL             @SOIC24      ATF750LVCL(MODE-V750)  @SOIC24     
      ATF750LVCL(MODE-V750B) @SOIC24      ATF750LVCL             @PLCC28      ATF750LVCL(MODE-V750)  @PLCC28      ATF750LVCL(MODE-V750B) @PLCC28     
      ATF750CEXT             @DIP24       ATF750CEXT             @SOIC24      ATF750CEXT             @PLCC28      ATF750LVCEXT           @DIP24       
      ATF750LVCEXT           @SOIC24      ATF750LVCEXT           @PLCC28      ATF2500C               @DIP40       ATF2500C(MODE-2500)    @DIP40       
      ATF2500C(MODE-2500B)   @DIP40       ATF2500C               @PLCC44      ATF2500C(MODE-2500)    @PLCC44      ATF2500C(MODE-2500B)   @PLCC44     
      ATF2500C               @TQFP44      ATF2500C(MODE-2500)    @TQFP44      ATF2500C(MODE-2500B)   @TQFP44      ATF2500CL              @DIP40       
      ATF2500CL(MODE-2500)   @DIP40       ATF2500CL(MODE-2500B)  @DIP40       ATF2500CL              @PLCC44      ATF2500CL(MODE-2500)   @PLCC44     
      ATF2500CL(MODE-2500B)  @PLCC44      ATF2500CL              @TQFP44      ATF2500CL(MODE-2500)   @TQFP44      ATF2500CL(MODE-2500B)  @TQFP44     
      ATF2500CQ              @DIP40       ATF2500CQ(MODE-2500)   @DIP40       ATF2500CQ(MODE-2500B)  @DIP40       ATF2500CQ              @PLCC44     
      ATF2500CQ(MODE-2500)   @PLCC44      ATF2500CQ(MODE-2500B)  @PLCC44      ATF2500CQ              @TQFP44      ATF2500CQ(MODE-2500)   @TQFP44     
      ATF2500CQ(MODE-2500B)  @TQFP44      ATF2500CQL             @DIP40       ATF2500CQL(MODE-2500)  @DIP40       ATF2500CQL(MODE-2500B) @DIP40       
      ATF2500CQL             @PLCC44      ATF2500CQL(MODE-2500)  @PLCC44      ATF2500CQL(MODE-2500B) @PLCC44      ATF2500CQL             @TQFP44     
      ATF2500CQL(MODE-2500)  @TQFP44      ATF2500CQL(MODE-2500B) @TQFP44                   
CPC 6128, Whole 6128 and Only 6128, with .....
NewPAL v3 for use all 128kB RAM by CRTC as VRAM
One chip drver for 512kB extRAM 6128
TYPICAL :) TV Funai 22FL532/10 with VGA-RGB-in.

eto

Ok... so finally there is something that supports it. Which is great.

And unfortunately still not feasible for this project as the programmer is too expensive which would violate the premise "DIY friendly". Let's see if the TL866-II or T48 will eventually support it. 

At the moment still no change of situation as the remaining issue is not related to the CPLD's features anyway.

McArti0

#156
 SLG4 has cheaper programmer and beter chips..
CPC 6128, Whole 6128 and Only 6128, with .....
NewPAL v3 for use all 128kB RAM by CRTC as VRAM
One chip drver for 512kB extRAM 6128
TYPICAL :) TV Funai 22FL532/10 with VGA-RGB-in.

GUNHED

Quote from: eto on 01:50, 30 January 25
Quote from: GUNHED on 00:42, 28 January 25The problem is probably at the stage where the function read the data from &4000-&7FFF
yes, that's where I have the bug: while in C3 mode when the CPU reads from VRAM at &4000-&7FFF I need to activate A15, so the physical address range is converted to C000-FFFF. This access should go to the SRAM only and must not be passed through to the motherboard but for reasons I still do not understand that's happening - and since the ROM is active, it then reads data from ROM.


Correct, so you probably need to "overpower" the internal signals. If I understood right, that's what was done before, but I'm not an hardware expert. 
http://futureos.de --> Get the revolutionary FutureOS (Update: 2024.10.27)
http://futureos.cpc-live.com/files/LambdaSpeak_RSX_by_TFM.zip --> Get the RSX-ROM for LambdaSpeak :-) (Updated: 2021.12.26)

eto

Quote from: GUNHED on 16:39, 31 January 25Correct, so you probably need to "overpower" the internal signals.
Things are a bit different on the CPU socket. 

Anyway... FutureOS already works, but the problem with the Dandanator shows that there is still not 100% compatibility. 

Btw: Has anyone ever tested the Dandanator with Revaldinhos expansion in parallel (and in C3 mode). Does that work or won't games run there too? 

Rabs

Quote from: eto on 16:55, 31 January 25
Quote from: GUNHED on 16:39, 31 January 25Correct, so you probably need to "overpower" the internal signals.


Btw: Has anyone ever tested the Dandanator with Revaldinhos expansion in parallel (and in C3 mode). Does that work or won't games run there too?
On a 464 with the universal 512k RAM? I can give it a go later.

eto

Quote from: Rabs on 17:05, 31 January 25On a 464 with the universal 512k RAM? I can give it a go later.
exactly. Thanks

Rabs

Quote from: eto on 17:23, 31 January 25
Quote from: Rabs on 17:05, 31 January 25On a 464 with the universal 512k RAM? I can give it a go later.
exactly. Thanks
Games seem to play OK. 464 with Universal 512K card and Dandanator plugged into the pass through connector.

Universal 512k DK'Tronics C3 Mode selected. Diagnostics detects RAM and indicates that C3 config is supported.
You cannot view this attachment.

eto

Quote from: Rabs on 17:55, 31 January 25Games seem to play OK. 464 with Universal 512K card and Dandanator plugged into the pass through connector.
thanks a lot for testing this. 

GUNHED

Quote from: eto on 16:55, 31 January 25
Quote from: GUNHED on 16:39, 31 January 25Correct, so you probably need to "overpower" the internal signals.
Anyway... FutureOS already works, ...
Glad to hear! Good work!  :) :) :)
http://futureos.de --> Get the revolutionary FutureOS (Update: 2024.10.27)
http://futureos.cpc-live.com/files/LambdaSpeak_RSX_by_TFM.zip --> Get the RSX-ROM for LambdaSpeak :-) (Updated: 2021.12.26)

eto

So... after reworking the memory mirror logic for C3 mode the 464 version now also works with Dandanator.

However I needed to sacrifice the 576K vs 512K(+C3) switch. It's still possible to have both on the same PCB but it needs to be programmed into the GAL if it should behave as 576K or 512K(+C3).

The other option would be to redesign the PCB and replace one of the ATF16V8 with an ATF22V10. But that's again a lot of work...

Question is: would anyone need a (manual) switch between the two modes or would one anyway decide for one way or the other?


Prodatron

I wonder if there are programs that require 576K and will not work with 512K?

For me it doesn't matter, #c3 is not needed, but the extra 64 KB makes no difference either, so I am fine with both options.

GRAPHICAL Z80 MULTITASKING OPERATING SYSTEM

McArti0

Quote from: Prodatron on 14:19, 03 February 25I wonder if there are programs that require 576K and will not work with 512K?
Worse. Will there be programs that will work with 640kB and not with 576kB? :laugh:

RAMDISC.

SymCommander when present 320kB .... Not Start. 8)
CPC 6128, Whole 6128 and Only 6128, with .....
NewPAL v3 for use all 128kB RAM by CRTC as VRAM
One chip drver for 512kB extRAM 6128
TYPICAL :) TV Funai 22FL532/10 with VGA-RGB-in.

eto

Quote from: Prodatron on 14:19, 03 February 25I wonder if there are programs that require 576K and will not work with 512K?
Mighty Street Fighter? Not sure if it needs a 512K expansion or 512K in total.


Egg Master

Probably, it requires 64K base RAM and 512K extended RAM, but not C3.
So, if you add the switch has you said, it may be not a problem to run it.

eto



But that's exactly the issue: I can no longer add the switch - at least not without a major refactoring. 

Egg Master

Oops, sorry. I misunderstood. I thought the switch to enable C3 mode using 64KB of shadow RAM was the first choice, so as not to have to redesign the extension by adding additional circuitry to support all modes with 576K.

eto

Quote from: Egg Master on 18:06, 03 February 25Oops, sorry. I misunderstood. I thought the switch to enable C3 mode using 64KB of shadow RAM was the first choice, so as not to have to redesign the extension by adding additional circuitry to support all modes with 576K.

Sorry, I probably was not clear. I already had the switch in the previous iteration - but that iteration was not 100% compatible wit ROM software. To make it compatible I needed to control another signal. For that I had to sacrifice the GAL Pin that was previously used for the switch. Also the equations became much more complex so even if I would magically find a free pin I could not implement the equations for both behaviours in the same GAL. At least not in the 16V8 I am using. 

Egg Master

If you have to add one more GAL, may be you can add extra 64K too?

So, you finally do not waste the main 512K while the C3 mode is enabled.
Best, adding 128K extra RAM, with 64K for a 640K version like on 6128?

eto

Update: 1MB version for 6128 (almost) working

The PCB still requires one fix and a bit of final polishing but I'm confident that it can be released in H1/25.

Prodatron

That looks fantastic! :)

GRAPHICAL Z80 MULTITASKING OPERATING SYSTEM

Powered by SMFPacks Menu Editor Mod