New retro Vic-20 clone

Modding and Technical Issues

Moderator: Moderators

User avatar
JonBrawn
Vic 20 Devotee
Posts: 225
Joined: Sat Sep 11, 2021 10:47 pm
Website: http://youtube.com/@vicenary
Location: Austin TX USA
Occupation: CPU design engineer

Re: New retro Vic-20 clone

Post by JonBrawn »

If someone asked you "what would you change about Dan Werner's VIC-2020?" what would your answer be?

All I've seen in this thread is the request to be able to disable the 3K RAM area.
Working on FPGA replacement for 6560/6561
https://youtube.com/@vicenary
User avatar
srowe
Vic 20 Scientist
Posts: 1340
Joined: Mon Jun 16, 2014 3:19 pm

Re: New retro Vic-20 clone

Post by srowe »

If this is the clone that was posted a while ago then there are a few things I'd have done differently. Removal of the cassette and user port is.the biggest disappointment I don't understand why that was done. Banking RAM could have been done using IO2 or 3.
User avatar
Mike
Herr VC
Posts: 4841
Joined: Wed Dec 01, 2004 1:57 pm
Location: Munich, Germany
Occupation: electrical engineer

Re: New retro Vic-20 clone

Post by Mike »

People seem to have divergent ideas about what should go into a re-designed mainboard and what not, here's my 2 cents:
srowe wrote:Banking RAM could have been done using IO2 or 3.
This is a somewhat unfortunate suggestion, as any internal expansion using registers in I/O2 or I/O3 is likely going to clash with cartridges.

And not necessary either. There is enough room (and prior art!) in I/O0, i.e. $9000..$93FF to put new registers there with a finer decoding. Especially $92xx and $93xx could be used for that purpose, leaving $90xx for the VIC and $91xx for the two "stock" VIAs. A VIC-20 with extra registers in $92xx or $93xx ought remain compatible to >99.9% of all programs, possible exceptions being programs that use non-standard mirrors of the VIA registers (and thus are, IMO, broken by design), or specialist programs that use the "holes" in I/O2 or I/O3 to probe unconnected address space. For the latter, they could be rewritten to use $9100 instead.
JowBrawn wrote:All I've seen in this thread is the request to be able to disable the 3K RAM area.
I also made the suggestion in this thread here to incorporate the VIC-2020 MINIMON cartridge design. With its cartridge expander, it acts more like an expansion of the motherboard, less so as cartridge, even if it uses logic to de-multiplex between I/O2, I/O3 on the slave cartridge or its own memory chip (which hosts MINIMON as firmware).

Other than that, being able to have RAM under BASIC, KERNAL and character ROM (the latter with the option to have this choice separated between CPU and VIC access, details see here) would be another nice feature. Naturally, chip registers in $92xx or $93xx could take care of the mapping.

Finally, there's always the option to incorporate my VFLI mod, with $0400..$0FFF accessible by VIC and a 16Kx4 SRAM as colour RAM, which I also mentioned here.

The last two features above could not be done with an external cartridge at all, so those would be first candidates for additional features of the VIC-20 motherboard. I'd much more concerned about any extra RAM/ROM that might clash with an external cartridge without a proper cartridge de-multiplexer.

That being said, beamrider's complaints regarding the memory configuration 'issues' are IMO a luxury problem. Tape and user port should be kept, at least as break-out ports, but as long as a pure software solution can revert to the original unexpanded RAM config, that should be in order. Not everything needs switches.


P.S. I still take priority on the VIC-2020 designator.
User avatar
JonBrawn
Vic 20 Devotee
Posts: 225
Joined: Sat Sep 11, 2021 10:47 pm
Website: http://youtube.com/@vicenary
Location: Austin TX USA
Occupation: CPU design engineer

Re: New retro Vic-20 clone

Post by JonBrawn »

