How do you port to a console

Whether you're a newbie or an experienced programmer, any questions, help, or just talk of any language will be welcomed here.

Moderator: Coders of Rage

deathsangel
Chaos Rift Newbie
Chaos Rift Newbie
Posts: 30
Joined: Sat Apr 18, 2009 8:17 pm

How do you port to a console

Post by deathsangel »

On the videos that Gyro Vorbis made he ported all his code to work with dream cast.

Could somebody explain the process that somebody would go through to develop for a console ex(psp, ps2, ps3, dreamcast, gba, wii, etc...)
Thanks to gyro vorbis for inspiring me to learn how to make a 2d graphics engine :)
User avatar
dandymcgee
ES Beta Backer
ES Beta Backer
Posts: 4709
Joined: Tue Apr 29, 2008 3:24 pm
Current Project: https://github.com/dbechrd/RicoTech
Favorite Gaming Platforms: NES, Sega Genesis, PS2, PC
Programming Language of Choice: C
Location: San Francisco
Contact:

Re: How do you port to a console

Post by dandymcgee »

deathsangel wrote:On the videos that Gyro Vorbis made he ported all his code to work with dream cast.

Could somebody explain the process that somebody would go through to develop for a console ex(psp, ps2, ps3, dreamcast, gba, wii, etc...)
It's entirely different depending on the console. Some of them can easily run homebrew software, some require certain hardware hacks of questionable legality, and others are pretty much impossible without buying the SDK.
Falco Girgis wrote:It is imperative that I can broadcast my narcissistic commit strings to the Twitter! Tweet Tweet, bitches! :twisted:
deathsangel
Chaos Rift Newbie
Chaos Rift Newbie
Posts: 30
Joined: Sat Apr 18, 2009 8:17 pm

Re: How do you port to a console

Post by deathsangel »

So how would you do it on the psp or wii whichever is easier. If both are hard then how do you do it on the gba. (I need to be able to use SDL or OpenGL)
Thanks to gyro vorbis for inspiring me to learn how to make a 2d graphics engine :)
User avatar
Falco Girgis
Elysian Shadows Team
Elysian Shadows Team
Posts: 10294
Joined: Thu May 20, 2004 2:04 pm
Current Project: Elysian Shadows
Favorite Gaming Platforms: Dreamcast, SNES, NES
Programming Language of Choice: C/++
Location: Studio Vorbis, AL
Contact:

Re: How do you port to a console

Post by Falco Girgis »

There is no way in fuck that you are going to get SDL or OpenGL on a GBA.

Look, you should really be knowledgeable about programming, hardware, and APIs before you even bother. There's very low level knowledge required to tinker with a console, and based on the fact that you are looking for OGL/SDL (OpenGL might not even be on PSP), I would guess that you can't be too experienced.

It's 99% teaching yourself.

And if I were to rank them in order of homebrew difficulty, I would say:

PSP > Wii > GBA

from easiest to hardest.
User avatar
JS Lemming
Game Developer
Game Developer
Posts: 2383
Joined: Fri May 21, 2004 4:09 pm
Location: C:\CON\CON

Re: How do you port to a console

Post by JS Lemming »

Dick around here if you're interested in developing on the wii. It's not that hard. There is an alright port of SDL and a kinda piss poor OpenGL thing. Explore.
Small girl at the harbor wrote:Look Brandon, that crab's got ham!
Martyj
Chaos Rift Newbie
Chaos Rift Newbie
Posts: 20
Joined: Thu Apr 23, 2009 11:23 am
Location: Ogden Utah
Contact:

Re: How do you port to a console

Post by Martyj »

I believe microsoft offers some thing like this for the 360.

http://www.microsoft.com/express/samples/GameCreators/
herby490
Chaos Rift Regular
Chaos Rift Regular
Posts: 122
Joined: Thu Feb 12, 2009 5:59 pm

Re: How do you port to a console

Post by herby490 »

Martyj wrote:I believe microsoft offers some thing like this for the 360.

http://www.microsoft.com/express/samples/GameCreators/
No that is XNA but you need to pay 99 dollars a year if you want it on the 360.
User avatar
Trask
ES Beta Backer
ES Beta Backer
Posts: 738
Joined: Wed Oct 29, 2008 8:17 pm
Current Project: Building a 2D Engine
Favorite Gaming Platforms: Sega Genesis and Xbox 360
Programming Language of Choice: C/C++
Location: Pittsburgh, PA
Contact:

Re: How do you port to a console

Post by Trask »

Another thing to consider if you're making a PC game(even in the industry) to try and keep everything as generalized as possible as you know Direct X won't help you when porting to a Dreamcast or Playstation or any console really(360's having their own special brew of a DX API). Understand your target platforms and try to keep the code as optimized for both as possible. On the PC you may be able to have a thousand sprites on the screen, but the Sega Genesis can't handle that, so limit it to what the lowest end console can handle, then from there just break down the code. You create a sprite handler for the PC code, you know you need a sprite handler for the target console, just keep track.
MarauderIIC wrote:You know those people that are like "CHECK IT OUT I just made Linux run on this piece of celery [or other random object]!!"? Yeah, that's Falco, but with ES.
Dear god, they actually ported ES to a piece of celery!
Martin Golding wrote: "Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live."
User avatar
davidthefat
Chaos Rift Maniac
Chaos Rift Maniac
Posts: 529
Joined: Mon Nov 10, 2008 3:51 pm
Current Project: Fully Autonomous Robot
Favorite Gaming Platforms: PS3
Programming Language of Choice: C++
Location: California
Contact:

Re: How do you port to a console

Post by davidthefat »

GyroVorbis wrote:There is no way in fuck that you are going to get SDL or OpenGL on a GBA.

Look, you should really be knowledgeable about programming, hardware, and APIs before you even bother. There's very low level knowledge required to tinker with a console, and based on the fact that you are looking for OGL/SDL (OpenGL might not even be on PSP), I would guess that you can't be too experienced.

It's 99% teaching yourself.

And if I were to rank them in order of homebrew difficulty, I would say:

PSP > Wii > GBA

from easiest to hardest.
PSP has its own SDK in C and it has lots of code that uses its kernal from what I have seen...
deathsangel
Chaos Rift Newbie
Chaos Rift Newbie
Posts: 30
Joined: Sat Apr 18, 2009 8:17 pm

Re: How do you port to a console

Post by deathsangel »

Do I need to have custom firmware in order to put code on my psp?
Thanks to gyro vorbis for inspiring me to learn how to make a 2d graphics engine :)
User avatar
rolland
Chaos Rift Regular
Chaos Rift Regular
Posts: 127
Joined: Fri Dec 21, 2007 2:27 pm
Current Project: Starting an Android app soon
Favorite Gaming Platforms: PS1, N64
Programming Language of Choice: C++
Location: Michigan, US

Re: How do you port to a console

Post by rolland »

I'll write a signature once I get some creativity and inspiration...
User avatar
davidthefat
Chaos Rift Maniac
Chaos Rift Maniac
Posts: 529
Joined: Mon Nov 10, 2008 3:51 pm
Current Project: Fully Autonomous Robot
Favorite Gaming Platforms: PS3
Programming Language of Choice: C++
Location: California
Contact:

Re: How do you port to a console

Post by davidthefat »

deathsangel wrote:Do I need to have custom firmware in order to put code on my psp?
Yes, or a version 1.5 phat psp... but thats highly unlikely cause CFW


http://www.psp-programming.com/tutorials/

better site... I can help if you need help
User avatar
eatcomics
ES Beta Backer
ES Beta Backer
Posts: 2528
Joined: Sat Mar 08, 2008 7:52 pm
Location: Illinois

Re: How do you port to a console

Post by eatcomics »

GyroVorbis wrote:There is no way in fuck that you are going to get SDL or OpenGL on a GBA.

Look, you should really be knowledgeable about programming, hardware, and APIs before you even bother. There's very low level knowledge required to tinker with a console, and based on the fact that you are looking for OGL/SDL (OpenGL might not even be on PSP), I would guess that you can't be too experienced.

It's 99% teaching yourself.

And if I were to rank them in order of homebrew difficulty, I would say:

PSP > Wii > GBA

from easiest to hardest.
Well the homebrew stuf for gba uses c++ libraries...
Image
User avatar
rolland
Chaos Rift Regular
Chaos Rift Regular
Posts: 127
Joined: Fri Dec 21, 2007 2:27 pm
Current Project: Starting an Android app soon
Favorite Gaming Platforms: PS1, N64
Programming Language of Choice: C++
Location: Michigan, US

Re: How do you port to a console

Post by rolland »

GyroVorbis wrote:And if I were to rank them in order of homebrew difficulty, I would say:
PSP > Wii > GBA
from easiest to hardest.
I would add NDS before Wii (in case anyone's curious)

NDS homebrew is amazingly simple once you get the hardware and software setup (my absolute favorite homebrew platform; more than computers)
Wii homebrew is also pretty easy after setup, and you probably already have the necessary hardware in your room (twilight princess and an sd card)
GBA homebrew seems a little more complicated, as the hardware is a little harder to find(well it was for me) and the libraries aren't as high-level
I don't have a PSP, so I can't say. You could give me yours...

On topic, porting code to a console could be extremely difficult, depending on a variety of factors such as:
1) complexity of code being ported (a hello world program versus Elysian Shadows)
2) the maturity of the toolchains, APIs, and communities of the console(or handheld) being ported to
3) the porter's skill (porting is not a good first or second project)
4) the hardware/hacks required to run the code on the console(or handheld) (many possibilities exist for NDS but good luck running unofficial code on a 360)
5) etc etc...
GyroVorbis wrote:There is no way in fuck that you are going to get SDL or OpenGL on a GBA.
Yeah, that's pretty definite. If you did, they would suck an amazing amount.
User avatar
MarauderIIC
Respected Programmer
Respected Programmer
Posts: 3406
Joined: Sat Jul 10, 2004 3:05 pm
Location: Maryland, USA

Re: How do you port to a console

Post by MarauderIIC »

[quote="rolland1) complexity of code being ported (a hello world program versus Elysian Shadows)[/quote]For instance, we essentially have a renderer wrapper that interfaces to two different rendering systems depending on which platform we're compiling for.
I realized the moment I fell into the fissure that the book would not be destroyed as I had planned.
Post Reply