PC-DC server guide for Win7 and Linux

View previous topic View next topic Go down

PC-DC server guide for Win7 and Linux

Post  kingbuzzo on Wed Oct 26, 2011 11:58 am

posting the guide here as DCS never seems to be online and I'm no longer a member there.

There have been several guides on setting up pc-dc server, much of which this guide is based on.
The difference here is that we aim to provide a setup process the OS that most of our users are running,
and in such a way that the less tech savvy can understand. While this process is by no means elegant,
is the best option for those who are not willing to pay for a Dialup ISP, or for the rare and expensive BBA.

The ideal setup for a pc-dc server, is a Linux box with a serial modem. Serial modems always work,
and Linux is very easy to tinker with which is important when doing something as irregular as a pc-dc server.
Of course, few people run Linux on their machine, and fewer even have a serial port on their machines let alone
own a bulky serial modem.

Thanks to VMware, we can emulate this ideal environment, right on your Windows machine (XP, Vista, 7)
and with a simple pci or usb modem. VMware will install Linux to a virtual machine that will then detect any
kind of modem as a serial device. Thus, providing us with the most reliable reliable environment to get some
online Dreamcast action. Of course, you could skip the virtual machine and do this all natively in Linux if you wish.
So long as you have a Linux supported modem.

and just to be safe....

Let's get started then shall we?

Table of Contents

    What you'll need...
    Step 1: Windows Setup
    Step 2: VMWARE Setup
    Step 3: Linux Setup
    Step 4: Dreamcast Setup
    Step 5: Running your PC-DC Server
    Step 6: (OPTIONAL) Building a Line Voltage Inducer
    Phantasy Star Online

What you'll need...

    A PC with Windows XP/Vista/7
    An ISO of Crunchbang Linux
    DSL or Cable internet connection through a router
    Dreamcast with Browser (ie. planet web)
    usb modem v9.2 with voice (highly suggest zoom 3095)
    Line voltage inducer (maybe!)

Step 1: Windows Setup

Plug in your modem and install whatever drivers are needed for it. This should be straight forward.
Once installed, Windows will assign the device to a COM port. We need to know which one this is so...

Right click on My Computer-> Properties -> Device Manager -> Modems
Right click your modem -> Properties -> Modem tab -> Find your Com port!

Step 2: VMWARE Setup

Next we'll install VMWARE, this handy app will let us install any operating system onto a "virtual machine" while you're running Windows.

you can find it here <a href="https://www.vmware.com/tryvmware/?p=player&amp;lp=1">https://www.vmware.com/tryvmware/?p=player&amp;lp=1</a></p>

The OS we are going to install is called CrunchBang Linux. It's a debian based distro using an incredibly lightweight desktop environment which will use less ram.
Those of you using netbooks with a native install of crunchbang will especially appreciate this OS.<a href="http://crunchbangLinux.org/"> http://crunchbangLinux.org</a></p>
This guide was tested with both Crunchbang 9 and 10.

Now in VMware, add a virtual machine,and select the ISO of crunchbang that you downloaded.
Before installed the OS, we need give the virtual machine access to our installed modem.

Customize Hardware -> Add -> Serial Port
Use Physical serial port -> select your Com port

See that Connect at power on is enabled under Device Status</p>
Next click on Network adapter, and change it to "Bridged" and see that Replicate physical network connection is DISABLED.
All set, let's instlall Crunchbang. This is pretty straightforward. If you have any problems here I suggest searching through their forums.

Step 3: Linux Setup

Once installed, hit Super+Spacebar (super = Windows key)

System -> Synaptic Package Manager -> enter your password

We will be installing mgetty, ppp, and gnome-ppp
You might have to hit reload and update repositories if they aren't showing up
now hit Super+t and type

sudo gnome-ppp

enter password.

hit setup -> Detect

this will tell us where the modem is in Linux. /dev/ttyS0 or something like that.

Back in our terminal (super+t), type..

sudo gedit /etc/ppp/options

delete everything there and paste in the following

#IP Addresses. Uncomment whichever one you wish to use
#router IP for internet browsing
#sylverant PSO server

The ms-dns line is the ip address of wherever you'd like to connect to. The IP address of your router will be used to browse the internet with planetweb or dreamkey, but for pso you will have to enter the IP of the ship you wish to connect to.

Now open a new page in gedit. And type in the local IP address of your computer, and then the IP address you wish to assign your Dreamcast. Then your netmask. The format will look like this.


To find out your local IP, go back to the terminal and type...

sudo ifconfig

It will probably be similar to the one posted. Paste in it, and choose the address you want for the DC. It can be any IP from your router's IP Pool that isn't being used.

