gnuboy is a portable Gameboy emulator originally created by Laguna and Gilgamesh, now maintained by clach04. See GNUBoyHistory for more details.
For building see BuildNotes.
Documentation is available in http://code.google.com/p/gnuboy/source/browse/#svn/trunk/docs the document most users will be interested in is the configuration doc, that talks about key remapping (amongst other things).
This project is currently focused on:
gnuboy is also known to build/run on the Pandora (ARM) and Caanoo (ARM).