c0pperdragon / LumaCode

Definition of the "LumaCode" signal standard with reference implementation
59 stars 1 forks source link

Feedback VIC 20 variant (VIC20digitizer) #14

Open c0pperdragon opened 5 months ago

c0pperdragon commented 5 months ago

This thread is intended for feedback on using the VIC20digitizer.

wthorch42 commented 5 months ago

The NTSC compatible VIC20digitizer now seems to work well. Tested with unmodified VIC-20, 6560-101 VIC. Firmware v2.1 works with no cartridge, Omega Race, Mole Attack, Super Smash, Turmoil and the Penultimate+ cartridge. You'll need at least firmware BETA 62 on your RGBtoHDMI to get the correct profile.

I 3D printed a port cover bracket for my 2-pin (power) VIC-20 and drilled a hole for the RCA jack rather than doing a permanent case mod and that worked well. Other than that, installation is quick and easy.

See the install here.

IanSB commented 5 months ago

@wthorch42 I replaced the second video output on pin 5 of the VIC20's video connector with the lumacode signal. I think this output is normally connected to the external modulator so it effectively repurposed RF connectivity. This required a track cut on my board but some early VIC20 boards may have a component feeding that signal to pin 5 which could be removed instead

The main video output on pin 4 which is on the same pin as the original C64 still works for direct composite connections.

vic20-1

vic20-2

wthorch42 commented 5 months ago

I replaced the second video output on pin 5 of the VIC20's video connector with the lumacode signal. I think this output is normally connected to the external modulator so it effectively repurposed RF connectivity. This required a track cut on my board but some early VIC20 boards may have a component feeding that signal to pin 5 which could be removed instead

The main video output on pin 4 which is on the same pin as the original C64 still works for direct composite connections.

Nice. I didn't go that route because I'd have to make a new pigtail. I hate soldering DIN plugs and RCA jacks. Had to do it for the TI-99/4A since I copied you and cannibalized the +12V pin and hated every second of it.

wthorch42 commented 5 months ago

Thermal drift issue:

I was playing some games on the VIC-20 the other evening and I started to experience some issues after having played for a while (10 minutes or so).

I believe the issue may stem from the signals drifting due to thermal issues, rather than a problem with the VIC20digitizer. I was able to recreate the problem a couple of days later with the same symptoms after about 5 minutes.

However, after moving the VIC20 back to my lab to try to recreate the problem and record it to send to c0pperdragon, I've so far been unable to get it to do the same thing. I'll keep trying.

For those of you who may want to use the VIC20digitizer, I recommend heat sinking the VIC chip. This may be especially necessary on the older 2-pin power models as they use an older style voltage regulator and bridge rectifier that generate large amounts of heat inside the case. Newer models may be less susceptible, but I'd still heat sink the VIC on those, too. You may even want to consider installing a small 5v fan inside the case to help dissipate heat.

If I'm able to recreate the issue, I'll send the video to c0pperdragon. I don't know that there's anything he can do to address the issue, but maybe he can adjust the tolerances in his firmware to allow for a larger range of signals to be interpreted correctly.

IanSB commented 5 months ago

@wthorch42

Try using the "(Unterm)" versions of the lumacode profiles (under the RGB CPLD) as they have greater noise immunity.

wthorch42 commented 4 months ago

I was never able to get the issue to repeat while in the lab where I could capture the video, so I just added a heat sink to the VIC chip and will try again in the arrangement I had it when the issue occurred. I'll also try the (Unterm) version as Ian suggested. If I still experience problems, I'll let you know.