OldComp.cz

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

Registrace na OCP IV ZDE!

Právě je 17 říj 2018, 19:34

Všechny časy jsou v UTC + 1 hodina




Odeslat nové téma Odpovědět na téma  [ Příspěvků: 10 ] 
Autor Zpráva
 Předmět příspěvku: Popis SCREENu pro Sam?
PříspěvekNapsal: 06 říj 2018, 14:47 
Offline
Kecálek

Registrován: 21 říj 2013, 08:25
Příspěvky: 242
Has thanked: 95 times
Been thanked: 87 times
Přidávám si do svého prohlížece podporu pro Sam, ale nějak mi není jasné jak je ten obraz organizovaný.

Co asi vím :)
Mode 1 = ZX Spectrum kompatibilní 256x192
Mode 2 = Timex Hi-color 8*1 compatibilní ? 256x192
Mode 3 = jak jsem pochopil to je spíše textový rezim 512x192
Mode 4 = 256x192x4bit Organizovaní jako 192 řádků po 128 bajtech a jeden bajt reprezentuje 2bity obr a barvu?
1) Co je obraz a co barva?
2) každý obr (mode 4) má na konci 41 bajtů asi barevná tabulka?

Mohl by mi to nějaký zkušený uživatel Sama osvětlit...díky


Nahoru
 Profil  
 
 Předmět příspěvku: Re: Popis SCREENu pro Sam?
PříspěvekNapsal: 06 říj 2018, 15:28 
Offline
Kecálek

Registrován: 12 kvě 2013, 21:24
Příspěvky: 228
Has thanked: 0 time
Been thanked: 48 times
Citace:
Přidávám si do svého prohlížece podporu pro Sam, ale nějak mi není jasné jak je ten obraz organizovaný.

Co asi vím :)
Mode 1 = ZX Spectrum kompatibilní 256x192
Mode 2 = Timex Hi-color 8*1 compatibilní ? 256x192


Ne-e.
Nerespektuje "napřeskáčku" adresování Spectra, ale adresuje postupně.
Má ovšem, jako Timex, oddělený blok pixelů a blok atributů. Je mezi nimi ovšem 2 KiO mezera.

Citace:
Mode 3 = jak jsem pochopil to je spíše textový rezim 512x192


Ne-e.
Je to režim s dvojnásobným horizontálním rozlišením (proti módu 4 a dalším) za cenu polovičního prostoru pro kódování barvy (proti módu 4 jen 4 barvy z palety 128 místo 16 barev z palety 128).
Jeden oktet nese informaci o 4 pixelech.

Citace:
Mode 4 = 256x192x4bit Organizovaní jako 192 řádků po 128 bajtech a jeden bajt reprezentuje 2bity obr a barvu?


Ne-e.
Mode 4 má barvu kódovanou 4 bity (0-15), 16 možných barev (resp. položek z palety 128 barev).
Jeden oktet tedy nese informaci o dvou pixelech.
VRAM je v tomto módu organizována lineárně.

Citace:
1) Co je obraz a co barva?


Pixely a atributy jsou jen v režimech 1 a 2.
Režimy 3 a 4 kódují co pixel, to samostatná barva.

Citace:
2) každý obr (mode 4) má na konci 41 bajtů asi barevná tabulka?


Tabulka palety by měla být jen 16 bajtů.
Ale záleží na formátu, co máš - superSCREEN$ teba přidává hlavičku 128 bajtů.

Doporučuji technický manuál:
https://sam.speccy.cz/systech/sam-coupe ... n_v3-0.pdf


Nahoru
 Profil  
 
 Předmět příspěvku: Re: Popis SCREENu pro Sam?
PříspěvekNapsal: 06 říj 2018, 16:15 
Offline
Pan Štábní
Uživatelský avatar

Registrován: 11 čer 2013, 14:27
Příspěvky: 1520
Has thanked: 963 times
Been thanked: 259 times
Je to takto:

Mód 1 je spektrácký, tj. 256x192 bodů a 32x24 buněk se 2 barvami z celkových 16.
Mírné vylepšení je v tom, že do jakékoliv z pozice 16 barev lze dát libovolnou z celkového počtu 128 barev, tedy mít nejen 15 spektráckých (neb zxs-černá je v jasu stejná).
Někdy se to plete, hovoří se o paletě a není jasné, zda o obrazové paletě 16 barev či o celkové paletě 128 barev.

