https://commodore.software/downloads/do ... -shop-v1-3Na stejném disku je dekodér [disasembler], jako samostatný program.
Měl by umět vytvořit tabulku symbolů, a X reference.
Ale nejede.
Zatím jsem vykoumal toto.
SA,SA1,SA2 - loader + relokátor a nějaký stroják
SA3 basic a na konci stroják v relativních adresách
Srtroják za tím basicem v SA3, začíná relativními vektory
Kód:
CLV
BVC @+$45
CLV
BVC @+$28
CLV
BVC @+$60
CLV
BVC @+$61
...
Stroják se potom z basicu volá
Kód:
90 uq=fnp(45)-549 : rem zjistí začátek programu, 549 délka strojáku
...
1000 sys uq + 0 : return : rem skok na 1.vektor
1010 sys uq + 2 : return : rem skok na 2.vektor
1020 sys uq + 4 : return : rem skok na 3.vektor
...
Případné pokusy o úpravy basicu, způsobí přepis strojáku.
Možná součást nějakého `copyprotect' mechanismu?
Pod ROMku @A000 se nehrává program SA2, pak se tam skáče,
tzn. basic překladač se musí před skokem nějak odpojit.
V SA3 jsou tyhle dvě podezřelý řádky
Kód:
3 rempoke768,142:poke769,166
...
15 rem l,ee$,en$,es$,et$,he,p$,rs$,cf$
Dumám nad tím, nechápu proč to nejede.