Click here to Skip to main content
15,868,016 members
Please Sign up or sign in to vote.
0.00/5 (No votes)
See more:
I have seen people who make NES/SNES emulator from themselves from scratch! N64 emulators are quite harder but I see nothing that would make it impossible. How feasible is it for one to write a N64 emulator from scratch and can you give me any insight, recommendations, or details on this process? When I say "from scratch" I mean using no existing code or such and starting from absolutely nothing and developing an interpreter, dynarec, I/o, memory, GPU, sound, etc.
Posted
Updated 3-Sep-14 10:23am
v2
Comments
Bernhard Hiller 4-Sep-14 8:46am    
Why does your question remind me of
http://www.codeproject.com/Questions/731943/Is-it-theoretically-possible-for-one-person-to-dev
?
Is it that "one person" working "from scratch"?

1 solution

That depends very much on your skills. No doubt you will have to spend quite some time on research. You will not get anywhere without reliable documentation and then you will have to implement every detail in your emulator.

Some features of the hardware may need precise timing and emulating them may prove to be tricky. It may be possible that you will have to emulate the system down to the level of each clock cycle and the states of the processor and other components.

So yes, you can do it, but it will not be a job for a rainy weekend.
 
Share this answer
 
Comments
Sergey Alexandrovich Kryukov 3-Sep-14 18:11pm    
Pretty much agree. It depends on who is that person... :-)
My 5.
—SA
[no name] 3-Sep-14 21:16pm    
Thanks. I wrote an emulator for my old computer, The hardware consists only of standard parts, but I found myself reading at least every data sheet of every major part and the simple graphics chip needed very precise interrupt and DMA timing to work in emulation. The data was pushed to the graphics chip in an interrupt routine and even hacks in this routine had to work.

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900