OldComp.cz

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


Právě je 25.04.2024, 00:22

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




Odeslat nové téma Odpovědět na téma  [ Příspěvků: 116 ]  Přejít na stránku Předchozí  1, 2, 3, 4, 5, 6, 7, 8  Další
Autor Zpráva
 Předmět příspěvku: Re: Bakalarska praca
PříspěvekNapsal: 07.07.2021, 12:53 
Offline
Pan Generální

Registrován: 19.07.2013, 15:54
Příspěvky: 2734
Has thanked: 147 times
Been thanked: 423 times
ce4aser píše:
@l00k

Dakujem za odpovede. Ked sme u borderu je to len premenna ktora povie aka farba to je. Problem moze byt ak program presne nacasoval trvanie borderu. Popis mi blizsie prosim ta ako to prebieha napriklad pri nahravani, ukladani programu.


Zde je presne ten problem s 50Hz a 60Hz. VGA bezi na 60Hz a tak vzdy parsek je rychlejsi nez v PALu. S tim nic neudelas. Takze kdyz budes kreslit primo do VGA tak i border musi vypadat jinak nez v originalu. Proto lepsi reseni je, jak se vykresluje obrazovka ZX48 tak vse ukladat do pameti FPGA a to vcetne synchronizace (proto potrebujes hodne pameti). Pak jiny proces muze reagovat na ulozeny sync signal v datech a podle toho pekne vykreslit VGA obraz. VGA snimek vzdy vykreslis rychleji nez jeden snimek ZX48.


Nahoru
 Profil  
 
 Předmět příspěvku: Re: Bakalarska praca
PříspěvekNapsal: 07.07.2021, 12:54 
Offline
Óm Nejvyšší

Registrován: 16.06.2014, 12:23
Příspěvky: 3677
Bydliště: Jesenice u Prahy
Has thanked: 28 times
Been thanked: 280 times
Sorry, ale BOBO64 nemá nic společního se ZX128, ale je to variace na ZX48 a zobrazení a časování procesoru je tam popsáno celkem dobře.
Nedělá to takové prasárny, jako mražení hodin procesoru a přetahování sběrnic přes odpory, jako to prasácké ZX Spectrum !
Ani to nemá nějaké sněžení v obraze a jiné artifakty, jako jiné mršby, zde protěžované ! :twisted:

_________________
Diagnóza: Touretteův syndrom, Koprolálie, Dyslexie, Obsedantně kompulzivní porucha.
Kalkulačky: Privileg PR56, TI51-III, TI57, TI58, TI59, TI83, TI-83 Premium CE, TI89
Počítadla: BOBO64, ZX48 plus, DG-88, Didaktik-M, C16, C64C, Amiga 500+, MZ800, MUPID C2A2


Nahoru
 Profil  
 
 Předmět příspěvku: Re: Bakalarska praca
PříspěvekNapsal: 07.07.2021, 12:59 
Offline
Óm Nejvyšší

Registrován: 16.06.2014, 12:23
Příspěvky: 3677
Bydliště: Jesenice u Prahy
Has thanked: 28 times
Been thanked: 280 times
suksoft píše:
Proto lepsi reseni je, jak se vykresluje obrazovka ZX48 tak vse ukladat do pameti FPGA a to vcetne synchronizace (proto potrebujes hodne pameti).

Hodně je pěkné slovo, ale kolik tedy potřebuje ?
A proč tam potřebuje synchronizaci ?

_________________
Diagnóza: Touretteův syndrom, Koprolálie, Dyslexie, Obsedantně kompulzivní porucha.
Kalkulačky: Privileg PR56, TI51-III, TI57, TI58, TI59, TI83, TI-83 Premium CE, TI89
Počítadla: BOBO64, ZX48 plus, DG-88, Didaktik-M, C16, C64C, Amiga 500+, MZ800, MUPID C2A2


Nahoru
 Profil  
 
 Předmět příspěvku: Re: Bakalarska praca
PříspěvekNapsal: 07.07.2021, 14:31 
Offline
Profík

Registrován: 26.11.2018, 16:59
Příspěvky: 582
Bydliště: Holešov
Has thanked: 13 times
Been thanked: 91 times
danhard píše:
suksoft píše:
Proto lepsi reseni je, jak se vykresluje obrazovka ZX48 tak vse ukladat do pameti FPGA a to vcetne synchronizace (proto potrebujes hodne pameti).

Hodně je pěkné slovo, ale kolik tedy potřebuje ?
A proč tam potřebuje synchronizaci ?


