OS_Bout, Write string at (B)HL to standard output

Register parameters

RST 20H, DEFB $90
IN:
  BHL = extended pointer to string to be written
  B = 0, then local address space pointer in caller bank binding

OUT:
   Fc = 0, always (error handler is never provoked)
   HL = points null-terminator

Registers changed after return:
   A.BCDE../IXIY same
  .F....HL/.... different

Notes

  • This call replace GN_Soe. This call is shorter (2 bytes) and performs a significantly faster rendering.
  • String can cross bank boundary. When string crosses a bank boundary, the bank number of the next segment is used for local address (B=0), else the next bank number is used until a null terminator is reached. This feature fixes weird output in BBC Basic when the string crosses a bank boundary.

Related calls

OS_Out, write character to standard output
OS_Sout, write local string to standard output
OS_Bout,write string at (B)HL to standard output 
OS_Pout, write embedded null-terminated string at caller (PC) to standard output
OS_Hout, write hexadecimal byte to standard output
OS_Nln, send newline (CR/LF) to standard output
GN_Sop, write local string to standard output
GN_Soe, write string at extended address to standard output
GN_Nln, send newline (CR/LF) to standard output 

web analytics