beautypg.com

Renesas Emulator System M3T-MR100 User Manual

Page 122

background image

- 106 -

ref_sem

Reference semaphore status

iref_sem

Reference semaphore 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_sem( ID semid, T_RSEM *pk_rsem );
ER ercd = iref_sem( ID semid, T_RSEM *pk_rsem );

z

z

P

P

a

a

r

r

a

a

m

m

e

e

t

t

e

e

r

r

s

s

ID

semid

ID number of the target semaphore

T_RSEM

*pk_rsem

Pointer to the packet to which semaphore 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_RSEM

*pk_rsem

Pointer to the packet to which semaphore status is returned


Contents of pk_rsem
typedef struct

t_rsem{

ID

wtskid

+0

2

ID number of the task at the head of the semaphore’s wait queue

UINT

semcnt

+2

4

Current semaphore resource count

} T_RSEM;

[

[

[

[

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_sem SEMID, PK_RSEM
iref_sem SEMID, PK_RSEM

z

z

P

P

a

a

r

r

a

a

m

m

e

e

t

t

e

e

r

r

s

s

SEMID

ID number of the target semaphore

PK_RSEM

Pointer to the packet to which semaphore 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 semaphore

A1

Pointer to the packet to which semaphore 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 semaphore indicated by semid.

‹

wtskid

Returned to wtskid is the ID number of the task at the head of the semaphore’s wait queue (the next task to be
dequeued). If no tasks are kept waiting, TSK_NONE is returned.

‹

semcnt

Returned to semcnt is the current semaphore resource count.
If this service call is to be issued from task context, use ref_sem; if issued from non-task context, use iref_sem.