|
|
发表于 2009-7-31 19:28:02
|
显示全部楼层
pha
4 m5 R8 C$ }& i+ ?. v* }lda 按键内存
; g$ g* ^+ L/ s- d6 G+ `' Acmp #$20 SELECT键7 ?9 Q' v U- j f+ m
bne end
& C) l8 y `. L) {1 jinc 子弹内存
1 r' l! ~% o# |% K) @0 d1 [( R4 v' Q- glda 子弹内存& m0 x) y2 {2 @" t% S3 g
cmp #$06 假设有5种子弹,那么到了6就变0% D: o. Y1 D: p+ S) ~- j
bne end
2 S* Y$ F6 h" {+ X! r. I+ y1 \lda #$004 R# N9 E; p% G+ l3 X' z' { {
sta 子弹内存 q+ a( S8 [' F0 ?
end:
$ U2 J+ d8 P' Q/ z( e% Tpla! j k& q0 W j: B. [, _7 |1 n
rts" f) V# d, Y$ d
+ j$ D+ Y, L* R7 n; K2 T# n
魂斗罗这个游戏 子弹代码是 00 01 02 03............. 吃了加速后是 10 11 12 13..................
) [& g6 [3 N% J% d这里的判断还要多判断几次
0 y# C U- c0 S) O) O; I9 E按键的映射内存有两个 一个是按一次后自动归0 这样的效果就是 即使按住也只运行一次
. c4 A; M: y4 A9 r' _6 a, O( R另一个内存是按住之后是每个周期都运行的,那样的话就是按一下就运行了N次了,基本选不到你要的武器, 效果就是 随机抽到某子弹,因为按一次就加了N次了7 b1 x8 @3 B5 h1 z h) @
两个内存是在一起的 中间隔开一个字节~~! t- w& N9 y3 r% q2 `) `1 z
当然也可以写程序处理这个问题,只是没必要兜圈子了 |
|