Charger un programme en sachant son secteur

cs_bloom1 Messages postés 328 Date d'inscription jeudi 26 août 2004 Statut Membre Dernière intervention 8 mars 2007 - 10 nov. 2005 à 02:37
cs_bloom1 Messages postés 328 Date d'inscription jeudi 26 août 2004 Statut Membre Dernière intervention 8 mars 2007 - 12 nov. 2005 à 02:17
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

cs_bloom1 Messages postés 328 Date d'inscription jeudi 26 août 2004 Statut Membre Dernière intervention 8 mars 2007
10 nov. 2005 à 02:40
En passant, je suis en 16 Bits
0
cs_patatalo Messages postés 1466 Date d'inscription vendredi 2 janvier 2004 Statut Modérateur Dernière intervention 14 février 2014 2
11 nov. 2005 à 11:25
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.

@++
0
cs_bloom1 Messages postés 328 Date d'inscription jeudi 26 août 2004 Statut Membre Dernière intervention 8 mars 2007
12 nov. 2005 à 02:17
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 ???
0
Rejoignez-nous