Mód 2 je podobný, s atributy v rastru 32x192, tj. 6144 obrazové a 6144 atributové paměti. Lineární, pixely, resp. bajty jdou pěkně za sebou.
Poukování do obrazové paměti si lze po resetu vyzkoušet POKE od adresy 507904 (pak lze se začátkem obrazu šoupat).
V tomto módu jsou atributy umístěny až 8192 bajtů od bitmapy. Čili POKE 507904,pixelový-bajt a pomocí POKE 507904+8192,barvy lze prvních 8 pixelů obarvit.

Mód 3 je klasická a plnohodnotná, lineárně uspořádaná grafika, ale jen s málo, totiž 4 barvami.
Už žádné atributy, barvy jsou přímo v pixelu a podle tohoto množství barev se vejde pixelů do bajtu. Zde jeden bajt uchovává 4 pixely aneb 2 bity tvoří a barví pixel. Viz https://sam.speccy.cz/gfxm3.html
Textový mód se mu říká, protože v něm listing a borlandovský desktop v 85x24 nebo 64x24 znacích vypadá profi :-) Příkazem CSIZE si lze vyzkoušet i jiné výšky, např. CSIZE 8,10 nebo CSIZE 6,7, v MasterBASICu lze měnit i šířky znaků.

Mód 4 má na rozdíl od předchozího 16 barev. Tedy jeden bajt určuje dva pixely, jeden pixel potřebuje 4 bity.

Maximální počet barev v jednotlivých módech (4 nebo 16 barev) znamená především to, s kolika barvami se běžně počítá na jednom řádku.
Programově lze dostat barev na obrazovku více, v SAM BASICu lze rychle dvě barvy v jedné barvové pozici střídat a nastavit i rychlost tohoto blikání. A především lze měnit od libovolné řádky barvu nebo i více barev. Tyhle basicové možnosti se ukládají do SCREENů, pracuje se tedy nejen s paletou 16 pozic (PALETTE TABLE), ale i se změnami (LINE INTERRUPT COLOUR TABLE).

Samíkovi lze vnutit i více barev přímo na řádku, ale tohle už basic nepodporuje, chce to časování a žralo by to hodně strojového času. Tuším, že SHAMVIEV pracuje s 32 barvami na řádek.
Po řádcích i přímo na nich lze přepínat mezi graf. módy - něco umí MasterBASIC a pár utilit pro modeswitching, viz vlevo na https://sam.speccy.cz/coding.html
Ale tyhle libůstky už ve standardních SCREENech nejsou.

Jestli jde o to, podporovat klasické SCREENy, pak stačí následující info:
https://sam.speccy.cz/systech/sam-coupe ... n_v3-0.pdf
https://sam.speccy.cz/basic/sam-basic_c ... _guide.pdf
Jen je třeba počítat s tím, že obrázek může občas mít více než 16 barev a že MasterBASIC někdy ukládá na disketu obrazovky spakované (má 3 stupně - buď žádná, mírná nebo ultra komprese).


Nahoru
 Profil  
 
 Předmět příspěvku: Re: Popis SCREENu pro Sam?
PříspěvekNapsal: 06 říj 2018, 17:03 
Offline
Pan Štábní
Uživatelský avatar

Registrován: 11 čer 2013, 14:27
Příspěvky: 1520
Has thanked: 963 times
Been thanked: 259 times
V příloze diskimage s obrázky se 16 a 32 barvami.
Např. s pomocí DISK MANAGERu či SCADM je patrno, že uložené screeny mají rozdílnou velikost.
Generující program je taky na disketě.


Přílohy:
basic16and32colors.mgt.7z [1.31 KiB]
11 krát
basic32and16colors.png
basic32and16colors.png [ 10.42 KiB | Zobrazeno 276 krát ]
Nahoru
 Profil  
 
 Předmět příspěvku: Re: Popis SCREENu pro Sam?
PříspěvekNapsal: 06 říj 2018, 17:11 
Offline
Kecálek

Registrován: 18 říj 2014, 22:10
Příspěvky: 182
Has thanked: 12 times
Been thanked: 41 times
Pozerám, že mi odpoveď dosť trvá, ale niečim prispejem.

Mode 1 = 256x192 ZX Spectrum kompatibilný (Scr=6144 bytes, Atr=768 bytes) 16 farieb zo 128.
Mode 2 = 256x192 Atribút je 8x1 pixel. (Scr=6144 bytes, Atr=6144 bytes) 16 farieb zo 128. V pamäti je uloženy lineárne a AdrAtr=&2000+AdrScr.
Mode 3 = 512x192x2bit (24576 bytes) 4 farby zo 128.
Mode 4 = 256x192x4bit (24576 bytes) 16 farieb zo 128.

Mode 1 a 2 môže byť na začiatku ľubovolnej stránky základnej pamäte 512KB.
Mode 3 a 4 musí byť na začiatku párnej stránky.
Jeden bajt obrazovky obsahuje 2 pixle v mode 4 alebo 4 pixle v mode 3, najvyššie bity sú pre pixel vľavo, najnižšie pre pixel vpravo.
Napríklad v mode 4 bajt z obrazovky s hodnotou &78 znamená pixel s farbou 7 vľavo a pixel s farbou 8 vpravo.
V mode 3 je asi chybička (inak si to neviem vysvetliť) a tak je prehodený význam bitov pre hodnotu farby, takže bajt s hodnotou &1B znamená 4 pixle s farbou 0,2,1,3.

"každý obr (mode 4) má na konci 41 bajtů" to platí len pre obrázky bez zmeny palety.
Inak je to 40 bajtov zo systému z adresy &55D8 PALTAB, plus 1 bajt z &5600 LINICOLS čo je len koncová značka tuším &FF (riadok môže byť len 0 až 191). Inak prerušenie na riadku sa vykoná na konci predchádzajúceho riadku a to platí aj pre riadok 0.
Tých 40 bajtov je:
16 bajtov paleta farieb od 0 do 15
4 bajty nejaká paleta farieb pre mode 3
16 bajtov alternatívna paleta farieb pre striedanie paliet
4 bajty nejaká alternatívna paleta pre mode 3


Nahoru
 Profil  
 
 Předmět příspěvku: Re: Popis SCREENu pro Sam?
PříspěvekNapsal: 06 říj 2018, 17:27 
Offline
Kecálek

Registrován: 18 říj 2014, 22:10
Příspěvky: 182
Has thanked: 12 times
Been thanked: 41 times
SCjoe píše:
Tuším, že SHAMVIEV pracuje s 32 barvami na řádek.

Maximálne 11 farebných zmien na riadok (od farby 15 dole), ale SAM zvládne 13 a s FastRam 24.


Nahoru
 Profil  
 
 Předmět příspěvku: Re: Popis SCREENu pro Sam?
PříspěvekNapsal: 06 říj 2018, 17:46 
Offline
Pan Štábní
Uživatelský avatar

Registrován: 11 čer 2013, 14:27
Příspěvky: 1520
Has thanked: 963 times
Been thanked: 259 times
Antony/DTA píše:
V mode 3 je asi chybička (inak si to neviem vysvetliť) a tak je prehodený význam bitov pre hodnotu farby, takže bajt s hodnotou &1B znamená 4 pixle s farbou 0,2,1,3.

Vida. Nechápal jsem taky (a nikdo v Kapse mi to neuměl vysvětlit) a myslel, že je v tom nějaký vyšší záměr s převrácenou adresací úměrný logice architektů videa Sharpa.

A ještě pěkný příklad pro MODE 4:
asi nejvíce barev na obrazovce v basicu má Velesoftův SNAPER
Obrázek


Nahoru
 Profil  
 
 Předmět příspěvku: Re: Popis SCREENu pro Sam?
PříspěvekNapsal: 06 říj 2018, 19:09 
Offline
Kecálek

Registrován: 21 říj 2013, 08:25
Příspěvky: 242
Has thanked: 95 times
Been thanked: 87 times
Chlapy díky za vysvětlení a doufám že se to bude hodit i někomu dalšímu...


Nahoru
 Profil  
 
 Předmět příspěvku: Re: Popis SCREENu pro Sam?
PříspěvekNapsal: 07 říj 2018, 19:33 
Offline
Kecálek

Registrován: 21 říj 2013, 08:25
Příspěvky: 242
Has thanked: 95 times
Been thanked: 87 times
Tak vykreslení již funguje ;). Ještě jen nevím, pokud je v barvě definovan 'bright', jestli to převádět jako r3g3b3 místo 222.


Přílohy:
Sam_coupe_mode4.png
Sam_coupe_mode4.png [ 115.04 KiB | Zobrazeno 167 krát ]
Nahoru
 Profil  
 
 Předmět příspěvku: Re: Popis SCREENu pro Sam?
PříspěvekNapsal: 07 říj 2018, 20:45 
Offline
Kecálek

Registrován: 18 říj 2014, 22:10
Příspěvky: 182
Has thanked: 12 times
Been thanked: 41 times
https://en.wikipedia.org/wiki/List_of_8 ... e_graphics
Ten obrázok papagája nie je zo Sama, ale ostatné sedí.


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ů: 10 ] 

Všechny časy jsou v UTC + 1 hodina


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