⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 invaders.bas

📁 单片机 lcd 游戏 小蜜蜂 protus 仿真 源码 图
💻 BAS
📖 第 1 页 / 共 5 页
字号:
                LCDWRITE 7,SHIP_XPOS,[$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00]	' Clear the ship graphic
                Delayms 100											' Leave the graphic on the screen for 100ms
                LIVES = LIVES - 1									' Decrement the lives counter
                MISSILE_SOUND_ENABLE = 0							' Disable the MISSILE sound channel
				SAUCER_SOUND_ENABLE = 0								' Disable the SAUCER sound channel
                If LIVES > "0" Then									' Do we have any lives left ?
                	LCDWRITE 7,SHIP_XPOS,[$00,$E0,$F0,$F0,$F8,$FC,$F8,$F0,$F0,$E0,$00]	' Yes. So Re-draw the ship and carry on
                	Print at 0,20,LIVES								' Update the Display for the amount of lives
                Else												' Otherwise, we don't have any lives left
                	Goto GAME_OVER									' So game over					
                Endif
            Endif
            Delayms 6												' Main game speed setting
        Wend
'--------------------------------------------------------------------
' Explode the ship when the game is over
GAME_OVER:
		Print at 0,0,Dec LEVEL, " ",Dec SCORE,at 0,20,LIVES
        SAUCER_SOUND_ENABLE = TRUE										' Enable SAUCER sound channel
        MISSILE_SOUND_ENABLE = TRUE       								' Enable MISSILE sound channel
        MISSILE_FREQ = 70											' Set MISSILE channel frequency to 70 
        SAUCER_FREQ = 90     										' Set SAUCER channel frequency to 90 
        TEMP_LOOP = 1
        Repeat
        	MISSILE_FREQ = MISSILE_FREQ - TEMP_LOOP
            SAUCER_FREQ = SAUCER_FREQ - TEMP_LOOP
            Delayms 10 + TEMP_LOOP
            Circle 1,SHIP_XPOS + 5,63,TEMP_LOOP          
            If TEMP_LOOP > 10 Then
            	Circle 0,SHIP_XPOS + 5,63,TEMP_LOOP - 10
            Endif
        	TEMP_LOOP = TEMP_LOOP + 2
        Until TEMP_LOOP > 24
        SAUCER_SOUND_ENABLE = FALSE										' Disable SAUCER sound channel
        MISSILE_SOUND_ENABLE = FALSE       								' Disable MISSILE sound channel
        TEMP_LOOP = 1
        Repeat
            Circle 0,SHIP_XPOS + 5,63,TEMP_LOOP    
        	TEMP_LOOP = TEMP_LOOP + 2
        Until TEMP_LOOP > 24
        'Cls
        Print at 3,6,INVERSE 1,"GAME OVER", INVERSE 0
        Delayms 500
        Print at 4,1,"PRESS FIRE TO START"
        While FIRE_BUTTON = 1 : Wend
        Delayms 50
        While FIRE_BUTTON = 0 : Wend
        Delayms 50
        Goto MAIN_PROGRAM_LOOP
'--------------------------------------------------------------------                
' Font CDATA table for space invaders game

