Hello,
J'ai un petit programme en BP7 de contrôle d'éclairage de la maison qui écrit et lit direct en mémoire sur l'ancienne plage de carte prototype hex300 à hex302
Tout fonctionne à merveille depuis que j'ai concu cet interface sur mon IBM-PC 8088 sous IBM DOS 5.0 en 1988 qui avait comme langage Basica que j'ai traduit en BP7 en 1990
Cette carte prototype est monté présentement sur un slot ISA d'un P3-800Mhz Asus CUV4X sous W98
Le problème est survenu lorsque j'ai installé XP sur le P3, je n'ai plus accès à la plage de carte prototype. Alors je n'ai pas eu le choix de revenir à W98
Petit exemple de code que j'utilise:
Selon le code, vous voyez bien que ca boucle sans arrêt vu que je ne peu changer les données de l'adresse mémoire.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 Procedure Port_Prise(J,X : Byte); Var I : Byte; Begin Repeat Port[$301]:=J+56+X*64; Delay(1); Port[$301]:=J+X*64; Delay(1); Port[$301]:=J+48; Delay(1); Port_C_8; If Port[$300]=1-X then I:=1 else I:=0; Until I=1; End;
J'ai su qu'il y a moyen de créer un driver pour faire tourner ce programme sous XP, mais je ne sais pas comment.
Ah oui, depuis que je roule ce programme avec des ordis plus performants que mon IBM-PC, je n'ai pas eu le choix d'insérer des Delay() pour laisser le temps de lire les états de la carte de puissance qui se trouve à 100 pieds de la carte interface de l'ordi.
Pour mes Xeon, c'est une autre histoire, je devrai refaire la carte prototype pour slot PCI
Partager