anchor.diff:        // to start a command, doCommand fires off a memory read to the
         // specified address. when it comes back, the doCommandRule will
         // handle it
  -      method Action doCommandIndirect(Bit#(40) addr);
  +      method Action doCommandIndirect(Bit#(DmaAddrSize) addr);
   	 //cmd_read_chan.readReq.put(addr);
         endmethod
      
  
positive.code:       endmethod
     
  
        method Action set(Bit#(1) cmd, Bit#(2) regist, Bit#(40) addr);
  	 if (cmd == 1)
  	    cmdRing.set(regist, addr);
  	 else
  
negative.code: import NopEngine::*;
  
  interface RingRequest;
     method Action set(Bit#(1) cmd, Bit#(2) regist, Bit#(DmaAddrSize) addr);
     method Action get(Bit#(1) cmd, Bit#(2) regist);
     method Action hwenable(Bit#(1) en);
     method Action doCommandIndirect(Bit#(DmaAddrSize) addr);
     method Action doCommandImmediate(Bit#(64) data);
  endinterface
  
  interface RingIndication;
     method Action setResult(Bit#(1) cmd, Bit#(2) regist, Bit#(DmaAddrSize) addr);
     method Action getResult(Bit#(1) cmd, Bit#(2) regist, Bit#(DmaAddrSize) addr);
     method Action completion(Bit#(32) command, Bit#(32) tag);
  endinterface
  
  