注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

深夜是徘徊在潮湿睫毛上的我的梦以及他的梦

是直到最后都无法放手的一种气息,是我们生命中最后的思念……

 
 
 

日志

 
 

[转]原创!跟我用CC65学FC编程 4  

2009-06-05 23:26:06|  分类: FC网友经验 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

原创!跟我用CC65学FC编程!4!(2009-05-31 12:30:13)

来源 http://blog.sina.com.cn/s/blog_5e1afe9d0100drrp.html

作者任天行,转载请注明

貌似有人说我写文章的方法很怪异.......凑合着看吧.......

教大家个小函数

get_tv();这个函数读取TV制式的,没有参数,但要有返回的东西,要读取.......

看看NES.h就知道了.......

#define TV_NTSC         0

#define TV_PAL          1

#define TV_OTHER        2

用法是

a = get_tv();

TV制式就是NTSC和PAL的使用国家不完全一样,系统也不太一样.......

好了,这是个小知识,这节课主要讲一些高级的内容和查错......

首先你要对汇编稍懂点......

咱先来看.....

6502最常见的指令就是ST和LD了,

后面跟6502的缓存器名,

例如常见的

LDA,STA,LDX,STX之类的......

然后是jsr指令,是跳转的意思,要在汇编中实现类似C语言的子程序要用到这个,另外,你在CC65中编的子程序编译成汇编也这样....

然后是rts,相当于子程序中的返回,一般子程序结束用这个......

然后讲查错,

编译中,编译器给你的警告可以无视掉,但是有错误的话会停止编译.....

新手最常见的错误就是代码后面不加;,编译器会告诉你哪行,然后自己找到,排错.....

注意一下,

有时候编译器会误差几行,你要在附近几行找,

要不就是变量没定义,变量名打错了,忘了加},被{}整晕了......

有点C语言常识吧......

然后我们来讲打开NES文件,用16进制编辑器打开NES文件,自己随便找一个16进制编辑器吧.....

用16进制编辑器打开NES文件,

然后看到了,

FC文件有16字节的头,

包括你游戏的信息,

大小(ROM占用16KB是1,32KB是2)等信息,

然后是你的程序内容,

你要输出的文字内容通常放在程序后面......

然后大约8000位置以后是图像......

注意我说的不是FC内存中的,是ROM中的......

如果你超了32KB的容量,或8KB的图像,

就要用映射,

也就是通过硬件的方法切代码,

像一般都是映射前16KB.......

不过CC65中好像不太方便.....

好了,这节课就讲到这里吧.......编游戏愉快^_^

  评论这张
 
阅读(380)| 评论(0)
推荐 转载

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017