Uživatelské nástroje

Nástroje pro tento web


lnxspectrum:breakpoints

Rozdíly

Zde můžete vidět rozdíly mezi vybranou verzí a aktuální verzí dané stránky.

Odkaz na výstup diff

lnxspectrum:breakpoints [2018/07/31 10:05] (aktuální)
Řádek 1: Řádek 1:
 +====== Debugger - Breakpoints ======
  
 +V Debuggeru je možné použít několik druhů breakpointů při různých událostech. Základní druhy breakpointů:​
 +
 +Register - zastaví procesor při změně obsahu registru. Nejčastější využití bude zřejmně zastavení CPU, když PC registr dosáhne určité adresy. Hlídání registru může být nastaveno na libovolný registr, 8mibitový, i 16tibitový,​ hlídání obsahu registru může být nastaveno na konkrétní hodnotu, nebo na rozsah hodnot. Například můžeme nastavit breakpoint - zastavit CPU, pokud registr H bude obsahovat hodnotu mezi 128-142.
 +
 +Memory - zastaví procesor, pokud dojde k události s pamětí. Nejprve určíme, zda se událost týká jen zápisu do paměťové buňky, nebo jen čtení z paměťové buňky, nebo obojí. Dále nastavíme rozsah adres, které se má tato událost týkat. Volitelně můžeme nastavit jaký rozsah hodnot hlídáme. Například můžeme nastavit breakpoint: zastavit CPU, pokud dojde k zápisu do paměti v rozsahu 16384-18431,​ a ať k zastavení dojde jen v případě, pokud zapisované hodnoty jsou v rozsahu 1-255.
 +
 +Port - zastaví procesor, pokud dojde ke čtení (IN) nebo k zápisu (OUT) do portu. Nastavíme který port chceme hlídat, případně masku portu, a pokud vyžadujeme určitý rozsah hodnot, nastavíme i rozsah. Například můžeme nastavit breakpoint: zastavit CPU, pokud dojde k pokusu o přestránkování paměti ve ZX Spectrum 128 (port 7FFD), tedy zápisu na port 253 s maskou 127.
 +Mimo těchto zakladních můžeme ještě aktivovat IRQ breakpoint, ten zastaví CPU když dojde k vyvolání přerušení.
 +
 +{{:​lnxspectrum:​pic3.jpg?​nolink|}}
lnxspectrum/breakpoints.txt · Poslední úprava: 2018/07/31 10:05 (upraveno mimo DokuWiki)