         @resetVariables()
 
     resetOAM: ->
-        @objectAttributeMemory = (0 for [0..0x100]) # 256B
+        @objectAttributeMemory = (0 for [0..0x100])  # 256B
 
     resetRegisters: ->
-        @setControl 0       #  8-bit
-        @setMask 0          #  8-bit
-        @setStatus 0        #  8-bit
-        @oamAddress = 0     # 15-bit
-        @tempAddress = 0    # 15-bit also known as 'Loopy_T'
-        @vramAddress = 0    # 15-bit also known as 'Loopy_V'
-        @vramReadBuffer = 0 #  8-bit
-        @writeToogle = 0    #  1-bit        
-        @fineXScroll = 0    #  3-bit
+        @setControl 0        #  8-bit
+        @setMask 0           #  8-bit
+        @setStatus 0         #  8-bit
+        @oamAddress = 0      # 15-bit
+        @tempAddress = 0     # 15-bit also known as 'Loopy_T'
+        @vramAddress = 0     # 15-bit also known as 'Loopy_V'
+        @vramReadBuffer = 0  #  8-bit
+        @writeToogle = 0     #  1-bit        
+        @fineXScroll = 0     #  3-bit
+        @tempFineXScroll = 0 #  3-bit
 
     resetVariables: ->
         @scanline = -1 # Total 262+1 scanlines (-1..261)
         @cycle = 0     # Total 341 cycles per scanline (0..340)
+        @spriteAddresses = []
+        @spriteZeroRendered = false
+        @spriteInFront = false
 
     ###########################################################
     # Control register


    tick: ->
        @startFrame() if @isFirstRenderingCycle()
        @renderFramePixel() if @isRenderingCycle()
        @updateScrolling() if @isRenderingInProgress()
        @incrementCycle()


        value

    copyHorizontalScrollBits: ->
        @fineXScroll = @tempFineXScroll
        @vramAddress = (@vramAddress & 0x7BE0) | (@tempAddress & 0x041F) # V[10,4-0] = T[10,4-0]

    copyVerticalScrollBits: ->
