OldComp.cz

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

Prijdte se bavit!

Právě je 25.10.2021, 09:27

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




Odeslat nové téma Odpovědět na téma  [ Příspěvků: 58 ]  Přejít na stránku Předchozí  1, 2, 3, 4
Autor Zpráva
 Předmět příspěvku: Re: Emulátory Čs počítačů v Javě
PříspěvekNapsal: 26.09.2021, 14:53 
Offline
Kecálek

Registrován: 26.01.2019, 18:45
Příspěvky: 79
Bydliště: u Mělníka
Has thanked: 5 times
Been thanked: 204 times
Opraveno. Bylo to způsobeno přetečením počítadla taktů CPU. Počítadlo bylo typu integer, takže po 2 miliardách taktů došlo k přetečení.
Docházelo k tomu přibližně po 3 hodinách běhu.
Změnil jsem ho na long a teď už se to nestane. Opravená verze je na GitHubu.

omikron píše:
vanthomas píše:
Jeden bugreport :)
V rámci blbnutí s 3D grafem jsem zkusil i IQ a tahle verze http://www.oldcomp.cz/download/file.php?id=11632 v emulátoru po nějaké době vytuhne. Jestli počítám dobře, tak 38 vnějších cyklů proběhne, pak to vytuhne někde ve vnitřním...
Na reálném IQ to funguje.


no jo, ale čím by to mohlo být. Doufám, že není chyba v ROM Basicu.


Nahoru
 Profil  
 
 Předmět příspěvku: Re: Emulátory Čs počítačů v Javě
PříspěvekNapsal: 28.09.2021, 04:36 
Offline
Pan Generální

Registrován: 07.05.2014, 01:21
Příspěvky: 2099
Bydliště: Praha
Has thanked: 338 times
Been thanked: 465 times
Vyzkoušel jsem o čem vím že tuhlo - třeba Komenium šachy, nebo ten 3dgraf v basicu a všechno chodí. Začíná to být parádní emulátor, stejně jako Ondra :like:
Kdyby se ještě někdy časem u íkvéčka podařilo přidat diskety, aby šlo spustit CP/M bylo by to úplně dokonalé ;)

_________________
ZX80, ZX81, ZX Spectrum, ZX Spectrum +2, Didaktik M, PMD 85-1,2A,3, Olivetti Prodest PC 128, Acorn BBC Micro, PC-XT, Amiga 500


Nahoru
 Profil  
 
 Předmět příspěvku: Re: Emulátory Čs počítačů v Javě
PříspěvekNapsal: 28.09.2021, 11:15 
Offline
Radil

Registrován: 26.11.2018, 16:59
Příspěvky: 297
Bydliště: Holešov
Has thanked: 9 times
Been thanked: 39 times
Komenium šachy tuhnou i na originále :) je tam nějaká chyba v kódu...

Co se týče disketovky, v Javě to neudělám, ale můžu poskytnout kód v pascalu (lazarus) a přislušné know-how jak to udělat. Aby to fungovalo se všema verzema CP/M nebo pod AMOSem, tak je to potřeba udělat na úrovni řadiče a je to celkem jednoduché


Nahoru
 Profil  
 
 Předmět příspěvku: Re: Emulátory Čs počítačů v Javě
PříspěvekNapsal: 28.09.2021, 16:54 
Offline
Pan Generální

Registrován: 07.05.2014, 01:21
Příspěvky: 2099
Bydliště: Praha
Has thanked: 338 times
Been thanked: 465 times
Dobrá, tak alespoň netuhnou tolik :) Nechal jsem ho hrát samotného a doběhlo to do matu, v původní verzi to tuhlo během pár tahů...

_________________
ZX80, ZX81, ZX Spectrum, ZX Spectrum +2, Didaktik M, PMD 85-1,2A,3, Olivetti Prodest PC 128, Acorn BBC Micro, PC-XT, Amiga 500


Nahoru
 Profil  
 
 Předmět příspěvku: Re: Emulátory Čs počítačů v Javě
PříspěvekNapsal: 08.10.2021, 16:14 
Offline
Kecálek

