+void CheckSend(CCBPtr);
+
+struct qlink {
+ struct qlink *qlinkp;
+};
+
+int qAddToEnd(struct qlink **, struct qlink *);
+
+void adspioc_ack(int, gbuf_t *, gref_t *);
+int CalcRecvWdw(CCBPtr);
+int calcRecvQ(CCBPtr);
+int CalcSendQFree(CCBPtr);
+int adsp_sendddp(CCBPtr, gbuf_t *, int, AddrUnion *, int);
+int CheckReadQueue(CCBPtr);
+int CheckOkToClose(CCBPtr);
+
+int RXData(CCBPtr, gbuf_t *, ADSP_FRAMEPtr, int);
+int RXFResetAck(CCBPtr, ADSP_FRAMEPtr);
+int RxClose(CCBPtr);
+void CheckRecvSeq(CCBPtr, ADSP_FRAMEPtr);
+int RXFReset(CCBPtr, ADSP_FRAMEPtr);
+int RXAttention(CCBPtr, gbuf_t *, ADSP_FRAMEPtr, int);
+CCBPtr FindSender(ADSP_FRAMEPtr, AddrUnion);
+void DoClose(CCBPtr, int, int);
+void completepb(CCBPtr, struct adspcmd *);
+int adspReadAttention(CCBPtr, struct adspcmd *);
+int adspMode(struct adspcmd *);
+int CompleteQueue(struct adspcmd **, int);
+
+void CleanupGlobals(void);
+void InitGlobals(void);
+void TimerStop(void);
+void TimerTick(void);
+
+void SndMsgUp(gref_t *, gbuf_t *);
+int adspDeassignSocket(CCBPtr);
+unsigned char adspAssignSocket(gref_t *gref, int);
+int adspWriteHandler(gref_t *, gbuf_t *);
+int adspReadHandler(gref_t *, gbuf_t *);
+
+int adsp_wput(gref_t *gref, gbuf_t *m);
+int adspRelease(gref_t *);
+int adsp_close(gref_t *);
+int adspAllocateCCB(gref_t *);
+
+void NotifyUser(CCBPtr);
+void UrgentUser(CCBPtr);
+
+unsigned short NextCID(void);
+