anchor.diff:  % READ
   
   read(CPU) ->
  -   Word = CPU#cpu.fifo,
  -   read(CPU,Word).
  -
  -read(CPU,undefined) ->  
  -   read_wait(CPU);
  -
  -read(CPU,{Ch,Word}) ->
  -   ID   = CPU#cpu.id,
  -   Ch   = CPU#cpu.channel,
  -   trace:trace(f18A,{ CPU#cpu.id,{read,Word}}),     
  -   Ch ! { ID,read,ok },
  -   PC = CPU#cpu.pc + 4,
  -   {ok,CPU#cpu{ pc = PC,
  -                fifo = undefined
  -               }}.
  - 
  -read_wait(CPU) ->
      ID = CPU#cpu.id,
      Ch = CPU#cpu.channel,
      receive
  
positive.code:          write_wait(CPU);
  
        {stop,PID} ->
           {stop,PID};
  
        _any ->
           log:warn(?TAG,"WRITE/? ~p",[_any]),
           {error,_any}
     end.
  
  % EUNIT TESTS
  
negative.code:          read(CPU);
  
        {stop,PID} ->
           {stop,PID}
  
     end.
     
  
  