OSWORD &19

From BeebWiki
Revision as of 00:55, 29 March 2015 by Jgharston (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

OSWORD &19 (25) - IP Network receive

This call is made by a modifed NFS to pass networking calls on to an IP networking handler. It should not be called directly by the user, programs should call OSWORD &11 and allow the networking system to forward the call to the appropriate handler.

Specification

   XY?0=0 - Open receive block
   On entry:
       XY?0   = 0
       XY?1   = must contain &7F
       XY?2   = port to receive on
       XY+3..4= station to receive from
       XY!5   = reception buffer start address
       XY!9   = reception buffer end address
   On exit:
       XY?0   = 0 if no more space to open blocks, or number of opened
              reception block. Receive blocks can be 'wild', ie will
              receive from anyone if the port or station values are set to
              &00.
   
   XY?0<>0 - Read and delete receive block
   On entry:
       XY?0   = receive block number to read
       XY!5   = receive buffer start address
       XY!9   = receive buffer end address
   On exit:
       XY?1   = flag from transmission block
       XY?2   = port received on
       XY+3..4= station received from
       XY!9   = updated to new address of buffer end

Unread receive blocks must be deleted with OSBYTE &34 (52).

See Also

Networking calls

Watford Electronics Speech control

       On entry:
               XY!0   =address of data
               XY?4   =flag
               XY+5..6=length of data
       If flag is 0 then the address points to a table of byte pairs that
       are output as though with Speech OSBYTE &19. 
       If flag is &8x then the address points to an ASCII string of words or
       allophones, terminated with <cr> or &00. The string will be spoken
       as with *TALK
       If flag is &Cx then the address points to an ASCII string of word or
       allophones of the length specified in the control block.
       Calls with flag set to &8x or &Cx, bit 3 of the flag sets the unknown
       word mode. If flag is &x0 unrecognised words are spoken letter by
       letter. If flag is &x8 unrecognised words are ignored and the call
       is passed to the vector at &0230.

Jgharston 01:33, 19 December 2010 (UTC) Jgharston (talk) 22:55, 28 March 2015 (UTC)