Mike wrote: Sat Jan 15, 2022 10:50 am I also made the suggestion in this thread here to incorporate the VIC-2020 MINIMON cartridge design.
It is my understanding that MINIMON is a monitor ROM (at an unusual address) on a pass-through board that disables accesses to the external cartridge that would clash with the MINIMON ROM. Is this correct?
Mike wrote: Sat Jan 15, 2022 10:50 am being able to have RAM under BASIC, KERNAL and character ROM
Yes, I like the idea of shadow RAM. The use model that I'm visualizing is that writes to the ROM space write into the RAM, and reads read from the ROM, until you POKE some secret register to enable the RAM instead of the ROM, so future reads will come from the RAM. There are interesting details about what to do about RESET and once enabled, is the RAM write-protected?
Mike wrote: Sat Jan 15, 2022 10:50 am Finally, there's always the option to incorporate my VFLI mod, with $0400..$0FFF accessible by VIC and a 16Kx4 SRAM as colour RAM, which I also mentioned here.
That's the second piece of your IP that you've offered to lose control of! What has the interest in VFLI been like, is it something that would be widely used? Are people developing software for it?

As for keeping the user port, I fear that Dan's use of the VIA2 PB0-7 outputs for color bank switching has kind of killed being able to bring the user port signals out to a pin header unless we have Yet Another Jumper to enable/disable color banking. There also isn't a 9V AC supply available.

Re-instating the cassette port probably isn't going to happen as it would require a DC-DC converter to provide the motor voltage and a handful of extra analog gloop for a feature that, in my opinion, isn't all that useful for software development and testing these days. Do any of you have data on the voltage tolerances of the datasette along with the peak and steady-state current draw?
Mike wrote: Sat Jan 15, 2022 10:50 am Not everything needs switches.
No, but what else are you going to do on those long winter evenings if you haven't got 173 undocumented DIP switches to flip? :-)
Working on FPGA replacement for 6560/6561
https://youtube.com/@vicenary
User avatar
Mike
Herr VC
Posts: 4841
Joined: Wed Dec 01, 2004 1:57 pm
Location: Munich, Germany
Occupation: electrical engineer

Re: New retro Vic-20 clone

Post by Mike »

JonBrawn wrote:It is my understanding that MINIMON is a monitor ROM (at an unusual address) on a pass-through board that disables accesses to the external cartridge that would clash with the MINIMON ROM. Is this correct?
No. This is not just a "pass-through" board that places the MINIMON firmware at $9800 instead of the slave cartridge's I/O. It contains logic to properly de-multiplex said address range between slave cartridge and MINIMON firmware.
[VFLI,] that's the second piece of your IP that you've offered to lose control of!
Sorry, but you are wrong in that regard. Just because I publish things for free here in Denial does not mean I lose my IP from that.
What has the interest in VFLI been like, is it something that would be widely used? Are people developing software for it?
Why are you asking that? Consult my thread about the VFLI mod and decide for yourself whether it is of any value for you.
User avatar
JonBrawn
Vic 20 Devotee
Posts: 225
Joined: Sat Sep 11, 2021 10:47 pm
Website: http://youtube.com/@vicenary
Location: Austin TX USA
Occupation: CPU design engineer

Re: New retro Vic-20 clone

Post by JonBrawn »

Mike wrote: Sat Jan 15, 2022 2:06 pm
[VFLI,] that's the second piece of your IP that you've offered to lose control of!
Sorry, but you are wrong in that regard. Just because I publish things for free here in Denial does not mean I lose my IP from that.
That was said in jest Mike, not as a serious comment, I'm definitely not going to steal your IP. I'm sorry if I offended or upset you, that wasn't my intention at all.
Mike wrote: Sat Jan 15, 2022 2:06 pm No. This is not just a "pass-through" board that places the MINIMON firmware at $9800 instead of the slave cartridge's I/O. It contains logic to properly de-multiplex said address range between slave cartridge and MINIMON firmware.
I've read the MINIMON thread, and it looks like there are the following features:
  • A monitor that cleverly avoids stomping on page zero and the BASIC workspace
  • A switch to redirect accesses that would have accessed the MINIMON ROM to access an external cartridge
  • A button to cause a hard reset
  • The ability to cause a hard reset and disable BLK5 "for a while".
Have I missed anything?

As far as the VFLI mods are concerned, I've only glanced over that thread and it looks like a hardware + software system. Am I right in believing that the hardware mod is in two parts - first make all of the lower 8KB of memory accessible to the VIC, and second add bank select logic to the color RAM area? Is there more that I have missed? The first part was already on my list of things to try.
Working on FPGA replacement for 6560/6561
https://youtube.com/@vicenary
Post Reply