36 lines
783 B
C
36 lines
783 B
C
//
|
|
// Created by william on 10/01/24.
|
|
//
|
|
|
|
#ifndef NESEMULATOR_PROGRAM_VIEW_H
|
|
#define NESEMULATOR_PROGRAM_VIEW_H
|
|
|
|
#include <panel.h>
|
|
#include "../include/types.h"
|
|
#include "../cpu/decoding.h"
|
|
#include "cursor.h"
|
|
#include "window.h"
|
|
#include "components/linked_list.h"
|
|
|
|
#define PROGRAM_VIEW_HEIGHT 19
|
|
#define PROGRAM_VIEW_WIDTH 42
|
|
#define PROGRAM_VIEW_BASE_ADDR 0x0000
|
|
|
|
typedef struct debug_operand {
|
|
address addr;
|
|
byte op_code;
|
|
AddressingMode addr_mode;
|
|
word value;
|
|
} DebugOperand;
|
|
|
|
typedef struct program_view {
|
|
InteractWindow *window;
|
|
address *pc;
|
|
LinkedList operands;
|
|
LinkedListNode *first_operand_node;
|
|
LinkedListNode *last_operand_node;
|
|
} ProgramView;
|
|
|
|
void pv_init(InteractWindow *interact, int x, int y);
|
|
|
|
#endif //NESEMULATOR_PROGRAM_VIEW_H
|