У меня разворот крутого цикла был сделан так:
Код:
LineYn0: SetPix 128;продолжнение цикла здесь
        IncY
        Err+=dy-dx
        jp nc,LineYn1
LineYp0: SetPix 128 ;точка входа здесь
        IncY
        Err-=dx
        jp nc,LineYp0;крутимся рисуя вертикальный отрезок
LineYn1: SetPix 64
        IncY
        Err+=dy-dx
        jp nc,LineYn2;нарисовав точку нового отрезка идём дальше или 
LineYp1: SetPix 64
        IncY	
        Err-=dx
        jp nc,LineYp1;крутимся рисуя следующий
LineYn2:
	...
LineYn8:
        IncH		;x
        Dec Cnt8 ;изначально=(x2-x1-8)/8
        Jp nz,LineYn0