Mini projet en assembleur

imi -  
scriptiz Messages postés 1494 Statut Membre -
Bonjour,notre probleme est de faire un programme en assembleur qui permet de faire passer l'écran en mode graphique,afficher le curseur de la souris , attendre que l'utilisateur appuie sur une touche puis faire revenir en mode texte. pour cela , vous devez développer les procédures suivantes:
1- sourispresente qui teste si la souris est installée. cette fonction doit retourner 1 si la souris est installée et 0 si non .
2- modegraphique qui fait passer l'écran en mode graphique 640*200 pixels en 2 couleurs.on utilise la fonction 0 de l'interruption 10h.la valeur à mettre dans le registre al pour ce mode est 6.
3- modetexte qui fait passer l'écran en mode texte 25 lignes ,80colones et 16 couleurs.
4-affichercurseursouris qui sert à afficher le curseur de la souris
A voir également:

1 réponse

scriptiz Messages postés 1494 Statut Membre 425
 
.386

code segment use16

assume cs:code,ds:code

org 100h

debut:

mov ah,09h
mov dx,offset message
int 21h

mov ah,0ch
mov al,0ah
mov dx,offset buffer
int 21h

xor bx,bx
mov bl,bye ptr[buffer+1]
mov byte ptr[buffer+2+bx],0

mov ah,3dh
mov dx,offset buffer+2
mov al,0
int 21h
jc existe_pas

mov bx,ax

mov ah,3ch
mov dx,offset nomcrypte
xor cx,cx
int 21h

mov ah,3dh
mov dx,offset nomcrypte
mov al,1
int 21h

mov word ptr[handle_arrivee],ax

lire_10000_octets:

mov ah,3fh
mov cx,10000
mov dx,offset donnees
int 21h

or ax,ax
jz fin_du_fichier

mov cx,ax
xor di,di

octet_suivant:

not byte ptr ds:[donnes+di]
inc di
loop octet_suivant

mov dx,offset donnees
mov cx,ax
push ax bx
mov bx,word ptr[handle_arrivee]
mov ah,40h
int 21h
pop bx ax

cmp ax,10000
jb fin_du_fichier
jmp lire_10000_octets

fin_du_fichier:

mov ah,3eh
int 21h

mov bx,word ptr[handle_arrivee]
mov ah,3eh
int 21h

ret

mov ah,09h
mov dx,offset erreur
int 21h
ret

message db 10,13,"Entree",10,13
db "(test.txt!)",10,13,'$'
erreur db 10,13,"Erreur!"10,13,'$'

nomcryptedb "cr.txt",0
buffer db 13,14 dup(?)
handle_arriveedw ?
donnees db 10000 dup(?)

code ends

end debut
2