84PCSE:BCALLs:55BD

From WikiTI
Revision as of 19:50, 19 October 2013 by FloppusMaximus (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

Synopsis

Unofficial Name: IHorizLine

BCALL Address: 55BDh

Draw a horizontal line.

Inputs

  • DE = X coordinate of left end of line
  • HL = X coordinate of right end of line; must be greater than or equal to DE
  • C = Y coordinate (from bottom of screen)
  • A = 1 to use the current foreground color, or 4 to copy pixels from the graph buffer
  • (penFGColor) = RGB color to draw (if A = 1)
  • (penFGColorIndex) = Color index to store in graph buffer (if A = 1)
  • fullScrnDraw, (iy + apiFlg4) = 1 to use LCD coordinates; 0 to use graph coordinates
  • plotLoc, (iy + plotFlags) = 1 to draw to LCD only; 0 to draw to LCD and graph buffer

Outputs

None

Destroys

  • Interrupts disabled

Comments

This routine is analogous to calling IPoint several times for a horizontal row of pixels, but somewhat faster. Like IPoint, A may either be 1 (to draw with the current foreground color), or 4 (to copy pixels from the graph buffer to the LCD.) The other IPoint operations are not supported.

Unlike IPoint, this routine does not check that the input coordinates are valid (i.e., within the bounds of the LCD or graph buffer); passing invalid coordinates may have strange effects.