Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ; definice pro nas typ procesoru
- .include "m169def.inc"
- ; podprogramy pro praci s displejem
- .org 0x1000
- .include "print.inc"
- .org 0x0500
- str: .db " PRILIS ZLUTOUCKY KUN UPEL DABELSKE ODY ",0
- ;str: .db " AHOJ. ",0
- ; Zacatek programu - po resetu
- .org 0
- jmp start
- ; Zacatek programu - hlavni program
- .org 0x100
- start:
- ; Inicializace zasobniku
- ldi r16, 0xFF
- out SPL, r16
- ldi r16, 0x04
- out SPH, r16
- ; Inicializace displeje
- call init_disp
- ; *** ZDE muzeme psat nase instrukce
- begin:
- ldi r30, low(2*str) ;zacatek stringu
- ldi r31, high(2*str) ;konec stringu
- ldi r28, low(2*str) ;zacatek stringu
- ldi r29, high(2*str) ;konec stringu
- ld r16, Y ; kontrola posledniho bajtu
- infinity:
- call draw ; vykreslime znaky
- cpi r16, 0x0 ; kontrola null na konci
- breq begin ; konec stringu, zpet na zacatek
- ;call wait ; pauza
- ld r16, Y+ ; posuneme se o znak
- movw r30, r28 ;
- jmp infinity
- end:
- ; Zastavime program - nekonecna smycka
- rjmp PC
- draw:
- ldi r17, 1
- ldi r18, 7
- cycle:
- lpm r16, Z+
- inc r17
- call show_char
- cpse r17, r18
- jmp cycle
- ret
- wait:
- ldi r22, 100
- cek3:
- nop
- nop
- nop
- nop
- nop
- nop
- nop
- nop
- nop
- ldi r21, 100
- cek2:
- nop
- nop
- nop
- nop
- nop
- nop
- nop
- nop
- nop
- ldi r20, 100
- cek:
- nop
- nop
- nop
- nop
- nop
- nop
- nop
- nop
- nop
- dec r20
- brne cek
- dec r21
- brne cek2
- dec r22
- brne cek3
- ret
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement