mirror of
https://github.com/mytechnotalent/Embedded-Hacking.git
synced 2026-05-20 06:44:41 +02:00
88 lines
3.9 KiB
XML
88 lines
3.9 KiB
XML
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1200 800">
|
|
<style>
|
|
.bg{fill:#0a0a0f}.pnl{fill:#12121a;stroke:#1a1a2e}.hdr{fill:#12121a}
|
|
.title{font:bold 42px 'Courier New',monospace;fill:#00ff41}
|
|
.sub{font:bold 28px 'Courier New',monospace;fill:#00d4ff}
|
|
.txt{font:24px 'Courier New',monospace;fill:#c0c0c0}
|
|
.dim{font:20px 'Courier New',monospace;fill:#888}
|
|
.grn{font:bold 24px 'Courier New',monospace;fill:#00ff41}
|
|
.red{font:bold 24px 'Courier New',monospace;fill:#ff0040}
|
|
.cyn{font:bold 24px 'Courier New',monospace;fill:#00d4ff}
|
|
.amb{font:bold 24px 'Courier New',monospace;fill:#ffaa00}
|
|
.badge{stroke:#00ff41;rx:14}
|
|
</style>
|
|
<rect class="bg" width="1200" height="800"/>
|
|
|
|
<!-- Title -->
|
|
<text x="600" y="52" text-anchor="middle" class="title">Breakpoints</text>
|
|
<text x="600" y="88" text-anchor="middle" class="dim">GDB Breakpoint Types</text>
|
|
|
|
<!-- Left Panel: How Breakpoints Work -->
|
|
<rect x="30" y="105" width="540" height="675" class="pnl" rx="8"/>
|
|
<text x="300" y="148" text-anchor="middle" class="sub">How They Work</text>
|
|
<line x1="50" y1="163" x2="550" y2="163" stroke="#1a1a2e"/>
|
|
|
|
<!-- Normal execution -->
|
|
<text x="55" y="203" class="grn">Normal Execution</text>
|
|
|
|
<rect x="55" y="220" width="490" height="42" rx="4" fill="#0a0a0f" stroke="#1a1a2e"/>
|
|
<text x="70" y="248" class="txt">MOV r0, #5</text>
|
|
|
|
<rect x="55" y="272" width="490" height="42" rx="4" fill="#0a0a0f" stroke="#1a1a2e"/>
|
|
<text x="70" y="300" class="txt">MOV r1, #3</text>
|
|
|
|
<rect x="55" y="324" width="490" height="42" rx="4" fill="#0a0a0f" stroke="#1a1a2e"/>
|
|
<text x="70" y="352" class="txt">BL printf</text>
|
|
|
|
<!-- Breakpoint set -->
|
|
<text x="55" y="410" class="red">With Breakpoint</text>
|
|
|
|
<rect x="55" y="427" width="490" height="42" rx="4" fill="#0a0a0f" stroke="#1a1a2e"/>
|
|
<text x="70" y="455" class="txt">MOV r0, #5</text>
|
|
|
|
<rect x="55" y="479" width="490" height="42" rx="4" fill="#1a0f0f" stroke="#ff0040" stroke-width="2"/>
|
|
<text x="70" y="507" class="red">MOV r1, #3</text>
|
|
<text x="520" y="507" text-anchor="end" class="red">STOP</text>
|
|
|
|
<rect x="55" y="531" width="490" height="42" rx="4" fill="#0a0a0f" stroke="#1a1a2e" stroke-dasharray="6"/>
|
|
<text x="70" y="559" class="txt">BL printf</text>
|
|
<text x="520" y="559" text-anchor="end" class="dim">paused</text>
|
|
|
|
<text x="300" y="620" text-anchor="middle" class="txt">CPU halts BEFORE</text>
|
|
<text x="300" y="652" text-anchor="middle" class="txt">executing breakpoint</text>
|
|
<text x="300" y="684" text-anchor="middle" class="txt">instruction</text>
|
|
|
|
<text x="300" y="740" text-anchor="middle" class="dim">Now you can inspect</text>
|
|
|
|
<!-- Right Panel: GDB Commands -->
|
|
<rect x="600" y="105" width="570" height="675" class="pnl" rx="8"/>
|
|
<text x="885" y="148" text-anchor="middle" class="sub">GDB Breakpoints</text>
|
|
<line x1="620" y1="163" x2="1150" y2="163" stroke="#1a1a2e"/>
|
|
|
|
<text x="625" y="205" class="grn">break main</text>
|
|
<text x="625" y="240" class="txt">Stop at function</text>
|
|
<text x="625" y="272" class="dim">By symbol name</text>
|
|
|
|
<line x1="620" y1="300" x2="1150" y2="300" stroke="#1a1a2e"/>
|
|
|
|
<text x="625" y="340" class="grn">break *0x10000340</text>
|
|
<text x="625" y="375" class="txt">Stop at exact addr</text>
|
|
<text x="625" y="407" class="dim">By hex address</text>
|
|
|
|
<line x1="620" y1="435" x2="1150" y2="435" stroke="#1a1a2e"/>
|
|
|
|
<text x="625" y="475" class="cyn">info break</text>
|
|
<text x="625" y="510" class="txt">List all active</text>
|
|
<text x="625" y="542" class="txt">breakpoints</text>
|
|
|
|
<line x1="620" y1="570" x2="1150" y2="570" stroke="#1a1a2e"/>
|
|
|
|
<text x="625" y="610" class="amb">continue (c)</text>
|
|
<text x="625" y="645" class="txt">Resume running</text>
|
|
<text x="625" y="677" class="txt">until next break</text>
|
|
|
|
<line x1="620" y1="705" x2="1150" y2="705" stroke="#1a1a2e"/>
|
|
|
|
<text x="625" y="745" class="red">delete 1</text>
|
|
<text x="625" y="777" class="txt">Remove breakpoint #1</text>
|
|
</svg> |