Ext. RAM 512kB to 640kB for CPC6128 on One DIP20 chip SLG46533v-DIP, one resistor and ... 6 diodes.
Starring 50pin SCSI As Mx4 ;D
SymbOS in CPC6640
Wow, that looks so great! Congratulation, McArti0!
TBH I have never seen a 640KB CPC system before.
I think 640K is enough for everyone.
Great design. I like the use of diode logic, keep it retro!
Bryce.
Quote from: Prodatron on 22:17, 06 November 24I think 640K is enough for everyone.
;D
And it's not a quote because apparently Billy didn't say it. :laugh:
Quote from: Bryce on 22:58, 06 November 24Great design. I like the use of diode logic, keep it retro!
Bryce.
Seriously though, this is panic saving pins. :laugh:
Due to the fact that MREQ did not reach the IC, therefore RAMDIS is also sent during IORQ.
This could be a problem later.
Moreover, the diode and resistor cause a large delay of one of the pulse edges.
Circuit will not be suitable for fast 16/20MHz CPU.
Quote from: McArti0 on 07:26, 07 November 24Quote from: Bryce on 22:58, 06 November 24Great design. I like the use of diode logic, keep it retro!
Bryce.
Seriously though, this is panic saving pins. :laugh:
Due to the fact that MREQ did not reach the IC, therefore RAMDIS is also sent during IORQ.
This could be a problem later.
Moreover, the diode and resistor cause a large delay of one of the pulse edges.
Circuit will not be suitable for fast 16/20MHz CPU.
Try adding a 10pf capacitor in parallel with the diode (or resistor). That will allow the leading edge to rise faster.
Bryce.
Quote from: Prodatron on 22:17, 06 November 24Wow, that looks so great! Congratulation, McArti0!
TBH I have never seen a 640KB CPC system before.
I think 640K is enough for everyone.
Yeah, Bill Gates told that already decades ago! ;D ;D ;D
BTW: Take a look at Tot0's X-MEM, it does also provides 640 KB RAM on the CPC6128. This was released also a decade ago. :)
Quote from: GUNHED on 13:00, 07 November 24Quote from: Prodatron on 22:17, 06 November 24Wow, that looks so great! Congratulation, McArti0!
TBH I have never seen a 640KB CPC system before.
I think 640K is enough for everyone.
Yeah, Bill Gates told that already decades ago! ;D ;D ;D
BTW: Take a look at Tot0's X-MEM, it does also provides 640 KB RAM on the CPC6128. This was released also a decade ago. :)
ive been hittin 640kb in symbos with 512k ram expansion and onboard ram..
Quote from: GUNHED on 13:00, 07 November 24Quote from: Prodatron on 22:17, 06 November 24Wow, that looks so great! Congratulation, McArti0!
TBH I have never seen a 640KB CPC system before.
I think 640K is enough for everyone.
Yeah, Bill Gates told that already decades ago! ;D ;D ;D
BTW: Take a look at Tot0's X-MEM, it does also provides 640 KB RAM on the CPC6128. This was released also a decade ago. :)
Yeah, except Bill never actually said that. It's a fake quote that somehow refuses to die.
Bryce.
(https://pbs.twimg.com/media/EOT0b5TWoAER-6g?format=jpg&name=small)
Quote from: Prodatron on 22:17, 06 November 24Wow, that looks so great! Congratulation, McArti0!
TBH I have never seen a 640KB CPC system before.
I think 640K is enough for everyone.
Yes. 640K ought to be enough for everyone. ;D
I'm using the xmem, and it allows that too.
I wonder, how we can have 640k, when ram configuration (https://cpctech.cpc-live.com/docs/rampage.html) allows maximum 8 X 64k blocks of extra ram= 512k where adding the internal 64k, equals to 576k.
Does this utilize the "undocumented extension" of using extra address bits for the extra 64k blocks, like with the 1,2,4mb ram cards?
Quote from: ikonsgr on 00:46, 14 February 25I wonder, how we can have 640k, when ram configuration (https://cpctech.cpc-live.com/docs/rampage.html) allows maximum 8 X 64k blocks of extra ram= 512k where adding the internal 64k, equals to 576k.
Does this utilize the "undocumented extension" of using extra address bits for the extra 64k blocks, like with the 1,2,4mb ram cards?
i think you might be forgetting the other 64k in the 6128!
and yeah iirc the last 2 blocks from the expansion memory use another IO port.. 7Exx vs 7Fxx ?...
(maybe the whole 512kb is moved into that port ..so internal ram has its original port and banking...im not sure tbh! playing with the dipswitches on revaldinhos universal 512k board i can get 640k in sym....X-MEM vs Y-MEM?!)
Quote from: ikonsgr on 00:46, 14 February 25I wonder, how we can have 640k,
Note that my pin19 remembers A8. So just like in the 1MB extension.
eto did the same in his iRAM640.
The difference is that eto did i64+e512+i64. and my driver does i64+i64+e448+e64.
See what gates 3-L12, 3-L13 do. For A8=1, C0+mix the extension is disabled. For A8=0 we have mirror 512kB.
Bits 3, 4, 5 allow to define up to 8 banks of 64K for RAM expansion at a given address range.This does not affect the 64K base RAM.
The internal RAM of the CPC 6128 adds 1x 64K, which is usually disabled by expansions, because at the same address range (&7Fxx).
But, if the expansion RAM decodes the A8 address line, you can still access this bank from another range (&7Exx), like X-MEM does.
Man, it means maybe having to rethink memory detections.
Options
Check for each extra 64kb bank, fast but not perfect now, add the 64kb.
Check for each 16kb bank, 4x slower tha above but more accurate.
Let's hope no randomly spaced 4kb block expansions appear in future... which could have many benefits but... not dktronics compatible.
We do still have multiface2, nvram and vortex ram though of which some can work with up to 4mb ram.
Are there any faster methods of accurately checking the presence of ram than cycling through all banks or blocks? (Ideally from BASIC)
Also does anyone know which current memory expansions give 576kb vs 640kb on 6128 machines?
Quote from: zhulien on 12:16, 16 February 25Man, it means maybe having to rethink memory detections.
Options
Check for each extra 64kb bank, fast but not perfect now, add the 64kb.
Nothing to rethink there. That is exactly what you have to do and always had to do.
Quote from: zhulien on 12:16, 16 February 25Check for each 16kb bank, 4x slower tha above but more accurate.
Why? There is afaik no RAM expansions that provides RAM in fractions of less than 64KB blocks. I also see little point in doing that as basically all useful SRAMs also provide a multiple of 64K.
Quote from: zhulien on 12:16, 16 February 25Also does anyone know which current memory expansions give 576kb vs 640kb on 6128 machines?
afaik:
640K: X-MEM and iRAM/640 (+McArtis here, once it's released)
512K: CPC6512 (full DK'tronics compatible)
576K: everything else
We have to realize that a regular ext 512kB is ext 4MB where we have an 8x mirror of the first 512kB. 8)
Quote from: eto on 14:07, 16 February 25Quote from: zhulien on 12:16, 16 February 25Man, it means maybe having to rethink memory detections.
Options
Check for each extra 64kb bank, fast but not perfect now, add the 64kb.
Nothing to rethink there. That is exactly what you have to do and always had to do.
Quote from: zhulien on 12:16, 16 February 25Check for each 16kb bank, 4x slower tha above but more accurate.
Why? There is afaik no RAM expansions that provides RAM in fractions of less than 64KB blocks. I also see little point in doing that as basically all useful SRAMs also provide a multiple of 64K.
Quote from: zhulien on 12:16, 16 February 25Also does anyone know which current memory expansions give 576kb vs 640kb on 6128 machines?
afaik:
640K: X-MEM and iRAM/640 (+McArtis here, once it's released)
512K: CPC6512 (full DK'tronics compatible)
576K: everything else
The Nova provides RAM in 2 KB blocks, its total size ist 32 KB. And the cool thing is: You can put a 2 KB RAM block at every 2 KB boundary inside the RAM.
It's time for an improved RAM banking system for the CPC anyway. :)
ERROR and mistake :o 8)
When You make ExtRAM, NEVER use nRD from Z80 CPC, because you dont separate read ROM and RAM.
You dont know the power of the nRAMRD side...
Remember! Only nRAMRD will be with You!!! Always!!!
nRAMRD is Hi level when CPU read from HROM.
this mistake has above 20 years. Yarek's RAM-BOX 512 has it too.
RAM C2 and Amsdos and RAM and ROM is in conflict.