DC-TOOL-IP Linux Tutorial

If you have any questions on programming, this is the place to ask them, whether you're a newbie or an experienced programmer. Discussion on programming in general is also welcome. We will help you with programming homework, but we will not do your work for you! Any porting requests must be made in Developmental Ideas.
Post Reply
User avatar
lerabot
Insane DCEmu
Insane DCEmu
Posts: 134
https://www.artistsworkshop.eu/meble-kuchenne-na-wymiar-warszawa-gdzie-zamowic/
Joined: Sun Nov 01, 2015 8:25 pm
Has thanked: 2 times
Been thanked: 19 times

DC-TOOL-IP Linux Tutorial

Post by lerabot »

This is a tutorial to get DC-TOOL-IP running on linux.
My setup has the dreamcast is connected directly to my computer, no router in between.

1 - Get DC-LOAD-IP 1.0.4 from this source - https://drive.google.com/open?id=1tT_zD ... 9y0nM5mnLd
This is selfboot .cdi image. I've burned it with ImgBurn without any problem.

2 - Boot DC-LOAD-IP in your dreamcast, with your BBA connected in order to get your BBA mac adress. The third line is your MAC adress. It should look something like 00:04:5d:2a:0f. Note that down we'll need it later.

3 - We'll use the arp fonction to get your computer to "give" an IP adress to your Dreamcast based on it's mac adress. In a terminal, enter:

Code: Select all

sudo arp -s [local IP adress] [MAC adress]
[local IP adress] = a valid IP adress that you want to assign to your dreamcast
[MAC adress] = you dreamcast's MAC adress, look at step 2.

the local IP adress should be in the same range as your network. in my setup, my ethernet port is set on port 192.168.5.100. the [local IP adress] is 192.168.5.99. if you don't know your network range, you can use ifconfig in a terminal to find out. I wont cover this here.

4 - At this point, you should be able to see if your dreamcast is connected, a simple ping command should do the job. Make sure you dreamcast is powered on.

Code: Select all

ping [local IP adress] <- replace this be the adress you assigned in step 3.
you should get a message like : 64 byte from [local IP adress] .... blabla ... time=xx ms

