nesemu/debugger/memory_view.h

41 lines
944 B
C

//
// Created by william on 1/6/24.
//
#ifndef NESEMULATOR_MEMORY_VIEW_H
#define NESEMULATOR_MEMORY_VIEW_H
#include <panel.h>
#include "../include/types.h"
#define MEMORY_VIEW_HEIGHT 19
#define MEMORY_VIEW_WIDTH 56
#define MEMORY_VIEW_LINE_COUNT 0xf
#define MEMORY_VIEW_LINE_BYTE_COUNT 0xf
#define MEMORY_VIEW_BYTE_COUNT 0xff
#define MEMORY_VIEW_DIRECTION_UP 1
#define MEMORY_VIEW_DIRECTION_DOWN (-1)
typedef struct memory_view {
PANEL *panel;
byte *ram;
address base_address;
char cursor_x;
char cursor_y;
} MemoryView;
void memory_view_init(MemoryView *view, ram ram);
void memory_view_print(MemoryView *view);
void memory_view_goto(MemoryView *view, address target);
void memory_view_scroll(MemoryView *view, char direction);
void memory_view_move_cursor(MemoryView *view, char horizontal, char vertical);
void memory_view_set_cursor_addr(MemoryView *view, address target);
#endif //NESEMULATOR_MEMORY_VIEW_H