Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
Devilkevin aka Kerstin

Anmeldungsdatum: 11.11.2004 Beiträge: 2532 Wohnort: nähe Mannheim
|
Verfasst am: 11.05.2005, 14:25 Titel: Parallelport Fragen |
|
|
Hallo,
nach dem ich FB endlich ans laufen bekommen habe gleich ein kleines Problemchen
Ich möchte den Parallelport (LPT1) ansprechen.
Die Ausgabe müstte ja eigentlich wie in QB mit OUT 888, x laufen.
Doch nun zum eingentlichen Problem:
Gibt es eine möglichkeit festzustellen ob ein Pin aktiv ist (also ob der Strom an is oder nicht) ? Und das mit jedem Einzelnen Pin ?
Ich habe mir den Thread "Eín/Ausgabe am ...." durchgelsen hat mir aber nicht wirklich weitergeholfen bzw. blicke ich da nicht ganz durch  _________________ www.piratenpartei.de |
|
Nach oben |
|
 |
volta
Anmeldungsdatum: 04.05.2005 Beiträge: 1876 Wohnort: D59192
|
Verfasst am: 11.05.2005, 15:32 Titel: |
|
|
Hallo,
Zitat: | Die Ausgabe müstte ja eigentlich wie in QB mit OUT 888, x laufen. |
nein, leider nicht. Wenn du in der Referenz nachschlägst wirst du sehen, dass mit Inp und Out nur noch der Screen - Bereich zu erreichen ist.
Wenn du den LPT - Port anspechen möchtest musst du ein paar "Klimmzüge" machen.
Unter W95/98/ME geht es z.B. über ein ASM - Tool
siehe "Eín/Ausgabe am ...."http://forum.qbasic.at/viewtopic.php?p=8958#8958 .
Unter NT/2000/XP habe ich es bisher nur mit einer DLL (inpout32.dll) geschafft
siehe "Eín/Ausgabe am ...." http://forum.qbasic.at/viewtopic.php?p=8802#8802.
Zitat: | Gibt es eine möglichkeit festzustellen ob ein Pin aktiv ist (also ob der Strom an is oder nicht) ? Und das mit jedem Einzelnen Pin ? |
Dazu würde ich dir raten mal bei http://www.vbarchiv.net/workshop/workshop76.php vorbeizuschauen.
Gruß
Volta _________________ Warnung an Choleriker:
Dieser Beitrag kann Spuren von Ironie & Sarkasmus enthalten.
Zu Risiken & Nebenwirkungen fragen Sie Ihren Therapeuten oder Psychiater. |
|
Nach oben |
|
 |
Devilkevin aka Kerstin

Anmeldungsdatum: 11.11.2004 Beiträge: 2532 Wohnort: nähe Mannheim
|
Verfasst am: 11.05.2005, 16:50 Titel: |
|
|
Ähm das mit dem ASM Tool verstehe ich nicht ganz.
Muss also ein externes Tool laufen oder wie  _________________ www.piratenpartei.de |
|
Nach oben |
|
 |
volta
Anmeldungsdatum: 04.05.2005 Beiträge: 1876 Wohnort: D59192
|
Verfasst am: 11.05.2005, 18:04 Titel: FreeBasic erlaut es direkt Assembler - Befehle einzugeben. |
|
|
Hallo,
nein, das ist kein externes Programm.
FreeBasic erlaubt es, im Basic - Code, direkt Assembler - Befehle zwischen den Anweisungen ASM ... END ASM einzugeben.
Code: | Public Function InPort ( ByVal Port As Integer) As Integer
Dim ERG As Integer
ASM
xor eax, eax
mov edx, [Port]
in al, dx
mov [ERG], eax
End ASM
InPort = ERG
END FUNCTION
Public Sub OutPort ( ByVal Port As Integer, ByVal Wert As Integer)
ASM
mov eax, [Wert]
mov edx, [Port]
out dx, al
End ASM
End Sub |
Diese Function/Sub kopierst du in dein Programm (möglichst an den Anfang das erspart dir die Deklaration) und kanst sie dann nutzen.
Dann nicht als Out 888, xx sondern OutPort 888, xx
Gruß
Volta _________________ Warnung an Choleriker:
Dieser Beitrag kann Spuren von Ironie & Sarkasmus enthalten.
Zu Risiken & Nebenwirkungen fragen Sie Ihren Therapeuten oder Psychiater. |
|
Nach oben |
|
 |
Devilkevin aka Kerstin

Anmeldungsdatum: 11.11.2004 Beiträge: 2532 Wohnort: nähe Mannheim
|
Verfasst am: 11.05.2005, 20:41 Titel: |
|
|
Ok, wusste nicht das FB Asmcode kann. _________________ www.piratenpartei.de |
|
Nach oben |
|
 |
|