Konference: Počítač SHARP MZ-800 a emulátory
Od: | Jardax |
Datum: | 20.3.2012 17:17 |
Předmět: | Re: RRD - detekce flash |
Nemate nahodou tak trochu hokej v tom, ze jeden vypravite o prenosu instrukce z pameti do CPU a druhy o cteni portu do CPU? :) :) Jarda 20. březen 2012 17:12:30, Michal Hučík (sharpemu tu byla ta zakroucena vec pandora.cz) napsal: > > > Netusim jak to je na jinych platformach, nicmene v MZ800 to tak skutecne je. Poslednim bajtem na datove sbernici je myslen posledni instrukcni bajt. > > Tedy: > > IN A,(#44) == 0xdb, 0x44 == pokud neni obsazen, tak prectes 0x44 > > LD C,#44 > IN A,(C) == 0xed, 0x78 == pokud neni obsazen, tak prectes 0x78 > > Tedy 0xff neprectes na neobsazenem portu nikdy ;) > > > > Dne 20.3.2012 16:48, VELESOFT (SPRINTER) (sharpemu tu byla ta zakroucena vec pandora.cz) napsal(a): >> >> >> ----- Original Message ----- From: "Michal Hučík (sharpemu tu byla ta zakroucena vec pandora.cz)" <ordoz tu byla ta zakroucena vec ordoz.com> >> To: "Konference "Počítač SHARP MZ-800 a emulátory"" <sharpemu tu byla ta zakroucena vec pandora.cz> >> Sent: Tuesday, March 20, 2012 10:40 AM >> Subject: Re: RRD - detekce flash >> >> >>> >>> >>> Ahoj Martine, >>> >>> zda na nejakem portu visi nejake zarizeni, ktere umi vracet staticka data se pozna celkem jednoduse. instrukce IN na neobsazeny port totiz vraci vzdy stejnou hodnotu, jakou mel posledni byte na datove sbernici - v tomto pripade tedy posledni bajt instrukce IN. Test tedy muze postupne zkusit ruzne variace IN registr,(cislo) a IN registr,(C). Pokud tam je ROM disk, tak prectes pokazde stejnou hodnotu. Pokud tam neni nic, tak prectes hodnotu odpovidajici poslednimu bajtu instrukce IN. >>> >>> Michal >>> >> No ja teda logicky predpokladam, ze pokud procesor cte neobsazeny port, mel by nacist hodnotu #FF, ktera by mela byt zajistena disky internim pull-up odporum. Nemam shema Sharpa po ruce, ale pevne verim tomu, ze tam odpory budou. Takze bych odpovedel asi takhle: >> Pri cteni jakehokoli neobsazeneho portu procesor vzdy nacte hodnotu 255 (#FF). >> >> Ale co bylo mysleno tim poslednim bajtem na datove sbernici ? Bajty se po datove sbernici prenaseni smerem k nebo od CPU, ale pokud zadne zarizeni konkretni port nepouziva, zadna data na sbernici ani neposila a procesor cte jen stav, ktery by mel byt diky odporum prave 255. >> >> To znamena nacitat opakovane za sebou mnohokrat furt stejny port a sledovat, jestli vraci stabilne 255. Pokud ano, s nejvetsi pravdepodobnosti port neni obsazeny (alespon pro cteni je neobsazeny). >> >> VELESOFT >> >> --- > > > --- >
Ostatní příspěvky vlákna:
[2012/1 (125)] [2012/2 (34)] [2012/3 (57)] [2012/4 (46)] [2012/5 (40)] [2012/6 (44)] [2012/7 (64)] [2012/8 (57)] [2012/9 (32)] [2012/10 (55)] [2012/11 (25)] [2012/12 (63)]
[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)]