opt 37› org $d800››of equ 8›off equ 1››bmp equ $1300›taba equ bmp+9›tabb equ bmp+$45››blur equ $7800 , bank $eb›bumpf equ $800››logob equ $9e00 ; cel››fontb equ $ee›mtab equ $1f00››*-------qkn w banq ee›torusc equ $4400›scn12 equ $4ace›czwor equ $4c12›gwazd equ $4c3d›gw2 equ $4e22››tmaker equ $2000›tunel equ $7c00››portb equ $d301›sekr equ $b400 ekr›sbuf equ $ba00 buf›*-----real›lbet equ $c0d8›lalf equ $c0d7›real equ $c100›rset equ real gen. malych tabl.›rtab equ real+3 tabl. bankow›rini equ real+6 ini. przed obj.›rlgh equ real+9 lightsourcing›rext equ real+12 exit (wyl. tim.)›rani equ real+15 animacja›rfil equ real+18 skok do filowania›rstl equ real+21 ustaw na lajt...›rstm equ real+24 ustaw na mlajt...›rstf equ real+27 ustaw na filowanie›alf1 equ real+30›bet1 equ real+31›gam1 equ real+32›skl1 equ real+33›xct1 equ real+34›yct1 equ real+35›alf2 equ real+36›bet2 equ real+37›gam2 equ real+38›skl2 equ real+39›xct2 equ real+40›yct2 equ real+41›alfa equ real+42›beta equ real+43›gama equ real+44›skal equ real+45›xcnt equ real+46›ycnt equ real+47›sefg equ real+48›sefm equ real+51››pom0 equ $fb›v2 equ $fc›v1 equ $fe›ecr equ $3600›epx equ $3700›el1 equ $3a00›*-----napisy›vnap equ $90 adres napisu›vprc equ $92 vector adres procki›xnap equ $94›ynap equ $95›colr equ $96›font equ $4000›buff equ $700 32*8 na pocz 0›pnap equ $800 adrs procki* ; na DOSa!›v2pr equ $a2›tmp0 equ $94›tmp1 equ $95›tmpv equ $90›s1 equ $98›onap equ $9c›vfnt equ $9e›vbuf equ $a0›*-------qkn2raw›pix equ $90›scn equ $91›vec equ $92›*-------mot›motb equ $90›mote equ $92›motc equ $94››mtprc equ $1000›sinx equ $0e00 ; e500›siny equ $0f00 ; e600››word equ $a0›wor2 equ $a2››*-- bump+zar $1300-1eff››*------  çĺîĺňáôĺ  (new generation ;)›› jsr sdl0›› lda skl1› sta rbuf›› jsr rtab› lda #0› ldx #$e8› jsr $fece› lda #$40› sta $d40e› cli›› ldx #0 ; kopiuje siny›sks lda $9800,x› sta sinx,x› lda $9900,x› sta siny,x› inx› bne sks›› jsr mkmpr gen procki na blura› jsr cpcpr gen procki na kop.›› lda #$e› sta bmp+7› lda #0› jsr bbank›› jsr set›› lda #$f› sta colr› lda #0› tay› tax› jsr napz ; zamiast napiz›› jsr vmak ; 3+t››pau lda $7a› cmp #of+2› bcc pau› jsr clr› jsr ecopy› jsr sdl1› lda #33› sta 559››*>>>>>>>>>>>>>>>>>>>>>>>>>>>››p1 jsr p0 ; tik› lda $7a› cmp #of+4› bcc p1› lda #10› ldy #30› ldx #1› jsr napz ; tak›p2 jsr p0› lda $7a› cmp #of+6› bcc p2› lda #0› ldy #15› ldx #2› jsr napz›p3 jsr p0 ; tik-tak› lda $7a› cmp #of+8› bcc p3›p4 jsr p0 ; tik-tak/2› jsr cz› jsr cz› lda $7b› cmp #$1f› bcc p4››*--- 0 torus 1 12scian 2 4scian›*--- 3-4 new 5 baczek›› lda #1 0=rstf 1=rstl 2=rstm› *3=setg 4=sefm› sta oblr› ldx #4› jsr obj_›› lda #50› sta skl1 ; skala› lda #0› sta oile› sta okdn››p5 jsr obj› lda $7a› cmp #18+of› bcc p5› inc oile››p6 jsr obj› lda $7a› cmp #26+of› bcc p6›› lda #1› ldy #0› ldx #3› jsr napz›p7 dec skl1› dec skl2›_p7 jsr obj› lda $7a› cmp #28+of› bcc p7›› lda #0› ldy #7› ldx #4› jsr napz››p77 lda skl1› beq p77_› dec skl1›p77_ lda skl2› beq _p77› dec skl2›_p77 jsr obj› lda skl1› bne p77›› lda #2› ldy #20› ldx #5› jsr napz››p8 jsr p0 ; nicosc› jsr cz›* jsr cz      › lda $7a› cmp #$20+of› bcc p8› lda #0› ldy #25› ldx #6› jsr napz› jsr cz› clc ; ew.› lda 552 ;               › sta timer› lda 553› sta timer+1› lda ti0› sta 553› jsr tunm ; mieli tunel.dat›* ; na przerw. napis››p9 lda $7a› cmp #$22+of› bcc p9› lda #0› sta 538› lda timer ; real3D› sta 552› lda timer+1› sta 553››p10 jsr tun ; tunel+3D_1› jsr ecopy› jsr cz› lda $7a› cmp #$24+of› bcc p10››p10a jsr tun› jsr pojw3› jsr ecopy› jsr cz› lda $7a› cmp #$26+of› bcc p10a›p10b jsr tun› jsr pojw2› jsr ecopy› jsr cz› lda $7a› cmp #$28+of› bcc p10b››p10c jsr tun› jsr pojw› jsr ecopy› lda $7a› cmp #$2a+of› bcc p10c›› lda #0› tay› ldx #7› jsr napz››p11 inc tpoz ; tunel+3D_2› inc tpoz› jsr tun› jsr ob3› jsr gnap› jsr motion› jsr cz›› lda $7a› cmp #$3a+of› bcc p11›› lda #$f› sta pom›p11_ ldy tpoz› jsr tunel› jsr motion› jsr cz› dec pom› bne p11_›› lda #8 ;z $0800-$ba00› sta mkn+1 ; do $ba00› lda #$ba› sta mkn2+1› jsr mkmpr››p12 ldy tpoz› jsr tunel› jsr skop› jsr cz› jsr motion› jsr ecopy›› jsr zwklb                 ›* inc klb›* lda klb›* cmp #29›* bcc p12_›* lda #0›* sta klb›p12_ lda $7a› cmp #$42+of› bcc p12››p13 jsr p01› jsr motion› jsr cz› jsr ob01› jsr ecopy› jsr zwklb› lda $7a› cmp #$50+of› bcc p13› lda #$b4 ; vector na screen› sta _ze+1 ; nie na bufor››p14 lda #$ea› sta $d301› jsr blur› lda #$fe› sta $d301› jsr ob01› jsr cz› lda $7a› cmp #$50+of› beq p14›› lda >sekr› sta mkn+1› sta mkn2+1› jsr mkmpr› jsr clr››* lda #4›* sta pom›*p14_ jsr motion             ›* jsr cz›* jsr cz›* dec pom›* bne p14_››*------  ôďňőó ›› lda #0› jsr log800›› lda #47› sta line› jsr adl ; dl at $2000›› lda #32 ; centruj obiekt› sta xct1› lda #24› sta yct1›› lda #0› jsr slogo ; nazwa tez na scr/buf› jsr ecopy ; (dla efx)› jsr set›› lda #$a0 ; napiz prc -> new addy› sta _n1+1 ; bo $0800 zajete› sta _n11+2 ; dla jmp pnap› lda #8› sta _n2+1 ; scr=$0800›› ldy #25› lda #7› sta colr› lda #0› ldx #8› jsr napz››_p14 jsr p04› lda $7a› cmp #$54+of› bcc _p14›› ldy #29› lda #0› ldx #10› jsr napz››pp14 jsr p04› lda $7a› cmp #$56+of› bcc pp14›› lda #$f› sta colr› lda #0› ldy #34 qw› ldx #9› jsr napz››p14b jsr p04› lda $7a› cmp #$58+of› bcc p14b›› lda #0› sta oile› lda #$ff› sta okdn› lda #50› sta skl1›› jsr sdl1›› ldx #0› lda #2› jsr obj_›› ldx #0› stx alf1› stx bet1› stx gam1› stx 538›* lda 552 ;            ›* sta timer›* lda 553›* sta timer+1› lda ti01› sta 553› inc 538›› lda #$ff› sta oblr››p15 jsr p03› lda alf1› cmp #65› bcc p15›› lda ti02› sta 553››p16 jsr p02› lda $7a› cmp #$60+of› bcc p16››p16_ lda skl1› cmp #20› bcc _p16› dec skl1› dec skl1› dec skl1›_p16 jsr p02› lda $7a› cmp #$62+of› bcc p16_›› ldx #0› lda #3› jsr obj_› jsr cz› lda timer› sta 552› lda timer+1› sta 553› lda #65› sta alf1› lda #0› sta bet1› sta gam1›› lda >sbuf› sta _sk2+1› lda #19› sta klb››p17 jsr zwklb› jsr skop› jsr obj› jsr motion› lda skl1› cmp #63› beq _p17› inc skl1›_p17 lda $7a› cmp #$82› bcc p17›› lda #$b4 ;z b400 do ba00› sta mkn+1 ;odwrotnie,potem ecopy› lda #$ba› sta mkn2+1› jsr mkmpr› ldx #4› lda #1› jsr obj_› lda #55› sta skl1› lda #$ba› sta _ze+1 ; gwiaz. na bufor›› lda >sbuf› sta _n2+1 ; nap->bufor›› ldy #0› sty _e1+1 ; eor zawsze› sty okdn ; obj.napis.on›› jsr nxt›› lda $7a ; w tpoz› clc ; nr song +4› adc #4 ; potem porownac› sta tpoz ; i next grtx gdy rowne››p18 jsr p05› lda $7a› cmp #$8a+of› bcs p18_› cmp tpoz› bcc p18› jsr zt› jsr nxt› jmp p18››p18_ jsr zt› jsr nxt›› ldx #1› txa› jsr obj_› lda #2› sta okdn››p19 jsr p05 ; tu konczyc greetzy›_p19 lda $7a› cmp #$98+of› bcs p19_› cmp tpoz› bcc p19› jsr zt› jsr nxt› jmp p19››p19_ lda #25 ; tu konczyc greetzy› sta skl1› sta xct1› lda #15› sta yct1› lda #40› sta skl2› inc oile› inc _e1+1››p20 jsr clr› jsr p05›_p20 lda $7a› cmp #$a0+of› bcs p20_› cmp tpoz› bcc p20› jsr zt› jsr nxt› jmp p20››p20_ jsr clr› jsr ecopy› lda #$ff› sta okdn›› lda #2› ldx #1› jsr obj_› lda ti02› sta 553››p21 lda #1› jsr slogo› jsr p06›› jsr ecopy› lda $7a› cmp #$aa+of› bcc p21›› lda timer› sta 552› lda timer+1› sta 553›› ldx #0› jsr eo1››p22 lda #1› jsr slogo› jsr p06› jsr loss› jsr ecopy› lda $7a› cmp #$b6+of› bcc p22›› lda #3› jsr slogo› jsr ecopy›*- kocham anie ! - solo›*- i ania solo tez !››*--- tunel 2› lda #28› sta xct1› lda #24› sta yct1› lda rbuf› sta skl1› lda #0› sta oile› lda #1› sta _v1+1›› jsr vmak + vect. 3D› lda #$4e› sta _kt1+1› lda #$ae› sta kt1+1› jsr tunm›› lda #$08› sta _n1+1› sta _n11+2› lda #$ba› sta _n2+1› lda #0› ldy #30› ldx #29› jsr napz››_p22 lda $7a› cmp #$ba+of› bcc _p22›› lda #$b4› sta mkn+1› lda #$b4› sta mkn2+1› jsr mkmpr››p23 inc tpoz› inc tpoz› jsr tun› jsr gnap› jsr ob01› jsr ecopy› jsr cz› lda $7a› cmp #$ca+of› bne p23›› lda #45› sta xct2› lda #1› sta skl1› sta skl2› sta oile› ldx #0› jsr obj_››p24 lda #2› jsr slogo› jsr obj› jsr motion› lda skl2› cmp #40› beq p24_› inc skl2›p24_ lda skl1› cmp #62› bcs p24b› inc skl1› inc skl1›p24b jmp p24››*--  äĺíď ­ đďäđňďăó ››loss lda $d20a› and #3› bne lo1› jsr eor›lo1 rts››p06 jsr ob01› jsr obj› jsr motion› jmp zsk››obj_ jsr objini› jsr rset› jmp rini››zsk ldy six› lda sinx,y› sta skl1› ldy siy› lda siny,y› asl @› sta skl2› inc six› inc six› inc six› dec siy› dec siy› rts››zt clc› adc #2› sta tpoz› rts›ny dta b(0)›nx dta b(0)›nn dta b(11)››nxt ldy ny› lda nx› ldx nn› inc nn› inc ny› jmp napz››napz sta xnap› sty ynap› jmp napiz››p05 jsr zwklb› jsr skop› jsr ob01› jsr obj› jsr motion› jsr eor› jsr cz› jmp ecopy››setm8 lda #8 ;z $0800-$ba00› sta mkn+1 ; do $ba00› lda #$ba› sta mkn2+1› jmp mkmpr›eo brk››eor ldx #0› lda eo›_e1 eor #1› sta eo› beq eo1› rts›eo1 lda $ba00,x› eor #$ff› sta $ba00,x› lda $bb00,x› eor #$ff› sta $bb00,x› lda $bc00,x› eor #$ff› sta $bc00,x› lda $bd00,x› eor #$ff› sta $bd00,x› lda $be00,x› eor #$ff› sta $be00,x› lda $bf00,x› eor #$ff› sta $bf00,x› inx› bne eo1› rts››ti04 jsr eor+2›_t4 jmp $2000 ; adres r3d_tim››p04 lda #0› jsr log800› jsr gnap› jsr cz› jsr cz› jmp cz››log800 ldx >bumpf› stx _ss1+1› jsr slogo ; gfx to buf› ldx >sbuf› stx _ss1+1› rts››p02 lda #0 ; obj+tlo› jsr slogo› jsr obj› jmp ecopy›p03 lda #0 ; obj+tlo+motion› jsr slogo› jsr obj› jmp motion››logoz dta b($c7),b(9) ; bank af,$4000› dta b($af),b(0) ; bank af,$4600› dta b($af),b(1) ; face› dta b($af),b(9)››slogo asl @› tay› lda logoz,y› sta _sk1+1› lda logoz+1,y› sta klb›_ss1 lda >sbuf› sta _sk2+1› jsr _sk1› lda >bumpf› sta _sk2+1› rts››bbank lda #0 ; nr.logosa, wazne !› jsr skopl ; logos_bump› jsr skopz ; zarowa› jmp bmp ; bmp_mak››adl jsr sdl0› jsr cz› lda #0› sta dl_› lda #$20› sta dl_+1› lda #$08 ; buforek 4 scr› sta scr_+1› jsr mkdl› jsr cz› lda #0› sta $230› lda #$20› sta $231› rts››ti01 lda #2› sta 538› inc alf1› inc alf1› rts›ti02 lda #2› sta 538› inc lbet› dec lalf› rts››ti03 jsr gnap› lda #3› sta 538› rts›p01 dec tpoz› dec tpoz› jsr tun2› jmp skop››zwklb inc klb› lda klb› cmp #29› bcc zl0› lda #0› sta klb›zl0 rts›klb brk››skop ldx klb qw› lda tabb,x› sta _sk1+1›_sk1 lda #0› sec› sbc #off› sta $d301› lda klb› asl @› tax›› clc› ldy taba+1,x› sty s0+2› iny› sty s1_+2› iny› sty s2+2› iny› sty s3+2› iny› sty s4+2› iny› sty s5+2››_sk2 ldy >bumpf› sty s0+5› iny› sty s1_+5› iny› sty s2+5› iny› sty s3+5› iny› sty s4+5› iny› sty s5+5›› ldy #0›s0 lda $0000,y› sta $ba00,y›s1_ lda $0100,y› sta $bb00,y›s2 lda $0200,y› sta $bc00,y›s3 lda $0300,y› sta $bd00,y›s4 lda $0400,y› sta $be00,y›s5 lda $0500,y› sta $bf00,y›› iny› bne s0› lda #$fe› sta $d301› rts››skopz ldx #0› lda #$17› sta ec+2› lda #$30› sta ec+5› ldy #7›ec lda $1700,x› sta $3000,x› inx› bne ec› inc ec+2› inc ec+5› dey› bne ec› rts››*- adresy logosuff+bankuff›*- zmienic reszte !››loga dta a($6c00)› dta a($6c00)›logb dta b($ea)› dta b($ea)››skopl tay› lda logb,y› sta pom› tya› asl @› tay› lda loga,y› sta word› lda loga+1,y› sta word+1›› lda logob› sta wor2+1››_log2 ldx #12› ldy #0››sl lda pom› sta $d301› lda (word),y› pha› lda #$fe› sta $d301› pla› sta (wor2),y› iny› bne sl› inc word+1› inc wor2+1› dex› bne sl› rts››pojw ldx six› lda sinx,x› sta px› ldx siy› lda siny,x› sta py› lda kl1› sta kl› jsr tv3››pojw2 ldx six+1› lda sinx,x› sta px› ldx siy+1› lda siny,x› sta py› lda kl2› sta kl› jsr tv3››pojw3 ldx six+2› lda sinx,x› sta px› ldx siy+2› lda siny,x› sta py› lda kl3› sta kl› jmp tv3››*--- 3 obiekty ----------------------››ob3 ldx six› lda sinx,x› sta px› ldx siy› lda siny,x› sta py› lda kl1› sta kl› jsr tv3› lda kl1› sta kl› jsr zwkl› sta kl1› inc six› inc six› inc siy› inc siy›*-› ldx six+1› lda sinx,x› sta px› ldx siy+1› lda siny,x› sta py› lda kl2› sta kl› jsr tv3› lda kl2› sta kl› jsr zwkl› sta kl2› inc six+1› inc six+1› inc siy+1› inc siy+1›*-› ldx six+2› lda sinx,x› sta px› ldx siy+2› lda siny,x› sta py› lda kl3› sta kl› jsr tv3› lda kl3› sta kl› jsr zwkl› sta kl3› inc six+2› inc six+2› inc siy+2› inc siy+2› rts››ob01 ldx six+2› lda sinx,x› sta px› ldx siy+2› lda siny,x› sta py› lda kl3› sta kl› jsr tv3› lda kl3› sta kl› jsr zwkl› sta kl3› inc six+2› inc six+2› dec siy+2› dec siy+2› dec siy+2› rts››zwkl inc kl› lda kl› cmp #42› bne zl› lda #0›zl rts›*--- t.obiekt››tv3 lda #$cf-1› sta $d301›*-› lda #22› sta nrl› lda kl› clc› adc #$40› sta tv0+2› lda #0› sta tv0+1› jsr se› jsr sxy›› ldx #11› ldy #0›tv0 lda $4000› sta pom› beq eh› and #$f0› beq tvl› lda pom› and #$f› beq tvp› lda pom› jmp tvs››tvl lda (word),y› and #$f0› ora pom› jmp tvs›tvp lda (word),y› and #$f› ora pom›tvs sta (word),y››eh inc tv0+1› iny› dex› bne tv0›› ldx #11› jsr zw2› ldy #0› dec nrl› bne tv0›› lda #22› sta nrl› lda #$fe› sta $d301› rts››zw2 clc› lda word› adc #32› sta word› bcc *+4› inc word+1› rts››se lda px› lsr @› sta word›_ze lda #$ba› sta word+1› ldy py›ze beq _se› jsr zw2› dey› jmp ze›_se rts››px dta b(5)›py dta b(10)›six dta b(0),b(85),b(170)›siy dta b(0),b(85),b(170)›kl1 dta b(0)›kl2 dta b(15)›kl3 dta b(30)›sxy rts››kl dta b(0)››p0 jsr gnap ; napis,motion,clr,cz› jsr motion› jsr clr› jmp cz›ti0 lda #4› sta 538› jsr gnap› jsr motion› jmp clr›timer dta a(0)›tunm ldx #1› stx dl_› dex› stx scr_› lda #$b2› sta dl_+1› lda #$b4› sta scr_+1› jsr mkdl› jsr sdl2 ; dlist› jsr kopt ; kopiuje z banku› jmp tmaker ; gen.kod›tun inc tpoz› lda tpoz› and #63› sta tpoz› tay› jmp tunel›tun2 dec tpoz› lda tpoz› and #63› sta tpoz› tay› jmp tunel››tpoz dta b(0)›vmak lda #1›_v1 ldx #3› jsr objini› jsr rset› jsr rini› ldx #$ff› stx oblr› stx okdn› inx› stx 538› stx klt› stx alf1› stx alfa› stx bet1› stx beta› stx gam1› stx gama› lda #30› sta skl1› jsr sv_› lda #$40› sta tb1+2› lda #22› sta nrl›pet jsr clr› jsr obj› ldy #0› ldx #0›tb0 lda (word),y› pha› lda #$ce› sta $d301› pla›tb1 sta $4000,x› lda #$fe› sta $d301› iny› inx› cpy #11› bne tb0› ldy #0› jsr zw2› dec nrl› bne tb0› lda #22› sta nrl› inc tb1+2› jsr sv_› ldx #0› lda alf1› clc› adc #6› sta alf1› lda bet1› clc› adc #6› sta bet1› lda gam1› adc #6› sta gam1› inc klt› lda klt› cmp #45› bne pet›pet_ inc 538› rts›sv_ lda #$a8› sta word› lda #$bb› sta word+1› rts›klt dta b(0)›nrl dta b(0)››*-----------------------------*›*--  ÓĹÔů ››sdl0 lda dl0› sta $231› rts››sdl1 lda dl1 ; set: $0230› sta $230› lda dl1+1› sta $231› rts›sdl2 lda dl2› sta $230› lda dl2+1› sta $231› rts››set lda dl1› sta dl_› lda dl1+1› sta dl_+1› lda sca1› sta scr_› lda sca1+1› sta scr_+1› jsr mkdl› lda dl2› sta dl_› lda dl2+1› sta dl_+1› lda sca2› sta scr_› lda sca2+1› sta scr_+1› jsr mkdl› jsr mkmot›› lda #64› sta 623› rts››*--  ĐĎÄĐŇĎĂËÉ ››motion ldx #31› jsr mtprc› dex› bpl *-4› rts››kopt lda #0› tay› sta $80› sta $82› lda #$40› sta $81› lda #$20› sta $83›› ldx #2›kt0 lda #$ea› sta $d301› lda ($80),y› pha› lda #$fe› sta $d301› pla› sta ($82),y› iny› bne kt0› inc $81› inc $83› dex› bne kt0››_kt1 lda #$42 ;tun.dat 42› sta $81› lda #$64› sta $83›› ldx #$29›kt1 lda #$ea ; ea› sta $d301› lda ($80),y› pha› lda #$fe› sta $d301› pla› sta ($82),y› iny› bne kt1› inc $81› inc $83› dex› bne kt1› rts››mkmot ldx #0› txa› lsr @› and #$f0› sta pom0› txa› and #$0f› lsr @› ora pom0› sta mtab,x› inx› bne mkmot+2› rts››*v1 adres miejsca procedury›mkmpr lda mtprc› sta v1+1› ldy #0› sty mote› sty motb› sty motc›mkn lda >sekr› sta mote+1 ; inny bufor›mkn2 lda >sekr› sta motc+1› lda >sbuf› sta motb+1› lda #48› sta pom0››mkmprl lda #$bc ldy buf,x› jsr mkmprp› lda motb› jsr mkmprp› lda motb+1› jsr mkmprp› lda #$b9 lda mtab,y› jsr mkmprp› lda mtab› jsr mkmprp› lda #$bc ldy ekr,x› jsr mkmprp› lda mote› jsr mkmprp› lda mote+1› jsr mkmprp› lda #$79 adc mtab,y› jsr mkmprp› lda mtab› jsr mkmprp› lda #$9d sta ekr,x› jsr mkmprp› lda motc ;e› jsr mkmprp ;e› lda motc+1› jsr mkmprp›› lda mote› clc› adc #32› sta mote› sta motc› sta motb› bcc _ph› inc mote+1› inc motb+1› inc motc+1››* lda mote+1›* adc #0›* sta mote+1›* lda motc+1 ;›* adc #0 ;›* sta motc+1 ;›* plp›* lda motb+1›* adc #0›* sta motb+1›* plp››_ph dec pom0› bne mkmprl› lda #$60 rts›››mkmprp sta (v1),y› iny› bne *+4› inc v1+1› rts››*kopiowanie bufora do ekranu›ecopy lda portb› pha› lda #$e6› sta portb› jsr $4000› pla› sta portb› rts››*generowanie procki do banku $e7›cpcpr lda portb› pha› lda #$e6› sta portb›› lda <$4000› sta v1› lda >$4000› sta v1+1› jsr mkcpr› pla› sta portb›››*v1 adres miejsca procedury›mkcpr ldy #0› sty mote› sty motb› lda >sekr› sta mote+1› lda >sbuf› sta motb+1››mkcprl lda #$ad lda buf› jsr mkmprp› lda motb› jsr mkmprp› lda motb+1› jsr mkmprp› lda #$8d sta ekr› jsr mkmprp› lda mote› jsr mkmprp› lda mote+1› jsr mkmprp› inc motb› bne *+4› inc motb+1› inc mote› bne *+4› inc mote+1› lda mote+1› cmp >sbuf› bcc mkcprl›› lda #$60 rts› jmp mkmprp››clr lda #0› tay›cl2 sta sbuf,y› sta sbuf+$80,y› sta sbuf+$100,y› sta sbuf+$180,y› sta sbuf+$200,y› sta sbuf+$280,y› sta sbuf+$300,y› sta sbuf+$380,y› sta sbuf+$400,y› sta sbuf+$480,y› sta sbuf+$500,y› sta sbuf+$580,y› iny› bpl cl2› rts››mkdl lda dl_› sta $80› lda dl_+1› sta $81› lda scr_› sta $82› lda scr_+1› sta $83›› ldy #0›› ldx pus ; robi_puste› lda #$70››_mkp jsr mk0› dex› bne _mkp›› ldx razy› lda line› sta pom››mk1 lda #$4f ; line1› jsr mk0› lda $82› jsr mk0› lda $83› jsr mk0› lda #0› jsr mk0›› cpx #0› beq mk2› dex› jmp mk1››mk2 clc ; zw.scr_add› lda $82› adc #32› sta $82› bcc *+4› inc $83›› ldx razy› dec pom› bne mk1›› lda #$41› jsr mk0› lda $80› jsr mk0› lda $81› jmp mk0 ; end››mk0 sta ($80),y› iny› bne *+4› inc $81› rts››cz lda 20› cmp 20› beq *-2› rts›››*-- napisiki ---››*generowanie napisikow›* by lamers/ng››*napiz lda #$ae›* sta $d301›* jsr napiz_›* lda #$fe›* sta $d301›* rts››napiz lda nap› sta vnap+1› lda pnap› sta vprc+1›› txa› beq nzjuz›› ldy #0›nzl lda (vnap),y› bmi nzn› iny› bne nzl› inc vnap+1› bne nzl››nzn dex› bne nzl+4›› sec (+1)› tya› adc vnap› sta vnap› bcc *+4› inc vnap+1››nzjuz ldx #0› txa›q__ sta buff,x› inx› bne q__›› ldx #0› stx vbuf› stx onap› lda >buff› sta vbuf+1›› lda sbuf› sta s1+1››› ldy ynap› beq le_0›le_1 lda s1› clc› adc #32› sta s1› bcc *+4› inc s1+1› dec ynap› bne le_1››le_0 lda s1› clc› adc xnap› sta s1› lda s1+1› adc #0› sta s1+1›››l_0 ldy onap next znak› lda #0› sta vfnt+1› lda (vnap),y› bpl *+5› jmp l_2› inc onap› asl @ *8› asl @› rol vfnt+1› asl @› rol vfnt+1› sta vfnt› lda vfnt+1› clc› adc >font› sta vfnt+1›› lda vbuf+1› pha› lda vbuf› pha›› ldy #0› sty tmp0› ldx #8››l_1 lda #fontb› sta portb› ldy tmp0 next bajt› lda (vfnt),y› inc tmp0› lsr @› lsr @› sta tmp1› lda #$fe› sta portb› ldy #2››s00 lsr tmp1 next bit› bcc l_1a› lsr tmp1› bcc l_1b› lda #$ff 11› sta (vbuf),y› dey› bpl s00› bmi s01›l_1a lsr tmp1› bcc l_1d› lda #$f0 01› sta (vbuf),y› dey› bpl s00› bmi s01›l_1b lda #$0f 10› sta (vbuf),y› dey› bpl s00› bmi s01›l_1d lda #$00 00› sta (vbuf),y› dey› bpl s00››s01 lda vbuf› clc› adc #32› sta vbuf› bcc *+4› inc vbuf+1› dex› bne l_1›› pla› clc› adc #3› sta vbuf› pla› adc #0› sta vbuf+1›› jmp l_0››*áîáěůúá âőćďňá›l_2 ldy #0› lda #$a9 lda #› jsr stor›› lda colr› asl @› asl @› asl @› asl @› sta tmp0› ora colr› jsr stor colr*16+colr›› ldx #0››l_2a lda buff,x› beq l_2b0› cmp #$f0› beq l_2b0› cmp #$0f› beq l_2b0›› lda #$9d sta abs,x› jsr stor› txa› clc› adc s1› jsr stor lmb› lda #0› sta buff,x› adc s1+1› jsr stor smb›››l_2b0 inx› bne l_2a››l_2b ldx #0›› lda buff,x› beq l_2c0› cmp #$0f› beq l_2c0›› lda #$bd lda abs,x› jsr stor› txa› clc› adc s1› sta tmpv› jsr stor lmb› lda #0› sta buff,x› adc s1+1› sta tmpv+1 smb› jsr stor› lda #$29 and #› jsr stor› lda #$0f $0f› jsr stor› lda #$09 ora #› jsr stor› lda tmp0› jsr stor color*16› lda #$9d› jsr stor sta abs,x› lda tmpv› jsr stor› lda tmpv+1› jsr stor››l_2c0 inx› bne l_2b+2››l_2c ldx #0›› lda buff,x› beq l_2d0›› lda #$bd lda abs,x› jsr stor›› txa› clc› adc s1› sta tmpv› jsr stor lmb› lda #0› sta buff,x› adc s1+1› sta tmpv+1 smb› jsr stor› lda #$29 and #› jsr stor› lda #$f0 $f0› jsr stor› lda #$09 ora #› jsr stor› lda colr› jsr stor colr› lda #$9d› jsr stor sta abs,x› lda tmpv› jsr stor› lda tmpv+1› jsr stor››l_2d0 inx› bne l_2c+2››l_2d lda #$60 rts› jsr stor›* lda #$fe›* sta $d301››stor sta (vprc),y› iny› bne *+4› inc vprc+1› rts›››*gloowna procedoora rysoojaca›obj lda oblr› bmi obj_0+3› beq obj0›› jsr motion› jmp obj_0››obj0 equ *› jsr ecopy››obj_0 jsr clr›› lda okdn› bne *+5›› jsr gnap›› lda alf1› sta alfa› lda bet1› sta beta› lda gam1› sta gama› lda skl1› sta skal› lda xct1› sta xcnt› lda yct1› sta ycnt››› jsr rlgh››› lda okdn› bmi obj1› beq obj1›› cmp #1› bne obj1›› jsr gnap››obj1 lda oile› beq obj2›› lda alf2› sta alfa› lda bet2› sta beta› lda gam2› sta gama› lda skl2› sta skal› lda xct2› sta xcnt› lda yct2› sta ycnt› jsr rlgh›››obj2 lda okdn› cmp #2› beq gnap› rts››gnap lda $d20a› and #3› asl @› asl @› asl @› asl @› asl @› sta pom› lda $d20a› and #3› clc› adc pom› tax›_n11 jmp pnap›››* --- x - numer objektu››objini equ *› ldy >epx ; QKN !› sty qkn1+2 ; nie bylo tego !!!› ldy >el1 ; lamerze ;-)› sty qkn4+2 ;›› pha› lda objl,x› sta vec› lda objh,x› sta vec+1› lda #fontb› sta portb› ldy #0› tya›objil sta ecr,y› sta epx,y› sta epx+$100,y› sta epx+$200,y› sta el1,y› sta el1+$100,y› sta el1+$200,y› sta el1+$300,y› sta el1+$400,y› sta el1+$500,y› dey› bne objil›› lda (vec),y› sta scn› iny› lda (vec),y› sta pix› lda #2› jsr qkniv›› ldy scn› lda (vec),y› sta ecr,y› dey› bne *-6› lda scn› jsr qkniv›› ldx #3››qkn0 ldy pix› lda (vec),y›qkn1 sta epx,y› dey› bne *-6› lda pix› jsr qkniv›› inc qkn1+2› dex› bne qkn0›› ldx #6››qkn3 ldy scn› lda (vec),y›qkn4 sta el1,y› dey› bne *-6› lda scn› jsr qkniv›› inc qkn4+2› dex› bne qkn3›› lda #$fe› sta portb›› pla› bne *+5› jmp rstf› cmp #1› bne *+5› jmp rstl› cmp #2› bne *+5› jmp rstm› cmp #3› bne *+5› jmp sefg› jmp sefm››qkniv clc› adc vec› sta vec› bcc *+4› inc vec+1› rts››dl0 dta b(0),b($41),a(dl0)››*-- mniej wazne›pom dta b(0)››*--  ×ÁÚÎÉĹĘÓÚĹ ÚÍÉĹÎÎĹ ›rbuf dta b(0) ; buf.z›sca1 dta a($b400)›sca2 dta a($ba00)›scr_ dta a($0000) ; roboczy, 4 maker››dl1 dta a($b001) ; adres dl1›dl2 dta a($b201)›dl_ dta a($0000) ; robocza, 4 maker››line dta b(48) ; ile linii›razy dta b(1) ; powielac x1,x2...›pus dta b(3) ; puste linie - $70››*zmienne dla OBJ›objl dta l(torusc),l(scn12),l(czwor),l(gwazd)› dta l(gw2)›objh dta h(torusc),h(scn12),h(czwor),h(gwazd)› dta h(gw2)››oblr brk 0=copiowanie inna=blur›* >127 = nic, tylko show 3D›oile brk 0=1 object inna=2 objekty›okdn brk kiedy napis:›* 0-na poczatku›* 1-po 1 objekcie›* 2-po drogim objekcie›* >127 = nic››nap equ $400›› opt %0100110› end main›››