Charger un programme en sachant son secteur

Signaler
Messages postés
328
Date d'inscription
jeudi 26 août 2004
Statut
Membre
Dernière intervention
8 mars 2007
-
Messages postés
328
Date d'inscription
jeudi 26 août 2004
Statut
Membre
Dernière intervention
8 mars 2007
-
Bonjour,
moi j'essaie de charger une ligne de commande (pour un OS que je fais) et là j'essaie de charger une ligne de commande qui se situe sur le 3e secteur de ma disquette.
Comme ferais-je ???
J'ai essayé ceci mais ca ne fonctionne pas :
line:
push es
mov ax,0003
mov es, ax
mov ax,0201
xor bx,bx
mov cx,0003
xor dx,dx
int 13h
pop es
jmp dword 0003:0000
ret

Vous pouvez dire ce que j'ai fais qui ne fonctionne pas ???
Merci !

bloom1

3 réponses

Messages postés
328
Date d'inscription
jeudi 26 août 2004
Statut
Membre
Dernière intervention
8 mars 2007

En passant, je suis en 16 Bits
Messages postés
1466
Date d'inscription
vendredi 2 janvier 2004
Statut
Modérateur
Dernière intervention
14 février 2014
1
salut,

tu ecrase tout simplement ce qu'il y a apres l'adresse FLAT 30H ( es<<4+bx )
et donc tu ecrase la table des vecteurs d'interruption ( 0 - 3FFH ).

en mode reel:
00000:003FF intr table.
00400:005FF bios datas.
00600:9FBFF libre
9FC00:9FFFF ebios datas. ( segment indiqué a biosdata.lpt4 je crois )
A0000:BFFFF video
C0000:FFFFF bios et extentions.

@++
Messages postés
328
Date d'inscription
jeudi 26 août 2004
Statut
Membre
Dernière intervention
8 mars 2007

Ok merci quand même mains maintenant le programme je sais pas si il se charge, car je teste sous BOCHS et la fenête se ferme tout de suite alors quelqu'un pourrais me dire comment empêcher cela ???