It is currently Thu Oct 19, 2017 7:47 am

All times are UTC - 7 hours





Post new topic Reply to topic  [ 5 posts ] 
Author Message
 Post subject: Hello all
PostPosted: Tue Aug 16, 2005 11:12 pm 
Offline

Joined: Tue Aug 16, 2005 10:57 pm
Posts: 4
Hello all, I've been lurking around for a bit as I'm writing an NES emulator (don't worry, i don't plan on releasing it. there's enough bad NES emulators out there as it is :wink:. just a bit of a mental exercise).
Anywho, do any of you have any word of advice at the general creation of an nes emulator. ie. this is something I wasted my time on. This took a while but ended up being really cool. Kind of stuff that would go in a postmortem. Thanks in advance.


Top
 Profile  
 
 Post subject:
PostPosted: Wed Aug 17, 2005 7:42 am 
Offline

Joined: Sun Jul 10, 2005 10:40 am
Posts: 8
Be ready for rewrites. I had to rewirte my PPU code 4 times before I got it the way I wanted it.

Compile a list of docs from as many places as possible and keep them in one place. If you find something that is explained well in one doc make note of it.

I would keep everything in C/C++, compilers nowdays can optimize stuff to the point that you will not see a big diff in performance. Unless you are on a P2 600MHz

I would start with the 6502 core and then move to the PPU and then do some mappers. I managed to get my 6502 core working pretty quickly (less then two weekends). And then the PPU took a little longer and the mappers are taking a little longer. (I don't want to talk about the apu right now :twisted: )

Do not be afriad to ask question.


Top
 Profile  
 
 Post subject:
PostPosted: Wed Aug 17, 2005 9:00 am 
Offline
User avatar

Joined: Mon Sep 27, 2004 8:33 am
Posts: 3715
Location: Central Texas, USA
I wrote a simple (unreleased) NES emulator a while back and it was fun. I intentionally wrote it very simply so it only plays a few MMC1 games and doesn't even handle a fixed status display at the top (it scrolls with the main screen). It was a good learning experience and I still occasionally experiment with features. If you want new ideas, you could focus on specializing it for a particular game then adding extensions, like graphics with more colors.


Top
 Profile  
 
 Post subject:
PostPosted: Thu Aug 18, 2005 3:02 am 
Offline
User avatar

Joined: Tue Dec 21, 2004 8:35 pm
Posts: 600
Location: Argentina
My Advice:

- Write the CPU core first
- Start with basic roms (no mapper) and no scrolling games (popeye, king kong, etc)
- When you see a crash in the cpu, fix it
- Make a simple ppu engine (just to show the screen)
- Its not a bad idea to emulate input, so you can run nestress and check your cpu core.
- dont worry at first for IRQ, worry about NMI
- if you want to run it in WIN32. Use directdraw for output, GDI is slower
- Ask in this forum if you have a problem.

_________________
ANes


Top
 Profile  
 
 Post subject:
PostPosted: Sat Aug 20, 2005 7:26 pm 
Offline

Joined: Tue Aug 16, 2005 10:57 pm
Posts: 4
Thanks!!! I've already got frame work and most of the CPU core written. Enough to run a basic rom that I've coded and tested. I'm working on the basic PPU core now. Hooray!!


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

All times are UTC - 7 hours


Who is online

Users browsing this forum: No registered users and 6 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