public Breakpoints(USBGecko UGecko, BPList UBPOut, MainForm UMainForm, Disassembly UDissAss, //RichTextBox UDissBox, TextBox UClassicBox, ListBox conditionList, ExceptionHandler UExcHandler) TextBox UDissBox, TextBox UClassicBox, ListBox conditionList, ExceptionHandler UExcHandler) { exceptionHandling = UExcHandler; gecko = UGecko; bpOutput = UBPOut; mainForm = UMainForm; listSet = false; disassembler = UDissAss; dissBox = UDissBox; classicBox = UClassicBox; stepOverPossible = false; changableRegs = new UInt32[40]; regDialog = new RegisterDialog(); PConditions = new BreakpointConditions(conditionList); for (int i = 0; i < 40; i++) { bpOutput.shortRegTextBox[i].Click += clickReg; } ShowFloatsInHex = false; }
public void SetSRR0(uint address) { if (contextAddress == 0) { return; } if (ValidMemory.rangeCheck(address) != AddressType.Ex) { return; } changableRegs[BPList.regTextToID("SRR0")] = address; SendRegisters(); }
public void SetSRR0(UInt32 address) { if (gecko.status() != WiiStatus.Breakpoint) { return; } if (ValidMemory.rangeCheck(address) != AddressType.UncachedMem1) { return; } changableRegs[BPList.regTextToID("SRR0")] = address; SendRegisters(); }
public static BreakpointCondition FromString(String cond) { if (cond == String.Empty) { return(null); } String[] sep = cond.Split(new char[] { ' ', ':' }); int register = Convert.ToInt32(BPList.regTextToID(sep[2])); if (sep[2] == "VoA") { register = BPList.longRegNames.Length; } uint value; if (!(GlobalFunctions.tryToHex(sep[4], out value))) { return(null); } uint group = Convert.ToUInt32(sep[0]); BreakpointComparison comp; switch (sep[3]) { case "==": comp = BreakpointComparison.Equal; break; case "!=": comp = BreakpointComparison.NotEqual; break; case ">": comp = BreakpointComparison.Greater; break; case ">=": comp = BreakpointComparison.GreaterEqual; break; case "<": comp = BreakpointComparison.Lower; break; case "<=": comp = BreakpointComparison.LowerEqual; break; default: comp = BreakpointComparison.Equal; break; } return(new BreakpointCondition(register, value, comp, group)); }
public Breakpoints(TCPGecko UGecko, BPList UBPOut, MainForm UMainForm, Disassembly UDissAss, //RichTextBox UDissBox, TextBox UClassicBox, ListBox conditionList, ExceptionHandler UExcHandler) TextBox UDissBox, TextBox UClassicBox, ListBox conditionList, ExceptionHandler UExcHandler) { exceptionHandling = UExcHandler; gecko = UGecko; bpOutput = UBPOut; mainForm = UMainForm; listSet = false; disassembler = UDissAss; dissBox = UDissBox; classicBox = UClassicBox; stepOverPossible = false; changableRegs = new UInt32[40]; regDialog = new RegisterDialog(); PConditions = new BreakpointConditions(conditionList); for (int i = 0; i < 40; i++) { bpOutput.shortRegTextBox[i].Click += clickReg; } ShowFloatsInHex = false; }