;:poke56,128:clr ;:open2,8,2,"code,p,w ;:sys36864 ;.opt o2 *= 2061 name =$c240 ready =$c200 pos =3 hin =4 p2 =2 tok =$c300 error =$c400 fehler =$c280 adr =181 jmp run jmp save run jsr 65409 jsr $ffe7 lda #47 sta 0 lda #55 sta 1 lda #15 sta 53281 lda #12 sta 53280 lda #hi1 jsr $ab1e lda #160 jsr copy lda #224 jsr copy ldx #6 stx 59639 lda #53 sta 1 lda #-1 sta $ebb4 sta $ebf5 sta $ec36 sta $eb88 sta $ebc9 sta $ec0a sta $ebc3 sta $ec04 lda #hi2 jsr $ab1e lda #hi3 jsr $ab1e lda #0 tax ac sta $c200,x sta $c300,x sta $c400,x sta $c500,x sta $c600,x inx bne ac e1 jsr $ffcf cmp #13 beq e2 sta name,x inx bne e1 e2 txa beq run sta $c27f e5 lda #hi4 jsr $ab1e ldx #0 e3 jsr $ffcf cmp #13 beq e4 sta ready+1,x inx bne e3 e4 sta ready sta ready+1,x txa beq e5 lda #hi5 jsr $ab1e ldx #0 stx pos stx hin e6 lda 214 pha lda #frt jsr $ab1e lda #255 eor hin tax lda #0 jsr $bdcd lda #20 sta 211 lda #dift jsr $ab1e ldy #32 lda pos sec sbc hin beq equal bpl plus ldy #"-" eor #-1 adc #1 .byt $2c plus ldy #"+" equal tax tya jsr $ffd2 lda #0 jsr $bdcd pla sta 214 lda #hi6 jsr $ab1e ldx pos e7 lda $a09e,x pha and #127 jsr $ffd2 inx pla bpl e7 stx p2 lda #11 sta 646 lda #2 sta 211 ldx hin e8 jsr $ffcf cmp #13 beq e9 and #127 cmp #32 beq ee6 cmp #58 beq ee6 sta tok,x inx bne e8 jsr $aad7 lda #errt jsr $ab1e jsr key jmp run e9 cpx hin bne n ee6 jmp e6 n lda tok-1,x ora #128 sta tok-1,x stx hin ldx p2 stx pos lda $a09e,x bne ee6 lda #hi7 jsr $ab1e ldx #0 stx pos ldy #>error stx adr sty adr+1 jsr 59903 ea lda #hi6 jsr $ab1e lda pos asl tax lda $a328,x sta $22 lda $a329,x sta $23 ldy #0 eb lda ($22),y pha and #127 jsr $ffd2 iny pla bpl eb lda #$69 ldy #$a3 jsr $ab1e lda #11 sta 646 lda #2 sta 211 ldy #0 ec jsr $ffcf cmp #13 beq ed and #127 sta (adr),y iny bne ec ed tya beq ea dey lda (adr),y ora #128 sta (adr),y iny lda pos asl tax lda adr sta fehler,x lda adr+1 sta fehler+1,x tya clc adc adr sta adr bcc ee inc adr+1 ee inc pos lda pos cmp #30 bcc ea lda #hi8 jsr $ab1e jsr key save lda #hi9 jsr $ab1e lda $c27f ldx #name jsr $ffbd ldx #8 lda #1 tay jsr $ffba jsr $ffc0 ldx #1 jsr $ffc9 lda #0 tay jsr $ffd2 lda #192 jsr $ffd2 c1 lda code,y jsr $ffd2 iny bne c1 c2 lda code+256,y jsr $ffd2 iny bne c2 c3 lda ready,y jsr $ffd2 iny bne c3 c4 lda tok,y jsr $ffd2 iny bne c4 sty pos lda #>error sta pos+1 c5 lda pos+1 cmp adr+1 bcc c6 bne c7 lda pos cmp adr bcs c7 c6 lda (pos),y jsr $ffd2 inc pos bne c5 inc pos+1 bne c5 c7 jsr $ffcc lda #1 jsr $ffc3 lda #55 sta 1 rts copy sta 3 ldy #0 sty 2 ldx #32 cp1 lda (2),y sta (2),y iny bne cp1 inc 3 dex bne cp1 rts key lda #0 sta 198 ky cmp 198 beq ky sta 198 rts hi1 .byte "\x11\x97\x08 \xac\xa2\xa2\xa2\xa2\xa2\xa2\xa2\xa2\xa2\xa2\xa2\xa2\xa2\xa2\xa2\xa2\xa2\xa2\xa2\xa2\xa2\xa2\xa2\xa2\xa2\xa2\xa2\xa2\xa2\xa2\xa2\xa2\xa2\xa2\xa2\xa2\xbb" .byte " \x12\xa1 the basic-construction-set \x92\xa1" .byte " \x12\xa1 von nikolaus m. heusler \x92\xa1" .byte " \x12\xa1 customizer revision #1 nh 3.92 \x92\xa1" .byte " \x12\xa1copyright most strenuously reserved!\x92\xa1" .byte " \xbc\x12\xa2\xa2\xa2\xa2\xa2\xa2\xa2\xa2\xa2\xa2\xa2\xa2\xa2\xa2\xa2\xa2\xa2\xa2\xa2\xa2\xa2\xa2\xa2\xa2\xa2\xa2\xa2\xa2\xa2\xa2\xa2\xa2\xa2\xa2\xa2\xa2\x92\xbe" brk hi2 .byt 13 .byte "\x11definieren sie ihren persoenlichen basic" .byte "dialekt. ueberschreiben sie die weissen" .byte "vorgaben und betaetigen nach jeder ein-" .byte "gabe die return-taste." .byt 13 .byte "bitte nicht die bildschirmzeilen verlas-" brk hi3 .byte "sen!" .byt 13 .byte "\x11\x1fwie soll der basic-dialekt heissen?" .byt 13 .byte "name: \x05cbmbasic\x9d\x9d\x9d\x9d\x9d\x9d\x9d\x9d\x97" brk hi4 .byt 13 .byte "\x11\x1fprompt: \x05ready.\x9d\x9d\x9d\x9d\x9d\x9d\x97" brk frt .byte "\x13\x98freie zeichen:\x05 \x9d\x9d\x9d" brk dift .byte "\x98differenz:\x05 \x9d\x9d\x9d\x9d" brk hi5 .byt 13 .byte "\x11\x1fbitte die neuen befehlswoerter eingeben" .byt 13,0 errt .byte "\x11\x97achtung: speichergrenze ueberschritten" .byt 13 .byte "(return fuer neustart)" brk hi6 .byt 13 .byte "\x1f- \x05" brk hi7 .byt 13 .byte "\x11\x1fjetzt die neuen fehlermeldungen:" .byt 13,0 hi8 .byt 13 .byte "\x11\x1fbitte diskette einlegen - return" brk hi9 .byt 13 .byte "\x11-wird gespeichert-\x11" brk code =*