5 - Let's upload a file using DC-TOOL-IP now! I had trouble compiling 1.0.4, so I'm currently using a pre-compiled DC-TOOL-IP 1.0.3 which seems to work fine. I got it from this source (http://napalm-x.thegypsy.com/adk/dc/dcl ... index.html)

You can now use that tool to send your file to the DC. Make sure you dreamcast is running the DC-LOAD-IP DC we've used earlier. I've renamed the program to dc-tool-ip for simpler access.

Code: Select all

dc-tool-ip -t [local IP adress] -x /path/to/your/.bin/of/.elf/file
You can always run dc-tool-ip without any command to get some info on how to run it.

===================================================================

EXTRA STUFF:

*So, you need to know that the arp command used on step 3 will need to be entered everytime you relog/shut down the dreamcast. I've added it to my environ.sh script, but I'm sure there's other way for it to be more "automated"

*You can add a line to your host file in order to replace [local IP adress] to a more friendly name. I've done it using :

Code: Select all

sudo nano /etc/hosts
then adding the line :

Code: Select all

dreamcast [local IP adress]
you can now use the name dreamcast (or whatever you named it in front of the [local IP adress]) instead of the adress.
Last edited by lerabot on Fri May 10, 2019 2:38 pm, edited 3 times in total.
User avatar
lerabot
Insane DCEmu
Insane DCEmu
Posts: 134
Joined: Sun Nov 01, 2015 8:25 pm
Has thanked: 2 times
Been thanked: 19 times

Re: Freeing Texture problem?

Post by lerabot »

Wow, this look pretty messy on the forum but I'm sure there's a way to make this look ok on the wiki.
Feel free to edit the download sources if there's more reliable one. If someone has a precompiled DC-TOOL-IP 1.0.4, I'll gladly take it. :wink:

As for the arp command, if you have a better idea on how to make it permanent, I'm also looking for that.
nymus
DC Developer
DC Developer
Posts: 968
Joined: Tue Feb 11, 2003 4:12 pm
Location: In a Dream
Has thanked: 5 times
Been thanked: 6 times

Re: Freeing Texture problem?

Post by nymus »

I've never understood why the Dreamcast community decided to use cdi images. They've been consistently unwieldy for me over the years, not to mention the fact that only a handful of Windows-based software seems to burn them correctly.

Since you are writing a Unix/Linux guide, may I suggest you provide an iso image instead?
behold the mind
inspired by Dreamcast
User avatar
Quzar
Dream Coder
Dream Coder
Posts: 7497
Joined: Wed Jul 31, 2002 12:14 am
Location: Miami, FL
Has thanked: 4 times
Been thanked: 9 times
Contact:

Re: Freeing Texture problem?

Post by Quzar »

lerabot wrote:As for the arp command, if you have a better idea on how to make it permanent, I'm also looking for that.
I added it in where I source my dc environ script. Using bash, I do this via the .profile file:

Code: Select all

source /root/DCDev/KallistiOS/environ.sh
export IP_ADDR="192.168.1.99"
export DCTOOL_IP="/usr/local/dc/bin/dc-tool"
arp -s 192.168.1.99 00:d0:f1:02:a5:a6
I then use 'IP_ADDR' as an environ variable in my makefiles.
"When you post fewer lines of text than your signature, consider not posting at all." - A Wise Man
User avatar
bogglez
Moderator
Moderator
Posts: 578
Joined: Sun Apr 20, 2014 9:45 am
Has thanked: 0
Been thanked: 0

Re: DC-TOOL-IP Linux Tutorial

Post by bogglez »

Thank you for the tutorial. I'll leave this open for feedback for a while and eventually add it to the wiki. Please remind me in the future if I forget.
Wiki & tutorials: http://dcemulation.org/?title=Development
Wiki feedback: viewtopic.php?f=29&t=103940
My libgl playground (not for production): https://bitbucket.org/bogglez/libgl15
My lxdream fork (with small fixes): https://bitbucket.org/bogglez/lxdream
User avatar
lerabot
Insane DCEmu
Insane DCEmu
Posts: 134
Joined: Sun Nov 01, 2015 8:25 pm
Has thanked: 2 times
Been thanked: 19 times

Re: DC-TOOL-IP Linux Tutorial

Post by lerabot »

Thanks everyone. I'll work on this a bit, namely adding a selfbooting .iso file
|darc|
DCEmu Webmaster
DCEmu Webmaster
Posts: 16374
Joined: Wed Mar 14, 2001 6:00 pm
Location: New Orleans, LA
Has thanked: 104 times
Been thanked: 91 times
Contact:

Re: Freeing Texture problem?

Post by |darc| »

nymus wrote:I've never understood why the Dreamcast community decided to use cdi images. They've been consistently unwieldy for me over the years, not to mention the fact that only a handful of Windows-based software seems to burn them correctly.

Since you are writing a Unix/Linux guide, may I suggest you provide an iso image instead?
An ISO image is just an image of a single data track. The Dreamcast's disc format is a multisession disc. I don't know of any standard image type that can handle multisession images, just proprietary image formats like DiscJuggler, Nero, Alcohol120%, CloneCD, etc. Even the standard CUE format is an image of a single session; you can't do multisession with it. Some programs have added proprietary extensions to CUE to add multisession support, but it's not a standard at all.

I really can't think of any reason why someone would want to image a multisession CD outside of the Dreamcast, so that's hurt any chances of a standard being made.

You can burn CDI files on Linux by using cdirip to split the CDI file into individual audio/data tracks and then burn those tracks in two sessions manually with multiple cdrecord commands.
It's thinking...
User avatar
lerabot
Insane DCEmu
Insane DCEmu
Posts: 134
Joined: Sun Nov 01, 2015 8:25 pm
Has thanked: 2 times
Been thanked: 19 times

Re: DC-TOOL-IP Linux Tutorial

Post by lerabot »

I'm not a Dreamcast guru, but I usually prefer CDI files, even if it mean booting on windows to burn them. They're usually hassle-free and just work well.
User avatar
lerabot
Insane DCEmu
Insane DCEmu
Posts: 134
Joined: Sun Nov 01, 2015 8:25 pm
Has thanked: 2 times
Been thanked: 19 times

Re: DC-TOOL-IP Linux Tutorial

Post by lerabot »

I just edited the link to the DC-IP-LOAD and hosted in on my google drive.
User avatar
Protofall
DCEmu Freak
DCEmu Freak
Posts: 78
Joined: Sun Jan 14, 2018 8:03 pm
Location: Emu land
Has thanked: 21 times
Been thanked: 18 times
Contact:

Re: DC-TOOL-IP Linux Tutorial

Post by Protofall »

Note that there is a newer version of DC-LOAD/TOOL-IP in Sizious' fork (1.0.5) https://github.com/sizious/dcload-ip

Also if you wish to use the "-c" option (Access files on your computer from the Dreamcast to load in/out assets), you need to use "sudo" to give the program permission, also make sure to have the exact path to the executable, sudo won't work if it is in a environment path. If you have it in an environment path run "sudo $(which dc-tool-ip) ETC" and this should work fine.
Moving Day: A clone of Dr Mario with 8-player support <https://dcemulation.org/phpBB/viewtopic ... 4&t=105389>
A recreation of Minesweeper for the Dreamcast <viewtopic.php?f=34&t=104820>

Twitter <https://twitter.com/ProfessorToffal>
YouTube (Not much there, but there are a few things) <https://www.youtube.com/user/TrueMenfa>
Post Reply