From 6fcc8cd379bac9c40f72d4ff5ce79ac2f413a09e Mon Sep 17 00:00:00 2001 From: Yuvia Date: Tue, 9 Sep 2025 15:45:42 +0000 Subject: [PATCH] relocation of fetch*, push* and pop* --- cpu.c | 45 --------------------------------------------- mem.c | 46 ++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 46 insertions(+), 45 deletions(-) diff --git a/cpu.c b/cpu.c index 4938f27..7c4219f 100644 --- a/cpu.c +++ b/cpu.c @@ -8,51 +8,6 @@ u16int pc; int irq, nmi; -void -push8(u8int v) -{ - memwrite(0x100 | rS--, v); -} - -void -push16(u16int v) -{ - memwrite(0x100 | rS--, v >> 8); - memwrite(0x100 | rS--, v); -} - -u8int -pop8(void) -{ - return memread(0x100 | ++rS); -} - -u16int -pop16(void) -{ - u16int v; - - v = memread(0x100 | ++rS); - v |= memread(0x100 | ++rS) << 8; - return v; -} - -u8int -fetch8(void) -{ - return memread(pc++); -} - -u16int -fetch16(void) -{ - u16int r; - - r = memread(pc++); - r |= memread(pc++) << 8; - return r; -} - void nz(u8int v) { diff --git a/mem.c b/mem.c index 0106299..e1fcfa3 100644 --- a/mem.c +++ b/mem.c @@ -18,3 +18,49 @@ memwrite(u16int a, u8int v) if((void*)a < romptr) mem[a] = v; } + + +void +push8(u8int v) +{ + memwrite(0x100 | rS--, v); +} + +void +push16(u16int v) +{ + memwrite(0x100 | rS--, v >> 8); + memwrite(0x100 | rS--, v); +} + +u8int +pop8(void) +{ + return memread(0x100 | ++rS); +} + +u16int +pop16(void) +{ + u16int v; + + v = memread(0x100 | ++rS); + v |= memread(0x100 | ++rS) << 8; + return v; +} + +u8int +fetch8(void) +{ + return memread(pc++); +} + +u16int +fetch16(void) +{ + u16int r; + + r = memread(pc++); + r |= memread(pc++) << 8; + return r; +}