Advertisement
Hakuhun

Számláló/időzítővel

Oct 8th, 2018
212
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1.  
  2. Code    Segment
  3.     assume CS:Code, DS:Data, SS:Stack
  4.  
  5. Start:
  6.     mov ax, Code
  7.     mov DS, AX
  8.  
  9.     xor ax, ax ;0. időpillanat
  10.     push ax
  11.    
  12. Kesleltet:
  13.     xor ax, ax ;történt e bill leütés
  14.     mov ah, 01h
  15.     int 16h
  16.  
  17.     jz nincsbill ;ha nem akkor zero flag
  18.    
  19.     mov  ah, 00h ;ha igen akkor lekérjük melyik
  20.     int 16h
  21.     cmp al, 27
  22.     jz Program_Vege
  23.    
  24. nincsbill:
  25.     xor ah, ah
  26.     int 1ah ;rendszeridő lekérése
  27.    
  28.     pop cx ;t0 lekérése
  29.     push cx ;vissza is rakjuk
  30.    
  31.     push dx
  32.     sub dx, cx ; delta t
  33.  
  34.     mov ax, 18 ;1 mp késleltetés beállítása
  35.     cmp dx, ax ;delta t és az elvárt idő összehasonlítása
  36.     pop ax
  37.     jc kesleltet
  38.    
  39.     pop cx
  40.     push ax
  41.    
  42. Kiir:
  43.     mov ax, 03h ;kép törlés
  44.     int 10h
  45.    
  46.     mov dx, offset Szamlalo
  47.     mov ah, 09h
  48.     int 21h
  49.    
  50.     mov di, offset Szamlalo
  51.     mov cl, [di]
  52.     inc cl
  53.     mov [di], cl
  54.    
  55.     jmp Kesleltet  
  56.    
  57.  
  58. Program_Vege:
  59.     mov ax, 4c00h
  60.     int 21h
  61.    
  62. Szamlalo:
  63.     db"0$"
  64.  
  65.  
  66. Code    Ends
  67.  
  68. Data    Segment
  69.  
  70. Data    Ends
  71.  
  72. Stack   Segment
  73.  
  74. Stack   Ends
  75.     End Start
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement