Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Progr segment
- assume cs:Progr, ds:dane, ss:stosik
- start: mov ax,dane
- mov ds,ax
- mov ax,stosik
- mov ss,ax
- mov sp,offset szczyt
- mov ah,0 ;losowanie pierwszego indeksu
- int 1ah ;zczytanie ilosci taktów procesora od uruchomienia
- xor dh,dh ;czyszczenie rejestru aby wynik w dl byl w zakresie 2 bajtow
- mov bx,dx
- pocz: mov dl,los[bx]
- push bx
- mov ax,160d
- mul dl
- mov bx,ax
- ;zapamietywanie wszystkich znakow z wylosowanej linii
- cld
- push ds
- push ds
- pop es
- mov ax,0b800h
- mov ds,ax
- mov si,bx ;nr lini * 160
- mov di,offset buffor
- mov cx,80
- rep movsw
- ;zasloniecie wyloswanej linii
- pop ds
- mov ax,0b800h
- mov es,ax
- mov di,bx
- mov ah,01000000b ;kolor czerwony
- mov al,32 ;32 to ascii SPACJA
- mov cx,80
- rep stosw
- ;odczekanie 1 sekundy
- mov cx,16d
- xor dx,dx
- mov ah,86h
- int 15h
- ;odsłonięci wybranej linii
- mov si,offset buffor
- mov di,bx
- mov cx,80
- rep movsw
- mov ah,1
- int 16h ;jesli nacisniety klawisz to z=0
- pop bx
- jnz koniec
- inc bx
- jmp pocz
- koniec: mov ah,4ch
- mov al,0
- int 21h
- Progr ends
- dane segment
- buffor dw 80 dup(0)
- los db 17,7,0,1,15,9,14,15,23,1,11,18,14,18,24,12,14,6,19,20,24,6,23,8,19,21,9,21,3,6,13,7,0,9,6,20,24,4,11,9,18,6,5,20,13,12,20,16,2,10,3,23,14,22,23,24,10,20,4,13,8,6,15,22,2,12,18,20,2,9,1,6,16,11,6,7,8,11,23,20,17,5,14,9,17,6,15,22,9,8,13,8,24,12,13,0,4,10,9,17,23,7,14,6,7,20,21,0,12,3,21,6,2,6,14,12,13,24,5,22,18,23,4,18,11,0,2,22,6,11,19,8,11,19,7,1,10,20,21,24,7,14,0,5,3,15,11,8,11,23,24,6,9,3,13,6,8,24,13,14,21,13,20,24,22,14,9,1,24,6,0,4,5,6,19,7,15,2,24,17,2,3,2,21,22,21,4,0,23,8,0,16,5,14,2,3,10,9,18,1,0,11,20,11,0,16,22,16,5,15,0,14,9,12,23,3,24,15,2,0,1,3,5,7,24,11,1,15,12,13,2,10,15,21,4,5,11,7,8,17,0,19,14,4,21,12,5,2,14,2,13,19,20,8,7,1
- dane ends
- stosik segment
- dw 100h dup(0)
- szczyt Label word
- stosik ends
- end start
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement