mirror of
https://github.com/A2osX/A2osX.git
synced 2024-12-26 11:30:07 +00:00
246 lines
6.8 KiB
Plaintext
246 lines
6.8 KiB
Plaintext
PR#3
|
||
PREFIX /A2OSX.SRC
|
||
NEW
|
||
INC 1
|
||
AUTO 6
|
||
.LIST OFF
|
||
.OP 65C02
|
||
*--------------------------------------
|
||
LIBTCPIP.SET.IPCFG .EQ 4
|
||
LIBTCPIP.GET.IPCFG .EQ 6
|
||
|
||
LIBTCPIP.NEW.ICMP.FRAME .EQ 8
|
||
LIBTCPIP.NEW.TCP.FRAME .EQ 10
|
||
LIBTCPIP.NEW.UDP.FRAME .EQ 12
|
||
LIBTCPIP.NEW.IP.FRAME .EQ 14
|
||
LIBTCPIP.NEW.ARP.FRAME .EQ 16
|
||
LIBTCPIP.NEW.ETH.FRAME .EQ 18
|
||
|
||
LIBTCPIP.SEND.ICMP.FRAME .EQ 20
|
||
LIBTCPIP.SEND.TCP.FRAME .EQ 22
|
||
LIBTCPIP.SEND.UDP.FRAME .EQ 24
|
||
LIBTCPIP.SEND.IP.FRAME .EQ 26
|
||
LIBTCPIP.SEND.ARP.FRAME .EQ 28
|
||
LIBTCPIP.SEND.ETH.FRAME .EQ 30
|
||
|
||
LIBTCPIP.ARP.CLEAR .EQ 32
|
||
LIBTCPIP.ARP.QUERY .EQ 34
|
||
LIBTCPIP.ARP.ADD .EQ 36
|
||
LIBTCPIP.ARP.GETCACHE .EQ 38
|
||
|
||
LIBTCPIP.DNS.CLEAR .EQ 40
|
||
LIBTCPIP.DNS.QUERY .EQ 42
|
||
LIBTCPIP.DNS.ADD .EQ 44
|
||
LIBTCPIP.DNS.GETCACHE .EQ 46
|
||
|
||
LIBTCPIP.UDP.LISTENER .EQ 48
|
||
LIBTCPIP.TCP.LISTENER .EQ 50
|
||
LIBTCPIP.ADD.LISTENER .EQ 52
|
||
LIBTCPIP.REM.LISTENER .EQ 54
|
||
*--------------------------------------
|
||
TCP.PORT.TELNETS .EQ 23
|
||
UDP.PORT.DNS .EQ 53
|
||
UDP.PORT.DHCPC .EQ 68
|
||
UDP.PORT.DHCPS .EQ 67
|
||
UDP.PORT.PMAP .EQ 111
|
||
*--------------------------------------
|
||
S.IPCFG.STATUS .EQ 0
|
||
S.IPCFG.STATUS.OFF .EQ %00000000 TCPIP Unconfigured
|
||
S.IPCFG.STATUS.SDISC .EQ %00000001 DISCOVERY Sent
|
||
S.IPCFG.STATUS.ROFFER .EQ %00000010 OFFER Received
|
||
S.IPCFG.STATUS.SREQ .EQ %00000100 REQUEST Sent
|
||
S.IPCFG.STATUS.RACK .EQ %00001000 ACK Received
|
||
S.IPCFG.STATUS.OK .EQ %10000000 Fully configured (static or DHCP)
|
||
S.IPCFG.HDEV .EQ 1
|
||
S.IPCFG.MAC .EQ 2
|
||
S.IPCFG.DHCPSRVR .EQ 8
|
||
S.IPCFG.IP .EQ 12
|
||
S.IPCFG.MASK .EQ 16
|
||
S.IPCFG.GW .EQ 20
|
||
S.IPCFG.DNS .EQ 24 2 x 4
|
||
S.IPCFG.HOSTNAME .EQ 32 1+15 char PSTR
|
||
S.IPCFG.DOMAIN .EQ 48 1+35 char PSTR
|
||
*
|
||
S.IPCFG .EQ K.NETCFG.SIZE
|
||
*--------------------------------------
|
||
S.ARPCACHE.STATUS .EQ 0
|
||
S.ARPCACHE.STATUS.PENDING .EQ 64
|
||
S.ARPCACHE.STATUS.RESOLVED .EQ 128
|
||
S.ARPCACHE.RETRYCNT .EQ 1
|
||
S.ARPCACHE.IP .EQ 2
|
||
S.ARPCACHE.MAC .EQ 6
|
||
*
|
||
S.ARPCACHE .EQ 12
|
||
*--------------------------------------
|
||
S.DNSCACHE.STATUS .EQ 0
|
||
S.DNSCACHE.STATUS.PENDING .EQ 64
|
||
S.DNSCACHE.STATUS.RESOLVED .EQ 128
|
||
S.DNSCACHE.hNAME .EQ 1
|
||
S.DNSCACHE.TYPE .EQ 2
|
||
S.DNSCACHE.TYPE.A .EQ 1
|
||
S.DNSCACHE.TYPE.NS .EQ 2
|
||
S.DNSCACHE.TYPE.CNAME .EQ 5
|
||
S.DNSCACHE.TYPE.SOA .EQ 6
|
||
S.DNSCACHE.TYPE.WKS .EQ 11
|
||
S.DNSCACHE.TYPE.PTR .EQ 12
|
||
S.DNSCACHE.TYPE.MX .EQ 15
|
||
S.DNSCACHE.TYPE.SRV .EQ 33
|
||
S.DNSCACHE.CLASS .EQ 4
|
||
S.DNSCACHE.TTL .EQ 6
|
||
S.DNSCACHE.RDLENGTH .EQ 10
|
||
S.DNSCACHE.RDATA .EQ 12
|
||
S.DNSCACHE.ID .EQ 12 Store Message.Id in cache (pending req.)
|
||
S.DNSCACHE.DYNPORT .EQ 14 Store Dyn.Port in cache (pending req.)
|
||
*
|
||
S.DNSCACHE .EQ 16
|
||
*--------------------------------------
|
||
S.LISTENER.PORT .EQ 0
|
||
S.LISTENER.hPS .EQ 2
|
||
S.LISTENER.fIDX .EQ 3
|
||
S.LISTENER .EQ 4
|
||
*--------------------------------------
|
||
S.ETH.DSTMAC .EQ 0
|
||
S.ETH.SRCMAC .EQ 6
|
||
S.ETH.ETHERTYPE .EQ 6+6
|
||
S.ETH.ETHERTYPE.IP .EQ $800
|
||
S.ETH.ETHERTYPE.ARP .EQ $806
|
||
*
|
||
S.ETH .EQ 6+6+2
|
||
*--------------------------------------
|
||
S.ARP.HTYPE .EQ S.ETH+0 $0001
|
||
S.ARP.PTYPE .EQ S.ETH+2 $0800
|
||
S.ARP.HLEN .EQ S.ETH+4 $06
|
||
S.ARP.PLEN .EQ S.ETH+5 $04
|
||
S.ARP.OPERATION .EQ S.ETH+6 REQ=$0001,REPLY=$0002
|
||
S.ARP.OPERATION.REQ .EQ 1
|
||
S.ARP.OPERATION.REP .EQ 2
|
||
S.ARP.SHA .EQ S.ETH+8 Sender MAC
|
||
S.ARP.SPA .EQ S.ETH+14 Sender IP
|
||
S.ARP.THA .EQ S.ETH+18 Target MAC
|
||
S.ARP.TPA .EQ S.ETH+24 Target IP
|
||
*
|
||
S.ARP .EQ S.ETH+28
|
||
*--------------------------------------
|
||
S.IP.V.IHL.DSCP.ECN .EQ S.ETH+0 $0045, IPV4,HDR=5DWORDs
|
||
S.IP.TOTAL.LENGTH .EQ S.ETH+2
|
||
S.IP.IDENTIFICATION .EQ S.ETH+4 $0000
|
||
S.IP.FRAGMENT.FLAGS .EQ S.ETH+6
|
||
S.IP.TTL .EQ S.ETH+8
|
||
S.IP.PROTOCOL .EQ S.ETH+9
|
||
S.IP.PROTOCOL.ICMP .EQ 1
|
||
S.IP.PROTOCOL.TCP .EQ 6
|
||
S.IP.PROTOCOL.UDP .EQ 17
|
||
S.IP.HDR.CHECKSUM .EQ S.ETH+10
|
||
S.IP.SRC .EQ S.ETH+12
|
||
S.IP.DST .EQ S.ETH+16
|
||
*
|
||
S.IP .EQ S.ETH+20
|
||
*--------------------------------------
|
||
S.ICMP.TYPE .EQ S.IP+0
|
||
S.ICMP.TYPE.ECHOREP .EQ 0
|
||
S.ICMP.TYPE.UNREACH .EQ 3
|
||
S.ICMP.TYPE.ECHOREQ .EQ 8
|
||
S.ICMP.CODE .EQ S.IP+1
|
||
S.ICMP.CHECKSUM .EQ S.IP+2
|
||
S.ICMP.IDENTIFIER .EQ S.IP+4
|
||
S.ICMP.SEQUENCE .EQ S.IP+6
|
||
*
|
||
S.ICMP .EQ S.IP+8
|
||
*--------------------------------------
|
||
S.UDP.SRCPORT .EQ S.IP+0
|
||
S.UDP.DSTPORT .EQ S.IP+2
|
||
S.UDP.LENGTH .EQ S.IP+4
|
||
S.UDP.CHECKSUM .EQ S.IP+6 $0000 = DISABLE
|
||
*
|
||
S.UDP .EQ S.IP+8
|
||
*--------------------------------------
|
||
S.DHCP.OP .EQ S.UDP+0 1 = BOOTREQUEST, 2 = BOOTREPLY
|
||
S.DHCP.OP.BOOTREQUEST .EQ 1
|
||
S.DHCP.OP.BOOTREPLY .EQ 2
|
||
S.DHCP.HTYPE .EQ S.UDP+1 1 = ETHERNET
|
||
S.DHCP.HTYPE.ETHERNET .EQ 1
|
||
S.DHCP.HLEN .EQ S.UDP+2 6 (MAC len)
|
||
S.DHCP.HLEN.ETHERNET .EQ 6
|
||
S.DHCP.HOPS .EQ S.UDP+3 0
|
||
S.DHCP.XID .EQ S.UDP+4 client : random number
|
||
S.DHCP.SECS .EQ S.UDP+8
|
||
S.DHCP.FLAGS .EQ S.UDP+10
|
||
S.DHCP.FLAGS.BRDCST .EQ %10000000
|
||
S.DHCP.CIADDR .EQ S.UDP+12
|
||
S.DHCP.YIADDR .EQ S.UDP+16
|
||
S.DHCP.SIADDR .EQ S.UDP+20
|
||
S.DHCP.GIADDR .EQ S.UDP+24
|
||
S.DHCP.CHADDR .EQ S.UDP+28
|
||
S.DHCP.SNAME .EQ S.UDP+44
|
||
S.DHCP.FILE .EQ S.UDP+108
|
||
S.DHCP.COOKIE .EQ S.UDP+236
|
||
S.DHCP.OPTIONS .EQ S.UDP+240
|
||
S.DHCP.OPTIONS.DHCPDiscover .EQ 1
|
||
S.DHCP.OPTIONS.DHCPOffer .EQ 2
|
||
S.DHCP.OPTIONS.DHCPRequest .EQ 3
|
||
S.DHCP.OPTIONS.DHCPDecline .EQ 4
|
||
S.DHCP.OPTIONS.DHCPAck .EQ 5
|
||
S.DHCP.OPTIONS.DHCPNak .EQ 6
|
||
S.DHCP.OPTIONS.DHCPRelease .EQ 7
|
||
S.DHCP.OPTIONS.DHCPInform .EQ 8
|
||
S.DHCP.OPTIONS.MASK .EQ 1
|
||
S.DHCP.OPTIONS.GW .EQ 3
|
||
S.DHCP.OPTIONS.DNS .EQ 6
|
||
S.DHCP.OPTIONS.DOMAIN .EQ 15
|
||
S.DHCP.OPTIONS.END .EQ 255
|
||
*
|
||
S.DHCP .EQ S.UDP+240
|
||
*--------------------------------------
|
||
S.DNS.ID .EQ S.UDP+0
|
||
S.DNS.F .EQ S.UDP+2
|
||
S.DNS.F.QR .EQ %10000000.00000000
|
||
S.DNS.F.OPCODE.I .EQ %01000000.00000000
|
||
S.DNS.F.OPCODE.S .EQ %00100000.00000000
|
||
S.DNS.F.AA .EQ %00000100.00000000
|
||
S.DNS.F.TC .EQ %00000010.00000000
|
||
S.DNS.F.RD .EQ %00000001.00000000
|
||
S.DNS.F.RA .EQ %00000000.10000000
|
||
S.DNS.F.RCODE.FRMT .EQ %00000000.00000001
|
||
S.DNS.F.RCODE.SRVR .EQ %00000000.00000010
|
||
S.DNS.F.RCODE.UKWN .EQ %00000000.00000011
|
||
S.DNS.F.RCODE.NIMP .EQ %00000000.00000100
|
||
S.DNS.F.RCODE.DENY .EQ %00000000.00000101
|
||
S.DNS.QDCOUNT .EQ S.UDP+4
|
||
S.DNS.ANCOUNT .EQ S.UDP+6
|
||
S.DNS.NSCOUNT .EQ S.UDP+8
|
||
S.DNS.ARCOUNT .EQ S.UDP+10
|
||
*
|
||
S.DNS .EQ S.UDP+12
|
||
*--------------------------------------
|
||
S.DNS.QTYPE.A .EQ 1
|
||
S.DNS.QTYPE.NS .EQ 2
|
||
S.DNS.QTYPE.CNAME .EQ 5
|
||
S.DNS.QTYPE.SOA .EQ 6
|
||
S.DNS.QTYPE.WKS .EQ 11
|
||
S.DNS.QTYPE.PTR .EQ 12
|
||
S.DNS.QTYPE.MX .EQ 15
|
||
S.DNS.QTYPE.SRV .EQ 33
|
||
S.DNS.QTYPE.ANY .EQ 255
|
||
S.DNS.QCLASS.IN .EQ 1
|
||
*--------------------------------------
|
||
S.RPC.XID .EQ S.UDP+0
|
||
S.RPC.C.RPCVERS .EQ S.UDP+4
|
||
S.RPC.C.PROG .EQ S.UDP+8
|
||
S.RPC.C.VERS .EQ S.UDP+12
|
||
S.RPC.C.PROC .EQ S.UDP+16
|
||
S.RPC.C.CRED .EQ S.UDP+20
|
||
S.RPC.C.VERF .EQ S.UDP+24
|
||
*
|
||
S.RPC .EQ 28
|
||
*--------------------------------------
|
||
S.TCP.SRCPORT .EQ S.IP+0
|
||
S.TCP.DSTPORT .EQ S.IP+2
|
||
S.TCP.SEQ.NUMBER .EQ S.IP+4
|
||
S.TCP.ACK.NUMBER .EQ S.IP+8
|
||
*
|
||
S.TCP
|
||
*--------------------------------------
|
||
MAN
|
||
SAVE INC/LIBTCPIP.I
|
||
|