já bych na to potřeboval 312x(96+256)bajtů což je 109 824 bajtů s tím že prvních 64 mikrořádků se plní jen hodnotou portu 254 (border), dalších 192 border+obr.data+border a nakonec 56 mikrořádků opět border pro jednoduchost co pixel to bajt, levý i pravý border 48 pixelů

tou synchronizací asi myslel že si ty data ukládám ve správném čase, tj. jako by jel paprsek


Nahoru
 Profil  
 
 Předmět příspěvku: Re: Bakalarska praca
PříspěvekNapsal: 07.07.2021, 16:48 
Offline
Pan Generální

Registrován: 19.07.2013, 15:54
Příspěvky: 2734
Has thanked: 147 times
Been thanked: 423 times
Ce4aser existuje vlakno viewtopic.php?f=70&t=6506&p=79856&hilit=verilog#p79856 a autor te knihy je ucitel na jedne skole v USA. Psal hodne knih okolo CPLD a ted FPGA. Jinak v te knize presne resi proc pocitac ma jinou hodinovou domenu a zobrazovaci jednotka take jinou. Take tam ukazuje ruzne formy predavani dat. Nektere prikady ukazuje presne na stejne vyvojove deske jako mas ty. Take ukazuje problem s nedostatkem pameti kdyz mas jen 35T (ty mas 100T).

L00k spravne pise ze neni potreba zpracovavat vsechna data, hlavne ty co se nikdy nebudou zobrazovat. Na druhou stranu kdyz je dostatek pameti tak je trivialnejsi vzit kompletni data co generoval pocitac a ty predat do dalsiho modulu. Pro ZX48 jsou dulezite dva citace 448 a 312. Takze kdyz pro barvu potrebujeme 4 bity a 1 bit pro synchronizaci (info kde zacina snimek), a jeste radeji rekneme ze to nebude 5 ale 8 aby se nemusela delat optimalizace FPGA zdroju, tak vypocet je 48x312x8=1118208 bitu coz je 139776 bajtu. Velka cast dat se samozrejme nikdy nezobrazi.

FPGA potrebuje pamet pro dva snimky. Jeden se prave plni, druhy se zobrazuje. Je jasne ze obcas se musi zobrazit 2x stejny snimek protoze novy snimek od ZX48 jeste neni kompletni. To je ten rozdil 60-50=10. Takze za 1 sekundu se zobrazi 10x za sebou stejny snimek.

Ce4aser doporucil bych ti vzit nejaky FPGA zdroj co uz je hotovy a je to ZX48. Pak k tomu dat jen I8255 a budes resit prepinani pameti. To je rozdil DG od ZX48. Urcite komisi rekni ze FPGA umi i pozastavovat CPU jako to umela originalni ULA.


Nahoru
 Profil  
 
 Předmět příspěvku: Re: Bakalarska praca
PříspěvekNapsal: 07.07.2021, 16:56 
Offline
Óm Nejvyšší

Registrován: 16.06.2014, 12:23
Příspěvky: 3677
Bydliště: Jesenice u Prahy
Has thanked: 28 times
Been thanked: 280 times
Radíte mu pěkný blbosti :roll: Na rozchození nebude takové cypoviny vůbec potřebovat.

Kromtoho na ten odkaz to po mě chce, abych se přihlásil, což už jsem.

_________________
Diagnóza: Touretteův syndrom, Koprolálie, Dyslexie, Obsedantně kompulzivní porucha.
Kalkulačky: Privileg PR56, TI51-III, TI57, TI58, TI59, TI83, TI-83 Premium CE, TI89
Počítadla: BOBO64, ZX48 plus, DG-88, Didaktik-M, C16, C64C, Amiga 500+, MZ800, MUPID C2A2


Nahoru
 Profil  
 
 Předmět příspěvku: Re: Bakalarska praca
PříspěvekNapsal: 07.07.2021, 18:29 
Offline
Kecka

Registrován: 03.07.2021, 20:10
Příspěvky: 31
Has thanked: 0 time
Been thanked: 0 time
Tak som na rozmyslal nad tym borderom a zhrnieme si informacie

Obrázek

Original pocet linii je 8+56+192+56=312 pri 50Hz , cize 15'600 linii za sekundu. Cize jedna linia mu trva 64.10 us.
Moj pripad 8+23+480+6 (vSync+vBackPorch+DataImage+vFrontPorch) pri 59.25Hz. Cize 517 linii pri 59.25Hz. t.j. 30'632 linii za sekundu a jedna linia mu trva 32.64 us.

Vo vysledku by mi to spravilo 1.964 riadku. Teraz si vypocitajme rozdiel 0.034*(112+112+848+16) = 37px. To mi nepride vela.

