OldComp.cz
https://oldcomp.cz/

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

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

Chtěl jsem trošku přispět testováním TNS emulátoru.

- Disky čte
- Grafika je správně, ale nějaká posunutá a pak ty hry vytuhnou :-(
- Nevím jak napsat podtržítko _

Zde ukazky: DIR, RAIDERS, KAMENO, CIHLICKY

Příloha:
Untitled-1.jpg
Untitled-1.jpg [ 147.28 KiB | Zobrazeno 2691 krát ]

Příloha:
Untitled-2.jpg
Untitled-2.jpg [ 24.48 KiB | Zobrazeno 2691 krát ]

Příloha:
Untitled-3.jpg
Untitled-3.jpg [ 55.33 KiB | Zobrazeno 2691 krát ]


Chip

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

zajímavé... pohledáme chybku, v zobrazení to spíš nebude...

emulátor umí zatím pouze TNS GC, a máme CP/M systém ve verzích 2.31-2.34 (s několika podverzemi)
uvedené hry jsou na disketě kde je systém 2.27 - ten byl určen pro TNS SC a jiné funkce na práci se semigrafikou.
je to navíc naprogramované v Pascalu, takže najít něco v kódu je dost problém - ale viděl bych to tak, že tyto hry používají ne plnou grafiku ale semigrafiku a služeb starého CP/M případně nějaké slušovické grafické knihovny pro semigrafiku.


podtržítko jsem chvíli v těch číslech podle http://wiki.oldcomp.cz/index.php?title= ... l%C3%A1ves hledal, ale je tam :)
píše se Ctrl+Shift+mezera

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

TNS update: Zkušební podpora wap HDD.

Nutno před bootováním vybrat image HDD v open menu. Disk se po startu systému objeví jen, když byla vybraná image disku.
v archivu demohdd.zip je ukázkový disk, s tím Zdeňkovým obrázkovým demem. Rozpakovat pokud možno tam, kde máte obrazy disket.

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

jen upřesním, disk je vytvořený a funguje správně pod CPM 2.3x, TNS DOS ho sice taky vidí, ale pod ním nejde spustit to demo

pro spuštění dema s 35 obrázky je třeba dát příkazy:
G: (písmenko vypíše zavaděč jako WAP nebo jako Winchester on APK)
USER 1
DEMOZ

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

l00k:
Mám dotaz. Ví se něco o řídících kódech pro obrazovku? Kdybych třeba chtěl udělat instalaci WS.

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

PŘÍLOHA 6 - POPIS ŘÍDICÍCH KÓDŮ ALFANUMERICKÉHO DISPLEJE

Kód Dek Význam

00H 0 Prázdný kód. - Kód je ignorován a je zaručeno, že nebude použit jako řídicí kód displeje.

01H 1 Rezervovaný kód. - Kód je v současné verzi ignorován.

02H 2 Kurzor do levého horního rohu okénka (HOME). - Kurzor se přesune do levého horního rohu právě nastaveného okénka.

03H 3 Rezervovaný kód. - Kód je v současné verzi ignorován.

04H 4 Nastavení okénka na obrazovce. - Následujících 6 kódů se považuje za definiční hodnoty okénka. Báze všech kódů je 1, nejvyšší bit se ignoruje.
1. sloupcový posuv počátku okénka
2. řádkový posuv počátku okénka
3. sloupec pozice kurzoru v okénku
4. řádek pozice kurzoru v okénku
5. počet sloupců okénka
6. počet řádků okénka

První dva kódy tedy definují souřadnice levého horního rohu okénka, další dva pozici kurzoru v okénku a další dva celkové rozměry okénka. Nejsou-li parametry v pořádku (okénko přesáhne okraj displeje), nastaví se základní okénko (plocha celého displeje) a kurzor se umístí do levého horního rohu.

Příklad: Kódy 16,5,1,5,30,11 nastaví okénko
vymezené na displeji řádky 5-15,
sloupci 16-45, kurzor bude na pozici
5,1 okénka, resp. 9,16 displeje.

05H 5 Nastavení barvy.
Následující kód se považuje za definiční hodnotu barvy pozadí (papíru) a popředí (inkoustu). Bity 0-3 definují barvu pozadí (00-0FH), bity 4-7 barvu popředí (00-0FH).

0 = černá 1 = černá
2 = tmavě modrá 3 = modrá
4 = tmavě červená 5 = červená
6 = tmavě fialová 7 = fialová
8 = tmavě zelená 9 = zelená
A = tmavě tyrkysová B = tyrkysová
C = tmavě žlutá D = žlutá
E = šedá F = bílá

Příklad: Kód 80H nastaví černou barvu pozadí
a tmavě zelenou barvu popředí.

U semigrafického displeje (modul ITK) tento kód nemá žádný účinek.

06H 6 Nastavení barvy a tvaru kurzoru.
Následující dva kódy se považují za definiční hodnoty barvy a tvaru kurzoru.

1. barva kurzoru (definice - viz kód 05H)
2. tvar kurzoru (kód znaku 0 - 255)

Příklad: Kódy 3DH 58H nastaví jako kurzor modré písmeno X na žlutém pozadí

U semigrafického displeje (modul ITK) je účinný pouze 2. kód (tvar).

07H 7 Zvukový signál (BELL).
Kód způsobí vygenerování krátkého zvukového signálu.

08H 8 Kurzor o jednu pozici vlevo (BS).
Kurzor se přesune na předcházející pozici. Je-li na začátku řádku, přesune se na konec předchozího řádku. Je-li na začátku okénka, přesune se na poslední znak okénka.

09H 9 Kurzor na nejbližší tabelační pozici (TAB).
Kurzor se přesune na nejbližší pozici, která je po odečtení jedničky dělitelná beze zbytku osmi (9,17,25,...). Je-li již na některé tabelační pozici, přesune se na další pozici.
Leží-li následující tabelační pozice mimo rámec okénka, přesune se kurzor na začátek následujícího řádku s podobným účinkem jako kód 0AH.

0AH 10 Kurzor o řádek níž (LF).
Kurzor se přesune na následující řádek. Je-li
na posledním řádku okénka, pak při povoleném rolování zaroluje okénkem, jinak se přesune na první řádek.

0BH 11 Rezervovaný kód.
Tento kód je v současné verzi ignorován.

0CH 12 Výmaz okénka (CLEAR).
Kód způsobí výmaz obsahu právě nastaveného okénka, přemístí kurzor do levého horního rohu okénka a povolí zobrazování kurzoru.

0DH 13 Kurzor na začátek řádku (CR).
Kurzor se přesune na začátek řádku v právě nastaveném okénku.

0EH 14 Zapnutí echa klávesnice.
Kód zapne zvukovou signalizaci stisku klávesy.

0FH 15 Vypnutí echa klávesnice.
Kód vypne zvukovou signalizaci stisku klávesy.

10H 16 Přímý výstup na displej (DLE).
Následující kód se zapíše přímo do videoram. Tímto způsobem je možné zobrazovat kódy, které by jinak byly považovány za řídicí (00H-1FH).

11H 17 Povolení zobrazování kurzoru.
Kód způsobí obnovení blikajícího kurzoru.

12H 18 Zákaz zobrazování kurzoru.
Kód způsobí potlačení blikajícího kurzoru.

13H 19 Nastavení rolovacího režimu.
Bude-li kurzor na posledním řádku okénka, pak při posunu kurzoru o řádek níž se kurzor nepohne, ale okénko zaroluje spolu s výmazem posledního řádku.

14H 20 Nastavení stránkového režimu.
Bude-li kurzor na posledním řádku okénka, pak při posunu kurzoru o řádek níž se kurzor přesune na první řádek okénka beze změny obsahu okénka.

15H 21 Vložení řádku.
Kód způsobí vložení prázdného řádku do okénka, a to takovým způsobem, že řádky za řádkem s kurzorem (včetně) se posunou dolů, přičemž pozice kurzoru se nemění (stojí na vloženém řádku). Poslední řádek okénka se ztrácí.

16H 22 Výmaz do konce řádku.
Kód způsobí výmaz všech znaků od kurzoru (včetně znaku pod kurzorem) do konce řádku okénka.

17H 23 Výmaz řádku.
Kód způsobí výmaz řádku, na kterém stojí kurzor, a to takovým způsobem, že řádky, které leží pod řádkem s kurzorem, se posunou nahoru, přičemž poslední řádek okénka se vymaže. Pozice kurzoru se nemění.

18H 24 Kurzor o řádek výš.
Kurzor se přesune na předcházející řádek. Je-li na prvním řádku, přesune se na poslední.

19H 25 Zapnutí překódování bílých kláves.
Kód způsobí, že kódy bílých kláves klávesnice budou překódovány na příslušné kódy znaků s diakritikou.

1AH 26 Kurzor o jednu pozici vpravo.
Kurzor se přesune na následující pozici. Je-li na konci řádku, přesune se na začátek dalšího řádku s podobným účinkem jako kód 0AH.

1BH 27 Adresace kurzoru.
Následující dva kódy se považují za definiční hodnoty nové pozice kurzoru v rámci okénka.

1. číslo řádku (1 - počet řádků okénka)
2. číslo sloupce (1 - počet sloupců okénka)

Nejvyšší bit obou kódů se ignoruje. Pokud některá hodnota přesahuje rámec nastaveného okénka, je ignorována.

Příklad: Kódy 1,129 nastaví kurzor do levého horního rohu okénka.

1CH 28 Nastavení stránky pro zápis a zobrazování.
Následující kód se považuje za definiční hodnotu stránky videoram.

kód: 00H 01H 10H 11H
stránka pro zápis: dolní dolní horní horní
stránka pro zobr.: dolní horní dolní horní

Příklad: Kód 01H způsobí, že výstupy půjdou nadále do dolní stránky videoram, ale zobrazovat na obrazovce se bude stránka horní.

U semigrafického displeje (modul ITK) nemá tento kód žádný účinek.

1DH 29 Výmaz bufferu klávesnice.
Kód způsobí vyčistění bufferu klávesnice.Lze použít např. při výpisu otázky, na kterou nesmí být odpověď vložena před jejím výpisem.

1EH 30 Vypnutí překódování bílých kláves.
Kód způsobí, že kódy bílých kláves nebudou překódovány na kódy znaků s diakritikou.

1FH 31 Reset displeje.
Tento kód nastaví základní okénko, základní videostránku a umístí kurzor do levého dolního rohu (bez výmazu displeje a změny barvy).
Zatím nelze zaručit, že v definici tohoto kódu nedojde k drobným změnám.

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

Nová verze TNS. Emulace semigrafické karty ITK/TVD. Zvolením téhle karty se emulátor přepne na TNS SC, včetně boot ROM. Volba baravný - černobílý displej volí bílou nebo zelenou obrazovku.
Do diskety s demy přidán Karel pro TNS. Pozor, funguje jen s ITK, na TNS GC padne na tlamu.
Pokud budete zkoušet vlastní obrazy disket, ne všechny verze systému fungují na TNS SC.

Věděli jste, že emulátory v Javě chodí i v Linuxu a na Raspberry Pi?
Kód:
sudo apt install openjdk-11-jre


spustit klinutím na .jar nebo
Kód:
java -jar jarfile.jar


Na Pi4 je nutné pořádně chladit CPU a RAM, nalepovací chladič 2x2cm nestačí, multimediální krabička vyzařující teplo celým povrchem je OK.

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

Mohl bych poprosit o radu jak bootovat v rezimu ITK ?

Po spusteni sice vidim D2>
at tam pisu F0 nebo cokoliv jineho boot se nespusti.
Pokud je to obecne znama vec, omluvte neznalost BFU.

Diky

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

Počítač SC nezná hustotu F.
Pokud chci bootovat ze SD mechaniky číslo 0, zadám S0.
U GC si počítač detekuje hustotu sám, tam se zadává F.

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

z manuálu:

1. Zavedení systému na TNS-GC
=============================
U grafického počítače TNS-GC se systém zavede stiskem klávesy [F] (floppy) následovaným stiskem klávesy s číslem diskové jednotky, ve které je systémová disketa. Například pro jednotku 0 je to sekvence kláves:

[F] [0]

2. Zavedení systému na TNS-SC
=============================
U standardního počítače TNS-SC se systém zavádí podle hustoty záznamu na systémové disketě. Jde-li o disketu s jednoduchou hustotou záznamu, zavede se systém stiskem klávesy [S] (single) následovaným stiskem klávesy s číslem
diskové jednotky, ve které je systémová disketa. Například pro jednotku 0 je to sekvence kláves:
[S] [0]
Jde-li o disketu s dvojnásobnou hustotou záznamu, pak se místo klávesy [S] použije klávesa [D] (double). Například pro jednotku 1 je to sekvence kláves:
[D] [1]

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

Opakovany test games v ITK:
Jiste zlepseni tu je:
Příloha:
01.jpg
01.jpg [ 19.85 KiB | Zobrazeno 1725 krát ]

Příloha:
02.jpg
02.jpg [ 21.24 KiB | Zobrazeno 1725 krát ]

Příloha:
03.jpg
03.jpg [ 23.96 KiB | Zobrazeno 1725 krát ]


Jede KAMENO a F1
CIHLICKY stale zmatek
RAIDERS nejede vubec (v GC naskocilo aspon neco)

Obecne vsechny hry, ktere jedou, jsou neuveritelne pomale.

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

Chipe, s čím porovnáváš rychlost? Pod jakým systémem se tyto hry mají spouštět? ví někdo? CP/M nebo TNS DOS? A když CP/M tak jaká verze? 2.2, 2.27 nebo 2.3x? Na čem ty hry původně vůbec běžely (ST/SC/GC) ?

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

Pošli mi někam image s programy, co chodí divně nebo vůbec ne.
Zdeněk Houška říkal, že mu zatím chodí vše co na reálném GC.

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

chip128 píše:
Obecne vsechny hry, ktere jedou, jsou neuveritelne pomale.


Dá se nastavit kolik T udělá procesor za jeden 50Hz televizní půlsnimek, nastavil jsem to podle schémat,
a u ITK ještě jak dlouho video indikuje, že je ve zpětném běhu a smí se přenášet data. To je nastaveno na 1000T, tvrdí to v manuálu ke kartě.
Nemáš vytížený procesor skoro na 100 procent? Java bohužel je dost náročná na výkon procesoru. Je to v podstatě interpretovaný byte kód. Něco na půl cesty mezi Basicem a strojovým kódem.

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

l00k píše:
Chipe, s čím porovnáváš rychlost? Pod jakým systémem se tyto hry mají spouštět? ví někdo? CP/M nebo TNS DOS? A když CP/M tak jaká verze? 2.2, 2.27 nebo 2.3x? Na čem ty hry původně vůbec běžely (ST/SC/GC) ?


Rychlost porovnavam subjektivne s tim co si pamatuju, kdyz jsem to ve Slusovicich v 1986 (nebo tak nejak) paril.
Testuju na i7/16 GB RAM, procesor vytizeny na 5-9%, RAM 10 GB volnych.
Tyto soubory mi myslim poslal DEX. Aby jsem s nema mohl pracovat v MyZ80 nahral jsem je na CPM disk.

Příloha:
02.ZIP [76.99 KiB]
39 krát


Neni na ni system. Proto bootuju z tnsdemo a tento img dam jako B:
Normalne pak s B muzu pracovat.
Pokud je tento zpusob spatny, mohl by to nekdo zkusit spravne ?
A pak nekam dat opraveny IMG ?

Diky

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