Hi, Robert,
Robert_99 wrote:I actually used your ram test already and everything works fine.
Ah, O.K.
That means, BLK0 (especially RAMx) and BLK1..3 work - from the CPUs view - as expected. You can practically exclude the possibility that 'regular' programs/games/tools/whatever will get into trouble with your RAM expansion. If you populate BLK5 with RAM (i.e., if this is possible), you should also check this.
Having RAM in BLK5 and being able to write-protect that RAM after softloading a cartridge image is a necessity if you don't want to use cartridges anymore. I don't see any cartridge port de-multiplexer in your design, and that precludes any cartridge use with your modded VIC-20 for the time being.
I was unclear about the testing. AFAIK there is sotware which runs only with <=8k and ther is software which needs >8k sometimes 24k sometimes more. But the start of video ram and basic is different with these two configurations. I have a switch now to select 8k or 32k and i want some suggestions of "problematic" software which i can use to test this.
That has been discussed quite extensively here in Denial, and is not something I'd consider "problematic" in any sense. Well written software simply restricts any extra RAM to the configuration of the unexpanded VIC-20, otherwise there are exactly three different RAM configurations you'll have to take into account:
- unexpanded VIC-20: BASIC start at $1001, BASIC end at $1DFF, screen RAM at $1E00, colour RAM at $9600,
- +3K expanded VIC-20: BASIC start at $0401, BASIC end at $1DFF, screen RAM at $1E00, colour RAM at $9600,
- >= +8K expanded VIC-20: BASIC start at $1201, BASIC end at $3FFF/$5FFF/$7FFF, screen RAM at $1000, colour RAM at $9400
These three configurations are mutually exclusive for running programs. Two exceptions to this rule:
- pure BASIC programs (also those using user defined graphics) written for unexpanded VIC-20 will also run on a +3K expanded VIC-20 (not that this will buy you much), and
- programs written for +8K will also run with +16K or +24K (and those written for +16K will also run with +24K)
You find more details in the sticky thread "
VIC-20 memory layout" in the Programming section.
As an example for the aforementioned 'well written software', you may try my
games collection: all those games are designed for the unexpanded VIC-20. If you run the
boot loader, it temporarily deactivates any RAM expansion present, and this allows the games to run even if a RAM expansion is there.
If you, OTOH directly run one of the included games with +8K RAM (i.e., in your parlance, 16K RAM in total), they won't run.
As example for a program, which requires +16K RAM (or more - in your parlance, you'd use 32K RAM in total, i.e. a +24K RAM expansion), you can try out
MINIPAINT.
...
Your schematics could be improved by showing the new setup, including how the GAL wedges in.
BTW, VA13 *is* actually /BLK4, not CA15. The original schematic has an error regarding the CS2 input pin of the character ROM, this one is really active low.
And yes the VIC can access all 16k (because it only has 14 Address Lines).
If you now replace your colour RAM by a 16Kx4 SRAM and wire the 4 new address lines to the user port as I did with my VFLI mod, you can also display 208x256 pixels in 16 colours with your VIC-20.
Greetings,
Michael