Page 2 of 7

Re: Dreamcast Development

Posted: Wed Feb 24, 2010 12:01 pm
by Lord Pingas
Hey thanks, Falco! :)

I think I understand much better now.

I'll be sure to give you an update as to when I get a working Dreamcast application working.

One more question, and I hope I'm not wasting you time with these questions, but where did you learn KallistiOS?

I have searched but I couldn't find anything. :(

Re: Dreamcast Development

Posted: Wed Feb 24, 2010 12:04 pm
by Falco Girgis
You "learn" it after you install it and start digging through the directories. The source code of everything is there along with fairly well documented/obvious example code.

Re: Dreamcast Development

Posted: Wed Feb 24, 2010 12:08 pm
by Lord Pingas
Oh ok. :)

I will download it now for later use, then start learning it from looking at the source codes.

Also, I think I know what you was talking about in the Makefile hell part of Elysian Shadows Revolution episode 1. Just saying...

Thanks again.

Re: Dreamcast Development

Posted: Wed Feb 24, 2010 12:10 pm
by Trask
Oh lord, don't feel bad Lord Pingas... I remember when I had my assembly class back in the day which had my first brush with make files. I was so confused and pined for VS again ;D

Falco's right though, you have to get your hands dirty. Googling error messages can help, but if experienced devs like Falco are willing to get you started, by all means use them. When I was 18-20 and trying to get this stuff working, I could find a soul to help me. But GET YOUR HANDS DIRTY, just reading about this stuff really makes no sense until you get in there and it bites your hand a few times. Then you'll make it your bitch and have yourself a good time.

Re: Dreamcast Development

Posted: Wed Feb 24, 2010 12:11 pm
by Falco Girgis
Lord Pingas wrote:Oh ok. :)

I will download it now for later use, then start learning it from looking at the source codes.

Also, I think I know what you was talking about in the Makefile hell part of Elysian Shadows Revolution episode 1. Just saying...

Thanks again.
That was a bitch, because I was trying to make a single makefile compile a project for either a Dreamcast or PSP--both of which have completely different makefiles.

I wound up creating two separate makefiles with the same "libGyro.rules" that allowed me to simply specify a folder with DC source code, and a folder with PSP source code then invoke either "makefile.dc" for Dreamcast or "makefile.psp" for PSP.

Re: Dreamcast Development

Posted: Wed Feb 24, 2010 12:13 pm
by Lord Pingas
Trask wrote:Oh lord, don't feel bad Lord Pingas... I remember when I had my assembly class back in the day which had my first brush with make files. I was so confused and pined for VS again ;D

Falco's right though, you have to get your hands dirty. Googling error messages can help, but if experienced devs like Falco are willing to get you started, by all means use them. When I was 18-20 and trying to get this stuff working, I could find a soul to help me. But GET YOUR HANDS DIRTY, just reading about this stuff really makes no sense until you get in there and it bites your hand a few times. Then you'll make it your bitch and have yourself a good time.
Thanks. :)

Your words have inspired me and yes, I will get my hands dirty.

Thanks for all your help guys. :)

Re: Dreamcast Development

Posted: Wed Feb 24, 2010 12:16 pm
by Lord Pingas
GyroVorbis wrote:
Lord Pingas wrote:Oh ok. :)

I will download it now for later use, then start learning it from looking at the source codes.

Also, I think I know what you was talking about in the Makefile hell part of Elysian Shadows Revolution episode 1. Just saying...

Thanks again.
That was a bitch, because I was trying to make a single makefile compile a project for either a Dreamcast or PSP--both of which have completely different makefiles.

I wound up creating two separate makefiles with the same "libGyro.rules" that allowed me to simply specify a folder with DC source code, and a folder with PSP source code then invoke either "makefile.dc" for Dreamcast or "makefile.psp" for PSP.
Good thing you made libGyro to make things much easier. :bow:

Re: Dreamcast Development

Posted: Wed Feb 24, 2010 12:30 pm
by Trask
Gyro, this popped in my mind, perhaps you wouldn't mind sharing some details....

I remember an older video that you had somebody help you who wrote up something in ASM for a certain part of your engine, which I think you've since rewritten yourself, but I honestly don't remember why you needed it and its purpose may have changed since then.

What have you had to do with ASM with Dreamcast and would the casual DC developer need to do something similar as well?

Just curious in case any of us hits a stopping point where this may become relevant.

Re: Dreamcast Development

Posted: Wed Feb 24, 2010 12:45 pm
by Falco Girgis
No, a casual DC developer should be safely abstracted away from anything that low level (same with PSP).

The problem is that the KallistiOS toolkit is also homebrew. My friend (Tvspelsfreak) and I have stumbled upon some absolutely insane Dreamcast documentation that covers pretty much EVERYTHING about the hardware. I honestly don't even know if it's legal that we have these. Could be some secret proprietary Sega documents.

Well, there are things in there that haven't been figured out or implemented in the KallistiOS library. For the two of us to screw with this kind of stuff, we have to drop down to the inline assembly level. For anything that the casual developer would need, you will be programming in C/++ with an API that's pretty friendly and similar to SDL/OpenGL.

Re: Dreamcast Development

Posted: Wed Feb 24, 2010 12:51 pm
by Trask
Sweet, that's what I figured, but I wanted to be sure.

Re: Dreamcast Development

Posted: Wed Feb 24, 2010 12:52 pm
by Falco Girgis
And honestly, for whatever you guys are going to be doing, you aren't going to be doing anything different on the Dreamcast. I'm pretty damn amazed how far that 200mhz processor goes. Consider it a slightly slower PC, and you're good to go. If you even have to do any optimization of your code, I would be surprised. As long as you're using hardware acceleration and rendering things with the GPU, rather than CPU, the Dreamcast has some pretty damn kickass performance.

The only real thing you have to worry about is 8MB of VRAM and 16MB of RAM. Other than that, you're fine pretending that you're coding on a PC.

Re: Dreamcast Development

Posted: Wed Feb 24, 2010 5:03 pm
by Lord Pingas
Do you need Unix based command lines like Cygwin to develop on other consoles as well as the Dreamcast?

Re: Dreamcast Development

Posted: Wed Feb 24, 2010 5:11 pm
by Falco Girgis
Lord Pingas wrote:Do you need Unix based command lines like Cygwin to develop on other consoles as well as the Dreamcast?
Yeah. Pretty much every homebrew compiler is based on GCC and GNU Tools.

Re: Dreamcast Development

Posted: Wed Feb 24, 2010 5:17 pm
by Lord Pingas
Oh ok. :)

Sorry, got a lot of questions by I'll keep it to the minimum of 300 an hour. :mrgreen:

Re: Dreamcast Development

Posted: Wed Feb 24, 2010 5:26 pm
by MrDeathNote
Lord Pingas wrote:Do you need Unix based command lines like Cygwin to develop on other consoles as well as the Dreamcast?
It's the same with the psp, i've just recently started developing for it (by recently i mean a few days ago). So far ive done a hello world and rendered a sprite, but i have plans for the psp in the near future.....