This trap sets the font for a window.

Call ParametersReturn Parameters
D0.B$25D0.LError code.
D2.L0 or "DEFF"D2.LPreserved.
A0.LChannel ID.A0.LPreserved.
A1.LBase of 1st Font.A1.LCorrupted.
A2.LBase of 2nd Font.A2.LPreserved.
ERR_NCNot complete.
ERR_NOChannel not found.
  • All registers not shown above are not used on entry and are preserved on exit.
  • The registers A1 and A2 each either point to a font or are zero in which case the relevant default font is set.
  • Each font must be stored in memory in a particular way as shown below.
  • The value in D2.L is ignored by QDOS, but if it is "DEFF" in SMSQ/E then any font set by this call is used in subsequently opened channels.
  • If a character sent to a window is a valid character in the first font it is printed otherwise if it is a valid character in the second font that will be printed. If no valid character is found in either font the first character in the second font will be printed.
$00Byte1st valid character
$01ByteNumber of valid characters
$029 bytes1st character
$0B9 bytes2nd character

Each character consists of a 5x9 array printed in a 6x10 rectangle and is stored in bits 6 to 2 in each byte of a set of 9 representing the printable rows from top to bottom. The top row in the 6x10 rectangle is blank.

  • qdosmsq/traps/trap_3/font.txt
  • Last modified: 2010/11/17 17:19
  • by george.gwilt