So if your vmware local IP is, then you can assign to your Dreamcast so long as there isn't another device using that local IP.
Your netmask will be probably be the same but check in ifconfig to be sure.
Now, we are going to save this file as
Replace ttyS0 with whatever the location of your modem is.
next open
add the following line at the bottom

dream  *  dreamcast  *

now back in terminal, paste the following..

sudo useradd -G dialout,dip,users -c "Dreamcast user" -d /home/dream -g users -s /usr/sbin/pppd dream


sudo passwd dream
when prompted, enter
This will create a user that has access to the modem, the Dreamcast will connect to the pc as this user
Now in gedit, open up
and paste the following. Replace ttyS0 with location of your modem if it's different.

debug 4
speed 115200
port ttyS0
data-only y
issue-file /etc/issue.megetty

Step 4: Dreamcast Setup

Almost done, now lets fire up the DC with Planetweb 2.6 or dreamkey.

Hit start -> options -> Internet Connections

Real Name: Can be anything
User Login: dream
Password: dreamcast
Dial Up Number: 555
Backup number: (leave blank)


Next on to Dial Options
All that matters here is the following

Modem Init: AT&F0
Dial area code: Off
Blind Dial: On

The rest can be left blank
Next to the Proxy Settings Page
Use Proxy: No
Save your configuration

Step 5: Running your PC-DC Server

Now the fun part, let's test it out!

I usually have a terminal open with about 4 tabs open (right click+t). Two will be running commands to connect with, and the others to log what's happening...
So lets start mgetty. Remember to use the proper modem location.

sudo /sbin/mgetty -s 115200 -D /dev/ttyS0

in the next tab we will log mgetty

sudo tail -f /var/log/mgetty/mg.ttyS0.log
then any server messages in the next..

sudo tail -f /var/log/messages

you should now have one tab left open. This will answer the Dreamcast when it calls our server, and must be run within the Dreamcast's call window. It's pretty easy to tell, and there's a fairly large window of time to do it. In planetweb, it's when you see your number (555) dialed. In PSO, its when it says "dialing". When you see those messages, wait 5 seconds, and run this command.

sudo killall -USR1 mgetty

If all goes well, you're mgetty.ttyS0.log should look like this..

08/28 03:05:32 yS0  mgetty: interim release 1.1.36-Jun15
08/28 03:05:32 yS0  WARNING: parent process not init(pid=1), but pid=4343 (/bin/bash)
08/28 03:05:32 yS0  check for lockfiles
08/28 03:05:32 yS0  locking the line
08/28 03:05:32 yS0  lowering DTR to reset Modem
08/28 03:05:33 yS0  send: \dATQ0V1H0[0d]
08/28 03:05:33 yS0  waiting for ``OK'' ** found **
08/28 03:05:33 yS0  send: AT[0d]
08/28 03:05:33 yS0  waiting for ``OK'' ** found **
08/28 03:05:34 yS0  waiting...
08/28 03:12:59 yS0  wfr: waiting for ``RING''
08/28 03:12:59 yS0  cannot set controlling tty (ioctl): Operation not permitted
08/28 03:12:59 yS0  >>> this might be caused because you have run mgetty/vgetty
08/28 03:12:59 yS0  >>> from the command line.  Don't do that, use /etc/inittab!
08/28 03:12:59 yS0  send: ATA[0d]
08/28 03:12:59 yS0  waiting for ``CONNECT'' ** found **
08/28 03:13:13 yS0  send:
08/28 03:13:13 yS0  waiting for ``_'' ** found **
08/28 03:13:16 ##### data dev=ttyS0, pid=4601, caller='none', conn='57600', name='', cmd='/usr/sbin/pppd', user='/AutoPPP/'

and your /var/log/messages like this

desktop# pppd[4601]: pppd 2.4.5 started by root, uid 0
desktop# pppd[4601]: Using interface ppp0
desktop# pppd[4601]: Connect: ppp0 < --> /dev/ttyS0
desktop# pppd[4601]: pam_sm_authenticate: Called
desktop# pppd[4601]: pam_sm_authenticate: username = [dream]
desktop# pppd[4601]: Warning: Using default salt value (undefined in ~/.ecryptfsrc)
desktop# pppd[4601]: user dream logged in on tty ttyS0 intf ppp0
desktop# pppd[4601]: PAP peer authentication succeeded for dream
desktop# kernel: [  783.664240] PPP BSD Compression module registered
desktop# kernel: [  783.686698] PPP Deflate Compression module registered
desktop# pppd[4601]: found interface eth0 for proxy arp
desktop# pppd[4601]: local  IP address
desktop# pppd[4601]: remote IP address

