; ****************************************************************************
; **
; **  Name:  ADDR.DEF
; **
; **  Description:
; **     Contains the module definition information of the Address Server
; **     DLL, ADDR.DLL .
; **
; **  Status:  PRELIMINARY
; **
; **  $Log:   S:/tbird/arcppc/addr/addr.dev  $
; ** 
; **    Rev 1.0   17 Jan 1997 09:00:30   kevin
; ** Initial revision.
; ** 
; **    Rev 1.0   03 Jun 1996 11:10:40   gene
; ** Initial revision.
; ** 
; **    Rev 1.0   07 Sep 1995 09:57:10   gene
; ** Initial revision.
; ** 
; **    Rev 1.34   22 Apr 1994 15:41:58   marilyn
; ** Added MEM.MemSwapBytesInLong to imports.
; ** 
; **    Rev 1.33   08 Apr 1994 14:52:52   nghia
; ** Added AdrDoPhysicalRangesOverlap to export list.
; ** 
; **    Rev 1.32   06 Apr 1994 16:36:38   nghia
; ** Added new export functions: AdrSetCurrentAddrSpace() and AdrMaskAddrMSB().
; ** 
; **    Rev 1.31   22 Mar 1994 10:44:22   marilyn
; ** Updated for x86 addressing support.
; ** 
; **    Rev 1.30   28 Feb 1994 17:10:28   marilyn
; ** Updated for intel support.  Some routines transfered from proc server.
; ** 
; **    Rev 1.29   25 May 1993 11:50:18   ernie
; ** Now using MemReadSizedNoAlloc() instead of MemReadSIzed().
; ** 
; **    Rev 1.28   31 Mar 1993 07:51:50   doug
; ** Merge subtrace from underflow change
; ** 
; **    Rev 1.27   18 Dec 1992 18:24:46   brucea
; ** Added: SYMBL.SymCalcSymbolOffset
; ** 
; **    Rev 1.26   15 Dec 1992 13:01:30   ernie
; ** Converted from old MemRead call to new MemReadSized
; ** 
; **    Rev 1.25   03 Dec 1992 07:32:36   brucea
; ** Added inport: SymGetSymbolAddress
; ** 
; **    Rev 1.24   15 Oct 1992 18:37:42   brucea
; ** Removed: ProcReturnMaxAddress, ProcReturnAddrCount
; ** Added: ProcReturnMaxOutputAddrDigits
; ** 
; **    Rev 1.23   31 Aug 1992 09:20:14   brucea
; ** Added: AdrGetAllocCounts for debug purposes
; ** 
; **    Rev 1.22   25 Aug 1992 10:49:38   brucea
; ** Added export: AdrIsValidCodeAddress
; ** Added import: PROC.ProcReturnBytesPerInstr
; ** 
; **    Rev 1.21   18 Aug 1992 18:16:36   brucea
; ** Added: AdrDoRangesOverlap, AdrConvAddressToTextWithParams, AdrCliDebug
; ** 
; **    Rev 1.20   14 Aug 1992 17:45:30   brucea
; ** Added to import list: PROC.ProcReturnMaxInputAddress and ..OutputAddress
; ** 
; **    Rev 1.19   27 Jul 1992 22:41:52   brucea
; ** Removed: AdrGetLogicalEqualsPhysicalFlag, AdrIsAddrRangeEqual
; ** Changed: numbering of LibMain and InitCServer
; ** 
; **    Rev 1.18   27 Jul 1992 20:21:32   brucea
; ** Renumbered: InitCServer
; ** Added to import list: PROC.ProcReturnAddrCount
; ** 
; **    Rev 1.17   23 Jul 1992 09:34:22   brucea
; ** Removed: AdrSetLogicalEqualsPhysicalFlag
; ** Added import: ProcReturnProcFamily
; ** 
; **    Rev 1.16   19 Jul 1992 22:20:06   brucea
; ** Removed: physical-to-logical translation functions
; ** Added: 3 symbol function calls:
; **    SymGetSymbolName, SymMapAddr2Symbol, SymMapAddr2LinenumStmt
; **  and 3 PROC calls:
; **    ProcReturnByteOrder, ProcReturnLogicalEqualsPhysical,
; **    ProcReturnMaxAddress
; ** 
; **    Rev 1.15   15 Jun 1992 09:42:16   brucea
; ** Removed: SDSERVER imports that were no longer being called
; **          SYMBL      "
; ** 
; **    Rev 1.14   15 May 1992 15:46:42   brucea
; ** Removed Exports: AddrGetPhysical, AddrTranslateMode
; ** Added Imports: error text functions
; ** 
; **    Rev 1.13   11 May 1992 11:27:14   brucea
; ** Added: AdrCopyAddress
; ** 
; **    Rev 1.12   20 Apr 1992 11:32:38   brucea
; ** Import: SymGetAddrFromName
; ** Added: RESIDENTNAME to WEP
; ** 
; **    Rev 1.11   19 Mar 1992 16:53:10   brucea
; ** Added Export: AdrIsAddrInRange
; ** 
; **    Rev 1.10   02 Mar 1992 13:48:22   brucea
; ** Changed: MEMORY. to MEM.
; ** 
; **    Rev 1.9   28 Feb 1992 15:26:22   brucea
; ** Removed: imports from cpu server
; ** 
; **    Rev 1.8   27 Feb 1992 22:23:32   brucea
; ** Added: AdrGetEndianType and changed @numbers
; ** 
; **    Rev 1.7   30 Jan 1992 19:04:32   brucea
; ** Added the new functions to EXPORT list, added newly used functions to
; **    IMPORT list
; ** 
; **    Rev 1.6   24 Jan 1992 10:49:34   doug
; ** add TFree since TMalloc/TFree now being used instead of GlobalAlloc/Free
; ** in addr.c
; ** 
; **    Rev 1.5   21 Jan 1992 15:29:56   doug
; ** Added CLI entry points.
; ** 
; **    Rev 1.4   21 Jan 1992 13:14:06   doug
; ** added the interface for the CLI to issue commands
; ** 
; **    Rev 1.3   21 Jan 1992 11:06:16   courtney
; ** Added TMalloc from Malloc DLL to import list.
; ** 
; **    Rev 1.2   18 Jan 1992 13:20:24   courtney
; ** Revised LIBRARY name to ADDR (from ENLIB), added LibMain to export
; ** list, revised symbas imports to reflect name change to symbl.
; ** 
; **    Rev 1.1   14 Jan 1992 12:05:40   tom
; ** New revision from Hsinchu.
; ** 
; **  $Header:   S:/tbird/arcppc/addr/addr.dev   1.0   17 Jan 1997 09:00:30   kevin  $
; **
; **  Copyright (C) 1991 Microtek International.  All rights reserved.
; **
; **************************************************************************/
LIBRARY      ADDR
DESCRIPTION  'TBird Address Server'
EXETYPE      WINDOWS
STUB         'WINSTUB.EXE'
CODE         PRELOAD MOVEABLE DISCARDABLE
DATA         PRELOAD MOVEABLE SINGLE
HEAPSIZE     1024

