From 6dd73982c514445c4d2a4787c37666d0812a3dad Mon Sep 17 00:00:00 2001 From: Peter Fors Date: Wed, 4 Jun 2025 15:26:11 +0200 Subject: added scaffolding for apu --- mknes.h | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) (limited to 'mknes.h') diff --git a/mknes.h b/mknes.h index 8d12e95..0ae37f4 100644 --- a/mknes.h +++ b/mknes.h @@ -68,11 +68,22 @@ struct ppu_state { struct apu_state { uint32_t frame_cycle; + uint8_t mode; uint8_t irq_inhibit; uint8_t irq_pending; + + uint8_t dmc_irq_enable; + uint8_t dmc_loop_flag; uint8_t dmc_dma_enabled; - uint32_t dmc_sample_timer; + + uint8_t dmc_freq_index; + uint8_t dmc_sample_addr; + uint8_t dmc_sample_len; + + uint16_t dmc_current_addr; + uint16_t dmc_bytes_remaining; + uint16_t dmc_sample_timer; } __attribute__((packed, aligned(64))); struct cpu_state { @@ -110,7 +121,7 @@ struct nes_state { union mapper_data mapper_data; struct cpu_state cpu; struct ines_state ines; - // struct apu_state apu; + struct apu_state apu; uint8_t ram[RAM_SIZE] __attribute__((aligned(4096))); uint8_t ciram[CIRAM_SIZE] __attribute__((aligned(4096))); -- cgit v1.2.3