OldComp.cz

Komunitní diskuzní fórum pro fanoušky historických počítačů


Právě je 29.03.2024, 00:27

Všechny časy jsou v UTC + 1 hodina [ Letní čas ]




Odeslat nové téma Odpovědět na téma  [ Příspěvků: 8 ] 
Autor Zpráva
 Předmět příspěvku: The Machine Shop v1.3
PříspěvekNapsal: 29.01.2021, 12:59 
Offline
Kecálek
Uživatelský avatar

Registrován: 11.10.2020, 21:29
Příspěvky: 93
Has thanked: 0 time
Been thanked: 10 times
Zkouším tenhle assembler na skutečném C64.

Libí se mi o něco víc, než tovární CMB Dev. System.
Má vlastní syntaxi pro adresaci LO-HI, a 0.stránky.
[jde asi jen o zvyk]

Je z roku 84-85, řádky se v editoru číslujou [trochu dřevní, ale to sou 80.léta]
ale díky číslování se dobře přepisujou příklady z listingu.

Umí načíst kód z paměti nebo disku a vložit ho zpátky do zdrojáku.
Asebmluje v paměti [rezident?], výstup do paměti, nebo rovnou do PRG [nepotřebuje loader jako CBM].
Má vlastní editor, monitor, debugger [vše rezident], prostředí se ovládá výběrem z nabídky,
umí odskočit do basicu a zase zpátky.

Možná je trochu pomalejší, ale zatím nemám srovnání.
Kontroluje syntax, hned po vložení řádku [pro mě začátečníka dobrý]

Mám tady ještě doporučovaný Turbo, a Merlin, budu zkoušet později.

Verzi `TMS' co mám, jsem zatím objevil 2 nebo tři chyby, který bych rád opravil.
Neumím, nebo zatím nevím jak.
Zdá se, že část je psaná v basicu, ale nedokážu se dostat k editaci?

Dík

_________________
TK


Nahoru
 Profil  
 
 Předmět příspěvku: Re: The Machine Shop v1.3
PříspěvekNapsal: 30.01.2021, 19:25 
Offline
Kecálek
Uživatelský avatar

Registrován: 11.10.2020, 21:29
Příspěvky: 93
Has thanked: 0 time
Been thanked: 10 times
Možná znáte, to s čím si teď hraju je tohle.
Příloha:
tms.png
tms.png [ 71.58 KiB | Zobrazeno 8195 krát ]

V roce 2021 je to už asi dost retro, ale překvapivě hodně publikací o C64
asembleru se odkazuje právě na tenhle produkt [develop-64 starší název]

Obsluha menu je psaná v BASICu, zbytek je stroják.
Kód byl nějak zamknutý pro editaci, na to jsem přišel čistě náhodou pomocí `petcat' [součást VICE]
Opravil jsem překlep pro dekodér, který se neukončoval v případě zadání #op=code.
Příloha:
tms2.png
tms2.png [ 66.77 KiB | Zobrazeno 8195 krát ]

Kód:
pi@raspberrypi:~/c64/sw/the_machine_shop_v1.3 $ diff d3.txt d3.txt~
184c184
<   354 g=0:ifleft$(a$,1)="#"thena$=right$(a$,len(a$)-1):g=-1
---
>   354 g=0:ifleft$(a$,1)="#"thennext$=right$(a$,len(a$)-1):g=-1


Jsou tam ještě asi dvě chybky, a taky možná upravit formát listingu na obrazovku.
Bylo to psaný hlavně pro tiskárnu.
Zatím nevím jak, k tomu ještě napíšu.

_________________
TK


Nahoru
 Profil  
 
 Předmět příspěvku: Re: The Machine Shop v1.3
PříspěvekNapsal: 05.02.2021, 13:36 
Offline
Kecálek
Uživatelský avatar

Registrován: 11.10.2020, 21:29
Příspěvky: 93
Has thanked: 0 time
Been thanked: 10 times
https://commodore.software/downloads/do ... -shop-v1-3

Na 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.

_________________
TK


Nahoru
 Profil  
 
 Předmět příspěvku: Re: The Machine Shop v1.3
PříspěvekNapsal: 11.02.2021, 11:15 
Offline
Kecálek
Uživatelský avatar

Registrován: 11.10.2020, 21:29
Příspěvky: 93
Has thanked: 0 time
Been thanked: 10 times
Asi s tím dál už nepohnu.

