Forum Index | FAQ | New User | Login | Search

Make a New PostPrevious ThreadView All ThreadsNext ThreadShow in Flat Mode*

SubjectRe: Emulator Writing Reply to this message
Posted byerikduijs
Posted on10/05/05 05:23 AM

> Hi,
> I'm new to this area of emulation and was hoping someone could clear some things
> up for me.
> How exactly do I go about writing an emulator, I understand I need to first
> emulate the chips of the system I will be emulating. I'm not gonna be stupid so
> have opted for something along the lines of the Genesis. All the chips for this
> have already been emulated to my knowledge so what exactly comes next?
> Advice on what steps I should follow to construct an emulator would be cool,
> also advice on what languages I should be looking to use. A reasonable time
> frame for the project would be good also and a level of difficulty. I'm looking
> to do it as a 3rd year project in University and have 9 months to complete a
> large project.
> Thanks

This might be a useful link:

I would suggest to look at sources from a few open-source emulators like MAME or Final Burn.

If you are going to re-use existing CPU emulators and sound emulators as components for your own project, Genesis could be a good choice for the final project if you like a challange. Maybe a NES or SMS emulator is a little bit more realistic though if it's your first emulation project.

I'd first start with something simpler though. After you finished a space invaders emulator, you'll have a general understanding of how emulators work and it will have you on your way on something like Genesis much easier. A space invaders emulator should take a small amount of time in comparison.

As for choice of language, C or C++ is probably the best bet if you're already familiar with them. Most emulator development is done with those languages, so you'll find it's easier to reuse existing CPU and sound chip emulators.

I myself use java, which saves me from some C related headaches, but introduces a few new ones too:
* if I want to reuse components which are not availble in java, I have to either port them or write them new from scratch
* in emulators, being able to go a little bit more low level can really help sometimes.

Entire Thread
Subject  Posted byPosted On
*Emulator Writing  caseh10/03/05 12:31 PM
.*Re: Emulator Writing  Jan_Klaassen10/07/05 05:56 PM
..Re: Emulator Writing  erikduijs10/05/05 05:23 AM
.*Re: Emulator Writing  Bart T.10/04/05 00:05 AM
..*Re: Emulator Writing  Hyde10/04/05 01:26 PM
...*Re: Emulator Writing  Bart T.10/04/05 10:39 PM
....*Re: Emulator Writing  caseh10/14/05 07:37 PM
.....*Re: Emulator Writing  codingsama05/25/06 10:16 AM
.....*Re: Emulator Writing  Stainless01/12/06 11:36 AM
.....*Re: Emulator Writing  Jan_Klaassen10/15/05 09:51 AM