コード例 #1
0
 public static void SetHookBeforeWrite(this SystemBus sysbus, IBusPeripheral peripheral, string pythonScript, Range? subrange = null)
 {
     var runner = new BusHooksPythonEngine(sysbus, peripheral, null, pythonScript);
     sysbus.SetHookBeforeWrite<uint>(peripheral, runner.WriteHook, subrange);
     sysbus.SetHookBeforeWrite<ushort>(peripheral, (valueToWrite, offset) => (ushort)runner.WriteHook(valueToWrite, offset), subrange);
     sysbus.SetHookBeforeWrite<byte>(peripheral, (valueToWrite, offset) => (byte)runner.WriteHook(valueToWrite, offset), subrange);
 }
コード例 #2
0
 public static void SetHookAfterRead(this SystemBus sysbus, IBusPeripheral peripheral, string pythonScript, Range? subrange = null)
 {
     var runner = new BusHooksPythonEngine(sysbus, peripheral, pythonScript);
     sysbus.SetHookAfterRead<uint>(peripheral, runner.ReadHook, subrange);
     sysbus.SetHookAfterRead<ushort>(peripheral, (readValue, offset) => (ushort)runner.ReadHook(readValue, offset), subrange);
     sysbus.SetHookAfterRead<byte>(peripheral, (readValue, offset) => (byte)runner.ReadHook(readValue, offset), subrange);
 }