Ale tady sem našel možné vysvětlení stran těch podivných REM řádek,
[copy protect???]
https://comp.sys.cbm.narkive.com/YJAWnSun/develop-64

a rozhovor s autorem [Don French] a jeho firma French Silk,
https://web.archive.org/web/20110813050 ... blog/?p=93

_________________
TK


Nahoru
 Profil  
 
 Předmět příspěvku: Re: The Machine Shop v1.3
PříspěvekNapsal: 21.02.2023, 00:11 
Offline
Kecálek

Registrován: 13.01.2023, 09:42
Příspěvky: 88
Has thanked: 0 time
Been thanked: 24 times
Taky jsem včera narazil na tento program pod názvem Develop-64, což je to samé. Zajímal mě debuging kódu, což jsem jinde u žádného programu pro Commodore 64 neviděl. Pěkná věc i když trochu zastaralá, ale funguje to a při krokování programem člověk pochopí některé záludnosti kódu.


Nahoru
 Profil  
 
 Předmět příspěvku: Re: The Machine Shop v1.3
PříspěvekNapsal: 21.02.2023, 08:45 
Offline
Kecálek

Registrován: 13.01.2023, 09:42
Příspěvky: 88
Has thanked: 0 time
Been thanked: 24 times
Chvíli jsem si s tím TMS v 1.3 hrál, přijde mi to nestabilní a trochu jiná práce s ukončením editoru (/ místo Return) a doporučuji tedy Develop-64.


Nahoru
 Profil  
 
 Předmět příspěvku: Re: The Machine Shop v1.3
PříspěvekNapsal: 23.02.2023, 17:20 
Offline
Kecálek

Registrován: 13.01.2023, 09:42
Příspěvky: 88
Has thanked: 0 time
Been thanked: 24 times
V Develop-64 je trochu jiná syntaxe, nikde jsem nenarazil na návod, jen v této knize str. 49 a dále. Pro přiřazení dvoubytového obsahu je nutné použít šipku vlevo, tedy STA<-$FD nikoliv standardním STA $FD. Rovněž nelze napsat např. CMP #"@" ale musí se napsat CMP#40. Celkem se s tím dobře dělá, hned si člověk prohlédne obsah paměti případně může programem krokovat. Není to na žádné velké projekty, ale na hraní je to fajn. Ta syntaxe bez mezer je samozřejmě trochu nepřehledná v TMP se dělá výrazně lépe.


Nahoru
 Profil  
 
 Předmět příspěvku: Re: The Machine Shop v1.3
PříspěvekNapsal: 28.02.2023, 08:32 
Offline
Kecálek

Registrován: 13.01.2023, 09:42
Příspěvky: 88
Has thanked: 0 time
Been thanked: 24 times
Nakonec jsem návod na Develop-64 objevil i když je na trochu jinou verzi, než ten co jsem inzeroval v příspěvku výše. Stačí používat jednoduché příkazy jako listing L1-100, delete D10-20 nebo insert I5. Debugger funguje pěkně, dají se vynechávat určitě instrukce (třeba skoky do Kernalu apod.) a člověk stále vidí stav registrů po každé vykonané instrukci. Je to fajn na takové "domácí žvýkání", pro solidnější práci už dnes programátoři ani skutečný Commodore nevidí, možná ho ani nevlastní a pracují pod Win, Linux nebo Mac.


Přílohy:
Debug.png
Debug.png [ 288.79 KiB | Zobrazeno 3625 krát ]
Nahoru
 Profil  
 
Zobrazit příspěvky za předchozí:  Seřadit podle  
Odeslat nové téma Odpovědět na téma  [ Příspěvků: 8 ] 

Všechny časy jsou v UTC + 1 hodina [ Letní čas ]


Kdo je online

Uživatelé procházející toto fórum: Žádní registrovaní uživatelé a 4 návštevníků


Nemůžete zakládat nová témata v tomto fóru
Nemůžete odpovídat v tomto fóru
Nemůžete upravovat své příspěvky v tomto fóru
Nemůžete mazat své příspěvky v tomto fóru
Nemůžete přikládat soubory v tomto fóru

Hledat:
Přejít na:  
Založeno na phpBB® Forum Software © phpBB Group
Český překlad – phpBB.cz