mac-rom/OS/NetBoot/ATIncludes/LAPvars2.a
Elliot Nunn 4325cdcc78 Bring in CubeE sources
Resource forks are included only for .rsrc files. These are DeRezzed into their data fork. 'ckid' resources, from the Projector VCS, are not included.

The Tools directory, containing mostly junk, is also excluded.
2017-12-26 09:52:23 +08:00

181 lines
8.3 KiB
Plaintext

;
; File: LAPvars2.a
;
; Contains: xxx put contents here (or delete the whole line) xxx
;
; Written by: xxx put name of writer here (or delete the whole line) xxx
;
; Copyright: © 1987-1991 by Apple Computer, Inc., all rights reserved.
;
; Change History (most recent first):
;
; <1> 10/14/91 JSM first checked in
; <1.2> 9/8/89 jhl Phase 2 AppleTalk with final mods and VM rolled in.
; <1.1> 8/11/89 jhl For F19 ROM: Pull Best Router Table vars pointer out of code and
; put into MPP Variables
; <1.0> 6/14/89 WTO Adding AppleTalk 2.0 for first time.
; <2.0d1> 9/6/88 KEL - AppleTalk 2.0. Removed most conditionals.
; <1.2> 1/19/88 SJF Activate/Deactivate ports
; <1.1> 1/7/88 SJF 51d2
; <1.0> 12/23/87 BBM Converted appletalk sources to new build process.
;
;
;EASE$$$ READ ONLY COPY of file ÒLAPvars2.aÓ
; 1.2 jhl 09/08/1989 Phase 2 AppleTalk with final mods and VM rolled in.
; 1.1 jhl 08/11/1989 For F19 ROM: Pull Best Router Table vars pointer out of
; code and put into MPP Variables
; 1.0 WTO 06/14/1989 Adding AppleTalk 2.0 for first time.
; END EASE MODIFICATION HISTORY
;-----------=-----------=-------------------------------=---------------------------------------
;
; 2.0d1 06 Sep 88 KEL - AppleTalk 2.0. Removed most conditionals.
;
;-----------=-----------=-------------------------------=---------------------------------------
;EASE$$$ READ ONLY COPY of file LAPvars.a
; 1.2 SJF 1/19/88 Activate/Deactivate ports
; 1.1 SJF 1/7/88 51d2
; 1.0 BBM 12/23/87 Converted appletalk sources to new build process.
; END EASE MODIFICATION HISTORY
;-----------=-----------=-------------------------------=---------------------------------------
;
; LAP variables
;
IF ATLK THEN
WDSPtr EQU OurVars.MPPVarsEnd ; (4) WDS pointer saved here on writes
ELSE
WDSPtr EQU MPPVarsEnd ; (4) WDS pointer saved here on writes
ENDIF
LAPWrtRtn EQU WDSPtr+4 ; (4) LAP write return address saved here
RandomSeed EQU LAPWrtRtn+4 ; (2) Seed for random number generator
DestNode EQU RandomSeed+2 ; (1) Destination node saved here on writes
fLAPAdrValid EQU DestNode+1 ; (1) If node address has been validated
fGoodCTS EQU fLAPAdrValid+1 ; (1) If a valid CTS is received
fAdrInUse EQU fGoodCTS+1 ; (1) If get something from ourselves
fSendENQ EQU fAdrInUse+1 ; (1) Flag to AbusWrite to send ENQ (not data)
VBLDeferCnt EQU fSendENQ+1 ; (1) Count for VBL deferring check
lbackOff EQU VBLDeferCnt+1 ; (1) Local backoff mask for one send
backoff EQU lbackOff+1 ; (1) Global backoff mask
collsnHistory EQU backoff+1 ; (1) Bit history of collisions last 8 sends
deferHistory EQU collsnHistory+1 ; (1) Bit history of defers last 8 sends
deferTries EQU deferHistory+1 ; (1) Local count of defers in one send
collsnTries EQU deferTries+1 ; (1) Local count of collisions in one send
BridgeTime EQU collsnTries+1 ; (1) Timestamp since last router packet
FirstVWord EQU BridgeTime+2 ; Next word boundary is here (EVEN!)
VAbortWait EQU FirstVWord ; (2) Constant for sending abort bits (3.2B)
VRTimeout EQU VAbortWait+2 ; (2) Constant for receive-byte timeouts
VSTimeout EQU VRTimeout+2 ; (2) Constant for send-byte timeout
VDataTO EQU VSTimeout+2 ; (2) CTS-to-data timeout
VGetXXX EQU VDataTO+2 ; (2) Get a frame within 200 usecs
VXmitOn EQU VGetXXX+2 ; (2) Xmitter on to send flags
VRTStoCTS EQU VXmitOn+2 ; (2) Delay from RTS-in to CTS-out
VWait100 EQU VRTStoCTS+2 ; (2) Delay to wait 100 usecs
VFrameWait EQU VWait100+2 ; (2) Delay after incoming frame (49)
VSyncWait EQU VFrameWait+2 ; (2) Delay after sync pulse (49)
VWordsEnd EQU VSyncWait+2 ; End of timing values
SaveA45 EQU VWordsEnd ; (8) A4 and A5 saved here on interrupt
SaveDskRtn EQU SaveA45+8 ; (4) DskRtnAdr saved here for PollProc
SavePS EQU SaveDskRtn+4 ; (4) PollStack saved here for disk driver
SaveBIn EQU SavePS+4 ; (4) .BIN DCE saved here (for close)
SaveBOut EQU SaveBIn+4 ; (4) .BOUT DCE saved here (for close)
SaveVects EQU SaveBOut+4 ; (12) SCC interrupt vectors saved here
SaveRegs EQU SaveVects+12 ; (20) Registers saved here across PollProc
;
; Variables for Lisa/Mac hardware differences
;
VAVBufA EQU SaveRegs+20 ; Pointer to VIA or a $FF word
STLth EQU 6 ; Size of STData area
VSTData EQU VAVBufA+4 ; Data string to SCC after send
VDisTxRTS EQU VSTData+1 ; This is the DisTxRTS byte
;
; Router variables
;
RTMPVars EQU VSTData+STLth ; -> variables for the router
JDDPRoute EQU RTMPVars+4 ; ptr to the router
OurDCE EQU JDDPRoute+4 ; ptr to this driver's DCE
OurPort EQU OurDCE+4 ; our port id (byte)
PortActive EQU OurPort+1 ; active flag (byte)
PrevCtlHook EQU PortActive+1 ; default Appletalk control hook chain
;
; *** Add new (AppleTalk 2.0 and greater) variables here ***
;
RouterAddr EQU PrevCtlHook+4 ; (4) 24-bit DDP addr of last router heard from
Config EQU RouterAddr+4 ; (4) holds driver configuration params
NetHint EQU Config+4 ; (2) current guess for net number
;
; *** These next two variables must be kept contiguous ***
;
CableLo EQU NetHint+2 ; (2) holds lower bound of cable range
; or zero if network not known
CableHi EQU CableLo+2 ; (2) holds upper bound of cable range
CRstart EQU CableHi+2 ; (2) cable range from ZIP NetInfoReply
CRend EQU CRstart+2 ; (2) cable range from ZIP NetInfoReply
MultiCast EQU CRend+2 ; (6) possible multicast address
ZoneValid EQU MultiCast+6 ; (1) true if zone is valid
LinkAdrLen EQU ZoneValid+1 ; (1) length of link's physical address in bytes
NodeTries EQU LinkAdrLen+1 ; (2) number of node ID's we've tried ENQ'ing for
ZoneHint EQU NodeTries+2 ; (34) zone name hint
UserATLK EQU ZoneHint+34 ; (4) ptr to user ATLK
ZIPlstner EQU UserATLK+4 ; (4) ptr to workstation ZIP listener
ZIPBufPtr EQU ZIPlstner+4 ; (4) ptr to ZIP data structures
ZInUseFlgs EQU ZIPBufPtr+4 ; (2) holds flags for use by ZIP
;
; NOTE: The next two variables MUST be kept together! They are init'd by .MPP Open routine
;
JTrap EQU ZInUseFlgs+2 ; (2) holds JMP Abs.L opcode (to TrapAddr below)
TrapAddr EQU JTrap+2 ; (4) holds the absolute addr of the ROM CmpString routine
BRTdata EQU TrapAddr+4 ; (6) best router last heard from
BRTkey EQU BRTdata+6 ; (2) best router's network number
VBLQEl2 EQU BRTkey+2 ; (14) VBL QEl for BRTkey aging
ZIPQElPtr EQU VBLQEl2+14 ; (4) ptr to active ZChangeZone ioQel
SMZQElPtr EQU ZIPQElPtr+4 ; (4) ptr to ioQel @ csCode for SetMyZone
xSysVersion EQU SMZQElPtr+4 ; (2) system file version returned by _SysEnvirons
BRTptr EQU xSysVersion+2 ; (4) Pointer to Best Router Table Data
BufList EQU BRTptr+4 ; (4) VM buffer list header
WrBuf EQU BufList+4 ; (4) ptr to VM write buffer
NdVM EQU WrBuf+4 ; (2) flag is true if VM running
ioR EQU NdVM+2 ; (2) temp ioResult storage
saveNBPRegs EQU ioR+2 ; (8) temp storage for vital NBP process regs
machineType EQU saveNBPRegs+8 ; (2) machine type word
ABVarsEnd EQU machineType+2 ; End of local variables
;
; *** If we are gathering statistics, the following variables are also needed
;
StatsStart EQU ABVarsEnd
IntCount EQU StatsStart ; receive interrupt count
RcvCount EQU IntCount+4 ; good data packets received
XmitCount EQU RcvCount+4 ; data packets transmitted
CRCCount EQU XmitCount+4 ; bad CRC (all packets)
OVRCount EQU CRCCount+4 ; receive overruns (all packets)
UNDCount EQU OVRCount+4 ; transmit underruns (all packets)
NoHandCnt EQU UNDCount+4 ; No protocol handler for packet
LenErrCnt EQU NoHandCnt+4 ; Packet length does not match header's
BadCount EQU LenErrCnt+4 ; Bad packets seen
CollsnCount EQU BadCount+4 ; Number of assumed collisions
DeferCount EQU CollsnCount+4 ; Number of times deferred to other packets
IdleTOCount EQU DeferCount+4 ; Timed out waiting for end of packet
BadDDP EQU IdleTOCount+4 ; Bad DDP packet
NoDtaCount EQU BadDDP+4 ; No packet seen after RTS in
RandomCTS EQU NoDtaCount+4 ; Unsolicted CTS
StatsEnd EQU RandomCTS+4 ; <StatsLgCnt must be a multiple of 4!!>
StatsLen EQU StatsEnd-StatsStart
StatsLgCnt EQU StatsLen/4
DataSize EQU StatsEnd ; Size of our data with stats