mirror of
https://github.com/fumiama/c64-snake.git
synced 2026-06-18 01:32:23 +08:00
main框架基本完成
This commit is contained in:
33
main.asm
33
main.asm
@@ -1,21 +1,7 @@
|
||||
.outfile "snake.prg"
|
||||
.require "platform/c64_0.oph"
|
||||
.require "platform/c64kernal.oph"
|
||||
|
||||
.alias cblk $a6
|
||||
|
||||
.alias go_u $55 ; 上
|
||||
.alias go_d $5f ; 下
|
||||
.alias go_l $1d ; 左
|
||||
.alias go_r $32 ; 右
|
||||
.alias st_g $a0 ; 开始/暂停
|
||||
.alias ed_g $20 ; 结束
|
||||
|
||||
.data zp
|
||||
.space d 1 ; 方向 值定义如上
|
||||
.space c 1 ; 🐍长度 最大255 最小0
|
||||
.space s 2 ; 得分 小端序
|
||||
.text
|
||||
.require "head.asm"
|
||||
|
||||
main:
|
||||
.scope
|
||||
@@ -28,21 +14,26 @@ main:
|
||||
; init 初始化界面、变量
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
.macro init
|
||||
lda #147 ;清屏
|
||||
lda #147 ; 清屏
|
||||
jsr chrout
|
||||
lda #$ff
|
||||
lda #$00
|
||||
sta s
|
||||
lda #$ff
|
||||
sta s + 1
|
||||
jsr printscore
|
||||
lda #$00
|
||||
sta s + 1 ; 初始化分数为0
|
||||
jsr printscore ; 打印分数
|
||||
lda #1
|
||||
sta field + 11*38 + 19 ; 初始化蛇位置
|
||||
sta c ; 初始化蛇长为1
|
||||
jsr printfield ; 打印蛇,包括边框
|
||||
.macend
|
||||
|
||||
.require "printscore.asm"
|
||||
.require "print16.asm"
|
||||
.require "printfield.asm"
|
||||
.require "print.asm"
|
||||
|
||||
.checkpc $A000 ; text段边界
|
||||
.data zp ; 零页段边界
|
||||
.data zp ; 零页段边界
|
||||
.checkpc $80
|
||||
.data
|
||||
.checkpc $D000 ; data段边界
|
||||
Reference in New Issue
Block a user