43 #define MAPPER_USE_MIRRORED_NAMETABLE \
44 asm(".global __four_screen\n __four_screen = 0\n")
52 #define MAPPER_USE_4_SCREEN_NAMETABLE \
53 asm(".global __four_screen\n __four_screen = 1\n")
61 __attribute__((leaf, callback(2))) void banked_call(
char bankId,
65 __attribute__((leaf, callback(2)))
void banked_call_8000(
char bankId,
69 __attribute__((leaf, callback(2)))
void banked_call_a000(
char bankId,
76 __attribute__((leaf))
char get_prg_bank(
char addr_hi);
81 __attribute__((leaf))
void set_prg_8000(
char bank_id);
89 __attribute__((leaf))
void set_prg_a000(
char bank_id);
97 __attribute__((leaf))
void set_chr_bank(
char reg,
char bank_id);
100 __attribute__((leaf))
void set_chr_bank_retry(
char bank,
char bank_id);
110 #define MIRROR_VERTICAL 0
111 #define MIRROR_HORIZONTAL 1
115 __attribute__((leaf))
void set_mirroring(
char mirroring);
118 #define PRG_MODE_1 0x40
123 #define CHR_A12_STRAIGHT 0
124 #define CHR_A12_INVERT 0x80
129 #define WRAM_OFF 0x40
131 #define WRAM_READ_ONLY 0xC0
136 __attribute__((leaf))
void set_wram_mode(
char mode);
140 __attribute__((leaf))
void disable_irq(
void);
144 __attribute__((leaf))
void set_irq_ptr(
const void *
address);
150 __attribute__((leaf))
char is_irq_done(
void);