-
GBA开发文档中包含了GBA模板
资源介绍
gba的开发文档。包括一份gba的cpu说明(中文翻译版)和ads环境下的gba开发模板(包括一个gba模拟器tool)。
//
// HAM (c) Emanuel Schleussinger 2001/2002
// all rights reserved.
//
// Includes Doxygen compatible documentation
// http://www.doxygen.org
//
/*
----------------------------------------------------------
REG_ --> Register location
absolute adress of a register.
includes typecasting for direct c writes.
example: R_DISPCNT = value;
MEN_ --> MEMORY address
V_ --> Value
A register related value used by macros
and functions. Register Masks are also
treated as values, this is currently in-
consistent with C_ (constants), which they
should be really. Anyone want to clean up? :-)
C_ --> Constant
Helpers that will never need change. holds
values for bitfields that are hard to remember
Also note, C_'s might get declared only once
for a set of registers. If so, two rules apply:
- the C_ declaration always is in the first
register of the set.
- the number of the register (example BG0CNT,
BG1CNT) is set to C_BGXCNT.
F_ --> Function
a function returns a value suchas true
M_ --> Macro
A macro does stuff on its own, suchas
switching a display mode or enabling
sprites. This is what you will be using
most of the time. Example:
M_INTMST_ENABLE will enable interrupts
TOOL_ --> Tool function
Usually a collection of macros and/or
functions. Propably not the fastest on
earth, but very convienient. These are
found at the end of the file. For example
TOOL_INIT_ALL(1) sets up the display for
BGMode 1 and inits sound and interrupts.
Notes:
------
Some of the functions/macros are not the fastest on
earth, i know that. Most of them are built for
convienience rather than speed, and will suffice
in the most cases.
Also, please do not mail me about the fact that
using REG= A | B | C | D is faster than what
is being done here. I know that ;-) First of all, that
only applies sometimes (if you need to set whole bitfields),
and second of all, you can still do it on your own using
the R_ defines. I do the same in my code, but it proves
handy to have the base cases covered.
Disclaimer:
-----------
I'd like to be greeted in your demo if you use this
header :)
Be fair.
Also, this source file and any other part of HAM must NOT:
- be changed and redistributed as new versions, I
would like to keep the main distribution point on
my end. Help with any suggestions please, though.
You WILL be mentioned for any help you did on HAM,
and also, you can join in the team.
---------------------------------------------------------
*/
- 上一篇: 汇编语言小鸟小车
- 下一篇: smallest_working_performer