AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Assembler gesucht!

Ein Thema von Borti · begonnen am 9. Feb 2004 · letzter Beitrag vom 16. Feb 2004
Antwort Antwort
Seite 2 von 3     12 3      
Borti

Registriert seit: 11. Okt 2003
151 Beiträge
 
#11

Re: Assembler gesucht!

  Alt 15. Feb 2004, 12:22
Zitat:
Mir scheint doch, daß du nur einen der LPTs ansprechen willst. Das sollte auch ohne Treiber möglich sein.
leider nicht unter den 32-bit versionen von windows.
was meinst du mit
Zitat:
Also, "Interrupts aufrufen" kein Problem ... nur welchen?!? Windows selbst hat nen eigenen Mux-Int und Int3 sollte jedem Debugger-Besitzer auch unter Windows was sagen.
Ich hör zum ersten mal davon
gruß,
Borti
Ich hab's versucht
(auch wenn's nicht so aus sieht)
  Mit Zitat antworten Zitat
Chewie

Registriert seit: 10. Jun 2002
Ort: Deidesheim
2.886 Beiträge
 
Turbo Delphi für Win32
 
#12

Re: Assembler gesucht!

  Alt 15. Feb 2004, 14:01
Zitat von Borti:
Zitat:
Mir scheint doch, daß du nur einen der LPTs ansprechen willst. Das sollte auch ohne Treiber möglich sein.
leider nicht unter den 32-bit versionen von windows.
Wieso denn nicht? Eine Möglichkeit: Du öffnest die Datei \\.\LPT (ich hoffe, so heißt sie) und benutzt das Handle in DeviceIOControl.
Martin Leim
Egal wie dumm man selbst ist, es gibt immer andere, die noch dümmer sind
  Mit Zitat antworten Zitat
Assarbad
(Gast)

n/a Beiträge
 
#13

Re: Assembler gesucht!

  Alt 15. Feb 2004, 16:44
Eben, geb ich Chewie voll recht.

Und Interrupts siehe oben + Int2Eh als MUXer
  Mit Zitat antworten Zitat
herges

Registriert seit: 11. Feb 2004
Ort: vor meinem PC
35 Beiträge
 
Delphi 6 Personal
 
#14

Re: Assembler gesucht!

  Alt 15. Feb 2004, 17:18
o.k. Leute wir programmieren in der Schule Delphi, da noch die Version 5.
Und da verwenden wir diese Methode:
Delphi-Quellcode:
asm
   push dx
   mov dx, 888
   mov al, Datenwert
   Out dx, al
   pop dx
end;
Mit Handle kann ich zwar grad nich viel anfangen.
Könnte das mir armen Schüler mal einer genauer erklären, ich kam mit den englischen Help-files noch nie klar.
(Liegt nicht am Englisch.)

Gruß
herges
  Mit Zitat antworten Zitat
Assarbad
(Gast)

n/a Beiträge
 
#15

Re: Assembler gesucht!

  Alt 15. Feb 2004, 17:27
Super, funzt unter Win9x (unter Umständen), auf NT-basierten Systemen wird das Programm sich sehr schnell beruhigen, denn es hat nicht die Rechte privilegierte Befehle auszuführen.
  Mit Zitat antworten Zitat
Chewie

Registriert seit: 10. Jun 2002
Ort: Deidesheim
2.886 Beiträge
 
Turbo Delphi für Win32
 
#16

Re: Assembler gesucht!

  Alt 15. Feb 2004, 18:11
Mit meinen sehr beschränkten Assembler-Kenntnissen würd ich sagen:

Delphi-Quellcode:
asm
   push dx ; Inhalt des Registers DX auf Stack sichern
   mov dx, 888 ; Dezimalzahl 888 in Register DX schreiben
   mov al, Datenwert ; in das Low-Byte des Registers den Wert von Datenwert schreiben
   Out dx, al ; den Datenwert an den Port 888 = LPT senden
   pop dx ; den Inhalt, den DX vorher hatte, wieder in DX schreiben
end;
Ist vielleicht als Anschauungsbeispiel, wie so eine Peripherieansteuerung funktioniert, ganz OK, aber in einem Programm, das wirklich für was gut ist und auch unter WinNTff laufen soll, wenig geeignet.
Martin Leim
Egal wie dumm man selbst ist, es gibt immer andere, die noch dümmer sind
  Mit Zitat antworten Zitat
herges

Registriert seit: 11. Feb 2004
Ort: vor meinem PC
35 Beiträge
 
Delphi 6 Personal
 
#17

Re: Assembler gesucht!

  Alt 15. Feb 2004, 20:15
O.K. war einen Versuch wert.
War von unserem Lehrer ja auch als Beispiel gedacht.
Aber ich schlag mich auch schon mit dem Problem herum.
Deshalb ja auch die Frage nach dem Handle.
  Mit Zitat antworten Zitat
Chewie

Registriert seit: 10. Jun 2002
Ort: Deidesheim
2.886 Beiträge
 
Turbo Delphi für Win32
 
#18

Re: Assembler gesucht!

  Alt 15. Feb 2004, 20:19
Ach so, das Handle. Also:

Unter Windows gibt es eine Vielzahl von Objekten. Jede geöffnete Datei, jedes erzeugte Fenster, jeder Thread usw. ist ein solches Objekt. Um mit einem Objekt irgendwas machen zu können, benötigt man einen Zugriff darauf. Solch einen Zugriff nennt man ein Handle. Handle heißt ja soviel wie Griff, stell dir vor, du hast einen Griff, über den du dein Objekt steuerst. Genauso machst du das mit der Datei: Du lässt dir einen Griff reservieren (CreateFile) und benutzt diesen, um das Objekt zu steuren (DeviceIOControl). Wenn du fertig bist, lässt du den Griff wieder los (CloseHandle).
Martin Leim
Egal wie dumm man selbst ist, es gibt immer andere, die noch dümmer sind
  Mit Zitat antworten Zitat
Assarbad
(Gast)

n/a Beiträge
 
#19

Re: Assembler gesucht!

  Alt 15. Feb 2004, 20:54
Schöne Erklärung. Hier nochmal die Vielzahl an Objekttypen im Bild (siehe Anhang) auf einem W2K Pro.

http://www.delphipraxis.com/download.php?id=4073
Miniaturansicht angehängter Grafiken
objecttypes.png  
  Mit Zitat antworten Zitat
Borti

Registriert seit: 11. Okt 2003
151 Beiträge
 
#20

Re: Assembler gesucht!

  Alt 16. Feb 2004, 13:20
ok, das mit dem handle scheint ein ganz vielversprechender ansatz zu sein. könnt ihr mir mal den code posten? (Ich hab's gestern schon versucht mich selber durch dieverse Bücher, websites und die online-hilfe durchzubeißen bin aber kläglich gescheitert.
Danke,
Borti
Ich hab's versucht
(auch wenn's nicht so aus sieht)
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 3     12 3      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:17 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz