Konference: Počítač SHARP MZ-800 a emulátory

Od: Michal Hučík
Datum: 10.4.2010 10:51
Předmět: Jaky je vyznam 4. bitu u WF a RF registru GDG?

Jaky je vyznam 4. bitu u WF a RF registru GDG?:

Zdravim,

pokousim se znova porozumet praci s grafikou v rezimech MZ-800 a narazil jsem na
 nejake nesrovnalosti. Jednou z nich je vyznam 4. bitu v RF a WF registrech
(porty 0xCD a 0xCC). Timto bitem by se melo nastavovat "Frame A/B" coz ma zrejme
vyznam jen tehdy, pokud je v Sharpu rozsirena VRAM a pokud je aktualne nastaveny
ctyr, nebo dvou barevny rezim, ktery bude pouzivat jen polovinu VRAM.

Video rezim nastavujeme dolnimi bity DMD registru:

0000 - MZ800 320x200/4(A - I., II. plane)
0001 - MZ800 320x200/4(B - III., IV. plane)
0010 - MZ800 320x200/16(AB - I., II., III., IV. plane)
0100 - MZ800 640x200/2(A - I. plane)
0101 - MZ800 640x200/2(B - III. plane)
0110 - MZ800 640x200/4(AB - I., III. plane)

Kazdy plane ma 8KB
A - je integrovana VRAM 16KB
B - je externi VRAM 16KB

WF registr (port 0xCC):

0. bit - plane I.
1. bit - plane II.
2. bit - plane III.
3. bit - plane IV.
4. bit - frame A/B 
5. - 7. bit - zapisovaci rezim

Nyni nastavim napr. DMD => "0100" (640x200/A), primapuju VRAM a v SINGLE WRITE
rezimu libovolne zapisuju do I. a III. plane, kam se to bez ohledu na stav 4.
bitu ulozi, coz si muzu overit zmenou zobrazovaciho rezimu na DMD => "0101"
(640x200/B). K cemu je tedy ten 4. bit dobry???

(Vyse uvedeny test jsem delal na skutecnem Sharpu - Zdenkuv emulator ma tady
zrejme bug a pri rezimu 640x200/B zobrazuje I. plane, ale mel by zobrazovat
III.)

Michal

Ostatní příspěvky vlákna:

 
[2010/1 (51)] [2010/2 (48)] [2010/3 (23)] [2010/4 (40)] [2010/5 (50)] [2010/6 (23)] [2010/7 (13)] [2010/8 (54)] [2010/9 (47)] [2010/10 (243)] [2010/11 (92)] [2010/12 (98)]


[1999 (1)] [2000 (168)] [2001 (733)] [2002 (459)] [2003 (654)] [2004 (224)] [2005 (105)] [2006 (182)] [2007 (201)] [2008 (294)] [2009 (363)] [2010 (782)] [2011 (522)] [2012 (642)] [2013 (442)]