Intel iapx 432 Baby Furniture User Manual


 
iAPX
432
Interface
Processor
Architecture
Reference Manual
Dispatch:
Procedure~
/**********************************************************************************/
/*
This
procedure
hangs
the
IP's
processor
carrier
on
the
IP's
dispatching
*/
/*
port.
This
allcws
blocking
sends
and
receives
to
be
handled.*/
1*
This
example assumes
that
the
IP
processor
carrier
blocks
at
the
dispacthing
* /
/*
port.
No
"select
process"
IPC
is
received
if
the
Surrogate
Receive
does
not
*/
/*
block.
*/
/**********************************************************************************/
Window_4.disp_state
=
false;
/*
Unlock
the
IP'
s
processor
carr
ier
Window_4.frf-prcs.idx
=
process_Ii
Window
4.frf
operand(O) =
psor
carrier
ds
obj
se1;
Window:
4.frf:operator
= OllH; - - - -
Call
AwaJ.t
_
function_completion;
/*
Hang
processor
carrier
on
the
dispatching
port.
Window_4.frf-prcs_idx
=
process_l;
Window_4.frf_operand(O) =
dispatching-POrt_obj_se1:
Window
4.frf
operam
(2) =
null
destination
obj
sel;
Window
-4.
frf-operand
(3)
=
poor-carrier
as
obj
sel:
Window=4.frf=operator =
017H:
- - - -
Call
Await
furction
~letion:
End
- -
Dispatch;
Open
windCM:
PrOcedure:
/*
Use
process
object
1.
/*
Data segment
/*
Unlock
function
code.
/*
Use
process
object
l.
/*
port
/*
destination
/*
carrier
/*
Surrogate
receive
/*
function
rode.
*/
*/
*/
*/
*/
*/
*/
*/
*/
*/
*/
/************************************************************************************/
/*
Open
a windcw
to
the
message,
Figure
F-5
* /
/************************************************************************************/
W!ndow_4.frf-prcs_idx
Wl.ndow
4.
frf
operand
(O)
Window-4.frf-operand(1)
Wiooow
-4.
frroperand'(2}
Windcw-4.frf-operand(3)
Wiooow
-4.
frf-operand
(4)
Window-4.
frf-operand
(5)
Window=4.frf=operator
=
process
1;
=
3;
-
=
000010lBi
= 4096;
=
lllll10000000000B:
= Iressage
obj
se1;
=
0;
--
=
OOOH;
Call
Await
furction
canpletion:
EM
- -
<.pen
_ windO!l;
F-6
/*
process
obj
ect
index * /
/*
window
index
* /
/*
entry
state
*/
/*
base
address
*/
/*
mask
*/
~
data
segment
*/
/*
base
displacement
*/
/*
Alter
Map
and
Select
Data
* /
/*
Segment
function
code
*/