;:poke56,117:clr:sys65418 sys36864 ;.opt oo *= 30000 tmp =2 sc =50176 fa =55296 mupos =570+57344 pos =4 erst =sc+99 fa1 =fa+96 fa2 =fa1+40 fa3 =fa2+40 scopos =sc+150 unte =erst+677 blopos =scopos+320 levpos =blopos+160 buff =$c000 bild =$d1 levchg =30 ;score pro level maxlev =15 ;anzahl level reihe =3 ;mindestlaenge reihe mainspd =3 ;spielgeschwindigkeit pauspos =fa+322 sw1pos =sc+686 sw2pos =sw1pos+120 sw3pos =sw1pos-120 joyent =40 ;entprellung fuer joystick sw4pos =sw3pos-120 mogsco =20 ;abzug bei mogeln oksco =2 ;punkte pro erfolg prepos =sc+792 mospd =6 ;joker-grins-geschwindigkeit eye =240 ;wahrscheinlichkeit fuer auge offen laufpos =sc+778 broad =3 ;breite der laufschrift high =$c100 hihi =30 ;anzahl highscores flop =8 kennung =high+251 hiend =8*hihi mne =164 ;verschluesselung hof-file toleranz =2 ;wartezeit im titelbild hibuf =820 untst =sc+921 upspeed =20 ;highscore-scroll-speed higpos =scopos+160 blipos =fa+616 govpos =sc+457 lvepos =sc+667 dimem =$cf00 govwor =850 lvsco =5 ;score fuer neues level jmp start fr .byte "\x08\xa4\x19&\xa0\xa1" .byte "\xa5\x19& \xa5\xa5\x19& \xa5\xa5\x19& \xa5\xa5\x19& \xa5\xa5\x19& \xa5\xa5\x19& \xa5" .byte "\xa5\x19& \xa5\xa5\x19& \xa5\xa5\x19& \xa5\xa5\x19& \xa5\xa5\x19& \xa5\xa5\x19& \xa5" .byte "\xa5\x19& \xa5\xa5\x19& \xa5\xa5\x19& \xa5\xa5\x19& \xa5\xa5\x19& \xa5\xa5\x19& \xa5" .byte "\xa5\x19& \xa5\xa5\x19& \xa5\xa5\x19& \xa5\xa5\x19& \xa5\xa5\x19& \xa5" .byte "\xa3\x19&\xa0\x13\x03" fe .byte "\x93\x19\x05\x11" .byte "\x19\x0f\x1dI\x19\x07 J\x1a\x19\x0f\x1dI\x19\x07 J\x1a\x19\x0f\x1dI\x19\x07 J\x1a\x19\x0f\x1dI\x19\x07 J\x1a\x19\x0f\x1dI\x19\x07 J\x1a" .byte "\x19\x0f\x1dI\x19\x07 J\x1a\x19\x0f\x1dI\x19\x07 J\x1a\x19\x0f\x1dI\x19\x07 J\x1a\x19\x0f\x1dI\x19\x07 J\x1a\x19\x0f\x1dI\x19\x07 J\x1a" .byte "\x19\x0f\x1dI\x19\x07 J\x1a\x19\x0f\x1dI\x19\x07 J\x1a\x19\x0f\x1dI\x19\x07 J\x1a\x19\x0f\x1dI\x19\x07 J\x1a\x19\x0f\x1dI\x19\x07 J\x1a" .byte "\x19\x0f\x1dM\x19\x07KL\x13\x11" .byte "\x1a\x19\x1d\x1d\xab\xac\xad\xae\xaf\xa6\xa7\x1a\x19\x1d\x1d\xa8\x19\x05\xdf\xa8\x1a\x19\x1d\x1d\xa9\x19\x05\xa6\xaa" .byte "\x1a\x1a\x19\x1d\x1d\xab\xb0\xb1\xb2\xa6\xa6\xa7\x1a\x19\x1d\x1d\xa8\x19\x05\xdf\xa8\x1a\x19\x1d\x1d\xa9\x19\x05\xa6\xaa" .byte "\x1a\x1a\x19\x1d\x1d\xab\xb7\xb8\xb9\xba\xa6\xa7\x1a\x19\x1d\x1d\xa8\x19\x05\xdf\xa8\x1a\x19\x1d\x1d\xa9\x19\x05\xa6\xaa" .byte "\x1a\x1a\x19\x1d\x1d\xab\xb3\xb4\xb5\xb6\xa6\xa7\x1a\x19\x1d\x1d\xa8 \xdf\xdf \xa8\x1a\x19\x1d\x1d\xa9\x19\x05\xa6\xaa" .byte "\x1a\x1a\x19\x1e\x1d\xab\x12\xc0AB\x92\xa7\x1a\x19\x1e\x1d\xa8 \xa8\x1a\x19\x1e\x1d\xa8 \xa8\x1a\x19\x1e\x1d\xa8 \xa8\x1a\x19\x1e\x1d\xa9\xa6\xa6\xa6\xaa" .byte "\x13\x19\x07\x11" .byte "\x1a\x1d\x1d\x9bpaused\x97" .byte "\x1a\x1a\x1d\x1d\x12y\x92\x91\x9d~\x11review\x1a\x1d\x1d\x1don ]\ off" .byte "\x1a\x1a\x1d\x1d\x12z\x92\x91\x9d~\x11nvers\x1a\x1d\x1d\x1don ]\ off" .byte "\x1a\x1a\x1d\x1d\x12[\x92\x91\x9d~\x11heat\x1a\x1d\x1d\x1don ]\ off" .byte "\x1a\x1a\x1d\x1d\x12\\x92\x91\x9d~\x11oker\x1a\x1d\x1d\x1don ]\ off" .byte "\x13\x19\x17\x11\x19\x0a\x1d\x12\xac\xad\xae\xaf\xb0\xb1\xb2\xb3\xb4\xb5\xb6\xb7\xb8\xb9\xba\xbb\xbc\xbd\xbe\xbf\x13\x03" mat .byte "\x13\x1a\x19\x13\x1d\x19\x12\x11N\x91Q\x91\x9dR\x91\x9dS\x91\x9d\x9d\x9d\x9d\x12CDEFG\x92\x03" ma0 .byte "\x13\x19\x0f\x11\x19\x11\x1d \x11\x9d\x9d \x11\x9d \x11\x9d \x03" titt .byte "\x1a\x93\x12\x11" .byte "\x1d\x19&U\x1d\x1d\x19&U\x1d\x1d\x19&U\x1d\x1d\x19&U\x1d\x1d\x19&U\x1d\x1d\x19&U\x1d" .byte "\x1d\x19&U\x1d\x1d\x19&U\x1d\x1d\x19&U\x1d\x1d\x19&U\x1d\x1d\x19&U\x1d\x1d\x19&U\x1d" .byte "\x1d\x19&U\x1d\x1d\x19&U\x92\x1d\x1d\x19&\xbb\x03" tit1 .byte "\x13\x19\x11\x11\x19\x05\x1dprogrammed by nikolaus heusler" .byte "\x1a\x11\x19\x06\x1dcopyright is most strenously" .byte "\x1a\x1d\x1dreserved. our lawyers are watching!" .byte "\x1a\x11\x1d\x1dG\x19\x08\x1d\x12~\x92 by nh-110391-arr\x19\x08\x1dG\x03" tit2 .byte "\x13\x19\x11\x11\x1d\x1d\x12V\x1dWXYY\x1dZ\xdb\x1d\xdbX\xdc\xdd\x1dV\x1a" .byte "\x11\x19\x04\x1dbest players\x1a\x19\x03\x1din the world !\x03" tit3 .byte "\x13\x19\x13\x11\x19\x09\x1dstart at level \xbd\x91\x9d\xbc\x1d\x1d\x12b\x9d\x11c\x1d\x92\x91\xbe\x11\x9d\xbf\x03" sctx .byte "\x93\x11\x11" .byte "\x19\x04\x1d\xab\x19\x1e\xa6\xa7\x1a\x19\x04\x1d\xa8\x19\x1e\x1d\xa8" .byte "\x1a\x19\x04\x1d\xa8 g r e a t s c o r e ! ! \xa8" .byte "\x1a\x19\x04\x1d\xa8\x19\x1e\x1d\xa8\x1a\x19\x04\x1d\xa9\x19\x1e\xa6\xaa" .byte "\x1a\x1a\x1a\x1d\x1dcongratulations! your score quali-" .byte "\x1a\x1a\x1d\x1dfies you for the \x12V\x1dWXYY\x1dZ\xdb\x1d\xdbX\xdc\xdd\x1dV\x92 !" .byte "\x1a\x1a\x1d\x1dyou're new\x11\x11\x19\x04\x1dnumber \x03" sct2 .byte "\x1a\x1a\x1a\x1d\x1dplease enter your name (maximum 5" .byte "\x1a\x1a\x1d\x1dcharacters) and press \x12vwtuvx\x92\x91\x19\x06\x9d\x19\x06~" .byte "\x1a\x1a\x1a\x19\x0f\x1d>\x03" name1 .byt %01110001,%10001000,%00100100,%10010011,%10000111 .word 0 name2 .byt %10000010,%01001000,%00100100,%11110010,%01001000 .word 0 name3 .byt %10000010,%01001000,%00100100,%10010010,%01000110 .word 0 name4 .byt %10000010,%01001000,%00100100,%10010010,%01000001 .word 0 name5 .byt %10000010,%01001000,%00100100,%10010010,%01000001 .word 0 name6 .byt %01110001,%10001111,%00011000,%10010010,%01001110 .word 0 name .word name1,name1,name2,name2,name3,name3 .word name4,name4,name5,name5,name6,name6 grbit .byt 128,64,32,16,8,4,2,1 hike .byte "nss91" zepo .word 10000,1000,100,10 levspd .byt 255,245,230,215,200,185,170,155,140 .byt 120,100,80,60,40,20 sw1 .byt 29,27 sw2 .byt 30,28 ovpos .byt 0,1,2,3,4,40,41,42,43,44 mouth =247 seed =155 speed =171 phase =159 joy =34 ojoy =35 prell =36 posline =158 fast =179 score =166 display =248 ziffer =69 zei1 =142 equal =146 soll =143 uzei =141 didsc =139 zahl =70 level =170 blocks =168 blockz =180 foundflg =140 pause =249 pauscnt =250 joker =177 cheat =176 key =37 prev =178 first =72 stick =253 weg =254 renn =255 scroz =6 scropos =7 sbreit =181 wart =113 hinum =182 blink =251 over =252 scfn .byte "s:" fina .byte "columns.hof,u," mode brk strout tax lda tmp pha lda tmp+1 pha stx tmp sty tmp+1 st1 ldy #0 lda (tmp),y beq st7 cmp #"\x03" bne st2 st7 pla sta tmp+1 pla sta tmp rts st2 cmp #"\x19" beq st3 cmp #"\x93" beq st5 cmp #"\x1a" bne st8 lda #141 st8 jsr $ffd2 st6 inc tmp bne st1 inc tmp+1 bne st1 st3 iny lda (tmp),y tax iny lda (tmp),y st4 jsr $ffd2 dex bne st4 lda #3 clc adc tmp sta tmp bcc st1 inc tmp+1 bne st1 st5 jsr $e544 lda #fr jsr strout lda #98 sta sc+999 lda 646 sta fa+999 ldx #25 st9 lda 217,x ora #128 sta 217,x dex bpl st9 lda #15 ldx #6 stb sta fa1,x sta fa2,x sta fa3,x dex bpl stb bmi st6 settmp sta tmp sty tmp+1 rts nirq lda tmp pha lda tmp+1 pha jsr irq pla sta tmp+1 pla sta tmp jmp $ea31 irq dec mouth bne iq1 jsr rnd bpl iq8 lda #189 .byt $2c iq8 lda #165 sta mupos+2 lda #mospd sta mouth ldx #129 jsr rnd cmp #eye bcs iqa ldx #161 iqa jsr rnd cmp #eye bcs iq9 txa ora #4 tax iq9 stx mupos iq1 lda display bne iq7 jmp iq2 iq7 lda #scopos jsr settmp lda score ldy score+1 jsr worout lda #blopos jsr settmp lda blocks ldy blocks+1 jsr worout lda #higpos jsr settmp lda high+5 ldy high+6 jsr worout lda level ldx #84 jsr ascii adc #84 sta levpos+2 stx levpos+1 lda #sw2pos ldx joker jsr switch lda #sw1pos ldx cheat jsr switch lda fa lsr lsr and #1 tax lda #sw3pos jsr switch lda #sw4pos ldx prev jsr switch lda pause beq iq5 dec pauscnt bne iq5 lda #20 sta pauscnt ldx #5 iq6 lda pauspos,x eor #4 sta pauspos,x dex bpl iq6 iq5 lda first jsr code sta prepos lda first+1 jsr code sta prepos+40 lda first+2 jsr code sta prepos+80 iq2 lda 56320 and 56321 sta stick lda weg beq iqb dec renn bne iqb ldx #20 stx renn tay and #127 tax lda #32 sta laufpos,x cpx #4 bcs iqc tya and #128 asl rol adc #79 sta laufpos+1,x lda weg eor #128 clc adc #1 .byt $2c iqc lda #0 sta weg iqb lda blink beq iqd dec pauscnt bne iqd lda #20 sta pauscnt ldx #8 iqe lda blipos,x eor #4 sta blipos,x dex bpl iqe iqd lda over beq iqf dec pauscnt bne iqf lda #20 sta pauscnt ldx #9 iqg ldy ovpos,x lda govpos,y eor govwor,x sta govpos,y dex bpl iqg iqf rts rnd lda seed eor 53266 asl adc #0 eor 162 adc seed eor #123 sta seed rts ascii cmp #10 bcc as1 sbc #10 inx bne ascii as1 rts code ldx prev bne co1 lda #32 co1 rts fire lda stick and #16 beq fi1 jsr 65508 cmp #"\x03" fi1 rts feuer jsr fire bne feuer rts worout sta zahl sty zahl+1 ldx #0 ldy #0 wo1 lda #84 sta ziffer wo2 lda zahl+1 cmp zepo+1,x bcc wo4 bne wo3 lda zahl cmp zepo,x bcc wo4 wo3 sec lda zahl sbc zepo,x sta zahl lda zahl+1 sbc zepo+1,x sta zahl+1 inc ziffer bne wo2 wo4 lda ziffer sta (tmp),y iny inx inx cpy #4 bcc wo1 lda zahl adc #83 sta (tmp),y rts switch jsr settmp lda sw1,x ldy #0 sta (tmp),y iny lda sw2,x sta (tmp),y rts einwurf lda #erst sta pos sty pos+1 lda first ldy #0 sty posline sta (pos),y jsr getone sta first ldy #40 lda first+1 sta (pos),y jsr getone sta first+1 ldy #80 lda first+2 sta (pos),y jsr getone sta first+2 inc blocks bne ei1 inc blocks+1 ei1 ldx level lda levspd-1,x sta speed rts getone jsr rnd and #7 cmp #7 bcc is lda joker beq getone jsr rnd bmi getone lda #7 is ora #64 rts runter ldy #120 lda (pos),y cmp #32 sec bne ru1 ldy #80 lda (pos),y ldy #120 sta (pos),y ldy #40 lda (pos),y ldy #80 sta (pos),y ldy #0 lda (pos),y ldy #40 sta (pos),y ldy #0 lda #32 sta (pos),y inc posline lda #40 clc adc pos sta pos bcc ru1 inc pos+1 clc ru1 rts io lda stick sta joy jsr entprell lda joy and #16 bne io1 ldy #0 lda (pos),y tax ldy #40 lda (pos),y pha txa sta (pos),y ldy #80 lda (pos),y tax pla sta (pos),y ldy #0 txa sta (pos),y io1 lda joy and #4 bne io2 lda pos sec sbc #1 sta tmp lda pos+1 sbc #0 sta tmp+1 ldy #0 lda #32 cmp (tmp),y bne io2 ldy #39 cmp (pos),y bne io2 ldy #79 cmp (pos),y bne io2 lda tmp sta pos lda tmp+1 sta pos+1 ldy #1 lda (pos),y ldy #0 sta (pos),y ldy #41 lda (pos),y ldy #40 sta (pos),y ldy #81 lda (pos),y ldy #80 sta (pos),y ldy #1 lda #32 sta (pos),y ldy #41 sta (pos),y ldy #81 sta (pos),y io2 lda joy and #8 bne io3 ldy #1 lda #32 cmp (pos),y bne io3 ldy #41 cmp (pos),y bne io3 ldy #81 cmp (pos),y bne io3 dey lda (pos),y iny sta (pos),y ldy #40 lda (pos),y iny sta (pos),y ldy #0 lda (pos),y iny sta (pos),y dey lda #32 sta (pos),y ldy #40 sta (pos),y ldy #80 sta (pos),y inc pos bne io3 inc pos+1 io3 lda joy and #2 bne io4 lda weg bne io4 sta fast io4 lda joy and #1 bne io5 lda cheat beq io5 jsr mogel io5 rts entprell cmp ojoy sta ojoy bne ep1 dec prell bne ep2 ep1 lda #joyent sta prell rts ep2 lda #-1 sta joy rts oberst lda #unte jsr settmp lda #0 sta zei1 sta foundflg ob1 ldy #6 ob2 lda #32 cmp (tmp),y bne ob3 dey bpl ob2 rts ob3 jsr tmpm40 inc zei1 bne ob1 tmpm40 lda tmp sec sbc #40 sta tmp lda tmp+1 sbc #0 sta tmp+1 rts suche ldy #0 ldx #0 sx1 tya pha lda #unte jsr settmp pla tay sx2 lda (tmp),y sta buff,x inx cmp #32 beq sx3 jsr tmpm40 jmp sx2 sx3 iny cpy #7 bcc sx1 lda #0 sta buff,x lda #unte jsr settmp lda #0 sta uzei we1 ldy #0 sty soll sty equal sty pos we2 lda (tmp),y cmp soll beq we3 cmp #71 beq we3 pha tya pha jsr wtest pla tay pla sta soll sty pos lda #1 sta equal bne we4 we3 inc equal we4 iny cpy #7 bcc we2 jsr wtest jsr tmpm40 inc uzei lda uzei cmp zei1 bcc we1 ldy #0 ldx #0 su1 lda #19 sta uzei lda #0 sta soll sta equal sta pos sta pos+1 su2 lda buff,x cmp #32 beq su3 cmp soll beq su4 cmp #71 beq su4 pha jsr stest pla sta soll stx pos lda uzei sta pos+1 lda #1 sta equal bne su5 su4 inc equal su5 dec uzei inx bne su2 su3 jsr stest inx iny cpy #7 bcc su1 lda buff,x beq su6 lda #1 sta fa,x lda buff,x eor #128 sta buff,x su6 rts wtest tya pha te3 ldy pos beq te1 dey lda (tmp),y cmp #71 bne te1 dec pos inc equal bne te3 te1 pla tay lda equal cmp #reihe bcc te2 jmp anrech te2 rts stest txa pha tya pha jsr ts1 pla tay pla tax rts ts1 ldx pos beq ts2 dex lda buff,x cmp #71 bne ts2 dec pos inc pos+1 inc equal bne ts1 ts2 lda equal cmp #reihe bcc te2 ldx pos+1 ts3 jsr $e9f0 lda bild clc adc #16 sta bild bcc ts4 inc bild+1 ts4 lda #72 cmp (bild),y beq ts5 sta (bild),y txa pha jsr uplink pla tax ts5 dex cpx uzei beq ts6 bcs ts3 ts6 rts anrech lda soll cmp #32 beq ar3 sty pos+1 lda #72 ar1 dey cpy pos beq ar2 sta (tmp),y jsr uplink jmp ar1 ar2 sta (tmp),y jsr uplink ldy pos+1 ar3 rts pte2 pha lda #oksco clc adc score sta score bcc pu1 inc score+1 pu1 jsr sound pla rts uplink pha lda #1 sta foundflg inc blockz lda blockz cmp #levchg bcc ul1 lda #0 sta blockz lda level cmp #maxlev bcs ul1 inc level jsr neulev lda #lvsco clc adc score sta score bcc ul1 inc score+1 ul1 pla jmp pte2 scroll lda #unte sta tmp sty tmp+1 lda #0 sta uzei sta didsc sc1 ldy #0 sc2 lda (tmp),y cmp #72 bne sc3 lda tmp pha lda tmp+1 pha sta didsc lda uzei pha sc4 lda tmp sec sbc #40 sta pos lda tmp+1 sbc #0 sta pos+1 lda (pos),y sta (tmp),y lda pos sta tmp lda pos+1 sta tmp+1 inc uzei lda uzei cmp zei1 bcc sc4 pla sta uzei pla sta tmp+1 pla sta tmp sc3 iny cpy #7 bcc sc2 jsr tmpm40 inc uzei lda uzei cmp zei1 bcc sc1 lda didsc bne scroll rts sound tya pha jsr so1 pla tay rts so1 lda #17 sta 54276 ldx #0 ldy #0 so2 dex bne so2 dey bne so2 lda #16 sta 54276 rts soundon ldx #24 lda #0 so3 sta 54272,x dex bpl so3 lda #100 sta 54273 lda #9 sta 54277 lda #15 sta 54296 lda #10 sta 54280 lda #41 sta 54284 rts boden lda #129 sta 54283 ldx #0 ldy #200 so5 dex bne so5 dey bne so5 lda #128 sta 54283 rts warning lda #5 sta 54287 lda #240 sta 54292 lda #33 sta 54290 ldx #0 ldy #100 so6 dex bne so6 dey bne so6 lda #32 sta 54290 rts neulev stx so9+1 sty so9+3 ldy #15 sty 54287 lda #240 sta 54292 lda #17 sta 54290 so7 ldx #3 so8 jsr $eeb3 dex bpl so8 iny sty 54287 bpl so7 lda #16 sta 54290 so9 ldx #0 ldy #0 rts keyboard jsr 65508 sta key cmp #"\x03" bne ky1 inc pause ky2 jsr feuer lda #0 sta pause ldx #5 lda 53281 ky4 sta pauspos,x dex bpl ky4 ky1 ldx key cpx #"j" bne ky5 lda joker eor #1 sta joker ky5 cpx #"c" bne ky6 lda cheat eor #1 sta cheat ky6 cpx #"i" bne ky7 lda #0 sta 53265 lda 53281 eor #4 sta 53280 sta 53281 ldx #4 lda #fa jsr settmp ldy #0 ky8 lda (tmp),y eor #4 sta (tmp),y iny bne ky8 inc tmp+1 dex bne ky8 lda #27 sta 53265 ky7 ldx key cpx #"p" bne ky9 lda prev eor #1 sta prev ky9 rts mogel ldx #32 ldy #0 lda (pos),y pha txa sta (pos),y ldy #40 lda (pos),y pha txa sta (pos),y ldy #80 lda (pos),y pha txa sta (pos),y lda #unte jsr settmp ldx #13 mo1 lda tmp sec sbc #40 sta bild lda tmp+1 sbc #0 sta bild+1 ldy #6 mo2 lda (bild),y sta (tmp),y dey bpl mo2 lda bild sta tmp lda bild+1 sta tmp+1 dex bpl mo1 lda #32 ldy #6 mo3 sta (tmp),y dey bpl mo3 pla ldy #80 sta (pos),y pla ldy #40 sta (pos),y pla ldy #0 sta (pos),y sei lda score sec sbc #mogsco sta score lda score+1 sbc #0 sta score+1 bcs mo4 lda #0 sta score sta score+1 mo4 cli jmp warning start ldx #247 txs jsr $ffe7 jsr $ff81 lda #11 sta 646 ldx #0 stx 59391 stx pause stx 56576 stx display stx weg stx 157 stx blink stx over inx stx sbreit lda #196 sta 648 lda #24 sta 53272 lda #6 sta scropos lda #15 sta mouth sta 53280 sta 53281 lda #nirq sei sta $314 sty $315 cli jsr loadhs lda #titt jsr strout jsr colin lda #32 sta hibuf+2 sta hibuf+8 sta hibuf+14 lda #"(" sta hibuf+15 lda #")" sta hibuf+18 lda #start sta 792 sty 793 aa2 jsr clrtit lda #tit1 jsr strout lda #0 sta wart sta wart+1 aa1 jsr tscroll jsr fire bne aa3 aad jsr levl1 jsr game jsr highscore jmp start aa3 inc wart bne aa1 inc wart+1 lda wart+1 cmp #toleranz bcc aa1 jsr clrtit lda #tit2 jsr strout ldx #0 stx hinum lda #high sta tmp sty tmp+1 aa4 ldy #4 aa5 lda (tmp),y and #$3f sta hibuf+3,y dey bpl aa5 ldy #7 lda (tmp),y ldx #84 jsr ascii adc #84 sta hibuf+17 stx hibuf+16 ldy hinum iny tya ldx #48 jsr ascii adc #48 cpx #48 bne aa7 ldx #32 aa7 stx hibuf sta hibuf+1 lda tmp+1 pha lda tmp pha ldy #6 lda (tmp),y pha dey lda (tmp),y tax lda #hibuf+9 jsr settmp pla tay txa jsr worout ldx #18 aa8 ldy #35 aa9 lda untst,y sta untst+1,y dey bpl aa9 lda hibuf,x sta untst jsr tscroll dex bpl aa8 ldx #17 aaa ldy #35 aab lda untst,y sta untst+1,y dey bpl aab lda #32 sta untst jsr tscroll dex bpl aaa jsr hscroll beq aag jsr hscroll beq aag pla clc adc #8 sta tmp pla sta tmp+1 inc hinum ldx hinum cpx #hihi bcc qaa4 lda #6 sta hinum aac jsr hscroll beq aae dec hinum bne aac jmp aa2 qaa4 jmp aa4 aag pla pla aae jmp aad t2scroll jsr tscroll tscroll lda 53265 bpl tscroll txa pha ldx #0 sl1 stx scroz inx inx jsr $e9f0 ldy #1 sl2 iny lda (bild),y dey sta (bild),y iny cpy #39 bcc sl2 ldx scroz txa asl tax lda name,x sta tmp lda name+1,x sta tmp+1 lda scropos tax and #15 tay txa lsr lsr lsr lsr tax lda (tmp),y and grbit,x beq sl3 lda scroz ora #224 .byt $2c sl3 lda #213 ldy #38 sta (bild),y ldx scroz inx cpx #12 bcc sl1 dec sbreit bne sl5 lda #broad sta sbreit lda scropos clc adc #%10000 bpl sl4 lda scropos clc adc #1 and #15 cmp #7 bcc sl4 lda #0 sl4 sta scropos sl5 pla tax rts hscroll ldx #16 jsr $e9f0 hs1 lda bild clc adc #40 sta tmp lda bild+1 adc #0 sta tmp+1 ldy #19 hs2 lda (tmp),y sta (bild),y iny cpy #38 bcc hs2 lda tmp sta bild lda tmp+1 sta bild+1 inx cpx #23 bcc hs1 ldy #18 lda #32 hs3 sta untst+18,y dey bpl hs3 ldx #upspeed hs4 jsr tscroll dex bne hs4 jmp fire colin ldy #0 sty tmp lda #>fa sta tmp+1 ldx #4 lda #11 c1 sta (tmp),y iny bne c1 inc tmp+1 dex bne c1 rts loadhs ldx #4 lh6 lda kennung,x cmp hike,x bne lh5 dex bpl lh6 rts lh5 lda #2 tay ldx #flop jsr $ffba lda #"r" sta mode lda #15 ldx #fina jsr $ffbd lda #2 jsr $ffc0 ldx #2 jsr $ffc6 jsr 65508 ldx 144 beq lh1 lh7 jsr $ffcc lda #2 jsr $ffc3 ldx #hihi ldy #0 lh2 lda #"." sta high,y iny sta high,y iny sta high,y iny sta high,y iny sta high,y iny lda #0 sta high,y iny sta high,y iny sta high,y iny dex bne lh2 lh3 ldx #4 lh4 lda hike,x sta kennung,x dex bpl lh4 rts lh1 cmp #"c" bne lh7 ldx #0 lh8 jsr 65508 eor #mne sta high,x inx cpx #hiend bcc lh8 jsr $ffcc lda #2 jsr $ffc3 jmp lh3 savehs lda #13 ldx #scfn jsr $ffbd ldx #flop lda #15 tay jsr $ffba ldx #"w" stx mode jsr $ffc0 lda #15 jsr $ffc3 lda #2 tay ldx #flop jsr $ffba lda #15 ldx #fina jsr $ffbd lda #2 jsr $ffc0 ldx #2 jsr $ffc9 lda #"c" jsr $ffd2 ldx #0 sh1 lda high,x eor #mne jsr $ffd2 inx cpx #hiend bcc sh1 jsr $ffcc lda #2 jmp $ffc3 clrtit ldx #16 ct1 jsr $e9f0 ldy #38 lda #32 ct2 sta (bild),y dey bne ct2 inx cpx #23 bcc ct1 rts highscore ldy #0 ldx #0 hg1 lda score+1 cmp high+6,y bcc hg2 bne hg3 lda high+5,y cmp score bcc hg3 hg2 tya clc adc #8 tay inx cpx #hihi bcc hg1 rts hg3 stx hinum sty foundflg cpx #hihi-1 beq hg5 ldy #hiend-8 hg4 lda high,y sta high+8,y dey cpy #-1 beq hg5 cpy foundflg bcs hg4 hg5 ldy foundflg lda score sta high+5,y lda score+1 sta high+6,y lda level sta high+7,y lda fa sta 646 lda #sctx jsr strout ldx hinum inx lda #0 jsr $bdcd lda #sct2 sty blink jsr strout jsr cursor ldx #0 hg6 stx tmp jsr 65508 ldx tmp cmp #13 beq hg7 cmp #20 beq hg8 cmp #32 bcc hg6 cmp #96 bcs hg6 cpx #5 bcs hg6 jsr $ffd2 sta hibuf,x jsr cursor inx bne hg6 hg8 txa beq hg6 dec 211 jsr $ab3f dec 211 jsr cursor dex bpl hg6 cursor lda #"~" jsr $ffd2 jsr $ab3f dec 211 dec 211 rts hg7 ldy foundflg stx hinum ldx #0 hgb cpx hinum beq hg9 lda hibuf,x sta high,y iny inx bne hgb hg9 cpx #5 bcs hga lda #"." sta high,y iny inx bne hg9 hga jsr $ab3f jmp savehs levl1 jsr clrtit lda #tit3 jsr strout lda #1 sta level ev4 jsr fire beq ev4 ev1 jsr tscroll ldx stick txa and #16 bne ev2 rts ev2 txa and #1 bne ev3 lda level cmp #2 bcc ev1 dec level jsr calclev jsr sup32 ldx dimem lda dimem+2 jsr sup ldx dimem+1 lda dimem+3 jsr sup jsr sup32 jsr sup32 jsr sup32 jsr sup32 jmp ev1 ev3 txa and #2 bne ev1 lda level cmp #maxlev bcs ev1 inc level jsr calclev jsr sdn32 jsr sdn32 ldx dimem+1 lda dimem+3 jsr sdn ldx dimem lda dimem+2 jsr sdn jsr sdn32 jsr sdn32 jmp ev1 sup32 lda #32 tax sup pha txa pha lda lvepos+40 sta lvepos lda lvepos+41 sta lvepos+1 lda lvepos+80 sta lvepos+40 lda lvepos+81 sta lvepos+41 lda lvepos+120 sta lvepos+80 lda lvepos+121 sta lvepos+81 lda lvepos+160 sta lvepos+120 lda lvepos+161 sta lvepos+121 lda lvepos+200 sta lvepos+160 lda lvepos+201 sta lvepos+161 lda lvepos+240 sta lvepos+200 lda lvepos+241 sta lvepos+201 lda lvepos+280 sta lvepos+240 lda lvepos+281 sta lvepos+241 pla sta lvepos+280 pla sta lvepos+281 jmp t2scroll sdn32 lda #32 tax sdn pha txa pha lda lvepos+240 sta lvepos+280 lda lvepos+241 sta lvepos+281 lda lvepos+200 sta lvepos+240 lda lvepos+201 sta lvepos+241 lda lvepos+160 sta lvepos+200 lda lvepos+161 sta lvepos+201 lda lvepos+120 sta lvepos+160 lda lvepos+121 sta lvepos+161 lda lvepos+80 sta lvepos+120 lda lvepos+81 sta lvepos+121 lda lvepos+40 sta lvepos+80 lda lvepos+41 sta lvepos+81 lda lvepos sta lvepos+40 lda lvepos+1 sta lvepos+41 pla sta lvepos pla sta lvepos+1 jmp t2scroll calclev lda #32 sta dimem sta dimem+1 lda level cmp #10 bcc ca1 sbc #10 ldx #130 stx dimem inx stx dimem+1 ca1 asl ora #128 sta dimem+2 tax inx stx dimem+3 rts game lda #fe jsr strout jsr soundon ldx #0 stx score stx score+1 stx weg stx blockz stx cheat stx prev inx stx display stx prell stx pauscnt stx joker stx renn jsr einwurf ldx #0 stx blocks stx blocks+1 jsr mann block ldx #1 stx phase stx fast jsr einwurf loop jsr keyboard lda fast beq lo1 dec phase bne lo2 lo1 jsr runter bcs unten lda speed sta phase lo2 jsr io jsr delay jmp loop unten jsr boden jsr wertung lda posline cmp #3 bcs un1 lda #0 sta display beq gaover un1 jmp block delay ldx #-1 ldy #mainspd de1 dex bne de1 dey bne de1 rts wertung jsr oberst jsr suche jsr scroll lda foundflg bne wertung rts mann lda #mat jsr strout jsr feuer lda #ma0 jsr strout lda #1 sta weg rts gaover ldx #9 gv1 ldy ovpos,x txa clc adc #200 eor govpos,y sta govwor,x dex bpl gv1 stx over jsr feuer inc over rts