Implement a GDBSTUB Server #6

Merged
paoda merged 9 commits from gdbstub into main 2023-02-23 22:18:27 +00:00
3 changed files with 7 additions and 5 deletions
Showing only changes of commit 518b868249 - Show all commits

View File

@@ -166,6 +166,7 @@ fn spinLoop(timer: *Timer, wake_time: u64) void {
pub const EmuThing = struct {
const Self = @This();
const Interface = @import("gdbstub").Emulator;
const Allocator = std.mem.Allocator;
cpu: *Arm7tdmi,
scheduler: *Scheduler,
@@ -174,8 +175,8 @@ pub const EmuThing = struct {
return .{ .cpu = cpu, .scheduler = scheduler };
}
pub fn interface(self: *Self) Interface {
return Interface.init(self);
pub fn interface(self: *Self, allocator: Allocator) Interface {
return Interface.init(allocator, self);
}
pub fn read(self: *const Self, addr: u32) u8 {

View File

@@ -92,8 +92,9 @@ pub fn main() void {
const Server = @import("gdbstub").Server;
const EmuThing = @import("core/emu.zig").EmuThing;
var emu_thing = EmuThing.init(&cpu, &scheduler);
const emulator = emu_thing.interface();
var wrapper = EmuThing.init(&cpu, &scheduler);
var emulator = wrapper.interface(allocator);
defer emulator.deinit();
{
const frames_per_second: usize = 60;