NESe (pronounced "Nessie") is a NES emulator based on the e6502 emulator, also written in C with a focus on speed and portability for use on embedded platforms, especially ARM.
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.

32 lines
563B

  1. #ifndef NES_CART_H_
  2. #define NES_CART_H_
  3. #include <stdint.h>
  4. #include <stdio.h>
  5. typedef enum {
  6. Cart_Flag_Vertical = 0b0,
  7. Cart_Flag_Horizontal = 0b1,
  8. } nes_Cart_Flags;
  9. typedef struct nes_cart_t {
  10. uint8_t* prg_rom;
  11. int prg_rom_banks;
  12. uint8_t* chr_rom;
  13. int chr_rom_banks;
  14. nes_Cart_Flags flags;
  15. struct nes_mapper_t* mapper;
  16. void* ines_mem;
  17. int ines_size;
  18. } nes_cart;
  19. int nes_cart_init_file(nes_cart*, FILE* file);
  20. int nes_cart_init_mem(nes_cart*, void*, int len);
  21. void nes_cart_done(nes_cart*);
  22. #endif // NES_CART_H_