BL51 BANKED LINKER/LOCATER V5.03                                                        06/15/2006  17:47:33  PAGE 1


BL51 BANKED LINKER/LOCATER V5.03, INVOKED BY:
C:\KEIL\C51\BIN\BL51.EXE STARTUP.obj, xKey.obj, main.obj, delay.obj TO keyMON RAMSIZE (256) CODE (0X0000-0X1FFF)


MEMORY MODEL: SMALL


INPUT MODULES INCLUDED:
  STARTUP.obj (?C_STARTUP)
  xKey.obj (XKEY)
  main.obj (MAIN)
  delay.obj (DELAY)
  C:\KEIL\C51\LIB\C51S.LIB (?C?IMUL)
  C:\KEIL\C51\LIB\C51S.LIB (PRINTF)
  C:\KEIL\C51\LIB\C51S.LIB (?C?CLDPTR)
  C:\KEIL\C51\LIB\C51S.LIB (?C?CLDOPTR)
  C:\KEIL\C51\LIB\C51S.LIB (?C?CSTPTR)
  C:\KEIL\C51\LIB\C51S.LIB (?C?PLDIIDATA)
  C:\KEIL\C51\LIB\C51S.LIB (?C?CCASE)
  C:\KEIL\C51\LIB\C51S.LIB (PUTCHAR)


LINK MAP OF MODULE:  keyMON (?C_STARTUP)


            TYPE    BASE      LENGTH    RELOCATION   SEGMENT NAME
            -----------------------------------------------------

            * * * * * * *   D A T A   M E M O R Y   * * * * * * *
            REG     0000H     0008H     ABSOLUTE     "REG BANK 0"
            DATA    0008H     0014H     UNIT         _DATA_GROUP_
                    001CH     0004H                  *** GAP ***
            BIT     0020H.0   0001H.1   UNIT         _BIT_GROUP_
            BIT     0021H.1   0000H.3   UNIT         ?BI?XKEY
                    0021H.4   0000H.4                *** GAP ***
            DATA    0022H     000BH     UNIT         ?DT?XKEY
            IDATA   002DH     0001H     UNIT         ?STACK

            * * * * * * *   C O D E   M E M O R Y   * * * * * * *
            CODE    0000H     0003H     ABSOLUTE     
                    0003H     07FDH                  *** GAP ***
            CODE    0800H     035CH     UNIT         ?PR?PRINTF?PRINTF
            CODE    0B5CH     00A0H     UNIT         ?C?LIB_CODE
            CODE    0BFCH     0085H     UNIT         ?PR?XKEYSCANTASK?XKEY
            CODE    0C81H     0060H     UNIT         ?PR?MAIN?MAIN
            CODE    0CE1H     0060H     UNIT         ?CO?MAIN
            CODE    0D41H     0027H     UNIT         ?PR?PUTCHAR?PUTCHAR
            CODE    0D68H     0021H     UNIT         ?PR?XKEYDECODE?XKEY
            CODE    0D89H     0020H     UNIT         ?PR?XKEYGETKEY?XKEY
            CODE    0DA9H     0020H     UNIT         ?PR?_DELAYMS?DELAY
            CODE    0DC9H     001EH     UNIT         ?PR?_XKEYBUFIN?XKEY
            CODE    0DE7H     001DH     UNIT         ?PR?XKEYCHECKPINS?XKEY
            CODE    0E04H     0015H     UNIT         ?PR?XKEYHIT?XKEY
            CODE    0E19H     0013H     UNIT         ?PR?XKEYINIT?XKEY
            CODE    0E2CH     0012H     UNIT         ?PR?_DELAYUS?DELAY
            CODE    0E3EH     0010H     UNIT         ?PR?XKEYISKEYDOWN?XKEY
            CODE    0E4EH     000CH     UNIT         ?C_C51STARTUP
            CODE    0E5AH     000CH     UNIT         ?PR?XKEYGETKEYDOWNTIME?XKEY
BL51 BANKED LINKER/LOCATER V5.03                                                      06/15/2006  17:47:33  PAGE 2


            CODE    0E66H     000CH     UNIT         ?PR?UARTINIT?MAIN
            CODE    0E72H     000BH     UNIT         ?PR?XKEYINITPINS?XKEY



OVERLAY MAP OF MODULE:   keyMON (?C_STARTUP)


SEGMENT                                BIT_GROUP          DATA_GROUP 
  +--> CALLED SEGMENT               START    LENGTH     START    LENGTH
-----------------------------------------------------------------------
?C_C51STARTUP                       -----    -----      -----    -----
  +--> ?PR?MAIN?MAIN

?PR?MAIN?MAIN                       -----    -----      -----    -----
  +--> ?PR?XKEYINIT?XKEY
  +--> ?PR?UARTINIT?MAIN
  +--> ?PR?_DELAYMS?DELAY
  +--> ?PR?XKEYSCANTASK?XKEY
  +--> ?PR?XKEYHIT?XKEY
  +--> ?PR?XKEYGETKEY?XKEY
  +--> ?CO?MAIN
  +--> ?PR?PRINTF?PRINTF

?PR?XKEYINIT?XKEY                   -----    -----      -----    -----
  +--> ?PR?XKEYINITPINS?XKEY

?PR?XKEYSCANTASK?XKEY               -----    -----      0008H    0001H
  +--> ?PR?XKEYISKEYDOWN?XKEY
  +--> ?PR?XKEYDECODE?XKEY
  +--> ?PR?_XKEYBUFIN?XKEY

?PR?XKEYISKEYDOWN?XKEY              -----    -----      -----    -----
  +--> ?PR?XKEYCHECKPINS?XKEY

?PR?PRINTF?PRINTF                   0020H.0  0001H.1    0008H    0014H
  +--> ?PR?PUTCHAR?PUTCHAR



SYMBOL TABLE OF MODULE:  keyMON (?C_STARTUP)

  VALUE           TYPE          NAME
  ----------------------------------

  -------         MODULE        ?C_STARTUP
  C:0E4EH         SEGMENT       ?C_C51STARTUP
  I:002DH         SEGMENT       ?STACK
  C:0000H         PUBLIC        ?C_STARTUP
  D:00E0H         SYMBOL        ACC
  D:00F0H         SYMBOL        B
  D:0083H         SYMBOL        DPH
  D:0082H         SYMBOL        DPL
  N:0000H         SYMBOL        IBPSTACK
  N:0100H         SYMBOL        IBPSTACKTOP
  N:0080H         SYMBOL        IDATALEN
  C:0E51H         SYMBOL        IDATALOOP
BL51 BANKED LINKER/LOCATER V5.03                                                      06/15/2006  17:47:33  PAGE 3


  N:0000H         SYMBOL        PBPSTACK
  N:0000H         SYMBOL        PBPSTACKTOP
  N:0000H         SYMBOL        PDATALEN
  N:0000H         SYMBOL        PDATASTART
  N:0000H         SYMBOL        PPAGE
  N:0000H         SYMBOL        PPAGEENABLE
  D:00A0H         SYMBOL        PPAGE_SFR
  D:0081H         SYMBOL        SP
  C:0E4EH         SYMBOL        STARTUP1
  N:0000H         SYMBOL        XBPSTACK
  N:0000H         SYMBOL        XBPSTACKTOP
  N:0000H         SYMBOL        XDATALEN
  N:0000H         SYMBOL        XDATASTART
  C:0000H         LINE#         92
  C:0E4EH         LINE#         99
  C:0E50H         LINE#         100
  C:0E51H         LINE#         101
  C:0E52H         LINE#         102
  C:0E54H         LINE#         151
  C:0E57H         LINE#         155
  -------         ENDMOD        ?C_STARTUP

  -------         MODULE        XKEY
  C:0000H         SYMBOL        _ICE_DUMMY_
  D:0090H         PUBLIC        P1
  D:00B0H         PUBLIC        P3
  B:0021H.3       PUBLIC        xKeyRptEn
  C:0E5AH         PUBLIC        xKeyGetKeyDownTime
  C:0DE7H         PUBLIC        xKeyCheckPins
  C:0E3EH         SYMBOL        xKeyIsKeyDown
  B:00B0H.3       PUBLIC        xKEY_CTR
  D:0022H         SYMBOL        xKeyScanState
  D:0023H         SYMBOL        xKeyRptDlyCtr
  C:0E19H         PUBLIC        xKeyInit
  D:0024H         SYMBOL        xKeyBufInIx
  D:0025H         SYMBOL        xKeyBufOutIx
  C:0BFCH         PUBLIC        xKeyScanTask
  D:0026H         SYMBOL        xKeyBuf
  D:0029H         SYMBOL        xKeyRptStartDlyCtr
  C:0E04H         PUBLIC        xKeyHit
  B:0090H.4       PUBLIC        xKEY_DN
  C:0E72H         PUBLIC        xKeyInitPins
  C:0DC9H         SYMBOL        _xKeyBufIn
  B:0090H.7       PUBLIC        xKEY_LT
  B:0090H.6       PUBLIC        xKEY_UP
  B:0090H.5       PUBLIC        xKEY_RT
  C:0D68H         PUBLIC        xKeyDecode
  D:002AH         SYMBOL        xKeyNRead
  C:0D89H         PUBLIC        xKeyGetKey
  D:002BH         SYMBOL        xKeyDownTmr
  -------         PROC          _XKEYBUFIN
  D:0007H         SYMBOL        keyCode
  C:0DC9H         LINE#         108
  C:0DC9H         LINE#         109
  C:0DC9H         LINE#         110
  C:0DD0H         LINE#         111
  C:0DD2H         LINE#         112
BL51 BANKED LINKER/LOCATER V5.03                                                      06/15/2006  17:47:33  PAGE 4


  C:0DDCH         LINE#         113
  C:0DE3H         LINE#         114
  C:0DE6H         LINE#         115
  C:0DE6H         LINE#         116
  C:0DE6H         LINE#         117
  -------         ENDPROC       _XKEYBUFIN
  -------         PROC          XKEYGETKEY
  -------         DO            
  D:0007H         SYMBOL        keyCode
  -------         ENDDO         
  C:0D89H         LINE#         131
  C:0D89H         LINE#         132
  C:0D89H         LINE#         135
  C:0D90H         LINE#         136
  C:0D92H         LINE#         137
  C:0D99H         LINE#         138
  C:0D9BH         LINE#         139
  C:0DA2H         LINE#         140
  C:0DA5H         LINE#         141
  C:0DA5H         LINE#         142
  C:0DA6H         LINE#         143
  C:0DA6H         LINE#         144
  C:0DA8H         LINE#         145
  C:0DA8H         LINE#         146
  -------         ENDPROC       XKEYGETKEY
  -------         PROC          XKEYGETKEYDOWNTIME
  -------         DO            
  D:0006H         SYMBOL        tmr
  -------         ENDDO         
  C:0E5AH         LINE#         159
  C:0E5AH         LINE#         160
  C:0E5AH         LINE#         163
  C:0E5EH         LINE#         164
  C:0E65H         LINE#         165
  -------         ENDPROC       XKEYGETKEYDOWNTIME
  -------         PROC          XKEYHIT
  -------         DO            
  B:0021H.1       SYMBOL        hit
  -------         ENDDO         
  C:0E04H         LINE#         179
  C:0E04H         LINE#         180
  C:0E04H         LINE#         183
  C:0E16H         LINE#         185
  C:0E18H         LINE#         186
  -------         ENDPROC       XKEYHIT
  -------         PROC          XKEYISKEYDOWN
  C:0E3EH         LINE#         201
  C:0E3EH         LINE#         202
  C:0E3EH         LINE#         203
  C:0E43H         LINE#         204
  C:0E4BH         LINE#         205
  C:0E4CH         LINE#         206
  C:0E4CH         LINE#         207
  C:0E4DH         LINE#         208
  C:0E4DH         LINE#         209
  -------         ENDPROC       XKEYISKEYDOWN
  -------         PROC          XKEYSCANTASK
BL51 BANKED LINKER/LOCATER V5.03                                                      06/15/2006  17:47:33  PAGE 5


  -------         DO            
  D:0008H         SYMBOL        keyCode
  -------         ENDDO         
  C:0BFCH         LINE#         228
  C:0BFCH         LINE#         229
  C:0BFCH         LINE#         232
  C:0C0FH         LINE#         233
  C:0C0FH         LINE#         234
  C:0C14H         LINE#         235
  C:0C17H         LINE#         236
  C:0C1CH         LINE#         237
  C:0C1CH         LINE#         238
  C:0C1DH         LINE#         240
  C:0C1DH         LINE#         241
  C:0C22H         LINE#         242
  C:0C27H         LINE#         243
  C:0C2AH         LINE#         244
  C:0C2DH         LINE#         245
  C:0C2EH         LINE#         246
  C:0C31H         LINE#         247
  C:0C31H         LINE#         248
  C:0C32H         LINE#         250
  C:0C32H         LINE#         251
  C:0C37H         LINE#         252
  C:0C3AH         LINE#         253
  C:0C3DH         LINE#         254
  C:0C40H         LINE#         255
  C:0C40H         LINE#         256
  C:0C41H         LINE#         261
  C:0C41H         LINE#         262
  C:0C46H         LINE#         263
  C:0C4CH         LINE#         264
  C:0C4EH         LINE#         265
  C:0C52H         LINE#         266
  C:0C57H         LINE#         267
  C:0C5AH         LINE#         268
  C:0C5DH         LINE#         269
  C:0C60H         LINE#         270
  C:0C60H         LINE#         271
  C:0C60H         LINE#         272
  C:0C61H         LINE#         273
  C:0C61H         LINE#         274
  C:0C61H         LINE#         275
  C:0C63H         LINE#         277
  C:0C63H         LINE#         278
  C:0C68H         LINE#         279
  C:0C6EH         LINE#         280
  C:0C71H         LINE#         281
  C:0C71H         LINE#         282
  C:0C76H         LINE#         283
  C:0C79H         LINE#         284
  C:0C7CH         LINE#         285
  C:0C7CH         LINE#         286
  C:0C7CH         LINE#         287
  C:0C7DH         LINE#         288
  C:0C80H         LINE#         289
  C:0C80H         LINE#         290
BL51 BANKED LINKER/LOCATER V5.03                                                      06/15/2006  17:47:33  PAGE 6


  C:0C80H         LINE#         291
  C:0C80H         LINE#         292
  -------         ENDPROC       XKEYSCANTASK
  -------         PROC          XKEYINIT
  C:0E19H         LINE#         306
  C:0E19H         LINE#         307
  C:0E19H         LINE#         308
  C:0E1CH         LINE#         309
  C:0E1FH         LINE#         310
  C:0E23H         LINE#         311
  C:0E25H         LINE#         312
  C:0E27H         LINE#         313
  C:0E29H         LINE#         314
  -------         ENDPROC       XKEYINIT
  -------         PROC          XKEYINITPINS
  C:0E72H         LINE#         323
  C:0E72H         LINE#         324
  C:0E72H         LINE#         325
  C:0E74H         LINE#         326
  C:0E76H         LINE#         327
  C:0E78H         LINE#         328
  C:0E7AH         LINE#         329
  C:0E7CH         LINE#         330
  -------         ENDPROC       XKEYINITPINS
  -------         PROC          XKEYCHECKPINS
  -------         DO            
  B:0021H.2       SYMBOL        hit
  -------         ENDDO         
  C:0DE7H         LINE#         347
  C:0DE7H         LINE#         348
  C:0DE7H         LINE#         351
  C:0E01H         LINE#         352
  C:0E03H         LINE#         353
  -------         ENDPROC       XKEYCHECKPINS
  -------         PROC          XKEYDECODE
  C:0D68H         LINE#         368
  C:0D68H         LINE#         369
  C:0D68H         LINE#         370
  C:0D6BH         LINE#         371
  C:0D6EH         LINE#         372
  C:0D71H         LINE#         373
  C:0D74H         LINE#         374
  C:0D77H         LINE#         375
  C:0D7AH         LINE#         376
  C:0D7DH         LINE#         377
  C:0D80H         LINE#         378
  C:0D83H         LINE#         379
  C:0D86H         LINE#         381
  C:0D88H         LINE#         382
  -------         ENDPROC       XKEYDECODE
  -------         ENDMOD        XKEY

  -------         MODULE        MAIN
  C:0000H         SYMBOL        _ICE_DUMMY_
  D:0090H         PUBLIC        P1
  D:00A0H         PUBLIC        P2
  D:00B0H         PUBLIC        P3
BL51 BANKED LINKER/LOCATER V5.03                                                      06/15/2006  17:47:33  PAGE 7


  C:0C81H         PUBLIC        main
  D:0098H         PUBLIC        SCON
  D:0089H         PUBLIC        TMOD
  D:008DH         PUBLIC        TH1
  C:0E66H         PUBLIC        uartInit
  B:00A0H.0       PUBLIC        LED
  B:0088H.6       PUBLIC        TR1
  -------         PROC          UARTINIT
  C:0E66H         LINE#         48
  C:0E66H         LINE#         49
  C:0E66H         LINE#         50
  C:0E69H         LINE#         51
  C:0E6CH         LINE#         52
  C:0E6FH         LINE#         53
  C:0E71H         LINE#         54
  -------         ENDPROC       UARTINIT
  -------         PROC          MAIN
  -------         DO            
  D:0007H         SYMBOL        keyCode
  -------         ENDDO         
  C:0C81H         LINE#         61
  C:0C81H         LINE#         65
  C:0C84H         LINE#         66
  C:0C87H         LINE#         68
  C:0C87H         LINE#         69
  C:0C8EH         LINE#         70
  C:0C91H         LINE#         71
  C:0C96H         LINE#         72
  C:0C96H         LINE#         73
  C:0C99H         LINE#         74
  C:0CAAH         LINE#         75
  C:0CAAH         LINE#         76
  C:0CACH         LINE#         77
  C:0CB2H         LINE#         78
  C:0CB4H         LINE#         79
  C:0CB6H         LINE#         80
  C:0CBCH         LINE#         81
  C:0CBEH         LINE#         82
  C:0CC0H         LINE#         83
  C:0CC6H         LINE#         84
  C:0CC8H         LINE#         85
  C:0CCAH         LINE#         86
  C:0CD0H         LINE#         87
  C:0CD2H         LINE#         88
  C:0CD4H         LINE#         89
  C:0CDDH         LINE#         90
  C:0CDDH         LINE#         91
  C:0CDDH         LINE#         92
  C:0CDDH         LINE#         93
  C:0CDDH         LINE#         94
  C:0CDFH         LINE#         95
  -------         ENDPROC       MAIN
  -------         ENDMOD        MAIN

  -------         MODULE        DELAY
  C:0000H         SYMBOL        _ICE_DUMMY_
  D:0090H         PUBLIC        P1
BL51 BANKED LINKER/LOCATER V5.03                                                      06/15/2006  17:47:33  PAGE 8


  D:00B0H         PUBLIC        P3
  D:00A8H         PUBLIC        IE
  C:0DA9H         PUBLIC        _DelayMs
  D:00B8H         PUBLIC        IP
  C:0E2CH         PUBLIC        _DelayUs
  D:0098H         PUBLIC        SCON
  D:0088H         PUBLIC        TCON
  D:00C8H         PUBLIC        T2CON
  D:00D0H         PUBLIC        PSW
  -------         PROC          _DELAYUS
  D:0006H         SYMBOL        N
  -------         DO            
  D:0004H         SYMBOL        x
  -------         ENDDO         
  C:0E2CH         LINE#         36
  C:0E2CH         LINE#         37
  C:0E2CH         LINE#         40
  C:0E3DH         LINE#         41
  -------         ENDPROC       _DELAYUS
  -------         PROC          _DELAYMS
  D:0006H         SYMBOL        msec
  -------         DO            
  D:0004H         SYMBOL        x
  D:0002H         SYMBOL        y
  -------         ENDDO         
  C:0DA9H         LINE#         54
  C:0DA9H         LINE#         55
  C:0DA9H         LINE#         58
  C:0DB3H         LINE#         59
  C:0DB3H         LINE#         60
  C:0DC1H         LINE#         61
  C:0DC8H         LINE#         62
  -------         ENDPROC       _DELAYMS
  -------         ENDMOD        DELAY

  -------         MODULE        ?C?IMUL
  C:0B5CH         PUBLIC        ?C?IMUL
  -------         ENDMOD        ?C?IMUL

  -------         MODULE        PRINTF
  D:0008H         PUBLIC        ?_PRINTF517?BYTE
  D:0008H         PUBLIC        ?_PRINTF?BYTE
  D:0008H         PUBLIC        ?_SPRINTF517?BYTE
  D:0008H         PUBLIC        ?_SPRINTF?BYTE
  C:0862H         PUBLIC        _PRINTF
  C:0862H         PUBLIC        _PRINTF517
  C:085CH         PUBLIC        _SPRINTF
  C:085CH         PUBLIC        _SPRINTF517
  -------         ENDMOD        PRINTF

  -------         MODULE        ?C?CLDPTR
  C:0B6EH         PUBLIC        ?C?CLDPTR
  -------         ENDMOD        ?C?CLDPTR

  -------         MODULE        ?C?CLDOPTR
  C:0B87H         PUBLIC        ?C?CLDOPTR
  -------         ENDMOD        ?C?CLDOPTR
BL51 BANKED LINKER/LOCATER V5.03                                                      06/15/2006  17:47:33  PAGE 9



  -------         MODULE        ?C?CSTPTR
  C:0BB4H         PUBLIC        ?C?CSTPTR
  -------         ENDMOD        ?C?CSTPTR

  -------         MODULE        ?C?PLDIIDATA
  C:0BC6H         PUBLIC        ?C?PLDIIDATA
  -------         ENDMOD        ?C?PLDIIDATA

  -------         MODULE        ?C?CCASE
  C:0BD6H         PUBLIC        ?C?CCASE
  -------         ENDMOD        ?C?CCASE

  -------         MODULE        PUTCHAR
  C:0D41H         PUBLIC        _PUTCHAR
  -------         ENDMOD        PUTCHAR

*** WARNING L16: UNCALLED SEGMENT, IGNORED FOR OVERLAY PROCESS
    SEGMENT: ?PR?XKEYGETKEYDOWNTIME?XKEY

*** WARNING L16: UNCALLED SEGMENT, IGNORED FOR OVERLAY PROCESS
    SEGMENT: ?PR?_DELAYUS?DELAY

******************************************************************************
* RESTRICTED VERSION WITH 0800H BYTE CODE SIZE LIMIT; USED: 0275H BYTE (30%) *
******************************************************************************

Program Size: data=41.4 xdata=0 code=1664
LINK/LOCATE RUN COMPLETE.  2 WARNING(S),  0 ERROR(S)
