Login | Register
My pages Projects Community openCollabNet

Project home

If you were registered and logged in, you could join this project.

Summary A library to help the developing of new emulators.
Categories libraries, design
License zlib/libpng license
Owner(s) andre_nho


Libemu is a library (and aditionally a set of tools) that help a developer to write a emulator.

The development of a emulator traditionally is a complex task that takes a lot of time. Since many tasks are the same for all emulators, this time could be reduced if a library was implemented that:

  • provided a ready-to-use debugger for the plataform the user is developing
  • provided a API that would simplify video output (tiles/sprites/raster/etc), RAM access, ROM loading, etc...
  • controled the speed of the emulator
  • made a emulated device (a microprocessor, for instance) independent from the emulated machine, so that it could be reused
  • among others

So this project seeks to solve these problems. The project tools will be:

  • libemu: the main library, that contains the API, and the users projects will be linked against it. It'll use GTK.
  • libemud: the same as libemu, but will also contain everything the user needs to develop the project (debuggers, etc...)
  • emucc: a emulator C compiler, that'll compile each one of the devices (CPU, video, etc) in a independent file that can be reused
  • emutouch: a tool that creates a source file ready-to-use with all the headers, so that the user can fill them in