Implement a GDBSTUB Server #6
Submodule lib/zba-gdbstub updated: 81ff227ea7...d7b8d7acb1
@@ -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;
|
||||||
|
|||||||
Reference in New Issue
Block a user