OldComp.cz

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


Právě je 29.03.2024, 00:32

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




Odeslat nové téma Odpovědět na téma  [ Příspěvků: 7 ] 
Autor Zpráva
PříspěvekNapsal: 04.04.2015, 17:40 
Offline
Pan Štábní
Uživatelský avatar

Registrován: 09.10.2013, 19:04
Příspěvky: 1403
Has thanked: 130 times
Been thanked: 71 times
Vedel by mi niekto poradiť, čo sa testuje v BASICu pri tomto príkaze? V emulátore dostanem vždy hlášku CRT:Dev. mode error, ale VRAM 32 kB by mala fungovať správne. Dokonca som breakpointmi zistil, že pri teste sa ani neoveruje fyzická prítomnosť pamäte, pretože k čítaniu adresy 8000h vôbec nedôjde. Viem, že prítomnosť doplňujúcej vRAM 16 kB sa dá otestovať pomocou SINGLE po uložení 00h do roviny 3 a 4 a ffh do rovín 1 a 2. Ak je výsledok 00h, tak VRAM má 32 kB, ak FFh, tak 16 kB. BASIC to zrejme testuje inak.

_________________
Sharp MZ-821
Milsa MZ-841


Nahoru
 Profil  
 
PříspěvekNapsal: 05.04.2015, 20:30 
Offline
Radil

Registrován: 08.10.2013, 18:00
Příspěvky: 296
Has thanked: 12 times
Been thanked: 228 times
Nevím jestli si to pamatuju správně (paměť mám dynamickou a když neobčerstvuju, tak se v ní nic neudrží), při INIT"CRT:Mx" se nic netestuje, rovnou to zobrazí chybu. Test se totiž dělá už při startu BASICu a výsledek se uloží pro pozdější použití (teda pokud mi pamět slouží správně, ale moc za to neručím).


Nahoru
 Profil  
 
PříspěvekNapsal: 06.04.2015, 12:44 
Offline
Pan Štábní
Uživatelský avatar

Registrován: 09.10.2013, 19:04
Příspěvky: 1403
Has thanked: 130 times
Been thanked: 71 times
Dobre, ale skúšal som aj prístup do "hornej" VRAM pri štarte BASICu a netestovalo mi to nič. Presnejšie povedané, nedošlo k zastaveniu na breakpointe pri čítaní 8000h-9fffh pri DMD 2 a namapovanej VRAM. Skúsim ešte porovnať snapy zo Zdeňkovho emulátora pri 16 kB VRAM a 32 kB VRAM a podľa zmenenej pamäťovej bunky pohľadať v zdrojáku prácu s touto bunkou. Zrejme iná možnosť nebude. Ďakujem za ochotu pomôcť.

_________________
Sharp MZ-821
Milsa MZ-841


Nahoru
 Profil  
 
PříspěvekNapsal: 06.04.2015, 13:19 
Offline
Radil

Registrován: 08.10.2013, 18:00
Příspěvky: 296
Has thanked: 12 times
Been thanked: 228 times
Konkrétně se pokusí zapsat na adresu 9FFFh v režimu 0 (320x200x4 barvy) do plánu B (write register 94h) a přečíst (read register 14h) a výsledek porovnat, pokud vše klapne, dá na adresu 1099h hodnotu 1 jinak 0 (platí pro MZ-1Z016B).
Kód:
                    *---------------------
                    *  check vram option ?
                    *---------------------
 0F4E F3            CRTPWR:   DI     
 0F4F AF                      XOR     A           
 0F50 D3 CE                   OUT     (LSDMD),A   ;320*200 4 color
 0F52 3E 14                   LD      A,14H       
 0F54 D3 CD                   OUT     (LSRF),A   
 0F56 3E 94                   LD      A,94H       
 0F58 D3 CC                   OUT     (LSWF),A   
 0F5A DB E0                   IN      A,(LSE0)   
 0F5C D3 E0                   OUT     (LSE0),A    ;cg off
 0F5E 21 FF 9F                LD      HL,9FFFH   
 0F61 7E                      LD      A,(HL)      ;read
 0F62 4F                      LD      C,A         
 0F63 2F                      CPL     
 0F64 77                      LD      (HL),A      ;write
 0F65 BE                      CP      (HL)        ;verify
 0F66 71                      LD      (HL),C      ;pop mem
 0F67 3E 00                   LD      A,0         
 0F69 20 01                   JR      NZ,CRTPW0   
 0F6B 3C                      INC     A           
 0F6C 32 99 10      CRTPW0:   LD      (MEMOP),A   


