;:poke56,111:clr ;:open15,8,15,"s:okimate.pdr":close15 ;:open2,8,2,"okimate.pdr,p,w ;:sys9*4096 ;.opt o2 *=$6f00 ; ; port =1 tmp =2 mem =10 sz =$e len =$10 flg =$14 ; lda #3 sta oft lda #0 sta $fe sta $94 sta $95 ror $4 ror $fd ldx #4 lda $8 beq is4 ldx #5 is4 ldy #1 lda #$b jsr $ffba lda #0 jsr $ffbd jsr $ffc0 ldx #$b jsr $ffc9 cmp #5 bne lab6f18 jsr close sec rts ; lab6f18 lda #>pg2 sta sz+1 lda #et1 bne out5 esc3 lda #1 sta oft ldx #et3 bne out5 esc4 lda #1 sta oft ldx #et4 bne out5 esc5 ldx #et5 bne out5 ; pg2 .byt 8,65,27 et1 .byt 5,$40,39,42,27 et3 .byt 5,$a0,39,42,27 et4 .byt 2,$a0,39,42,27 et5 .byt 0,24,39,42,27 ; out5 sta sz+1 stx sz lda #5 strout sta len dec len l3 ldy len lda (sz),y jsr $ffd2 dec len bpl l3 rts ; print8 ldx #0 l2 txa pha lda adr702b,x jsr out24 pla tax inx cpx #8 bne l2 rts ; adr702b .word 0,0 adr702f .word 0,0 adr7033 .word 0,0 adr7037 .word 0,0 crlf lda #$d jsr $ffd2 bit $fd bpl l4 lda #$a jsr $ffd2 l4 rts ; ff lda #13 jsr $ffd2 jsr $ffd2 jmp $ffd2 ram lda #$34 .byt $2c rom lda #$36 sta port rts ; test lda #>tstr sta sz+1 lda #(ret-1) pha lda #<(ret-1) pha jmp ($12) drehr ldx #7 l8 ror ror adr702b,x dex bpl l8 ret rts drehl ldx #7 l9 rol rol adr702b,x dex bpl l9 rts drehrr ldx #3 l11 ror $4 ror adr702f,x ror $4 ror adr7037,x ror $5 ror adr702b,x ror $5 ror adr7033,x dex bpl l11 rts ; drehll ldx #3 l10 rol $4 rol adr702b,x rol $4 rol adr7033,x rol $5 rol adr702f,x rol $5 rol adr7037,x dex bpl l10 rts ; lab7150 sei jsr ram ldy #3 lab7156 lda (tmp),y pha jsr drehr pla jsr drehr dey bpl lab7156 jsr rom cli rts ; lab7168 sei jsr ram lab716c lda (tmp),y sta $4 tya pha clc adc #8 tay lda (tmp),y sta $5 pla tay bit $fe bpl lab7182 bvs lab7188 lab7182 jsr drehrr jmp lab718b ; lab7188 jsr drehll lab718b dey bpl lab716c jsr rom cli rts ; adr71c4 .byt $8 adr71c5 .byt $0,$1,$7,$2,$6,$3,$5,$4 .byt $4,$5,$3,$6,$2,$7,$1 coding sei jsr ram ldy #7 l5 lda (mem),y bit $fe bpl lab71e2 bvs l6 lab71e2 jsr drehr jmp l7 ; l6 jsr drehl l7 dey bpl l5 jsr rom cli rts ; sign jsr crlf lda #$8b sta tmp+1 lda #0 sta tmp lda #$5c sta $8 lab7202 jsr esc1 lda #$38 sta $9 lab7209 jsr lab7150 jsr print8 clc lda #8 adc tmp sta tmp bcc lab721a inc tmp+1 lab721a dec $9 bne lab7209 jsr crlf jsr jump bit flg bmi lab7250 ror $8 bcs lab723d rol $8 sec lda tmp sbc #$b8 sta tmp lda tmp+1 sbc #1 sta tmp+1 ror $8 lab723d rol $8 sec lda tmp sbc #4 sta tmp lda tmp+1 sbc #0 sta tmp+1 dec $8 bne lab7202 lab7250 rts ; banner ldx #3 lab7256 ror $7 ror $6 dex bne lab7256 inc $6 lda $6 sta $7 lda #$ae sta tmp+1 lda #0 sta tmp lab726f jsr lab7286 bit flg bmi lab7285 clc lda #8 adc tmp sta tmp bcc lab7281 inc tmp+1 lab7281 dec $7 bne lab726f lab7285 rts ; lab7286 lda #7 sta $4 lab728a lda tmp+1 pha lda tmp pha jsr lab72d8 lda $fc beq lab72ba jsr esc1 pla sta tmp pla sta tmp+1 lda #7 sta $6 lab72a4 jsr lab72f5 sec lda tmp sbc #0 sta tmp lda tmp+1 sbc #5 sta tmp+1 dec $6 bpl lab72a4 bmi lab72bc lab72ba pla pla lab72bc jsr crlf jsr jump bit flg bmi lab72d7 clc lda #0 adc tmp sta tmp lda #$28 adc tmp+1 sta tmp+1 dec $4 bpl lab728a lab72d7 rts ; lab72d8 lda #0 sta $fc lda #7 sta $6 lab72e0 jsr lab7312 sec lda tmp sbc #0 sta tmp lda tmp+1 sbc #5 sta tmp+1 dec $6 bpl lab72e0 rts ; lab72f5 lda #7 sta $5 lab72f9 ldy $5 sei jsr ram lda (tmp),y pha jsr rom pla cli jsr lab7332 jsr mprint dec $5 bpl lab72f9 rts ; lab7312 lda #7 sta $5 lab7316 ldy $5 sei jsr ram lda (tmp),y pha jsr rom pla cli jsr lab7332 lda $fc ora $8 sta $fc dec $5 bpl lab7316 rts ; lab7332 ldx $4 lab7334 ror dex bpl lab7334 lda #$fe bcs lab733e lda #0 lab733e sta $8 rts ; mprint ldx #6 lda $8 l12 jsr out24 dex bpl l12 lab7368 rts ; station jsr crlf lda #$8b sta mem+1 lda #0 sta mem jsr lab7369 bit flg bmi lab7368 jsr rutsch ; lab7369 lda #$2e bit $fe bmi lab7371 lda #$a lab7371 sta $8 lab7373 lda #$70 bit $fe bpl lab737a lsr lab737a sta $9 jsr lab738b jsr jump bit flg bmi lab738a dec $8 bne lab7373 lab738a rts ; lab738b bit $fe bpl lab739b jsr esc3 jsr lab7479 jsr lab7479 jmp lab739e ; lab739b jsr esc2 lab739e lda #3 sta tmp+1 lda #$80 sta tmp bit $fe bpl lab73b2 lda #1 sta tmp+1 lda #$c0 sta tmp lab73b2 lda mem clc adc tmp sta tmp lda mem+1 adc tmp+1 sta tmp+1 jsr coding jsr print8 clc lda #8 adc mem sta mem bcc lab73d0 inc mem+1 lab73d0 dec $9 bne lab739e jmp crlf ; rutsch jsr crlf lda #$45 sta $4 l1 lda #$a jsr $ffd2 dec $4 bne l1 lab7426 rts ; card bit $fe bvs lab741c lda #$8b sta mem+1 lda #0 sta mem jmp lab7369 ; lab741c jsr lab7427 bit flg bmi lab7426 jmp crlf ; lab7427 lda #$db sta mem+1 lda #$78 sta mem lda #$2e sta $8 lab7433 lda #$38 sta $9 jsr lab7446 jsr jump bit flg bmi lab7445 dec $8 bne lab7433 lab7445 rts ; lab7446 jsr esc4 lab7449 lda #1 sta tmp+1 lda #$c0 sta tmp lda mem clc adc tmp sta tmp lda mem+1 adc tmp+1 sta tmp+1 jsr coding jsr print8 sec lda mem sbc #8 sta mem lda mem+1 sbc #0 sta mem+1 dec $9 bne lab7449 jmp crlf ; lab7479 lda #0 beq lab747f lda #$80 lab747f sta tmp lab7481 lda #0 jsr out24 dec tmp bne lab7481 rts ; graphic lda #$d sta $8 lab748f lda #$16 sta $9 lab7493 jsr esc5 lda #1 sta tmp+1 lda #$40 sta tmp lda mem clc adc tmp sta tmp lda mem+1 adc tmp+1 sta tmp+1 jsr coding jsr lab74d6 jsr print8 clc lda #8 adc mem sta mem bcc lab74bf inc mem+1 lab74bf dec $9 bne lab7493 jsr crlf clc lda #$90 adc mem sta mem bcc lab74d1 inc mem+1 lab74d1 dec $8 bne lab748f rts ; lab74d6 ldx #7 lab74d8 lda #$ff eor adr702b,x sta adr702b,x dex bpl lab74d8 rts byte brk by1 brk by2 brk by3 brk sleep brk oft brk out24 pha pha lda oft cmp #3 beq lll eor #3 sta oft lll pla sty sleep ldy #7 l24 sta byte asl rol by1 rol by2 rol by3 lda byte asl rol by1 rol by2 rol by3 lda byte asl rol by1 rol by2 rol by3 dey bpl l24 ldy oft nh lda by3 jsr $ffd2 lda by2 jsr $ffd2 lda by1 jsr $ffd2 dey bne nh ldy sleep pla sta 53280 rts