Perform the reset sequence:
Assert Reset till x's get flushed out (the last signal appears to be RamForP, which settles 3 cycles after BCtlRamForBCWS6, which settles in cycle 6):
Pradeep Sindhu May 6, 1988 6:28:09 pm PDT
D D D n n D D B B G G I P P P P | D H B B B R S P P P P P
S A E D D S S C D L r S m C B D | B d D O S e S R F F D R
h d x F R e e y a e a S o m y a | u r a w h q t e a a a e
i d e r e r l c t n n t d d t t | s C t n a u o j u u t s
f r c e s i e l a g t o e I e a | O y a e r e p e l l a c
t e u e e a c e I t p I n S | u c O r e s O c t t h
C s t z t l t 0 n h I n e | t l u O d t u t C e
k s e e I n l | e t u O t o d
n I | O t u d u
n | u t e l
| t e
|
( 0 0 0 1 0 0 ) 0 0 0000 0 0 0 0 0 0 00 | x x xxxx x x x x x x x xx x --A
( 0 0 0 1 0 0 ) 0 0 0000 0 0 0 0 0 0 00 | x x xxxx x x x x x x x xx x
( 0 0 0 1 0 0 ) 0 0 0000 0 0 0 0 0 0 00 | x x xxxx x x x x x x x xx x --B
( 0 0 0 1 0 0 ) 0 0 0000 0 0 0 0 0 0 00 | x x xxxx x x x x x x x xx x
( 0 0 0 1 0 0 ) 0 0 0000 0 0 0 0 0 0 00 | x x xxxx x x x x x 0 x xx x --A
( 0 0 0 1 0 0 ) 0 0 0000 0 0 0 0 0 0 00 | x x xxxx x x x x x 0 x xx x
( 0 0 0 1 0 0 ) 0 0 0000 0 0 0 0 0 0 00 | x x xxxx x x x x x 0 x xx x --B
( 0 0 0 1 0 0 ) 0 0 0000 0 0 0 0 0 0 00 | x x xxxx x x x x x 0 x xx x
( 0 0 0 1 0 0 ) 0 0 0000 0 0 0 0 0 0 00 | x x xxxx x x x x x 0 x xx x --A
( 0 0 0 1 0 0 ) 0 0 0000 0 0 0 0 0 0 00 | x x xxxx x x x x x 0 x xx x
( 0 0 0 1 0 0 ) 0 0 0000 0 0 0 0 0 0 00 | x x xxxx x x x x x 0 x xx x --B
( 0 0 0 1 0 0 ) 0 0 0000 0 0 0 0 0 0 00 | x x xxxx x x x x x 0 x xx x
( 0 0 0 1 0 0 ) 0 0 0000 0 0 0 0 0 0 00 | x x xxxx x x x x x 0 x xx x --A
( 0 0 0 1 0 0 ) 0 0 0000 0 0 0 0 0 0 00 | x x xxxx x x x x x 0 x xx x
( 0 0 0 1 0 0 ) 0 0 0000 0 0 0 0 0 0 00 | x x xxxx x x x x x 0 x xx x --B
( 0 0 0 1 0 0 ) 0 0 0000 0 0 0 0 0 0 00 | x x xxxx x x x x 0 0 x xx x
( 0 0 0 1 0 0 ) 0 0 0000 0 0 0 0 0 0 00 | x x xxxx x x x x 0 0 x xx x --A
( 0 0 0 1 0 0 ) 0 0 0000 0 0 0 0 0 0 00 | x x xxxx x x x x 0 0 x xx x
( 0 0 0 1 0 0 ) 0 0 0000 0 0 0 0 0 0 00 | x x xxxx x x x x 0 0 x xx x --B
( 0 0 0 1 0 0 ) 0 0 0000 0 0 0 0 0 0 00 | x x xxxx x x x x 0 0 x xx x
( 0 0 0 1 0 0 ) 0 0 0000 0 0 0 0 0 0 00 | x x xxxx x x x x 0 0 x xx x --A
( 0 0 0 1 0 0 ) 0 0 0000 0 0 0 0 0 0 00 | x x xxxx x x x x 0 0 x xx x
( 0 0 0 1 0 0 ) 0 0 0000 0 0 0 0 0 0 00 | x x xxxx x x x x 0 0 x xx x --B
( 0 0 0 1 0 0 ) 0 0 0000 0 0 0 0 0 0 00 | x x xxxx x x x x 0 0 x xx x
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 00 | x 0 xxxx 0 0 0 0 0 0 x xx x --A
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 00 | x 0 xxxx 0 0 0 0 0 0 x xx x
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 00 | x 0 xxxx 0 0 0 0 0 0 x xx x --B
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 00 | x 0 xxxx 0 0 0 0 0 0 x xx x
Check that chip Id can be read out (scan path 0):
D D D n n D D B B G G I P P P P | D H B B B R S P P P P P
S A E D D S S C D L r S m C B D | B d D O S e S R F F D R
h d x F R e e y a e a S o m y a | u r a w h q t e a a a e
i d e r e r l c t n n t d d t t | s C t n a u o j u u t s
f r c e s i e l a g t o e I e a | O y a e r e p e l l a c
t e u e e a c e I t p I n S | u c O r e s O c t t h
C s t z t l t 0 n h I n e | t l u O d t u t C e
k s e e I n l | e t u O t o d
n I | O t u d u
n | u t e l
| t e
|
( 0 1 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 00 | x 0 xxxx 0 0 0 0 0 0 x xx x --A
( 1 1 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 00 | x 0 xxxx 0 0 0 0 0 0 x xx x
( 0 1 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 00 | x 0 xxxx 0 0 0 0 0 0 x xx x --B
( 1 1 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 00 | x 0 xxxx 0 0 0 0 0 0 x xx x
( 0 1 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 00 | x 0 xxxx 0 0 0 0 0 0 x xx x --A
( 1 1 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 00 | x 0 xxxx 0 0 0 0 0 0 x xx x
( 0 0 0 1 1 0 ) 1 0 0000 0 0 0 0 0 0 00 | 0 0 xxxx 0 0 0 0 0 0 x xx x --B
( 1 0 0 1 1 0 ) 1 0 0000 0 0 0 0 0 0 00 | 1 0 xxxx 0 0 0 0 0 0 x xx x
( 0 0 0 1 1 0 ) 1 0 0000 0 0 0 0 0 0 00 | 1 0 xxxx 0 0 0 0 0 0 x xx x --A
( 1 0 0 1 1 0 ) 1 0 0000 0 0 0 0 0 0 00 | 0 0 xxxx 0 0 0 0 0 0 x xx x
( 0 0 0 1 1 0 ) 1 0 0000 0 0 0 0 0 0 00 | 0 0 xxxx 0 0 0 0 0 0 x xx x --B
( 1 0 0 1 1 0 ) 1 0 0000 0 0 0 0 0 0 00 | 1 0 xxxx 0 0 0 0 0 0 x xx x
( 0 0 0 1 1 0 ) 1 0 0000 0 0 0 0 0 0 00 | 1 0 xxxx 0 0 0 0 0 0 x xx x --A
( 1 0 0 1 1 0 ) 1 0 0000 0 0 0 0 0 0 00 | 0 0 xxxx 0 0 0 0 0 0 x xx x
( 0 0 0 1 1 0 ) 1 0 0000 0 0 0 0 0 0 00 | 0 0 xxxx 0 0 0 0 0 0 x xx x --B
( 1 0 0 1 1 0 ) 1 0 0000 0 0 0 0 0 0 00 | 0 0 xxxx 0 0 0 0 0 0 x xx x
( 0 0 0 1 1 0 ) 1 0 0000 0 0 0 0 0 0 00 | 0 0 xxxx 0 0 0 0 0 0 x xx x --A
( 1 0 0 1 1 0 ) 1 0 0000 0 0 0 0 0 0 00 | 0 0 xxxx 0 0 0 0 0 0 x xx x
( 0 0 0 1 1 0 ) 1 0 0000 0 0 0 0 0 0 00 | 0 0 xxxx 0 0 0 0 0 0 x xx x --B
( 1 0 0 1 1 0 ) 1 0 0000 0 0 0 0 0 0 00 | 1 0 xxxx 0 0 0 0 0 0 x xx x
( 0 0 0 1 1 0 ) 1 0 0000 0 0 0 0 0 0 00 | 1 0 xxxx 0 0 0 0 0 0 x xx x --A
( 1 0 0 1 1 0 ) 1 0 0000 0 0 0 0 0 0 00 | 0 0 xxxx 0 0 0 0 0 0 x xx x
( 0 0 0 1 1 0 ) 1 0 0000 0 0 0 0 0 0 00 | 0 0 xxxx 0 0 0 0 0 0 x xx x --B
( 1 0 0 1 1 0 ) 1 0 0000 0 0 0 0 0 0 00 | 1 0 xxxx 0 0 0 0 0 0 x xx x
( 0 0 0 1 1 0 ) 1 0 0000 0 0 0 0 0 0 00 | 1 0 xxxx 0 0 0 0 0 0 x xx x --A
( 1 0 0 1 1 0 ) 1 0 0000 0 0 0 0 0 0 00 | 0 0 xxxx 0 0 0 0 0 0 x xx x
( 0 0 0 1 1 0 ) 1 0 0000 0 0 0 0 0 0 00 | 0 0 xxxx 0 0 0 0 0 0 x xx x --B
( 1 0 0 1 1 0 ) 1 0 0000 0 0 0 0 0 0 00 | 1 0 xxxx 0 0 0 0 0 0 x xx x
( 0 0 0 1 1 0 ) 1 0 0000 0 0 0 0 0 0 00 | 1 0 xxxx 0 0 0 0 0 0 x xx x --A
( 1 0 0 1 1 0 ) 1 0 0000 0 0 0 0 0 0 00 | 1 0 xxxx 0 0 0 0 0 0 x xx x
( 0 0 0 1 1 0 ) 1 0 0000 0 0 0 0 0 0 00 | 1 0 xxxx 0 0 0 0 0 0 x xx x --B
( 1 0 0 1 1 0 ) 1 0 0000 0 0 0 0 0 0 00 | 1 0 xxxx 0 0 0 0 0 0 x xx x
( 0 0 0 1 1 0 ) 1 0 0000 0 0 0 0 0 0 00 | 1 0 xxxx 0 0 0 0 0 0 x xx x --A
( 1 0 0 1 1 0 ) 1 0 0000 0 0 0 0 0 0 00 | 0 0 xxxx 0 0 0 0 0 0 x xx x
( 0 0 0 1 1 0 ) 1 0 0000 0 0 0 0 0 0 00 | 0 0 xxxx 0 0 0 0 0 0 x xx x --B
( 1 0 0 1 1 0 ) 1 0 0000 0 0 0 0 0 0 00 | 1 0 xxxx 0 0 0 0 0 0 x xx x
( 0 0 0 1 1 0 ) 1 0 0000 0 0 0 0 0 0 00 | 1 0 xxxx 0 0 0 0 0 0 x xx x --A
( 1 0 0 1 1 0 ) 1 0 0000 0 0 0 0 0 0 00 | 0 0 xxxx 0 0 0 0 0 0 x xx x
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 00 | x 0 xxxx 0 0 0 0 0 0 x xx x --B
( 1 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 00 | x 0 xxxx 0 0 0 0 0 0 x xx x
Shift In MyId (scan path 1) (Recall that MyId is only one bit so only one bit needs to be shifted in):
D D D n n D D B B G G I P P P P | D H B B B R S P P P P P
S A E D D S S C D L r S m C B D | B d D O S e S R F F D R
h d x F R e e y a e a S o m y a | u r a w h q t e a a a e
i d e r e r l c t n n t d d t t | s C t n a u o j u u t s
f r c e s i e l a g t o e I e a | O y a e r e p e l l a c
t e u e e a c e I t p I n S | u c O r e s O c t t h
C s t z t l t 0 n h I n e | t l u O d t u t C e
k s e e I n l | e t u O t o d
n I | O t u d u
n | u t e l
| t e
|
( 0 1 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 00 | x 0 xxxx 0 0 0 0 0 0 x xx x --A
( 1 1 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 00 | x 0 xxxx 0 0 0 0 0 0 x xx x
( 0 1 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 00 | x 0 xxxx 0 0 0 0 0 0 x xx x --B
( 1 1 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 00 | x 0 xxxx 0 0 0 0 0 0 x xx x
( 0 1 0 1 1 1 ) 0 0 0000 0 0 0 0 0 0 00 | x 0 xxxx 0 0 0 0 0 0 x xx x --A
( 1 1 0 1 1 1 ) 0 0 0000 0 0 0 0 0 0 00 | x 0 xxxx 0 0 0 0 0 0 x xx x
( 0 0 0 1 1 1 ) 1 0 0000 0 0 0 0 0 0 00 | x 0 xxxx 0 0 0 0 0 0 x xx x --B
( 1 0 0 1 1 1 ) 1 0 0000 0 0 0 0 0 0 00 | 1 0 xxxx 0 0 0 0 0 0 x xx x
( 0 0 0 1 1 1 ) 1 0 0000 0 0 0 0 0 0 00 | 1 0 xxxx 0 0 0 0 0 0 x xx x --A
( 0 0 0 1 1 0 ) 1 0 0000 0 0 0 0 0 0 00 | 1 0 xxxx 0 0 0 0 0 0 x xx x
( 0 0 0 1 1 0 ) 1 0 0000 0 0 0 0 0 0 00 | 1 0 xxxx 0 0 0 0 0 0 x xx x --B
( 0 0 0 1 1 0 ) 1 0 0000 0 0 0 0 0 0 00 | 1 0 xxxx 0 0 0 0 0 0 x xx x
AID:
Write AID [09], Kernel Mode:
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 D F 09 | x 0 xxxx 0 0 0 0 0 0 x xx x --A
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 D F 09 | x 0 xxxx 0 0 0 0 0 0 x xx x
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 D F 11 | x 0 xxxx 0 0 0 0 0 0 x xx x --B
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 11 | x 0 xxxx 0 0 0 0 0 0 x xx x
Read it back [09]:
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 C 0 09 | x 0 xxxx 0 0 0 0 0 0 x xx x --A
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 C 0 09 | x 0 xxxx 0 0 0 0 0 0 x xx x
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 C 0 xx | x 0 xxxx 0 0 0 0 0 0 x xx x --B
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 0 0 x 11 x
Write AID [09], ByteWrite:
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 D 3 09 | x 0 xxxx 0 0 0 0 0 0 x xx x --A
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 D 3 09 | x 0 xxxx 0 0 0 0 0 0 x xx x
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 D 3 02 | x 0 xxxx 0 0 0 0 0 0 x xx x --B
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 02 | x 0 xxxx 0 0 0 0 0 0 x xx x
Read it back [09]:
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 C 0 09 | x 0 xxxx 0 0 0 0 0 0 x xx x --A
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 C 0 09 | x 0 xxxx 0 0 0 0 0 0 x xx x
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 C 0 xx | x 0 xxxx 0 0 0 0 0 0 x xx x --B
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 0 0 x 12 x
Write AID [09], User Mode: Should generate protection fault
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 1 D F 09 | x 0 xxxx 0 0 0 0 0 0 x xx x --A
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 1 D F 09 | x 0 xxxx 0 0 0 0 0 0 x xx x
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 D F F0 | x 0 xxxx 0 0 0 0 1 0 x xx x --B
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 F0 | x 0 xxxx 0 0 0 0 1 0 x xx x
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 0 0 x xx x --A
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 0 0 x xx x
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 1 0 x xx x --B
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 1 0 x xx x
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 0 0 x xx x --A
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 0 0 x xx x
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 1 0 x xx x --B
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 1 0 x xx x
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 0 0 x xx x --A
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 0 0 x xx x
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 1 x x xx x --B
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 1 1 3 xx x
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 0 0 x xx x --A
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 0 0 x xx x
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 0 0 x xx x --B
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 0 0 x xx x
FaultCode:
Write FaultCode [0B], Kernel Mode:
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 D F 0B | x 0 xxxx 0 0 0 0 0 0 x xx x --A
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 D F 0B | x 0 xxxx 0 0 0 0 0 0 x xx x
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 D F 22 | x 0 xxxx 0 0 0 0 0 0 x xx x --B
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 22 | x 0 xxxx 0 0 0 0 0 0 x xx x
Read it back [0B]:
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 C 0 0B | x 0 xxxx 0 0 0 0 0 0 x xx x --A
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 C 0 0B | x 0 xxxx 0 0 0 0 0 0 x xx x
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 C 0 xx | x 0 xxxx 0 0 0 0 0 0 x xx x --B
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 0 0 x 22 x
Write FaultCode [0B], ByteWrite:
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 D 3 0B | x 0 xxxx 0 0 0 0 0 0 x xx x --A
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 D 3 0B | x 0 xxxx 0 0 0 0 0 0 x xx x
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 D 3 03 | x 0 xxxx 0 0 0 0 0 0 x xx x --B
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 03 | x 0 xxxx 0 0 0 0 0 0 x xx x
Read it back [0B]:
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 C 0 0B | x 0 xxxx 0 0 0 0 0 0 x xx x --A
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 C 0 0B | x 0 xxxx 0 0 0 0 0 0 x xx x
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 C 0 xx | x 0 xxxx 0 0 0 0 0 0 x xx x --B
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 0 0 x 23 x
Write FaultCode [0B], User Mode: Should generate protection fault
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 1 D F 0B | x 0 xxxx 0 0 0 0 0 0 x xx x --A
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 1 D F 0B | x 0 xxxx 0 0 0 0 0 0 x xx x
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 D F F0 | x 0 xxxx 0 0 0 0 1 0 x xx x --B
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 F0 | x 0 xxxx 0 0 0 0 1 0 x xx x
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 0 0 x xx x --A
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 0 0 x xx x
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 1 0 x xx x --B
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 1 0 x xx x
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 0 0 x xx x --A
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 0 0 x xx x
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 1 0 x xx x --B
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 1 0 x xx x
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 0 0 x xx x --A
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 0 0 x xx x
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 1 x x xx x --B
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 1 1 3 xx x
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 0 0 x xx x --A
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 0 0 x xx x
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 0 0 x xx x --B
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 0 0 x xx x
InterruptStatus:
Write InterruptStatus [0D], Kernel Mode:
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 D F 0D | x 0 xxxx 0 0 0 0 0 0 x xx x --A
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 D F 0D | x 0 xxxx 0 0 0 0 0 0 x xx x
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 D F 33 | x 0 xxxx 0 0 0 0 0 0 x xx x --B
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 33 | x 0 xxxx 0 0 0 0 0 0 x xx x
Read it back [0D]:
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 C 0 0D | x 0 xxxx 0 0 0 0 0 0 x xx x --A
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 C 0 0D | x 0 xxxx 0 0 0 0 0 0 x xx x
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 C 0 xx | x 0 xxxx 0 0 0 0 0 0 x xx x --B
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 0 0 x 33 x
Write InterruptStatus [0D], ByteWrite:
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 D 3 0D | x 0 xxxx 0 0 0 0 0 0 x xx x --A
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 D 3 0D | x 0 xxxx 0 0 0 0 0 0 x xx x
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 D 3 04 | x 0 xxxx 0 0 0 0 0 0 x xx x --B
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 04 | x 0 xxxx 0 0 0 0 0 0 x xx x
Read it back [0D]:
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 C 0 0D | x 0 xxxx 0 0 0 0 0 0 x xx x --A
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 C 0 0D | x 0 xxxx 0 0 0 0 0 0 x xx x
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 C 0 xx | x 0 xxxx 0 0 0 0 0 0 x xx x --B
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 0 0 x 34 x
Write InterruptStatus [0D], User Mode: Should generate protection fault
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 1 D F 0D | x 0 xxxx 0 0 0 0 0 0 x xx x --A
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 1 D F 0D | x 0 xxxx 0 0 0 0 0 0 x xx x
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 D F F0 | x 0 xxxx 0 0 0 0 1 0 x xx x --B
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 F0 | x 0 xxxx 0 0 0 0 1 0 x xx x
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 0 0 x xx x --A
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 0 0 x xx x
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 1 0 x xx x --B
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 1 0 x xx x
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 0 0 x xx x --A
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 0 0 x xx x
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 1 0 x xx x --B
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 1 0 x xx x
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 0 0 x xx x --A
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 0 0 x xx x
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 1 x x xx x --B
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 1 1 3 xx x
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 0 0 x xx x --A
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 0 0 x xx x
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 0 0 x xx x --B
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 0 0 x xx x
InterruptMask:
Write InterruptMask [0F], Kernel Mode:
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 D F 0F | x 0 xxxx 0 0 0 0 0 0 x xx x --A
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 D F 0F | x 0 xxxx 0 0 0 0 0 0 x xx x
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 D F 44 | x 0 xxxx 0 0 0 0 0 0 x xx 1 --B
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 44 | x 0 xxxx 0 0 0 0 0 0 x xx 1
Read it back [0F]:
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 C 0 0F | x 0 xxxx 0 0 0 0 0 0 x xx 1 --A
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 C 0 0F | x 0 xxxx 0 0 0 0 0 0 x xx 1
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 C 0 xx | x 0 xxxx 0 0 0 0 0 0 x xx 1 --B
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 0 0 x 44 1
Write InterruptMask [0F], ByteWrite:
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 D 3 0F | x 0 xxxx 0 0 0 0 0 0 x xx 1 --A
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 D 3 0F | x 0 xxxx 0 0 0 0 0 0 x xx 1
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 D 3 05 | x 0 xxxx 0 0 0 0 0 0 x xx 1 --B
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 05 | x 0 xxxx 0 0 0 0 0 0 x xx 1
Read it back [0F]:
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 C 0 0F | x 0 xxxx 0 0 0 0 0 0 x xx 1 --A
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 C 0 0F | x 0 xxxx 0 0 0 0 0 0 x xx 1
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 C 0 xx | x 0 xxxx 0 0 0 0 0 0 x xx 1 --B
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 0 0 x 45 1
Write InterruptMask [0F], User Mode: Should generate protection fault
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 1 D F 0F | x 0 xxxx 0 0 0 0 0 0 x xx 1 --A
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 1 D F 0F | x 0 xxxx 0 0 0 0 0 0 x xx 1
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 D F F0 | x 0 xxxx 0 0 0 0 1 0 x xx 1 --B
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 F0 | x 0 xxxx 0 0 0 0 1 0 x xx 1
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 0 0 x xx 1 --A
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 0 0 x xx 1
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 1 0 x xx 1 --B
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 1 0 x xx 1
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 0 0 x xx 1 --A
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 0 0 x xx 1
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 1 0 x xx 1 --B
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 1 0 x xx 1
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 0 0 x xx 1 --A
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 0 0 x xx 1
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 1 x x xx 1 --B
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 1 1 3 xx 1
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 0 0 x xx 1 --A
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 0 0 x xx 1
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 0 0 x xx 1 --B
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 0 0 x xx 1
Write 00 to InterruptMask [0F], Kernel Mode:
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 D F 0F | x 0 xxxx 0 0 0 0 0 0 x xx 1 --A
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 D F 0F | x 0 xxxx 0 0 0 0 0 0 x xx 1
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 D F 00 | x 0 xxxx 0 0 0 0 0 0 x xx 0 --B
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 00 | x 0 xxxx 0 0 0 0 0 0 x xx 0
Read it back to check:
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 C 0 0F | x 0 xxxx 0 0 0 0 0 0 x xx 0 --A
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 C 0 0F | x 0 xxxx 0 0 0 0 0 0 x xx 0
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 C 0 xx | x 0 xxxx 0 0 0 0 0 0 x xx 0 --B
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 0 0 x 00 0
Write AA to InterruptMask [0F], Kernel Mode:
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 D F 0F | x 0 xxxx 0 0 0 0 0 0 x xx 0 --A
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 D F 0F | x 0 xxxx 0 0 0 0 0 0 x xx 0
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 D F AA | x 0 xxxx 0 0 0 0 0 0 x xx 1 --B
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 AA | x 0 xxxx 0 0 0 0 0 0 x xx 1
Read it back to check:
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 C 0 0F | x 0 xxxx 0 0 0 0 0 0 x xx 1 --A
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 C 0 0F | x 0 xxxx 0 0 0 0 0 0 x xx 1
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 C 0 xx | x 0 xxxx 0 0 0 0 0 0 x xx 1 --B
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 0 0 x AA 1
Write 00 to InterruptStatus [0D], Kernel Mode:
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 D F 0D | x 0 xxxx 0 0 0 0 0 0 x xx 1 --A
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 D F 0D | x 0 xxxx 0 0 0 0 0 0 x xx 1
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 D F 00 | x 0 xxxx 0 0 0 0 0 0 x xx 0 --B
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 00 | x 0 xxxx 0 0 0 0 0 0 x xx 0
Read it back to check:
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 C 0 0D | x 0 xxxx 0 0 0 0 0 0 x xx 0 --A
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 C 0 0D | x 0 xxxx 0 0 0 0 0 0 x xx 0
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 C 0 xx | x 0 xxxx 0 0 0 0 0 0 x xx 0 --B
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 0 0 x 00 0
Starting at the highest order bit, set and then clear each bit, checking that SetReschedule is correctly generated. Since we wrote 1010 1010 (AA) into InterruptMask, we should get the alternating pattern 1010 1010 for SetReschedule.
Set bit 0:
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 D F 1D | x 0 xxxx 0 0 0 0 0 0 x xx 0 --A
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 D F 1D | x 0 xxxx 0 0 0 0 0 0 x xx 0
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 D F 80 | x 0 xxxx 0 0 0 0 0 0 x xx 1 --B
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 80 | x 0 xxxx 0 0 0 0 0 0 x xx 1
Check that bit 0 got set:
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 C 0 0D | x 0 xxxx 0 0 0 0 0 0 x xx 1 --A
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 C 0 0D | x 0 xxxx 0 0 0 0 0 0 x xx 1
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 C 0 xx | x 0 xxxx 0 0 0 0 0 0 x xx 1 --B
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 0 0 x 80 1
Clear bit 0:
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 D F 15 | x 0 xxxx 0 0 0 0 0 0 x xx 1 --A
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 D F 15 | x 0 xxxx 0 0 0 0 0 0 x xx 1
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 D F 80 | x 0 xxxx 0 0 0 0 0 0 x xx 0 --B
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 80 | x 0 xxxx 0 0 0 0 0 0 x xx 0
Check that bit 0 got cleared:
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 C 0 0D | x 0 xxxx 0 0 0 0 0 0 x xx 0 --A
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 C 0 0D | x 0 xxxx 0 0 0 0 0 0 x xx 0
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 C 0 xx | x 0 xxxx 0 0 0 0 0 0 x xx 0 --B
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 0 0 x 00 0
Set bit 1:
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 D F 1D | x 0 xxxx 0 0 0 0 0 0 x xx 0 --A
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 D F 1D | x 0 xxxx 0 0 0 0 0 0 x xx 0
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 D F 40 | x 0 xxxx 0 0 0 0 0 0 x xx 0 --B
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 40 | x 0 xxxx 0 0 0 0 0 0 x xx 0
Check that bit 1 got set:
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 C 0 0D | x 0 xxxx 0 0 0 0 0 0 x xx 0 --A
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 C 0 0D | x 0 xxxx 0 0 0 0 0 0 x xx 0
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 C 0 xx | x 0 xxxx 0 0 0 0 0 0 x xx 0 --B
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 0 0 x 40 0
Clear bit 1:
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 D F 15 | x 0 xxxx 0 0 0 0 0 0 x xx 0 --A
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 D F 15 | x 0 xxxx 0 0 0 0 0 0 x xx 0
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 D F 40 | x 0 xxxx 0 0 0 0 0 0 x xx 0 --B
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 40 | x 0 xxxx 0 0 0 0 0 0 x xx 0
Check that bit 1 got cleared:
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 C 0 0D | x 0 xxxx 0 0 0 0 0 0 x xx 0 --A
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 C 0 0D | x 0 xxxx 0 0 0 0 0 0 x xx 0
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 C 0 xx | x 0 xxxx 0 0 0 0 0 0 x xx 0 --B
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 0 0 x 00 0
Set bit 2:
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 D F 1D | x 0 xxxx 0 0 0 0 0 0 x xx 0 --A
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 D F 1D | x 0 xxxx 0 0 0 0 0 0 x xx 0
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 D F 20 | x 0 xxxx 0 0 0 0 0 0 x xx 1 --B
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 20 | x 0 xxxx 0 0 0 0 0 0 x xx 1
Check that bit 2 got set:
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 C 0 0D | x 0 xxxx 0 0 0 0 0 0 x xx 1 --A
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 C 0 0D | x 0 xxxx 0 0 0 0 0 0 x xx 1
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 C 0 xx | x 0 xxxx 0 0 0 0 0 0 x xx 1 --B
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 0 0 x 20 1
Clear bit 2:
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 D F 15 | x 0 xxxx 0 0 0 0 0 0 x xx 1 --A
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 D F 15 | x 0 xxxx 0 0 0 0 0 0 x xx 1
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 D F 20 | x 0 xxxx 0 0 0 0 0 0 x xx 0 --B
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 20 | x 0 xxxx 0 0 0 0 0 0 x xx 0
Check that bit 2 got cleared:
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 C 0 0D | x 0 xxxx 0 0 0 0 0 0 x xx 0 --A
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 C 0 0D | x 0 xxxx 0 0 0 0 0 0 x xx 0
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 C 0 xx | x 0 xxxx 0 0 0 0 0 0 x xx 0 --B
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 0 0 x 00 0
Set bit 3:
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 D F 1D | x 0 xxxx 0 0 0 0 0 0 x xx 0 --A
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 D F 1D | x 0 xxxx 0 0 0 0 0 0 x xx 0
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 D F 10 | x 0 xxxx 0 0 0 0 0 0 x xx 0 --B
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 10 | x 0 xxxx 0 0 0 0 0 0 x xx 0
Check that bit 3 got set:
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 C 0 0D | x 0 xxxx 0 0 0 0 0 0 x xx 0 --A
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 C 0 0D | x 0 xxxx 0 0 0 0 0 0 x xx 0
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 C 0 xx | x 0 xxxx 0 0 0 0 0 0 x xx 0 --B
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 0 0 x 10 0
Clear bit 3:
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 D F 15 | x 0 xxxx 0 0 0 0 0 0 x xx 0 --A
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 D F 15 | x 0 xxxx 0 0 0 0 0 0 x xx 0
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 D F 10 | x 0 xxxx 0 0 0 0 0 0 x xx 0 --B
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 10 | x 0 xxxx 0 0 0 0 0 0 x xx 0
Check that bit 3 got cleared:
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 C 0 0D | x 0 xxxx 0 0 0 0 0 0 x xx 0 --A
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 C 0 0D | x 0 xxxx 0 0 0 0 0 0 x xx 0
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 C 0 xx | x 0 xxxx 0 0 0 0 0 0 x xx 0 --B
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 0 0 x 00 0
Set bit 4:
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 D F 1D | x 0 xxxx 0 0 0 0 0 0 x xx 0 --A
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 D F 1D | x 0 xxxx 0 0 0 0 0 0 x xx 0
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 D F 08 | x 0 xxxx 0 0 0 0 0 0 x xx 1 --B
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 08 | x 0 xxxx 0 0 0 0 0 0 x xx 1
Check that bit 4 got set:
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 C 0 0D | x 0 xxxx 0 0 0 0 0 0 x xx 1 --A
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 C 0 0D | x 0 xxxx 0 0 0 0 0 0 x xx 1
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 C 0 xx | x 0 xxxx 0 0 0 0 0 0 x xx 1 --B
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 0 0 x 08 1
Clear bit 4:
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 D F 15 | x 0 xxxx 0 0 0 0 0 0 x xx 1 --A
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 D F 15 | x 0 xxxx 0 0 0 0 0 0 x xx 1
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 D F 08 | x 0 xxxx 0 0 0 0 0 0 x xx 0 --B
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 08 | x 0 xxxx 0 0 0 0 0 0 x xx 0
Check that bit 4 got cleared:
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 C 0 0D | x 0 xxxx 0 0 0 0 0 0 x xx 0 --A
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 C 0 0D | x 0 xxxx 0 0 0 0 0 0 x xx 0
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 C 0 xx | x 0 xxxx 0 0 0 0 0 0 x xx 0 --B
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 0 0 x 00 0
Set bit 5:
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 D F 1D | x 0 xxxx 0 0 0 0 0 0 x xx 0 --A
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 D F 1D | x 0 xxxx 0 0 0 0 0 0 x xx 0
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 D F 04 | x 0 xxxx 0 0 0 0 0 0 x xx 0 --B
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 04 | x 0 xxxx 0 0 0 0 0 0 x xx 0
Check that bit 5 got set:
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 C 0 0D | x 0 xxxx 0 0 0 0 0 0 x xx 0 --A
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 C 0 0D | x 0 xxxx 0 0 0 0 0 0 x xx 0
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 C 0 xx | x 0 xxxx 0 0 0 0 0 0 x xx 0 --B
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 0 0 x 04 0
Clear bit 5:
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 D F 15 | x 0 xxxx 0 0 0 0 0 0 x xx 0 --A
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 D F 15 | x 0 xxxx 0 0 0 0 0 0 x xx 0
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 D F 04 | x 0 xxxx 0 0 0 0 0 0 x xx 0 --B
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 04 | x 0 xxxx 0 0 0 0 0 0 x xx 0
Check that bit 5 got cleared:
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 C 0 0D | x 0 xxxx 0 0 0 0 0 0 x xx 0 --A
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 C 0 0D | x 0 xxxx 0 0 0 0 0 0 x xx 0
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 C 0 xx | x 0 xxxx 0 0 0 0 0 0 x xx 0 --B
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 0 0 x 00 0
Set bit 6:
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 D F 1D | x 0 xxxx 0 0 0 0 0 0 x xx 0 --A
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 D F 1D | x 0 xxxx 0 0 0 0 0 0 x xx 0
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 D F 02 | x 0 xxxx 0 0 0 0 0 0 x xx 1 --B
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 02 | x 0 xxxx 0 0 0 0 0 0 x xx 1
Check that bit 6 got set:
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 C 0 0D | x 0 xxxx 0 0 0 0 0 0 x xx 1 --A
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 C 0 0D | x 0 xxxx 0 0 0 0 0 0 x xx 1
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 C 0 xx | x 0 xxxx 0 0 0 0 0 0 x xx 1 --B
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 0 0 x 02 1
Clear bit 6:
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 D F 15 | x 0 xxxx 0 0 0 0 0 0 x xx 1 --A
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 D F 15 | x 0 xxxx 0 0 0 0 0 0 x xx 1
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 D F 02 | x 0 xxxx 0 0 0 0 0 0 x xx 0 --B
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 02 | x 0 xxxx 0 0 0 0 0 0 x xx 0
Check that bit 6 got cleared:
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 C 0 0D | x 0 xxxx 0 0 0 0 0 0 x xx 0 --A
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 C 0 0D | x 0 xxxx 0 0 0 0 0 0 x xx 0
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 C 0 xx | x 0 xxxx 0 0 0 0 0 0 x xx 0 --B
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 0 0 x 00 0
Set bit 7:
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 D F 1D | x 0 xxxx 0 0 0 0 0 0 x xx 0 --A
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 D F 1D | x 0 xxxx 0 0 0 0 0 0 x xx 0
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 D F 01 | x 0 xxxx 0 0 0 0 0 0 x xx 0 --B
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 01 | x 0 xxxx 0 0 0 0 0 0 x xx 0
Check that bit 7 got set:
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 C 0 0D | x 0 xxxx 0 0 0 0 0 0 x xx 0 --A
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 C 0 0D | x 0 xxxx 0 0 0 0 0 0 x xx 0
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 C 0 xx | x 0 xxxx 0 0 0 0 0 0 x xx 0 --B
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 0 0 x 01 0
Clear bit 7:
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 D F 15 | x 0 xxxx 0 0 0 0 0 0 x xx 0 --A
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 D F 15 | x 0 xxxx 0 0 0 0 0 0 x xx 0
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 D F 01 | x 0 xxxx 0 0 0 0 0 0 x xx 0 --B
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 01 | x 0 xxxx 0 0 0 0 0 0 x xx 0
Check that bit 7 got cleared:
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 C 0 0D | x 0 xxxx 0 0 0 0 0 0 x xx 0 --A
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 C 0 0D | x 0 xxxx 0 0 0 0 0 0 x xx 0
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 C 0 xx | x 0 xxxx 0 0 0 0 0 0 x xx 0 --B
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 0 0 x 00 0
Modes:
Write Modes [25], Kernel Mode:
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 D F 25 | x 0 xxxx 0 0 0 0 0 0 x xx x --A
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 D F 25 | x 0 xxxx 0 0 0 0 0 0 x xx x
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 D F 44 | x 0 xxxx 0 0 0 0 0 0 x xx x --B
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 44 | x 0 xxxx 0 0 0 0 0 0 x xx x
Read it back [25]:
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 C 0 25 | x 0 xxxx 0 0 0 0 0 0 x xx x --A
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 C 0 25 | x 0 xxxx 0 0 0 0 0 0 x xx x
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 C 0 xx | x 0 xxxx 0 0 0 0 0 0 x xx x --B
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 0 0 x 44 x
Write Modes [25], ByteWrite:
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 D 3 25 | x 0 xxxx 0 0 0 0 0 0 x xx x --A
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 D 3 25 | x 0 xxxx 0 0 0 0 0 0 x xx x
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 D 3 05 | x 0 xxxx 0 0 0 0 0 0 x xx x --B
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 05 | x 0 xxxx 0 0 0 0 0 0 x xx x
Read it back [25]:
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 C 0 25 | x 0 xxxx 0 0 0 0 0 0 x xx x --A
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 C 0 25 | x 0 xxxx 0 0 0 0 0 0 x xx x
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 C 0 xx | x 0 xxxx 0 0 0 0 0 0 x xx x --B
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 0 0 x 45 x
Write Modes [25], User Mode: Should generate protection fault
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 1 D F 25 | x 0 xxxx 0 0 0 0 0 0 x xx x --A
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 1 D F 25 | x 0 xxxx 0 0 0 0 0 0 x xx x
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 D F F0 | x 0 xxxx 0 0 0 0 1 0 x xx x --B
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 F0 | x 0 xxxx 0 0 0 0 1 0 x xx x
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 0 0 x xx x --A
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 0 0 x xx x
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 1 0 x xx x --B
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 1 0 x xx x
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 0 0 x xx x --A
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 0 0 x xx x
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 1 0 x xx x --B
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 1 0 x xx x
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 0 0 x xx x --A
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 0 0 x xx x
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 1 x x xx x --B
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 1 1 3 xx x
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 0 0 x xx x --A
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 0 0 x xx x
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 0 0 x xx x --B
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 0 0 x xx x
LocalFaultCode:
Write LocalFaultCode [29], Kernel Mode:
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 D F 29 | x 0 xxxx 0 0 0 0 0 0 x xx x --A
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 D F 29 | x 0 xxxx 0 0 0 0 0 0 x xx x
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 D F 44 | x 0 xxxx 0 0 0 0 0 0 x xx x --B
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 44 | x 0 xxxx 0 0 0 0 0 0 x xx x
Read it back [29]:
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 C 0 29 | x 0 xxxx 0 0 0 0 0 0 x xx x --A
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 C 0 29 | x 0 xxxx 0 0 0 0 0 0 x xx x
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 C 0 xx | x 0 xxxx 0 0 0 0 0 0 x xx x --B
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 0 0 x FF x
Write LocalFaultCode [29], ByteWrite:
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 D 3 29 | x 0 xxxx 0 0 0 0 0 0 x xx x --A
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 D 3 29 | x 0 xxxx 0 0 0 0 0 0 x xx x
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 D 3 05 | x 0 xxxx 0 0 0 0 0 0 x xx x --B
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 05 | x 0 xxxx 0 0 0 0 0 0 x xx x
Read it back [29]:
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 C 0 29 | x 0 xxxx 0 0 0 0 0 0 x xx x --A
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 C 0 29 | x 0 xxxx 0 0 0 0 0 0 x xx x
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 C 0 xx | x 0 xxxx 0 0 0 0 0 0 x xx x --B
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 0 0 x FF x
Write LocalFaultCode [29], User Mode: Should generate protection fault
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 1 D F 29 | x 0 xxxx 0 0 0 0 0 0 x xx x --A
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 1 D F 29 | x 0 xxxx 0 0 0 0 0 0 x xx x
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 D F F0 | x 0 xxxx 0 0 0 0 1 0 x xx x --B
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 F0 | x 0 xxxx 0 0 0 0 1 0 x xx x
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 0 0 x xx x --A
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 0 0 x xx x
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 1 0 x xx x --B
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 1 0 x xx x
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 0 0 x xx x --A
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 0 0 x xx x
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 1 0 x xx x --B
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 1 0 x xx x
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 0 0 x xx x --A
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 0 0 x xx x
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 1 x x xx x --B
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 1 1 3 xx x
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 0 0 x xx x --A
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 0 0 x xx x
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 0 0 x xx x --B
( 0 0 0 1 1 0 ) 0 0 0000 0 0 0 0 0 0 xx | x 0 xxxx 0 0 0 0 0 0 x xx x
.