Revision 1.0
RSP Software Development Tools
19
RSP Software Development Tools
A brief introduction to the RSP programming environment will provide a
framework for future discussions.
The following software tools are typically used for developing RSP code.
This section only mentions the critical, RSP-specific tools; other, more
general tools (like
make
and other UNIX tools) are not discussed.
rspasm
The assembler used to compile RSP microcode is
rspasm
. It is a simple,
2-pass assembler developed specifically for the RSP.
It interprets a simple assembly language, which is very R4000-like, but is not
MIPS compatible. The source language and assembler directives are unique
to the RSP.
The language, explained in more detail in Chapter 5, “RSP Assembly
Language,” has the following major features:
•
Mnemonic opcode syntax for all SU and VU instructions.
•
Support for labels in the text section (for branching) and the data
section (for referencing DMEM).
•
Simple expression parsing.
The language also includes a rich set of assembler directives, used to instruct
the assembler during compilation:
•
Data directives, used to initialize DMEM.
•
Symbol naming directives, used to assign meaningful names to
registers, labels, constants, etc.
•
Diagnostic directives, used to enforce memory alignment, print
diagnostic messages, etc.
rspasm
does not build standard ELF object files, which are required by the
makerom
utility in order to include RSP microcode objects into a game. ELF
file creation is decoupled from the assembler and accomplished by the
rsp2elf
tool.
Summary of Contents for Ultra64
Page 2: ...2 ...
Page 10: ...10 ...
Page 12: ...12 Figure 6 2 buildtask Operation 137 ...
Page 14: ...14 ...
Page 80: ...80 Vector Unit Instructions vmadm dres_int dres_int vconst 3 vmadn dres_frac vconst vconst 0 ...
Page 104: ...104 RSP Coprocessor 0 ...
Page 150: ...150 Advanced Information ...
Page 155: ...Revision 1 0 155 ...
Page 248: ...248 Exceptions None ...
Page 251: ...Revision 1 0 251 Exceptions None ...
Page 254: ...254 Exceptions None ...
Page 257: ...Revision 1 0 257 Exceptions None ...
Page 293: ...Revision 1 0 293 Exceptions None ...
Page 316: ...316 Exceptions None ...