Pritom riesenie by mohlo byt jednoduche. Pred kazdym zobrazenim riadku si zisti Border a bude ho drzat az do konca riadku (realneho 480px).

EDIT: Pri celom 50Hz to spravi 1850px. 1088*517/1085=518 sekund. Takze ak by Border drzial nejaky obrazec tak za 518 sekund by presiel celou vertikalou.


Nahoru
 Profil  
 
 Předmět příspěvku: Re: Bakalarska praca
PříspěvekNapsal: 07.07.2021, 19:32 
Offline
Profík

Registrován: 26.11.2018, 16:59
Příspěvky: 582
Bydliště: Holešov
Has thanked: 13 times
Been thanked: 91 times
ce4aser píše:
Pritom riesenie by mohlo byt jednoduche. Pred kazdym zobrazenim riadku si zisti Border a bude ho drzat az do konca riadku (realneho 480px).


toto není moc dobrý nápad, opravdu budeš potřebovat druhý buffer na zobrazování, minimálně na ty informace o borderu pokud by si chtěl tahat data přímo z VRAM didaktiku. prostě když budeš zobrazovat 60/70 Hz tak ti nikdy nebude sedět informace o Borderu z registru co ti bude sedět na portu 254. Taky nepojede žádné multicolor demo protože ty mění atributy pro každý mikrořádek a ty budeš se zobrazovadlem s jinou frekvencí už dávno pryč.

na začátku je 64 (56+8) mikrořádků přičemž se bere že těch 8 nestihne televize/monitor zobrazit jelikož se vrací paprsek (proto počítají na tom obrázku jen 56 - zároveň je obraz pak jakoby uprostřed těch 312 řádků).

kolik máš volné paměti na to generování obrazu? pro didaktik potřebuješ 16+64kB RAM + 16kB ROM (=RAM se zakázaným zápisem)

osobně bych začal tím, že budu mít 2x 128kB RAM ze kterých budeš generovat VGA signál (v tebou zvoleném rozlišení) tak aby se ti ty body vlezly časově (48+256+48 bodů) a i čas na Hsync - toto pojede nezávisle na didaktiku/spektru a měl bys mít možnost po vykreslení snímku se rozhodnout jestli přepnout na druhou RAM nebo ne

těch 128kB ti bude plnit tvoje FPGA ULA jiným procesem a i dá ti informaci že je hotovo (zároveň bude potřebovt vědět kterou RAM má plnit) a jak psal suksoft 10x za sekundu se ti zobrazovadlo předběhne před generovaným obrazem a zobrazí stejný snímek


Nahoru
 Profil  
 
 Předmět příspěvku: Re: Bakalarska praca
PříspěvekNapsal: 07.07.2021, 20:11 
Offline
Kecka

Registrován: 03.07.2021, 20:10
Příspěvky: 31
Has thanked: 0 time
Been thanked: 0 time
Asi sa nechapeme ja som myslel ze sa bavime o bordery co sa meni pri nahravani z audia.

Hele posles mi sem to demo? Pozriel by som ho na Lnx.

EDIT: pozrel som si na youtube. Tak uz chapem o com si hovoril. Tak to by neslo. Vyuzivaju tieto triky aj s pixelovou castou? Povedzme kvoli optimalizacii.


Nahoru
 Profil  
 
 Předmět příspěvku: Re: Bakalarska praca
PříspěvekNapsal: 07.07.2021, 20:45 
Offline
Pan Generální

Registrován: 19.07.2013, 15:54
Příspěvky: 2734
Has thanked: 147 times
Been thanked: 423 times
Ce4aser pozor, border se nemeni jen na zacatku radky ale kdykoliv. Jedine omezeni je ze vzdy 8 pixelu ma stejnou barvu. Takze realne je mozno i neco "napsat" do borderu.

Ohledne VGA by jsi asi mel udelat casovani podle http://tinyvga.com/vga-timing/640x480@60Hz .

Nic ti nebrani rici ze chces zobrazovat 20 radek pred a 20 radek po zobrazeni a tak misto 56+56+8=120 budes zpracovavat jen 40 radek a 80 radek budes uplne ignorovat - reknes ze je tam stejne cerna barva. Tak zmensis mezipamet pro obrazovku.


Nahoru
 Profil  
 
 Předmět příspěvku: Re: Bakalarska praca
PříspěvekNapsal: 07.07.2021, 20:58 
Offline
Óm Nejvyšší

Registrován: 16.06.2014, 12:23
Příspěvky: 3677
Bydliště: Jesenice u Prahy
Has thanked: 28 times
Been thanked: 280 times
Pro normální použití není border vůbec důležitej, to jenom na tyhle hovadský efekty.

