public void Remove(Machine.DisasmLine disasmLine)
        {
            if (disasmLine.Breakpoint == null)
            {
                return;
            }

            _machine.Connection.RemoveBreakpoint(this, disasmLine.Breakpoint);

            _breakpoints.Remove(disasmLine.Breakpoint.Index);
        }
        public Breakpoint Add(Machine.DisasmLine disasmLine)
        {
            if (disasmLine.Breakpoint != null)
            {
                return(disasmLine.Breakpoint);
            }

            var bp = new Breakpoint()
            {
                Index = GetFreeID(),
                Bank  = _machine.Memory.Bank(disasmLine.Bank.ID),
                Line  = disasmLine
            };

            if (_machine.Connection.SetBreakpoint(this, bp))
            {
                _breakpoints.Add(bp.Index, bp);
                disasmLine.Breakpoint = bp;
            }

            return(bp);
        }