MAMEWorld >> Programming
View all threads Index   Flat Mode Flat  

arcadegamenut
MAME Fan
Reged: 06/06/06
Posts: 39
Send PM
Writing My Own Emulator From Scratch
01/10/08 07:15 AM


Well what I'm about to embark on was something I mentioned that I would like to see "In Mame" in 2008.

But I got to thinking. Why rely on someone else to start it? I can start on my own. Surely there's enough information out there on the information super highway that can get me through a lot of things. Plus, I figure I can ask "dumb" questions here and get lots of good help that will assist in filling in those darn blanks. I'm also thinking of asking some questions which I may actually know (or think I know) the answer to or at least have a good idea, but still ask in order to hopefully generate some good conversation.

I will be using the (partly completed) guide on how to convert schematics to an emulator that I found on Dan Borris' website as a guide to help as well. That document is located here: http://www.atarihq.com/danb/files/zarzon.txt

So will it work? Will I stay motivated enough to finish it out? I don't know. But if it does, we'll have a nice solid blue-print for others to use.

So let's see if we can get started...

Every other "How do I write an emulator?" that I've ever seen usually has the statement of making sure your first step is to choose a game you like. At the same time, it is usually recommended to not choose something that is way too hard for a so-called "first-timer".

With that in mind, I've chosen Centipede. The only scary thing about this is I seem to remember the Pokey chip wasn't easy to figure out for sound...so maybe for now we'll just leave the sound out.

Okay, so I've chosen the game...now what? Well, I might want to start looking for documentation. The first and probably most obvious place to start would be the PCB. I don't have access to that, but a good ol' google search turned up a nice pile of schematic diagrams that should be most helpful.

Finding the processor is fairly simple. There's a chip on one of the diagrams that says 6502 on it. Some knowledge of CPUs would be nice for those who don't know here...or at least the ability to search around and figure it out. So now that I know that the game uses the 6502 processor, I can begin looking for documentation on this as well.

Now, if memory serves correctly, the 6502 can be of variable speeds. This is where my first stumbling block comes along. I understand that there is a clock circuit that has to determine this. Of course, following the zarzon schematics in Dan's example made sense, but I didn't see the same type of circuit on the Centipede's schematic. I mentioned before that I wasn't the best at schematics so maybe it is trivial. Are there a certain "set" of commonly used clock circuits that were used in arcade games? In other words, assuming we are not "cheating" by looking at someone else's emulator or we don't have a document that happens to give us that information, is there a sure-fire way to determine this?

Tutors now welcome to chime in!

ArcadeGamenut







Entire thread
Subject Posted by Posted on
* Writing My Own Emulator From Scratch arcadegamenut 01/10/08 07:15 AM
. * Centipede Documentation arcadegamenut  02/01/08 10:19 PM
. * Re: Centipede Documentation Phil Bennett  02/01/08 11:59 PM
. * Progress arcadegamenut  01/22/08 06:25 PM
. * Re: Progress arcadegamenut  01/30/08 12:40 AM
. * Re: Progress Lord Nightmare  01/30/08 01:43 AM
. * Re: Progress R. Belmont  01/30/08 02:34 AM
. * Re: Progress arcadegamenut  01/30/08 04:27 AM
. * Re: Progress Anonymous  02/04/08 02:28 AM
. * Baby Steps arcadegamenut  01/18/08 11:43 PM
. * Re: Baby Steps R. Belmont  01/20/08 12:33 AM
. * Re: Baby Steps Anonymous  01/20/08 12:38 AM
. * Re: Baby Steps R. Belmont  01/20/08 03:38 AM
. * Re: Baby Steps arcadegamenut  01/20/08 04:13 AM
. * Re: Baby Steps arcadegamenut  01/20/08 01:34 AM
. * Re: Baby Steps R. Belmont  01/20/08 03:37 AM
. * Re: Writing My Own Emulator From Scratch arcadegamenut  01/16/08 06:27 PM
. * Re: Writing My Own Emulator From Scratch arcadegamenut  01/11/08 07:09 PM
. * Re: Writing My Own Emulator From Scratch Anonymous  01/14/08 02:12 PM
. * Re: Writing My Own Emulator From Scratch arcadegamenut  01/14/08 09:20 PM
. * Re: Writing My Own Emulator From Scratch Anonymous  01/15/08 01:30 AM
. * Re: Writing My Own Emulator From Scratch R. Belmont  01/10/08 07:48 AM
. * Re: Writing My Own Emulator From Scratch arcadegamenut  01/10/08 06:26 PM
. * Re: Writing My Own Emulator From Scratch Stolistic  01/10/08 08:27 PM
. * Re: Writing My Own Emulator From Scratch arcadegamenut  01/11/08 12:10 AM
. * Re: Writing My Own Emulator From Scratch R. Belmont  01/11/08 01:10 AM

Extra information Permissions
Moderator:  Pi 
0 registered and 2 anonymous users are browsing this forum.
You cannot start new topics
You cannot reply to topics
HTML is enabled
UBBCode is enabled
Thread views: 5500