Advertisement
Guest User

Untitled

a guest
Apr 5th, 2020
184
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 di, di
  10.     mov si, 1   ;si-be tároljuk az irányt, vagy +1 akkor lefelé megy vagy -1, akkor felfelé
  11.     xor dx, dx
  12.     push dx
  13.  
  14.     mov ax,03h
  15.     int 10h
  16. Torles:
  17.     ;ezeket Fekete írta be, hogy csak sort kelljen törölni
  18.  
  19.     mov dx, di
  20.     mov dh, dl
  21.     mov dl, 40
  22.     xor bh, bh
  23.     mov ah, 02h
  24.     int 10h
  25.     mov ah, 2
  26.     mov dl,' '
  27.     int 21h
  28.  
  29.     add di, si  ;Sor megváltoztatása, hogy csak sort kelljen törölni
  30.  
  31.     mov dx, di
  32.     mov dh, dl
  33.     mov dl, 40
  34.     xor bh, bh
  35.     mov ah, 02h
  36.     int 10h
  37.     mov dx, offset Labda
  38.     mov ah, 09h
  39.     int 21h
  40.     Kesleltet:
  41.     mov ah, 01h
  42.     int 16h
  43.     ;jnz Program_Vege
  44.     jz nincsbill
  45.     mov ah, 00h
  46.     int 16h
  47.     cmp al, 27
  48.     jz Program_Vege
  49. nincsbill:
  50.     xor ah, ah
  51.     int 1ah
  52.     pop cx
  53.     push cx
  54.     mov ax, dx
  55.     sub dx, cx
  56.     push ax
  57.     cmp di, 5
  58.     jnc Ido1
  59.     mov al, 16
  60.     jmp Beallit
  61. Ido1:           ;Az idők a gravitációs gyorsulást hivatottak megvalósítani
  62.     cmp di, 10
  63.     jnc Ido2
  64.     mov al, 8       ;Különböző mértékű késleltetéseket rakunk a különböző helyeken, itt ritkán lép
  65.     jmp Beallit
  66. Ido2:
  67.     cmp di, 15
  68.     jnc Ido3
  69.     mov al, 4       ;itt meg sűrűbben
  70.     jmp Beallit
  71. Ido3:
  72.     cmp di, 20
  73.     jnc Ido4
  74.     mov al, 2
  75.     jmp Beallit
  76. Ido4:
  77.     mov al, 1
  78. Beallit:
  79.     xor ah, ah
  80.     cmp dx, ax
  81.     pop ax
  82.     jc Kesleltet
  83.     pop cx
  84.     push ax
  85.     cmp di, 0   ;ha lentről megyünk felfelé és elérjük a 0. sort, akkor lefelé kell fordulni
  86.     jz Lefele
  87.     cmp di, 24  ;ha az alsó sort elértük akkor felfelé mozgunk
  88.     jz Felfele
  89. Mozgas:
  90.     jmp Torles
  91. Lefele:
  92.     mov si, 1
  93.     jmp Mozgas
  94. Felfele:
  95.     mov si, -1
  96.     jmp Mozgas
  97. Program_Vege:
  98.     pop cx
  99.     mov ax, 4c00h
  100.     int 21h
  101.  
  102. Labda:
  103.     db "O$"
  104.  
  105. Code    Ends
  106.  
  107. Data    Segment
  108.  
  109. Data    Ends
  110.  
  111. Stack   Segment
  112.  
  113. Stack   Ends
  114.     End Start
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement