zoukankan      html  css  js  c++  java
  • 在GBA上写光线追踪:自制GBA库"lib_hl"汇总

    写个自己的GBA库

    上篇文章(待写)介绍了GBA的硬件,例如寄存器、内存、中断等,其中很多寄存器可以说是GBA的遥控器,要使用GBA的硬件功能,就是要和这些寄存器打交道。

    怎么打交道呢?这些寄存器都有地址,在C语言中可以转成指针来读写。为了方便使用,我们需要先写一个GBA库,库里应该有:

    • 定义GBA的各种功能寄存器的地址,这样我们就可以通过设定寄存器来控制GBA。
    • 各段内存地址的定义,这样我们才能将图像,音频等数据放到正确的地方
    • 内置系统函数的定义,方便调用GBA的BIOS里自带的系统函数
    • 常用数学运算库,图形音频处理库,压缩解压库等等功能。

    其实这些库在任天堂公司开发GBA之初就提供给开发者了,但因为商业性质没有公开。有民间GBA开发爱好者也编写了库,在你的devkitPro安装后,目录里的/libgba和/libtonc就分别是devkitPro和tonc教材作者写的GBA库。

    不过我就喜欢自己造轮子,所以就从写GBA库开始学GBA吧。大概现在还在玩GBA的人也都是我这种爱搞底层、爱捣鼓的家伙。

    事实上因为GBA的特性已经在手册上写得清清楚楚,所以自己写个库确实不难,这篇文章是我的GBA库——lib_hl的索引。

    数学库部分包括这些内容:

    硬件部分包含这些内容:

    • 图像显示相关寄存器和函数
    • 图像硬件相关
    • 计数器计时器相关
    • 内存管理相关

    每个部分都能写好长的流水账,我只能挑关键的写点,其他请移步看源代码。

  • 相关阅读:
    IP地址和MAC地址,以及arp攻击
    可爱的老婆
    win7 homebasic下,.net2008 连接oracle,提示错误OCIEnvCreate 失败,返回代码为 1,但错误消息文本不可用
    检讨
    数据库索引
    PB调用C#编写的DLL
    用c#开发可供PB调用的COM组件
    关于excel取消科学计数法的问题
    按键码对照
    JSONP学习资料
  • 原文地址:https://www.cnblogs.com/h5l0/p/lib_hl.html
Copyright © 2011-2022 走看看