docs: public void drawLine(int x0, int y0, int x1, int y1, Color c) {
          int colorRGB = c.getRGB();
          int dy = y1 - y0;
          int dx = x1 - x0;
          int stepx, stepy;
          int fraction;
  
  
          if (dy < 0) {
              dy = -dy;
              stepy = -1;
          } else {
              stepy = 1;
          }
          if (dx < 0) {
              dx = -dx;
              stepx = -1;
          } else {
              stepx = 1;
          }
          dy <<= 1;                            // dy is now 2*dy
          dx <<= 1;                            // dx is now 2*dx
  
          setIntColor(x0, y0, colorRGB);
  
          if (dx > dy) {
              fraction = dy - (dx >> 1);    // same as 2*dy - dx
              while (x0 != x1) {
                  if (fraction >= 0) {
                      y0 += stepy;
                      fraction -= dx;        // same as fraction -= 2*dx
                  }
                  x0 += stepx;
                  fraction += dy;                // same as fraction -= 2*dy
                  setIntColor(x0, y0, colorRGB);
              }
          } else {
              fraction = dx - (dy >> 1);
              while (y0 != y1) {
                  if (fraction >= 0) {
                      x0 += stepx;
                      fraction -= dy;
                  }
                  y0 += stepy;
                  fraction += dx;
                  setIntColor(x0, y0, colorRGB);
              }
          }
      }