EXPORTS      WEP                                @1        RESIDENTNAME
             AdrInitAddressServer               @2 
             AdrCreateAddress                   @3 
             AdrCreateAddresswithType           @4 
             AdrDestroyAddress                  @5 
             AdrSetAddrType                     @6 
             AdrGetAddrType                     @7 
             AdrSetAddrMode                     @8 
             AdrGetAddrMode                     @9 
             AdrSetAddrSpace                    @10
             AdrGetAddrSpace                    @11
             AdrSetAddrSymbolUsage              @12
             AdrGetAddrSymbolUsage              @13
             AdrConvAddressToText               @14
             AdrGetAddressToTextLength          @15
             AdrConvAddressToTextNoFill         @16
             AdrConvTextToAddress               @17
             AdrAddToAddress                    @18
             AdrSubtractFromAddress             @19
             AdrCompareAddresses                @20
             AdrRangeOfAddresses                @21
             AdrIsAddrInRange                   @22
             AdrRemainingBytes                  @23
             AdrCopyAddress                     @24
             AdrDuplicateAddress                @25
             AdrConvertPointerToAddress         @26
             AdrSetRangeActive                  @27
             AdrGetRangeActive                  @28
             AdrSetEndAddrOffset                @29
             AdrGetEndAddrOffset                @30
             AdrSetAddrRangeLength              @31
             AdrGetAddrRangeLength              @32
             AdrSetAddrOffset                   @33
             AdrGetAddrOffset                   @34
             AdrIsAddrRangeEqual                @35
             AdrDoRangesOverlap                 @36
             LibMain                            @37
             InitCServer                        @38
             AdrCliDebug                        @39
             AdrConvAddressToTextWithParams     @40
             AdrIsValidCodeAddress              @41
             AdrGetAllocCounts                  @42
             AdrSubtractFromAddressUnderflow    @43
             AdrGetMaxInputAddrOffset           @44
             AdrGetMaxOutputAddrOffset          @45
             AdrGetMaxInputAddrDigits           @46
             AdrGetMaxOutputAddrDigits          @47
             AdrConvertAddress                  @48
             AdrCreateAddressFromText           @49
             AdrTranslateSpace                  @50
             AdrReturnSpaces                    @51
             AdrCliXlt                          @52
             AdrAreAddrsIdentical               @53
             AdrAddAddressTogether              @54
             AdrComparePhysicalAddresses        @55
             AdrAdjustRange                     @56
             AdrCliPmode                        @57
             AdrCliInit                         @58
             AdrGetDefaultSize                  @59
             AdrSubtractAddresses               @60
             AdrConvAddrRangeToText             @61
             AdrGetSpaceStr                     @62
             AdrSetLdtSelector                  @63
             AdrGetLdtSelector                  @64
             AdrRemainingBytesInRange           @65
             AdrGetAddrSegmentSelector          @66
             AdrSetAddrSegmentSelector          @67
             AdrGetPmode                        @68
             AdrSetCurrentAddrSpace             @69
             AdrMaskAddrMSB                     @70   
             AdrDoPhysicalRangesOverlap         @71
IMPORTS
             SYMBL.SymGetAddrFromName
             SYMBL.SymGetSymbolName
             SYMBL.SymGetSymbolAddress
             SYMBL.SymMapAddr2Symbol
             SYMBL.SymMapAddr2LinenumStmt
             SYMBL.SymCalcSymbolOffset

             MALLOC.TMalloc
             MALLOC.TFree

             MEM.MemReadSizedNoAlloc
             MEM.MemSwapBytesInWord
             MEM.MemSwapWordsInLong
             MEM.MemSwapBytesInLong

             ENLIB.EnlRegister

             ERRTEXT.ErrInitDLL
             ERRTEXT.ErrDisplayError

             PROC.ProcReturnByteOrder
             PROC.ProcReturnProcFamily
             PROC.ProcReturnBytesPerInstr
             PROC.ProcReturnCpu
             PROC.ProcReturnSpecificProcessor

             SDSERVER.SdnReadMember
             SDSERVER.SdnRegister

             CPU.CpuFindRegisterId
             CPU.CpuGetRegisterValueText
             CPU.CpuGetRegister

; /******************************** E O F ***********************************/
