• Login
  • Register
  • Dolphin Forums
  • Home
  • FAQ
  • Download
  • Wiki
  • Code


Dolphin, the GameCube and Wii emulator - Forums › Dolphin Emulator Discussion and Support › Development Discussion v
« Previous 1 ... 17 18 19 20 21 ... 115 Next »

Emulator development - where to start?
View New Posts | View Today's Posts

Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Thread Modes
Emulator development - where to start?
03-10-2018, 05:12 PM
#1
Sir_Steadman
Unregistered
 
I've been using Dolphin and other emulators for a long time now and as a junior software developer I'd really like to get into emulation development. However, I have got no idea where to start Confused I wrote a very basic CHIP-8 emulator in Python a while back, but that is a long way off from even some of the oldest consoles. My hope is that some of the clever people here will be willing to point me in the right direction, so that (eventually) I can contribute back to a project such as Dolphin.

Thanks a lot! Smile
Reply
03-11-2018, 12:29 AM
#2
JMC47 Offline
Content Producer
*******
Content Creators (Moderators)
Posts: 6,532
Threads: 29
Joined: Feb 2013
Honestly, I've seen a lot of people start by joining another project. Like, if you can read Dolphin's code and understand how it works, it's easier to find tasks on an emulator that is already working vs writing one from the ground up. If you want another personal project, I see a lot of people go from CHIP-8 to GameBoy successfully.
Find
Reply
03-11-2018, 12:49 AM
#3
Shonumi Offline
Linux User/Tester
**********
Administrators
Posts: 6,479
Threads: 54
Joined: Dec 2011
The Game Boy is simple enough because you can get away with a lot of inaccuracies and still see results. It's good for beginners since it teaches a number of fundamentals about game console emulation. It's a good starting point. The Game Gear/Sega Master System is also nice; somewhat simpler in other regards (like handling ROM reads).

I wouldn't recommend NES at first because there are plenty of tricky timing situations you need to get correct for many games to work, and plenty of edge cases that need to be addressed (Sprite 0 test hit or whatever it's called really messes up beginners). As your 2nd or 3rd emu project, you shouldn't have a lot of trouble with the NES. It's extremely well documented.

Some GB and SMS emu tutorials -> http://www.codeslinger.co.uk

As for getting involved with Dolphin specifically, you can do that without prior experience on other emulators, or without having made your own. Find an area you like, or a feature you want improved, then have at it. Choose something that really interests you, then study the problem carefully. If you want low-level work, there are always a bunch of feature requests that can be implemented, or you can clean up code, or try to find small optimizations to code structure.

Dolphin has a dev IRC channel (#dolphin-dev on Freenode.net), so ask around as much as you need to. Additionally, take a peek at Dolphin's GitHub and check out commits and pull requests just to see what's going on with the project at the moment. It may give you some inspiration or insight.
Website Find
Reply
03-11-2018, 04:57 PM
#4
Sir_Steadman
Unregistered
 
(03-11-2018, 12:29 AM)JMC47 Wrote: Honestly, I've seen a lot of people start by joining another project.  Like, if you can read Dolphin's code and understand how it works, it's easier to find tasks on an emulator that is already working vs writing one from the ground up.  If you want another personal project, I see a lot of people go from CHIP-8 to GameBoy successfully.

Thanks a lot for the advice! I think finding tasks on an existing emulator (such as Dolphin) will give help to get a better idea of how things work. Then a personal GameBoy project might not seem so daunting!
Reply
03-11-2018, 05:00 PM
#5
Sir_Steadman
Unregistered
 
(03-11-2018, 12:49 AM)Shonumi Wrote: The Game Boy is simple enough because you can get away with a lot of inaccuracies and still see results. It's good for beginners since it teaches a number of fundamentals about game console emulation. It's a good starting point. The Game Gear/Sega Master System is also nice; somewhat simpler in other regards (like handling ROM reads).

I wouldn't recommend NES at first because there are plenty of tricky timing situations you need to get correct for many games to work, and plenty of edge cases that need to be addressed (Sprite 0 test hit or whatever it's called really messes up beginners). As your 2nd or 3rd emu project, you shouldn't have a lot of trouble with the NES. It's extremely well documented.

Some GB and SMS emu tutorials -> http://www.codeslinger.co.uk

As for getting involved with Dolphin specifically, you can do that without prior experience on other emulators, or without having made your own. Find an area you like, or a feature you want improved, then have at it. Choose something that really interests you, then study the problem carefully. If you want low-level work, there are always a bunch of feature requests that can be implemented, or you can clean up code, or try to find small optimizations to code structure.

Dolphin has a dev IRC channel (#dolphin-dev on Freenode.net), so ask around as much as you need to. Additionally, take a peek at Dolphin's GitHub and check out commits and pull requests just to see what's going on with the project at the moment. It may give you some inspiration or insight.

Thank you very much for the great advice  Big Grin I'll definitely take a look at the GameBoy, those tutorials look great.

It sounds like just diving in to Dolphin and finding something to work on would be a great idea. Thank's for the link to the IRC, I'll check it out!
Reply
« Next Oldest | Next Newest »


  • View a Printable Version
  • Subscribe to this thread
Forum Jump:


Users browsing this thread: 1 Guest(s)



Powered By MyBB | Theme by Fragma

Linear Mode
Threaded Mode