Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I work as a iPhone app developer now, so I know a bit of c, c++ and objective c. Also have fiddled with Java and many other. All of them have been just high level application/games development.

My final goal is to make a handheld game console. More like a home made NES/SNES handheld console or even an Atari. I have found out about RaspberryPI and Arduino. But I need more information about how to approach this.

  1. How Do I learn to pick the best board/cpu/controller/GPU/LCD screen/LCD controller etc?
  2. Will learning to make a NES emulator first help me understand this field? If so are there any tutorials?
share|improve this question

closed as off-topic by Snowman, GlenH7, MichaelT, gnat, durron597 Aug 22 '15 at 15:49

This question appears to be off-topic. The users who voted to close gave this specific reason:

  • "Questions asking us to recommend a tool, library or favorite off-site resource are off-topic for Programmers as they tend to attract opinionated answers and spam. Instead, describe the problem and what has been done so far to solve it." – Snowman, GlenH7, Community, durron597
If this question can be reworded to fit the rules in the help center, please edit the question.

up vote 10 down vote accepted

My suggestion is buy one of the arduino kits related to this goal. A few examples:

Fuzebox

Fuzebox

Hackvision

Hackvision

Video Game Shield Kit

Video Game Shield Kit

How Do I learn to pick the best board/cpu/controller/GPU/LCD screen/LCD controller etc?

Firstly you need know in depth a real machine. The arduinos are a very good option for this because are 100% open source and include documentation. Don't buy a RaspberryPI or others ARM boards because the most use closed drivers for the GPU and other pieces. If you finally decide buy a traditional ARM board (not a arduino with ARM processor), search a board with the GPU "mali".

Will learning to make a NES emulator first help me understand this field? If so are there any tutorials?

No. You will only learn a lot of assembler code :) . Probably, enhance your C skills are a better idea.

Don't be too ambitious at the beginning or your project will die. Step by step. My advice is:

  • Buy a Kit.
  • Read all the documentation.
  • Program a simple game.
  • Program a complex game.
  • Enhance your game internally. Try different ideas for enhance the performance.
  • Now you know well the platform.
  • Read the code of your system. Kernel and low level libs.
  • I'm sure that your system has bugs. Search and fix these.
  • The code of your system is inefficient. Enhance the code.
  • At this moment you know all your system with a very big depth.
  • Now you can create anything. Congratulations :)
share|improve this answer
1  
+1 For the amazing checklist.. – qdot Jun 16 '12 at 14:09

Not the answer you're looking for? Browse other questions tagged or ask your own question.