Homebrew emulate

matthewd997

Well-Known Member
OP
Member
Joined
Jan 27, 2008
Messages
135
Trophies
0
XP
92
Country
please don't take the p*ss outa me again just answer the question,

what do i need to know to start codin emulators for the NDS, i thought that if i make some of my own I'll learn more ND stop askin noobish questions,

so what do i need to know?
 

FAST6191

Techromancer
Editorial Team
Joined
Nov 21, 2005
Messages
36,798
Trophies
3
XP
28,321
Country
United Kingdom
What sinkhead says is true: emulators are one of the hardest things to code, especially on a low power system.
To do it well you will need to know both systems very well or at worst the processors they use. I.E. for a megadrive/genesis emulator for the DS these two documents would have to make complete sense (more or less: you could probably ignore some of the more interesting card reading stuff):
http://nocash.emubase.de/gbatek.htm
http://www.romhacking.net/?category=&P...itle=&desc=

While it is possible to write in a high level language any that are are usually slow, incomplete or have sections rewritten to speed them up: you will likely have to learn ASM for both systems.
 

JPH

Banned!
Banned
Joined
Jul 11, 2006
Messages
6,881
Trophies
0
Website
jphtemp.net
XP
1,171
Country
United States
matthewd997 said:
ok, but if i wanted to do a basic thing like what sinkhead said then what programming language would be best

I guess try to learn C (That's a link to the Wiki page).

You should go to your local book store and pick up some programming books...
 

hankchill

I Pwn n00bs.
Member
Joined
Nov 5, 2005
Messages
2,338
Trophies
0
Age
38
Location
Outer Space
Website
www.hankchill.com
XP
421
Country
Canada
pottageb said:
Can you make games for DS in visual basic?

Ben

No.

And for the original poster; You talk like you've never coded a thing in your life, but you need to understand, you can't just walk in here saying 'I want to code a DS emulator! What do I do?'. To write an emulator is very difficult, as the job of an emulator is the "emulate" a specific piece of hardware, which means understand very thoroughly exactly how that hardware works at a very low level.

As Sinkhead said, start with a simple version of Pong. If you've never coded before, even that may be too ambitious. Make a very simple text editor, or a simple address book, or something. You can't just start with writing an emulator
tongue.gif
 

techforumz

Well-Known Member
Member
Joined
Jan 28, 2008
Messages
183
Trophies
0
XP
85
Country
United States
I've looked at all the possible specimens for my own (failed) project, and the NES was by far the easiest. But, it's best if you start with a hello world, then a sprite, then controls, then sound, then a game, then an NES emulator, then an [you console's name here] emulator. I've programmed *some*, but not enough to count for anything.

EDIT: Almost forgot. Skip the MMCs for now, you'll go insane, trust me.

Oh, and about the 'very simple text editor' I think I wrote the simplest one on the face of the planet, in assembly. It compiled in nasm to exactly 8 bytes, LOL. I didn't even know it was possible for a file to be less then 4KB! Not that it was my original idea or anything, I'm sure it's been done a million times, but I've never SEEN anything that runs, be so small.
 

hankchill

I Pwn n00bs.
Member
Joined
Nov 5, 2005
Messages
2,338
Trophies
0
Age
38
Location
Outer Space
Website
www.hankchill.com
XP
421
Country
Canada
techforumz said:
Try doing a simple game like Pong.

And don't forget to do it 1 step at a time.

1) create the paddle
2) add movement left or right (or up or down), and be sure to set the boundaries on how far it can go
3) then create the ball. Don't bother adding any kind of physics to it, just have it bounce around (so when it hits a wall, instead of moving in that direction +1, it'll go -1)
4) When the ball hits your paddle, just make the acceleration value *-1

Voila. Very simple pong
smile.gif


Here, I did this for you:



be sure you click in the window above to be able to use the arrows. Note I also added in a basic acceleration function in there too.
 

techforumz

Well-Known Member
Member
Joined
Jan 28, 2008
Messages
183
Trophies
0
XP
85
Country
United States
Ok, I'm familiar to programming and very literate in the area of computer design, but for the life of me I CANNOT program in C. Is there any very very simple guide that is written for noobz like myself? I am familiar with BASIC and bash, if it helps any.

Oh, and I'm not trying to hijack this thread, but I'm sure that matthewd997 wouldn't mind a C lesson either.
 

TrolleyDave

Philosolosophising
Former Staff
Joined
Jan 1, 2007
Messages
7,761
Trophies
1
Age
52
Location
Wales, UK
XP
933
Country
techforumz said:
Ok, I'm familiar to programming and very literate in the area of computer design, but for the life of me I CANNOT program in C. Is there any very very simple guide that is written for noobz like myself? I am familiar with BASIC and bash, if it helps any.

Oh, and I'm not trying to hijack this thread, but I'm sure that matthewd997 wouldn't mind a C lesson either.

http://www.isotton.com/devel/docs/lcpp/
 

Regiiko

Well-Known Member
Member
Joined
Apr 19, 2007
Messages
332
Trophies
0
Location
Örebro
Website
Visit site
XP
274
Country
Do we really have to feed this mentally challenged troll with information that will potentially lead to his eventual demise because he can't find the compiler or whatever?
 

techforumz

Well-Known Member
Member
Joined
Jan 28, 2008
Messages
183
Trophies
0
XP
85
Country
United States
Success! I wrote my very first program in CPP. (No I didn't copy from the document.) Very simple command-line only, but it is does work:

QUOTE said:
// My first Program written in C++
// An age calculator and checker.

#include
#include
using namespace std;

int main() {
cout name;
// cout
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
    Psionic Roshambo @ Psionic Roshambo: I did use a bot for Diablo III though but no ban there lol