关键词:

GBA编程初解(二)

来源:未知 时间:2007/6/29,点击:0

GBA编程初解(二)

 

原著:乐水 


6. ROM(Read Only Memory) - ’只读存储器’
地址: 0x08000000 大小: 看你的游戏卡的大小罗 作用: 存放所有的程序和数据
7. ARM - 32bit 指令系统 (RISC,精简指令集)
8. Thumb - 16bit 指令系统 (具体区别详见 http://gbadev.org/files/armthumb-romram.txt)
9. DMA(Direct Memory Access) - 直接内存访问
10.DISPCNT(Display Controller) - 显示控制(内存地址)

    当初看水银兄写的gba教程时一直不明白明明是256色模式,可指向VRAM的指针却是short型的。后来才知道,gba访问VRAM时一次必须读写2个字节,即16bit。我晕~~!所以我只好严格要求自己的blit函数。虽然也找到一个可以写8bit的putpixel函数代码,但速度太慢了不适合用在显示大量图片的地方。

    需要注意的地方大概都说完了,我们可以进入代码部分了。

    虽然是专用游戏机,但显示模式也需要设定才行。

#define REG_DISPCNT *(u16*)0x04000000// 显示寄存器地址
#define VRAM 0x06000000 // 图像缓冲区地址
#define M5_VRAM 0x0600A000 // M5缓冲区地址
#define BACKBUFFER 0x010// 双缓冲/背缓冲地址
#define PALETTE 0x5000000// 调色板地址
#define MODE_3 0x03 // 240*160 15位/单缓冲区
#define MODE_4 0x04 // 240*160 8位/双缓冲区
#define MODE_5 0x05 // 160*128 15位/双缓冲区
#define BG2_ENABLE 0x0400 // BG_2
#define SetMode(Mode) REG_DISPCNT=(Mode) // 设置显示模式的宏定义

  上一篇: ♦ GBA编程初解(三) 2007/6/29
  下一篇: ♦ GBA编程初解(一) 2007/6/29
记住电玩天空域名,方便下次访问:VGSKY.COM

【分类导航】

【热门游戏资讯】

更多

【推荐游戏资讯】

更多

【最新资讯更新】

更多

【赞助商链接】

<