S5U1C17001C ManUal
EPSOn
10-87
(C COMPilEr PaCkagE fOr S1C17 faMily) (Ver. 1.5.0)
10 DEBUggEr
c17 call
(call user function)
[ICD Mini / SIM]
Operation
Calls a user function.
However, an assembler entry program is required.
Format
c17 call
Function
[
Arg1
[
Arg2
[
Arg3
]]]
Function
: The function to be called (function name or decimal/ hexadecimal start address)
Arg1–3
:
Argument (decimal, hexadecimal, or symbol)
Conditions: Up to three arguments can be specified.
Usage example
(gdb) c17 callmd 1
(gdb)
c17 call print_data 1 2 3
arg1=1, arg2=2, arg3=3
(Execution result)
The function
print_data()
is called after specifying three arguments.
User function and entry routine
When
c17 call
is invoked,
gdb
executes a specified user function and receives a return value from
%r0
.
If the return value is -1 (0xffffff),
gdb
terminates the session without performing anything. When the value
received is other than that,
gdb
interprets it as the start address of a packet passed from the function and
displays internal data of the packet in the [Console] window or directly writes it to a file in its original form.
The
c17 callmd
command specifies the output destination. The default output destination is the [Console]
window.
The following shows the configuration of the packet returned by a user function.
data size
(4 bytes)
data
...
A packet must always start from a 4-byte boundary. A user function must set the start address of this packet in
%r0
. If packets cannot be returned, the user function should set -1 in
%r0
.
The following shows an example of a user function to be called.
The user function must always end with "
jpa %r1
".
Example entry program (assembler)
#define SP_INI 0x0800
; sp is in end of 1KB internal RAM
jpa
%r1
; back to mini monitor
;
****28 - ****3f DSIO command area, 24byte
;
;
****28
WBUF data1
DSIO output command
;
****2c
WBUF data2
;
;
****32
RBUF ID
DSIO input command
;
****33
RBUF size
;
****34
RBUF addr
;
****38
RBUF data1
;
****3c
RBUF data2
;
; input
; %r0 : debug ram start address = ****28
; %r1 : return address( mini Monitor )
; output
;
****28 WBUF data1 : gdb output message start address
;
; <message format>
; size : message size (4 byte)
; message : String data
;
10
Debugger
Summary of Contents for S5U1C17001C
Page 6: ......
Page 17: ...1 General S5U1C17001C Manual 1 General ...
Page 18: ......
Page 21: ...1 2 Install S5U1C17001C Manual 2 Installation ...
Page 22: ......
Page 29: ...3 SoftDev S5U1C17001C Manual 3 Software Development Procedures ...
Page 30: ......
Page 103: ...4 SrcFiles S5U1C17001C Manual 4 Source files ...
Page 104: ......
Page 121: ...5 IDE S5U1C17001C Manual 5 gnU17 iDE ...
Page 122: ......
Page 365: ...6 Compiler S5U1C17001C Manual 6 C Compiler ...
Page 366: ......
Page 385: ...7 Library S5U1C17001C Manual 7 library ...
Page 386: ......
Page 405: ...8 Assemblr S5U1C17001C Manual 8 assembler ...
Page 406: ......
Page 439: ...9 Linker S5U1C17001C Manual 9 linker ...
Page 440: ......
Page 449: ...10 Debugger S5U1C17001C Manual 10 Debugger ...
Page 450: ......
Page 626: ...11 Tools S5U1C17001C Manual 11 Other Tools ...
Page 627: ......
Page 696: ...S1C17 Family C Compiler Package Quick Reference Reference ...