begin process at 2012 05 25 05:34:40
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Assembleur

 > 

Divers

 > 

Général

 > 

Boot et heure


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Boot et heure

vendredi 6 avril 2007 à 09:07:05 | Boot et heure

henri12

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é

Code            ENDS    ;Voilà, c'est fini...
  END     START

vendredi 6 avril 2007 à 09:12:00 | Re : Boot et heure

henri12

que doit on rajouter au code ci  dessus  pour creer un prog.exe qui peut lancer le boot

directement sous dos mais sans faire un reset

merci
samedi 7 avril 2007 à 01:00:11 | Re : Boot et heure

patatalo

Membre Club Administrateur CodeS-SourceS
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.

@++
samedi 7 avril 2007 à 01:14:12 | Re : Boot et heure

patatalo

Membre Club Administrateur CodeS-SourceS
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

@++


Cette discussion est classée dans : code, mov, heure, ax, secteur


Répondre à ce message

Sujets en rapport avec ce message

Conversion hexa vers ascii [ par Cygace ] Bonjour voici un code asm qui convertit un nombre binaire vers de l'ascii. Mais je dois modifiier ce code pour qu'il convertisse de l'hexadecimal vers rs232 [ par TRAX44 ] salut,tout premièrement je sais qu'il ya des exemples sur le site!mais mon problème est autre je tiens à comprendre pourquoi mon code ne fonctionne pa problème d'horloge [ par gctom ] bonjour a tousje vous expose mon problème :je dois réaliser uen horloge qui permet d'afficher l'heure la date et autre chose.ceci étant fait je passe pb affichage console [ par mat74 ] voila je cherche a faire un prog qui affiche 0 ou 1 en fonction de la valeur de ax . et le teste est ds une procedure . mais il y a un pb le prog n'af pb int 21h ah=0ah [ par mat74 ] salut a ts ,voila j'ai fais un programme qui est censé lire une chaine entré par l'utilisateur et ensuite la reafficher . Il me demande bien d'entré u Modifer le vecteur d'interruptions [ par vecchio56 ] Bonjour J'essaie de refaire la source http://www.cppfrance.com/code.aspx?ID=33558 en assembleur (ca consiste à modifier la routine de l'interruption 0 Afficher l'heure avec la memoire video [ par RootASM ] Bonjour,Je voudrais afficher l'heure grace à la mémoire vidéo car elle permet d'économiser une interuption.Quand je le lance sous afd, j'ai bien dans A l'aide... svp [ par monitor100 ] Bonjour a tous,Je suis completement null en assembler, et il faut que je fasse afficher le résultat de la factoriel de 4 soit 24.est ce que quelqu'un fatal error LNK1190 [ par WildChild54 ] Bonjour à tous!Eh bien voilà, je voudrais créer un petit programme affichant l'heure (je sais il y en a déjà plusieurs qui en ont parlé ici) mais j'ai


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,780 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales