Emulation of RS232 VIC20 for running multiplayer games

You need an actual VIC.

Moderator: Moderators

MartinC
Vic 20 Drifter
Posts: 33
Joined: Tue Oct 25, 2022 12:18 pm
Website: https://winterfam.co.uk
Location: Kent,uk
Occupation: Author

Re: Emulation of RS232 VIC20 for running multiplayer games

Post by MartinC »

mimmosic wrote: Fri Jul 05, 2019 9:10 am Building the connection cable is easy.

1. get a normal stereo audio cable (two lines plus the ground) and two connectors for the RS232 port.
2. Mark each connector with a label "TOP SIDE" just to avoid confusion later
3. Solder the ground of the cable to the A pin of both connectors.
4. Connector 1: Solder pins B and C together to red cable, Solder pin M to white cable
5. Connector 2, do the opposite: Solder pins B and C together to WHITE cable, Solder pin M to RED cable

Connect to VICs, turn them on, test.
Below the schematics of the VICs user port. Pins B and C are CB1/PB0 (input), M pins is CB2 (output)

Image

Next, I'll be posting the photos of my cable's finished connectors. I tested the above with a 50m+ cable and worked great.

After seeing it working on real VICs, you will want to test it on emulators like I do!
Now that I have 2 working Vics I am going to try the above User port cable build out. Is the wiring schema above correct and safe?

Why are pins B and C jumpered? Is it so that an interrupt is raised when data is received along PB0?

I haven't looked at mimmosic's code yet, but I'm guessing that CB2 will be set to HANDSHAKE OUTPUT MODE for this to work?

I have a cable with four cores, do I need pin N as a second ground connection? Does it matter if I connect both ground pins?

I'm going to use some spade terminals on the User port edge connector pins to make the cable re-configurable to start with.

Thanks in advance for your kind responses.
User avatar
srowe
Vic 20 Scientist
Posts: 1340
Joined: Mon Jun 16, 2014 3:19 pm

Re: Emulation of RS232 VIC20 for running multiplayer games

Post by srowe »

MartinC wrote: Wed Feb 21, 2024 9:21 am Why are pins B and C jumpered? Is it so that an interrupt is raised when data is received along PB0?

I haven't looked at mimmosic's code yet, but I'm guessing that CB2 will be set to HANDSHAKE OUTPUT MODE for this to work?
Correct, the receive line must be connected to both CB1 and PB0 so that a interrupt is generated on a start bit and the data value can be read for the actual bit. Handshaking on VIA ports is only relevant for parallel communications, the KERNAL RS-232 routines just bit bang the Tx/Rx lines.
MartinC
Vic 20 Drifter
Posts: 33
Joined: Tue Oct 25, 2022 12:18 pm
Website: https://winterfam.co.uk
Location: Kent,uk
Occupation: Author

Re: Emulation of RS232 VIC20 for running multiplayer games

Post by MartinC »

Ok, well, I built my cable last weekend, so I'll do some more reading and give this a try.
mimmosic
Vic 20 Drifter
Posts: 23
Joined: Mon Jul 01, 2019 8:28 am
Website: https://vic20reloaded.com
Location: Bologna
Occupation: programmer

Re: Emulation of RS232 VIC20 for running multiplayer games

Post by mimmosic »

Hello,
I am happy that you decided to give the cable a try.

I have used the cable for a long time. My VIC and a friend of mine's stayed connected for a couple of years with a 50 meters-long cable running from one building to another.

Check out the "Networking VIC" diskette with the three software

Happylink (chat software)
Ship Battle (game)
Horse Racing (game)

I remember how these simple games were big fun at that time!
User avatar
Orangeman96
Vic 20 Amateur
Posts: 45
Joined: Tue Jan 16, 2024 3:42 pm
Location: U.S.A.

Re: Emulation of RS232 VIC20 for running multiplayer games

Post by Orangeman96 »

Is it fair to say this cable is essentially a null modem cable? (We used to use such cables to play F-15E Strike Eagle III in two-player mode: with one 80486 rig as the pilot, and the other 80486 rig as the "guy-in-back" -- officially, the Weapons Systems Officer.) -OGM
Post Reply