I've never learnt assembly (I'm a self-taught programmer but that's no excuse) and I'm trying to speed up the inner loop of my gouraud shading rasterizer. The inner loop scans each line and is only 9 lines and I was wondering if one of you assembly experts could tell me the assembly equivalent. Any speed up in this inner loop will greatly increase the speed of the routine.
Code:
for x := ScanStart to ScanEnd do begin
  RGBT.rgbtBlue := Round(RGB.B);
  RGBT.rgbtGreen := Round(RGB.G);
  RGBT.rgbtRed := Round(RGB.R);
  Scan[x] := RGBT;
  RGB.B := RGB.B + RGBdx.B;
  RGB.G := RGB.G + RGBdx.G;
  RGB.R := RGB.R + RGBdx.R;
end;
The rest is here http://www.geocities.com/peter_bone_uk/Gouraud.txt

Thanks for any help.

Peter Bone