1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36
|
msgRecup: times 256 dw 0
compteur: dw 0
(...)
afficher:
mov byte al,[ebp+8] ;On recupere le caractere dans al
cmp al,0xA ;On regarde si c'est le caractere retour chariot
jz cr_nl ;Si oui on saute vers cr_nl
mov bx,msgRecup
mov [bx+compteur],al
inc word [compteur]
jmp caractere ;On saute vers caractere
cr_nl: ;Retour chariot et nouvelle ligne
mov byte [posY],79 ;On place le curseur en fin de ligne
mov eax,2
mov esi,msgRecup
int 0x80
jmp fin_afficher
caractere:
mov byte [es:edi],al ;On copie le caractere
inc edi
mov byte al,[ds:Attr]
mov byte [es:edi],al ;Et son attribut.
inc edi
(...) |
Partager