anchor.diff:                 lineCount <= 0;
                  patternIndex1 <= 0;
                  lineVisible <= False;
  +               if (verbose)
  +                   $display("HDMI: lineVisible off");
                  testPatternEnabled <= shadowTestPatternEnabled;
                  if (waitingForVsync)
   	          sendVsyncIndication.send();
              end
              else begin
  -               if (lineCount == deLineStartVisible)
  +               if (lineCount == deLineStartVisible) begin
                      lineVisible <= True;
  +                   if (verbose)
  +                       $display("HDMI: lineVisible on");
  +               end
                  lineCount <= lineCount+1;
                  if (lineCount >= deLineMid)
                      patternIndex1 <= 1;
              end
           end
           else begin
  -           if (lineCount == deLineStartPorch) begin
  +           if (lineCount == deLineStartSync) begin
                 vsync <= 1;
                 if (pixelCount == 0 && testPatternEnabled == 0) begin
                     vsyncCounter <= vsyncCounter+1;
                     startDMA.send();
  +                  $display("HDMI:vsync %d", lineCount);
                 end
              end
  -           else if (lineCount == deLineEndPorch)
  +           else if (lineCount == deLineEndSync)
                 vsync <= 0;
  -           if (pixelCount == dePixelStartPorch)
  +           if (pixelCount == dePixelStartSync)
                 hsync <= 1;
  -           else if (pixelCount == dePixelEndPorch)
  +           else if (pixelCount == dePixelEndSync)
                 hsync <= 0;
              if (pixelCount == dePixelStartVisible)
                  dataEnable <= lineVisible;
  
positive.code:         rgb888StageReg <= VideoData {de: 1, vsync: 0, hsync: 0, pixel: unpack(patternRegs[{patternIndex1, patternIndex0}])};
      endrule
  
      interface Put pdata;
          method Action put(Bit#(32) v) if (testPatternEnabled == 0 && dataEnable);
             rgb888StageReg <= VideoData {de: 1, vsync: 0, hsync: 0, pixel: unpack(v[23:0])};
             $display("HDMI::pdata         [%d:%d] = %x", lineCount, pixelCount, v);
          endmethod
      endinterface
  
  
negative.code:     Reg#(Bit#(32)) elapsed <- mkReg(0, clocked_by axi_clock, reset_by axi_reset);
      Reg#(Bit#(32)) elapsedVsync <- mkReg(0, clocked_by axi_clock, reset_by axi_reset);
      SyncBitIfc#(Bit#(32)) vsyncCounters <- mkSyncBits(0, defaultClock, defaultReset, axi_clock, axi_reset);
      Wire#(Bool) gotDataWire <- mkDWire(False);
  
      rule vsyncaxi;
         vsyncCounters.send(vsyncCounter);
  