An emulator, assembler, and disassembler for the Sega Game Gear
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 

44 lines
963 B

  1. /* Copyright (C) 2014-2017 Ben Kurtovic <ben.kurtovic@gmail.com>
  2. Released under the terms of the MIT License. See LICENSE for details. */
  3. #pragma once
  4. #include <stdbool.h>
  5. #define ROMS_DIR "roms"
  6. #define CONTROLLER_DB_PATH "gamecontrollerdb.txt"
  7. #define CONFIG_OK 0
  8. #define CONFIG_EXIT_SUCCESS 1
  9. #define CONFIG_EXIT_FAILURE 2
  10. /*
  11. We need some sort of maximum scale - with a native resolution of 160 x 144,
  12. a scale factor of 1024 will let us go up to 163,840 x 147,456 pixels.
  13. No one has a screen this large.
  14. */
  15. #define SCALE_MAX 1024
  16. /* Structs */
  17. typedef struct {
  18. int debug;
  19. bool assemble;
  20. bool disassemble;
  21. bool fullscreen;
  22. bool no_saving;
  23. unsigned scale;
  24. char *rom_path;
  25. char *sav_path;
  26. char *bios_path;
  27. char *src_path;
  28. char *dst_path;
  29. bool overwrite;
  30. } Config;
  31. /* Functions */
  32. int config_create(Config**, int, char*[]);
  33. void config_destroy(Config*);
  34. void config_dump_args(const Config*);