Hi, Although I would agree the code is extremely slow (even the ASM) , the example is only used to demonstrate the scientific method. If Mr Phipps wants to write lightning fast Bresenham code (which can be used as he said for much more than drawing lines), he would do well to look for the code published by Michael Abrash. (see Graphics Programming Black Book) The fastest line drawing version I have done writes a line in runs - with only one comparison needed for each run. This was blindingly fast not only in ASM but also in C/C++. It is something which modern compilers can optimize very easily for, thus obviating the need for assembler. In fact a C++ version would probably be at least several times faster than Mr Phipps' ASM version using his 'scientific' method. ;-) But Mr Abrash even demonstrated a version which through taking advantage of the twin integer pipes on Pentiums, 'drew' two runs simultaneously! This is silly for gfx cards since they can only accept data serially, but fantastic if you are drawing fonts etc in memory before blitting to screen. Speed aside, you are correct the accumulation of error has not been handled correctly. This means a line drawn from point A to B will probably look different than one drawn from point B to A. BTW, Bresenham's basic techniques were also adapted successfully to both circles and ellipses. It is a shame that with hardware accelerated drawing, all this knowledge has been forgotten. But if people want fast and properly anitaliased fonts, it is well worth to study up on. ds > From: Michael Noisternig <michael.noisternig@xxxxxxxxx> > Subject: [openbeos] Re: The Scientific Method aka Bresenham Newsletter Article > > I was thinking about replying personally but then it is a public article > so I post this to the associated mailing list. > > <snip>