Porting Tutorial


mickb22

Still Fresh
Joined
Sep 10, 2008
Messages
57
Age
42
Website
Visit site
Can someone please give me a tutorial on how to port a N64 or DS game? im not sure if i can, i may have to have a disk. Can someone help me?
 
You can't port a game unless you have the source code. You will never get the source code for a Nintendo game (or any major commercial release, unless they open the source to the public, which is very very rare).

The only way to play an N64 or DS game on Pandora will be via emulation, in which case you won't need to do any work. It should be noted though, that good emulation of these systems has not been confirmed yet.
 
So can I in any way get source code from any games? I don't know much about programming so i would like to learn by porting.
 
From what I understand (I'm not a coder), porting is a good way to get into coding. Hopefully someone in here can link you to a good introductory tutorial. Obviously there are some fundamentals to be learned before you rip into any code.

As for finding something to port, you've just signed up to an open source community so that shouldn't be too hard. ;) I suggest you familiarise yourself with the GP32 and GP2X consoles (the two systems this site is built around, if you didn't already know), and have a browse through the GP2X file archive.
 
It's not really possible to make a tutorial on porting, as everything changes from game to game. also, i would disagree completely that porting is a good way to learn a langyage.
 
yeah i own a gp2x, although it got somehow bricked. I knew about this forum for about a year, but for some reason could not sign up. So I ignored it until my gp2x got bricked, and I heard about the pandora so i tried signing up again and it worked. I'm not sure if this is considered "bricked", but my gp2x cannot read SD cards. It wasn't hit or anything, so i really don't know.
 
Porting is a good way to get nice results, if you manage a successful port.

To learn your best bet is to think what you want to do (starting small) and try to code it from scratch.
When you get stuck, look things up, read books, search, whatever, and keep building to what you know.
Then try a more complicated project.

Depending on the project, porting can be easy/hard and may or may not teach you much at all about coding.
 
M&D Cheese said:
yeah i own a gp2x, although it got somehow bricked. I knew about this forum for about a year, but for some reason could not sign up. So I ignored it until my gp2x got bricked, and I heard about the pandora so i tried signing up again and it worked. I'm not sure if this is considered "bricked", but my gp2x cannot read SD cards. It wasn't hit or anything, so i really don't know.
as long as it can boot up, its not bricked. also, (dont take this the wrong way) your inability to sign up may have been due to age restrictions

Gruso said:
[edit] @ PV

Fair enough, just the impression I got from a few posts around the place.

I guess Hello World would be a good start.
Some of the prominent coders were talking about porting as getting started in a language, but I think that you should know at least one language and language theory before that would work well. i would think its mainly just helpful for getting acquainted with new hardware


also, you can't port console games, you need source code to port. the guy porting the dreamcast game is a special case because he originally made the dreamcast game, and therefore has the source.
 
Last edited by a moderator:
M&D Cheese said:
on what language, C? C++? or something like C#?
to get started in programming, reccomend learning python. easy, widely used in scripting in 3rd party applications, extendability, and it will be on pandora for sure.

http://www.python.org/

to learn, livewires at http://www.livewires.org.uk/python/home was intended for people 12-15 but it works for anyone new to programming.

if thats not your style, you can start on this:
http://hkn.eecs.berkeley.edu/~dyoo/python/...ntro/index.html
then move onto this: http://en.wikibooks.org/wiki/Non-Programme...rial_for_Python
 
Last edited by a moderator:
C and C++. That's what most of the software that matters to us is written in, anyway :p
 
Porting might be a great way to quickly advance from intermediate to advanced programmer, but a beginner looking at complex and complete code like that would be like throwing a baby in the ocean.
 
WizardStan said:
. . .a beginner looking at complex and complete code like that would be like throwing a baby in the ocean.
Yes, you wouldn't want to Tampa with it too much.

(Topical joke for Australians, apologies to those who don't get it, and to those who do).
 
Last edited by a moderator:
Porting is definitely NOT a good way to learn a language.

You need to be comfortable with the language and the compiler. Being used to wading through other people's terrible code helps a lot too. :p

Honestly even if it is the best written code ever you still need to know what is going on in the code whenever something doesn't work right and be able to fix it, then force the compiler to accept it, change the code to take into account environmental constraints...porting is most often an advanced topic.
 
especially when coming across advanced issues like graphics processing, stacks, and buffer which are all issues in porting to handhelds.

hey, vilmos, any plans to bring Pocket Dimension 1 and 2 to GP2X or pandora? I played it on a Palm emulator, it was great.
 
PoisonedV said:
M&D Cheese said:
on what language, C? C++? or something like C#?
to get started in programming, reccomend learning python. easy, widely used in scripting in 3rd party applications, extendability, and it will be on pandora for sure.

http://www.python.org/

to learn, livewires at http://www.livewires.org.uk/python/home was intended for people 12-15 but it works for anyone new to programming.

if thats not your style, you can start on this:
http://hkn.eecs.berkeley.edu/~dyoo/python/...ntro/index.html
then move onto this: http://en.wikibooks.org/wiki/Non-Programme...rial_for_Python


Thanks PoisonedV, Very useful links. I`ve always wanted to learn a programming language, And this seems like a good place to start. :)

Trooper
 
Last edited by a moderator:
Porting can help you get to grips with basic compile/build system and architectural issues and common gotchas. But as a beginner I really wouldn't start thinking about porting full games. To be honest it would be wise to srat off with smaller tools first, then move up.

Being Linux based there is a plethora of info about and source code available to play with. The first thing you'd want to do is setup a cross compiler targetting arm.
 
Back
Top