-
Notifications
You must be signed in to change notification settings - Fork 22
Dreamcast: dc load ip
Ensure you have the packages 'wodim' and 'binutils-dev' or the compile will fail. You will also need to have a cd recorder ready and connected to the system with blank disc.
First clone the dc-load-ip GIT repository:
~$ cd /opt/toolchains
toolchains$ git clone git://github.com/thentenaar/dc-load-ip.git
# .. repository cloned to /toolchains/dc-load-ip/ here ..
###Prepare a path for the tool
By default /usr/local/dc/bin will
be included in the binary PATH via KOS environment. We can use this to create a place for dc-load-ip to go.
Create folders and set permissions:
toolchains$ sudo mkdir /usr/local/dc
toolchains$ sudo mkdir /usr/local/dc/bin
toolchains$ sudo chown myusername:myusername /usr/local/dc/bin
###Set up the network configuration for the DC
It's preferable to use the ARP version to make sure the CD can be used with the DC on any network configuration. To configure ARP mode edit the Makefile.cfg
file in the /opt/toolchains/dc-load-ip
folder, and change the network section to look like the one below instead of the default. Also update the installation folder with the /usr/local/dc/bin
path we created above.
# the ip of your dreamcast - set to 0.0.0.0 if you want to use arp on pc
DREAMCAST_IP = 000.000.000.000
#DREAMCAST_IP = 192.168.1.253
#DREAMCAST_IP = 10.0.0.32
# dir to install dc-tool in
#TOOLINSTALLDIR = /home/tim/dc
TOOLINSTALLDIR = /usr/local/dc/bin
###Build dc-load-ip
Change to dc-load-ip folder and build the project.
~$ cd /opt/toolchains/dc-load-ip
dc-load-ip$ make install
# ... compiling and installation goes here ...
###Burn the dc-load-ip disc
Make sure you have the 'wodim' packages installed on your system first. Insert a blank CD-R disc in your burner. If you have a tool that can burn DiscJuggler images, you can find a pre-built dc-load-ip disc here:
If you burn the pre-built disc image, you can skip to the "Configuring the ARP address for the DC" part of this guide.
###Finding and setting your burner
Run the following to determine your recorder information, this is an example of what is used on my system, your device(s) may differ:
wodim --devices
wodim: Overview of accessible drives (1 found) :
-------------------------------------------------------------------------
0 dev='/dev/scd0' rwrw-- : 'PIONEER' 'DVD-RW DVR-108'
-------------------------------------------------------------------------
Then take the dev='/dev/scd0'
part and update the top part of the /opt/toolchains/dc-load-ip/make-cd/Makefile
to match:
CDRECORD = cdrecord dev='/dev/scd0' speed=1
SCRAMBLE = ./scramble
DD = dd
# ... rest of makefile ...
The burning tool uses a tool called 'scramble' and will fail to burn without it, it's available in source form. The source is included here, copy/paste/download it from the following GIST into a file called /opt/toolchains/dc-load-ip/make-cd/scramble.c
~$ cd /opt/toolchains/dc-load-ip/make-cd
make-cd$ gcc scramble.c -o scramble
# ... scramble tool built silently ...
With a blank CD-R in the drive, run the following to burn the loader disc for DC:
~$ cd /opt/toolchains/dc-load-ip/make-cd
make-cd$ make
# ... disc burning goes here ...
In your ~/.bashrc
file or the /opt/KallistiOS/environ.sh
script you'll want to add the ARP entry for your DC. This lets configures the DC to be recognized by your system on the network without having a dynamic or static IP set explicitly on the DC.
To get started boot up your DC with the dc-load-ip disc and write down the 3rd line that appears (your MAC address), which will look similar to 00:d0:f1:02:4d:4a
. Keep that handy and add the following to your ~/.bashrc or environ.sh file. Substitute your MAC address obtained from the DC and your preferred IP address on the network for your DC here:
# <DC IP> <DC MAC>
arp -s 192.168.2.43 00:d0:f1:02:4d:4a
Your system should now be prepared to run/debug applications via the network adapter, you may need to open a new shell or run source ~/.bashrc
to re-initialize your environment and setup the ARP.