regs and we can step into!
This commit is contained in:
@@ -3,29 +3,40 @@
|
||||
#include <cstdint>
|
||||
#include <vector>
|
||||
#include <string>
|
||||
#include <variant>
|
||||
#include "msg.h"
|
||||
#include "frontend/target.h"
|
||||
|
||||
namespace dbgui::frontend {
|
||||
enum class WindowType : uint8_t {
|
||||
regs,
|
||||
source,
|
||||
memory,
|
||||
variables,
|
||||
stack,
|
||||
threads,
|
||||
disassembly,
|
||||
};
|
||||
namespace dbgui::frontend
|
||||
{
|
||||
struct Frontend;
|
||||
|
||||
struct RegWindow {
|
||||
enum class RegValType : uint8_t {
|
||||
flag,
|
||||
u64,
|
||||
u128,
|
||||
u256,
|
||||
u512,
|
||||
};
|
||||
enum class WindowType : uint8_t
|
||||
{
|
||||
regs,
|
||||
source,
|
||||
memory,
|
||||
variables,
|
||||
stack,
|
||||
threads,
|
||||
disassembly,
|
||||
};
|
||||
|
||||
struct Reg {
|
||||
std::string name;
|
||||
struct RegWindow
|
||||
{
|
||||
enum class RegValType : uint8_t
|
||||
{
|
||||
flag,
|
||||
u64,
|
||||
u128,
|
||||
u256,
|
||||
u512,
|
||||
};
|
||||
|
||||
// TODO: store last_drawn val and which regs we should draw
|
||||
/*struct Reg {
|
||||
uint16_t set_idx;
|
||||
uint16_t reg_idx;
|
||||
RegValType type;
|
||||
union {
|
||||
bool bval;
|
||||
@@ -36,12 +47,21 @@ namespace dbgui::frontend {
|
||||
};
|
||||
};
|
||||
|
||||
std::vector<Reg> regs;
|
||||
std::vector<Reg> regs;*/
|
||||
|
||||
void draw();
|
||||
};
|
||||
void draw(const Frontend &);
|
||||
|
||||
struct Window {
|
||||
WindowType type;
|
||||
};
|
||||
}
|
||||
std::string id;
|
||||
bool open;
|
||||
};
|
||||
|
||||
struct Window
|
||||
{
|
||||
WindowType type;
|
||||
std::variant<std::monostate, RegWindow> data;
|
||||
|
||||
void draw(const Frontend &);
|
||||
|
||||
static Window create_regs(size_t window_id);
|
||||
};
|
||||
} // namespace dbgui::frontend
|
||||
Reference in New Issue
Block a user