It is currently Mon Oct 23, 2017 9:20 pm

All times are UTC - 7 hours





Post new topic Reply to topic  [ 9 posts ] 
Author Message
 Post subject: NES Emulator Information
PostPosted: Wed Oct 06, 2010 4:46 pm 
Offline
User avatar

Joined: Sat Apr 03, 2010 5:45 pm
Posts: 129
Location: South Carolina
I can't find a thing on the site. I might try my hand at an emulator just for the sake of trying. Do ya'll have anything that I can read as a starting off point?


Top
 Profile  
 
 Post subject:
PostPosted: Wed Oct 06, 2010 4:53 pm 
Offline

Joined: Sun Sep 19, 2004 11:12 pm
Posts: 19122
Location: NE Indiana, USA (NTSC)
An accurate NES emulator is a huge undertaking. What programs have you already made? Have you written a PC game in C or C++ before?

That said, http://wiki.nesdev.com/


Top
 Profile  
 
 Post subject:
PostPosted: Wed Oct 06, 2010 4:58 pm 
Offline
User avatar

Joined: Sat Apr 03, 2010 5:45 pm
Posts: 129
Location: South Carolina
I'm not so much aiming to write a fully accurate emulator. I'm just doing this to screw around and get a hopefully get a better understanding of the NES. I have a C++/Java background. I have not written any games simply for the fact that game development is one of those things I hate (ironically enough) but I do it for some fun when it comes to the NES.


Top
 Profile  
 
 Post subject:
PostPosted: Wed Oct 06, 2010 6:38 pm 
Offline
User avatar

Joined: Sat Feb 12, 2005 9:43 pm
Posts: 10068
Location: Rio de Janeiro - Brazil
67726e wrote:
I'm just doing this to screw around and get a hopefully get a better understanding of the NES.

And why do you want to get a better understanding of the NES?

Quote:
I have not written any games simply for the fact that game development is one of those things I hate (ironically enough) but I do it for some fun when it comes to the NES.

You hate it? Well, this is bad, because game programming on the NES is not much different from every other platform.

If your ultimate goal is to write games for the NES, and you are not good with game programming, I'm sorry to say that writing an emulator won't help you much. Yes, you will get a good understanding of the platform you'll be working with, but that's maybe only 10% of what makes a game. Very little of a game has to do with interacting with the hardware, most of it is game logic, so you have to be familiar with concepts such as collision detection, artificial intelligence, map compression, etc., which won't differ much from platform to platform.


Top
 Profile  
 
 Post subject:
PostPosted: Wed Oct 06, 2010 6:48 pm 
Offline
User avatar

Joined: Sat Apr 03, 2010 5:45 pm
Posts: 129
Location: South Carolina
I knew if I didn't extrapolate I would be questioned. I also probably should have worded that a bit better.

I do not like developing games because we are surrounded by these visual masterpieces. If I were to set out to make a shooter game, no matter how long I work at it, it will always come up short compared with what is out there. I really cannot top what exists. The games created are done so by studios full of artists and programmers working for years. I just really cannot compete and in the end, what I could come up with seems like a half-baked pile of crud.

When working with the NES, it is just for a sense of what things were like 'back in the day'. I find it interesting to program in 6502 assembly both for the challenge of coding in assembly and working with a processor that is like a slug compared to the cheetah's that are the processors of today.

I hope that clarifies what I meant by 'hating game development'.

My reason for wanting to get a better understanding of the NES is simple: I want to learn the system better. I know 6502 (to an extent) and I wish to further my knowledge about the system itself which should also help me in understanding programming for the system. It is merely a hobby. I know I will not find a job working as a 6502 software developer.

Hope you enjoyed my book ;)

By the way, I really must thank you guys for all the help you give on the forums. I remember when I didn't know ADC from a hole in the ground.


Top
 Profile  
 
 Post subject:
PostPosted: Thu Oct 07, 2010 7:31 am 
Offline

Joined: Sun Sep 19, 2004 11:12 pm
Posts: 19122
Location: NE Indiana, USA (NTSC)
67726e wrote:
I do not like developing games because we are surrounded by these visual masterpieces.

So you're running into the asset complexity problem. Try making one or two demo levels, doing your best with the programmer art. Then show it off on a suitable pixel art forum or ROM hacking forum and ask for volunteers to help reskin it.


Top
 Profile  
 
 Post subject:
PostPosted: Tue Nov 09, 2010 10:50 am 
Offline
User avatar

Joined: Mon Dec 22, 2008 10:45 pm
Posts: 311
Location: Argentina
67726e wrote:
If I were to set out to make a shooter game, no matter how long I work at it, it will always come up short compared with what is out there.

That is a valid reason to not do anything at all in life.
Why study physics if there will be always Einstein and Hawking? Why bother practicing any sport? painting? why even try to work and earn money if you're not gonna ever be as rich as Bill Gates?

Not to name that you probably won't make a better emulator than those already available? But you may make a different one, original, with something no one else has done and won't do, as I'm trying to do with mine :)

PS: actually our avatars look very similar


Last edited by Petruza on Tue Nov 09, 2010 1:36 pm, edited 1 time in total.

Top
 Profile  
 
 Post subject:
PostPosted: Tue Nov 09, 2010 1:35 pm 
Offline
User avatar

Joined: Wed Dec 06, 2006 8:18 pm
Posts: 2801
All you really need to start writing and come up with an emulator that is accurate enough to run many games is the ancient NESTech document telling you about the memory map and registers, and the 6502 document about the CPU. As it was said, if you want to be very precise and accurate to the hardware it will be a tough task. But say you want to come up wih an emulator matching atleast Nesticle in compatibility, that won't be very hard.

The best place to start would be to search this forum for others asking for help getting started with emulation. Generally it's recommended to build your 6502 CPU core first and try to get it as debugged as possible. Bugs in the CPU will make bugs occur in other places like graphics or just random crashes in general. When the CPU core is working well enough you can probably implement a few NES registers and a memory map to run a NES CPU test ROM and then from there if all goes well start working on NES specific hardware stuff such as the PPU.

Writing a NES emulator can be alot of fun. You get to know the system very well. After writing an emulator you should be quite informed about the NES and development is not so much of an issue of the platform as it is just your standard development issues you have on any platform.


Top
 Profile  
 
 Post subject:
PostPosted: Tue Nov 09, 2010 5:42 pm 
Offline
Formerly Fx3
User avatar

Joined: Fri Nov 12, 2004 4:59 pm
Posts: 3064
Location: Brazil
MottZilla wrote:
Writing a NES emulator can be alot of fun. You get to know the system very well. After writing an emulator you should be quite informed about the NES and development is not so much of an issue of the platform as it is just your standard development issues you have on any platform.


- Translating it: you need passion. ^_^;;


Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 9 posts ] 

All times are UTC - 7 hours


Who is online

Users browsing this forum: No registered users and 7 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB® Forum Software © phpBB Group