Stránka 5 z 6
Napsal: 16 črc 2023, 17:29
od judeware
To vypadá na nějakou specialitu toho íkvéčka.
10 LET A(1)=5:LET A(2)=12
20 LET A(3)=0
30 PRINT A(1)+A(2)+A(3)
40 LET A(9)=A(1)+A(2)
Říkají tím, že DIM na začátku programu nemusí být uvedeno a ono to nehavaruje. Ale např. u Sharpa si tohoto nejsem vědom (dovolené absence DIM).
Napsal: 16 črc 2023, 18:21
od asdf
Tak jsem si stáhnul emulátor IQ151 a potvrzuji, že s
si poradí.
Takže to asi bude z IQčka.
Napsal: 16 črc 2023, 18:25
od rnbw
Kazdy BASIC je iny, v tom je ten vtip.
Napriklad Sinclair BASIC umoznuje nazvy ciselnych premennych lubovolnej dlzky (dokonca s medzerami), ale retazcove premenne mozu mat len jednopismenovy nazov (s dolarom na konci).
Napsal: 16 črc 2023, 18:27
od Crifodo
judeware píše: Sharp mohl mít názvy i delší (bez toho, aby se ohlásila "SYNTAX ERROR"), ale jen první dva znaky byly platné. Takže např. VO je totéž, co VOCAS a TE je totéž, co TERMIT.

tak to je vtipná zákeřnost, třeba kdybys přepisoval program z jinýho basicu a pak se dlouho divil, proč se proměnná VOCAS1 neliší od VOCAS2.
Napsal: 16 črc 2023, 18:38
od PotPalo
Zákerností je všade dosť, hlavne pokiaľ to ani v príručke užívateľa nieje správne vysvetlené.
Napríklad príručka strojového kódu pre ZX Spectrum:
register R, sa sám mení, teda zvyšuje, počíta inštrukcie. Ale nieje už spomenuté, že najvyšší bit sa nemení a ostáva taký, aký ho nastavíme. Čo som sa s tým natrápil...
Ďalej stlačenie RESET. Jediné čo robí je, že sa vypne prerušenie a program skočí na adresu 0. Žiadne registre sa pri ňom ale nemažú na nulu, ako by sa mohlo zdať. Takže BASICom nepoužívané registre ho prežijú.
Napsal: 16 črc 2023, 18:49
od Habesan
Verzi pro ZX Spectrum (tedy originál) je možno stáhnout na této stránce:
visiongame.cz /obchodnik/
Možná to pomůže při zkoumání této verze.
(Jeden z nejpoužívanějších řetězců jsou tam tři nuly ve finančních částkách.)
Napsal: 17 črc 2023, 12:28
od asdf
Tak tady jsou přečtené a rozstříhané obě kazety.
Napsal: 19 črc 2023, 22:18
od TeslaPC
Super, díky moc všem za pomoc, netušil jsem že to bude takový oříšek. Stáhnul jsem si emulátor, a jdu to tam zkusit načítat a jsem zvědav co na tom bude.
Napsal: 20 črc 2023, 10:30
od asdf
TeslaPC píše:Stáhnul jsem si emulátor, a jdu to tam zkusit načítat a jsem zvědav co na tom bude.
Ten soubor je sice binární, ale většinou je to text a dokonce i oddělovače řádek jsou jako ve Windows. Takže na to můžeš koukat normálně textovým editorem.
Akorát s tím emulátorem bude ještě trošku problém. On neumí načíst textový soubor. Umí jen wav a nějakej cws, což je taky asi něco jako wav. Ten původní wav to ale nenačte, to už jsem zkoušel. Takže jediné, co mě napadá, že bych napsal program, který to z toho textového souboru zase převede do wav, ale už čistého, který to bude umět načíst.
Napsal: 20 črc 2023, 13:41
od asdf
Tak do toho csw pro emulátor se to dá převést pomocí:
https://github.com/omikron88/iq-151/tree/master/Txt2Csw/dist
Našel jsem to na:
https://oldcomp.cz/viewtopic.php?f=48&t=5129
Program pro převod do wav jsem sice napsal, ale ten výsledný wav to stejně nenačte. Nevím proč.
Napsal: 20 črc 2023, 16:02
od asdf
Tak už asi vím, proč se ten můj wav nenačte. Jak dával rnbw ten odkaz:
https://www.root.cz/clanky/graficke-moznosti-a-programove-vybaveni-iq-151/
tak tam se píše, že od určité verze mělo IQ jiný formát záznamu na kazetu, který je nezávislý na polaritě signálu. A ta kazeta je nahraná ve formátu nezávislém na polaritě. Kdežto ten emulátor chce formát závislý na polaritě. Takže ta kazeta je asi z nějakého novějšího stroje, zatímco ten emulátor emuluje starší stroj. Snad budou teda ty programy fungovat.
Zatím jsem tedy našel jeden (ten videostop), který fungovat nebude - uprostřed se ho nepovedlo načíst, jsou tam nějaké divné znaky. Možná by to šlo doprogramovat.
Napsal: 20 črc 2023, 16:41
od PotPalo
Nemôže to byť tým že ten súbor je stereo? Skúsil by som ho prekonvertovať do mono. Prípadne otočiť polaritu nejakým programom.
Napsal: 20 črc 2023, 17:38
od asdf
To jsem sice nezkoušel, ale řekl bych, že je to opravdu jiný formát zápisu. Když se koukneš na ten konvertor Txt2csw, tak se tam dá vlézt do adresáře ../src, kde je zdrojový kód. A tam je vidět, že to zapisují jinak. Oni dělají jedničku jako 01 a nulu jako 10. Kdežto ta kazeta je nahraná tak, že nula je 00 nebo 11 a jednička je 01 nebo 10. Tak jestli něco nepřehlížím, tak je to vážně nahrané jinak.
Napsal: 20 črc 2023, 20:45
od asdf
Tak jsem trošku opravil ten videostop.
Napsal: 21 črc 2023, 18:29
od LADER
Na Atari (TURBO 2000) to bylo tak, že zaváděcí tón měl periodu 600 taktů (3 kHz), následoval start bit o délce 180 taktů (10 kHz) a pak šli data. Nula měla délku 480 taktů (3750 Hz) a jednička 240 taktů (7500 Hz), a na konci kontrolní součet. Nevím jestli jednotlivé bajty měli kontrolní součet (ale myslím si že ne). Takty se počítaly podle délky cyklů instrukcí. A ty byly zase závislé na frekvenci procesoru CPU6502, která byla konstantní (myslím 1.79 MHz).