Přejít na obsah
ARCHIVEKArchiv e-mailových konferencí o 8bitových počítačích Archiv Pandory 1999 až 2013

Původní podoba příspěvku

Michal Hučík Zpět na příspěvek

Surová data tak, jak byla v roce 2013 stažena z Pandory (HTML zdroj bez úprav, osobní e-mailové adresy jsou maskované).

<!-------------------------------------------------------------->

<!-------------------------------------------------------------->
<table width="100%"><tr><td align="left" valign="middle"></td><td align=right valign="middle"></td></tr></table><BR>     <div><br/> Bohousi, pro jistotu se zeptam jeste jednou: opravdu ti funguje "tento konkretni" Tetris2 spousteny ze systemu na teto diskete?<br/> <font><font><font><font><font><font><font><font><a href="http://duna.ordoz.com/doc/soutez/Hry-HDS05.dsk">http://duna.ordoz.com/doc/soutez/Hry-HDS05.dsk</a>  <font>... dost by mne to zajimalo.</font><br/> <br/> <font>Ja si totiz ten program krokuju a zacinam mit pocit, ze je v nem nekolik chyb, ktere tam zanesl clovek, ktery predelaval puvodni <font>T</font>etris do <font>programu s<font>pustitelneho pod cp/m (.com)</font></font><br/> <br/> V kodu se nekolikrat opakovane a docela zbytecne <font>vyskytuji instrukce DI, ktere mi <font>naznacuji, ze tam autor mozna s necim bojoval ...<br/> <br/> Program si <font>hned na zacatku </font>nastavi DI a rezim IM<font> 0<font><font>. Ve sve startovaci fazi prochazi adresou 0x0000<font> a z a<font>dres<font>y 0x003d provadi jump<font>, zrejme </font>na svou puvodni starovaci pozici. </font></font></font></font> V nekolika nasledujicich rutinach se vyskyt<font>uje na jejich zacatku DI a na konci EI<font> +</font> RET,  </font>coz zpusobi nekolik restartu ce<font>l<font>e</font>ho </font>programu prostrednictvim IM0 <font>(RST 0x38)</font>. Toto je videt i na vystupu z analyzeru. V nekolika rutinach se je<font>jich konci </font>nachazi NOP + RET, coz mne privadi na myslenku, ze az program prejde do faze, kdy <font>jsou </font>interrupty opravdu vyzad<font>ovany</font>, tak sam sebe prepise a ty NOPy v podprogramech na<font>hradi instrukcemi EI. </font><br/> <br/> <font>Toto by se asi potvrdilo, kdybych mel po ruce i puvodni MZF verzi toho Tetrisu<font>.<br/> <br/> <font>Kazdopadne pokud si ve <font>Zdenkove emulatoru natahnete tu disketu, nastavite kurzor na Tetris2, <font>nastavite breakpoint na 0x9d21</font></font></font></font></font></font></font></font></font> a na 0xe4ae<font> a bouchnete ENTER<font>, ty EI v debuggeru prepiste na NOP. Kra najednou krasne nabehne do uvodniho screenu a hraje hudba - vse bez <font>aktivniho INT</font>. Jakmile bouchnete do klavesnice, tak se to zborti, protoze tam je asi nekde jeste nejaky dalsi EI, ktery tam <font>zrejme nepa<font>tri.</font></font></font></font><br/> <br/> </font></font></font></font></font></font></font></font>To ze se nam t<font>akto zmrveny</font> program v emulator<font>ech</font> zakousne svedci o tom, ze nase emulatory <font>ani zdaleka nej</font>sou identicke s<font> realnym Sharpem, nicmene <font>to vypada, ze jsme neobjevili zadnou zasadni chyb<font>u</font>.<br/> <font>(Mam jakesi tuseni, ze by mohl byt rozdil treba v tom, jakym zpus<font>o</font>bem se na Sharpu a v emulatorech resi CPU_WAIT pr<font>i praci s VRAM v <font>MZ-700</font></font> ... Delal jsem dnes nejaka mereni a o par taktu <font>to v emulacich nesedi.</font>)</font><br/> <br/> <font>Bohuzel mne nenapada, jak urcit co se <font>presne v tu chvili v Sharpu deje. Jedinym <font>resenim <font>by asi bylo </font>pripichnout na nej zarizeni/analyzer, ktery by to k<font>vantum udaj<font>u ze sbernice ulozil a pak t<font>o porovnat s denim v emulatoru.<br/> <br/> <font>Tak a jestli mi ted Bohousi napises, ze tobe ten<font>to konkretni <font>T</font>etris <font>bezi uplne stejne<font>, jako bezi i v realnem Sharpu, tak mne docela nastves! :)</font></font></font></font><br/> </font></font></font></font></font></font><br/> </font></font>Michal<br/> <br/> <br/> </font>Dne 23.5.2013 23:54, Bohumil Nováček (<a href="mailto:sharpemu@pandora.cz">sharpemu@pandora.cz</a>) napsal(a):<br/> </div>  <p>Ahoj,<br/> <br/>   tak ja neco placnu. Taky se mi totiz na HW emulatoru Tetris2 kousal.<br/> Zkusim to otazkou ... <br/> Generuje Z80PIO dalsi preruseni az teprve po vykonani instrukce RETI (kod ED 4D) ?<br/> Pokud je odpoved NE, nekdo nedocetl specifikaci Z80PIO az dokonce ! ;-)<br/> <br/> Hodne stesti<br/> Bohous<br/> <br/> </p> <p>---------- Původní zpráva ----------<br/> Od: Michal Hučík (<a href="mailto:sharpemu@pandora.cz">sharpemu@pandora.cz</a>) <a href="mailto:ordoz@[doména skryta]">&lt;ordoz@[doména skryta]&gt;</a><br/> Datum: 23. 5. 2013<br/> Předmět: Soutez</p> <br/>  <div> <font>Ahoj,<br/> <br/> <font>chtel bych vyhlasit soutez<font>, jejimz ukolem je najit pricinu toho, proc v zadnem z top<font> emulatoru (Zdenkuv, R<font><font>omanuv</font>) <font>nefunguje spravne hra<font> Tetris2, ktera je ulozena na tomto konkretnim DSK <font><a href="http://duna.ordoz.com/doc/soutez/Hry-HDS05.dsk">http://duna.ordoz.com/doc/soutez/Hry-HDS05.dsk</a><br/> <br/> <font>Hra se po spusteni zakousne<font>.</font> <font>D</font>eje se t<font>ak</font> nejen ve zminenych emulator<font>ech, ale</font> i v mem FPGA HW modelu Sharpa. <br/> <br/> Nicmene kdyz ten image <font>natahnete pres SD do Unikarty, tak <font>ta</font> hra na <font>realnem </font>Sharpu bez problemu bezi! </font><br/> <br/> <font>Kdysi jsem to trochu zkoumal a jedine co si z toho pamatuju je tusim to, ze v emulatoru se deje jeden interrupt navic a ten tu hru zbori... Vi<font>c si nevybavuju, nic<font>mene na pozadani jsem ochoten premerit sondou, ci osciloskopem vse, co bude v mych silach - mne totiz uz nejak nenapada jak dal tu pricinu potizi hledat<font> a proto by treba <font>pomohl pohled na vec od nekoho cerstveho<font>.</font> <br/> <br/> Klidne placnete i prvni hloupost, ktera vas jako mozna pricina napadne :)</font></font></font></font></font><br/> <br/> <font>Pro uspesneho resitele tohoto ukolu nabizim za odmenu <font>1ks</font> WD2791 z jiste limitovane edice ;)<br/> <br/> <font>Michal<br/> <br/> </font></font></font></font></font></font></font></font></font></font></font> </div>  <p><br/> ---<br/> <a href="http://raketa.cz/slevy/pobyty/hory/">Pobyty na horách se slevou</a> </p>  <br/>