cs_henri12
Messages postés114Date d'inscriptionmercredi 25 février 2004StatutMembreDernière intervention 9 avril 2007
-
6 avril 2007 à 09:07
cs_patatalo
Messages postés1466Date d'inscriptionvendredi 2 janvier 2004StatutModérateurDernière intervention14 février 2014
-
7 avril 2007 à 01:14
je fais un essai de changement de l heure avec l interruption 21h sous le boot
l heure n est pas changer
pourquoi
.286C ;Code de bootsecteur permettant de booter sur le dur, (c) Digit
Code SEGMENT BYTE
ASSUME CS:Code,DS:Code
drive EQU 80h ;pour le lecteur C:
START:
MOV AH, 2Dh ;Set time:
MOV CH, 07h ;CH = heure
MOV CL, 04h ;CL = min
MOV DH, 03h ;DH = sec
INT 21h
XOR AX,AX
CLI
MOV SS,AX
MOV SP,7C00h ;On crée une pile
STI
MOV SI,SP
MOV ES,AX
MOV DS,AX
CLD
MOV DI,0600h
MOV CX,256 ;512 octets
REP MOVSW ;On copie 512 octets de 0000:7C00h vers 0000:0200h
MOV DI,5 ;5 essais pour lire le secteur
MOV AX,Offset boucle
ADD AX,63Eh ;adresse à laquelle on a copié (en 600+Offset du prog)
JMP AX ;On continue à exécuter dans notre copie
boucle: MOV BX,7C00h ;Chargement du secteur de partition du dur
PUSH 0000h
POP ES
XOR DH,DH
MOV DL,drive ;tete numero 0 lecteur C (pour le D mettre 81h)
MOV CX,0001h ;cylindre 0 et secteur 1
MOV AX,0201h ;Lecture d'un secteur en ES:BX
INT 13h
JNC suite
XOR AX,AX
INT 13h ;On reinitialise en cas d'erreur
DEC DI
JNZ boucle
INT 19h ;On reboot après les essais (erreur)
suite: JMP BX ;en 7C00h=secteur de partition chargé
cs_patatalo
Messages postés1466Date d'inscriptionvendredi 2 janvier 2004StatutModérateurDernière intervention14 février 20142 7 avril 2007 à 01:00
salut,
au boot tu n'as pas acces a l'interruption DOS int 21h mais uniquement à celles du BIOS qui peut etre considéré comme le premier systeme d'exploitation du PC.
cs_patatalo
Messages postés1466Date d'inscriptionvendredi 2 janvier 2004StatutModérateurDernière intervention14 février 20142 7 avril 2007 à 01:14
re,
MOV AX,Offset boucle
ADD AX,63Eh ;adresse à laquelle on a copié (en 600+Offset du prog)
JMP AX ;On continue à exécuter dans notre copie
boucle: MOV BX,7C00h ;Chargement du secteur de partition du dur
c'est faux. dans ton cas, ça aurait plutot l'air d'etre ( pas d'ORG ):
mov ax,offset boucle
add ax,600h
jmp ax