OldComp.cz

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


Právě je 28.03.2024, 23:49

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




Odeslat nové téma Odpovědět na téma  [ Příspěvků: 25 ]  Přejít na stránku Předchozí  1, 2
Autor Zpráva
 Předmět příspěvku: Re: Jak nadatlovat strojový kód?
PříspěvekNapsal: 20.02.2018, 22:22 
Offline
Kecálek

Registrován: 10.07.2014, 01:57
Příspěvky: 168
Has thanked: 25 times
Been thanked: 225 times
no tak ale.. je tu novacik, podla mna by sa nemali tolerovat prispevky s poznamkou "netestovane" ;] hlavne, ked ta otestovanie stoji 2 minuty aj s pustenim emulatora a otvorenim debuggera na overenie ze je po spusteni v pamati to, co ma byt ;]

cat > test.bas
[copy&paste program bez '...']
[CTRL+D]

zmakebas -o test.tap test.bas

fuse test.tap
...


Nahoru
 Profil  
 
 Předmět příspěvku: Re: Jak nadatlovat strojový kód?
PříspěvekNapsal: 21.02.2018, 20:20 
Offline
Pan Generální
Uživatelský avatar

Registrován: 23.03.2014, 20:13
Příspěvky: 2773
Has thanked: 224 times
Been thanked: 601 times
Z hlavy jsem to také dával, ale trochu jsem z toho za ty roky vyšel, musel bych vyhrabat Didaktik a naklepat to do něj, protože emulátor tu mám jenom SPEC32 pod DOSBoxem. Aspoň názorně vidíš jak blbý zlozvyk je používat jednopísmenné názvy proměnných, kdybych tam napsal celým slovem adresa, tak by to fungovalo :angel:

_________________
Plesnivý sýr z Tesca, zatuchlé kuřecí řízky z Albertu, oslizlé hovězí a myší trus z Lidlu.
Nákup potravinářské inspekce v ČR, říjen 2023.


Nahoru
 Profil  
 
 Předmět příspěvku: Re: Jak nadatlovat strojový kód?
PříspěvekNapsal: 22.02.2018, 02:46 
Offline
Radil

Registrován: 31.01.2018, 01:33
Příspěvky: 483
Bydliště: Praha
Has thanked: 179 times
Been thanked: 497 times
Citace:
Jen od oka by ten program mohl vypadat takhle (netestováno!):
Kód:
10 CLEAR 32767
20 LET a=10: LET b=11: LET c=12
30 LET d=13: LET e=14: LET f=15:
40 READ g: IF g=0 THEN STOP
50 READ d$
60 FOR i=0 TO 7
70 POKE g+i, VAL(d$(i*3+1)) * 16 + VAL(d$(i*3+2))
80 NEXT i
90 GOTO 40
100 DATA 46528, "ED 72 B6 7C B6 C1 CD 6C"
110 DATA 46536, "B6 10 05 CD 6C B6 18 05"
120 DATA 46544, "CD 6C 86 16 18 E6 10 02"
130 DATA 46552, "1E 07 3A 56 B5 4F B6 CD"
140 DATA 46560, "08 C9 3A 54 B5 80 47 3A"
...
999 DATA 0, "Konec dat."

Na každém řádku máš adresu v paměti a osm po sobě následujících bajtů které je od ní potřeba zapsat. Dodržuj mezi nimi v datech vždy jednu mezeru, protože záleží na jejich přesné pozici v řetězci. Po napoukování bude užitečné ten úsek paměti ihned nahrát na kazetu, abys to nemusel psát znova. A ten program také, pokud nebude ten stroják fungovat a budeš ho opravovat, ať to nepíšeš pokaždé celé.


Mnohokráte Vám děkuji za vše!!!
Snad se nebudete zlobit s otázkou: Proč tedy takto napsaný strojový kód není tedy součástí té předchozí čásati psané v Basicu? (viz můj první příspěvek tohoto fóra)

Děkuji
Láďa


Nahoru
 Profil  
 
 Předmět příspěvku: Re: Jak nadatlovat strojový kód?
PříspěvekNapsal: 22.02.2018, 13:27 
Offline
Pan Generální
Uživatelský avatar

Registrován: 11.06.2013, 15:27
Příspěvky: 3025
Has thanked: 2192 times
Been thanked: 894 times
Ladislav píše:
Snad se nebudete zlobit s otázkou: Proč tedy takto napsaný strojový kód není tedy součástí té předchozí části psané v Basicu? (viz můj první příspěvek tohoto fóra)

Protože na počátku do domácích počítačů dělali lidi, kteří rozuměli jak HW tak SW a programy běžně psali na "nejnižší úrovni", v hexadecimálních kódech.
Angličtinu v manuálech se sice někteří učili jako školáci od základu (a klávesnici mnohdy překládali jako "klíčovou desku" - což u ZX80, ZX81 a spektráče paradoxně sedělo, protože na nich ta klíčová slova byla napsaná), ale čísla instrukcí strojového kódu znali nazpaměť a hexa výpis plynule četli. K zapisování kratšího i středního programu jim často posloužil jen program-monitor stroj. kódu (různé MONS, MILIMON, MIKROMON, VAT, VAST, PIKOMON...) - někteří jej měli ve spektráči přímo v ISOROM. Mnozí s takovým přepisováním kódů v paměti slušně upravovali a opravovali zahraniční programy, např. p. Adámek. Tahle generace profíků vydržela u osmibitů do začátku devadesátých let, kdy většinou přešla na vyspělejší stroje.

Opak ukážu na mém příkladu: jsem v půlce 80. let naopak patřil mezi laické mlaďochy, kteří si počítač ani periférie nebastlili a nejdřív pracovali (a pak i koupili) s hotovým zařízením a byli od začátku jen uživatelsky (vlastně úplně nejdřív jen herně) orientováni. Hardware a taky klíč k němu: stroj. kód, to vše pro mne byla magie. Jako začátečníka mne hodně zmátla tabulka v manuálu pro ZX Spectrum, kde byly kódu znaků, příkazů basicu i instrukcí strojového kódu vedle sebe. Vůbec jsem tomu nerozuměl, jak to spolu souvisí, dokud jsem nazačal těm profíkům koukat přes rameno a nepořídil si základní literaturu z Karolinky. Až pak jsem pochopil, co je to relokovatelný program, co je RAMTOP, jak používat RANDOMIZE USR, PRINT USR, LET a=USR, a jak předávat a číst vstupy a výstupy stroj. kódu z BASICU... :bulb:

Kódy jsem se nikdy úplně nazpaměť nenaučil, monitory byly nepohodlné, radši zkoušel assemblery od Hisoftu a MASM apod. a coby rekreativní (rozuměj rekreační lepič kódu) počítačovec na zač. devadeátých let pak totálně zpohodlněl u PIKASMu a Promethea. A že se ty hexavýpisy v časopisech ještě nějakou dobu tiskly, mne hodně štvalo. Šokem byly pro mne západní počítačové časopisy, které byly plné sloupců hexadecimálních čísel, někdy dokonce s jedním číslem na každém řádku navíc, coby kontrolním součtem, jestli to člověk dobře opsal... Ale jen jsem si dřel karmu, díky soužití s C128 jsem pak zjistil, že např. převážně herní část komodoristické komunity je na ty výpisy zvyklá a s opisováním mnoha, klidně i deseti stránek výpisů, smířená.

https://sam.speccy.cz/olddocs/uvod_do_s ... du_zxs.pdf
https://sam.speccy.cz/olddocs/asm-z80_p ... s_zx81.pdf
https://sam.speccy.cz/olddocs/strojovy_kod_85-86.pdf
https://sam.speccy.cz/olddocs/z80_assem ... sovice.pdf

