Access the Internet Using V-1541 in VICE
Did you know that you can use V-1541 and CommodoreServer right from VICE? If you do not wish to invest in an Internet Modem at this time, you can still enjoy the benefits of CommodoreServer right from your VICE emulator. Here's how.
VICE is, by far, one of the most popular Commodore emulators around. One cool feature of VICE is its extensive support for I/O devices - including the RS-232 port. I'll show you how you can use this feature to connect to CommodoreServer.com using V-1541 without the need for any additional hardware.
Step 1 - Download the Latest VICE
Earlier versions of VICE had some problems with the RS-232 port working properly under certain conditions. Once you download VICE 2.2 or greater (always use the latest version!), you should have no problems getting Internet access using V-1541.
Step 2 - Configure the RS-232 Settings
Basically, VICE allows you to have multiple "virtual" RS-232 ports, but only one can be selected at any given time (shown in Step 3 below).
Set any one of the devices to CommodoreServer's IP Address and Port, as shown. You only need to choose one of the device numbers. Here, I have the same IP Address and Port for all four devices, but you really only need to choose one. You cannot use the domain name since VICE does not recognize it properly. You must type the complete address and port into the box (50.112.163.22:1541).
When finished, click OK.
Step 3 - Configure the RS-232 User Port Settings
Now you have to tell VICE to enable the RS-232 port. Click on Settings...Cartridge/IO settings...RS-232 Userport settings from the menu, as shown:
In the dialog, ensure that the "Enable RS-232 userport" checkbox is enabled and select the userport device number you set in Step 2 above.
For the baud rate, select 2400. Click OK when finished.
Step 4 - Restart VICE
Before restarting VICE, please save your settings first (Settings Menu / Save current settings). VICE will not recognize the settings without restarting completely. Be sure to close all VICE programs and then restart.
Step 5 - Attach the V-1541.D64 Disk Image
Now that VICE is configured, it's time to attach the V-1541 disk image. Download V-1541 from CommodoreServer.com and save it somewhere on your local computer. Attach the disk image, as you would any other D64, and then type LOAD"*",8,1 - this will load V-1541 at memory location 49152 ($C000). If you want to put V-1541 in another memory location, you can alternatively load V-1541LO, which will place V-1541 in lower memory at 32768 ($8000). Once loaded, type SYS 49152 (or 32768, depending on which location you used). Then type NEW to clear and reset the BASIC pointers (not needed for v2.4 and above). V-1541 is now running in the background and will notice when you try to load files from device #2 (the RS-232 port).
Step 6 - Test it Out
To see if V-1541 is active and working properly, you can issue the DISKS command to show a list of disks and directory entries on CommodoreServer.com. To do this, you can type the following:
LOAD "!",2
Shortly thereafter, a list of disk images and folders will be shown. If you just get back a READY or if the computer seems to lock up, make sure you follow all of the steps above and then try again.
Step 7 - Further Testing and Experimentation
For more information on using V-1541, you can read about V-1541 and download the V-1541 Users Guide. Since V-1541 is designed to work solely with disk images on CommodoreServer.com, it is limited in the set of commands that interact with CommodoreServer's disk files. There are additional commands that you are still able to use via V-1541 using the following syntax:
LOAD ">COMMAND",2
Replace COMMAND with the appropriate CommodoreServer Internet Protocol (CSIP, for short) commands. Please see the CSIP Command Reference blog post for more information.
Conclusion
CommodoreServer provides an open API via CSIP. Using CSIP, you can develop applications, such as V-1541, to take advantage of all of the features that CommodoreServer has to offer.
Without the use of special hardware, developers and users alike can benefit from the services of CommodoreServer, V-1541, and CSIP using VICE's I/O and RS-232 configuration.
Leave a Comment
You must be signed-in to post comments.Responses
S0RC3R0R 5/3/2011
Very cool. Allows you to access your CLOUD if you are not by your trusty C-64 but you have your laptop with you with WinVICE on it! Very slick. I bought the Comet64 modem but would also use this option if needed.
- S0RC3R0R
S0RC3R0R 5/8/2011
I tried this and it works just fine!
RandyInLA 5/24/2011
I have been trying to get this to work with Vice 2.2 on Mac OSX. The menu items are in a different location and have slightly different names (Cartridges vs. CartridgeI/O Settings... etcl.). I can attach the v-1541 disk image, load"*",8,1, sys 49152, new... all work fine. When I type load"!",2, it just hangs.
Am I to replace the default Device 1 property of "/dev/ttyS0" with the IP address listed in the article? The article does not show what the default value is and the dialog box is completely different on the mac version.
RandyInLA 5/24/2011
Just downloaded and tried on Vice2.3 GTK version on Mac OSX. No way to enter IP address for Device 1. Only allows the loading of a file. Maybe I can create a text file with the IP address in it?
CommodoreServer.com 5/24/2011
@RandyInLA, I do not have a Mac so I have no way to try this out. In Unix, it seems you must launch a process and pipe the RS-232 to it, but I haven't been very successful with that, either. If you get it working on the Mac, let me know so I can include it in the article.
RandyInLA 5/24/2011
I saw that the Mac Cocoa version is "missing some elements" of 2.2, even though it is labeled as 2.2. They do not list what is missing, and suggest using the GTK or another version (can't recall the name at the moment). I downloaded both, including a 2.3 version, and was still unsuccessful in connecting via rs232. I even tried installing the windows version of Vice in my VMWare winxp. I didn't see any menus at all in that one. (?!?) I might try again this coming weekend.
RandyInLA 7/2/2011
Success! I found an article on how to get Vice to connect to the Quantum Link server and it shows the proper syntax for a mac to use an IP address as device 1.
|nc -p 30007 198.145.38.115 1541
(the first character, a pipe, is required) It uses a space, not a colon, to separate IP address from port. I don't know what the "-p 30007" is, so not sure if it can be changed or is needed etc., but I can finally connect to commodoreserver.com chat room via Mac OSX Vice 2.2.
No more Vice emulator running inside VMWare WinXP emulator running on Mac OSX!
celsius 12/5/2011
I found an article here
http://lyonlabs.org/commodore/qlink/index.html
about using netcat with vice in linux for userport rs232 emulation.
the command entered in the "command to execute for rs232 emulation" should be
/usr/bin/netcat -p 30007 198.145.38.115:1541
unfortunately this command fails to resolve host "198.145.38.115:1541"
Is there another port besides 30007, that I should try?
celsius 12/5/2011
the "Command to execute for RS232 (preceed with '|') (as superuser) is:
|netcat -p 30007 198.145.38.115 1541
not
|netcat -p 30007 198.145.38.115:1541
works now in vice running on LMDE (Linux Mint Debian Edition)
aylesburytim 9/16/2012
My 80 Column PET's PSU did a Chernobyl while I was using ircpet on my flyer. I do hope to get a new 80c PET when I can but in the meantime I can use my commodore pet pc with winVICE.
I'm looking forward to my Comet modem (in the post) and the Comet+ when it is available.
Thanks CommodoreServer for bringing this all together.
Tim.
jussx 8/18/2013
for linux users
use socat for creating a virtual serial sevice and redirect data to TCP connection
for example
socat -d -d pty,link=$HOME/ttyV0,waitslave TCP:50.112.163.22:1541
then you created a symlink into your home directory with name 'ttyV0'. use it to configure VICE
then done
BroBryce 11/17/2013
If you're looking to get the Mac version working, I created a whole blog post and video to demonstrate it right here on CS... http://commodoreserver.com/BlogEntryView.asp?EID=B7D70A032EA64B4F98993302D4DBED88