Registrován: 26.01.2019, 18:45
Příspěvky: 79
Bydliště: u Mělníka
Has thanked: 5 times
Been thanked: 204 times
Díky Lookovi, který poskytl své know-how a pascalovský kód, se mi podařilo do java emulátoru IQ151 doplnit podporu modulu Disk2 (Floppy).
A díky Vantomasovu testovacímu úsílí se podařilo odladit několik chyb v emulátoru.
Oběma za to děkuji.
Novou verzi stahujte z GitHubu. A nezapomeňte na obrazy disket, které tam byly nově přidány.


Nahoru
 Profil  
 
 Předmět příspěvku: Re: Emulátory Čs počítačů v Javě
PříspěvekNapsal: 08.10.2021, 17:03 
Offline
Kecálek

Registrován: 28.07.2018, 07:55
Příspěvky: 83
Has thanked: 22 times
Been thanked: 53 times
Měl bych ještě prosbu - za nás co IQčko s flopynou nikdy neviděli (bez flopiny joo). Jak se s tím dělá? Předpokládám že z Basicu to nepůjde. Nenašla by se taková kraťonká kuchařka "Jak na to"?

Díky
Petr


Nahoru
 Profil  
 
 Předmět příspěvku: Re: Emulátory Čs počítačů v Javě
PříspěvekNapsal: 08.10.2021, 18:10 
Offline
Kecálek

Registrován: 26.01.2019, 18:45
Příspěvky: 79
Bydliště: u Mělníka
Has thanked: 5 times
Been thanked: 204 times
shark800 píše:
Měl bych ještě prosbu - za nás co IQčko s flopynou nikdy neviděli (bez flopiny joo). Jak se s tím dělá? Předpokládám že z Basicu to nepůjde. Nenašla by se taková kraťonká kuchařka "Jak na to"?

Díky
Petr


Ahoj,
disketovka se u IQ151 využívala hlavně v CP/M, ale lze ji provozovat také v Amosu.
V emulátoru lze spustit jak Felnet CP/M, tak Komenium (Variel)
Postup je následující.

1) Spustění FELNET
v Settings vybereš Monitor CP/M FEL zaškrtneš Autorun, main modul none, aux modul Disk2, 64kB RAM a volitelně Video64
po spuštění Monitoru počítač čeká na číslo mechaniky, takže vložíš disketu System-CPM.iqd do nulté mechaniky a stiskneš 0, nebo do první mechaniky a stiskneš 1.
Ptá se to na relokaci, dáš A a máš funkční CPM. Pokud si vkládal disketu v R/W módu, relokace se zapíše na disketu a příště se to na ni neptá.
Jinak je bez této volby zápis na disketu jen virtuální, tj. jen do RAM a po restartu je disketa zase jako nová.
Po spuštění CP/M můžeš vložit např.felnet_pascal.IQD image do jednotky 1 a v CP/M na ni přepnout pomocí B:, stejně jako se to dělá v DOSu na PC.
Tam pak můžěš zkusit zkompilovat nějaký pasalovský soubor pomocí
PASG ELIPS2
po kompilaci tě to navede ke spuštění. Mód obrazovky je 0 - to je jen poznámka ke spuštění ELIPS2.

2) Spustění VARIEL
v Settings vybereš Monitor CP/M Komenium, main modul none, modul Disk2, 64kB RAM a volitelně Video64, vložíš do nulté mechaniky Variel64k.iqd.
Po spuštění Monitoru se CPM spustí klávesovou zkratkou CTRL+BR, což je v emulátoru namapováno na CTRL+F6. A máš funkční CP/M.
Pak v podstatě platí to, co jsem napsal k Felnetu.

3) Amos
v Settings vybereš Amos zaškrtneš Autorun, monitor Standard, Disk2, 64kB RAM a volitelně Video64.
Vložíš disketu Amos - Graph.IQD (konverzi na floppy verzi udělal Look, díky mu:) do nulté mechaniky (v Amosu :D0:) a po spuštění můžeš prohlížet obsah diskety pomocí DIR, nebo si něco z diskety zkompilovat.
Takto:
Inicializace grafického modulu pomocí utility GRAPH na floppy D0
=:D0:GRAPH
Kompilace souboru z floppy D0 pomocí pascalovského compileru
=PAS :D0:ELIPS2
Spuštění zkompilovaného souboru z paměti
= ELIPS2

