begin process at 2010 03 18 08:54:26
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

divers

 > SAISIE DES TOUCHES AVEC TASM

SAISIE DES TOUCHES AVEC TASM


 Information sur la source

Note :
Aucune note
Catégorie :divers Niveau :Débutant Date de création :26/08/2002 Date de mise à jour :26/08/2002 23:52:04 Vu :3 405

Auteur : cheoles

Ecrire un message privé
Site perso
Commentaire sur cette source (2)
Ajouter un commentaire et/ou une note

 Description

ce programme explique la saisie des touches que l'on peut faire avec tasm.

----===== asmb =====----

Source

  • .model tiny
  • .stack
  • .code
  • org 200h
  • saisie db "[a] afficher menu [b] Afficher le menub [q] quitter?$"
  • bon db "ok sa marche",13,10,'$'
  • saisie2 db "[r] Retour au menu?$"
  • sort db "bye bye!",13,10,'$'
  • bon2 db "Le deuxieme menu marche",13,10,'$'
  • start:
  • ;initialisation du PSP
  • mov ax,@data
  • mov ds,ax
  • ;efface ecran
  • mov ax,0013h
  • int 10h
  • mov ax,003h
  • int 10h
  • ;appel du texte de saisie
  • mov dx,offset saisie
  • mov ah,09h
  • int 21h
  • ; la ligne mov ah,01h est indispensable pour chaque saisie de touche
  • ; sinon rien ne fonctionne
  • mov ah,01h
  • int 21h
  • cmp al,'a' ; si la touche minuscule a est appuyee alors on affiche
  • je menu ; le menu:
  • cmp al,'b'
  • je menu2
  • cmp al,'q' ; si la touche q minuscule est appuyee alors on affiche
  • je sortie ; le menu de sortie
  • menu:
  • mov ax,0013h ;appel du mode texte
  • int 10h ;mode video
  • mov ax,0003h ;efface l'ecran
  • int 10h ;mode video
  • mov dx,offset bon ;appel du texte bon
  • mov ah,09h ;procedure d'affichage
  • int 21h ;du mode msdos
  • mov dx,offset saisie2 ;appelle de la saisie2
  • mov ah,09h ;affiche le message
  • int 21h ;sous msdos
  • mov ah,01h ;appel du mode saisie,sans ca rien ne
  • int 21h ;fonctionne
  • cmp al,'r' ;si la touche r minuscule est appuyee alors
  • je start ;on retourne au menu principale
  • menu2:
  • mov ax,0013h ;appel du mode texte
  • int 10h ;mode video
  • mov ax,0003h ;efface l'ecran
  • int 10h ;mode video
  • mov dx,offset bon2 ;appel du texte bon
  • mov ah,09h ;procedure d'affichage
  • int 21h ;du mode msdos
  • mov dx,offset saisie2 ;appelle de la saisie2
  • mov ah,09h ;affiche le message
  • int 21h ;sous msdos
  • mov ah,01h ;appel du mode saisie,sans ca rien ne
  • int 21h ;fonctionne
  • cmp al,'r' ;si la touche r minuscule est appuyee alors
  • je start ;on retourne au menu principale
  • sortie:
  • mov ax,0013h ;procedure de sortie en effacant l'ecran
  • int 10h ;en mode texte avec l'int 10h
  • mov ax,0003h
  • int 10h
  • mov dx,offset sort ;procedure habituel d'affichage de texte
  • mov ah,09h
  • int 21h
  • mov al,00h ;reinitialise le clavier avant la sortie
  • mov ax,4c00h ;retourne sous le promt (win95)
  • int 21h ;shell msdos
  • end start
  • ;tasm /o menu.asm
  • ;tlink menu.obj
.model tiny
.stack
.code
  org 200h

saisie     db "[a] afficher menu [b] Afficher le menub [q] quitter?$"
bon        db "ok sa marche",13,10,'$'
saisie2    db "[r] Retour au menu?$"
sort       db "bye bye!",13,10,'$'

bon2       db "Le deuxieme menu marche",13,10,'$'

start:

;initialisation du PSP
      mov ax,@data
      mov ds,ax

