Forum

From PMD 85 Infoserver

Jump to: navigation, search
:: back to start of topic :: back to topic list ::
Message
Author  Author ::  Tomáš Pecina
Posted  Posted ::  2015-11-25 09:57:04 AM
Subject  Subject ::  Re: Čítače 8253
Výsledek je bohužel stejný i na nejnovější versi pro Windows.

Jde o to, že když generuji sudoku, potřebuji relativně hodně bitů entropie, protože vybírám z více než 2^64 možností. Dělám to tak, že mám 128bitové LCG, jehož průběžnou hodnotu při každém stisknutí klávesy uživatelem XORuji s výstupem čítače 1 - vždy dva byty, cyklicky přes celých 16 bytů. Kromě prvního sudoku, které se generuje po pouhých dvou stiscích, tedy z 32 bitů, je tak zaručen skutečně kvalitní pseudonáhodný výběr.

Na vašem emulátoru to ale nebude fungovat, protože první sudoku bude vždy to samé a další budou mít jen několik variant.

Pokud by se jednalo o neřešitelný problém, mohl bych nouzově doplnit "manuální" měření pro první stisknutí, takže u emulátoru s nefunkčním čítačem by se takto získalo aspoň několik bitů entropie a uživatel by nic nepoznal. Je to ale nepěkné a nesystémové řešení.
 
Message
Author  Author ::  Roman Bórik
Posted  Posted ::  2015-11-25 01:23:40 PM
Subject  Subject ::  Re: Čítače 8253
Predpokladám, že to skúšate na PMD 85-1.
O probléme s chybou čítača CT1 na PMD 85-1 som písal už na Vašich stránkach.

> Win verzia emulátora sa, na rozdiel od Linuxovej, stále vyvíja,
> robia sa rôzne o(ú)pravy, pridávajú sa ďalšie periférie a toto je
> dôsledok, že sa v PMD 85-1 nedostávajú hodiny na CT1 PIT 8253.
> Chyba vznikla po pridaní emulácie Myši 602, ktorá tento čítač používa.
> Hodiny sa tak dostanú na CT1 iba ak je pripojená Myš 602 k PMD 85-1.
> Ak si ale zvolíte iný model PMD 85, tak program funguje bez problémov.

V pracovnej verzii emulátora je už táto chyba opravená.
 
Message
Author  Author ::  Libor L.A.
Posted  Posted ::  2015-12-15 06:43:46 PM
Subject  Subject ::  Re: Čítače 8253
Mohu potvrdit, že Arkanoid, který se synchronizuje na T1/8253 opravdu na PMD-85 verze 1 a na Alfě 1 nejede (po startu sektoru zamrzne), protože čeká na dočítání T1 do stavu 00FFh, což dle výše uvedeného nikdy nenastane. Takže tímto potvrzuji Tvou pracovní hypotézu o selektivní chybě taktování T1/8253 pouze u verze 1.
 
Message
Author  Author ::  Tomáš Pecina
Posted  Posted ::  2015-11-25 02:02:03 PM
Subject  Subject ::  Re: Čítače 8253
Výborně, tedy udělám release SUDOKU bez ohledu na tyto problémy, s tím, že v příštích versích vašeho emulátoru už bude chyba opravena. Případně mohu funkci čítače na začátku testovat a pokud nepoběží, program ohlásí chybu HW a nebude pokračovat.

Čítač 2 ve vašem emulátoru po resetu běží, což není v rozporu se specifikací (před naprogrováním je stav 8253 nedefinovaný), ale vzpomínám si, že nešel u některých časnějších PMD (minimálně z prototypové řady, se kterou jsem dlouhou dobu pracoval). Muselo se to řešit hardwarovou úpravou na desce: na pin se přiletoval malý filtrační kondensátor. V SUDOKU tento čítač využívám pro měření času řešení, ale není kriticky důležitý, pokud bude stát, prostě se uživateli zobrazí čas 0:00.
:: back to start of topic :: back to topic list ::