Page 1 of 1
VIC-20 flash memory expansion
Posted: Fri Nov 29, 2013 2:16 am
by phvic
Hi there! I'm planning to build a device for the expansion port which should allow fast cross-platform development and I'm looking for comments on the feasibility of the project and also on any glaring errors in the design
The cartridge should have the following features:
- vic-20 can see the flash as read only memory
- vic-20 can autoboot from the flash
- a microcontroller is used to write to the flash, the microcontroller is connected to PC/Mac through serial
- the memory can be flashed while the vic-20 is powered on
Please see the attached conceptual diagram. The flash and MCU are connected to the same address and data busses. There are two modes of operation:
1) the MCU is inactive and vic-20 can access the flash memory; the 74HCT245 transceivers are enabled. MCU I/O pins are connected to address and data busses but they are in high impedance input mode.
2) the MCU is active and uploads new data to flash. The 74HCT245 transceivers are disabled (by setting inv. OE lines high) so the vic can not access the memory and the bus between MCU and flash is disconnected from the vic.
Can you see any problems with this design? Any ideas how to make it simpler?
Another idea I've been thinking is to hold the vic-20 in reset while the flash is updated. Would the 74HCT245 chips be needed in this case? Is it safe to use the bus while the computer is in reset?
I want to get this right because I don't have any extra vics to burn down

Re: VIC-20 flash memory expansion
Posted: Sat Nov 30, 2013 5:07 pm
by TLovskog
Hi
Well it is a fairly straight forward design and concept. USB on the host side?
Pulling the reset seams a good idea anyway, however The 6502 can't tristate the address bus so you need the buffers.
Re: VIC-20 flash memory expansion
Posted: Wed Dec 04, 2013 2:53 am
by phvic
Yeah, I suspected that the bus is not in high impedance state even in reset. Thanks for the confirmation!
Yes, the plan is to use USB->serial converter between MCU and host PC. I hope to get some free time during the christmas holidays to work on this. I'll post results here.
Re: VIC-20 flash memory expansion
Posted: Sat Jan 18, 2014 2:37 am
by phvic
I finally had some time to work on this. I built this on a breadboard and it works! Next I'm going to etch a PCB. Then I'm ready to start coding something for the VIC
Full write up with schematics and photos in my blog:
http://petenpaja.blogspot.fi/2014/01/vi ... rt-12.html
[youtube]HjBKyWvgfRQ[/youtube]
Re: VIC-20 flash memory expansion
Posted: Wed Jan 22, 2014 10:23 am
by Witzo
Looks promising.
Re: VIC-20 flash memory expansion
Posted: Thu Jan 23, 2014 8:17 pm
by JagMod
Looking forward to this!!
Re: VIC-20 flash memory expansion
Posted: Fri Jan 24, 2014 4:22 am
by joshuadenmark
This looks very promising
Like that, keep up the good work.
Re: VIC-20 flash memory expansion
Posted: Fri Jan 24, 2014 3:49 pm
by phvic
Thanks guys! I'm trying to find time to design the PCB with Eagle. I've never done a two-sided pcb before. Any ideas how to align masks for uv exposure? Maybe drilling a few holes to align a few pads in the corners of the pcb is enough?
I would like to fit everything inside a standard cartridge box. It's going to be real tight... I would also like to fit in some extra ram...
Re: VIC-20 flash memory expansion
Posted: Sat Jan 25, 2014 3:01 am
by joshuadenmark
phvic wrote:Thanks guys! I'm trying to find time to design the PCB with Eagle. I've never done a two-sided pcb before. Any ideas how to align masks for uv exposure? Maybe drilling a few holes to align a few pads in the corners of the pcb is enough?
I would like to fit everything inside a standard cartridge box. It's going to be real tight... I would also like to fit in some extra ram...
Could you allign the films and staple one edge together and put the pcb in between?
Re: VIC-20 flash memory expansion
Posted: Tue Jan 28, 2014 2:13 am
by phvic
joshuadenmark wrote:Could you allign the films and staple one edge together and put the pcb in between?
Good idea, I'll try that!
Heh, my project got featured in Hack A Day
http://hackaday.com/2014/01/27/flash-ga ... he-vic-20/
Re: VIC-20 flash memory expansion
Posted: Fri Jan 31, 2014 2:11 pm
by joshuadenmark
Perhaps you could this service for the pcb production, looks cheap?
http://www.futurlec.com/PCBService.shtml
Re: VIC-20 flash memory expansion
Posted: Mon Feb 03, 2014 1:35 pm
by brain
Just a thought, but consider modifying the Data lines to allow writing (and OE/WE support), so you can move data back to the PC (make changes, and then the controller can push data back to the PC.)
Jim
Re: VIC-20 flash memory expansion
Posted: Wed Feb 05, 2014 10:33 pm
by TLovskog
Unless you really want to, there is nowadays no point in manufacture the PCB yourself. Use any of the gazillion prototype manufacturers that are around. Cheap, fast and plated through.
http://oshpark.com/ is one example which I have used. The accept eagle files directly also.
Re: VIC-20 flash memory expansion
Posted: Wed Feb 05, 2014 10:57 pm
by brain
TLovskog wrote:Unless you really want to, there is nowadays no point in manufacture the PCB yourself. Use any of the gazillion prototype manufacturers that are around. Cheap, fast and plated through.
http://oshpark.com/ is one example which I have used. The accept eagle files directly also.
True. There is batchpcb, for truly cheap (but not fast) orders.
I use ourpcb.com/eastpcb.com, and Bright Circuits.
I'm happy to help with an order, if needed.
JIm