TRAWR ldaa NAPAK ;nalozi spr. NAPAK beq ODKL ; ce je 0 skoci na ODKL jmp STAV1 ;skoci na STAV1 ODKL ldaa ODKLENI ;nalozi spr. ODKLENI beq KON ; ce je 0 skoci na KON (konec) ldx #STAVEK2 ;v x nalozi naslov stavka2 jmp TRAWR1 ;skoci na rutino TRAWR1(vpis znakov v medp. STAV1 ldx #STAVEK1 ;v x nalozi naslov stavka2 pshx ;x spravi na sklad jsr INIT ;skoci na subrutino INIT (inicializacija) pulx ;potegni x iz sklada TRAWR1 ldab 0,X ;nalozi v ak. b vrednost iz naslova x pshx ;x spravi na sklad ldx TRAE ;v x nalozi logicni konec medpomn. stab 0,X ;vsebino ak. b shrani tam kamor kaze x inx ;x povecaj za 1 cpx #TRAE ; in ga primerjaj s fizicnim koncem beq KK3 ;ce sta enaka skoci na KK3 stx TRAE ;shrani nov logicni konec pulx ;nalozi stari x iz sklada inx ; povecaj ga za 1 jmp TRAWR1 ;skoci na rutino TRAWR1 KK3 pulx ;nalozi x iz sklada KON rts ;in koncaj ta podprogram TRARD ldaa _TRCSR ;nalozi v ak. a stanje v registru _TRCSR rola ;rolaj rola ;rolaj bpl KON1 ;ce je tretji bit 0 skoci na KON1 ldx TRAB ;nalozi v x logicni zacetek medpomn. cpx TRAE ; in ga primerjaj z log. koncem medp. beq KON2 ;ce sta enaka skoci na KON2 ldaa 0,x ;nalozi v ak. a naslov log. zacetka medp. inx ;povecaj x za 1 cpx #TRAE ; in ga primerjaj z nasl. konca medp. bne SKOK ;ce nista enaka skoci na SKOK ldx #TRAB+2 ;nalozi v x naslov TRAB+2 SKOK stx TRAB ;shrani ga kot log. zacetek medpomn. staa _TDR ;stanje iz ak. a pošlji v oddajni register KON1 rts ;vrnitev iz subrutine KON2 ldaa #%11111111 ;zakasnitev SKOK3 deca bne SKOK3 jmp KON1