FONT:-	CData $00,$00,$00,$00,$00,$00		'Graphic Character 0
		CData $FF,$FF,$FF,$FF,$FF,$FF		'Graphic Character 1
        CData $E0,$F0,$F8,$FC,$FC,$FE		' Left side of base complete (Character 2)
        CData $C0,$B0,$B0,$70,$EC,$F8		' Left side of base after hit 1 (Character 3)
        CData $C0,$A0,$B0,$70,$AC,$28		' Left side of base after hit 2 (Character 4)
        CData $40,$A0,$B0,$70,$A0,$20		' Left side of base after hit 3 (Character 5)
        CData $40,$80,$80,$40,$A0,$20		' Left side of base after hit 4 (Character 6)
        CData $00,$00,$00,$00,$00,$00		' Left side of base after hit 5 (Character 7)
        
        CData $FE,$FE,$FE,$FE,$FE,$FE		' Middle of base complete (Character 8)
        CData $FE,$DE,$EC,$F0,$F8,$FE		' Middle of base after hit 1 (Character 9)
        CData $F8,$DE,$E4,$F0,$D8,$9E		' Middle of base after hit 2 (Character 10)
        CData $B8,$DE,$A4,$B0,$48,$B4		' Middle of base after hit 3 (Character 11)
        CData $34,$58,$A4,$B8,$48,$34		' Middle of base after hit 4 (Character 12)
        CData $00,$00,$00,$00,$00,$00		' Middle of base after hit 5 (Character 13)
        
        CData $FE,$FC,$FC,$F8,$F0,$E0		' Right side of base complete (Character 14)
        CData $C0,$B0,$B0,$70,$EC,$F8		' Right side of base after hit 1 (Character 15)
        CData $C0,$A0,$B0,$70,$AC,$28		' Right side of base after hit 2 (Character 16)
        CData $40,$A0,$B0,$70,$A0,$20		' Right side of base after hit 3 (Character 17)
        CData $40,$80,$80,$40,$A0,$20		' Right side of base after hit 4 (Character 18)
        CData $00,$00,$00,$00,$00,$00		' Right side of base after hit 5 (Character 19)
        
        CData $FF,$00,$00,$00,$00,$00		'Graphic character 20
        CData $00,$00,$00,$00,$00,$FF		'Graphic character 21
        CData $FF,$01,$01,$01,$01,$01		'Graphic character 22
        CData $01,$01,$01,$01,$01,$FF		'Graphic character 23
        CData $FF,$80,$80,$80,$80,$80		'Graphic character 24
        CData $80,$80,$80,$80,$80,$FF		'Graphic character 25
        CData $00,$00,$00,$00,$F0,$F0		'User defined character 26
        CData $00,$00,$00,$00,$0F,$0F		'User defined character 27
        CData $00,$00,$00,$00,$00,$00		'User defined character 28
        CData $00,$00,$00,$00,$00,$00		'User defined character 29
        CData $00,$00,$00,$00,$00,$00		'User defined character 30
        CData $00,$00,$00,$00,$00,$00		'User defined character 31
        CData $00,$00,$00,$00,$00,$00		'32 -   - 20        
		CData $00,$00,$4F,$00,$00,$00		'33 - ! - 21
		CData $00,$07,$00,$07,$00,$00		'34 - " - 22
		CData $14,$7F,$14,$7F,$14,$00		'35 - # - 23
		CData $24,$2A,$7F,$2A,$12,$00		'36 - $ - 24
		CData $23,$13,$08,$64,$62,$00		'37 - % - 25
		CData $36,$49,$55,$22,$50,$00		'38 - & - 26
		CData $00,$05,$03,$00,$00,$00		'39 - ' - 27
		CData $1C,$22,$41,$00,$00,$00		'40 - ( - 28
		CData $00,$00,$41,$22,$1C,$00		'41 - ) - 29
		CData $14,$08,$3E,$08,$14,$00		'42 - * - 2A
		CData $08,$08,$3E,$08,$08,$00		'43 - + - 2B
		CData $00,$50,$30,$00,$00,$00		'44 - , - 2C
		CData $08,$08,$08,$08,$08,$00		'45 - - - 2D
		CData $00,$60,$60,$00,$00,$00		'46 - . - 2E
		CData $20,$10,$08,$04,$02,$00		'47 - / - 2F
		CData $3E,$51,$49,$45,$3E,$00		'48 - 0 - 30
		CData $00,$42,$7F,$40,$00,$00		'49 - 1 - 31
		CData $42,$61,$51,$49,$46,$00		'50 - 2 - 32
		CData $21,$41,$45,$4B,$31,$00		'51 - 3 - 33
		CData $18,$14,$12,$7F,$10,$00		'52 - 4 - 34
		CData $27,$45,$45,$45,$39,$00		'53 - 5 - 35
		CData $3C,$4A,$49,$49,$30,$00		'54 - 6 - 36
		CData $01,$71,$09,$05,$03,$00		'55 - 7 - 37
		CData $36,$49,$49,$49,$36,$00		'56 - 8 - 38
		CData $06,$49,$49,$49,$3E,$00		'57 - 9 - 39
		CData $00,$36,$36,$00,$00,$00		'58 - : - 3A
		CData $00,$56,$36,$00,$00,$00		'59 - ; - 3B
		CData $08,$14,$22,$41,$00,$00		'60 - < - 3C
		CData $14,$14,$14,$14,$14,$00		'61 - = - 3D
		CData $00,$41,$22,$14,$08,$00		'62 - > - 3E
		CData $02,$01,$51,$09,$06,$00		'63 - ? - 3F
		CData $32,$49,$79,$41,$3E,$00		'64 - @ - 40
		CData $7E,$11,$11,$11,$7E,$00		'65 - A - 41
		CData $7F,$49,$49,$49,$36,$00		'66 - B - 42
		CData $3E,$41,$41,$41,$22,$00		'67 - C - 43
		CData $7F,$41,$41,$22,$1C,$00		'68 - D - 44
		CData $7F,$49,$49,$49,$41,$00		'69 - E - 45
		CData $7F,$09,$09,$09,$01,$00		'70 - F - 46
		CData $3E,$41,$49,$49,$7A,$00		'71 - G - 47
		CData $7F,$08,$08,$08,$7F,$00		'72 - H - 48
		CData $00,$41,$7F,$41,$00,$00		'73 - I - 49
		CData $20,$40,$41,$3F,$01,$00		'74 - J - 4A
		CData $7F,$08,$14,$22,$41,$00		'75 - K - 4B
		CData $7F,$40,$40,$40,$40,$00		'76 - L - 4C
		CData $7F,$02,$0C,$02,$7F,$00		'77 - M - 4D
		CData $7F,$04,$08,$10,$7F,$00		'78 - N - 4E
		CData $3E,$41,$41,$41,$3E,$00		'79 - O - 4F
		CData $7F,$09,$09,$09,$06,$00		'80 - P - 50
		CData $3E,$41,$51,$21,$5E,$00		'81 - Q - 51
		CData $7F,$09,$19,$29,$46,$00		'82 - R - 52
		CData $46,$49,$49,$49,$31,$00		'83 - S - 53
		CData $01,$01,$7F,$01,$01,$00		'84 - T - 54
		CData $3F,$40,$40,$40,$3F,$00		'85 - U - 55
		CData $1F,$20,$40,$20,$1F,$00		'86 - V - 56
		CData $3F,$40,$38,$40,$3F,$00		'87 - W - 57
		CData $63,$14,$08,$14,$63,$00		'88 - X - 58
		CData $07,$08,$70,$08,$07,$00		'89 - Y - 59
		CData $61,$51,$49,$45,$43,$00		'90 - Z - 5A
		CData $7F,$41,$41,$00,$00,$00		'91 - [ - 5B
		CData $02,$04,$08,$10,$20,$00		'92 - \ - 5C
		CData $00,$00,$41,$41,$7F,$00		'93 - ] - 5D
		CData $04,$02,$01,$02,$04,$00		'94 - ^ - 5E
		CData $40,$40,$40,$40,$40,$00		'95 - _ - 5F
		CData $00,$01,$02,$04,$00,$00		'96 - ` - 60
		CData $20,$54,$54,$54,$78,$00		'97 - a - 61
		CData $7F,$48,$44,$44,$38,$00		'98 - b - 62
		CData $38,$44,$44,$44,$20,$00		'99 - c - 63
		CData $38,$44,$44,$48,$7F,$00		'100  d - 64
		CData $38,$54,$54,$54,$18,$00		'101  e - 65
		CData $08,$7E,$09,$01,$02,$00		'102  f - 66
		CData $0C,$52,$52,$52,$3E,$00		'103  g - 67
		CData $7F,$08,$04,$04,$78,$00		'104  h - 68
		CData $00,$44,$7D,$40,$00,$00		'105  i - 69
		CData $00,$20,$40,$44,$3D,$00		'106  j - 6A
		CData $7F,$10,$28,$44,$00,$00		'107  k - 6B
		CData $00,$41,$7F,$40,$00,$00		'108  l - 6C
		CData $7C,$04,$18,$04,$78,$00		'109  m - 6D
		CData $7C,$08,$04,$04,$78,$00		'110  n - 6E
		CData $38,$44,$44,$44,$38,$00		'111  o - 6F
		CData $7C,$14,$14,$14,$08,$00		'112  p - 70
		CData $08,$14,$14,$18,$7C,$00		'113  q - 71
		CData $7C,$08,$04,$04,$08,$00		'114  r - 72
		CData $48,$54,$54,$54,$20,$00		'115  s - 73
		CData $04,$3F,$44,$40,$20,$00		'116  t - 74
		CData $3C,$40,$40,$20,$7C,$00		'117  u - 75
		CData $1C,$20,$40,$20,$1C,$00		'118  v - 76
		CData $3C,$40,$30,$40,$3C,$00		'119  w - 77
		CData $44,$28,$10,$28,$44,$00		'120  x - 78
		CData $0C,$50,$50,$50,$3C,$00		'121  y - 79
		CData $44,$64,$54,$4C,$44,$00		'122  z - 7A
		CData $08,$36,$41,$00,$00,$00		'123  { - 7B
		CData $00,$00,$7F,$00,$00,$00		'124  | - 7C
		CData $00,$00,$41,$36,$08,$00		'125  } - 7D
		CData $00,$08,$04,$08,$04,$00 		'126  ~ - 7E     
        
        
'--------------------------------------------------------------------
INVADER_SPLASH_SCREEN:
  CDATA	 $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,_
		 $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$40,$70,$78,_
		 $7C,$7C,$7C,$7C,$7C,$FC,$F8,$F0,$E0,$C0,$C0,$7C,$7C,$7C,$7C,$7C,_
		 $7C,$7C,$7C,$7C,$7C,$7C,$F8,$F0,$E0,$C0,$00,$00,$80,$7C,$7C,$7C,_
		 $7C,$7C,$7C,$7C,$7C,$70,$80,$00,$00,$00,$80,$C0,$F0,$F8,$3E,$3E,_
		 $3E,$3E,$3E,$3E,$3E,$3E,$3E,$7C,$F8,$E0,$C0,$FE,$FE,$3E,$3E,$3E,_
		 $3E,$3E,$3E,$3E,$3E,$3E,$3E,$3E,$20,$A0,$00,$00,$00,$00,$00,$00,_
		 $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,_
		 $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,_
		 $00,$00,$00,$00,$00,$00,$00,$00,$60,$F0,$0C,$06,$06,$06,$06,$86,_
		 $86,$86,$06,$06,$06,$0C,$19,$F3,$C7,$3F,$FF,$02,$02,$02,$02,$02,_
		 $82,$82,$82,$82,$02,$06,$0C,$19,$33,$E7,$F8,$00,$FF,$02,$02,$02,_
		 $02,$02,$02,$02,$02,$06,$FF,$00,$00,$FE,$FF,$F3,$71,$08,$0C,$06,_
		 $02,$02,$82,$82,$82,$02,$02,$02,$07,$0F,$FF,$3F,$C0,$FC,$1E,$02,_
		 $02,$02,$03,$C3,$C3,$C3,$C3,$C3,$C3,$43,$73,$1F,$03,$00,$00,$00,_
		 $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,_
		 $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,_
		 $00,$00,$00,$00,$00,$00,$00,$00,$00,$03,$3C,$E0,$80,$00,$00,$03,_
		 $1E,$61,$5E,$58,$58,$58,$58,$99,$BF,$40,$03,$FF,$C0,$00,$00,$00,_
		 $01,$FF,$83,$FF,$00,$00,$00,$00,$00,$FF,$07,$FE,$0F,$00,$00,$00,_
		 $F8,$7F,$E0,$00,$00,$00,$0F,$FC,$00,$FF,$01,$FF,$00,$00,$00,$00,_
		 $00,$FE,$1F,$0C,$0F,$08,$08,$08,$F8,$7E,$07,$FC,$1F,$03,$00,$00,_
		 $00,$00,$0F,$0F,$0D,$E8,$38,$00,$00,$00,$00,$00,$00,$00,$00,$00,_
		 $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,_
		 $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,_
		 $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$01,$63,$E6,$2C,_
		 $28,$28,$68,$E8,$98,$F0,$00,$01,$01,$07,$FE,$83,$7F,$F0,$00,$00,_
		 $00,$01,$E1,$21,$60,$30,$30,$0C,$06,$01,$00,$FF,$00,$00,$00,$00,_
		 $8F,$8C,$8F,$00,$00,$00,$00,$3F,$F8,$3F,$FE,$07,$00,$00,$00,$80,_
		 $FF,$C1,$FE,$0E,$02,$02,$82,$FB,$1F,$E0,$FF,$03,$00,$00,$00,$F0,_
		 $BE,$83,$83,$E3,$82,$83,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,_
		 $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,_
		 $00,$00,$00,$00,$00,$C0,$40,$40,$5C,$7C,$7C,$FC,$FC,$F0,$40,$4C,_
		 $7C,$7C,$7C,$FC,$FC,$F8,$20,$00,$0C,$3C,$3C,$7C,$FC,$FC,$F3,$06,_
		 $0C,$18,$30,$71,$F1,$F1,$F1,$D0,$18,$0C,$3F,$3D,$3C,$FF,$FC,$F8,_
		 $18,$18,$DF,$1E,$3C,$3C,$3C,$3C,$3C,$3C,$3F,$F8,$08,$08,$08,$0E,_
		 $0F,$3C,$3F,$3F,$38,$38,$38,$38,$3F,$3E,$7D,$F3,$EC,$08,$F8,$F8,_
		 $78,$38,$38,$38,$3C,$3F,$3F,$3E,$3E,$3F,$38,$38,$38,$E8,$88,$F8,_
		 $78,$38,$38,$3C,$3F,$3E,$3E,$38,$30,$20,$40,$80,$C0,$F0,$F8,$FC,_
		 $FE,$7E,$3E,$1E,$1E,$1E,$1E,$1E,$1C,$10,$00,$40,$80,$00,$00,$00,_
		 $00,$06,$0E,$36,$C6,$82,$02,$06,$1C,$30,$C6,$8F,$3B,$E3,$82,$02,_
		 $06,$0C,$30,$6E,$FB,$C3,$03,$02,$02,$02,$1E,$73,$9F,$73,$C3,$83,_
		 $03,$07,$1C,$70,$C1,$07,$7F,$C3,$03,$03,$03,$03,$7F,$C0,$FF,$FF,_
		 $FF,$FF,$03,$03,$03,$03,$03,$03,$03,$07,$3E,$C3,$7F,$E0,$00,$00,_
		 $FF,$03,$03,$01,$E1,$E1,$21,$E1,$01,$01,$03,$06,$8F,$F8,$FF,$3F,_
		 $FC,$07,$01,$01,$01,$01,$E1,$E1,$A1,$A1,$A1,$21,$E1,$F1,$3F,$E3,_
		 $3C,$07,$01,$01,$01,$C1,$61,$E1,$61,$01,$01,$01,$01,$C7,$7F,$99,_
		 $70,$3C,$06,$02,$03,$C1,$31,$B1,$71,$31,$01,$01,$81,$C1,$76,$18,_
		 $00,$00,$00,$00,$00,$01,$06,$0C,$30,$40,$80,$01,$06,$0C,$31,$C6,_
		 $9C,$70,$C0,$00,$00,$01,$07,$00,$80,$00,$00,$00,$07,$1E,$F0,$83,_
		 $0E,$38,$E0,$80,$00,$07,$0C,$7F,$80,$00,$00,$00,$00,$FF,$07,$FF,_
		 $FF,$FF,$00,$00,$00,$00,$FF,$E0,$00,$00,$00,$07,$F8,$8F,$FC,$80

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -