Texas Instruments MSP50C614 Stereo System User Manual


 
Texas Instruments C614 Synthesis Code
6-12
RAM Usage
The file MAIN.LST contains the variable RAM assignments. Do a search for
BEGIN_RAM to find the start of the RAM locations.
Adding Another Module
There are three steps to adding a new module to a project. First, the project
file (.RPJ) must be updated to include the ASM file (click on
File – Insert
to add
files to a project). Second, the RAM overlay file MAIN_RAM.IRX should be
updated with the RAM required by the new module. And finally, any functions
which are called from MAIN.ASM should be declared as external at the top of
MAIN.ASM.
Here, the self-extracting zipfile MELP2.ZIP contains the necessary extra files
to implement the N factorial (N!) function, normally referred to as N shriek. This
function is called
do_shriek
and is in SHRIEK.ASM under the
MODULES\SHRIEK directory.
Under the MELP2 directory the file MAIN.ASM should now contain the
following two extra lines of code, just below the shriek4 label:
shriek4
movb a0,4
call do_shriek
To test this code, build the MELP2 project and program another P614. Set a
breakpoint at shriek4 and then do a Run Internal (yellow lightning/black
centipede icon). Step over (press F8) and the accumulator 00 will be 0004 after
the movb instruction. Step over once more and the accumulator 00 will be 0018
after calling the
do_shriek
function.
Understanding the RAM Map
In the above code, the value of 4 is stored in the variable shriekvar. The list
file MAIN.LST shows the location of this variable to be 0x448, which is an
offset of 0x448
bytes
from the beginning of the RAM at 0x000. Since the RAM
window displays
words
of RAM the shriekvar variable is shown at (0x448/2)
which is 0x224. To verify this, step over the
do_shriek
function and watch RAM
location 0x224 change from 0000 (blue) to 0018 (red).
Modifying Files and Projects
The 614 code contains certain files which may be edited, some files which
should only be edited with good reason, and a few files which should never be
edited. In general:
These files may be edited
MAIN.ASM, MAIN.IRX, MAIN_RAM.IRX and FLAGS.IRX