OldComp.cz
http://oldcomp.cz/

Nativní debugger
http://oldcomp.cz/viewtopic.php?f=29&t=2288
Stránka 22

Autor:  SCjoe [ 17.06.2019, 11:59 ]
Předmět příspěvku:  Re: Nativní debugger

Tak už jsem jej našel: Kromě výše uvedeného Megamonu je tu od r. 1985 Laser genius s debuggerem/tracerem.
Jak se zběžně dívám, má podobně jako ve verzi pro ZXS forthovský analyzér a trasovací povely... od str. 38.

Pokud k základnímu stroji přidáte paměti nebo další rozšíření, zemulujete snadněji i vlastní operační systém.
Např. Turbomon umí spustit a ladit prostředí ZX Spectra 48K a dokonce spustit a trasovat samostatnou instanci SAM Basicu, aniž by cokoliv v původním systému přepsal.

Autor:  Comos [ 18.06.2019, 12:47 ]
Předmět příspěvku:  Re: Nativní debugger

Citace:
Prave preto som napisal, ze v takych pripadoch sa da pouzit JSR.


JSR na debug na C64 je použitelný opět krajně.1) Musíte oěpt najít kus paměti, u které víte,že se vám nepřepíše. 2) Pokud program používá self-modify rutiny, upravuje návratové adresy ve stacku, nebo stačí aby na nevhodném místě po JSR provedl PLA,PLA,RTS, tak máte opět to, co nechcete.

Citace:
Bezna prax na ZX je z tohto hladiska rovnaka ako na C64 - kedze ani jeden z procesorov Z80 a 6502 nema chraneny ci virtualny rezim, naostro beziaci program ma (zial) plnu kontrolu nad pocitacom a moze si v nom robit co chce, t.j. aj prepisat pamet v ktorej je nahraty debugger. Avsak pokial program nebezi plnou rychlostou, ale v niektorom z krokovacich rezimov (t.j. debugger vykonava jednotlive instrukcie programu), potom prave debugger ma plnu kontrolu nad pocitacom a vie sa pred prepisanim (ci uz svojho kodu, vektorov pouzivanych preruseni alebo nevhodne nastavenie periferii ci memory layoutu) chranit.


Praxe jako na ZX není stejná jako na C64, už jsem to psal jednou.Na C64 nemám jak stepovat ASM program, můžu ho pouze přerušit za určitejch okolností.

Autor:  Busy [ 19.06.2019, 10:13 ]
Předmět příspěvku:  Re: Nativní debugger

Comos píše:
Praxe jako na ZX není stejná jako na C64, už jsem to psal jednou.Na C64 nemám jak stepovat ASM program, můžu ho pouze přerušit za určitejch okolností.
Specialne kvoli tomuto som si teraz presiel navod na Laser Genius pre C64 (co vyssie spomenul SCjoe) a jeho debugger umoznuje vsetky bezne sposoby stepovania ASM programu na C64 presne tak isto ako aj na ZX. Takze nie je pravda, ze stepovat ASM program na C64 nemozes. A verim tomu ze Laser Genius nie je jediny debugger pre C64 ktory poskytuje vsetky bezne debuggovacie funkcie.

Autor:  Comos [ 20.06.2019, 00:46 ]
Předmět příspěvku:  Re: Nativní debugger

Busy píše:
Comos píše:
Praxe jako na ZX není stejná jako na C64, už jsem to psal jednou.Na C64 nemám jak stepovat ASM program, můžu ho pouze přerušit za určitejch okolností.
Specialne kvoli tomuto som si teraz presiel navod na Laser Genius pre C64 (co vyssie spomenul SCjoe) a jeho debugger umoznuje vsetky bezne sposoby stepovania ASM programu na C64 presne tak isto ako aj na ZX. Takze nie je pravda, ze stepovat ASM program na C64 nemozes. A verim tomu ze Laser Genius nie je jediny debugger pre C64 ktory poskytuje vsetky bezne debuggovacie funkcie.


Měl jsem na mysli stepování v reálu, bez omezení.Vyzkoušel jsem Laser Genius a pracuje na principu,co jsem zmiňoval.IRQ,BRK,NMI vektory používá svoje a s tím souvisí i Kernal ROM,která musí být zapnutá.Basic ROM je vypnutá kvůli místu.Na debug je to hodně minimalistické, program využívá více částí paměti na temporary data,takže nahraný program musí být v řádech KB.Oblast paměti pro debugovaný program je u normální verze daná, u upravené,která má extra relokaci volnější.Debugovaný kus programu samozřejmě nesmí přepisovat IRQ,NMI,BRK vektor ani měnit nastavení paměti ($01=$36).

Autor:  SCjoe [ 22.06.2019, 09:58 ]
Předmět příspěvku:  Re: Nativní debugger

ATMON

http://www.6502.org/users/andre/misc/index.html
Kód:
T adr   trace walk. You can control it with the following keys:
          F1  don't execute the next command
          F3  fast execution: don't wait for a keypress
          F5  slow execution (as F3)
          F7  one step ahead
          J   execute subroutine to the next rts
          run/stop   as the name says...
The trace walk is not very reliable, I didn't know about 'bad rasterlines' and so, so you may be trapped in the routine itself. But, BTW, don't care for "SEI", the NMI timer gives the signal.

Stránka 22 Všechny časy jsou v UTC + 1 hodina [ Letní čas ]
Powered by phpBB® Forum Software © phpBB Group
http://www.phpbb.com/