commit 7fe0750c177a66ecd07caffc0b4f6295bb92c663
parent 8b7efeec7f9a528c0926bdc4722afcfe25b7661a
Author: neauoire <aliceffekt@gmail.com>
Date: Fri, 18 Jun 2021 20:19:32 -0700
Added return pointer position to debugger
Diffstat:
3 files changed, 8 insertions(+), 6 deletions(-)
diff --git a/src/devices/ppu.c b/src/devices/ppu.c
@@ -107,15 +107,17 @@ putchr(Ppu *p, Layer *layer, Uint16 x, Uint16 y, Uint8 *sprite, Uint8 color, Uin
/* output */
void
-inspect(Ppu *p, Uint8 *stack, Uint8 ptr)
+inspect(Ppu *p, Uint8 *stack, Uint8 wptr, Uint8 rptr)
{
Uint8 i, x, y, b;
for(i = 0; i < 0x20; ++i) { /* memory */
x = ((i % 8) * 3 + 1) * 8, y = (i / 8 + 1) * 8, b = stack[i];
- puticn(p, &p->bg, x, y, font[(b >> 4) & 0xf], 1 + (ptr == i) * 0x7, 0, 0);
- puticn(p, &p->bg, x + 8, y, font[b & 0xf], 1 + (ptr == i) * 0x7, 0, 0);
+ puticn(p, &p->bg, x, y, font[(b >> 4) & 0xf], 1 + (wptr == i) * 0x7, 0, 0);
+ puticn(p, &p->bg, x + 8, y, font[b & 0xf], 1 + (wptr == i) * 0x7, 0, 0);
}
- for(x = 0; x < 0x20; ++x) {
+ puticn(p, &p->bg, 0x8, y + 0x10, font[(rptr >> 4) & 0xf], 0x2, 0, 0);
+ puticn(p, &p->bg, 0x10, y + 0x10, font[rptr & 0xf], 0x2, 0, 0);
+ for(x = 0; x < 0x20; ++x) { /* guides */
putpixel(p, &p->bg, x, p->height / 2, 2);
putpixel(p, &p->bg, p->width - x, p->height / 2, 2);
putpixel(p, &p->bg, p->width / 2, p->height - x, 2);
diff --git a/src/devices/ppu.h b/src/devices/ppu.h
@@ -31,4 +31,4 @@ void putcolors(Ppu *p, Uint8 *addr);
void putpixel(Ppu *p, Layer *layer, Uint16 x, Uint16 y, Uint8 color);
void puticn(Ppu *p, Layer *layer, Uint16 x, Uint16 y, Uint8 *sprite, Uint8 color, Uint8 flipx, Uint8 flipy);
void putchr(Ppu *p, Layer *layer, Uint16 x, Uint16 y, Uint8 *sprite, Uint8 color, Uint8 flipx, Uint8 flipy);
-void inspect(Ppu *p, Uint8 *stack, Uint8 ptr);
+void inspect(Ppu *p, Uint8 *stack, Uint8 wptr, Uint8 rptr);
diff --git a/src/uxnemu.c b/src/uxnemu.c
@@ -59,7 +59,7 @@ void
redraw(Uxn *u)
{
if(debug)
- inspect(&ppu, u->wst.dat, u->wst.ptr);
+ inspect(&ppu, u->wst.dat, u->wst.ptr, u->rst.ptr);
SDL_UpdateTexture(bgTexture, &gRect, ppu.bg.pixels, ppu.width * sizeof(Uint32));
SDL_UpdateTexture(fgTexture, &gRect, ppu.fg.pixels, ppu.width * sizeof(Uint32));
SDL_RenderClear(gRenderer);