Step 6: (OPTIONAL) Building a Line Voltage Inducer

There are 2 different revisions of the Dreamcast Modem. One requires that there be voltage present in the phone line, and one does not.
Each have a model number of 670-14140 with a revision letter A or B. Revision A does not require voltage, Revision B does. This means that you will get a NO CARRIER response when using a Revision B. If you still get a NO CARRIER response while using a Revision A modem, it could mean that the modem for your PC is requiring voltage.

With some very basic electronic parts, we can simulate this line voltage by building a Line Voltage Inducer.

Needed Parts and Digikey.com Part Numbers:[/b

    RJ11 Phone Cord (A1642R-07-ND)
    1.0UF Capacitor (P5174-ND)
    390 ohm Resistor (PPC390XCT-ND)
    Battery Snap (377-1549-ND)
    9v Battery (N145-ND)
    Perfboard (V2025-ND)

Of course you'll need a soldering iron, solder, wire strippers, and a steady hand. Please don't try this with tape!

[b]Step by Step Line Voltage Inducer Build:

Don't worry about the polarity of the Capacitor as it makes no difference in this circuit.

    Strip and tin each wire of RJ11 phone cord
    Solder to board
    Red wire soldered to a leg of the Resistor and of the Capacitor
    Black wire of Battery Snap soldered to opposite resistor leg
    Opposite leg of Capacitor soldered to Red wire of Battery Snap and Red Wire of Opposite RJ11 Phone Cord
    Connect each remaining RJ11 wires to their respective colours.
    Plug in a Battery and test it out!

Be careful, while the perfboard is very strong, RJ11 cords are not, and their wires can easily break from the perfboard without much pressure. You can strengthen their connection with a glue gun, or another non-conductive glue.

Phantasy Star Online

Phantasy Star Online is the most popular online game for Dreamcast. However, Sega's servers have been offline since 2007 in Japan/Europe, and since 2003 in North America.

Thankfully, the PSO community has reverse engineered server software and we can now continue playing PSO until the end of time. There are various servers available.

Simply setup the guide as indicated, make sure you ms-dns line is set to the ip of the PSO server you wish to connect to, and enjoy your new addiction!


If all goes well, you should be able to browse the web like it's 9/9/99, and that's a beautiful thing. Please post your working configuration (OS, Modem, RevA or RevB, etc) in our forums so we can make a compatibility list.

My own test was done using...

    Windows 7 Ultimate 64 biy
    ZOOM 3095 usb modem
    Crunchbang 9 and 10 32bit and 64bit
    Dreamcast modem Rev.A and Rev.B
    Line Voltage Inducer

This usb modem required the Line Voltage Inducer even with the Rev.A modem

Both Rev.A and Rev.B were able to browse the internet with Planet Web 2.6 and Dreamkey. However, only the Rev.A was able to connect reliably with PSO V2 PAL.

Please write your comments, ideas, and problems in our Forums.

Thank you for reading, and we hope this guide has been helpful in bringing you the Online Dreamcast experience!


Thanks to the following guides for providing the info needed to make this guide possible...

Bourke228 provided the first guide to using VMWARE

Ryochan provided the first guide for Ubuntu

DarkMoon provided the first step by step guide for Linux and NetBSD

Lordnikon and Dreamcast tm for win98 guide and testing

Last edited by kingbuzzo on Wed Oct 26, 2011 10:52 pm; edited 1 time in total


Number of posts : 7
Registration date : 2011-01-19

View user profile

Back to top Go down

Re: PC-DC server guide for Win7 and Linux

Post  Aleron Ives on Wed Oct 26, 2011 12:33 pm

You may want to update the PSO section, seeing as all discs can go online now using either BlueCrab's loader or CB codes. Wink

"Fear the HUnewearl."
Aleron Ives
Socially-Devoid Member
Socially-Devoid Member

Number of posts : 2099
Age : 29
Registration date : 2008-03-24

View user profile http://psopalace.funurl.com

Back to top Go down

Re: PC-DC server guide for Win7 and Linux

Post  kingbuzzo on Wed Oct 26, 2011 10:51 pm

good call. I'm not too familiar with all that so I'll just remove that section. Keep it as just a guide for a pc-dc server.


Number of posts : 7
Registration date : 2011-01-19

View user profile

Back to top Go down

Re: PC-DC server guide for Win7 and Linux

Post  Sponsored content

Sponsored content

Back to top Go down

View previous topic View next topic Back to top

- Similar topics

Permissions in this forum:
You cannot reply to topics in this forum