M5251C3 Evaluation Board Users Guide, Rev. 0
2-22
Freescale Semiconductor
2.5
TRAP #15 Functions
An additional utility within the dBUG firmware is a function called the TRAP 15 handler. This function
can be called by the user program to utilize various routines within the dBUG, to perform a special task,
and to return control to the dBUG. This section describes the TRAP 15 handler and how it is used.
There are four TRAP #15 functions. These are: OUT_CHAR, IN_CHAR, CHAR_PRESENT, and
EXIT_TO_dBUG.
2.5.1
OUT_CHAR
This function (function code 0x0013) sends a character, which is in lower 8 bits of D1, to the terminal.
Assembly example:
/* assume d1 contains the character */
move.l
#$0013,d0
Selects the function
TRAP
#15
The character in d1 is sent to terminal
C example:
void board_out_char (int ch)
{
/* If your C compiler produces a LINK/UNLK pair for this routine,
* then use the following code which takes this into account
*/
#if l
/* LINK a6,#0 -- produced by C compiler */
asm (“ move.l8(a6),d1”);
/* put ‘ch’into d1 */
asm (“ move.l#0x0013,d0”); /* select the function */
asm (“ trap#15”);
/* make the call */
/* UNLK a6 -- produced by C compiler */
#else
/* If C compiler does not produce a LINK/UNLK pair, the use
* the following code.
*/
asm (“ move.l4(sp),d1”);
/* put ‘ch’into d1 */
asm (“ move.l#0x0013,d0”); /* select the function */
asm (“ trap#15”);
/* make the call */
#endif
}
2.5.2
IN_CHAR
This function (function code 0x0010) returns an input character (from the terminal) to the caller. The
returned character is in D1.
Assembly example:
move.l
#$0010,d0
Select the function
trap
#15
Make the call, the input character is in d1.
C example:
int board_in_char (void)
{
asm (“ move.l#0x0010,d0”);
/* select the function */
Summary of Contents for freescale M5251C3
Page 1: ...Document Number M5251C3UG Rev 0 05 2006 M5251C3 Evaluation Board Users Guide ...
Page 6: ...M5251C3 Evaluation Board Users Guide Rev 0 vi Freescale Semiconductor ...
Page 18: ...M5251C3 Evaluation Board Users Guide Rev 0 1 12 Freescale Semiconductor ...
Page 42: ...M5251C3 Evaluation Board Users Guide Rev 0 2 24 Freescale Semiconductor ...
Page 68: ...M5251C3 Evaluation Board Users Guide Rev 0 B 6 Freescale Semiconductor ...