A sukosoft, do přepsání borderu se můžeš trefit s přesností na jeden takt CPU, za tu dobu udělá video 2 pixly :)

_________________
Diagnóza: Touretteův syndrom, Koprolálie, Dyslexie, Obsedantně kompulzivní porucha.
Kalkulačky: Privileg PR56, TI51-III, TI57, TI58, TI59, TI83, TI-83 Premium CE, TI89
Počítadla: BOBO64, ZX48 plus, DG-88, Didaktik-M, C16, C64C, Amiga 500+, MZ800, MUPID C2A2


Nahoru
 Profil  
 
 Předmět příspěvku: Re: Bakalarska praca
PříspěvekNapsal: 07.07.2021, 21:13 
Offline
Profík

Registrován: 26.11.2018, 16:59
Příspěvky: 582
Bydliště: Holešov
Has thanked: 13 times
Been thanked: 91 times
V borderu se daj vyčasovat parádní věci, zkus si např. hru The Sentinel od Firebirdu, ta má nahoře v Borderu rolující text pro výběr ovládání. A samozřejmě ani ve strojáku se ti nepodaří to tak rychle měnit aby si měl šířku 8 pixelů, pomocí DMA dělal BUSY tuším 16, jinak je to 24 (dáno dobou instrukce out/outi - zkus to asi raději ve Fuse (emulátoru), nevím jestli to mám jen blbě nastavené ale LNXemul mi horní ani dolní border nezobrazuje.

Border při nahrávání se nijak neliší od normálního vykreslování, jen se pouze rychleji mění a tím se dělají ty proužky


Nahoru
 Profil  
 
 Předmět příspěvku: Re: Bakalarska praca
PříspěvekNapsal: 07.07.2021, 21:13 
Offline
Pan Generální

Registrován: 19.07.2013, 15:54
Příspěvky: 2734
Has thanked: 147 times
Been thanked: 423 times
danhard píše:
Pro normální použití není border vůbec důležitej, to jenom na tyhle hovadský efekty.

A sukosoft, do přepsání borderu se můžeš trefit s přesností na jeden takt CPU, za tu dobu udělá video 2 pixly :)


Jen jsem chtel Ce4asera informovat ze i do borderu se da psat. Viz video https://www.youtube.com/watch?v=zBOPdiGC5EY

A uplne stejne se uvnitr uly generuje obraz. Vzdy zalezi co prave obsahuje pametova bunka kdyz se vycitava. Pak klidne po dobu dalsich 20ms muze obsahovat uplne neco jineho a vubec to nezmeni obraz.


Nahoru
 Profil  
 
 Předmět příspěvku: Re: Bakalarska praca
PříspěvekNapsal: 07.07.2021, 21:45 
Offline
Óm Nejvyšší

Registrován: 16.06.2014, 12:23
Příspěvky: 3677
Bydliště: Jesenice u Prahy
Has thanked: 28 times
Been thanked: 280 times
l00k píše:
A samozřejmě ani ve strojáku se ti nepodaří to tak rychle měnit aby si měl šířku 8 pixelů ...

Nikoliv, použiješ opakovaně instrukci OUTI :D
A když použiješ OTIR, tak budou úseky dlouhé 10 pixelů.

_________________
Diagnóza: Touretteův syndrom, Koprolálie, Dyslexie, Obsedantně kompulzivní porucha.
Kalkulačky: Privileg PR56, TI51-III, TI57, TI58, TI59, TI83, TI-83 Premium CE, TI89
Počítadla: BOBO64, ZX48 plus, DG-88, Didaktik-M, C16, C64C, Amiga 500+, MZ800, MUPID C2A2


Naposledy upravil danhard dne 07.07.2021, 21:55, celkově upraveno 1

Nahoru
 Profil  
 
 Předmět příspěvku: Re: Bakalarska praca
PříspěvekNapsal: 07.07.2021, 21:49 
Offline
Kecka

Registrován: 03.07.2021, 20:10
Příspěvky: 31
Has thanked: 0 time
Been thanked: 0 time
Tak toto sok netusil. Rozmyslam ze ci si to mam komplikovat, ci to usilie bude stat za to. Kolko percent hier vyuziva tieto triky?

A kte pamati kit obsahuje len jednu pamat 128MB
Obrázek


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ů: 116 ]  Přejít na stránku Předchozí  1, 2, 3, 4, 5, 6, 7, 8  Další

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


Kdo je online

Uživatelé procházející toto fórum: Skiner a 17 návštevní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