Implement a GDBSTUB Server #6
|
@ -1 +1 @@
|
||||||
Subproject commit 81ff227ea76d5b44a89e422e380e0fe15aec02aa
|
Subproject commit d7b8d7acb15ce3518480c59218bf2c0a17fa529f
|
|
@ -166,6 +166,7 @@ fn spinLoop(timer: *Timer, wake_time: u64) void {
|
||||||
pub const EmuThing = struct {
|
pub const EmuThing = struct {
|
||||||
const Self = @This();
|
const Self = @This();
|
||||||
const Interface = @import("gdbstub").Emulator;
|
const Interface = @import("gdbstub").Emulator;
|
||||||
|
const Allocator = std.mem.Allocator;
|
||||||
|
|
||||||
cpu: *Arm7tdmi,
|
cpu: *Arm7tdmi,
|
||||||
scheduler: *Scheduler,
|
scheduler: *Scheduler,
|
||||||
|
@ -174,8 +175,8 @@ pub const EmuThing = struct {
|
||||||
return .{ .cpu = cpu, .scheduler = scheduler };
|
return .{ .cpu = cpu, .scheduler = scheduler };
|
||||||
}
|
}
|
||||||
|
|
||||||
pub fn interface(self: *Self) Interface {
|
pub fn interface(self: *Self, allocator: Allocator) Interface {
|
||||||
return Interface.init(self);
|
return Interface.init(allocator, self);
|
||||||
}
|
}
|
||||||
|
|
||||||
pub fn read(self: *const Self, addr: u32) u8 {
|
pub fn read(self: *const Self, addr: u32) u8 {
|
||||||
|
|
|
@ -92,8 +92,9 @@ pub fn main() void {
|
||||||
const Server = @import("gdbstub").Server;
|
const Server = @import("gdbstub").Server;
|
||||||
const EmuThing = @import("core/emu.zig").EmuThing;
|
const EmuThing = @import("core/emu.zig").EmuThing;
|
||||||
|
|
||||||
var emu_thing = EmuThing.init(&cpu, &scheduler);
|
var wrapper = EmuThing.init(&cpu, &scheduler);
|
||||||
const emulator = emu_thing.interface();
|
var emulator = wrapper.interface(allocator);
|
||||||
|
defer emulator.deinit();
|
||||||
|
|
||||||
{
|
{
|
||||||
const frames_per_second: usize = 60;
|
const frames_per_second: usize = 60;
|
||||||
|
|
Loading…
Reference in New Issue