;efface ecran
      mov ax,0013h
      int 10h
      mov ax,003h
      int 10h

;appel du texte de saisie
      mov dx,offset saisie
      mov ah,09h
      int 21h

; la ligne mov ah,01h est indispensable pour chaque saisie de touche
; sinon rien ne fonctionne

      mov ah,01h
      int 21h

      cmp al,'a'    ; si la touche minuscule a est appuyee alors on affiche 
      je menu       ; le menu:

      cmp al,'b'
      je menu2

      cmp al,'q'    ; si la touche q minuscule est appuyee alors on affiche
      je sortie     ; le menu de sortie

menu:
     mov ax,0013h               ;appel du mode texte
     int 10h                    ;mode video
     mov ax,0003h               ;efface l'ecran
     int 10h                    ;mode video

     mov dx,offset bon          ;appel du texte bon
     mov ah,09h                 ;procedure d'affichage
     int 21h                    ;du mode msdos

     mov dx,offset saisie2      ;appelle de la saisie2
     mov ah,09h                 ;affiche le message
     int 21h                    ;sous msdos

     mov ah,01h                 ;appel du mode saisie,sans ca rien ne 
     int 21h                    ;fonctionne
     
     cmp al,'r'                 ;si la touche r minuscule est appuyee alors
     je start                   ;on retourne au menu principale


menu2:

     mov ax,0013h               ;appel du mode texte
     int 10h                    ;mode video
     mov ax,0003h               ;efface l'ecran
     int 10h                    ;mode video

     mov dx,offset bon2          ;appel du texte bon
     mov ah,09h                 ;procedure d'affichage
     int 21h                    ;du mode msdos

     mov dx,offset saisie2      ;appelle de la saisie2
     mov ah,09h                 ;affiche le message
     int 21h                    ;sous msdos

     mov ah,01h                 ;appel du mode saisie,sans ca rien ne 
     int 21h                    ;fonctionne
     
     cmp al,'r'                 ;si la touche r minuscule est appuyee alors
     je start                   ;on retourne au menu principale



sortie:

     mov ax,0013h               ;procedure de sortie en effacant l'ecran
     int 10h                    ;en mode texte avec l'int 10h
     mov ax,0003h
     int 10h

     mov dx,offset sort         ;procedure habituel d'affichage de texte
     mov ah,09h
     int 21h

     mov al,00h                 ;reinitialise le clavier avant la sortie
     mov ax,4c00h               ;retourne sous le promt (win95)
     int 21h                    ;shell msdos
end start


;tasm /o menu.asm
;tlink menu.obj





 Sources du même auteur

ÉCRIRE SUR LE PREMIER SECTEUR D'UNE DISQUETTE
ECRIRE EN COULEUR AVEC TASM

 Sources de la même categorie

Source avec une capture DESSIN DE RECTANGLES (POSITION, TAILLE, COULEUR, ÉPAISSEUR) par macsou01
RECHERCHE DES PALINDROMES D'UN TEXTE SAISI. par PCBill
Source avec Zip LIBRAIRIE GRAPHIQUE (ET PLUS) EN MODE RÉEL par epineurien
Source avec Zip Source avec une capture LIB PROGRESSBAR (PERSONNALISABLE , DÉGRADÉ DE COULEUR,POURCE... par knetus
Source avec Zip Source avec une capture AFFICHE COULEUR par knetus

Commentaires et avis

Commentaire de Choumoumou le 08/02/2005 14:54:35

pas mal, mais si on appuie sur nimporte kelle touche, le programme continue. je te propose d'écrire

jmp start

juste après

cmp al,'r'
je start

pour ke si une autre touche (échap, entrée...) est appuyé, rien ne se passe.

Commentaire de Choumoumou le 08/02/2005 14:56:58

heu, non, escuse je me suis trompé.

jmp start

juste après

cmp al,'q'
je sortie

voilà.
a +

 Ajouter un commentaire




Nos sponsors


Appels d'offres

Sondage...

CalendriCode

Mars 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728
293031    

Consulter la suite du CalendriCode

Photothèque

 
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,546 sec (4)

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