anchor.diff:     T = CPU#cpu.t,
      case write(CPU,B,T) of 
           {ok,RAM} ->
  -  	      CPUX = pop(ds,CPU#cpu{ ram = RAM }),
  +  	      CPUX = pop(ds,CPU#cpu{ ram = RAM },CPU#cpu.s),
   	      trace(?STOREB,CPUX),
      	      {ok,CPUX};
   
  
positive.code:    {SP,Stack} = CPU#cpu.rs,
     SPx        = (SP + 7) rem 8, 
     CPU#cpu{ rs = {SPx,array:set(SPx,R,Stack)}
            };
  
  push(DS,S) ->
     lists:droplast([S|DS]).
  
  pop(ds,CPU) ->
     S          = CPU#cpu.s,
     {SP,Stack} = CPU#cpu.ds,
     SPx        = (SP + 9) rem 8, 
     CPU#cpu{ t  = S,
              s  = array:get(SP,Stack),
              ds = {SPx,Stack}
            };
  
  pop(rs,CPU) ->
     {SP,Stack} = CPU#cpu.rs,
  
negative.code: exec_impl({?CALL,Addr},CPU) ->
     P      = CPU#cpu.p,
     {ok,I} = load(CPU,Addr),
     CPUX = push(rs,CPU),
     CPUY = CPUX#cpu{ p  = Addr,
                      r  = P,
  