Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Code Segment
- assume CS:Code, DS:Data, SS:Stack
- Start:
- mov ax, Code
- mov DS, ax
- xor di, di
- mov si, 1 ;si-be tároljuk az irányt, vagy +1 akkor lefelé megy vagy -1, akkor felfelé
- xor dx, dx
- push dx
- mov ax,03h
- int 10h
- Torles:
- ;ezeket Fekete írta be, hogy csak sort kelljen törölni
- mov dx, di
- mov dh, dl
- mov dl, 40
- xor bh, bh
- mov ah, 02h
- int 10h
- mov ah, 2
- mov dl,' '
- int 21h
- add di, si ;Sor megváltoztatása, hogy csak sort kelljen törölni
- mov dx, di
- mov dh, dl
- mov dl, 40
- xor bh, bh
- mov ah, 02h
- int 10h
- mov dx, offset Labda
- mov ah, 09h
- int 21h
- Kesleltet:
- mov ah, 01h
- int 16h
- ;jnz Program_Vege
- jz nincsbill
- mov ah, 00h
- int 16h
- cmp al, 27
- jz Program_Vege
- nincsbill:
- xor ah, ah
- int 1ah
- pop cx
- push cx
- mov ax, dx
- sub dx, cx
- push ax
- cmp di, 5
- jnc Ido1
- mov al, 16
- jmp Beallit
- Ido1: ;Az idők a gravitációs gyorsulást hivatottak megvalósítani
- cmp di, 10
- jnc Ido2
- 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
- jmp Beallit
- Ido2:
- cmp di, 15
- jnc Ido3
- mov al, 4 ;itt meg sűrűbben
- jmp Beallit
- Ido3:
- cmp di, 20
- jnc Ido4
- mov al, 2
- jmp Beallit
- Ido4:
- mov al, 1
- Beallit:
- xor ah, ah
- cmp dx, ax
- pop ax
- jc Kesleltet
- pop cx
- push ax
- cmp di, 0 ;ha lentről megyünk felfelé és elérjük a 0. sort, akkor lefelé kell fordulni
- jz Lefele
- cmp di, 24 ;ha az alsó sort elértük akkor felfelé mozgunk
- jz Felfele
- Mozgas:
- jmp Torles
- Lefele:
- mov si, 1
- jmp Mozgas
- Felfele:
- mov si, -1
- jmp Mozgas
- Program_Vege:
- pop cx
- mov ax, 4c00h
- int 21h
- Labda:
- db "O$"
- Code Ends
- Data Segment
- Data Ends
- Stack Segment
- Stack Ends
- End Start
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement