mirror of
https://github.com/antoinevignau/source.git
synced 2025-01-15 00:29:59 +00:00
4d4fb6a665
Some old (WIP) disassemblies and my own source code now available online.
784 lines
18 KiB
Plaintext
784 lines
18 KiB
Plaintext
0010 .LI OFF
|
|
0020 TEMP1 .EQ $F0
|
|
0030 TEMP2 .EQ $F1
|
|
0040 TEMP3 .EQ $F2
|
|
0050 TEMP4 .EQ $FF
|
|
0060 TEMP6 .EQ $7A
|
|
0070 SCRPNT1 .EQ $F5
|
|
0080 SCRPNT2 .EQ $F7
|
|
0090 POINTER1 .EQ $F9
|
|
0100 POINTER2 .EQ $FB
|
|
0110 POINTER3 .EQ $FD
|
|
0120 POINTER4 .EQ $EE
|
|
0130 POINTER5 .EQ $7D
|
|
0140 HEIGHT .EQ $ED
|
|
0150 PATINDEX .EQ $EC
|
|
0160 AAMSBYT .EQ $10C0
|
|
0170 AALSBYT .EQ $10E0
|
|
0180 ANTBYT1 .EQ $1000
|
|
0190 ANTBYT2 .EQ $1020
|
|
0200 ANTBYT3 .EQ $1040
|
|
0210 ANTBYT4 .EQ $1060
|
|
0220 ANTXOLD .EQ $D5
|
|
0230 ANTYOLD .EQ $D4
|
|
0240 ANTXXOLD .EQ $D3
|
|
0250 ANTX .EQ $DC
|
|
0260 ANTY .EQ $DB
|
|
0270 ANTXX .EQ $DA
|
|
0280 ANTNUM .EQ $D8
|
|
0290 DESTBYT1 .EQ $1080
|
|
0300 DESTBYT2 .EQ $10A0
|
|
0310 K8 .EQ $AF
|
|
0320 INIT.K8 .EQ $AE
|
|
0330 FOODNUM .EQ $AD
|
|
0340 FOODX .EQ $AC
|
|
0350 FOODY .EQ $AB
|
|
0360 FOODBYT1 .EQ $65D0
|
|
0370 FOODBYT2 .EQ $65D8
|
|
0380 FOODBYT3 .EQ $65E0
|
|
0390 ANTHOLD .EQ $65E8
|
|
0400 BYTE3 .EQ $AA
|
|
0410 WIDTH .EQ $A9
|
|
0420 FOODHEIGHT .EQ $A8
|
|
0430 SWAT .EQ $C5
|
|
0440 MANDIR .EQ $C8
|
|
0450 GRAB.FOOD .EQ $B7
|
|
0460 BYFOOD .EQ $B6
|
|
0470 MANSTATE .EQ $C7
|
|
0480 MANXX .EQ $CA
|
|
0490 SPIDERBYT4 .EQ $4118
|
|
0500 ANTPOSITIONS .EQ $65F0
|
|
0510 ANTPOS .EQ $A7
|
|
0520 ORIENT .EQ $A6
|
|
0530 NO.OF.FOODS1 .EQ $8A
|
|
0540 PLAYERNUM .EQ $B3
|
|
0550 ANT.ORIENTATIONS .EQ $65F8
|
|
0560 STING.MAN.Z .EQ $600F
|
|
0570 ERASE.ANT.Z .EQ $170F
|
|
0580 PLOT.ANT4.Z .EQ $1703
|
|
0590 VERT.FOOD.Z .EQ $7060
|
|
0600 VERT.FOOD2.Z .EQ $7063
|
|
0610 VACATE.ANTS.BLOCKS.Z .EQ $4F06
|
|
0620 RANDOM2.Z .EQ $1709
|
|
0630 .OR $6950
|
|
0640 .TA $1950
|
|
0650 JMP PUSH.FOOD.SOUND
|
|
0660 JMP MASTER.FOOD
|
|
0670 JMP UPDATE.HORIZ.DESTBYTS2
|
|
0680 JMP PLOT.FOOD
|
|
0690 JMP CHKBLK
|
|
0700 JMP SET.OFF.SCREEN
|
|
0710 JMP PLOT.FOOD2
|
|
0720 .BS $06
|
|
0730 PLOT.FOOD
|
|
0740 LDX FOODNUM
|
|
0750 PLOT.FOOD2
|
|
0760 LDA TABLE100,X
|
|
0770 STA POINTER1+1
|
|
0780 LDA FOODX
|
|
0790 LSR
|
|
0800 BCS .1
|
|
0810 LDA TABLE101,X
|
|
0820 BCC .2
|
|
0830 .1 LDA TABLE102,X
|
|
0840 .2 STA POINTER1
|
|
0850 LDA TABLE103,X
|
|
0860 STA FOODHEIGHT
|
|
0870 LDA TABLE104,X
|
|
0880 STA WIDTH
|
|
0890 LDA #$00
|
|
0900 STA PATINDEX
|
|
0910 LDA FOODY
|
|
0920 ASL
|
|
0930 ASL
|
|
0940 ASL
|
|
0950 STA TEMP1
|
|
0960 .3 LDA WIDTH
|
|
0970 STA TEMP2
|
|
0980 LDA FOODX
|
|
0990 STA TEMP3
|
|
1000 LDY TEMP1
|
|
1010 LDA (SCRPNT1),Y
|
|
1020 STA POINTER3+1
|
|
1030 CLC
|
|
1040 ADC #$60
|
|
1050 STA POINTER4+1
|
|
1060 LDA (SCRPNT2),Y
|
|
1070 STA POINTER3
|
|
1080 STA POINTER4
|
|
1090 .4 LDY PATINDEX
|
|
1100 LDA (POINTER1),Y
|
|
1110 LDY TEMP3
|
|
1120 CPY #$2C
|
|
1130 BCS .5
|
|
1140 CPY #$04
|
|
1150 BCC .5
|
|
1160 STA (POINTER3),Y
|
|
1170 STA (POINTER4),Y
|
|
1180 .5 INC PATINDEX
|
|
1190 INC TEMP3
|
|
1200 DEC TEMP2
|
|
1210 BNE .4
|
|
1220 INC TEMP1
|
|
1230 DEC FOODHEIGHT
|
|
1240 BNE .3
|
|
1250 RTS
|
|
1260 CHKBLK
|
|
1270 LDA AAMSBYT,X
|
|
1280 STA POINTER5+1
|
|
1290 LDA AALSBYT,X
|
|
1300 STA POINTER5
|
|
1310 LDA (POINTER5),Y
|
|
1320 CMP #$01
|
|
1330 BNE .1
|
|
1340 STY TEMP6
|
|
1350 JSR STING.MAN.Z
|
|
1360 LDA FOODNUM
|
|
1370 ORA #$10
|
|
1380 LDY TEMP6
|
|
1390 STA (POINTER5),Y
|
|
1400 RTS
|
|
1410 .1 AND #$20
|
|
1420 BEQ .2
|
|
1430 LDA (POINTER5),Y
|
|
1440 AND #$1F
|
|
1450 STY TEMP3
|
|
1460 TAY
|
|
1470 LDA ANTBYT1,Y
|
|
1480 AND #$3F
|
|
1490 STA ANTX
|
|
1500 STA ANTXOLD
|
|
1510 LDA ANTBYT3,Y
|
|
1520 STA ANTXX
|
|
1530 STA ANTXXOLD
|
|
1540 LDA ANTBYT2,Y
|
|
1550 STA ANTY
|
|
1560 STA ANTYOLD
|
|
1570 LDA #$00
|
|
1580 STA ANTBYT1,Y
|
|
1590 JSR ERASE.ANT.Z
|
|
1600 JSR VACATE.ANTS.BLOCKS.Z
|
|
1610 LDY TEMP3
|
|
1620 LDA (POINTER5),Y
|
|
1630 AND #$C0
|
|
1640 ORA #$10
|
|
1650 ORA FOODNUM
|
|
1660 STA (POINTER5),Y
|
|
1670 RTS
|
|
1680 .2 LDA (POINTER5),Y
|
|
1690 AND #$08
|
|
1700 BEQ .3
|
|
1710 LDA (POINTER5),Y
|
|
1720 AND #$07
|
|
1730 TAX
|
|
1740 LDA #$00
|
|
1750 STA SPIDERBYT4,X
|
|
1760 .3 LDA (POINTER5),Y
|
|
1770 AND #$C0
|
|
1780 ORA #$10
|
|
1790 ORA FOODNUM
|
|
1800 STA (POINTER5),Y
|
|
1810 RTS
|
|
1820 HORIZ.FOOD
|
|
1830 LDX FOODNUM
|
|
1840 LDY TABLE122,X
|
|
1850 LDA TABLE105,X
|
|
1860 STA TEMP1
|
|
1870 LDA TABLE107,X
|
|
1880 HORIZ.FOOD2
|
|
1890 STA TEMP2
|
|
1900 LDA BYTE3
|
|
1910 BMI .1
|
|
1920 RTS
|
|
1930 .1 LDA TABLE106,X
|
|
1940 TAX
|
|
1950 LDA #$00
|
|
1960 STA TEMP3
|
|
1970 .3 LDA DESTBYT1,X
|
|
1980 AND #$40
|
|
1990 STA ANTHOLD,Y
|
|
2000 BEQ .2
|
|
2010 INC TEMP3
|
|
2020 .2 DEY
|
|
2030 DEX
|
|
2040 CPX TEMP1
|
|
2050 BNE .3
|
|
2060 LDY TEMP3
|
|
2070 CPY TEMP2
|
|
2080 BCS .4
|
|
2090 JSR PLOT.VERT.ANTS
|
|
2100 LDA BYTE3
|
|
2110 AND #$FD
|
|
2120 LDX FOODNUM
|
|
2130 STA FOODBYT3,X
|
|
2140 LSR
|
|
2150 BCC .5
|
|
2160 RTS
|
|
2170 .5 JMP PLOT.FOOD
|
|
2180 .4 INC ORIENT
|
|
2190 LDA ORIENT
|
|
2200 LDX FOODNUM
|
|
2210 STA ANT.ORIENTATIONS,X
|
|
2220 LDA BYTE3
|
|
2230 AND #$84
|
|
2240 ORA #$02
|
|
2250 STA BYTE3
|
|
2260 STA FOODBYT3,X
|
|
2270 JSR ERASE.VERT.ANTS
|
|
2280 LDX ANTPOS
|
|
2290 DEX
|
|
2300 BPL .6
|
|
2310 LDX #$07
|
|
2320 .6 STX ANTPOS
|
|
2330 JSR UPDATE.VERT.ANTBYTS
|
|
2340 LDY FOODNUM
|
|
2350 LDA ANTPOS
|
|
2360 STA ANTPOSITIONS,Y
|
|
2370 BEQ .7
|
|
2380 CMP #$04
|
|
2390 BEQ .7
|
|
2400 JSR PLOT.VERT.ANTS
|
|
2410 JMP PLOT.FOOD
|
|
2420 .7 JSR PUSH.FOOD.SOUND
|
|
2430 JSR UPDATE.HORIZ.DESTBYTS
|
|
2440 LDA FOODX
|
|
2450 CLC
|
|
2460 ADC TABLE114,X
|
|
2470 STA FOODX
|
|
2480 STA FOODBYT1,X
|
|
2490 CMP TABLE131,X
|
|
2500 BNE .8
|
|
2510 LDA #$86
|
|
2520 STA FOODBYT3,X
|
|
2530 LDA FOODX
|
|
2540 .8 CLC
|
|
2550 ADC TABLE113,X
|
|
2560 STA TEMP4
|
|
2570 TAY
|
|
2580 LDX FOODY
|
|
2590 JSR CHKBLK
|
|
2600 LDX FOODY
|
|
2610 INX
|
|
2620 LDY TEMP4
|
|
2630 JSR CHKBLK
|
|
2640 LDX FOODY
|
|
2650 INX
|
|
2660 INX
|
|
2670 LDY TEMP4
|
|
2680 JSR CHKBLK
|
|
2690 LDA FOODNUM
|
|
2700 EXT1
|
|
2710 CMP #$03
|
|
2720 BEQ .18
|
|
2730 CMP #$04
|
|
2740 BEQ .18
|
|
2750 LDX FOODY
|
|
2760 INX
|
|
2770 INX
|
|
2780 INX
|
|
2790 LDY TEMP4
|
|
2800 JSR CHKBLK
|
|
2810 .18 JSR MOVE.VERT.ANTS.BLOCKS
|
|
2820 JSR PLOT.FOOD
|
|
2830 LDX FOODNUM
|
|
2840 LDA FOODX
|
|
2850 CLC
|
|
2860 ADC TABLE120,X
|
|
2870 STA TEMP3
|
|
2880 LDA TABLE103,X
|
|
2890 STA HEIGHT
|
|
2900 LDA FOODY
|
|
2910 JSR ERASE.COLUMN
|
|
2920 JSR PLOT.VERT.ANTS
|
|
2930 LDX FOODNUM
|
|
2940 LDA TABLE116,X
|
|
2950 CMP FOODX
|
|
2960 BEQ .19
|
|
2970 RTS
|
|
2980 .19 LDY #$01
|
|
2990 LDX #$2C
|
|
3000 LDA #$03
|
|
3010 STA WIDTH
|
|
3020 LDA #$00
|
|
3030 .20 STA $1C10,Y
|
|
3040 STA $1C40,Y
|
|
3050 STA $1C40,X
|
|
3060 STA $1C70,Y
|
|
3070 STA $1C70,X
|
|
3080 STA $1CA0,Y
|
|
3090 STA $1CA0,X
|
|
3100 STA $1DC0,Y
|
|
3110 STA $1DC0,X
|
|
3120 STA $1DF0,Y
|
|
3130 STA $1DF0,X
|
|
3140 STA $1E20,Y
|
|
3150 STA $1E20,X
|
|
3160 STA $1E50,X
|
|
3170 INY
|
|
3180 INX
|
|
3190 DEC WIDTH
|
|
3200 BNE .20
|
|
3210 SET.OFF.SCREEN
|
|
3220 LDX FOODNUM
|
|
3230 LDY TABLE118,X
|
|
3240 STY TEMP3
|
|
3250 LDA TABLE117,X
|
|
3260 STA TEMP1
|
|
3270 LDA #$00
|
|
3280 STA FOODBYT3,X
|
|
3290 .2 LDX FOODNUM
|
|
3300 LDA DESTBYT1,Y
|
|
3310 STA TEMP2
|
|
3320 LDA TABLE119,X
|
|
3330 STA DESTBYT1,Y
|
|
3340 LDA TEMP2
|
|
3350 AND #$40
|
|
3360 BEQ .1
|
|
3370 LDX TABLE129,Y
|
|
3380 LDA TABLE130,Y
|
|
3390 TAY
|
|
3400 LDA AAMSBYT,X
|
|
3410 STA POINTER1+1
|
|
3420 LDA AALSBYT,X
|
|
3430 STA POINTER1
|
|
3440 LDA (POINTER1),Y
|
|
3450 AND #$1F
|
|
3460 TAY
|
|
3470 LDA ANTBYT4,Y
|
|
3480 AND #$7F
|
|
3490 STA ANTBYT4,Y
|
|
3500 .1 INC TEMP3
|
|
3510 LDY TEMP3
|
|
3520 CPY TEMP1
|
|
3530 BNE .2
|
|
3540 LDX PLAYERNUM
|
|
3550 DEC NO.OF.FOODS1,X
|
|
3560 RTS
|
|
3570 PLOT.VERT.ANTS
|
|
3580 LDA #$08
|
|
3590 STA POINTER1+1
|
|
3600 LDX FOODNUM
|
|
3610 LDA TABLE108,X
|
|
3620 STA POINTER1
|
|
3630 LDA ORIENT
|
|
3640 AND #$01
|
|
3650 BEQ .8
|
|
3660 LDA #$10
|
|
3670 CLC
|
|
3680 ADC POINTER1
|
|
3690 STA POINTER1
|
|
3700 .8 LDA TABLE109,X
|
|
3710 CLC
|
|
3720 ADC ANTPOS
|
|
3730 TAX
|
|
3740 LDA TABLE111,X
|
|
3750 STA ANTXX
|
|
3760 LDA TABLE110,X
|
|
3770 CLC
|
|
3780 ADC FOODX
|
|
3790 STA ANTX
|
|
3800 LDX FOODNUM
|
|
3810 LDA TABLE112,X
|
|
3820 STA ANTY
|
|
3830 LDY #$00
|
|
3840 LDA ANTHOLD,Y
|
|
3850 BEQ .3
|
|
3860 JSR PLOT.ANT4.Z
|
|
3870 .3 LDA ANTY
|
|
3880 CLC
|
|
3890 ADC #$08
|
|
3900 STA ANTY
|
|
3910 LDY #$01
|
|
3920 LDA ANTHOLD,Y
|
|
3930 BEQ .4
|
|
3940 JSR PLOT.ANT4.Z
|
|
3950 .4 LDA ANTY
|
|
3960 CLC
|
|
3970 ADC #$08
|
|
3980 STA ANTY
|
|
3990 LDY #$02
|
|
4000 LDA ANTHOLD,Y
|
|
4010 BEQ .5
|
|
4020 JSR PLOT.ANT4.Z
|
|
4030 .5 LDA FOODNUM
|
|
4040 BEQ .6
|
|
4050 CMP #$07
|
|
4060 BEQ .6
|
|
4070 .7 RTS
|
|
4080 .6 LDA ANTY
|
|
4090 CLC
|
|
4100 ADC #$08
|
|
4110 STA ANTY
|
|
4120 LDY #$03
|
|
4130 LDA ANTHOLD,Y
|
|
4140 BEQ .7
|
|
4150 JMP PLOT.ANT4.Z
|
|
4160 ERASE.VERT.ANTS
|
|
4170 LDX FOODNUM
|
|
4180 LDA TABLE109,X
|
|
4190 CLC
|
|
4200 ADC ANTPOS
|
|
4210 TAX
|
|
4220 LDA TABLE111,X
|
|
4230 STA ANTXXOLD
|
|
4240 LDA TABLE110,X
|
|
4250 CLC
|
|
4260 ADC FOODX
|
|
4270 STA ANTXOLD
|
|
4280 LDX FOODNUM
|
|
4290 LDA TABLE112,X
|
|
4300 STA ANTYOLD
|
|
4310 LDY #$00
|
|
4320 LDA ANTHOLD,Y
|
|
4330 BEQ .3
|
|
4340 JSR ERASE.ANT.Z
|
|
4350 BEQ .10
|
|
4360 .3 LDA ANTYOLD
|
|
4370 CLC
|
|
4380 ADC #$08
|
|
4390 STA ANTYOLD
|
|
4400 .10 LDY #$01
|
|
4410 LDA ANTHOLD,Y
|
|
4420 BEQ .4
|
|
4430 JSR ERASE.ANT.Z
|
|
4440 BEQ .8
|
|
4450 .4 LDA ANTYOLD
|
|
4460 CLC
|
|
4470 ADC #$08
|
|
4480 STA ANTYOLD
|
|
4490 .8 LDY #$02
|
|
4500 LDA ANTHOLD,Y
|
|
4510 BEQ .1
|
|
4520 JSR ERASE.ANT.Z
|
|
4530 BEQ .5
|
|
4540 .1 LDA ANTYOLD
|
|
4550 CLC
|
|
4560 ADC #$08
|
|
4570 STA ANTYOLD
|
|
4580 .5 LDA FOODNUM
|
|
4590 BEQ .6
|
|
4600 CMP #$07
|
|
4610 BEQ .6
|
|
4620 .7 RTS
|
|
4630 .6 LDY #$03
|
|
4640 LDA ANTHOLD,Y
|
|
4650 BEQ .7
|
|
4660 JMP ERASE.ANT.Z
|
|
4670 MOVE.VERT.ANTS.BLOCKS
|
|
4680 LDX FOODNUM
|
|
4690 LDA FOODX
|
|
4700 CLC
|
|
4710 ADC TABLE128,X
|
|
4720 STA TEMP4
|
|
4730 LDA TABLE122,X
|
|
4740 STA TEMP1
|
|
4750 CLC
|
|
4760 ADC FOODY
|
|
4770 STA TEMP2
|
|
4780 .3 LDX TEMP1
|
|
4790 LDA ANTHOLD,X
|
|
4800 BEQ .1
|
|
4810 JSR .4
|
|
4820 BNE .2
|
|
4830 .1 JSR .5
|
|
4840 .2 DEC TEMP2
|
|
4850 DEC TEMP1
|
|
4860 LDA TEMP2
|
|
4870 CMP FOODY
|
|
4880 BCS .3
|
|
4890 RTS
|
|
4900 .4 LDY TEMP4
|
|
4910 LDX TEMP2
|
|
4920 LDA AAMSBYT,X
|
|
4930 STA POINTER1+1
|
|
4940 LDA AALSBYT,X
|
|
4950 STA POINTER1
|
|
4960 LDA (POINTER1),Y
|
|
4970 AND #$3F
|
|
4980 STA TEMP3
|
|
4990 LDA (POINTER1),Y
|
|
5000 AND #$C0
|
|
5010 STA (POINTER1),Y
|
|
5020 TYA
|
|
5030 CLC
|
|
5040 LDX FOODNUM
|
|
5050 ADC TABLE114,X
|
|
5060 TAY
|
|
5070 LDA (POINTER1),Y
|
|
5080 AND #$C0
|
|
5090 ORA TEMP3
|
|
5100 STA (POINTER1),Y
|
|
5110 RTS
|
|
5120 .5 LDX FOODNUM
|
|
5130 LDA TEMP4
|
|
5140 CLC
|
|
5150 ADC TABLE114,X
|
|
5160 TAY
|
|
5170 LDX TEMP2
|
|
5180 LDA AAMSBYT,X
|
|
5190 STA POINTER1+1
|
|
5200 LDA AALSBYT,X
|
|
5210 STA POINTER1
|
|
5220 LDA (POINTER1),Y
|
|
5230 AND #$C0
|
|
5240 STA (POINTER1),Y
|
|
5250 RTS
|
|
5260 MASTER.FOOD
|
|
5270 DEC K8
|
|
5280 BEQ .3
|
|
5290 RTS
|
|
5300 .3 LDA INIT.K8
|
|
5310 STA K8
|
|
5320 .1 LDX FOODNUM
|
|
5330 DEX
|
|
5340 BPL .2
|
|
5350 LDX #$07
|
|
5360 .2 STX FOODNUM
|
|
5370 .9 LDA FOODBYT1,X
|
|
5380 STA FOODX
|
|
5390 LDA FOODBYT2,X
|
|
5400 STA FOODY
|
|
5410 LDA FOODBYT3,X
|
|
5420 STA BYTE3
|
|
5430 LDA ANTPOSITIONS,X
|
|
5440 STA ANTPOS
|
|
5450 LDA ANT.ORIENTATIONS,X
|
|
5460 STA ORIENT
|
|
5470 LDY #$07
|
|
5480 LDA #$00
|
|
5490 STA TEMP1
|
|
5500 .5 LDA FOODBYT3,Y
|
|
5510 AND #$02
|
|
5520 BEQ .4
|
|
5530 INC TEMP1
|
|
5540 .4 DEY
|
|
5550 BPL .5
|
|
5560 LDY TEMP1
|
|
5570 LDA TABLE123,X
|
|
5580 BNE .6
|
|
5590 CPY #$02
|
|
5600 BNE .7
|
|
5610 LDA BYTE3
|
|
5620 AND #$02
|
|
5630 BNE .7
|
|
5640 LDY TABLE122,X
|
|
5650 LDA TABLE105,X
|
|
5660 STA TEMP1
|
|
5670 LDA #$05
|
|
5680 JMP HORIZ.FOOD2
|
|
5690 .7 JMP HORIZ.FOOD
|
|
5700 .6 CPY #$02
|
|
5710 BNE .8
|
|
5720 LDA BYTE3
|
|
5730 AND #$02
|
|
5740 BNE .8
|
|
5750 LDY TABLE122,X
|
|
5760 LDA TABLE105,X
|
|
5770 STA TEMP1
|
|
5780 LDA #$05
|
|
5790 JMP VERT.FOOD2.Z
|
|
5800 .8 JMP VERT.FOOD.Z
|
|
5810 UPDATE.VERT.ANTBYTS
|
|
5820 LDX FOODNUM
|
|
5830 LDA FOODX
|
|
5840 CLC
|
|
5850 ADC TABLE120,X
|
|
5860 STA TEMP4
|
|
5870 LDA TABLE122,X
|
|
5880 STA TEMP1
|
|
5890 CLC
|
|
5900 ADC FOODY
|
|
5910 STA TEMP2
|
|
5920 .3 LDX TEMP1
|
|
5930 LDA ANTHOLD,X
|
|
5940 BEQ .1
|
|
5950 JSR .2
|
|
5960 .1 DEC TEMP2
|
|
5970 DEC TEMP1
|
|
5980 LDA TEMP2
|
|
5990 CMP FOODY
|
|
6000 BCS .3
|
|
6010 RTS
|
|
6020 .2 LDY TEMP4
|
|
6030 LDX TEMP2
|
|
6040 LDA AAMSBYT,X
|
|
6050 STA POINTER1+1
|
|
6060 LDA AALSBYT,X
|
|
6070 STA POINTER1
|
|
6080 LDA (POINTER1),Y
|
|
6090 AND #$1F
|
|
6100 TAY
|
|
6110 LDX FOODNUM
|
|
6120 LDA TABLE109,X
|
|
6130 CLC
|
|
6140 ADC ANTPOS
|
|
6150 TAX
|
|
6160 LDA TABLE111,X
|
|
6170 STA ANTBYT3,Y
|
|
6180 LDA ANTBYT1,Y
|
|
6190 AND #$C0
|
|
6200 STA TEMP3
|
|
6210 LDA FOODX
|
|
6220 CLC
|
|
6230 ADC TABLE124,X
|
|
6240 ORA TEMP3
|
|
6250 STA ANTBYT1,Y
|
|
6260 RTS
|
|
6270 UPDATE.HORIZ.DESTBYTS
|
|
6280 LDX FOODNUM
|
|
6290 LDA TABLE114,X
|
|
6300 UPDATE.HORIZ.DESTBYTS2
|
|
6310 STA TEMP2
|
|
6320 LDA TABLE122,X
|
|
6330 STA HEIGHT
|
|
6340 LDY TABLE118,X
|
|
6350 .6 JSR .5
|
|
6360 INY
|
|
6370 DEC HEIGHT
|
|
6380 BPL .6
|
|
6390 RTS
|
|
6400 .5 LDA DESTBYT2,Y
|
|
6410 EOR #$04
|
|
6420 STA DESTBYT2,Y
|
|
6430 LDA DESTBYT1,Y
|
|
6440 AND #$C0
|
|
6450 STA TEMP1
|
|
6460 LDA DESTBYT1,Y
|
|
6470 CLC
|
|
6480 ADC TEMP2
|
|
6490 STA DESTBYT1,Y
|
|
6500 RTS
|
|
6510 PUSH.FOOD.SOUND
|
|
6520 JSR RANDOM2.Z
|
|
6530 .1 ORA #$80
|
|
6540 SEC
|
|
6550 SBC #$30
|
|
6560 STA TEMP1
|
|
6570 SBC #$90
|
|
6580 STA TEMP2
|
|
6590 LDA #$50
|
|
6600 SEC
|
|
6610 SBC TEMP2
|
|
6620 STA TEMP2
|
|
6630 .2 LDY TEMP1
|
|
6640 LDA $C030
|
|
6650 .3 DEY
|
|
6660 BNE .3
|
|
6670 DEC TEMP2
|
|
6680 BNE .2
|
|
6690 RTS
|
|
6700 ERASE.COLUMN
|
|
6710 ASL
|
|
6720 ASL
|
|
6730 ASL
|
|
6740 STA TEMP2
|
|
6750 LDA TEMP3
|
|
6760 CMP #$04
|
|
6770 BCC .6
|
|
6780 CMP #$2C
|
|
6790 BCS .6
|
|
6800 CMP #$17
|
|
6810 BCS .4
|
|
6820 .1 LDY TEMP2
|
|
6830 LDA (SCRPNT1),Y
|
|
6840 STA POINTER1+1
|
|
6850 CLC
|
|
6860 ADC #$60
|
|
6870 STA POINTER4+1
|
|
6880 LDA (SCRPNT2),Y
|
|
6890 STA POINTER1
|
|
6900 STA POINTER4
|
|
6910 LDY TEMP3
|
|
6920 LDA $458C,Y
|
|
6930 CPY #$0B
|
|
6940 BCC .3
|
|
6950 INY
|
|
6960 INY
|
|
6970 INY
|
|
6980 LDA (POINTER4),Y
|
|
6990 DEY
|
|
7000 DEY
|
|
7010 DEY
|
|
7020 AND #$1F
|
|
7030 SBC #$0B
|
|
7040 TAX
|
|
7050 LDA $4598,X
|
|
7060 .3 STA (POINTER1),Y
|
|
7070 STA (POINTER4),Y
|
|
7080 INC TEMP2
|
|
7090 DEC HEIGHT
|
|
7100 BNE .1
|
|
7110 .6 RTS
|
|
7120 .4 LDY TEMP2
|
|
7130 LDA (SCRPNT1),Y
|
|
7140 STA POINTER1+1
|
|
7150 CLC
|
|
7160 ADC #$60
|
|
7170 STA POINTER4+1
|
|
7180 LDA (SCRPNT2),Y
|
|
7190 STA POINTER1
|
|
7200 STA POINTER4
|
|
7210 LDY TEMP3
|
|
7220 LDA $456C,Y
|
|
7230 CPY #$25
|
|
7240 BCS .5
|
|
7250 DEY
|
|
7260 DEY
|
|
7270 DEY
|
|
7280 LDA (POINTER4),Y
|
|
7290 INY
|
|
7300 INY
|
|
7310 INY
|
|
7320 AND #$1F
|
|
7330 SEC
|
|
7340 SBC #$0B
|
|
7350 TAX
|
|
7360 LDA $45A5,X
|
|
7370 .5 STA (POINTER1),Y
|
|
7380 STA (POINTER4),Y
|
|
7390 INC TEMP2
|
|
7400 DEC HEIGHT
|
|
7410 BNE .4
|
|
7420 .LI ON
|
|
7430 RTS
|
|
7440 .LI OFF
|
|
7450 .OR $6EC0
|
|
7460 .TA $1EC0
|
|
7470 TABLE93 .HS 0C111B210C121B22
|
|
7480 TABLE94 .HS 0808080911131311
|
|
7490 TABLE95 .HS 0400000004000004
|
|
7500 TABLE100 .HS 6666666767686868
|
|
7510 TABLE101 .HS 0080C00090205090
|
|
7520 TABLE102 .HS 4080C048D82050D0
|
|
7530 TABLE103 .HS 2010101818101020
|
|
7540 TABLE104 .HS 0204030303030402
|
|
7550 TABLE105 .HS FF03070A0D101317
|
|
7560 TABLE106 .HS 03070A0D1013171B
|
|
7570 TABLE107 .HS 0303020202020303
|
|
7580 TABLE108 .HS 4000006040202060
|
|
7590 TABLE109 .HS 0000080810101818
|
|
7600 TABLE110 .HS 0201010102010101FEFFFFFFFFFFFFFF0302020203020202FEFFFFFFFFFFFFFF
|
|
7610 TABLE111 .HS 0001020304040506030302010006050404040506000102030303020100060504
|
|
7620 TABLE112 .HS 40111B4888121B88
|
|
7630 TABLE113 .HS 0000000200010101
|
|
7640 TABLE114 .HS FFFFFF01FF010101
|
|
7650 TABLE115 .HS 0C00000C14000015
|
|
7660 TABLE116 .HS 0201012C011A1A2C
|
|
7670 TABLE117 .HS 04080B0E1114181C
|
|
7680 TABLE118 .HS 0004080B0E111418
|
|
7690 TABLE119 .HS 0117172F0117172F
|
|
7700 TABLE120 .HS 020202FF03FFFFFF
|
|
7710 TABLE121 .HS 7008087070E0E070
|
|
7720 TABLE122 .HS 0303020202020303
|
|
7730 TABLE123 .HS 00FFFF0000FFFF00
|
|
7740 TABLE124 .HS 0101010101010101FFFFFFFF00FFFFFF0202020202020202FFFFFFFF00FFFFFF
|
|
7750 TABLE125 .HS 0303032B0219192B
|
|
7760 TABLE126 .HS 10090A0B0C0D0E0F10090A0B0C0D0E0FF8FFFEFDFCFBFAF9F8FFFEFDFCFBFAF9
|
|
7770 TABLE127 .HS 00F8F80000080800
|
|
7780 TABLE128 .HS 030303FE04FEFEFE
|
|
7790 TABLE129 .HS 08090A0B03030303030303090A0B1112131919191919191911121314
|
|
7800 TABLE130 .HS 04040404111213141B1C1D2B2B2B0404041213141B1C1D1E2B2B2B2B
|
|
7810 .LI ON
|
|
7820 TABLE131 .HS 0905052508161625
|
|
7830 .LI OFF
|