17.5.11 Extended service call routine information
The number of items that can be defined as extended service call routine information is limited to one for each function code.
The following shows the extended service call routine information format.
DEF_SVC (fncd, { svcatr, svcrtn });
|
The items constituting the extended service call routine information are as follows.
Specifies the function code for an extended service call routine.
A value from 0x1 to 0xff can be specified for
fncd.
Specifies the language used to describe an extended service call routine.
The keyword that can be specified for
svcatr is TA_HLNG or TA_ASM.
TA_HLNG: Start an extended service call routine through a C language interface.
TA_ASM: Start an extended service call routine through an assembly language interface.
3 ) Start address:
svcrtn
Specifies the start address for an extended service call routine.
A value from 0x0 to 0xfffffffe (aligned to a 2-byte boundary), or a symbol name, can be specified for
svcrtn.
Note When an extended service call routine handler is coded as follows, the symbol name specified for
svcrtn should be func_svc.
#include <kernel.h>
#include <kernel_id.h>
ER_UINT
func_svc ( VP_INT par1, VP_INT par2, VP_INT par3 )
{
ER_UINT ercd;
............
............
return ( ercd );
}
|