Let MULTC be the multiplexor creator.
MULTC(0;SB,M ==> c;MULT,BSP) "Create Multiplexor"
c is zero if successful, loose end otherwise.
MULT(0; ==> c,(4,mbid);MB) "Create branch"
C is zero if successful, 1 if no more branches are available. In the current implementation, 255 branches are available.
MULT(kt; ==> x'138';)
MB(order code,(ldata,data); ==> c;) "Send data"
.(4,mbid)
.(4,order code)
.(ldata,data)
.(4,ldata+8)
Design note: the length of the data is sent at the end as well as the beginning to facilitate searching backwards through the byte stream.