- 148 -
ref_mpl
Reference variable-size memory pool status
iref_mpl
Reference variable-size memory pool status
(handler only)
[
[
[
[
C
C
L
L
a
a
n
n
g
g
u
u
a
a
g
g
e
e
A
A
P
P
I
I
]
]
]
]
ER ercd = ref_mpl( ID mplid, T_RMPL *pk_rmpl );
ER ercd = iref_mpl( ID mplid, T_RMPL *pk_rmpl );
z
z
P
P
a
a
r
r
a
a
m
m
e
e
t
t
e
e
r
r
s
s
ID
mplid
ID number of the target variable-size memory pool
T_RMPL
*pk_rmpl
Pointer to the packet to which variable-size memory pool status is returned
z
z
R
R
e
e
t
t
u
u
r
r
n
n
P
P
a
a
r
r
a
a
m
m
e
e
t
t
e
e
r
r
s
s
ER ercd Terminated
normally (E_OK)
T_RMPL
*pk_rmpl
Pointer to the packet to which variable-size memory pool status is returned
Contents of pk_rmpl
typedef struct
t_rmpl{
ID
wtskid
+0
2
Task ID waiting for memory block to be acquired (unused)
SIZE
fmplsz
+4
4
Free memory size (in bytes)
UINT
fblksz
+8
4
Maximum size of memory that can be acquired immediately (in
bytes)
} T_RMPL;
[
[
[
[
A
A
s
s
s
s
e
e
m
m
b
b
l
l
y
y
l
l
a
a
n
n
g
g
u
u
a
a
g
g
e
e
A
A
P
P
I
I
]
]
]
]
.include mr100.inc
ref_mpl MPLID,PK_RMPL
iref_mpl MPLID,PK_RMPL
z
z
P
P
a
a
r
r
a
a
m
m
e
e
t
t
e
e
r
r
s
s
MPLID
ID number of the target variable-size memory pool
PK_RMPL
Pointer to the packet to which variable-size memory pool status is returned
z
z
R
R
e
e
g
g
i
i
s
s
t
t
e
e
r
r
c
c
o
o
n
n
t
t
e
e
n
n
t
t
s
s
a
a
f
f
t
t
e
e
r
r
s
s
e
e
r
r
v
v
i
i
c
c
e
e
c
c
a
a
l
l
l
l
i
i
s
s
i
i
s
s
s
s
u
u
e
e
d
d
Register name
Content after service call is issued
R0 Error
code
R2
ID number of the target variable-size memory pool
A1
Pointer to the packet to which variable-size memory pool status is returned
[
[
[
[
E
E
r
r
r
r
o
o
r
r
c
c
o
o
d
d
e
e
]
]
]
]
None
[
[
[
[
F
F
u
u
n
n
c
c
t
t
i
i
o
o
n
n
a
a
l
l
d
d
e
e
s
s
c
c
r
r
i
i
p
p
t
t
i
i
o
o
n
n
]
]
]
]
This service call returns various statuses of the message buffer indicated by mplid.
wtskid
Unused.
fmplsz
A free memory size is returned.
fblksz
The maximum size of memory that can be acquired immediately is returned.
If this service call is to be issued from task context, use ref_mpl; if issued from non-task context, use iref_mpl.