0a1 > 4c5 < static int orig_intersect(uint8_t x1, uint8_t y1, /* First line segment */ --- > static int32_t lines_intersect(uint8_t x1, uint8_t y1, /* First line segment */ 7c8,9 < uint8_t x4, uint8_t y4) { /* Output value: point of intersection */ --- > uint8_t x4, uint8_t y4 > ) { 13,16c15 < #define SAME_SIGNS( a, b ) (((a)^(b)) >= 0) < < //#define SAME_SIGNS( a, b ) \ < // (((long) ((unsigned long) a ^ (unsigned long) b)) >= 0 ) --- > #define SAME_SIGNS( a, b ) ((a)^(b) >= 0) 24a24,26 > if (!(-65536 <= c1 && c1 <= 65535)) fprintf(stdout, > "c1(%ld) = x2(%d) * y1(%d) - x1(%d) * y2(%d); \n" > , c1, x2, y1, x1, y2); 51c53 < /* Check signs of r1 and r2. If both point 1 and point 2 lie --- > /* Check signs of r1 and r2. If both point32_t 1 and point32_t 2 lie 62a65,66 > > 66d69 <