Takze tady jsou volne zdrojaky pro scandoubler. Je toho skoro 11kB :-)). Zatim nemam nejakou uplnou odezvu od lidi kterym jsem posilal hotove kusy. Tak nemuzu mluvit o funkcnosti na 100%. David
Celé vlákno · 10 zpráv
Re: Zdrojaky VHDL pro ScanDoubler
Zdenek Adler SHARP MZ-800
Davide, včera jsem měl možnost odzkoušet i programy které používají kreslení do borderu jeho rychlými změnami, popř. střídáním palet (viz. http://mz-800.xf.cz/kvalita.htm ) a vše funguje perfektně. Tvůj scandoubler je podobně jako unikarta dalším brilantně zvládnutým kusem HW, bez kterého žádný pořádný Sharpista nedokáže žít :-D Jedinou pihou na kráse je lehce oříznutý border (což je pochopitelné, jinak bychom se do SVGA rozlišení nevešli a v XGA by byl zase border nechutně velký) a nemožnost přepnout do B/W režimu (ale to u originálního monitoru připojeného přes RGB také nešlo) neb případný DAC převodník namísto odporů by asi zařízení značně prodražil. Zdenek
Zobrazit citovaný text (19 řádků)
----- Original Message ----- From: "David Luftner (sharpemupandora.cz)" <ix9[doména skryta]> To: "Konference "Počítač SHARP MZ-800 a emulátory"" <sharpemupandora.cz> Sent: Monday, November 01, 2010 9:13 PM Subject: Zdrojaky VHDL pro ScanDoubler > > Takze tady jsou volne zdrojaky pro scandoubler. Je toho skoro 11kB :-)). > > Zatim nemam nejakou uplnou odezvu od lidi kterym jsem posilal hotove kusy. > Tak nemuzu mluvit o funkcnosti na 100%. > > David > > > --- >
overscan (was: Re: Zdrojaky VHDL pro ScanDoubler)
Ctirad Feřtr SHARP MZ-800
Dne úterý 02 Listopad 2010 08:02:38 Zdenek Adler (sharpemupandora.cz) napsal(a):
Zobrazit citovaný text (3 řádky)
> včera jsem měl možnost odzkoušet i programy které používají kreslení do > borderu jeho rychlými změnami, popř. střídáním palet
Když už na to přišla řeč, tak jaké exitují na sharpu metody na zobrazení overscanu? Z toho co vím to zatím vypadá jenom na "efekty" v borderu docílené přepínáním barvy borderu během vykreslování řádku. Nebo existuje i nějaká sofistikovanější metoda jako u mnohých jiných počítačů, kde se dá videočip zmást natolik, že pokračuje v zobrazování VRAM na celém řádku? BTW, nemá někdo zdroják v asm něčeho, co kreslí na obrazovku? Pokoušel jsem se o něco na základě dokumentace ze scavu, ale nějak mi to neseje :( Ctirad
Re: overscan
Michal Hučík SHARP MZ-800
Krome zmen barev jsem taky tusim videl nejaky Martinuv program, ktery rychle prepinal mezi rezimy 320x20016 a 640x2004 a tim dosahnul v jednom miste obrazovky toho, ze tam mel jemnou grafiku a v dalsi casti obrazovky toho, ze mel k dispozici 16 barev najednou. K vysvetleni toho jak se kresli v 800 rezimu po obrazovce se uz delsi dobu chystam napsat nejakou skolicku, protoze mi prijde, ze dobre popisy jsou vesmes rozhazene po ruznych navodech, nektere byvaji zmatene a nebo predpokladaji, ze si clovek domysli neco, na co uz v dnesni dobe musi hodne intenzivne prichazet. Sam kdyz jsem si to ozivoval, tak jsem tady laboroval nad SM, dokumentaci ze scavu a s brozurkou Systemove programovani na MZ800. Navic mam pocit, ze pri experimentech v emulatoru jsem obcas narazel na nejake anomalie, ktere se na Sharpu nedeji, ale o tom se tu pry nesmi mluvit ;) Kazdopadne ale pri tom jak jsem na tom v posledni dobe s casem bude asi lepe, kdyz se takove skolicky ujme nekdo jiny a urcite i povolanejsi... Zdenku? Martine? Wileme? Jarhmyllo? ;) Michal Dne 2.11.2010 9:26, Ctirad Feřtr (sharpemupandora.cz) napsal(a):
Zobrazit citovaný text (24 řádků)
> Dne úterý 02 Listopad 2010 08:02:38 Zdenek Adler (sharpemupandora.cz) > napsal(a): > >> včera jsem měl možnost odzkoušet i programy které používají kreslení do >> borderu jeho rychlými změnami, popř. střídáním palet > Když už na to přišla řeč, tak jaké exitují na sharpu metody na zobrazení > overscanu? Z toho co vím to zatím vypadá jenom na "efekty" v borderu docílené > přepínáním barvy borderu během vykreslování řádku. Nebo existuje i nějaká > sofistikovanější metoda jako u mnohých jiných počítačů, kde se dá videočip > zmást natolik, že pokračuje v zobrazování VRAM na celém řádku? > > BTW, nemá někdo zdroják v asm něčeho, co kreslí na obrazovku? Pokoušel jsem > se o něco na základě dokumentace ze scavu, ale nějak mi to neseje :( > > > Ctirad > > ---
Re: overscan
Factor6 SHARP MZ-800
Ja tomu teda zas tak nehovim, ale podle me to je jak u Spectra, kde jdou barevne 1/50Hz efekty a pripadny siroky text, ale overscan asi ne, aspon jsem to nevidel.
Sharp ma podle me mimo jine dost hodne velky border na to, jake ma rozliseni, coz povazuju za nevyhodu (v porovnani se Spectrem).
F6
2010/11/2 Michal Hučík (sharpemupandora.cz) <ordoz[doména skryta]>
Krome zmen barev jsem taky tusim videl nejaky Martinuv program, ktery rychle prepinal mezi rezimy 320x20016 a 640x2004 a tim dosahnul v jednom miste obrazovky toho, ze tam mel jemnou grafiku a v dalsi casti obrazovky toho, ze mel k dispozici 16 barev najednou.
K vysvetleni toho jak se kresli v 800 rezimu po obrazovce se uz delsi dobu chystam napsat nejakou skolicku, protoze mi prijde, ze dobre popisy jsou vesmes rozhazene po ruznych navodech, nektere byvaji zmatene a nebo predpokladaji, ze si clovek domysli neco, na co uz v dnesni dobe musi hodne intenzivne prichazet. Sam kdyz jsem si to ozivoval, tak jsem tady laboroval nad SM, dokumentaci ze scavu a s brozurkou Systemove programovani na MZ800.
Navic mam pocit, ze pri experimentech v emulatoru jsem obcas narazel na nejake anomalie, ktere se na Sharpu nedeji, ale o tom se tu pry nesmi mluvit ;)
Kazdopadne ale pri tom jak jsem na tom v posledni dobe s casem bude asi lepe, kdyz se takove skolicky ujme nekdo jiny a urcite i povolanejsi... Zdenku? Martine? Wileme? Jarhmyllo? ;)
Michal
Dne 2.11.2010 9:26, Ctirad Feřtr (sharpemupandora.cz) napsal(a):
Dne úterý 02 Listopad 2010 08:02:38 Zdenek Adler (sharpemupandora.cz)
napsal(a):
včera jsem měl možnost odzkoušet i programy které používají kreslení do
borderu jeho rychlými změnami, popř. střídáním palet
Když už na to přišla řeč, tak jaké exitují na sharpu metody na zobrazení
overscanu? Z toho co vím to zatím vypadá jenom na "efekty" v borderu docílené
přepínáním barvy borderu během vykreslování řádku. Nebo existuje i nějaká
sofistikovanější metoda jako u mnohých jiných počítačů, kde se dá videočip
zmást natolik, že pokračuje v zobrazování VRAM na celém řádku?
BTW, nemá někdo zdroják v asm něčeho, co kreslí na obrazovku? Pokoušel jsem
se o něco na základě dokumentace ze scavu, ale nějak mi to neseje :(
Ctirad
---
---
Krome zmen barev jsem taky tusim videl nejaky Martinuv program, ktery rychle prepinal mezi rezimy 320x20016 a 640x2004 a tim dosahnul v jednom miste obrazovky toho, ze tam mel jemnou grafiku a v dalsi casti obrazovky toho, ze mel k dispozici 16 barev najednou.
K vysvetleni toho jak se kresli v 800 rezimu po obrazovce se uz delsi dobu chystam napsat nejakou skolicku, protoze mi prijde, ze dobre popisy jsou vesmes rozhazene po ruznych navodech, nektere byvaji zmatene a nebo predpokladaji, ze si clovek domysli neco, na co uz v dnesni dobe musi hodne intenzivne prichazet. Sam kdyz jsem si to ozivoval, tak jsem tady laboroval nad SM, dokumentaci ze scavu a s brozurkou Systemove programovani na MZ800.
Navic mam pocit, ze pri experimentech v emulatoru jsem obcas narazel na nejake anomalie, ktere se na Sharpu nedeji, ale o tom se tu pry nesmi mluvit ;)
Kazdopadne ale pri tom jak jsem na tom v posledni dobe s casem bude asi lepe, kdyz se takove skolicky ujme nekdo jiny a urcite i povolanejsi... Zdenku? Martine? Wileme? Jarhmyllo? ;)
Michal
Dne 2.11.2010 9:26, Ctirad Feřtr (sharpemupandora.cz) napsal(a):
Dne úterý 02 Listopad 2010 08:02:38 Zdenek Adler (sharpemupandora.cz)
napsal(a):
včera jsem měl možnost odzkoušet i programy které používají kreslení do
borderu jeho rychlými změnami, popř. střídáním palet
Když už na to přišla řeč, tak jaké exitují na sharpu metody na zobrazení
overscanu? Z toho co vím to zatím vypadá jenom na "efekty" v borderu docílené
přepínáním barvy borderu během vykreslování řádku. Nebo existuje i nějaká
sofistikovanější metoda jako u mnohých jiných počítačů, kde se dá videočip
zmást natolik, že pokračuje v zobrazování VRAM na celém řádku?
BTW, nemá někdo zdroják v asm něčeho, co kreslí na obrazovku? Pokoušel jsem
se o něco na základě dokumentace ze scavu, ale nějak mi to neseje :(
Ctirad
---
---
Re: overscan
Martin Frohlich SHARP MZ-800
Na tohle musím reagovat... Ano snažil jsem se udělat aby v horní části byl šestnácti barevný obrázek a ve spodní části 80 znaků text... (pro testy z autoškoly.. křižovatky..) a došlo to do stavu kdy se mi časováním podařilo obrazovku rozdělit, ale pak jsem se vrhnul na kreslení křižovatek a na tom celá snaha ustrnula... Takže to bylo ve stavu jakž takž fungující procedury, ale nikdy nedokončeno... Martin
Zobrazit citovaný text (60 řádků)
> ------------ Původní zpráva ------------ > Od: Michal Hučík (sharpemupandora.cz) <ordoz[doména skryta]> > Předmět: Re: overscan > Datum: 02.11.2010 10:04:04 > ---------------------------------------- > > > Krome zmen barev jsem taky tusim videl nejaky Martinuv program, ktery > rychle prepinal mezi rezimy 320x20016 a 640x2004 a tim dosahnul v > jednom miste obrazovky toho, ze tam mel jemnou grafiku a v dalsi casti > obrazovky toho, ze mel k dispozici 16 barev najednou. > > K vysvetleni toho jak se kresli v 800 rezimu po obrazovce se uz delsi > dobu chystam napsat nejakou skolicku, protoze mi prijde, ze dobre popisy > jsou vesmes rozhazene po ruznych navodech, nektere byvaji zmatene a nebo > predpokladaji, ze si clovek domysli neco, na co uz v dnesni dobe musi > hodne intenzivne prichazet. Sam kdyz jsem si to ozivoval, tak jsem tady > laboroval nad SM, dokumentaci ze scavu a s brozurkou Systemove > programovani na MZ800. > Navic mam pocit, ze pri experimentech v emulatoru jsem obcas narazel na > nejake anomalie, ktere se na Sharpu nedeji, ale o tom se tu pry nesmi > mluvit ;) > Kazdopadne ale pri tom jak jsem na tom v posledni dobe s casem bude asi > lepe, kdyz se takove skolicky ujme nekdo jiny a urcite i povolanejsi... > Zdenku? Martine? Wileme? Jarhmyllo? ;) > > Michal > > > Dne 2.11.2010 9:26, Ctirad Feřtr (sharpemupandora.cz) napsal(a): > > Dne úterý 02 Listopad 2010 08:02:38 Zdenek Adler (sharpemupandora.cz) > > napsal(a): > > > >> včera jsem měl možnost odzkoušet i programy které používají kreslení do > >> borderu jeho rychlými změnami, popř. střídáním palet > > Když už na to přišla řeč, tak jaké exitují na sharpu metody na zobrazení > > overscanu? Z toho co vím to zatím vypadá jenom na "efekty" v borderu > docílené > > přepínáním barvy borderu během vykreslování řádku. Nebo existuje i nějaká > > sofistikovanější metoda jako u mnohých jiných počítačů, kde se dá videočip > > zmást natolik, že pokračuje v zobrazování VRAM na celém řádku? > > > > BTW, nemá někdo zdroják v asm něčeho, co kreslí na obrazovku? Pokoušel jsem > > se o něco na základě dokumentace ze scavu, ale nějak mi to neseje :( > > > > > > Ctirad > > > > --- > > > --- > > >
Re: overscan - jednoduchy popis kresleni po obrazovce
Michal Hučík SHARP MZ-800
Dne 2.11.2010 9:26, Ctirad Feřtr (sharpemupandora.cz) napsal(a):
Zobrazit citovaný text (3 řádky)
> BTW, nemá někdo zdroják v asm něčeho, co kreslí na obrazovku? Pokoušel jsem > se o něco na základě dokumentace ze scavu, ale nějak mi to neseje :(
Ted tu mam chvilku klidu, toz zkusim nastinit alespon zaklad. Budu se
zabyvat jen rezimem MZ800, ve kterem se pracuje s video pameti bitove,
tzn. ze to co zapisu do VRAM je to co uvidim na obrazovce. V rezimu
MZ700 funguje zobrazeni z VRAM atributove, tedy bajt zapsano do VRAM
rika adresu bitove masky v CGRAM a barvy pozadi a popredi se nastavuji v
tabulce atributu, ktera je umistena nad VRAM ... ale to je jina pisnicka.
Kazdy program v MZ800 rezimu by si mel davat bacha, aby se on sam, nebo
jeho zasobnik nenachazel v oblastech 0x1000 - 0x1FFF (CGROM), a 0x8000 -
0x9FFF (VRAM 320x200), pripadne 0x8000 - 0xBFFF (VRAM 640x200) ... teda
program se tam samozrejme nachazet muze, ale ne ve chvili, kdy si
primapuje CGROM + VRAM, ktere v MZ800 rezimu jdou mapovat pouze obe
dohromady.
Nastaveni pozadovaneho rezimu, zpusobu zobrazeni, rozliseni obrazovky a
poctu barev provadime pres DMD registr (0xCE).
Mapovani pameti zatim nijak rozvadet nebudu, pouze to, ze v MZ800 rezimu
IN A, (0xE0) primapuje CGROM a VRAM. Instrukce IN A, (0xE1) to odmapuje
a navrati tam RAMku.
V kazdem barevnem rezimu si clovek musi uvedomit s kolika _obrazy_ a
_bloky_ v danem rezimu pracuje, podle toho pak vypada prace s WFR -
Write Format Registr - (0xCC), RFR - Read format Registr (0xCD) a
registrem barevnych palet (0xF0).
org 0x3000
ld sp, 0x2FFF ; zasobnik dame pod nas program
xor a
out (0xCE), a ; do DMD posleme 0x00 - tedy rezim MZ800, 320x2004
obraz A
; (pouzijeme tedy 2 obrazove bloky I. a II.)
in a, (0xE0) ; primapujeme CGROM a VRAM
ld bc, 0x00F0 ; do reg. C si dame adresu registru barevnych palet
ld a, 0x40
out (c), a ; zvolime nultou paletovou skupinu
; Volba skupiny: 6. bit musi byt '1', dolni 2 bity
rikaji cislo skupiny
; nyni u teto skupiny pridelime barvy k obsahu obrazovych bloku
; Volba barvy:
; 6. bit musi byt '0'
; bity 5. - 4. rikaji cislo obrazoveho bloku
; bity 3. - 0. rikaji barvu (IGRB)
xor a
out (c), a ; zadny bit v obr. blocich znamena - cerna barva
ld a, 0x11
out (c), a ; bit v prvnim bloku bude modra barva
ld a, 0x22
out (c), a ; bit v druhem bloku bude cervena
ld a, 0x3F
out (c), a ; bit v obou blocich bude bila
;
; A ted zacneme kreslit, nejprve si smazeme screen
;
ld a, 0x03
out (0xCC), a ; nastavime si WFR a RFR tak, aby jsme
out (0xCD), a ; cetli metodou READ z bloku I. a II. a psali
metodou SINGLE WRITE do bloku I. a II
ld hl, 0x8000 ; adresa VRAM
ld de, 0x8001
ld bc, 0x1F3F ; velikost viditelne oblasti VRAM ( 40 bajt x 200
radku ) - 1
xor a
ld (hl), a
ldir ; mazeme
; namalujeme bilou prerusovanou caru pres prvnich 8 radku
ld hl, 0x8000
ld de, 0x8001
ld bc, 0x013F ; (40 x 8) - 1
ld a, 0x55
ld (hl), a
ldir
; pokracujeme pod tim cervenou carou
ld a, 0x02
out (0xCC), a
out (0xCD), a ; prenastavime WFR a RFR jen na II. obrazovy blok
ld bc, 0x013F ; (40 x 8) - 1
ld a, 0x55
ld (hl), a
ldir
; odmapujeme VRAM
in a, (0xE1)
; a budeme cekat az do soudneho dne...
di
halt
Snad jsem se nikde neseknul a bude vam to takhle fungovat. K pochopeni
je dobre dohledat si vyznamy jednotlivych bitu k uvedenym registrum.
Michal
Re: overscan - jednoduchy popis kresleni po obrazovce
Michal Hučík SHARP MZ-800
Tak jsem to i zkusmo zkompiloval a zda se, ze to i funguje ;) Prikladam MZF.
Přílohy
-
pokus.mzfapplication/octet-stream · 210 B
RE: overscan - jednoduchy popis kresleni po obrazovce
Anonym SHARP MZ-800
Copak zapis je vcelku "jednoduchy" ale chtelo by to rychlou linearni interpolaci jako kluk (pred 20 lety) jsem o tom snil ze to bude jako rutinka v CP/M Amstrad CPC to ma jednodusi "odskoci" tusim do ROMky vykresli caru a vrati se. Ostatne skoda ze se nepredelavalo z Amstradu CPC kde je organizce grafiky podobnejsi Nez u ZX Spectra Petr
Zobrazit citovaný text (13 řádků)
-----Original Message----- From: Michal Hučík (sharpemupandora.cz) [mailto:ordoz[doména skryta]] Sent: Wednesday, November 03, 2010 10:19 AM To: Konference "Počítač SHARP MZ-800 a emulátory" Subject: Re: overscan - jednoduchy popis kresleni po obrazovce Tak jsem to i zkusmo zkompiloval a zda se, ze to i funguje ;) Prikladam MZF. ---
RE: overscan - jednoduchy popis kresleni po obrazovce
Vaclav Peroutka SHARP MZ-800
Zobrazit citovaný text (10 řádků)
> > Copak zapis je vcelku "jednoduchy" ale chtelo by to rychlou linearni > interpolaci > jako kluk (pred 20 lety) jsem o tom snil ze to bude jako rutinka v CP/M > Amstrad CPC to ma jednodusi "odskoci" tusim do ROMky vykresli caru a vrati se. > > Ostatne skoda ze se nepredelavalo z Amstradu CPC kde je organizce grafiky > podobnejsi > Nez u ZX Spectra
Ano, nad tim jsem taky uz premyslel, ale zasadni problemy jsou dva. Hry na Amstradu jedou v rozliseni 160x200, takze by se musely predelavat obrazovky. A potom, Nema nahodou CPC hardwarove sprity ? V.