4) Jinak jde ještě z Variel32 CP/M spustit IQBasic a ukládat a načítat soubory z diskety pomocí kláves Ctrl+BR (F6)
Před spuštěním musí být v mechanice 0 Variel32.iqd a zaveden modul BASIC6 nebo G, pak se dá skočit do CP/M pomocí Ctrl+BR (F6) a v CP/M pak pomocí příkazu IQBasic spustit zavaděč, který zavede basic z modulu IQ151.
Poté kdykoliv v basicu stiskem Ctrl+BR (F6) vyvoláš menu pro load/save souboru.

V reálu jsem to nikdy neviděl, info mám jen díky psaní emulátoru.
Takže kdyby bylo něco špatně, dejte vědět.
Díky


Nahoru
 Profil  
 
 Předmět příspěvku: Re: Emulátory Čs počítačů v Javě
PříspěvekNapsal: 08.10.2021, 19:34 
Offline
Pan Generální

Registrován: 07.05.2014, 01:21
Příspěvky: 2099
Bydliště: Praha
Has thanked: 338 times
Been thanked: 465 times
Jenom bych doplnil, že není problém udělat si svoje image disket s nějakým dalším obsahem, pomocí výborného CIM od RM-TEAMu - https://pmd85.borik.net/wiki/CP/M_Image_Manager
Íkvéčko používá běžné jednostranné osmipalcové diskety, v CIM jsou jako "standard IBM 8" jednostranne" s příponou "CPM".
Formát disket je stejný i v Amosu, akorát je třeba myslet na to, že Amos používá dva bajty na uložení startovací adresy, jméno souboru tedy může být jen 6+3.

_________________
ZX80, ZX81, ZX Spectrum, ZX Spectrum +2, Didaktik M, PMD 85-1,2A,3, Olivetti Prodest PC 128, Acorn BBC Micro, PC-XT, Amiga 500


Nahoru
 Profil  
 
 Předmět příspěvku: Re: Emulátory Čs počítačů v Javě
PříspěvekNapsal: 08.10.2021, 21:40 
Offline
Radil

Registrován: 26.11.2018, 16:59
Příspěvky: 297
Bydliště: Holešov
Has thanked: 9 times
Been thanked: 39 times
parádní práce, testuju jak o život už chvilku a je to naprostá bomba :)

jen bych dodal že disketovka bývala rarita i v době vzniku IQček. Prakticky se dodávala jen tam, kde se zároveň budovala síť a byla jedna bedna dvojmechanika pro celou učebnu a záleželo na variantě sítě jak se to potom dál používalo. Pamatuju se jak to u nás na gymplu v roce 1988 o prázdninách nainstalovali a my na to v září čuměli jak telata :) Pravda na tiskárnu prachy nezbyly... Šahat na IQčko s disketovkou bylo přísně zakázáno a diskety měly asi cenu zlata protože jsme je jako studenti ani nezahlédli :)

PASCG je vlastně jen CP/M verzí a modernizací Pascalu v OS AMOS, na Sinclairech se pak prodával v mikrobázi jako DC-Pascal (Drózd-Couf jako autoři 8080 verze, pod vedením Rudolfa Kryla). Tak samo programy EDIT(32 nebo 64) jsou zase jen převedené z AMOSu do CP/M. Tím že už nebylo omezení nějakých 11kB na překladač PASC.COM a PASCG.COM mohl obsahovat víc hlášek a všechna dostupná rozšíření.

Na FEL vznikl pro jejich potřebu ještě asi jeden klon Pascalu - F-Pascal nebo Pascal-F, ve kerém psali systémové programy nezávislé na knihovnách DC Pascalu (tudíž kratší COM soubory). Tento jsem bohužel nikde nenašel, jen zmínku na nějakém fóru kde byl seznam disket pro CP/M....


Nahoru
 Profil  
 
 Předmět příspěvku: Re: Emulátory Čs počítačů v Javě
PříspěvekNapsal: 09.10.2021, 01:30 
Offline
Pan Generální

Registrován: 07.05.2014, 01:21
Příspěvky: 2099
Bydliště: Praha
Has thanked: 338 times
Been thanked: 465 times
l00k píše:
programy EDIT(32 nebo 64) jsou zase jen převedené z AMOSu do CP/M.

Tady bych si dovolil možná tak trochu úplně nesouhlasit :) (https://www.youtube.com/watch?v=rpHPo8Mb9wk)
EDIT32 a EDIT64 jsou jasná kopie Wordstaru, jak vzhledem tak ovládáním. Vlevo WS, vpravo EDIT64. Podobnost čistě náhodná...
Příloha:
ws_ed.jpg
ws_ed.jpg [ 179.16 KiB | Zobrazeno 339 krát ]

Editor v Amosu taky není špatný, ale podobnost tam fakt moc nevidím, i ovládání je dost jiné...

_________________
ZX80, ZX81, ZX Spectrum, ZX Spectrum +2, Didaktik M, PMD 85-1,2A,3, Olivetti Prodest PC 128, Acorn BBC Micro, PC-XT, Amiga 500


Nahoru
 Profil  
 
 Předmět příspěvku: Re: Emulátory Čs počítačů v Javě
PříspěvekNapsal: 09.10.2021, 18:15 
Offline
Radil

Registrován: 26.11.2018, 16:59
Příspěvky: 297
Bydliště: Holešov
Has thanked: 9 times
Been thanked: 39 times
tak mi asi selhává paměť :) nebo jsme tehdá měli jiný editor než jsou tyto poslední verze... pamatuju se že vypadal úplně stejně jak ten v amosu, ale spouštěli jsme ho přes felnet...

na github jsem přihodil do sekce DOC tři příručky k Amosu/Pascalu


Nahoru
 Profil  
 
 Předmět příspěvku: Re: Emulátory Čs počítačů v Javě
PříspěvekNapsal: 11.10.2021, 09:08 
Offline
Radil

Registrován: 26.11.2018, 16:59
Příspěvky: 297
Bydliště: Holešov
Has thanked: 9 times
Been thanked: 39 times
poladil jsem všechny programy na disketě pascal-felnet aby šly spustit tak zkoušejte ;)
program SPIGOT počítá PI na 262 desetinných míst (pozor chvilku to zabere), taktéž obě verze Madlebrotova fraktálu trvají neskutečně dlouho ! (při normální rychlosti to počítalo přes 2 hodiny)

Kdyby někoho lákalo psát pod Amosem a pak kompilovat pod CP/M tak pozor na formát souborů. Amos komprimuje mezery a jím editovaný soubor nelze nikde použít s výjimkou souborů které mají příponu .Hxx .
Takže po napsání poladění programu, je potřeba tento zapsat na disketu (0) s příponou .H(cokoliv 2 znaky) příkazem :
COP MUJPRG,:D0:MUJPRG.H

a pak už pod CP/M ho přejmenovat na správné:
REN MUJPRG.PAS=MUJPRG.H

nedoporučuju dávat delší název než 6 znaků, protože pak ty soubory nejdou vidět po Amosem.


Nahoru
 Profil  
 
 Předmět příspěvku: Re: Emulátory Čs počítačů v Javě
PříspěvekNapsal: 12.10.2021, 20:58 
Offline
Kecálek

Registrován: 26.01.2019, 18:45
Příspěvky: 79
Bydliště: u Mělníka
Has thanked: 5 times
Been thanked: 204 times
Look mi poslal několik nápadů, jak vylepšit emulátor IQ151. Proto jsem přidal funkce copy + paste. Jsou dostupné buďto z menu, nebo pomocí kontextové nabídky myši.
Jedná se sice jen o prosté kopírování z a do VRAM v módech Video32 a Video64, ale např. při psaní pascalovských kódů to může pomoct.
Taky jsem předělal volbu pro změnu rychlosti emulátoru.
Původně se měnila rychlost celého emulátoru, což už u více než 4 násobného zrychlení naráželo na limity,
nyní se mění jen rychlost CPU, takže to jde zrychlit klidně i 40x. Pak už ani vykreslování Madlebrotova fraktálu není problém.
Stahujte z GitHubu.


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

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 1 návštěvní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