NERD´S
STUFF
Playing
M.U.L.E. with C64-VICE on INTERNET
April 2020
Severals days I worked hard to find out, how this may work. Now
I succeded!
And before I forget it, I put it down. For me and for you. These things
are easily forgotten again.
Maybe you can just use the short manual (in German) of https://www.c64-wiki.de/wiki/VICE#Netplay and get happy, when your
system is (by chance) ready to go.
It did not work for me that easily. It seems, I ran into every single
problem existing, before I got this going.
Since I and my longtime friend player M. cannot play our regular live games of
M.U.L.E. every Monday evening (mit Bier und Schinkenbrot) on an
original Brotkorb C64 from 1984 at the moment (Corona ...
you know that if you collect all Corona viruses per 4th April 2020,
guessing from 1 Mio. infected people worldwide, all viruses would fit
in a cubed box with single side lengths of 25 cm) I set up M.U.L.E. for
home playing for us. Here we go:
I tried several VICE editions. VICE 3.1 is the emulator edition that
works
best. You can download it here:
https://csdb.dk/release/?id=155140
Playing a two player game, one computer is the server and the second
computer on the other end of the internet is the client. All challenges
are on the server side. The client´s side is easy to setup.
In my case server (Player 1) and client (Player 2) are running on
Windows 10. It is possible to
play a 3- or 4 player game, too, as long as they are plugged in
any combination into the server computer of player 1 and/or into the
client computer of player 2.
Do not panic, when looking at the long ToDo-List. Already the second
M.U.L.E. game can start at step D, low down on this page.
Cheap router devices are not built
for Port Forwarding. For playing
M.U.L.E. on the internet you would have to buy another one. Look in the
router manual or google your router whether it says somewhere something
like "Port Opening", "Port
Forwarding" or "Virtual Servers". But only the router of the
server computer of player 1 needs Port Forwarding. The client computer
of player 2 will work with any router or hotspot.
A.
The Router and Computer on Server
Side (Player 1)
A1. Type "cmd" and Enter in the
search window at the bottom taskbar. A window with command lines opens.
Type "ipconfig" and enter. You get
the IP of your local PC/Laptop, usually it is the IPv4 Address you can
see now.
I name the server computer IPv4 Address IPpc for further referencing.
A2. Login to your LAN or WLAN-routers page. You have to look
into the manual to find out the name of the address (put the name in
your browser) and the password to access.
(e.g.: I own a TP-Link M7350 and for
this device the address to access the routers setup is
http://tplinkmifi.net)
After login you might be on
the status page of the router and you can see there another IPv4
Address. If you do not see it, you have to find that address somewhere
in the routers setup pages. Good luck!
I name the routers IPv4 Address IPro
for further referencing.
A3. Open in your browser https://whatismyipaddress.com/de/meine-ip. Now you get your IP
Address that a client can address publicly from his side of the network.
I name the public IP-Address IPpu.
A4. Compare IPro to IPpu. Chances are that IPro = IPpu. If so, you are a lucky
guy. People from the outside (client computer of player 2 in our case)
can address your router directly and you can skip the next steps and
jump to A8.
A5. IPro ≠ IPpu. This means, that your
router cannot be addressed dircectly from the outside, but only by
subaddressing from your internet provider. The client computer of
player 2 can only see the address of the internet provider IPpu, but not the address of
your router IPro.
Playing M.U.L.E. on the internet will not work in this case. You have
to do something...
A6. Go back to your router pages (as in A2.). On one of the setup pages
you must find the dial-up settings. In these settings you must find the
address for the access point name APN. This APN has been configured on
your router by your internet provider. Usually the internet provider
gives you an easy connection. If you are satisfied with it, the
internet
provider is happy, you are happy. But not if you want to play with
other computers in the internet. For that you need a proper APN. And
the
internet providers have (usually) second sets of APN´s for gaming and business.
And usually you do not even have to change your contract, but only
change the APN.
Usually the router page for the dial-up settings allows you to add
another set of settings. Choose the button ´create´ or ´new´ and put in the same content
as in your original dial up-settings under a new profile name. Just use
another APN. The right APN you have to find on internet. Try the search
words "APN", your actual APN address, the name of your provider and/or
"Gaming". But write down your original dial-up settings before adding
your new APN! You never know.
(e.g.: in my case the original APN
was "internet.t-mobile.at" and the APN for gaming given by the provider
"business.gprsinternet". Without changing the APN to "business.gprsinternet" the client computer of player 2 would
have had no chance at all to find my player 1 - computer as server.)
A7. You found the APN and changed the dial-up settings. A side effect
may be that your internet is much quicker now, because your router is
addressed directly from the outside now. Note: by now, you are secured
by
your firewall only. With the former dial-up settings the firewall of
the provider was
also around your network. Be calm, the Windows firewall is quicker in
responding to bad action from the outside anyway.
Now, go back to step A2. to step A3. and check, if IPro = IPpu now. When not, go back to
step A6.
and try again. If it is not possible at all to get IPro = IPpu you have to talk to your
provider.
A8. IPro = IPpu. The client player 2 can
already
address your router directly at the address IPpu. Now the client (player 2)
has to be allowed to go from your router into the VICE emulater on the
server computer of player 1. VICE proposes port 6502 for communication.
It could be any port number. We take the number 6502, why not?
You must open port 6502 on your router pages. Look on your router pages
(login as in A2.) for the setup of the network address translation NAT.
There are
different names for Port Opening. Maybe "NAT Port Opening", "Port
Forwarding", can even be something like "Virtual Servers". You are on
the right spot of your router pages, when you find a page, where you
can fill out something like
Name of service Internal Port
Protocol Internal
IP (eventually external Port)
If
you find this page put in
x64sx
6502
TCP
IPpc
(6502)
Save it. Now port 6502 is open from the router side.
A9. Start the Vice with
x64sc.exe and go to ´File´ and ´Netplay...´. Klick ´Netplay...´ and ´Start server´. A window "Security Allert"
pops up. Click ´Allow access´ and ignore the Vice Error
(klick ´OK´). Now port 6502 is open
from the computer side, too.
A10. Let´s do some testing. Call a
friend of you. Ask him/her to open in his/her browser https://www.yougetsignal.com/tools/open-ports/. Tell him/her your IPpu you get from A3. and the
port number 6502. By clicking ´Checking´ on that page he/she should
get ´Port 6502 is open on IPpu´.
A11. Router and Computer are
Ready. Congratulations!
B.
The Software
B1. You can find several images of
M.U.L.E. on d64- and t64-files in the internet. Those will not work,
because M.U.L.E. in its original form was splitted in three parts that
loaded one after the other into the C64. But every time VICE
connects with a drive the synchronisation between server and client
would be interrupted and the game corrupted.
Therefore you need to run M.U.L.E. from a single internal
file. Gladly, this file exists. I found it at
https://www.c64games.de/phpseiten/spieledetail.php?filnummer=479 and
renamed it for easier use. You can download the file from here http://www.qeter.at/mule. This
version allows 3 or 4 players for playing with 3 or 4 joysticks (and
not the keyboard).
B2. Create a directory ´PRG´ and
put the downloaded file ´mule´
into it. Do not change the name of the file.
C.
The Joysticks
C1. I and M. love our original
Competition Pro Mini Joysticks. To be able to use them I ordered from
Retro Fun! on ebay two ´TheC64
Mini Max´.
This is an adaptor from 9-pin to USB. The ´TheC64
Mini Max´
came after two days to my home. I had to send one Mini Max to M.
D.
Ready, Steady, Go!
D1. Both Players turn on their
Computers and, before
starting VICE, plug in their Joysticks via ´TheC64
Mini Max´ in
their sperated USB ports. Turn the internet on. The router of player 1
must be working acc. to A.
D2. Player 1 starts VICE 3.1 on his server computer and seperately
player
2 starts VICE 3.1 on his client computer.
D3. Player 1 on VICE goes to ´Settings´ and
´Peripheral
settings...´ and ´Drive
8´.
Click ´Use
IEC Drive´ and ´Directory´.
Browse to the directory ´PRG´
that you created at step B2. and okay it.
D4. Player 1 writes in the C64-screen: LOAD
"MULE",8,1 and
Enter
then RUN and Enter. M.U.L.E. starts now, but do not let yourself get
distracted and go on with D5.
D5. Player 1 on VICE goes to ´Settings´ and ´Video
settings...´. Choose
´VICII
Renderer´ and
unklick ´Double
scan´ and ´OK´. This
will help the synchronization performance between server and client.
D6. Player 1 on VICE goes to ´File´ and ´Netplay...´. Player 1 ticks the boxes
under
Server for ´Keyboard´, ´Joystick 1´, ´Devices´ and ´Settings´ and under Client for ´Keyboard´, ´Joystick 2´. Then ´Start Server´ (clicking ´Keyboard´ under client is necessary, if a 3rd
or 4th player is playing on the computer of player 2, too). A window "Security Allert"
might pop up. Click ´Allow access´ and ignore the Vice Error
(klick ´OK´).
D7. Player 1 on VICE goes to ´Settings´ and
´Joystick
settings´ and ´Joystick
settings...´.
Select for Joystick#1 ´e4you
Retro Fun´ and ´OK´.
D8. Player
2 on VICE goes to ´Settings´ and ´Video
settings...´. Choose
´VICII
Renderer´ and
unklick ´Double
scan´ and ´OK´.
D9.
Player 2 on VICE goes to ´Settings´ and
´Joystick
settings´ and ´Joystick
settings...´.
Select for Joystick#2 ´e4you
Retro Fun´ and ´OK´.
D10. Player 1 opens in his browser https://whatismyipaddress.com/de/meine-ip and tells player 2 the IP.
D11. Player
2 on VICE goes to ´File´ and ´Netplay...´ and puts in the IP of
player 1 in the field right to ´Connect to´ and then confirms ´Connect to´ and
ignores
the Vice Error (klick ´OK´), too.
D12. Everything is set for 2
players. Have fun!
D13. But you want to add more
players on the server or client computer? Just plug in more joysticks
in either computer. Before step D11 both players, player 1 and player 2
must go to ´Settings´ and
´Control port settings...´.
All 4 selections shall be ´Joystick´. Then both go to ´Settings´ and
´Joystick
settings´ and ´Userport joystick
settings...´ and select ´CGA userport joy adaptor´ on top. Now it depends in
which home the additional players sit. If all players use joysticks via
the ´TheC64
Mini Max´ the player 1 on the server
computer and the player 2 on the client computer must select
appropriate ´none´ or ´e4you
Retro Fun´ for ´Joystick in extra port #1´ and ´Joystick in extra port #2´. Clearly, for example, a ´e4you
Retro Fun´-setting at ´Joystick in extra port #1´ at the client computer
needs a ´None´-setting at ´Joystick in extra port #1´ at the server computer and
vice versa.
D14. Everything is set for 3 or 4
players. Have more fun!
Note 1:
As long as we stayed in the software of the M.U.L.E.-game our
internet-gaming worked without any problems. Only when fooling around
with the VICE-settings (e.g. settings for another joystick) during the
game the connection stopped sometimes. In that case the client player 2
must reconnect again by going to ´File´ and ´Netplay...´.
Note
2:
If you want to Skype during the game (what we always do, when playing),
turn on the microphone and off the video to ensure a quick internet
connection for the game. If Skype mutes the M.U.L.E. sound go to the
Sound Control Panel of Windows, look for the tab ´Communications´ and
click ´Do
nothing´.
Feedback and questions: qeter@gmx.at