Forum

From PMD 85 Infoserver

Jump to: navigation, search
:: back to start of topic :: back to topic list ::
Message
Author  Author ::  Roman Bórik
Posted  Posted ::  2013-07-24 08:04:01 PM
Subject  Subject ::  Re: Detekce připojené disketové jednotky
V hre Plotting (viď. zdrojáky) mám po spustení hry použitý tento test:

; Test, či je pripojená PMD 32 na GPIO-0.
; Pokiaľ je pripojená PMD 32 na GPIO-0, tak sa Joystick bude testovať na GPIO-1.
; Ak PMD 32 pripojená nie je, Joystick sa bude testovať štandardne na GPIO-0.
CheckPort:  MVI A,0C2h        ; inicializuj GPIO 8255
            OUT Pio55Ctrl     ; SK A: MOD 2, A-IN/OUT, SK B: MOD 0, B-IN, C03-OUT
            MVI A,09h         ; 1->C4 povolenie prerušovacieho signálu INTRA
            OUT Pio55Ctrl     ; pre vstup na porte A
            MVI A,0Ch         ; 0->C6 zakázanie prerušovacieho signálu INTRA
            OUT Pio55Ctrl     ; pre výstup porte A
            LXI D,4000        ; timeout asi 100 ms
CheckPort2: IN  Pio55C        ; zisti stav INTRA
            ANI 8
            JZ  CheckPort3    ; ak je INTRA=0, skoč dopredu
            IN  Pio55A        ; precitaj prijatý byte
            CPI 0AAh          ; je to prezentačný byte 0AAh od PMD 32?
            JNZ CheckPort4    ; nie, skoč dopredu

            MVI A,1           ; PMD 32 je pripojená,
            MVI B,Pio55B      ; tak pre Joystick použijeme GPIO-1
            JMP CheckPort5

CheckPort3: DCX D             ; zniz počítadlo timeoutu
            MOV A,D
            ORA E
            JNZ CheckPort2    ; a ak nie je nulové, vráť sa do slučky

CheckPort4: MVI A,92h         ; PMD 32 zrejme nie je pripojená,
            OUT Pio55Ctrl     ; tak pre Joystick použijeme GPIO-0
            MVI A,10h
            MVI B,Pio55A
CheckPort5: OUT Pio55C
            MOV A,B
            STA TestJoyPort+1 ; zapíš číslo portu Joysticku
 
Message
Author  Author ::  Libor L.A.
Posted  Posted ::  2013-07-24 08:58:01 PM
Subject  Subject ::  Re: Detekce připojené disketové jednotky
Super, díky moc. To je asi přesně to, co jsem potřeboval. Zítra se na to mrknu.
:: back to start of topic :: back to topic list ::