Das, was du willst, ist womöglich eher ein "bedingter Haltepunkt".
z.B. via F9 einen Haltepunkt setzen und in dessen Eigenschaften die Bedingung
i <> 0
eintragen.
Auch lassen sich über Haltepunkt-Gruppen mit einem Haltepunkt andere ein/mehrere Haltepunkte (de)aktivieren.
Da
asm-Code nur für
Win32 unterstützt wird, funktioiert auch dieses nop nur für
Win32.
Assembler geht, nur der Inline-Assembler wird nicht mehr unterstützt,
also eine ganze Funktion als Assembler darf man weiderhin schreiben, nur eben nicht mehr mitten drin, in einem Pascal-Code.
asm int 3 end;
löst intern ein EXCEPTION_BREAKPOINT (0x80000003) aus, worauf der Debugger reagiert.
Hängt kein Debugger dran, dann raucht das mit einer
Exception ab.
DebugBreak ruft intern erbenfalls
int 3
auf, aber nur wenn
IsDebuggerPresent ein Ja sagt.
Es raucht also ohne Debugger nicht ab,
aber wenn der Debugger reagiert, dann hält Er in dieser
WinAPI an, und nicht dort, im eigenen Code.
https://en.wikipedia.org/wiki/INT_(x...truction)#INT3