diff options
Diffstat (limited to 'samples')
-rw-r--r-- | samples/Makefile.samples | 3 | ||||
-rw-r--r-- | samples/testtout.s | 7 |
2 files changed, 6 insertions, 4 deletions
diff --git a/samples/Makefile.samples b/samples/Makefile.samples index 35913b2..9877ae0 100644 --- a/samples/Makefile.samples +++ b/samples/Makefile.samples @@ -7,9 +7,10 @@ .s: ../src/compilo $< tmp.o ../src/linker tmp.o $@ + chmod 755 $@ rm tmp.o all: recherche rechcara sommeentiers testtout clean: - rm -f recherche rechcara sommeenters testtout *.o + rm -f recherche rechcara sommeenters testtout *.o __symbols__ __text__ diff --git a/samples/testtout.s b/samples/testtout.s index 0c1350e..b3e0b5b 100644 --- a/samples/testtout.s +++ b/samples/testtout.s @@ -14,7 +14,7 @@ PROGS DD PROG1, PROG2, PROG3, 0 .text .start MOV R1, R0 ; R1 sera notre compteur de programme -BOUCLE: MOV R2, PROGS[R0] ; On lit l'adresse du nom du prochain programme +BOUCLE: MOV R2, PROGS[R1] ; On lit l'adresse du nom du prochain programme JE R2, R0, FIN ; Si c'est l'adresse nulle, on sort MOV, [0xffffff04], MSG1 ; On affiche le premier morceau de la chaîne MOV, [0xffffff06], R1 ; On affiche le numéro du programme @@ -23,9 +23,10 @@ BOUCLE: MOV R2, PROGS[R0] ; On lit l'adresse du nom du prochain programme MOV, [0xffffff04], MSG3 ; On affiche la dernière chaîne PUSH R1 ; On sauvegarde R1 avant - MOV, [0xffffff0a], R1 ; On appelle le miniOS pour lui demander + MOV, [0xffffff0a], R2 ; On appelle le miniOS pour lui demander ; de charger un autre programme. - POP R1 ; Et on récupère R1 + POP R1 ; On récupère R1, ... + ADD R1, 1 ; .. et on l'incrémente. MOV, [0xffffff04], MSGTERM ; On affiche la chaîne pour dire que l'on vient de sortir JMP BOUCLE ; et on boucle |