mit Ports arbeiten...



  • hallo,

    wollte mal bisle mit ports was machen ...
    nur ich hab da n problem

    ich hab ne unterfunktion , die auf eine bestimmte taste warten soll...
    dazu wollte ich den tastatur-port ansprechen.

    Pausec proc near
    
       mov bp, sp
       pusha
    
       mov dx, 0060h                      ; tastatur-port
       mov bx, [bp+2]                     ; ascii-value
    
       ReadKey: 
         xor ax, ax 
         in al, dx
         cmp ax, bx
         jz EndPause
         jmp Readkey
    
       EndPause:
    
       popa
       ret
    
    Pausec endp
    

    könnte man das so machen ?
    ich hab das Problem , dass er 1. nur auf 'd' reagiert wenn ich 20h übergebe, wobei in meiner ascii tabelle 20h für 'SP' Space steht .. liegts an meiner funktion oder daran, dass die tabelle im 16bit modus anders is ?

    zum anderen kann ich zwar bestimmte tastencodes abfangen, aber er merkt sich anscheinend die taste , wenn ich die funktion ein 2tes mal aufrufe, sodass er beim 2ten mal gleich überspringt..

    wäre dankbar, wenn einer noch ein gutes tut kennt, indem bisle mehr beispiele über ports drinstehen.. ev. bezüglich grafikkarten, soundkarten etc. .. finde sowas kaum..

    mfg
    haMMer



  • Hi.

    Port 60h gibt keine ASCII-codes zurueck.
    Zudem kannst du nicht einfach Werte von Port 60h lesen, da - wie du schon beschrieben hast - ohne einen KB-Reset der Port uU. immer den gleiche Keycode zurueckliefert.

    noisehammer schrieb:

    wäre dankbar, wenn einer noch ein gutes tut kennt, indem bisle mehr beispiele über ports drinstehen.. ev. bezüglich grafikkarten, soundkarten etc. .. finde sowas kaum..

    Da hast du dir aber viel vorgenommen...
    Ich wuerde dir fuer einfachen Zugriff auf Standard PC-Hardware (also Keyboard/Grafikkarte usw.) eher raten, die BIOS-Interrupts zu benutzen, wenn du nicht gerade vor hast, ein ProtectedMode-OS zu basteln.
    Die sind recht schnell, einfach zu benutzen, erfordern kaum Programmieraufwand und vor allem kannst du dir sicher sein, dass dieses Interface auf jedem PC-Kompatiblen System im RM laeuft.

    Docs/Tuts zu allem moeglichen rund um OS-Basteln etc. (also auch IO-Ports/Hardwarebeschreibung) gibt es in den FAQ - im speziellen bei den OSDev Links.

    Mit Beschreibungen zu Soundkarten-I/O-Ports sieht es, wie ich hier bereits schrieb eher schlecht aus.



  • 😃 👍

    ey die links sind ja megafett !!!
    wieso hab ich nich früher schon dort rumgeschnüffelt...

    leck, da gehts ja ab... muhahahaa

    haMMer sets mode to +wahnsinnig

    ey ich weiss net, warum mich das alles so reizt ! es wird immer schlimmer...
    erst 6 monate her..

    mfg


Anmelden zum Antworten