BL51 BANKED LINKER/LOCATER V6.22 03/04/2022 16:22:49 PAGE 1 BL51 BANKED LINKER/LOCATER V6.22, INVOKED BY: C:\KEIL_V5\C51\BIN\BL51.EXE .\Objects\STARTUP.obj, .\Objects\drive_1602.obj, .\Objects\main.obj TO .\Objects\DEMO PRINT >> (.\Listings\DEMO.m51) RAMSIZE (256) MEMORY MODEL: SMALL INPUT MODULES INCLUDED: .\Objects\STARTUP.obj (?C_STARTUP) .\Objects\drive_1602.obj (DRIVE_1602) .\Objects\main.obj (MAIN) C:\KEIL_V5\C51\LIB\C51S.LIB (?C_INIT) C:\KEIL_V5\C51\LIB\C51S.LIB (?C?CLDPTR) C:\KEIL_V5\C51\LIB\C51S.LIB (STRLEN) C:\KEIL_V5\C51\LIB\C51S.LIB (VSPRINTF) C:\KEIL_V5\C51\LIB\C51S.LIB (PRINTF) C:\KEIL_V5\C51\LIB\C51S.LIB (?C?CLDOPTR) C:\KEIL_V5\C51\LIB\C51S.LIB (?C?CSTPTR) C:\KEIL_V5\C51\LIB\C51S.LIB (?C?PLDIIDATA) C:\KEIL_V5\C51\LIB\C51S.LIB (?C?CCASE) C:\KEIL_V5\C51\LIB\C51S.LIB (PUTCHAR) LINK MAP OF MODULE: .\Objects\DEMO (?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 000CH UNIT ?DT?MAIN DATA 0014H 0003H UNIT ?DT?_SENDDATA?MAIN DATA 0017H 0003H UNIT ?DT?_SENDSTRING?MAIN DATA 001AH 0001H UNIT ?DT?_LCD1602_WRITE_ADDRESS?DRIVE_1602 DATA 001BH 0001H UNIT ?DT?_LCD1602_DISP?DRIVE_1602 001CH 0004H *** GAP *** BIT 0020H.0 0001H.1 UNIT _BIT_GROUP_ BIT 0021H.1 0000H.2 UNIT ?BI?MAIN 0021H.3 0000H.5 *** GAP *** DATA 0022H 0031H UNIT _DATA_GROUP_ IDATA 0053H 0001H UNIT ?STACK * * * * * * * X D A T A M E M O R Y * * * * * * * XDATA 0000H 0010H UNIT ?XD?DRIVE_1602 * * * * * * * C O D E M E M O R Y * * * * * * * CODE 0000H 0003H ABSOLUTE 0003H 0008H *** GAP *** CODE 000BH 0003H ABSOLUTE CODE 000EH 0015H UNIT ?PR?TIMER0INIT?MAIN CODE 0023H 0003H ABSOLUTE CODE 0026H 035CH UNIT ?PR?PRINTF?PRINTF CODE 0382H 008EH UNIT ?C?LIB_CODE CODE 0410H 008CH UNIT ?C_C51STARTUP CODE 049CH 0073H UNIT ?PR?MAIN?MAIN CODE 050FH 005DH UNIT ?PR?TIMEISR?MAIN BL51 BANKED LINKER/LOCATER V6.22 03/04/2022 16:22:49 PAGE 2 CODE 056CH 0049H UNIT ?PR?KEYREAD?MAIN CODE 05B5H 003FH UNIT ?PR?USART?MAIN CODE 05F4H 0039H UNIT ?PR?_WRITELCD1602_STRING?DRIVE_1602 CODE 062DH 0038H UNIT ?PR?_L1602_PRINTF?DRIVE_1602 CODE 0665H 0037H UNIT ?PR?_SENDDATA?MAIN CODE 069CH 0030H UNIT ?C_INITSEG CODE 06CCH 002EH UNIT ?PR?_VSPRINTF?VSPRINTF CODE 06FAH 002CH UNIT ?PR?LCD1602_INIT?DRIVE_1602 CODE 0726H 0027H UNIT ?PR?PUTCHAR?PUTCHAR CODE 074DH 001DH UNIT ?PR?_SENDSTRING?MAIN CODE 076AH 001BH UNIT ?PR?UARTINIT?MAIN CODE 0785H 001AH UNIT ?PR?_LCD1602_WRITE_ADDRESS?DRIVE_1602 CODE 079FH 0018H UNIT ?CO?MAIN CODE 07B7H 0017H UNIT ?PR?_DELAY_XMS?MAIN CODE 07CEH 0015H UNIT ?PR?_STRLEN?STRLEN CODE 07E3H 000DH UNIT ?PR?_WRITE_1602_COM?DRIVE_1602 CODE 07F0H 000DH UNIT ?PR?_WRITE_1602_DATE?DRIVE_1602 CODE 07FDH 000AH UNIT ?PR?_LCD1602_DISP?DRIVE_1602 CODE 0807H 0009H UNIT ?PR?_DELAY_1MS?DRIVE_1602 OVERLAY MAP OF MODULE: .\Objects\DEMO (?C_STARTUP) SEGMENT BIT_GROUP DATA_GROUP +--> CALLED SEGMENT START LENGTH START LENGTH --------------------------------------------------------------------------------- ?C_C51STARTUP ----- ----- ----- ----- +--> ?PR?MAIN?MAIN +--> ?C_INITSEG ?PR?MAIN?MAIN ----- ----- ----- ----- +--> ?PR?LCD1602_INIT?DRIVE_1602 +--> ?PR?UARTINIT?MAIN +--> ?PR?_DELAY_XMS?MAIN +--> ?PR?TIMER0INIT?MAIN +--> ?CO?MAIN +--> ?PR?_L1602_PRINTF?DRIVE_1602 ?PR?LCD1602_INIT?DRIVE_1602 ----- ----- ----- ----- +--> ?PR?_WRITE_1602_COM?DRIVE_1602 +--> ?PR?_DELAY_1MS?DRIVE_1602 ?PR?_WRITE_1602_COM?DRIVE_1602 ----- ----- ----- ----- +--> ?PR?_DELAY_1MS?DRIVE_1602 ?PR?_DELAY_1MS?DRIVE_1602 ----- ----- ----- ----- +--> ?PR?_DELAY_XMS?MAIN ?PR?_L1602_PRINTF?DRIVE_1602 ----- ----- 0022H 0017H +--> ?PR?_VSPRINTF?VSPRINTF +--> ?PR?_WRITELCD1602_STRING?DRIVE_1602 ?PR?_VSPRINTF?VSPRINTF ----- ----- 0039H 0006H +--> ?PR?PRINTF?PRINTF BL51 BANKED LINKER/LOCATER V6.22 03/04/2022 16:22:49 PAGE 3 ?PR?PRINTF?PRINTF 0020H.0 0001H.1 003FH 0014H +--> ?PR?PUTCHAR?PUTCHAR ?PR?_WRITELCD1602_STRING?DRIVE_1602 ----- ----- 0039H 0005H +--> ?PR?_WRITE_1602_COM?DRIVE_1602 +--> ?PR?_WRITE_1602_DATE?DRIVE_1602 ?PR?_WRITE_1602_DATE?DRIVE_1602 ----- ----- ----- ----- +--> ?PR?_DELAY_1MS?DRIVE_1602 *** NEW ROOT *************************************************** ?PR?TIMEISR?MAIN ----- ----- ----- ----- +--> ?PR?KEYREAD?MAIN SYMBOL TABLE OF MODULE: .\Objects\DEMO (?C_STARTUP) VALUE TYPE NAME ---------------------------------- ------- MODULE ?C_STARTUP C:0410H SEGMENT ?C_C51STARTUP I:0053H 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:0413H SYMBOL IDATALOOP N:0000H SYMBOL PBPSTACK N:0100H 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:0410H SYMBOL STARTUP1 N:0000H SYMBOL XBPSTACK N:0000H SYMBOL XBPSTACKTOP N:0000H SYMBOL XDATALEN N:0000H SYMBOL XDATASTART C:0000H LINE# 126 C:0410H LINE# 133 C:0412H LINE# 134 C:0413H LINE# 135 C:0414H LINE# 136 C:0416H LINE# 185 C:0419H LINE# 196 ------- ENDMOD ?C_STARTUP ------- MODULE DRIVE_1602 BL51 BANKED LINKER/LOCATER V6.22 03/04/2022 16:22:49 PAGE 4 C:0000H SYMBOL _ICE_DUMMY_ D:0090H PUBLIC P1 D:00A0H PUBLIC P2 D:00B0H PUBLIC P3 C:080DH PUBLIC _delay_1ms C:062DH PUBLIC _L1602_printf D:00A8H PUBLIC IE C:07FDH PUBLIC _LCD1602_Disp C:06FAH PUBLIC lcd1602_init D:00B8H PUBLIC IP D:0098H PUBLIC SCON D:0088H PUBLIC TCON C:07F0H PUBLIC _Write_1602_date C:05F4H PUBLIC _WriteLcd1602_String B:00A0H.6 PUBLIC en C:0785H PUBLIC _LCD1602_Write_address C:07E3H PUBLIC _Write_1602_com X:0000H PUBLIC String_Buff B:00A0H.7 PUBLIC rs D:00C8H PUBLIC T2CON D:00D0H PUBLIC PSW C:0809H SYMBOL L?0018 ------- PROC L?0017 ------- ENDPROC L?0017 C:0809H SYMBOL L?0018 ------- PROC _DELAY_1MS D:0006H SYMBOL xms C:080DH LINE# 14 C:080DH LINE# 15 C:080DH LINE# 16 ------- ENDPROC _DELAY_1MS ------- PROC _WRITE_1602_COM D:0007H SYMBOL com C:07E3H LINE# 19 C:07E3H LINE# 20 C:07E3H LINE# 22 C:07E5H LINE# 23 C:07E5H LINE# 24 C:07E8H LINE# 25 C:07EAH LINE# 26 C:07EDH LINE# 27 C:07EFH LINE# 28 ------- ENDPROC _WRITE_1602_COM ------- PROC _WRITE_1602_DATE D:0007H SYMBOL date C:07F0H LINE# 31 C:07F0H LINE# 32 C:07F0H LINE# 34 C:07F2H LINE# 35 C:07F2H LINE# 36 C:07F5H LINE# 37 C:07F7H LINE# 38 C:07FAH LINE# 39 C:07FCH LINE# 40 ------- ENDPROC _WRITE_1602_DATE ------- PROC _WRITELCD1602_STRING D:0039H SYMBOL x BL51 BANKED LINKER/LOCATER V6.22 03/04/2022 16:22:49 PAGE 5 D:0005H SYMBOL y D:003AH SYMBOL p ------- DO D:003DH SYMBOL i ------- ENDDO C:05F4H LINE# 49 C:05FCH LINE# 50 C:05FCH LINE# 51 C:05FFH LINE# 52 C:0602H LINE# 53 C:0602H LINE# 54 C:0606H LINE# 55 C:0608H LINE# 57 C:0608H LINE# 58 C:0610H LINE# 59 C:0610H LINE# 60 C:061CH LINE# 61 C:061CH LINE# 62 C:061FH LINE# 63 C:062AH LINE# 64 C:062CH LINE# 65 ------- ENDPROC _WRITELCD1602_STRING ------- PROC _L1602_PRINTF D:0022H SYMBOL x D:0023H SYMBOL y D:0024H SYMBOL format ------- DO D:0027H SYMBOL ellipsis_15 D:0036H SYMBOL ap ------- ENDDO C:062DH LINE# 68 C:0637H LINE# 69 C:0637H LINE# 71 C:0640H LINE# 72 C:0658H LINE# 74 ------- ENDPROC _L1602_PRINTF ------- PROC LCD1602_INIT C:06FAH LINE# 79 C:06FAH LINE# 80 C:06FAH LINE# 81 C:06FFH LINE# 82 C:0702H LINE# 83 C:0707H LINE# 84 C:070AH LINE# 85 C:070FH LINE# 86 C:0712H LINE# 87 C:0717H LINE# 88 C:071AH LINE# 89 C:071FH LINE# 90 ------- ENDPROC LCD1602_INIT ------- PROC _LCD1602_WRITE_ADDRESS D:001AH SYMBOL x D:0005H SYMBOL y C:0785H LINE# 93 C:0787H LINE# 94 C:0787H LINE# 95 C:078AH LINE# 96 BL51 BANKED LINKER/LOCATER V6.22 03/04/2022 16:22:49 PAGE 6 C:078DH LINE# 97 C:0790H LINE# 98 C:0794H LINE# 100 C:079EH LINE# 101 ------- ENDPROC _LCD1602_WRITE_ADDRESS ------- PROC _LCD1602_DISP D:0007H SYMBOL x D:0005H SYMBOL y D:001BH SYMBOL buf C:07FDH LINE# 102 C:07FFH LINE# 103 C:07FFH LINE# 104 C:0802H LINE# 105 ------- ENDPROC _LCD1602_DISP ------- ENDMOD DRIVE_1602 ------- MODULE MAIN C:0000H SYMBOL _ICE_DUMMY_ C:050FH PUBLIC TimeISR D:0008H PUBLIC dw_val D:0090H PUBLIC P1 D:00B0H PUBLIC P3 D:0009H PUBLIC set_pwm B:00A8H.7 PUBLIC EA D:00A8H PUBLIC IE B:00A8H.4 PUBLIC ES D:00B8H PUBLIC IP B:0098H.0 PUBLIC RI B:0098H.1 PUBLIC TI D:000BH PUBLIC rxdat C:049CH PUBLIC main C:074DH PUBLIC _sendString C:0665H PUBLIC _sendData C:056CH PUBLIC KeyRead D:0099H PUBLIC SBUF D:0087H PUBLIC PCON C:05B5H PUBLIC usart D:0098H PUBLIC SCON C:076AH PUBLIC UartInit D:000CH PUBLIC humi D:0089H PUBLIC TMOD D:0088H PUBLIC TCON D:000DH PUBLIC temp B:00A8H.1 PUBLIC ET0 B:00B0H.3 PUBLIC fun B:00A8H.3 PUBLIC ET1 B:0088H.5 PUBLIC TF0 C:000EH PUBLIC Timer0Init C:07B7H PUBLIC _delay_xms D:008CH PUBLIC TH0 D:008DH PUBLIC TH1 D:008AH PUBLIC TL0 B:0021H.1 PUBLIC openflag D:008BH PUBLIC TL1 D:000EH PUBLIC JCount B:0088H.4 PUBLIC TR0 B:0088H.6 PUBLIC TR1 BL51 BANKED LINKER/LOCATER V6.22 03/04/2022 16:22:49 PAGE 7 B:00B0H.7 PUBLIC SW1 B:00B0H.6 PUBLIC SW2 B:00B0H.5 PUBLIC SW3 B:0021H.2 PUBLIC keyflag D:00C8H PUBLIC T2CON D:0010H PUBLIC get_key D:0011H PUBLIC SET D:00D0H PUBLIC PSW D:0012H PUBLIC pwm_cnt ------- PROC _DELAY_XMS D:0006H SYMBOL xms ------- DO D:0005H SYMBOL ix ------- ENDDO C:07B7H LINE# 26 C:07B7H LINE# 27 C:07B7H LINE# 28 C:07B7H LINE# 29 C:07C2H LINE# 30 C:07CDH LINE# 31 ------- ENDPROC _DELAY_XMS ------- PROC KEYREAD C:056CH LINE# 41 C:056CH LINE# 42 C:056CH LINE# 43 C:056FH LINE# 44 C:056FH LINE# 45 C:0575H LINE# 46 C:0575H LINE# 47 C:0577H LINE# 48 C:057CH LINE# 49 C:0581H LINE# 52 C:0584H LINE# 53 C:0584H LINE# 54 C:058AH LINE# 55 C:058AH LINE# 56 C:058CH LINE# 57 C:0598H LINE# 58 C:059DH LINE# 62 C:05A0H LINE# 63 C:05A0H LINE# 64 C:05A6H LINE# 65 C:05A6H LINE# 66 C:05A8H LINE# 67 C:05B1H LINE# 68 C:05B1H LINE# 69 C:05B2H LINE# 71 C:05B2H LINE# 72 C:05B4H LINE# 73 C:05B4H LINE# 76 ------- ENDPROC KEYREAD ------- PROC TIMER0INIT C:000EH LINE# 78 C:000EH LINE# 79 C:000EH LINE# 81 C:0011H LINE# 82 C:0014H LINE# 83 BL51 BANKED LINKER/LOCATER V6.22 03/04/2022 16:22:49 PAGE 8 C:0017H LINE# 84 C:001AH LINE# 85 C:001CH LINE# 86 C:001EH LINE# 87 C:0020H LINE# 88 C:0022H LINE# 90 ------- ENDPROC TIMER0INIT ------- PROC TIMEISR C:050FH LINE# 93 C:0518H LINE# 95 C:051BH LINE# 96 C:051EH LINE# 97 C:0527H LINE# 98 C:0527H LINE# 99 C:052AH LINE# 100 C:052DH LINE# 101 C:052DH LINE# 102 C:0535H LINE# 103 C:0540H LINE# 104 C:0540H LINE# 105 C:0546H LINE# 107 C:0546H LINE# 108 C:0557H LINE# 109 C:0557H LINE# 110 C:0559H LINE# 111 C:055BH LINE# 113 C:055BH LINE# 114 C:055DH LINE# 115 C:055DH LINE# 116 C:0565H LINE# 117 ------- ENDPROC TIMEISR ------- PROC UARTINIT C:076AH LINE# 119 C:076AH LINE# 120 C:076AH LINE# 121 C:076DH LINE# 122 C:0770H LINE# 123 C:0773H LINE# 124 C:0776H LINE# 125 C:0779H LINE# 126 C:077CH LINE# 127 C:077EH LINE# 128 C:0780H LINE# 129 C:0782H LINE# 130 C:0784H LINE# 131 ------- ENDPROC UARTINIT ------- PROC _SENDDATA D:0014H SYMBOL p D:0005H SYMBOL n C:0665H LINE# 134 C:066BH LINE# 135 C:066BH LINE# 136 C:0673H LINE# 137 C:0675H LINE# 138 C:067BH LINE# 139 C:067BH LINE# 140 C:0681H LINE# 141 BL51 BANKED LINKER/LOCATER V6.22 03/04/2022 16:22:49 PAGE 9 C:0681H LINE# 142 C:0694H LINE# 143 C:0697H LINE# 144 C:0699H LINE# 145 C:069BH LINE# 146 C:069BH LINE# 148 ------- ENDPROC _SENDDATA ------- PROC _SENDSTRING D:0017H SYMBOL p C:074DH LINE# 153 C:0753H LINE# 154 C:0753H LINE# 155 C:075BH LINE# 156 C:0769H LINE# 157 ------- ENDPROC _SENDSTRING ------- PROC USART C:05B5H LINE# 160 C:05B9H LINE# 162 C:05BCH LINE# 163 C:05BCH LINE# 164 C:05BFH LINE# 165 C:05CDH LINE# 166 C:05CDH LINE# 167 C:05CDH LINE# 168 C:05D2H LINE# 169 C:05D4H LINE# 171 C:05D4H LINE# 172 C:05E0H LINE# 173 C:05E2H LINE# 175 C:05E2H LINE# 176 C:05EBH LINE# 177 C:05EBH LINE# 178 C:05EBH LINE# 180 C:05EBH LINE# 181 C:05EDH LINE# 182 C:05EFH LINE# 183 ------- ENDPROC USART ------- PROC MAIN C:049CH LINE# 187 C:049CH LINE# 188 C:049CH LINE# 189 C:049FH LINE# 190 C:04A2H LINE# 191 C:04A9H LINE# 192 C:04ACH LINE# 193 C:04ACH LINE# 194 C:04ACH LINE# 196 C:04B9H LINE# 197 C:04B9H LINE# 198 C:04BEH LINE# 199 C:04C1H LINE# 200 C:04C1H LINE# 201 C:04CCH LINE# 202 C:04D9H LINE# 203 C:04D9H LINE# 204 C:04D9H LINE# 205 C:04DFH LINE# 206 BL51 BANKED LINKER/LOCATER V6.22 03/04/2022 16:22:49 PAGE 10 C:04E1H LINE# 208 C:04E1H LINE# 209 C:04E7H LINE# 210 C:04E9H LINE# 212 C:04E9H LINE# 213 C:04EFH LINE# 214 C:04F1H LINE# 215 C:04F1H LINE# 218 C:04F1H LINE# 219 C:04F1H LINE# 220 C:04FDH LINE# 221 C:04FDH LINE# 222 C:050DH LINE# 223 C:050DH LINE# 224 ------- ENDPROC MAIN ------- ENDMOD MAIN ------- MODULE ?C?CLDPTR C:0382H PUBLIC ?C?CLDPTR ------- ENDMOD ?C?CLDPTR ------- MODULE STRLEN C:07CEH PUBLIC _STRLEN ------- ENDMOD STRLEN ------- MODULE VSPRINTF D:0036H PUBLIC ?_VSPRINTF?BYTE C:06CCH PUBLIC _VSPRINTF ------- ENDMOD VSPRINTF ------- MODULE PRINTF D:003FH PUBLIC ?_PRINTF517?BYTE D:003FH PUBLIC ?_PRINTF?BYTE D:003FH PUBLIC ?_SPRINTF517?BYTE D:003FH PUBLIC ?_SPRINTF?BYTE C:0088H PUBLIC _PRINTF C:0088H PUBLIC _PRINTF517 C:0082H PUBLIC _SPRINTF C:0082H PUBLIC _SPRINTF517 ------- ENDMOD PRINTF ------- MODULE ?C?CLDOPTR C:039BH PUBLIC ?C?CLDOPTR ------- ENDMOD ?C?CLDOPTR ------- MODULE ?C?CSTPTR C:03C8H PUBLIC ?C?CSTPTR ------- ENDMOD ?C?CSTPTR ------- MODULE ?C?PLDIIDATA C:03DAH PUBLIC ?C?PLDIIDATA ------- ENDMOD ?C?PLDIIDATA ------- MODULE ?C?CCASE C:03EAH PUBLIC ?C?CCASE ------- ENDMOD ?C?CCASE BL51 BANKED LINKER/LOCATER V6.22 03/04/2022 16:22:49 PAGE 11 ------- MODULE PUTCHAR C:0726H PUBLIC _PUTCHAR ------- ENDMOD PUTCHAR *** WARNING L16: UNCALLED SEGMENT, IGNORED FOR OVERLAY PROCESS SEGMENT: ?PR?_LCD1602_DISP?DRIVE_1602 *** WARNING L16: UNCALLED SEGMENT, IGNORED FOR OVERLAY PROCESS SEGMENT: ?PR?_SENDSTRING?MAIN Program Size: data=79.3 xdata=16 code=2056 LINK/LOCATE RUN COMPLETE. 2 WARNING(S), 0 ERROR(S)