The following codes use/return system handles:
IN: BC = NQ_Ain IX = application handle from OS_Poll OUT, if call successful: Fc = 0 BHL = pointer to application name (null-terminated) BDE = pointer to application DOR A = CLI-related attributes C = preferred code letter. OUT, if call failed: Fc = 1 A = RC_HAND Registers changed after return: ......../IXIY same AFBCDEHL/.... different |
IN: BC = NQ_Khn OUT: IX = keyboard handle Registers changed after return: A.BCDEHL/..IY same .F....../IX.. different |
Use ":INP" device instead.
IN: BC = NQ_Shn OUT: IX = screen handle Registers changed after return: A.BCDEHL/..IY same .F....../IX.. different |
Use ":SCR" device instead.
IN: BC = NQ_Phn OUT: IX = printer indirected handle Registers changed after return: A.BCDEHL/..IY same .F....../IX.. different |
IN: BC = NQ_Hhn OUT: IX = null handle Registers changed after return: A.BCDEHL/..IY same .F....../IX.. different |
Use ":NUL" device instead
IN: BC = NQ_Wai OUT: IX = static process handle BC = dynamic process handle Registers changed after return: A...DEHL/..IY same .FBC..../IX.. different |
IN: BC = NQ_Com OUT: IX = comms handle Registers changed after return: A.BCDEHL/..IY same .F....../IX.. different |
Use ":COM" device instead.
IN: BC = NQ_Ihn OUT: IX = IN handle Registers changed after return: A.BCDEHL/..IY same .F....../IX.. different |
Use ":INP" device instead.
IN: BC = NQ_Ohn OUT: IX = OUT handle Registers changed after return: A.BCDEHL/..IY same .F....../IX.. different |
Use ":OUT" device instead.
IN: BC = NQ_Rhn OUT: IX = printer direct handle Registers changed after return: A.BCDEHL/..IY same .F....../IX.. different |
IN: A = check OZ version (for example $45 for OZ V4.5) BC = NQ_Voz OUT, if call successful: Fc = 0 Running OZ is equal to or higher than specified version OUT, if call reported incompatible OZ ROM: Fc = 1 A = RC_QUIT ($67) Registers changed after return: A.BCDEHL/IXIY same .F....../.... different |
Notes:
if OS_Nq, NQ_Voz is used on OZ ROM's earlier than V4.5, a standard "Internal Error" popup window is displayed to prompt the user to press ESC (the NQ_Voz doesnt exist).
For OZ V4.5 and later a similar but more correct window is displayed with "This application requires OZ VX.Y or newer" message if the specified OZ release is newer than what is currently running.