home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
64'er 1991 September
/
64er_Magazin_91-09_1991_Markt__Technik_de_Side_A.d64
/
springer.src
(
.txt
)
< prev
next >
Wrap
Commodore BASIC
|
2022-10-26
|
10KB
|
791 lines
10 rem ** springer **
20 rem
30 rem programm von: maik qualmann
40 rem
50 rem (c) 1991
60 rem magic formel assembler
70 (NULL)
80 opt oo
90 *= $4780
100 puffer1 = $0400
110 puffer2 = $0500
120 puffer3 = $0600
130 sei
140 cld
150 jsr $fd15
160 jsr $fda3
170 jsr $e518
180 lda #$31
190 sta $01
200 ldx #$00
210 co1 lda $d000,x
220 sta $4400,x
230 lda $d100,x
240 sta $4500,x
250 lda #$0f
260 sta $4000,x
270 sta $4100,x
280 sta $4200,x
290 sta $4300,x
300 inx
310 bne co1
320 lda #$37
330 sta $01
340 txa
350 ldy #$60
360 jsr posi
370 ldx #$20
380 tya
390 cl1 sta ($fb),y
400 iny
410 bne cl1
420 inc $fc
430 dex
440 bne cl1
450 ldy #$03
460 lda #$0b
470 af2 ldx #$09
480 af1 jsr (NULL)
490 inx
500 cpx #$0d
510 bne af1
520 eor #$07
530 iny
540 cpy #$08
550 bne af2
560 ldx #$00
570 af5 cpx #$60
580 beq af6
590 lda (NULL)tab,x
600 sta $fc
610 inx
620 lda (NULL)tab,x
630 sta $fb
640 inx
650 lda (NULL)tab,x
660 sta $46
670 inx
680 ldy #$00
690 af7 lda (NULL)tab,x
700 pha
710 jsr (NULL)
720 iny
730 inx
740 pla
750 bmi af5
760 bpl af7
770 af6 lda #$0f
780 sta $d020
790 lda #%00001001
800 sta $d018
810 lda #$3b
820 sta $d011
830 lda #$96
840 sta $dd00
850 lda #29
860 sta $43f8
870 lda #$14
880 sta $4f
890 lda #$32
900 sta $55
910 start lda #$00
920 sta $3b
930 sta $3f
940 tay
950 lda #$01
960 bl3 ldx #$00
970 bl2 jsr (NULL)
980 eor #$01
990 inx
1000 cpx #$08
1010 bne bl2
1020 eor #$01
1030 iny
1040 cpy #$08
1050 bne bl3
1060 lda $4f
1070 sta $56
1080 lda #$50
1090 sta $44
1100 lda #$f0
1110 sta $45
1120 jsr zufall
1130 sta $40
1140 sta $60
1150 tay
1160 jsr zufall
1170 sta $41
1180 sta $61
1190 tax
1200 lda #64
1210 jsr (NULL)1
1220 se1 jsr test
1230 lda $fe
1240 bne sd1
1250 jmp start
1260 sd1 jsr zufall
1270 cmp $fe
1280 bcs sd1
1290 asl
1300 tax
1310 lda $3b
1320 asl
1330 tay
1340 lda puffer1,x
1350 sta puffer2,y
1360 sta $40
1370 lda puffer1+1,x
1380 sta puffer2+1,y
1390 sta $41
1400 inc $3b
1410 ldy $40
1420 tax
1430 lda #82
1440 jsr (NULL)1
1450 dec $56
1460 bne se1
1470 lda #91
1480 jsr (NULL)1
1490 jsr st6
1500 inc $3b
1510 lda #$00
1520 sta $3c
1530 sta $4e
1540 sta $57
1550 sta $60
1560 sta $61
1570 lda #7
1580 sta $3d
1590 lda #$1d
1600 sta $d000
1610 lda #$36
1620 sta $d001
1630 lda #$01
1640 sta $d015
1650 anfang1 jsr levelz
1660 ldx #$06
1670 lda #$30
1680 re1 sta $62,x
1690 dex
1700 bpl re1
1710 ldx #$03
1720 lda #$00
1730 re2 sta $48,x
1740 dex
1750 bpl re2
1760 lda #$c0
1770 ldy #$43
1780 jsr posi
1790 ldy #$27
1800 ki1 lda #$20
1810 jsr (NULL)
1820 dey
1830 bpl ki1
1840 anfang lda #<anfang
1850 ldx #>anfang
1860 sta $4c
1870 stx $4d
1880 lda #$f0
1890 an1 cmp $d012
1900 bne an1
1910 inc $d027
1920 lda $57
1930 bne an2
1940 jsr time
1950 an2 jsr (NULL)
1960 jsr joyst
1970 jmp ($004c)
1980 joyst lda $03
1990 ldx $3c
2000 bne j1
2010 lda $dc00
2020 sta $03
2030 j1 ldy $d001
2040 ldx $d000
2050 lsr
2060 sta $02
2070 bcs j2
2080 lda $60
2090 beq j2
2100 dey
2110 dey
2120 dey
2130 inc $3c
2140 lda $3d
2150 bne j2
2160 dec $60
2170 j2 lsr $02
2180 bcs j3
2190 lda $60
2200 cmp #$07
2210 beq j3
2220 iny
2230 iny
2240 iny
2250 inc $3c
2260 lda $3d
2270 bne j3
2280 inc $60
2290 j3 lsr $02
2300 bcs j4
2310 lda $61
2320 beq j4
2330 dex
2340 dex
2350 dex
2360 inc $3c
2370 lda $3d
2380 bne j4
2390 dec $61
2400 j4 lsr $02
2410 bcs j5
2420 lda $61
2430 cmp #$09
2440 beq j5
2450 inx
2460 inx
2470 inx
2480 inc $3c
2490 lda $3d
2500 bne j5
2510 inc $61
2520 j5 sty $d001
2530 stx $d000
2540 lda $3c
2550 bne j6
2560 lsr $02
2570 bcs j7
2580 lda $4e
2590 bne j8
2600 jsr menu
2610 bcs j9
2620 jsr set
2630 j9 lda #$01
2640 sta $4e
2650 j8 rts
2660 j7 lda #$00
2670 sta $4e
2680 rts
2690 j6 dec $3d
2700 bpl j8
2710 lda #$00
2720 sta $3c
2730 lda #7
2740 sta $3d
2750 rts
2760 pferd ldy $40
2770 ldx $41
2780 lda #64
2790 jsr (NULL)1
2800 ldx #$06
2810 zug2 inc $62,x
2820 lda $62,x
2830 cmp #$3a
2840 bne zug1
2850 lda #$30
2860 sta $62,x
2870 dex
2880 bpl zug2
2890 bmi zug3
2900 zug1 sta $62,x
2910 zug3 rts
2920 set lda #$00
2930 sta $44
2940 lda #$f0
2950 sta $45
2960 jsr test
2970 ldx $fe
2980 dex
2990 bmi st1
3000 st4 txa
3010 asl
3020 tay
3030 lda puffer1,y
3040 cmp $60
3050 bne st2
3060 lda puffer1+1,y
3070 cmp $61
3080 beq st3
3090 st2 dex
3100 bpl st4
3110 bmi st1
3120 st3 ldy $60
3130 ldx $61
3140 jsr bild
3150 cmp #$70
3160 bne st5
3170 lda $3b
3180 cmp #$01
3190 bne st1
3200 jsr st5
3210 inc $57
3220 lda $4c
3230 cmp #<anfang
3240 bne st1
3250 lda #$9f
3260 sta $46
3270 lda #$c0
3280 ldy #$43
3290 jsr posi
3300 ges1 lda (NULL)2,y
3310 jsr (NULL)
3320 iny
3330 cpy #16
3340 bne ges1
3350 lda #$1f
3360 sta $46
3370 ldx #$ff
3380 lda #$30
3390 ges2 inx
3400 cmp $62,x
3410 beq ges2
3420 ges3 lda $62,x
3430 jsr (NULL)
3440 iny
3450 inx
3460 cpx #$07
3470 bne ges3
3480 lda #$9f
3490 sta $46
3500 ldx #$00
3510 ges4 lda (NULL)3,x
3520 jsr (NULL)
3530 iny
3540 inx
3550 cpx #$07
3560 bne ges4
3570 lda #$1f
3580 sta $46
3590 st1 rts
3600 st5 ldy $40
3610 ldx $41
3620 lda #73
3630 jsr (NULL)1
3640 inc $3f
3650 st6 lda $3f
3660 asl
3670 tax
3680 lda $60
3690 sta puffer3,x
3700 sta $40
3710 lda $61
3720 sta puffer3+1,x
3730 sta $41
3740 dec $3b
3750 jsr ton
3760 jmp pferd
3770 zurueck lda $57
3780 bne zr1
3790 jsr zuru
3800 jsr ton
3810 zr1 jmp anfang
3820 zuru lda $3f
3830 beq st1
3840 lda #82
3850 ldx $57
3860 beq zu2
3870 lda #91
3880 zu2 ldy $40
3890 ldx $41
3900 jsr (NULL)1
3910 dec $3f
3920 lda $3f
3930 asl
3940 tax
3950 lda puffer3,x
3960 sta $40
3970 lda puffer3+1,x
3980 sta $41
3990 inc $3b
4000 jmp pferd
4010 (NULL) ldx #$70
4020 lda $3b
4030 cmp #$01
4040 bne he2
4050 ldx #$f0
4060 he2 stx $44
4070 lda #$00
4080 sta $45
4090 jsr test
4100 lda #$39
4110 ldy #$41
4120 jsr posi
4130 lda $fe
4140 jmp (NULL)zahl
4150 zufall lda $dc04
4160 eor $d012
4170 and #$07
4180 rts
4190 bild lda #$3f
4200 sta $fc
4210 lda #$85
4220 bi1 clc
4230 adc #120
4240 bcc bi4
4250 inc $fc
4260 bi4 dey
4270 bpl bi1
4280 bi2 clc
4290 adc #$03
4300 bcc bi5
4310 inc $fc
4320 bi5 dex
4330 bpl bi2
4340 sta $fb
4350 ldy #$00
4360 lda ($fb),y
4370 and #$0f
4380 sta $54
4390 lda ($fb),y
4400 and #$f0
4410 rts
4420 test lda #$00
4430 sta $fe
4440 lda #$07
4450 sta $52
4460 sc2 lda $52
4470 asl
4480 tax
4490 lda $40
4500 clc
4510 adc sctab,x
4520 cmp #$08
4530 bcs sc3
4540 tay
4550 lda $41
4560 clc
4570 adc sctab+1,x
4580 cmp #$08
4590 bcs sc3
4600 tax
4610 sty $42
4620 stx $43
4630 jsr bild
4640 cmp #$e0
4650 beq sc3
4660 cmp #$a0
4670 beq sc3
4680 cmp $44
4690 beq sc3
4700 cmp $45
4710 beq sc3
4720 lda $fe
4730 asl
4740 tax
4750 lda $42
4760 sta puffer1,x
4770 lda $43
4780 sta puffer1+1,x
4790 inc $fe
4800 sc3 dec $52
4810 bpl sc2
4820 rts
4830 sctab byt $fe,$ff,$fe,$01,$ff,$02
4840 byt $01,$02,$02,$01,$02,$ff
4850 byt $01,$fe,$ff,$fe
4860 ton lda #$00
4870 sta $d404
4880 sta $d400
4890 lda #$50
4900 sta $d405
4910 lda #$1a
4920 sta $d401
4930 lda #$0f
4940 sta $d418
4950 lda #$61
4960 sta $d404
4970 rts
4980 time inc $48
4990 lda $48
5000 cmp #50
5010 bne ti6
5020 lda #$00
5030 sta $48
5040 sed
5050 ldx #$02
5060 ti4 lda $49,x
5070 clc
5080 adc #$01
5090 cmp #$60
5100 bne ti3
5110 lda #$00
5120 sta $49,x
5130 dex
5140 bpl ti4
5150 bmi ti6
5160 ti3 sta $49,x
5170 ti6 cld
5180 lda #$95
5190 ldy #$40
5200 jsr posi
5210 ldy #$07
5220 ldx #$02
5230 ti5 lda $49,x
5240 and #$0f
5250 jsr (NULL)zahl
5260 lda $49,x
5270 lsr
5280 lsr
5290 lsr
5300 lsr
5310 dey
5320 jsr (NULL)zahl
5330 dey
5340 bmi ti7
5350 lda #$3a
5360 jsr (NULL)
5370 dey
5380 dex
5390 bpl ti5
5400 ti7 rts
5410 menu ldx #$03
5420 lda $61
5430 cmp #$09
5440 bne me1
5450 me3 cpx $60
5460 beq me2
5470 inx
5480 cpx #$08
5490 bne me3
5500 me1 lda $61
5510 cmp #$08
5520 rts
5530 me2 dex
5540 dex
5550 dex
5560 txa
5570 asl
5580 tay
5590 lda stab,y
5600 sta $4c
5610 lda stab+1,y
5620 sta $4d
5630 lda #$01
5640 sta $d027
5650 sec
5660 rts
5670 stab wor zurueck,sleep,level,zeigen,ggame
5680 sleep jsr ton
5690 lda #$7b
5700 sta $d011
5710 jsr taste
5720 lda #$3b
5730 sta $d011
5740 jmp anfang
5750 level jsr ton
5760 level1 jsr levelz
5770 jsr pause
5780 lda $dc00
5790 lsr
5800 tay
5810 bcs le1
5820 lda $4f
5830 cmp #$32
5840 beq le1
5850 clc
5860 adc #$0a
5870 sta $4f
5880 inc $55
5890 le1 tya
5900 lsr
5910 tay
5920 bcs le2
5930 lda $4f
5940 cmp #$0a
5950 beq le2
5960 sec
5970 sbc #$0a
5980 sta $4f
5990 dec $55
6000 le2 tya
6010 lsr
6020 lsr
6030 lsr
6040 bcs level1
6050 jmp start
6060 levelz lda #$a4
6070 ldy #$42
6080 jsr posi
6090 lda #$1b
6100 sta $46
6110 lda $55
6120 jsr (NULL)
6130 lda #$1f
6140 sta $46
6150 rts
6160 pause ldx #$90
6170 ldy #$90
6180 le4 dey
6190 bne le4
6200 dex
6210 bne le4
6220 rts
6230 zeigen jsr ton
6240 lda $61
6250 pha
6260 lda $60
6270 pha
6280 ze1 jsr zuru
6290 lda #$00
6300 sta $57
6310 sta $fd
6320 lda $3f
6330 bne ze1
6340 beq ze5
6350 ze4 jsr taste
6360 lda $fd
6370 asl
6380 tax
6390 lda puffer2,x
6400 sta $60
6410 lda puffer2+1,x
6420 sta $61
6430 inc $fd
6440 jsr set
6450 ze5 jsr (NULL)
6460 lda $57
6470 beq ze4
6480 pla
6490 sta $60
6500 pla
6510 sta $61
6520 jmp anfang
6530 regiss sta $5c
6540 stx $5d
6550 sty $5e
6560 jsr bild
6570 lda #$02
6580 sta $52
6590 rts
6600 plus lda $fb
6610 clc
6620 adc #$28
6630 sta $fb
6640 bcc pl1
6650 inc $fc
6660 pl1 dec $52
6670 rts
6680 (NULL) jsr regiss
6690 bl1 ldy #$00
6700 lda $5c
6710 ldx #32
6720 jsr sett
6730 iny
6740 jsr sett
6750 iny
6760 jsr sett
6770 jsr plus
6780 bpl bl1
6790 (NULL)e lda $5c
6800 ldx $5d
6810 ldy $5e
6820 rts
6830 (NULL)1 jsr regiss
6840 bo4 lda #$03
6850 sta $53
6860 ldy #$00
6870 bo3 lda $5c
6880 sec
6890 sbc #64
6900 tax
6910 lda ftab,x
6920 ora $54
6930 ldx $5c
6940 jsr sett
6950 inc $5c
6960 iny
6970 dec $53
6980 bne bo3
6990 jsr plus
7000 bpl bo4
7010 bmi (NULL)e
7020 ftab byt $e0,$e0,$e0,$e0,$e0,$e0,$e0,$e0,$e0
7030 byt $a0,$a0,$a0,$a0,$a0,$a0,$a0,$50,$50
7040 byt $50,$50,$50,$50,$50,$50,$50,$50,$50
7050 byt $70,$70,$70,$a0,$a0,$a0,$30,$30,$30
7060 ggame jsr zuru
7070 lda #$00
7080 sta $57
7090 lda $3f
7100 bne ggame
7110 jsr ton
7120 jmp anfang1
7130 sett sta $58
7140 stx $59
7150 sty $5a
7160 sett2 sta ($fb),y
7170 lda #$00
7180 sta $a9
7190 txa
7200 asl
7210 rol $a9
7220 asl
7230 rol $a9
7240 asl
7250 rol $a9
7260 sta $a8
7270 lda $a9
7280 clc
7290 adc #$44
7300 sta $a9
7310 lda $fc
7320 and #$0f
7330 sta $a7
7340 tya
7350 clc
7360 adc $fb
7370 sta $a6
7380 bcc set2
7390 inc $a7
7400 set2 lda $a6
7410 asl
7420 rol $a7
7430 asl
7440 rol $a7
7450 asl
7460 rol $a7
7470 sta $a6
7480 lda $a7
7490 clc
7500 adc #$60
7510 sta $a7
7520 ldx #$07
7530 ldy #$00
7540 set1 lda ($a8),y
7550 sta ($a6),y
7560 iny
7570 dex
7580 bpl set1
7590 lda $58
7600 ldx $59
7610 ldy $5a
7620 rts
7630 posi sta $fb
7640 sty $fc
7650 ldy #$00
7660 rts
7670 (NULL)zahl ora #$30
7680 (NULL) and #$3f
7690 stx $59
7700 sty $5a
7710 tax
7720 lda $46
7730 jmp sett2
7740 taste jsr pause
7750 taste1 lda $dc00
7760 and #$10
7770 bne taste1
7780 rts
7790 (NULL)tab byt $40,$1a,$6f : asc "** springer *":byt $aa
7800 byt $40,$6f,$9f : asc "zei[212]"
7810 byt $40,$e5,$9f : asc "moeglich[197]"
7820 byt $41,$0d,$9f : asc "zuganzah[204]"
7830 byt $41,$ad,$fb : asc "zuruec[203]"
7840 byt $42,$26,$fc : asc "paus[197]"
7850 byt $42,$9d,$fb : asc "level":byt $ba
7860 byt $43,$15,$fc : asc "loesun[199]"
7870 byt $43,$8d,$fb : asc "neustar[212]"
7880 (NULL)2 asc "o.k.! das waren "
7890 (NULL)3 asc " zuege!"
7900 end