An emulator, assembler, and disassembler for the Sega Game Gear
Vous ne pouvez pas sélectionner plus de 25 sujets Les noms de sujets doivent commencer par une lettre ou un nombre, peuvent contenir des tirets ('-') et peuvent comporter jusqu'à 35 caractères.

README.md 2.2 KiB

il y a 10 ans
il y a 10 ans
il y a 10 ans
il y a 10 ans
il y a 10 ans
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. crater
  2. ======
  3. **crater** is an emulator for the [Sega Game Gear][game gear], written in C.
  4. [game gear]: https://en.wikipedia.org/wiki/Sega_Game_Gear
  5. Why?
  6. ----
  7. While the internet is full of emulators for retro game systems, writing one is
  8. nevertheless a fun learning project.
  9. crater is named after [31 Crateris][crateris], a star that was – for a short
  10. time in 1974 – misidentified as [a moon of Mercury][moon]. Mercury was Sega's
  11. codename for the Game Gear during development.
  12. [crateris]: http://www.astrostudio.org/xhip.php?hip=58587
  13. [moon]: https://en.wikipedia.org/wiki/Mercury%27s_moon
  14. Installing
  15. ----------
  16. Only OS X and Linux are tested. You'll need a decent compiler that supports C11
  17. (clang preferred) and SDL 2. Using Homebrew, you can `brew install sdl2`; using
  18. apt, you can `apt-get install libsdl2-dev`.
  19. Run `make` to create `./crater`. To build the development version with debug
  20. symbols (they can exist simultaneously), run `make DEBUG=1`, which creates
  21. `./crater-dev`.
  22. Usage
  23. -----
  24. Running `./crater` without arguments will display a list of ROM images located
  25. in the `roms/` directory, and then ask the user to pick one, or enter their own
  26. ROM path. You can provide a path directly with `./crater path/to/rom`.
  27. Add or symlink ROMs to `roms/` at your leisure. Note that they should end in
  28. `.gg` or `.bin`.
  29. Add `--fullscreen` (`-f`) to enable fullscreen mode, or `--scale <n>`
  30. (`-s <n>`) to scale the game screen by an integer factor.
  31. `./crater -h` gives (fairly basic) command-line usage, and `./crater -v` gives
  32. the current version.
  33. ### Advanced options
  34. crater supports several advanced features. Add `--debug` (`-g`) to display
  35. detailed information about emulation state while running, including register
  36. values and memory contents. You can also pause emulation to set breakpoints and
  37. change state.
  38. `--assemble <input> [<output>]` (`-a`) converts z80 assembly source code into a
  39. `.gg` binary that can be run by crater. `--disassemble <input> [<output>]`
  40. (`-d`) executes the opposite operation. If no output file is given, crater will
  41. use the name of the input file, with the extension replaced with `.gg` for `-a`
  42. and `.s` for `-d`. By default, this will never overwrite the original filename;
  43. pass `--overwrite` (`-r`) to let crater do so.