Für die Übergabe der Parameter an die Line-A Funktionen wird eine Struktur benutzt. Dieser statisch angelegte Line-A Parameterblock hat den nachfolgend beschriebenen Aufbau. Die Zahl im Kommentar gibt jeweils den Offset der Komponente zum Anfang der Struktur an.
typedef struct
{
int16_t v_planes, /* 0: # Bitplanes (1, 2 od. 4) */
v_lin_wr, /* 2: # Bytes/Scanline */
*contrl,
*intin,
*ptsin, /* 12: Koordinaten-Eingabe */
*intout,
*ptsout, /* 20: Koordinaten-Ausgabe */
fg_bp_1, /* 24: Plane 0 */
fg_bp_2, /* 26: Plane 1 */
fg_bp_3, /* 28: Plane 2 */
fg_bp_4, /* 30: Plane 3 */
lstlin; /* 32: letzten Pixel einer Linie */
/* zeichen (1) oder nicht (0) */
uint16_t ln_mask; /* 34: Linienmuster */
int16_t wrt_mode, /* 36: Schreib-Modus */
x1, y1, x2, y2; /* 38: Koordinaten */
void *patptr; /* 46: Füllmuster */
uint16_t patmsk; /* 50: .. dazugehörige Maske */
int16_t multifill, /* 52: Füllmuster für Planes */
clip, /* 54: Flag für Clipping */
xmn_clip, ymn_clip,
xmx_clip, ymx_clip, /* 60: Clipping Rechteck */
/* Rest für text_blt: */
xacc_dda, /* 64: vor Textausgaben auf 0x8000 */
/* setzen */
dda_inc, /* 66: Vergrößerungsfaktor */
t_sclsts, /* 68: Vergrößerungsrichtung */
mono_status, /* 70: Proportionalschrift */
sourcex, sourcey, /* 72: Koordinaten im Font */
destx, desty, /* 76: Bildschirmkoordinaten */
delx, dely; /* 80: Breite und Höhe des Zeichen */
FONT_HDR *fbase; /* 84: Start der Font-Daten */
int16_t fwidth, /* 88: Breite des Fontimage */
style; /* 90: Schreibstil */
uint16_t litemask, /* 92: Maske für Light */
skewmask; /* 94: Maske für Kursiv */
int16_t weight, /* 96: Breite bei Bold */
r_off, /* 98: Kursiv-Offset rechts */
l_off, /* 100: Kursiv-Offset links */
scale, /* 102: Vergrößerung ja/nein */
chup, /* 104: Rotationswinkel *10 */
text_fg; /* 106: Textfarbe */
void *scrtchp; /* 108: Buffer */
int16_t scrpt2, /* 112: Index in Buffer */
text_bg, /* 114: unbenutzt */
copy_tran, /* 116: -- */
(*fill_abort)( void ); /* 118: Testet Seed Fill */
} LINEA;