Hallo Forum,
ich habe eine PCI-Karte mit internen FPGA. Jetzt muß ich unter MS-DOS 6.22, auf den Speicherbereich zugreifen. Dort muss ich verschiedene Lese - und Schreibzugriffe machen.
Das ganze sollte optimalerweise noch in ein TP 7.0 eingebunden werden. (Ich weiß alles sehr alt, aber seit Jahren extrem stabil und (fast) fehlerfrei, täglich im Gebrauch....)
Zurück zum Problem:
Ich sollte einen Longint bei der Adresse $EA000000 lesen/schreiben.
Im Prinzip sollte das so funktionieren: cnt1:=meml [Speicheradresse];
Ich verstehe nicht wie sich da das Segment und der Offset berechnet. Verwenden tue gerade Freepascal Go32v2.
Vielen Dank
BerLin
Speicherzugriff
-
- Beiträge: 3444
- Registriert: Mo 11. Sep 2006, 10:24
- OS, Lazarus, FPC: svn (Window32, Linux x64, Linux ARM (QNAP) (cross+nativ)
- CPU-Target: X32 / X64 / ARMv5
- Wohnort: Krefeld
Re: Speicherzugriff
Was hat das mit Lazarus zu tun ?
Willst Du ein Lazarus-Programm machen, das die Hardware benutzt ?
Dazu müsstest Du in Windows ein Tool wie Kithara (teuer) installieren oder in Linux einen Device-Treiber schreiben (in C).
In Windows kann man theortisch auch einen Device-Treiber schreiben, das ist aber wohl sehr aufwändig.
(Übrigens: bei PCI ist die Hardware-Adresse nicht fest, sondern wird vom "PCI-BIOS" dynamisch vergeben. Der zugreifende Treiber muss vom PCI-BIOS erst einmal die Adresse herausbekommen. Das habe ich vor eini paar Jahren schon mal mit Kithara unter Delphi gemacht.)
-Michael
Willst Du ein Lazarus-Programm machen, das die Hardware benutzt ?
Dazu müsstest Du in Windows ein Tool wie Kithara (teuer) installieren oder in Linux einen Device-Treiber schreiben (in C).
In Windows kann man theortisch auch einen Device-Treiber schreiben, das ist aber wohl sehr aufwändig.
(Übrigens: bei PCI ist die Hardware-Adresse nicht fest, sondern wird vom "PCI-BIOS" dynamisch vergeben. Der zugreifende Treiber muss vom PCI-BIOS erst einmal die Adresse herausbekommen. Das habe ich vor eini paar Jahren schon mal mit Kithara unter Delphi gemacht.)
-Michael
Re: Speicherzugriff
Hallo Michael,
die Frage habe ich im Freepascal-Forum gestellt. Meine Frage mit meml bezieht sich auf Freepascal.
Die Speicher ist schon "statisch", da sich die Hardware nicht mehr ändert. Ich habe 4x gleiche Hardware.
Die Speicheradresse heraus zu bekommen, ist auch kein Problem. Ich habe im Netz ein OpenSource Pascal gefunden das mir den Speicherbereich der PCI-Karte ausließt. (http://kannegieser.net/veit/programm/index_d.htm" onclick="window.open(this.href);return false; pci104vka.arj).
Das Betriebssystem ist MS-DOS 6.22, und bleibt es. Die Hardware IBM P2 400MHz, 64MB RAM .
Viele Grüße
BerLin
die Frage habe ich im Freepascal-Forum gestellt. Meine Frage mit meml bezieht sich auf Freepascal.
Die Speicher ist schon "statisch", da sich die Hardware nicht mehr ändert. Ich habe 4x gleiche Hardware.
Die Speicheradresse heraus zu bekommen, ist auch kein Problem. Ich habe im Netz ein OpenSource Pascal gefunden das mir den Speicherbereich der PCI-Karte ausließt. (http://kannegieser.net/veit/programm/index_d.htm" onclick="window.open(this.href);return false; pci104vka.arj).
Das Betriebssystem ist MS-DOS 6.22, und bleibt es. Die Hardware IBM P2 400MHz, 64MB RAM .
Viele Grüße
BerLin
Re: Speicherzugriff
>Was hat das mit Lazarus zu tun ?
* Portal»Foren-Übersicht ‹ Programmierung ‹ Freepascal
seine frage ist hier wohl wesentlich passender, als die vielen lazarus fragen die den freepascal teil diese forums "zumüllen"
@BerLin
http://www.freepascal.org/docs-html/user/usersu80.html" onclick="window.open(this.href);return false;
dort steht was von Go32.FPU (vielleicht hilfts)
* Portal»Foren-Übersicht ‹ Programmierung ‹ Freepascal
seine frage ist hier wohl wesentlich passender, als die vielen lazarus fragen die den freepascal teil diese forums "zumüllen"

@BerLin
http://www.freepascal.org/docs-html/user/usersu80.html" onclick="window.open(this.href);return false;
dort steht was von Go32.FPU (vielleicht hilfts)