;:sys36864 ;.opt oo *= 51200 jmp init strout =$ab1e getkey =65508 zpz1 =94 zpz2 =71 screen =53281 frame =53280 input =$ffcf write =$ffd2 cr =13 return =$aad7 name =820 chr =122 chrgot =121 byte =$65 ascflt =$bcf3 round =$bc1b integer =$bc9b kopfz =247 fussz =248 zeig =249 latch =704 maxlin =251 space =$ab3f ga =$ba sa =$b9 fnlen =$b7 lf =$b8 log =55 txt =43 open =$ffc0 chkout =$ffc9 line =252 page =253 axout =$bdcd clrchn =$ffcc close =$ffc3 mem =254 runstop =$a82c quot =255 basic =$a09e table .byte "0100773333333333" t1 .byte "\x93 \xa6\xa6\xa6\xa6 nss programlister \xa6\xa6\xa6\xa6\x11\x11" .byt 13,0 t2 .byt 13 .byte "\x91name des programms ? superl.demo\x9d\x9d\x9d\x9d\x9d\x9d\x9d\x9d\x9d\x9d\x9d" .byt 0 t3 .byte "\x91geraeteadresse ? 4\x9d" .byt 0 t4 .byte "\x91kopfzeilen ? 4\x9d" .byt 0 t5 .byte "\x91fusszeilen ? 4\x9d" .byt 0 t6 .byte "\x91zeilen pro inch (am drucker) ? \x126\x92/\x128\x9d\x9d\x9d\x92" .byt 0 t7 .byte "\x91sekundaeradresse ? " .byt 0 t8 .byte "\x11eingaben okay ? \x12j\x92/\x12n\x92\x9d\x9d\x9d" .byt 0 head .byte " **** list of " .byt 0 head2 .byte " page " .byt 0 m1 .byte "\x93\xa3\xa3\xa3\xa3\xa3\xa3\xa3\xa3\xa3\xa3\xa3\xa3\xa3\xa3\xa3\xa3\xa3\xa3\xa3\xa3\xa3\xa3\xa3\xa3\xa3\xa3\xa3\xa3\xa3\xa3\xa3\xa3\xa3\xa3\xa3\xa3\xa3\xa3\xa3" .byt 13,0 m2 .byte " drucker kontrollieren:" .byt 13 .byte "\x11 - angeschaltet" .byt 13,0 m3 .byte " - angeschlossen" .byt 13 .byte " - papier eingelegt" .byt 13 .byte " - perforierung am druckkopf\x11" .byt 13,0 m4 .byte " * taste druecken *" .byt 13 .byte "\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4\xa4" .byt 13,0 m5 .byte " floppy kontrollieren:" .byt 13 .byte "\x11 - angeschaltet" .byt 13,0 m6 .byte " - angeschlossen" .byt 13 .byte " - richtige disk eingelegt\x11" .byt 13,0 prot .byt 13 .byte "-- programm geschuetzt --" .byt 13,0 getname lda #t2 jsr strout ldx #0 inpt jsr input cmp #cr beq carr sta name,x inx bne inpt carr cpx #0 beq getname lda #0 sta name,x jsr return jmp return getnum lda chr pha lda chr+1 pha ldx #0 numb jsr input cmp #cr beq carig sta latch,x inx bne numb carig lda #0 sta latch,x lda #latch sta chr sty chr+1 jsr chrgot jsr ascflt jsr integer jsr round pla sta chr+1 pla sta chr ldx byte jmp return getkopf lda #t4 jsr strout jsr getnum cpx #50 bcs getkopf stx kopfz jmp return getfuss lda #t5 jsr strout jsr getnum cpx #50 bcs getfuss stx fussz jmp return mass lda #t6 jsr strout lpi jsr getkey cmp #"8" beq lp8 cmp #"6" bne lpi ldy #zpz2 bne stuff lp8 ldy #zpz1 stuff sty maxlin jsr write jsr space jsr write tya sec sbc fussz sta fussz jsr return jmp return pgs jsr return inc line ldx line cpx maxlin bcc pgs jmp pages geraet lda #t3 jsr strout jsr getnum cpx #1 bcc geraet cpx #16 bcs geraet stx ga jmp return get inc zeig bne noinc inc zeig+1 noinc ldy #0 lda (zeig),y rts setdev lda #log sta lf lda #0 sta fnlen rts header ldx kopfz stx line kopp jsr return dex bpl kopp lda #head jsr strout lda #name jsr strout lda #head2 jsr strout inc page ldx page lda #0 jsr axout inc line inc line jsr space lda #"*" ldx #4 stern jsr write dex bne stern jsr return jmp return sen lda #t7 jsr strout ldx ga lda table,x jsr write lda #"\x9d" jsr write jsr getnum stx sa jmp return sure lda #t8 jsr strout yn jsr getkey cmp #"j" beq ja cmp #"n" bne yn jsr ja clc rts ja jsr write jsr space jsr space sec rts check lda #m1 jsr strout lda ga cmp #4 bcc nurok cmp #6 bcs floppy lda #m2 jsr strout lda #m3 jsr strout jmp nurok floppy lda #m5 jsr strout lda #m6 jsr strout nurok lda #m4 jsr strout wait jsr getkey beq wait rts prepare jsr open ldx #log jsr chkout lda #0 sta page lda txt sec sbc #1 sta zeig lda txt+1 sbc #0 sta zeig+1 rts init lda #0 sta frame sta screen lda #t1 jsr strout jsr getname jsr getkopf jsr getfuss jsr mass jsr geraet jsr sen jsr setdev jsr sure bcc init jsr check jsr prepare pages jsr header lines ldx line inc line cpx fussz bcc no jmp pgs no jsr get sta mem jsr get bne noend lda mem bne noend gugge jsr clrchn lda #log jmp close noend jsr get tax jsr get jsr axout jsr space jsr runstop lda #0 sta quot loop jsr get bne such jsr return jmp lines such cmp #$22 bne noquot lda quot eor #255 sta quot lda #34 noquot cmp #128 bcs inter pi jsr write jmp loop inter cmp #255 beq pi bit quot bmi pi sec sbc #$7f tax ldy #255 ruf dex beq first finsft iny lda basic,y bpl finsft bmi ruf first iny lda basic,y bmi last jsr write bne first lda #prot jsr strout jmp gugge last and #$7f jsr write jmp loop