Files
oldlinux-files/docs/interrupts/int-html/rb-5400.htm
2024-02-19 00:23:35 -05:00

372 lines
17 KiB
HTML

<HTML>
<HEAD>
<TITLE>Int 2F/AX=C502h
</TITLE>
<META NAME="Description" CONTENT="
Int 2F/AX=C502h - PC-DOS Econet v1.05 - PERFORM NETWORK OPERATION -
AX = C502h
DS:DX - control block (see #03036)
Return: AX = return code (see #03037) (same as returned in control block)
Note: the interrupt-enable state will be preserved, but interrupts may be
enabled during processing of this function
SeeAlso: AX=C500h
Format of Econet control block:
Offset Size Description (Table 03036)
00h DWORD - command block (see #03038)
">
<META NAME="robots" CONTENT="none">
</HEAD>
<BODY BGCOLOR="#FFD0A0">
<center>
<h2>Int 2F/AX=C502h
</h2>
</center><p>
<table border=1 cellpadding=3 cellspacing=1>
<td>
<a href="rb-5399.htm" tppabs="http://www.ctyme.com/intr/rb-5399.htm">
<img src="lup.gif" tppabs="http://graphics.ctyme.com/gif/lup.gif" border=0 alt=Prev></a>
<a href="rb-5401.htm" tppabs="http://www.ctyme.com/intr/rb-5401.htm">
<img src="ldown.gif" tppabs="http://graphics.ctyme.com/gif/ldown.gif" border=0 alt=Next></a>
<a href="javascript:if(confirm('http://www.ctyme.com/rbrown.htm \n\nThis file was not retrieved by Teleport Pro, because it is addressed on a domain or path outside the boundaries set for its Starting Address. \n\nDo you want to open it from the server?'))window.location='http://www.ctyme.com/rbrown.htm'" tppabs="http://www.ctyme.com/rbrown.htm">
<img src="lhome.gif" tppabs="http://graphics.ctyme.com/gif/lhome.gif" border=0 alt=Ralf Brown Page></a>
<td><a href="int.htm" tppabs="http://www.ctyme.com/intr/int.htm">Interrups</a></td>
<td><a href="cat.htm" tppabs="http://www.ctyme.com/intr/cat.htm">Categories</a></td>
<td><a href="alpha.htm" tppabs="http://www.ctyme.com/intr/alpha.htm">Contents</a></td>
</td></table><p>
<p><img src="rbline.gif" tppabs="http://graphics.ctyme.com/gif/rbline.gif" width="100%" alt="------"><p>
<h3><font color=#C00040>PC-DOS Econet v1.05 - PERFORM NETWORK OPERATION</font></h3>
<PRE>
AX = C502h
DS:DX -> control block <a href="rb-5400.htm#Table3036" tppabs="http://www.ctyme.com/intr/rb-5400.htm#Table3036">(see #03036)</a><br>
<p><b>Return:</b><br>AX = return code (see #03037) (same as returned in control block)
</PRE>
<p><b>Note:</b>
The interrupt-enable state will be preserved, but interrupts may be
enabled during processing of this function
<p><b>See Also:</b>
<a href="rb-5398.htm" tppabs="http://www.ctyme.com/intr/rb-5398.htm">AX=C500h</a>
<PRE>
<p>
Format of Econet control block:
<a name=table3036></a>
Offset Size Description (Table 03036)
00h DWORD -> command block <a href="rb-5400.htm#Table3038" tppabs="http://www.ctyme.com/intr/rb-5400.htm#Table3038">(see #03038)</a>
04h WORD length of transmit data block
06h DWORD -> transmit data block
0Ah WORD length of reply block (set to 0000h prior to call)
0Ch DWORD -> reply block
10h WORD return code (set to 0000h prior to call) <a href="rb-5400.htm#Table3037" tppabs="http://www.ctyme.com/intr/rb-5400.htm#Table3037">(see #03037)</a>
12h DWORD reserved for Econet use
<p>
<a name=table3037></a>
(Table 03037)
Values for Econet return code:
0000h successful
0001h bad command in command block
0002h no handles left
0003h bad handle
0004h bad argument in command
0005h buffer too small
0006h kill condition failed
0007h control block in use
007Fh command aborted
01xxh retryable board error XXh
02xxh fatal board error XXh
0300h invalid subfunction number in AL
0301h timeout
03xxh other driver errors
</PRE>
<p><b>See Also:</b>
#03036
<PRE>
<p>
Format of Econet command block:
<a name=table3038></a>
Offset Size Description (Table 03038)
00h BYTE command code <a href="rb-5400.htm#Table3039" tppabs="http://www.ctyme.com/intr/rb-5400.htm#Table3039">(see #03039)</a>
---command 00h---
01h BYTE direction (00h = read initialization data, 01h = set init data)
02h WORD "TxCB" transmit control block size
04h WORD "RxCB" receive control block size
</PRE>
<p><b>Notes:</b>
TxCB and RxCB are always the same size in v1.05,
permitting any CB to be used for either receive
or transmit
this command should not be used by applications to
set the buffer sizes
06h 6 BYTEs padding (0)
---command 01h---
01h BYTE port number (00h = receive on all ports)
if the RxCB is opened for RPC, the port number indicates the
allowable RPC <a href="rb-5400.htm#Table3040" tppabs="http://www.ctyme.com/intr/rb-5400.htm#Table3040">(see #03040)</a>
02h WORD station number (FEFFh = broadcast)
04h BYTE RPC flags
<PRE>
<p><b>bit 7:</b><br>CB is open for RPCs only
<p><b>bit 6:</b><br>Restrict to RPC number given in next field
05h WORD RPC number
07h BYTE timeout in 1/2-second units (00h = never)
if a timeout occurs, the RxCB can still receive data, and may
generate another event after the timeout unless it is
explicitly killed
08h 4 BYTEs padding (0)
---command 02h---
01h BYTE control byte
02h BYTE port number
03h WORD station number
05h BYTE number of retries
06h WORD length of data to be sent (bits 14-0), 0000h allowed
if bit 15 is set, no data will be transferred, but this field
will be updated (needed for peeking)
08h DWORD -> destination address on remote machine
---command 03h---
01h BYTE Control Block Handle
FEh first filled-in RxCB
FFh first TxCB which has been sent
02h 10 BYTEs padding (0)
---command 04h---
01h BYTE Control Block Handle
02h BYTE kill condition
00h always
01h kill only if bit7 of control byte is clear
81h kill only if bit7 of control byte is set
03h 9 BYTEs padding (0)
</PRE>
<p><b>Notes:</b>
Control blocks are not freed until explicitly killed
because all TxCBs for a given destination are stored
on a separate subchain, it is necessary to kill all
failed TxCBs to a given destination before any new
ones are opened to that destination
---command 06h---
01h BYTE Control Block Handle
02h WORD starting byte within CB to read
04h WORD number of bytes
if 0000h or greater than remaining bytes in CB, return all
bytes from starting byte to end of CB
06h 6 BYTEs padding (0)
---command 07h---
01h BYTE subfunction
00h-0Fh get/set M/C type (bit N=1 indicates to set byte N)
four data bytes
10h get station number
11h set station number
12h get Tx pause in 5ms units (default 20)
13h set Tx pause
14h get software version numbers
16h get event enable mask
17h set event enable mask
18h get number of non-volatile bytes available
80h+2N get non-volatile byte N
81h+2N set non-volatile byte N
02h var new data
<p><b>Note:</b>
All command blocks should be padded to twelve bytes with zeros if
needed
<p><b>See Also:</b>
#03036
<PRE>
<p>
<a name=table3039></a>
(Table 03039)
Values for Econet command code:
00h initialize
01h open receive
02h open transmit
03h poll
04h kill
06h read
07h get/set system parameters
</PRE>
<p><b>See Also:</b>
#03038
<PRE>
<p>
<a name=table3040></a>
(Table 03040)
Values for Econet RPC type:
00h all
81h peek
82h poke
83h remote JSR
84h remote procedure call
85h OS procedure
86h Halt
87h Continue
</PRE>
<p><b>See Also:</b>
#03038
<PRE>
<p>
Format of Econet Reply Block (command 00h):
<a name=table3041></a>
Offset Size Description (Table 03041)
00h WORD TxCB size (default is 0500h, the maximum Econet packet length)
02h WORD RxCB size
04h BYTE number of TxCBs allocated
05h BYTE number of RxCBs allocated
</PRE>
<p><b>See Also:</b>
#03036 - #03042 - #03044
<PRE>
<p>
Format of Econet Reply Block (commands 01h,02h):
<a name=table3042></a>
Offset Size Description (Table 03042)
00h BYTE control block handle
</PRE>
<p><b>See Also:</b>
#03036 - #03041 - #03045
<PRE>
<p>
Format of Econet Reply Block (command 03h):
<a name=table3043></a>
Offset Size Description (Table 03043)
00h BYTE CB number (when wildcard specified for poll)
01h BYTE control
(RxCB) 00h until received, then Sent Control byte
(TxCB) transmit status
<p><b>bit 7:</b><br>Transmission pending
<p><b>bit 6:</b><br>Transmission failed
<p><b>bits 3-0:</b><br>Error number
02h BYTE Port number
03h WORD station number
05h WORD length
07h WORD 0000h
</PRE>
<p><b>See Also:</b>
#03036 - #03041 - #03044
<PRE>
<p>
Format of Econet Reply Block (command 06h):
<a name=table3044></a>
Offset Size Description (Table 03044)
00h N BYTEs data read from network
</PRE>
<p><b>See Also:</b>
#03036 - #03043 - #03045
<PRE>
<p>
Format of Econet Reply Block (command 07h):
<a name=table3045></a>
Offset Size Description (Table 03045)
00h N BYTEs returned information
</PRE>
<p><b>See Also:</b>
#03036 - #03044
<p>
<b>Category: <a href="cat-027.htm" tppabs="http://www.ctyme.com/intr/cat-027.htm">
Network</a>
- <a href="int-2f-1.htm" tppabs="http://www.ctyme.com/intr/int-2F.htm">
Int 2Fh</a>
- <a href="alpha-p.htm" tppabs="http://www.ctyme.com/intr/alpha-p.htm">
P</a>
</b><p><p><img src="rbline.gif" tppabs="http://graphics.ctyme.com/gif/rbline.gif" width="100%" alt="------"><p>
<table border=1 cellpadding=3 cellspacing=1>
<td>
<a href="rb-5399.htm" tppabs="http://www.ctyme.com/intr/rb-5399.htm">
<img src="lup.gif" tppabs="http://graphics.ctyme.com/gif/lup.gif" border=0 alt=Prev></a>
<a href="rb-5401.htm" tppabs="http://www.ctyme.com/intr/rb-5401.htm">
<img src="ldown.gif" tppabs="http://graphics.ctyme.com/gif/ldown.gif" border=0 alt=Next></a>
<a href="javascript:if(confirm('http://www.ctyme.com/rbrown.htm \n\nThis file was not retrieved by Teleport Pro, because it is addressed on a domain or path outside the boundaries set for its Starting Address. \n\nDo you want to open it from the server?'))window.location='http://www.ctyme.com/rbrown.htm'" tppabs="http://www.ctyme.com/rbrown.htm">
<img src="lhome.gif" tppabs="http://graphics.ctyme.com/gif/lhome.gif" border=0 alt=Ralf Brown Page></a>
<td><a href="int.htm" tppabs="http://www.ctyme.com/intr/int.htm">Interrups</a></td>
<td><a href="cat.htm" tppabs="http://www.ctyme.com/intr/cat.htm">Categories</a></td>
<td><a href="alpha.htm" tppabs="http://www.ctyme.com/intr/alpha.htm">Contents</a></td>
</td></table><p>
<!-- Bottom Link Start -->
<center>
<p><table border=1 bgcolor="#ffff99"><tr><td>
<table border=0 height=80>
<tr align=center><td width="65">
<a href="javascript:if(confirm('http://www.ctyme.com/sponsor.htm \n\nThis file was not retrieved by Teleport Pro, because it is addressed on a domain or path outside the boundaries set for its Starting Address. \n\nDo you want to open it from the server?'))window.location='http://www.ctyme.com/sponsor.htm'" tppabs="http://www.ctyme.com/sponsor.htm">
<img src="tip.gif" tppabs="http://graphics.ctyme.com/gif/tip.gif" ALT="Sponsors" height="40" width="40"></a>
<br><a href="javascript:if(confirm('http://www.ctyme.com/sponsor.htm \n\nThis file was not retrieved by Teleport Pro, because it is addressed on a domain or path outside the boundaries set for its Starting Address. \n\nDo you want to open it from the server?'))window.location='http://www.ctyme.com/sponsor.htm'" tppabs="http://www.ctyme.com/sponsor.htm">Shopping</a>
</td><td width="65">
<a href="javascript:if(confirm('http://talk.ctyme.com/webx.cgi?13@@.ee6b2be \n\nThis file was not retrieved by Teleport Pro, because it is addressed on a domain or path outside the boundaries set for its Starting Address. \n\nDo you want to open it from the server?'))window.location='http://talk.ctyme.com/webx.cgi?13@@.ee6b2be'" tppabs="http://talk.ctyme.com/webx.cgi?13@@.ee6b2be">
<img src="comment.gif" tppabs="http://graphics.ctyme.com/gif/comment.gif" ALT="Forum" height="40" width="40"></a>
<br><a href="javascript:if(confirm('http://talk.ctyme.com/webx.cgi?13@@.ee6b2be \n\nThis file was not retrieved by Teleport Pro, because it is addressed on a domain or path outside the boundaries set for its Starting Address. \n\nDo you want to open it from the server?'))window.location='http://talk.ctyme.com/webx.cgi?13@@.ee6b2be'" tppabs="http://talk.ctyme.com/webx.cgi?13@@.ee6b2be">Forum</a>
</td><td width="65">
<a href="javascript:if(confirm('http://www.ctyme.com/mail.htm \n\nThis file was not retrieved by Teleport Pro, because it is addressed on a domain or path outside the boundaries set for its Starting Address. \n\nDo you want to open it from the server?'))window.location='http://www.ctyme.com/mail.htm'" tppabs="http://www.ctyme.com/mail.htm">
<img src="mail.gif" tppabs="http://graphics.ctyme.com/gif/mail.gif" ALT="email" height="40" width="40"></a>
<br><a href="javascript:if(confirm('http://www.ctyme.com/mail.htm \n\nThis file was not retrieved by Teleport Pro, because it is addressed on a domain or path outside the boundaries set for its Starting Address. \n\nDo you want to open it from the server?'))window.location='http://www.ctyme.com/mail.htm'" tppabs="http://www.ctyme.com/mail.htm">EMail</a>
</td><td width="65">
<a href="javascript:if(confirm('http://www.ctyme.com/map.htm \n\nThis file was not retrieved by Teleport Pro, because it is addressed on a domain or path outside the boundaries set for its Starting Address. \n\nDo you want to open it from the server?'))window.location='http://www.ctyme.com/map.htm'" tppabs="http://www.ctyme.com/map.htm">
<img src="toc.gif" tppabs="http://graphics.ctyme.com/gif/toc.gif" ALT="Index" height="40" width="40"></a>
<br><a href="javascript:if(confirm('http://www.ctyme.com/map.htm \n\nThis file was not retrieved by Teleport Pro, because it is addressed on a domain or path outside the boundaries set for its Starting Address. \n\nDo you want to open it from the server?'))window.location='http://www.ctyme.com/map.htm'" tppabs="http://www.ctyme.com/map.htm">Index</a>
</td><td width="65">
<a href="javascript:if(confirm('http://www.ctyme.com/ \n\nThis file was not retrieved by Teleport Pro, because it is addressed on a domain or path outside the boundaries set for its Starting Address. \n\nDo you want to open it from the server?'))window.location='http://www.ctyme.com/'" tppabs="http://www.ctyme.com/">
<img src="home.gif" tppabs="http://graphics.ctyme.com/gif/home.gif" ALT="Home" height="40" width="40"></a>
<br><a href="javascript:if(confirm('http://www.ctyme.com/ \n\nThis file was not retrieved by Teleport Pro, because it is addressed on a domain or path outside the boundaries set for its Starting Address. \n\nDo you want to open it from the server?'))window.location='http://www.ctyme.com/'" tppabs="http://www.ctyme.com/">Home</a>
</td><td width="90">
<center>
<FORM ACTION="https://secure.paypal.com/cgi-bin/webscr" tppabs="https://secure.paypal.com/cgi-bin/webscr" METHOD="POST" traget="_blank">
<INPUT TYPE="hidden" NAME="cmd" VALUE="_xclick">
<INPUT TYPE="hidden" NAME="business" VALUE="marc@perkel.com">
<INPUT TYPE="hidden" NAME="return" VALUE="http://www.perkel.com">
<INPUT TYPE="hidden" NAME="item_name" VALUE="Donation To Support this Site">
<INPUT TYPE="hidden" NAME="no_intl" VALUE="1">
<INPUT TYPE="image" SRC="x-click-but7.gif" tppabs="http://images.paypal.com/images/x-click-but7.gif" vspace=9
NAME="submit" ALT="Make payments with PayPal - it's fast, free and secure!">
</FORM>
</td></tr></table></td></tr></table><p>
<center>
<p>
<a href="javascript:if(confirm('http://www.ctyme.com/hosting/index.htm \n\nThis file was not retrieved by Teleport Pro, because it is addressed on a domain or path outside the boundaries set for its Starting Address. \n\nDo you want to open it from the server?'))window.location='http://www.ctyme.com/hosting/index.htm'" tppabs="http://www.ctyme.com/hosting/index.htm" target="_blank">
<img src="ctymehost.gif" tppabs="http://graphics.ctyme.com/gif/ctymehost.gif"
border=3 height=60 width=468></a>
<p>
<!-- Ad End --->
</center>
<FORM ACTION="http://service.bfast.com/bfast/click" target="_blank">
<INPUT TYPE="hidden" NAME="siteid" VALUE="30472466" >
<INPUT TYPE="hidden" NAME="bfpage" VALUE="horizontal">
<INPUT TYPE="hidden" NAME="bfmid" VALUE="27253343" >
<INPUT TYPE="hidden" NAME="num" VALUE="30">
<table bgcolor=white border=3><tr><td>
<table bgcolor=white border=0>
<tr><td>
<IMG SRC="serve-bfmid=27253343&siteid=30472466&bfpage=horizontal.gif" tppabs="http://service.bfast.com/bfast/serve?bfmid=27253343&siteid=30472466&bfpage=horizontal" BORDER="0" WIDTH="1" HEIGHT="1" align=right NOSAVE >
<center><b>Search the web with Google</b></center>
</td></tr><tr><td>
<TABLE cellpadding=0 cellspacing=5 bgcolor="#FFFFFF">
<tr><td bgcolor="#0000cc"><IMG SRC="cleardot.gif" tppabs="http://www.google.com/images/cleardot.gif" height=1 border="0" ALT="Google"></td></tr><tr><td>
<IMG SRC="affiliate_logo.gif" tppabs="http://www.google.com/affiliates/affiliate_logo.gif" border="0" ALT="Google" align="center">
<INPUT TYPE=text name=q size=30 maxlength=255 value="">
<INPUT type=submit name=sa VALUE="Go">
</td></tr>
<tr><td bgcolor="#0000cc"><IMG SRC="cleardot.gif" tppabs="http://www.google.com/images/cleardot.gif" height=1 border="0" ALT="Google"></td></tr></TABLE>
</td></tr></table>
</tr></td></table>
</FORM>
</center>
<p><img src="rbline.gif" tppabs="http://graphics.ctyme.com/gif/rbline.gif" width="100%" alt="------"><p>
<!-- Bottom Link End -->
</BODY>
</HTML>