_________________
// na co myslím, když sedím u oldkompů: Blood Products from Genetic Vaccine Recipients


Nahoru
 Profil  
 
 Předmět příspěvku: Re: Jak nadatlovat strojový kód?
PříspěvekNapsal: 22.02.2018, 14:29 
Offline
Óm Nejvyšší

Registrován: 22.05.2013, 21:14
Příspěvky: 3642
Bydliště: Bratislava
Has thanked: 371 times
Been thanked: 788 times
SCjoe píše:
... čísla instrukcí strojového kódu znali nazpaměť a hexa výpis plynule četli.
Presne tak, vtedy bolo uplne normalne uvadzat program ako hexdump, a kazdy kto sa co len trosku vyznal vedel co presne s tym ma robit. To boli krasne casy 80-tych rokov :)
SCjoe píše:
K zapisování kratšího i středního programu jim často posloužil jen program-monitor stroj. kódu (různé MONS, MILIMON, MIKROMON, VAT, VAST, PIKOMON...)
...a samozrejme MRS, ktoreho prva verzia vznikla uz v roku 1986 a tiez umoznila priamo zapisat hexdump.
SCjoe píše:
někteří jej měli ve spektráči přímo v ISOROM.
Hexdump sa da do pameti priamo zapisat aj v BSrom118 a 140 takto:
46528 ED 72 B6 7C B6 C1 CD 6C => POKE 46528,%ED,%72,%B6,%7C,%B6,%C1,%CD,%6C


Nahoru
 Profil  
 
 Předmět příspěvku: Re: Jak nadatlovat strojový kód?
PříspěvekNapsal: 22.02.2018, 14:32 
Offline
Óm Nejvyšší

Registrován: 16.06.2014, 12:23
Příspěvky: 3676
Bydliště: Jesenice u Prahy
Has thanked: 28 times
Been thanked: 280 times
"Protože na počátku do domácích počítačů dělali lidi, kteří rozuměli jak HW tak SW a programy běžně psali na "nejnižší úrovni", v hexadecimálních kódech."

Dokonce ti skalní používali oktalovou soustavu a transformace na hex bylo jako předělávka leváka na praváka :D

Minipočítače neměli žádnou ROM, takže program, operační systém se natahoval z nějaké perifrie, třeba z děrné pásky, kazety, nebo disku.

Běžná obsluha uměla tzv. krabičkovej loader, 16 instrukcí k natažení programu z děrné pásky, které se nacvakala z předního panelu (SW), systemoví inženýři, elita, uměli z paměti diskový zavaděč 64 instrukcí.

Protože po oslavách Brigády Socialistiké Práce (při dosažení, nebo nedosažení plánovaných met) systemoví inženýři příští den pravidelně při nástupu do zaměstnání chybovali při zadávaní diskového zavaděče, byl nainstalován automatický zavaděč s jedinou MH74S287 a jejich privilegia jim byla odebrána.

To byl start minipočítačů, které může používat i blondýnka, jelikož, když se něco nedaří, tak stačí vypnout a zapnout :lol:

ps. to se opravdu stalo a na začátku bylo nadatlovat strojovej kód, jinak to nešlo.

_________________
Diagnóza: Touretteův syndrom, Koprolálie, Dyslexie, Obsedantně kompulzivní porucha.
Kalkulačky: Privileg PR56, TI51-III, TI57, TI58, TI59, TI83, TI-83 Premium CE, TI89
Počítadla: BOBO64, ZX48 plus, DG-88, Didaktik-M, C16, C64C, Amiga 500+, MZ800, MUPID C2A2


Nahoru
 Profil  
 
 Předmět příspěvku: Re: Jak nadatlovat strojový kód?
PříspěvekNapsal: 22.02.2018, 16:11 
Offline
Pan Generální
Uživatelský avatar

Registrován: 11.06.2013, 15:27
Příspěvky: 3025
Has thanked: 2192 times
Been thanked: 894 times
Busy píše:
a samozrejme MRS, ktoreho prva verzia vznikla uz v roku 1986

Jo, pardon, zapominam, neb mne tehdy distribucni (kopirovaci) vetev softwaru s MRS minula, asi o nem nepsali ani v Hradci ani v Karolince a nebyl k dostani ani na polskych kazetach z ostravke burzy. Systemu MRS udelala reklamu knizka Bity do bitu, ale kdyz jsme vyuzili prilozeny kupon a s kamaradem jej objednali, prisla nam hlaska, ze uz je kazeta vyprodana... takze jsem MRS paradoxne dostal pozdeji nez Pikasm+Pikomon, ze zilinskeho distribucniho kanalu, od St. Figlara, ktery jej predelal pro Sam Coupe. Prosba: jestli k tomu vydani MRS inzerovanemu v Bitech do bytu byl i tisteny manual, hodne sem prosim nekdo sken.

danhard píše:
Dokonce ti skalní používali oktalovou soustavu

A pokud ti skalni nahodou ucili pocitace, nutili nas tuhle mimonskou soustavu ovladnout taky, mne se te pocty dostalo s vyukou IQ-151 :shock:
Dodnes nevim, ma nejake vyuziti na osmibitech (v nekolika priruckach strojoveho kodu z80 se vedle hd soustavy popisuje...)?

_________________
// na co myslím, když sedím u oldkompů: Blood Products from Genetic Vaccine Recipients


Nahoru
 Profil  
 
 Předmět příspěvku: Re: Jak nadatlovat strojový kód?
PříspěvekNapsal: 22.02.2018, 16:47 
Offline
Óm Nejvyšší

Registrován: 22.05.2013, 21:14
Příspěvky: 3642
Bydliště: Bratislava
Has thanked: 371 times
Been thanked: 788 times
SCjoe píše:
Prosba: jestli k tomu vydani MRS inzerovanemu v Bitech do bytu byl i tisteny manual, hodne sem prosim nekdo sken.
Papierovy manual sice mam, ale nechces radsej celu dokumentaciu v plaintexte ? Najdes ju na mojej stranke o MRS. (v manuali nie je vsetko)


Nahoru
 Profil  
 
 Předmět příspěvku: Re: Jak nadatlovat strojový kód?
PříspěvekNapsal: 22.02.2018, 18:51 
Offline
Pan Generální
Uživatelský avatar

Registrován: 11.06.2013, 15:27
Příspěvky: 3025
Has thanked: 2192 times
Been thanked: 894 times
Ano, Tvoje stranky znam. Zajimaji mne starsi verze a navody k nim...

_________________
// na co myslím, když sedím u oldkompů: Blood Products from Genetic Vaccine Recipients


Nahoru
 Profil  
 
 Předmět příspěvku: Re: Jak nadatlovat strojový kód?
PříspěvekNapsal: 25.02.2018, 23:45 
Offline
Pan Generální
Uživatelský avatar

Registrován: 13.05.2013, 09:15
Příspěvky: 2278
Bydliště: Brno
Has thanked: 842 times
Been thanked: 302 times
Ladislav píše:
Děkuji Vám vśem moooooc :)
a jdu studovat :)
Láďa

Nevím jak druzí, za mne to s tím studováním moc nepřeháněj. Chci tím říci, že dle mne je důležitější zapnout vývojové prostředí a začít se s programováním hrát. Tímhle způsobem se na Tebe budou nabalovat informace postupně. Z učebnice se některé věci můžou zdát složitější, nežli ve skutečnosti jsou. Já kdyby jsem se měl učit z cizích kódu, tak s programováním asi ani nikdy nezačnu.

_________________
Amiga - PMD 85


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ů: 25 ]  Přejít na stránku Předchozí  1, 2

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 2 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