Changeset 15 for trunk/Debugger.pas


Ignore:
Timestamp:
Apr 21, 2026, 6:15:40 PM (5 days ago)
Author:
chronos
Message:
  • Modified: Faster instruction stepping.
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/Debugger.pas

    r14 r15  
    4949    FDisassembler: TDisassembler;
    5050    FOnChange: TNotifyEvent;
     51    procedure Pause;
    5152    procedure SetCpu(AValue: TCpuZ80);
    5253    procedure CpuCall(Address: Word);
     
    109110end;
    110111
     112procedure TDebugger.Pause;
     113begin
     114  DebugMode := dmNone;
     115  Cpu.Paused := True;
     116  DoOnChange;
     117end;
     118
    111119procedure TDebugger.CpuStep;
    112120begin
    113121  if DebugMode <> dmNone then begin
    114122    if DebugMode = dmStepIn then begin
    115       DebugMode := dmNone;
    116       Cpu.Paused := True;
     123      Pause;
    117124    end;
    118125    if (DebugMode = dmStopAddress) and (DebugStopAddress = Cpu.PC) then begin
    119       DebugMode := dmNone;
    120       Cpu.Paused := True;
     126      Pause;
    121127    end;
    122128    if DebugMode = dmStepOver then begin
    123       DebugMode := dmNone;
    124       Cpu.Paused := True;
     129      Pause;
    125130    end;
    126131  end;
    127132  if BreakPoints.Contains(Cpu.PC) then begin
    128     DebugMode := dmNone;
    129     Cpu.Paused := True;
    130   end;
     133    Pause;
     134  end;
     135  DoOnChange;
    131136end;
    132137
Note: See TracChangeset for help on using the changeset viewer.