summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorvin <git@vineetk.net>2024-07-21 14:48:29 -0400
committervin <git@vineetk.net>2024-07-21 14:48:29 -0400
commit362341eac334ada91de79360d98924c48061a657 (patch)
treeb01280efde14a228c92af9c773a4d90f456dd2a9
parent7d148924e2fee1a2692d2c49a01e6770b630f906 (diff)
rename struct Rom to struct rom
-rw-r--r--cpu.c3
-rw-r--r--ppu.h5
-rw-r--r--rom.c4
-rw-r--r--rom.h6
4 files changed, 8 insertions, 10 deletions
diff --git a/cpu.c b/cpu.c
index 621fe5b..509f7a8 100644
--- a/cpu.c
+++ b/cpu.c
@@ -36,7 +36,7 @@
36#define PULL() \ 36#define PULL() \
37 (peek(0x0100 + ++regs.sp)) 37 (peek(0x0100 + ++regs.sp))
38 38
39struct Rom rom = {0}; 39struct rom rom = {0};
40uint32_t cycles = 0; 40uint32_t cycles = 0;
41 41
42bool page_crossed = false; 42bool page_crossed = false;
@@ -1020,6 +1020,7 @@ main(int argc, char *argv[])
1020 1020
1021 parse_rom(buf, buflen, &rom); 1021 parse_rom(buf, buflen, &rom);
1022 free(buf); 1022 free(buf);
1023 ppu.rom = &rom;
1023 1024
1024 cpu_init(); 1025 cpu_init();
1025 1026
diff --git a/ppu.h b/ppu.h
index 1527b93..6bc8b5a 100644
--- a/ppu.h
+++ b/ppu.h
@@ -11,10 +11,7 @@ struct ppu {
11 uint8_t vram[2048]; 11 uint8_t vram[2048];
12 uint8_t palette[16*2]; 12 uint8_t palette[16*2];
13 uint16_t cycles, scanlines; 13 uint16_t cycles, scanlines;
14 /* copied from rom */ 14 struct rom *rom;
15 uint8_t *chr_rom;
16 size_t chr_rom_size;
17 enum screen_mirroring mirror;
18}; 15};
19extern struct ppu ppu; 16extern struct ppu ppu;
20 17
diff --git a/rom.c b/rom.c
index d432cc2..8360833 100644
--- a/rom.c
+++ b/rom.c
@@ -6,7 +6,7 @@
6#include "rom.h" 6#include "rom.h"
7 7
8void 8void
9parse_rom(const uint8_t *data, size_t data_len, struct Rom *rom) 9parse_rom(const uint8_t *data, size_t data_len, struct rom *rom)
10{ 10{
11 size_t prg_rom_offset = 16; 11 size_t prg_rom_offset = 16;
12 size_t chr_rom_offset = 0; 12 size_t chr_rom_offset = 0;
@@ -48,7 +48,7 @@ parse_rom(const uint8_t *data, size_t data_len, struct Rom *rom)
48} 48}
49 49
50void 50void
51free_rom(struct Rom *rom) 51free_rom(struct rom *rom)
52{ 52{
53 free(rom->prg_rom); 53 free(rom->prg_rom);
54 if (rom->chr_rom_size > 0) 54 if (rom->chr_rom_size > 0)
diff --git a/rom.h b/rom.h
index 703fabd..d27afdf 100644
--- a/rom.h
+++ b/rom.h
@@ -7,7 +7,7 @@ enum screen_mirroring {
7 M_FOUR, 7 M_FOUR,
8}; 8};
9 9
10struct Rom { 10struct rom {
11 char *prg_rom; 11 char *prg_rom;
12 char *chr_rom; 12 char *chr_rom;
13 size_t prg_rom_size; 13 size_t prg_rom_size;
@@ -16,7 +16,7 @@ struct Rom {
16 enum screen_mirroring mirror; 16 enum screen_mirroring mirror;
17}; 17};
18 18
19void parse_rom(const uint8_t *data, size_t data_len, struct Rom *rom); 19void parse_rom(const uint8_t *data, size_t data_len, struct rom *rom);
20void free_rom(struct Rom *rom); 20void free_rom(struct rom *rom);
21 21
22#endif /* ROM_H */ 22#endif /* ROM_H */