RISCOS.com

www.riscos.com Technical Support:
Programmer's Reference Manual

 

NetPrint


Service Calls


Service_NetPrintCheckD1
(Service Call &40200)

Issued by NetPrint to determine if there is a local printer server running

On entry

R1 = &40200 (reason code)

On exit

R1 = 0 to claim the command, or preserved to pass on

Use

This service call is issued by NetPrint to determine if there is a local printer server running.

If NetPrint is trying to print to a remote server, it should listen for replies on Econet ports &D0 and &D1, since old and new versions (respectively) of the printer server protocol use those ports. (See Printer server protocol interface.) However, if a printer server is running on the local machine, it uses port &D1 to listen for data. Hence if both NetPrint and a local printer server are in use, packets can arrive at port &D1 for two different programs, with no way of telling the owner of a given packet.

To avoid any potential confusion, NetPrint issues this service call. If it is claimed there is a local printer server running, and so NetPrint can only listen on port &D0; it cannot communicate with printer servers that reply on port &D1 using the old protocol. If it is not claimed, NetPrint can listen on ports &D0 and &D1, and can communicate with older printer servers.

This edition Copyright © 3QD Developments Ltd 2015
Last Edit: Tue,03 Nov 2015