// // Created by william on 1/6/24. // #include #include #include #include "debugger.h" #include "memory_view.h" #include "dialog.h" #define CTRL_KEY_EXIT 3 #define CTRL_KEY_UP 65 #define CTRL_KEY_DOWN 66 #define CTRL_KEY_G 103 MemoryView view; void create_window() { setenv("TERMINFO", "/usr/share/terminfo", 1); setenv("TERM", "xterm", 1); initscr(); raw(); noecho(); // wborder(window, '|', '|', '-', '-', '+', '+', '+', '+'); } void destroy_window() { endwin(); } void some_func(char* user_input) { } void start_debugger(System *system) { create_window(); memory_view_init(&view, system->ram); update_panels(); doupdate(); int keycode; while ((keycode = getch()) != CTRL_KEY_EXIT) { if (keycode == CTRL_KEY_UP) { memory_view_scroll(&view, -1, system->ram); } if (keycode == CTRL_KEY_DOWN) { memory_view_scroll(&view, 1, system->ram); } if (keycode == CTRL_KEY_G) { Dialog dialog = dialog_create("Goto Address", &some_func); } update_panels(); doupdate(); } endwin(); }