Bonjour ...![]()
j'aimerais bien pouvoir implémenter, sous l'assembleur de Delphi Basm,
un Call Far, un appel inter segment.
Quelqu'un a t il une idée ? Comment écrire ca ?![]()
Tout grand merci a tous.
Bonjour ...![]()
j'aimerais bien pouvoir implémenter, sous l'assembleur de Delphi Basm,
un Call Far, un appel inter segment.
Quelqu'un a t il une idée ? Comment écrire ca ?![]()
Tout grand merci a tous.
Inter ségment ? Pourquoi faire ? Toute l'application est sur un seul ségment...
J'implémente le "Callgate" de Chris_hks complètement en Delphi.
(voir le forum assembleur)
Quand tout est initialisé, je décolle en Ring0 par un call far !
Bon ... j'ai trouvé !
Le Call ou Jmp " Far " n'est pas reconnu en Basm, ni Delphi 6, ni le 7.
Il faut l'implémenter a la main !
exemple :
C'est Mr Pierre Maurette qui m'a donné la solution.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23 asm // Call far absolute 16:32 (adresse complète dans l'opérande) db $9A dd $00000032 dw $0016 // Call far absolute indirect (adresse sur 48 bits trouvée dans DS:00000005) db $FF db $1D dd $00000005 // Call far absolute indirect (adresse sur 48 bits trouvée dans FS:00000005) db $64 db $FF db $1D dd $00000005 // Call far ptr [eax] db $FF db $18 end;
Merci a lui !
voila !
Partager