OldComp.cz
http://www.oldcomp.cz/

Emulátory Čs počítačů v Javě
http://www.oldcomp.cz/viewtopic.php?f=147&t=8104
Stránka 47

Autor:  stamil [ 26.09.2021, 14:53 ]
Předmět příspěvku:  Re: Emulátory Čs počítačů v Javě

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.

Autor:  vanthomas [ 28.09.2021, 04:36 ]
Předmět příspěvku:  Re: Emulátory Čs počítačů v Javě

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é ;)

Autor:  l00k [ 28.09.2021, 11:15 ]
Předmět příspěvku:  Re: Emulátory Čs počítačů v Javě

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é

Autor:  vanthomas [ 28.09.2021, 16:54 ]
Předmět příspěvku:  Re: Emulátory Čs počítačů v Javě

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

Autor:  stamil [ 08.10.2021, 16:14 ]
Předmět příspěvku:  Re: Emulátory Čs počítačů v Javě

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.

Autor:  shark800 [ 08.10.2021, 17:03 ]
Předmět příspěvku:  Re: Emulátory Čs počítačů v Javě

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

Autor:  stamil [ 08.10.2021, 18:10 ]
Předmět příspěvku:  Re: Emulátory Čs počítačů v Javě

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

Autor:  vanthomas [ 08.10.2021, 19:34 ]
Předmět příspěvku:  Re: Emulátory Čs počítačů v Javě

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.

Autor:  l00k [ 08.10.2021, 21:40 ]
Předmět příspěvku:  Re: Emulátory Čs počítačů v Javě

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

Autor:  vanthomas [ 09.10.2021, 01:30 ]
Předmět příspěvku:  Re: Emulátory Čs počítačů v Javě

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 7290 krát ]

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

Autor:  l00k [ 09.10.2021, 18:15 ]
Předmět příspěvku:  Re: Emulátory Čs počítačů v Javě

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

Autor:  l00k [ 11.10.2021, 09:08 ]
Předmět příspěvku:  Re: Emulátory Čs počítačů v Javě

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.

Autor:  stamil [ 12.10.2021, 20:58 ]
Předmět příspěvku:  Re: Emulátory Čs počítačů v Javě

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.

Autor:  omikron [ 05.11.2021, 16:22 ]
Předmět příspěvku:  Re: Emulátory Čs počítačů v Javě

Na GitHubu je rozdělaný emulátor TNS GC. Projde úvodním testem systému, ale než naskočí prompt, tak cyklí v nějakém povelu WD2797.
Přes léto jsem na něm nedělal a teď nemůžu přijít na to, kde je chyba.

https://github.com/omikron88/TNS

Bootuje se tak, že si v Open menu vybereš, která disketa má kde být. Diskety jsou .8sd
A v boot promptu se dá F a číslo mechaniky počínaje 0.

Autor:  chip128 [ 07.11.2021, 12:57 ]
Předmět příspěvku:  Re: Emulátory Čs počítačů v Javě

Tak funguje presne jak jsi popsal.
Příloha:
Untitled-1.jpg
Untitled-1.jpg [ 65.81 KiB | Zobrazeno 6723 krát ]

Kdyby se Ti to podarilo dotahnout do funkcniho stavu bylo by to super.
Mam toma mraky 8sd disket a z nostalgie zaparit TNS gamesu
nebo nahodit skolni Turbo Pascal by potesilo :-)

Chip

Stránka 47 Všechny časy jsou v UTC + 1 hodina [ Letní čas ]
Powered by phpBB® Forum Software © phpBB Group
http://www.phpbb.com/