public void SvcCall(object sender, AInstExceptEventArgs e) { ARegisters Registers = (ARegisters)sender; if (SvcFuncs.TryGetValue(e.Id, out SvcFunc Func)) { Logging.Trace($"{Func.Method.Name} called."); Func(Ns, Registers, Memory); Logging.Trace($"{Func.Method.Name} ended."); } else { throw new NotImplementedException(e.Id.ToString("x4")); } }
public void SvcCall(object sender, AInstExceptEventArgs e) { AThreadState ThreadState = (AThreadState)sender; if (SvcFuncs.TryGetValue(e.Id, out SvcFunc Func)) { Logging.Trace($"(Thread {ThreadState.ThreadId}) {Func.Method.Name} called."); Func(ThreadState); Logging.Trace($"(Thread {ThreadState.ThreadId}) {Func.Method.Name} ended."); } else { throw new NotImplementedException(e.Id.ToString("x4")); } }
private void BreakHandler(object sender, AInstExceptEventArgs e) { throw new GuestBrokeExecutionException(); }