Nahoru
 Profil  
 
PříspěvekNapsal: 06.04.2015, 14:45 
Offline
Pan Štábní
Uživatelský avatar

Registrován: 09.10.2013, 19:04
Příspěvky: 1403
Has thanked: 130 times
Been thanked: 71 times
Na úvod otázka: Aký je rozdiel medzi 1Z-016 a 1Z-016B?

Ďakujem za pomoc. Vyriešil som to takto:
Vytvoril som si snapshoty v Zdeňkovom emulátore s a bez VRAM 32 kB. Potom som ich porovnal a objavil som adresu 1099h. V ASM súbore 2Z-046 som zistil, že kde je rutina na testovanie. Tú som zachytil cez breakpoint v emulátore a odkrokoval som ju. Zistil som, že mi neuloží do RAM zmenenú hodnotu a potom ju ani neprečíta. Celý problém spočíval v tom, že ja V REPLACE, PSET a SEARCH pomocou DMD určil, do ktorej časti sa zapisuje a len podľa B/A som určil, či sa uplatní scroll. To bola chyba. Opravil som to tak, že podľa B/A sa určuje, kam sa zapisuje, pokiaľ je DMD pre 16 kB VRAM a skroll sa uplatňuje podľa DMD. Ak sa pracuje v móde 32 kB VRAM, tak sa ulatní scroll vždy a B/A sa ignoruje. Teraz mi to už chodí. Myslel som, že mi oprava tejto chyby vyrieši aj čierne pruchy v Exploding Fist a Highway, ale žiaľ nestalo sa tak. Takže zrejme asi budem musieť začať písať emuláciu WD1791 a rozbehať CP/M a prejsť Zexallom.

Ty máš anglicky komentovaný BASIC? Nemohol by si ho sem prasknúť? Ja mám iba nemecký.

_________________
Sharp MZ-821
Milsa MZ-841


Nahoru
 Profil  
 
PříspěvekNapsal: 06.04.2015, 18:07 
Offline
Radil

Registrován: 08.10.2013, 18:00
Příspěvky: 296
Has thanked: 12 times
Been thanked: 228 times
Milsa píše:
Na úvod otázka: Aký je rozdiel medzi 1Z-016 a 1Z-016B?
Ty máš anglicky komentovaný BASIC? Nemohol by si ho sem prasknúť? Ja mám iba nemecký.

To B jsem tam dopsal asi pod vlivem, dopoledne o velikonočním pondělí bývá náročné :)
Anglický komentář je například k verzi 5Z009, kterou najdeš tady.


Nahoru
 Profil  
 
PříspěvekNapsal: 06.04.2015, 20:52 
Offline
Pan Štábní
Uživatelský avatar

Registrován: 09.10.2013, 19:04
Příspěvky: 1403
Has thanked: 130 times
Been thanked: 71 times
Aha, tak to sa dobre "dokrútilo". Ja som to pochopil tak, že sa tam vloží 1 a v 1Z-016B sa tam vloží 0. Tak už mi chodili myšlienkové pochody, že či tá verzia vie lepšie spolupracovať so sadou B vo VRAM.

_________________
Sharp MZ-821
Milsa MZ-841


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

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


Kdo je online

Uživatelé procházející toto fórum: Žádní registrovaní uživatelé a 5 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:  
cron
Založeno na phpBB® Forum Software © phpBB Group
Český překlad – phpBB.cz