
	//---------------------------------------------------
	void Refresh_init()
	{
		nn = (uint8)(uint)(N * 3);
		
		Refresh_core();
	}
	
	uint8 nn;
	void Refresh()
	{
		#asm "cli"
		
		Refresh_core();
		
		#asm "sei"
	}
	
	void Refresh_core()
	{
		#asm "ldi r26,&RGBList%256"
		#asm "ldi r27,&RGBList/256"
		
		#asm "lds r23,&nn"
		#asm "@label1zz:"
		
			#asm "ld r21,x+"
			#asm "ld r22,x+"
			#asm "ld r20,x+"
			
			#asm "ldi r24,24"
			#asm "@labelRepeat:"
		
				#asm "lsl r20"
				#asm "rol r21"
				#asm "rol r22"
			
				#asm "sbi &D.D0_OUT"
				#asm "dec r24"
				#asm "brcs @labelSend1"
					#asm "cbi &D.D0_OUT"
					#asm "nop"
					#asm "nop"
					#asm "nop"
					#asm "nop"
					#asm "brne @labelRepeat"
					#asm "jmp @labelend"
				#asm "@labelSend1:"
					#asm "nop"
					#asm "nop"
					#asm "nop"
					#asm "nop"
					#asm "nop"
					#asm "cbi &D.D0_OUT"
				
					#asm "brne @labelRepeat"
					#asm "jmp @labelend"
			
			#asm "@labelend:"
			
		#asm "dec r23"
		#asm "brne @label1zz"
	}



