Breakpoint
aus RHWiki, der freien Romhacking-Enzyklopädie
Ein Breakpoint ist ein "Haltepunkt" bei einem Debugger. Breakpoints können an fast jede beliebige Stelle eines Programms (Spiels) gesetzt werden. Der Debugger arbeitet das Programm dann so lange ab, bis er auf einen Breakpoint stößt. Nun wird das Programm angehalten, und der Entwickler oder Romhacker kann die Vorzüge eines Debuggers genießen, also z.B. das Programm schrittweise weiterausführen.
Breakpoint-Typen
Neben den 'normalen' Breakpoints, die immer im Code liegen und an denen immer gehalten wird, gibt es noch sog. Memory- (Speicher) und Conditional (Bedingte)-Breakpoints, die einem die Arbeit sehr erleichtern können.
Memory-Breakpoints funktionieren so, dass immer angehalten wird, wenn eine bestimmte Speicheradresse geändert (Break On Write) oder gelesen (Break On Read) wird.
Conditional Breakpoints (Bedingte Breakpoints) sind entweder normale Breakpoints, oder Memory Breakpoints, an denen nicht immer gehalten wird, sondern nur wenn eine bestimmte Bedingung eintritt, z.B. wenn ein Register oder eine Speicheradresssse einen bestimmten Wert hat.
Das ist insbesondere in Schleifen sinnvoll, wenn man nur einen bestimmten Durchlauf genauer beobachten will, oder bei Prozeduren die von sehr vielen verschiedenen Codeteilen aufgerufen werden, da man nur an einem bestimmten Aufruf interessiert ist.
Nicht jeder Debugger unterstützt alle Arten von Breakpoints.

