diff options
Diffstat (limited to 'demo')
85 files changed, 927 insertions, 9641 deletions
diff --git a/demo/Demo project.mcu8051ide b/demo/Demo project.mcu8051ide index 21f2ef6..707a648 100644 --- a/demo/Demo project.mcu8051ide +++ b/demo/Demo project.mcu8051ide @@ -12,7 +12,7 @@ <!-- Root element Parameters: version - Project version (user defined) date - Project last update (user defined) - creator_ver - MCU 8051 IDE version (hardcoded in program) + creator_ver - MCU 8051 IDE version (hardcoded in the program) --> <!ATTLIST tk_mcuide_project version CDATA #IMPLIED @@ -71,9 +71,9 @@ grid - Grid mode magnification - Magnification level (must be an integer between 0 and 3) enabled - Graph enable flag (Boolean value 0 or 1) - marks_s - List of state graph marks (String of zeros and ones, e.g. 00100110) - marks_l - List of laches graph marks (String of zeros and ones, e.g. 00100110) - marks_o - List of output graph marks (String of zeros and ones, e.g. 00100110) + marks_s - List of state graph marks (String of zeros and ones perfixed with 'X', and converted to hexadecimal) + marks_l - List of laches graph marks (String of zeros and ones perfixed with 'X', and converted to hexadecimal) + marks_o - List of output graph marks (String of zeros and ones perfixed with 'X', and converted to hexadecimal) active_page - Active page --> <!ATTLIST graph @@ -193,10 +193,10 @@ <!-- File path --> <!ELEMENT path (#PCDATA)> - <!-- Bookmarks: string of zeros and ones --> + <!-- Bookmarks: list of line numbers --> <!ELEMENT bookmarks (#PCDATA)> - <!-- Breakpoints: string of zeros and ones --> + <!-- Breakpoints: list of line numbers --> <!ELEMENT breakpoints (#PCDATA)> <!-- End Of Line character name --> @@ -222,12 +222,12 @@ value CDATA #IMPLIED > ]> -<tk_mcuide_project version="0.9.5" date="03/02/09" creator_ver="1.3.3"> +<tk_mcuide_project version="1.0" date="11/28/2011" creator_ver="1.4.3"> <general> <authors><![CDATA[Martin Osmera <martin.osmera@gmail.com> ]]></authors> <copyright><![CDATA[]]></copyright> - <licence><![CDATA[GPLv2]]></licence> + <license><![CDATA[GPLv2]]></license> <processor type="AT89S2051" clock="12000" xdata="0" xcode="0"/> <options watches_file="demo.wtc" @@ -238,13 +238,13 @@ <graph grid="y" magnification="0" - enabled="1" - marks_s="00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000" - marks_l="00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000" - marks_o="00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000" + enabled="0" + marks_s="X0000000000000000000000000000000000000000000" + marks_l="X0000000000000000000000000000000000000000000" + marks_o="X0000000000000000000000000000000000000000000" active_page="output" /> - <description><![CDATA[This is demonstration project for MCU 8051 IDE and nothing more. + <description><![CDATA[This is demonstration project for MCU 8051 IDE and nothing less, nothing more. Thank you for using MCU 8051 IDE. ]]></description> @@ -290,24 +290,24 @@ Thank you for using MCU 8051 IDE. /> </general> <other_options><![CDATA[]]></other_options> - <compiler_options><![CDATA[{_title 0 _list 0 _print 0 _nomod 0 max_ihex_rec_length 255 _object 0 _pagelength 0 QUIET 0 _symbols 0 CREATE_SIM_FILE 1 CREATE_BIN_FILE 1 _pagewidth 0 optim_ena 0 _date 0 _paging 0 WARNING_LEVEL 0} 0 {--verbose 1 -i {} custom {} --columns 0 --omf-51 0} {adf 1} {-L 1 -M 0 custom {} -n 0 -P 0 -A 0 -a 0 -r {} -C 0 -c 0 -s 1 -U 0 -u 0 -g MAP -w 0 -cpu 8051 -x 0 -h 0 -quiet 0 -i {} -I 1} {ihex 1 adf 1} {--out-fmt-s19 0 --fdollars-in-identifiers 0 --nogcse 0 --nooverlay 1 --no-peep-comments 0 --no-c-code-in-asm 0 --print-search-dirs 0 --nostdlib 0 --peep-asm 0 --nolabelopt 0 --short-is-8bits 0 --cyclomatic 0 --compile-only 0 --no-reg-params 0 --noinvariant 0 --profile 0 --out-fmt-ihx 0 --noinduction 1 --opt-code-size 0 --nojtbound 0 --no-peep 0 --less-pedantic 0 --no-xinit-opt 0 --xstack 0 --funsigned-char 0 --verbose 1 -S 0 --debug 1 --preprocessonly 0 --opt-code-speed 0 --parms-in-bank1 0 --float-reent 0 -V 1 --c1mode 0 --fverbose-asm 0 --fommit-frame-pointer 0 --xram-movc 0 --main-return 0 --nostdinc 0 --noloopreverse 0 --stack-probe 0 --all-callee-saves 0 --int-long-reent 0 --stack-auto 0 --use-stdout 0} {standard --std-sdcc89 model --model-small stack --pack-iram custom {}} {--stack-size {} --code-loc {} --constseg {} --codeseg {} --xram-loc {} --data-loc {} --stack-loc {} --xstack-loc {} --lib-path {}} {--disable-warning {} -L {} -l {} -I {}} {} {}]]></compiler_options> + <compiler_options><![CDATA[{_title 0 _list 0 _print 0 _nomod 0 max_ihex_rec_length 255 _object 0 _pagelength 0 QUIET 0 _symbols 0 CREATE_SIM_FILE 1 CREATE_BIN_FILE 1 optim_ena 0 _pagewidth 0 WARNING_LEVEL 0 _paging 0 _date 0} 0 {--verbose 1 -i {} --omf-51 0 --columns 0 custom {}} {adf 1} {-L 1 -M 0 custom {} -n 0 -P 0 -A 0 -a 0 -r {} -C 0 -c 0 -s 1 -u 0 -U 0 -w 0 -g MAP -quiet 0 -h 0 -x 0 -cpu 8051 -I 1 -i {}} {ihex 1 adf 1} {--out-fmt-s19 0 --fdollars-in-identifiers 0 --nogcse 0 --nooverlay 1 --no-peep-comments 0 --no-c-code-in-asm 0 --print-search-dirs 0 --nostdlib 0 --compile-only 0 --peep-asm 0 --nolabelopt 0 --short-is-8bits 0 --cyclomatic 0 --profile 0 --noinvariant 0 --no-reg-params 0 --noinduction 1 --out-fmt-ihx 0 --nojtbound 0 --opt-code-size 0 --less-pedantic 0 --no-peep 0 -S 0 --verbose 1 --funsigned-char 0 --xstack 0 --no-xinit-opt 0 --debug 1 --preprocessonly 0 --c1mode 0 -V 1 --float-reent 0 --parms-in-bank1 0 --opt-code-speed 0 --nostdinc 0 --main-return 0 --xram-movc 0 --fommit-frame-pointer 0 --fverbose-asm 0 --int-long-reent 0 --all-callee-saves 0 --stack-probe 0 --noloopreverse 0 --stack-auto 0 --use-stdout 0} {model --model-small standard --std-sdcc89 stack {} custom {}} {--codeseg {} --constseg {} --code-loc {} --stack-size {} --xram-loc {} --lib-path {} --xstack-loc {} --stack-loc {} --data-loc {}} {-l {} -L {} --disable-warning {} -I {}} {-l 1 -A {} -F hex custom {}} {adf 1}]]></compiler_options> <files - count="9" - current_file="8" + count="10" + current_file="0" current_file2="-1" pwin_sash="304" selected_view="0" pwin_orient="horizontal"> - <file name="demo0.asm" active="yes" o_bookmark="0" p_bookmark="0" file_index="0" read_only="0" highlight="0"> + <file name="demo0.asm" active="yes" o_bookmark="0" p_bookmark="0" file_index="0" read_only="1" highlight="0"> <actual_line value="1"/> - <md5_hash value="433B30D0A7A37EA31EA1FC96F9A63294"/> + <md5_hash value="477C5C6C6472852B9BCD48A6D3A103DF"/> <path><![CDATA[]]></path> <bookmarks> - 00000000000000001000000000000 + 16 </bookmarks> <breakpoints> - 00000000000000000100000000000 + 17 </breakpoints> <eol value="lf"/> <encoding value="utf-8"/> @@ -315,31 +315,31 @@ Thank you for using MCU 8051 IDE. ]]></notes> </file> - <file name="demo1.asm" active="yes" o_bookmark="0" p_bookmark="0" file_index="1" read_only="0" highlight="0"> + <file name="demo1.asm" active="yes" o_bookmark="0" p_bookmark="0" file_index="1" read_only="1" highlight="0"> <actual_line value="1"/> - <md5_hash value="D9C47EC024BB961B1F86B2A2C82D6D7A"/> + <md5_hash value="2078A8D0F7F402380D20B396DE54ECD6"/> <path><![CDATA[]]></path> <bookmarks> - 00000000000000000000000000000000000000000000000000000000000000000 + 0 </bookmarks> <breakpoints> - 00000000000000000000000000000000000000000000000000000000000000000 + 0 </breakpoints> <eol value="lf"/> <encoding value="utf-8"/> - <notes><![CDATA[Quite more advance demonstration code ... + <notes><![CDATA[A little more advanced demonstration code ... ]]></notes> </file> - <file name="demo2.asm" active="yes" o_bookmark="0" p_bookmark="0" file_index="2" read_only="0" highlight="0"> + <file name="demo2.asm" active="yes" o_bookmark="0" p_bookmark="0" file_index="2" read_only="1" highlight="0"> <actual_line value="1"/> - <md5_hash value="016FCF566042EC66EE9118BAFA4D4A35"/> + <md5_hash value="37AFD8BE8D1F3D6436C93B0B9616E95A"/> <path><![CDATA[]]></path> <bookmarks> - 00000000000000000000000000000000000000000000000000000000000000000000000000000000 + 0 </bookmarks> <breakpoints> - 00000000000000000000000000000000000000000000000000000000000000000000000000000000 + 0 </breakpoints> <eol value="lf"/> <encoding value="utf-8"/> @@ -347,90 +347,105 @@ Thank you for using MCU 8051 IDE. ]]></notes> </file> - <file name="demo3.asm" active="yes" o_bookmark="0" p_bookmark="0" file_index="3" read_only="0" highlight="0"> + <file name="demo3.asm" active="yes" o_bookmark="0" p_bookmark="0" file_index="3" read_only="1" highlight="0"> <actual_line value="1"/> - <md5_hash value="6180D365C7F535CABD42C3E78A0798B9"/> + <md5_hash value="5B8A70E1D6517500E2AE4F4FA5B98BC5"/> <path><![CDATA[]]></path> <bookmarks> - 00000000000000000000000000000000000000000000000000000000000000000000000000 + 0 </bookmarks> <breakpoints> - 00000000000000000000000000000000000000000000000000000000000000000000000000 + 0 </breakpoints> <eol value="lf"/> <encoding value="utf-8"/> <notes><![CDATA[]]></notes> </file> - <file name="demo5.asm" active="yes" o_bookmark="0" p_bookmark="0" file_index="4" read_only="0" highlight="0"> - <actual_line value="13"/> - <md5_hash value="8A77C444C26BA55C5A8AC82FE0C8CFA9"/> + <file name="demo5.asm" active="yes" o_bookmark="0" p_bookmark="0" file_index="4" read_only="1" highlight="0"> + <actual_line value="1"/> + <md5_hash value="83FBE8C57ABDDCD92CDD70B3C5326563"/> <path><![CDATA[]]></path> <bookmarks> - 000000000000000000000000000000000000 + 0 </bookmarks> <breakpoints> - 000000000000000000000000000000000000 + 0 </breakpoints> <eol value="lf"/> <encoding value="utf-8"/> <notes><![CDATA[]]></notes> </file> - <file name="demo_c_0.c" active="yes" o_bookmark="0" p_bookmark="0" file_index="5" read_only="0" highlight="1"> + <file name="demo_c_0.c" active="yes" o_bookmark="0" p_bookmark="0" file_index="5" read_only="1" highlight="1"> <actual_line value="1"/> - <md5_hash value="79C98C5ADE29831807D59F6BC438063A"/> + <md5_hash value="A958F84B552CBBD6CB8D8FA776FEB327"/> <path><![CDATA[]]></path> <bookmarks> - 0000000000000000000000000000000000000000000 + 0 </bookmarks> <breakpoints> - 0000000000000000000000000000000000000000000 + 0 </breakpoints> <eol value="lf"/> <encoding value="utf-8"/> <notes><![CDATA[]]></notes> </file> - <file name="ledmatrix.c" active="yes" o_bookmark="0" p_bookmark="0" file_index="6" read_only="0" highlight="1"> + <file name="ledmatrix.c" active="yes" o_bookmark="0" p_bookmark="0" file_index="6" read_only="1" highlight="1"> <actual_line value="1"/> <md5_hash value="517133F895352F3918C3E1250EA990A5"/> <path><![CDATA[]]></path> <bookmarks> - 000000000000000000000000000000000000000000000 + 0 + </bookmarks> + <breakpoints> + 0 + </breakpoints> + <eol value="lf"/> + <encoding value="utf-8"/> + <notes><![CDATA[]]></notes> + </file> + + <file name="keypad_display.c" active="yes" o_bookmark="0" p_bookmark="0" file_index="7" read_only="1" highlight="1"> + <actual_line value="1"/> + <md5_hash value="250BC76DCCF444C4F982EB733E057F5E"/> + <path><![CDATA[]]></path> + <bookmarks> + 0 </bookmarks> <breakpoints> - 000000000000000000000000000000000000000000000 + 0 </breakpoints> <eol value="lf"/> <encoding value="utf-8"/> <notes><![CDATA[]]></notes> </file> - <file name="keypad_display.c" active="yes" o_bookmark="0" p_bookmark="0" file_index="7" read_only="0" highlight="1"> - <actual_line value="10"/> - <md5_hash value="E44E4DC2094E8EB729FE653002B40A33"/> + <file name="mleddisplay.asm" active="yes" o_bookmark="0" p_bookmark="0" file_index="8" read_only="1" highlight="0"> + <actual_line value="1"/> + <md5_hash value="8BF7EBDCE29A2FCF7D73079108BBAD39"/> <path><![CDATA[]]></path> <bookmarks> - 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000 + 0 </bookmarks> <breakpoints> - 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000 + 0 </breakpoints> <eol value="lf"/> <encoding value="utf-8"/> <notes><![CDATA[]]></notes> </file> - <file name="mleddisplay.asm" active="yes" o_bookmark="0" p_bookmark="0" file_index="8" read_only="0" highlight="0"> - <actual_line value="15"/> - <md5_hash value="BFC1B21D558BFAE2B1E43162DAEFE347"/> + <file name="LCD.asm" active="yes" o_bookmark="0" p_bookmark="0" file_index="9" read_only="1" highlight="0"> + <actual_line value="1"/> + <md5_hash value="03C83A56F6DD9B68A2D385DD90C81D42"/> <path><![CDATA[]]></path> <bookmarks> - 0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 + 0 </bookmarks> <breakpoints> - 0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 + 0 </breakpoints> <eol value="lf"/> <encoding value="utf-8"/> @@ -438,4 +453,4 @@ Thank you for using MCU 8051 IDE. </file> </files> -</tk_mcuide_project>
\ No newline at end of file +</tk_mcuide_project> diff --git a/demo/LCD.adf b/demo/LCD.adf new file mode 100644 index 0000000..96f4a33 --- /dev/null +++ b/demo/LCD.adf @@ -0,0 +1,65 @@ +# Assembler debug file for MCU 8051 IDE v1.4.7 +# Used assembler: MCU 8051 IDE +# Date: 12/28/2012 +03C83A56F6DD9B68A2D385DD90C81D42 "LCD.asm" +0 14 0 2 0 28 +0 27 3 87 +0 27 4 101 +0 27 5 108 +0 27 6 99 +0 27 7 111 +0 27 8 109 +0 27 9 101 +0 27 10 32 +0 27 11 116 +0 27 12 111 +0 27 13 32 +0 27 14 77 +0 27 15 67 +0 27 16 85 +0 27 17 32 +0 27 18 56 +0 27 19 48 +0 27 20 53 +0 27 21 49 +0 27 22 32 +0 27 23 73 +0 27 24 68 +0 27 25 69 +0 27 26 33 +0 27 27 0 +0 29 28 117 144 0 +0 30 31 194 177 +0 31 33 144 0 3 +0 33 36 194 176 +0 34 38 210 178 +0 34 40 117 144 1 +0 34 43 194 178 +0 35 45 210 178 +0 35 47 117 144 2 +0 35 50 194 178 +0 36 52 210 178 +0 36 54 117 144 6 +0 36 57 194 178 +0 37 59 210 178 +0 37 61 117 144 15 +0 37 64 194 178 +0 38 66 210 178 +0 38 68 117 144 30 +0 38 71 194 178 +0 39 73 210 178 +0 39 75 117 144 60 +0 39 78 194 178 +0 40 80 210 178 +0 40 82 117 144 129 +0 40 85 194 178 +0 43 87 210 176 +0 44 89 120 0 +0 45 91 232 +0 46 92 8 +0 47 93 147 +0 48 94 210 178 +0 48 96 245 144 +0 48 98 194 178 +0 49 100 180 0 244 +0 50 103 128 187
\ No newline at end of file diff --git a/demo/LCD.asm b/demo/LCD.asm new file mode 100644 index 0000000..9a1909f --- /dev/null +++ b/demo/LCD.asm @@ -0,0 +1,52 @@ +; Very basic demonstration example for HD44780 simulator +; * Click on "Virtual HW" in the main menu, +; * choose "Open", +; * change filter to VH Component, +; * open "LCD.vhc", +; * press F2, +; * press F6, +; * enjoy ... :-) +; * press F2 to end. +; +; Note: simulated delays are skipped in this example. +; + org 0 + jmp start + +RS bit P3.0 +RW bit P3.1 +E bit P3.2 +D equ P1 + +cmd macro cmd_code + setb E + mov D, cmd_code + clr E +endm + +string: db 'Welcome to MCU 8051 IDE!\0' + +start: mov D, #0 + clr RW + mov DPTR, #string + +main: clr RS + cmd #00000001b ; Clear display + cmd #00000010b ; Cursor home + cmd #00000110b ; Entry mode set + cmd #00001111b ; Display ON/OFF control + cmd #00011110b ; Cursor/display shift + cmd #00111100b ; Function set + cmd #10000001b ; Set DDRAM address + + ; Print the string ... + setb RS + mov R0, #0 +print: mov A, R0 + inc R0 + movc A, @A+DPTR + cmd A + cjne A, #0, print + sjmp main + + end diff --git a/demo/LCD.hex b/demo/LCD.hex new file mode 100644 index 0000000..832f623 --- /dev/null +++ b/demo/LCD.hex @@ -0,0 +1,8 @@ +:1000000002001C57656C636F6D6520746F204D4353 +:0F00100055203830353120494445210075900086 +:10001F00C2B1900003C2B0D2B2759001C2B2D2B2D7 +:0E002F00759002C2B2D2B2759006C2B2D2B2C1 +:0E003D0075900FC2B2D2B275901EC2B2D2B28E +:10004B0075903CC2B2D2B2759081C2B2D2B0780078 +:0E005B00E80893D2B2F590C2B2B400F480BBB4 +:00000001FF diff --git a/demo/LCD.lst b/demo/LCD.lst new file mode 100644 index 0000000..f1217ff --- /dev/null +++ b/demo/LCD.lst @@ -0,0 +1,273 @@ +LCD PAGE 1 + 1 ; Very basic demonstration example for HD44780 simulator + 2 ; * Click on "Virtual HW" in the main menu, + 3 ; * choose "Open", + 4 ; * change filter to VH Component, + 5 ; * open "LCD.vhc", + 6 ; * press F2, + 7 ; * press F6, + 8 ; * enjoy ... :-) + 9 ; * press F2 to end. + 10 ; + 11 ; Note: simulated delays are skipped in this example. + 12 ; + 13 org 0 +0000 02001C 14 jmp start + 15 + 00B0 16 RS bit P3.0 + 00B1 17 RW bit P3.1 + 00B2 18 E bit P3.2 + 0090 19 D equ P1 + 20 + 21 cmd macro cmd_code + 22 setb E + 23 mov D, cmd_code + 24 clr E + 25 endm + 26 +0003 57656C636F 27 string: db 'Welcome to MCU 8051 IDE!\0' + 6D6520746F + 204D435520 + 3830353120 + 4944452100 + 28 +001C 759000 29 start: mov D, #0 +001F C2B1 30 clr RW +0021 900003 31 mov DPTR, #string + 32 +0024 C2B0 33 main: clr RS + 34 +1 cmd #00000001b ; Clear display +0026 D2B2 35 +1 setb e +0028 759001 36 +1 mov d , #00000001b +002B C2B2 37 +1 clr e + 38 +1 cmd #00000010b ; Cursor home +002D D2B2 39 +1 setb e +002F 759002 40 +1 mov d , #00000010b +0032 C2B2 41 +1 clr e + 42 +1 cmd #00000110b ; Entry mode set +0034 D2B2 43 +1 setb e +0036 759006 44 +1 mov d , #00000110b +0039 C2B2 45 +1 clr e + 46 +1 cmd #00001111b ; Display ON/OFF control +003B D2B2 47 +1 setb e +003D 75900F 48 +1 mov d , #00001111b +0040 C2B2 49 +1 clr e + 50 +1 cmd #00011110b ; Cursor/display shift +0042 D2B2 51 +1 setb e +0044 75901E 52 +1 mov d , #00011110b +0047 C2B2 53 +1 clr e + 54 +1 cmd #00111100b ; Function set +0049 D2B2 55 +1 setb e +004B 75903C 56 +1 mov d , #00111100b +004E C2B2 57 +1 clr e + 58 +1 cmd #10000001b ; Set DDRAM address +0050 D2B2 59 +1 setb e +0052 759081 60 +1 mov d , #10000001b +0055 C2B2 61 +1 clr e + 62 + 63 ; Print the string ... +0057 D2B0 64 setb RS +0059 7800 65 mov R0, #0 +005B E8 66 print: mov A, R0 +005C 08 67 inc R0 +005D 93 68 movc A, @A+DPTR + 69 +1 cmd A +005E D2B2 70 +1 setb e +0060 F590 71 +1 mov d , A +0062 C2B2 72 +1 clr e +0064 B400F4 73 cjne A, #0, print +0067 80BB 74 sjmp main + 75 + 76 end +ASSEMBLY COMPLETE, NO ERRORS FOUND, NO WARNINGS + + +SYMBOL TABLE: +??MCU_8051_IDE . . . . . . . . . . . N NUMB 8051H NOT USED +??VERSION. . . . . . . . . . . . . . N NUMB 0147H NOT USED +AC . . . . . . . . . . . . . . . . . B ADDR 00D6H NOT USED +ACC. . . . . . . . . . . . . . . . . D ADDR 00E0H NOT USED +ACSR . . . . . . . . . . . . . . . . D ADDR 0097H NOT USED +ADCF . . . . . . . . . . . . . . . . D ADDR 00F6H NOT USED +ADCLK. . . . . . . . . . . . . . . . D ADDR 00F2H NOT USED +ADCON. . . . . . . . . . . . . . . . D ADDR 00F3H NOT USED +ADDH . . . . . . . . . . . . . . . . D ADDR 00F5H NOT USED +ADDL . . . . . . . . . . . . . . . . D ADDR 00F4H NOT USED +AUXR . . . . . . . . . . . . . . . . D ADDR 008EH NOT USED +AUXR1. . . . . . . . . . . . . . . . D ADDR 00A2H NOT USED +B. . . . . . . . . . . . . . . . . . D ADDR 00F0H NOT USED +BDRCON . . . . . . . . . . . . . . . D ADDR 009BH NOT USED +BDRCON_1 . . . . . . . . . . . . . . D ADDR 009CH NOT USED +BRL. . . . . . . . . . . . . . . . . D ADDR 009AH NOT USED +CCAP0H . . . . . . . . . . . . . . . D ADDR 00FAH NOT USED +CCAP0L . . . . . . . . . . . . . . . D ADDR 00EAH NOT USED +CCAP1H . . . . . . . . . . . . . . . D ADDR 00FBH NOT USED +CCAP1L . . . . . . . . . . . . . . . D ADDR 00EBH NOT USED +CCAP2H . . . . . . . . . . . . . . . D ADDR 00FCH NOT USED +CCAP3H . . . . . . . . . . . . . . . D ADDR 00FDH NOT USED +CCAP4H . . . . . . . . . . . . . . . D ADDR 00FEH NOT USED +CCAPL2H. . . . . . . . . . . . . . . D ADDR 00FCH NOT USED +CCAPL2L. . . . . . . . . . . . . . . D ADDR 00ECH NOT USED +CCAPL3H. . . . . . . . . . . . . . . D ADDR 00FDH NOT USED +CCAPL3L. . . . . . . . . . . . . . . D ADDR 00EDH NOT USED +CCAPL4H. . . . . . . . . . . . . . . D ADDR 00FEH NOT USED +CCAPL4L. . . . . . . . . . . . . . . D ADDR 00EEH NOT USED +CCAPM0 . . . . . . . . . . . . . . . D ADDR 00DAH NOT USED +CCAPM1 . . . . . . . . . . . . . . . D ADDR 00DBH NOT USED +CCAPM2 . . . . . . . . . . . . . . . D ADDR 00DCH NOT USED +CCAPM3 . . . . . . . . . . . . . . . D ADDR 00DDH NOT USED +CCAPM4 . . . . . . . . . . . . . . . D ADDR 00DEH NOT USED +CCF0 . . . . . . . . . . . . . . . . B ADDR 00D8H NOT USED +CCF1 . . . . . . . . . . . . . . . . B ADDR 00D9H NOT USED +CCF2 . . . . . . . . . . . . . . . . B ADDR 00DAH NOT USED +CCF3 . . . . . . . . . . . . . . . . B ADDR 00DBH NOT USED +CCF4 . . . . . . . . . . . . . . . . B ADDR 00DCH NOT USED +CCON . . . . . . . . . . . . . . . . D ADDR 00D8H NOT USED +CFINT. . . . . . . . . . . . . . . . C ADDR 0033H NOT USED +CH . . . . . . . . . . . . . . . . . D ADDR 00F9H NOT USED +CKCON. . . . . . . . . . . . . . . . D ADDR 008FH NOT USED +CKCON0 . . . . . . . . . . . . . . . D ADDR 008FH NOT USED +CKRL . . . . . . . . . . . . . . . . D ADDR 0097H NOT USED +CKSEL. . . . . . . . . . . . . . . . D ADDR 0085H NOT USED +CL . . . . . . . . . . . . . . . . . D ADDR 00E9H NOT USED +CLKREG . . . . . . . . . . . . . . . D ADDR 008FH NOT USED +CMOD . . . . . . . . . . . . . . . . D ADDR 00D9H NOT USED +CPRL2. . . . . . . . . . . . . . . . B ADDR 00C8H NOT USED +CR . . . . . . . . . . . . . . . . . B ADDR 00DEH NOT USED +CT2. . . . . . . . . . . . . . . . . B ADDR 00C9H NOT USED +CY . . . . . . . . . . . . . . . . . B ADDR 00D7H NOT USED +D. . . . . . . . . . . . . . . . . . N NUMB 0090H +DP0H . . . . . . . . . . . . . . . . D ADDR 0083H NOT USED +DP0L . . . . . . . . . . . . . . . . D ADDR 0082H NOT USED +DP1H . . . . . . . . . . . . . . . . D ADDR 0085H NOT USED +DP1L . . . . . . . . . . . . . . . . D ADDR 0084H NOT USED +DPH. . . . . . . . . . . . . . . . . D ADDR 0083H NOT USED +DPL. . . . . . . . . . . . . . . . . D ADDR 0082H NOT USED +E. . . . . . . . . . . . . . . . . . B ADDR 00B2H +EA . . . . . . . . . . . . . . . . . B ADDR 00AFH NOT USED +EC . . . . . . . . . . . . . . . . . B ADDR 00AEH NOT USED +EECON. . . . . . . . . . . . . . . . D ADDR 0096H NOT USED +ES . . . . . . . . . . . . . . . . . B ADDR 00ACH NOT USED +ET0. . . . . . . . . . . . . . . . . B ADDR 00A9H NOT USED +ET1. . . . . . . . . . . . . . . . . B ADDR 00ABH NOT USED +ET2. . . . . . . . . . . . . . . . . B ADDR 00ADH NOT USED +EX0. . . . . . . . . . . . . . . . . B ADDR 00A8H NOT USED +EX1. . . . . . . . . . . . . . . . . B ADDR 00AAH NOT USED +EXEN2. . . . . . . . . . . . . . . . B ADDR 00CBH NOT USED +EXF2 . . . . . . . . . . . . . . . . B ADDR 00CEH NOT USED +EXTI0. . . . . . . . . . . . . . . . C ADDR 0003H NOT USED +EXTI1. . . . . . . . . . . . . . . . C ADDR 0013H NOT USED +F0 . . . . . . . . . . . . . . . . . B ADDR 00D5H NOT USED +FE . . . . . . . . . . . . . . . . . B ADDR 009FH NOT USED +IE . . . . . . . . . . . . . . . . . D ADDR 00A8H NOT USED +IE0. . . . . . . . . . . . . . . . . B ADDR 0089H NOT USED +IE1. . . . . . . . . . . . . . . . . B ADDR 008BH NOT USED +INT0 . . . . . . . . . . . . . . . . B ADDR 00B2H NOT USED +INT1 . . . . . . . . . . . . . . . . B ADDR 00B3H NOT USED +IP . . . . . . . . . . . . . . . . . D ADDR 00B8H NOT USED +IPH. . . . . . . . . . . . . . . . . D ADDR 00B7H NOT USED +IPH0 . . . . . . . . . . . . . . . . D ADDR 00B7H NOT USED +IPH1 . . . . . . . . . . . . . . . . D ADDR 00B3H NOT USED +IPL0 . . . . . . . . . . . . . . . . D ADDR 00B8H NOT USED +IPL1 . . . . . . . . . . . . . . . . D ADDR 00B2H NOT USED +IT0. . . . . . . . . . . . . . . . . B ADDR 0088H NOT USED +IT1. . . . . . . . . . . . . . . . . B ADDR 008AH NOT USED +KBE. . . . . . . . . . . . . . . . . D ADDR 009DH NOT USED +KBF. . . . . . . . . . . . . . . . . D ADDR 009EH NOT USED +KBLS . . . . . . . . . . . . . . . . D ADDR 009CH NOT USED +MAIN . . . . . . . . . . . . . . . . C ADDR 0024H +OSCCON . . . . . . . . . . . . . . . D ADDR 0086H NOT USED +OV . . . . . . . . . . . . . . . . . B ADDR 00D2H NOT USED +P. . . . . . . . . . . . . . . . . . B ADDR 00D0H NOT USED +P0 . . . . . . . . . . . . . . . . . D ADDR 0080H NOT USED +P1 . . . . . . . . . . . . . . . . . D ADDR 0090H NOT USED +P1M1 . . . . . . . . . . . . . . . . D ADDR 00D4H NOT USED +P1M2 . . . . . . . . . . . . . . . . D ADDR 00E2H NOT USED +P2 . . . . . . . . . . . . . . . . . D ADDR 00A0H NOT USED +P3 . . . . . . . . . . . . . . . . . D ADDR 00B0H NOT USED +P3M1 . . . . . . . . . . . . . . . . D ADDR 00D5H NOT USED +P3M2 . . . . . . . . . . . . . . . . D ADDR 00E3H NOT USED +P4 . . . . . . . . . . . . . . . . . D ADDR 00C0H NOT USED +P4M1 . . . . . . . . . . . . . . . . D ADDR 00D6H NOT USED +P4M2 . . . . . . . . . . . . . . . . D ADDR 00E4H NOT USED +P5 . . . . . . . . . . . . . . . . . D ADDR 00E8H NOT USED +PC . . . . . . . . . . . . . . . . . B ADDR 00BEH NOT USED +PCON . . . . . . . . . . . . . . . . D ADDR 0087H NOT USED +PPCL . . . . . . . . . . . . . . . . B ADDR 00BEH NOT USED +PRINT. . . . . . . . . . . . . . . . C ADDR 005BH +PS . . . . . . . . . . . . . . . . . B ADDR 00BCH NOT USED +PSL. . . . . . . . . . . . . . . . . B ADDR 00BCH NOT USED +PSW. . . . . . . . . . . . . . . . . D ADDR 00D0H NOT USED +PT0. . . . . . . . . . . . . . . . . B ADDR 00B9H NOT USED +PT0L . . . . . . . . . . . . . . . . B ADDR 00B9H NOT USED +PT1. . . . . . . . . . . . . . . . . B ADDR 00BBH NOT USED +PT1L . . . . . . . . . . . . . . . . B ADDR 00BBH NOT USED +PT2. . . . . . . . . . . . . . . . . B ADDR 00BDH NOT USED +PT2L . . . . . . . . . . . . . . . . B ADDR 00BDH NOT USED +PX0. . . . . . . . . . . . . . . . . B ADDR 00B8H NOT USED +PX0L . . . . . . . . . . . . . . . . B ADDR 00B8H NOT USED +PX1. . . . . . . . . . . . . . . . . B ADDR 00BAH NOT USED +PX1L . . . . . . . . . . . . . . . . B ADDR 00BAH NOT USED +RB8. . . . . . . . . . . . . . . . . B ADDR 009AH NOT USED +RCAP2H . . . . . . . . . . . . . . . D ADDR 00CBH NOT USED +RCAP2L . . . . . . . . . . . . . . . D ADDR 00CAH NOT USED +RCLK . . . . . . . . . . . . . . . . B ADDR 00CDH NOT USED +RD . . . . . . . . . . . . . . . . . B ADDR 00B7H NOT USED +REN. . . . . . . . . . . . . . . . . B ADDR 009CH NOT USED +RESET. . . . . . . . . . . . . . . . C ADDR 0000H NOT USED +RI . . . . . . . . . . . . . . . . . B ADDR 0098H NOT USED +RS . . . . . . . . . . . . . . . . . B ADDR 00B0H +RS0. . . . . . . . . . . . . . . . . B ADDR 00D3H NOT USED +RS1. . . . . . . . . . . . . . . . . B ADDR 00D4H NOT USED +RW . . . . . . . . . . . . . . . . . B ADDR 00B1H +RXD. . . . . . . . . . . . . . . . . B ADDR 00B0H NOT USED +SADDR. . . . . . . . . . . . . . . . D ADDR 00A9H NOT USED +SADDR_0. . . . . . . . . . . . . . . D ADDR 00A9H NOT USED +SADDR_1. . . . . . . . . . . . . . . D ADDR 00AAH NOT USED +SADEN. . . . . . . . . . . . . . . . D ADDR 00B9H NOT USED +SADEN_0. . . . . . . . . . . . . . . D ADDR 00B9H NOT USED +SADEN_1. . . . . . . . . . . . . . . D ADDR 00BAH NOT USED +SBUF . . . . . . . . . . . . . . . . D ADDR 0099H NOT USED +SCON . . . . . . . . . . . . . . . . D ADDR 0098H NOT USED +SINT . . . . . . . . . . . . . . . . C ADDR 0023H NOT USED +SM0. . . . . . . . . . . . . . . . . B ADDR 009FH NOT USED +SM1. . . . . . . . . . . . . . . . . B ADDR 009EH NOT USED +SM2. . . . . . . . . . . . . . . . . B ADDR 009DH NOT USED +SP . . . . . . . . . . . . . . . . . D ADDR 0081H NOT USED +SPCON. . . . . . . . . . . . . . . . D ADDR 00C3H NOT USED +SPCR . . . . . . . . . . . . . . . . D ADDR 00D5H NOT USED +SPDAT. . . . . . . . . . . . . . . . D ADDR 00C5H NOT USED +SPDR . . . . . . . . . . . . . . . . D ADDR 0086H NOT USED +SPSR . . . . . . . . . . . . . . . . D ADDR 00AAH NOT USED +SPSTA. . . . . . . . . . . . . . . . D ADDR 00C4H NOT USED +START. . . . . . . . . . . . . . . . C ADDR 001CH +STRING . . . . . . . . . . . . . . . C ADDR 0003H +T0 . . . . . . . . . . . . . . . . . B ADDR 00B4H NOT USED +T1 . . . . . . . . . . . . . . . . . B ADDR 00B5H NOT USED +T2CON. . . . . . . . . . . . . . . . D ADDR 00C8H NOT USED +T2MOD. . . . . . . . . . . . . . . . D ADDR 00C9H NOT USED +TB8. . . . . . . . . . . . . . . . . B ADDR 009BH NOT USED +TCLK . . . . . . . . . . . . . . . . B ADDR 00CCH NOT USED +TCON . . . . . . . . . . . . . . . . D ADDR 0088H NOT USED +TF0. . . . . . . . . . . . . . . . . B ADDR 008DH NOT USED +TF1. . . . . . . . . . . . . . . . . B ADDR 008FH NOT USED +TF2. . . . . . . . . . . . . . . . . B ADDR 00CFH NOT USED +TH0. . . . . . . . . . . . . . . . . D ADDR 008CH NOT USED +TH1. . . . . . . . . . . . . . . . . D ADDR 008DH NOT USED +TH2. . . . . . . . . . . . . . . . . D ADDR 00CDH NOT USED +TI . . . . . . . . . . . . . . . . . B ADDR 0099H NOT USED +TIMER0 . . . . . . . . . . . . . . . C ADDR 000BH NOT USED +TIMER1 . . . . . . . . . . . . . . . C ADDR 001BH NOT USED +TIMER2 . . . . . . . . . . . . . . . C ADDR 002BH NOT USED +TL0. . . . . . . . . . . . . . . . . D ADDR 008AH NOT USED +TL1. . . . . . . . . . . . . . . . . D ADDR 008BH NOT USED +TL2. . . . . . . . . . . . . . . . . D ADDR 00CCH NOT USED +TMOD . . . . . . . . . . . . . . . . D ADDR 0089H NOT USED +TR0. . . . . . . . . . . . . . . . . B ADDR 008CH NOT USED +TR1. . . . . . . . . . . . . . . . . B ADDR 008EH NOT USED +TR2. . . . . . . . . . . . . . . . . B ADDR 00CAH NOT USED +TXD. . . . . . . . . . . . . . . . . B ADDR 00B1H NOT USED +WDTCON . . . . . . . . . . . . . . . D ADDR 00A7H NOT USED +WDTPRG . . . . . . . . . . . . . . . D ADDR 00A7H NOT USED +WDTRST . . . . . . . . . . . . . . . D ADDR 00A6H NOT USED +WR . . . . . . . . . . . . . . . . . B ADDR 00B6H NOT USED
\ No newline at end of file diff --git a/demo/LCD.vhc b/demo/LCD.vhc new file mode 100644 index 0000000..16d8582 --- /dev/null +++ b/demo/LCD.vhc @@ -0,0 +1,4 @@ +# MCU 8051 IDE: Virtual HW configuration file +# Project: Demo project + +LcdHD44780 {2 24 633x172+515+234 {0 3 4 1 8 1 1 3 5 1 9 1 10 1 2 3 6 1 3 1 7 1} {0 7 4 1 8 5 1 6 5 2 9 6 10 7 2 5 6 3 3 0 7 4} {} 1 1 0 0 0 1 1x1+0+0 withdrawn {0 {}} {0 {}} 1} diff --git a/demo/demo0.adf b/demo/demo0.adf index 7de7de2..488eaa3 100644 --- a/demo/demo0.adf +++ b/demo/demo0.adf @@ -1,7 +1,7 @@ -# Assembler debug file for MCU 8051 IDE v1.1 +# Assembler debug file for MCU 8051 IDE v1.4.7 # Used assembler: MCU 8051 IDE -# Date: 03/02/09 -87B0FFA871A3B2978A4FD4309AE5D3D4 "demo0.asm" +# Date: 12/28/2012 +477C5C6C6472852B9BCD48A6D3A103DF "demo0.asm" 0 8 0 8 0 9 1 6 0 10 2 184 127 251 diff --git a/demo/demo0.asm b/demo/demo0.asm index f44ee47..52bc58a 100644 --- a/demo/demo0.asm +++ b/demo/demo0.asm @@ -1,10 +1,10 @@ -; MCU 8051 IDE - Demostration code +; MCU 8051 IDE - Demonstration code ; Very simple code ; Press F2 and F6 to run the program (start simulator and animate) org 0h - + main: inc R0 inc @R0 cjne R0, #07Fh, main diff --git a/demo/demo0.bin b/demo/demo0.bin deleted file mode 100644 index 5511873..0000000 --- a/demo/demo0.bin +++ /dev/null @@ -1 +0,0 @@ -¸û
\ No newline at end of file diff --git a/demo/demo0.hex b/demo/demo0.hex index d34107a..191e6c0 100644 --- a/demo/demo0.hex +++ b/demo/demo0.hex @@ -1,2 +1,2 @@ :090000000806B87FFB780080F7C8 -:00000001FF
\ No newline at end of file +:00000001FF diff --git a/demo/demo0.lst b/demo/demo0.lst index 2a87958..962e719 100644 --- a/demo/demo0.lst +++ b/demo/demo0.lst @@ -1,22 +1,24 @@ demo0 PAGE 1 - 1 ; MCU 8051 IDE - Demostration code + 1 ; MCU 8051 IDE - Demonstration code 2 ; Very simple code 3 4 ; Press F2 and F6 to run the program (start simulator and animate) 5 6 org 0h 7 -0000 06 8 main: inc R0 -0001 B87FFB 9 inc @R0 -0002 7800 10 cjne R0, #07Fh, main -0005 80F7 11 mov R0, #0d - 12 sjmp main +0000 08 8 main: inc R0 +0001 06 9 inc @R0 +0002 B87FFB 10 cjne R0, #07Fh, main +0005 7800 11 mov R0, #0d +0007 80F7 12 sjmp main 13 14 end ASSEMBLY COMPLETE, NO ERRORS FOUND, NO WARNINGS SYMBOL TABLE: +??MCU_8051_IDE . . . . . . . . . . . N NUMB 8051H NOT USED +??VERSION. . . . . . . . . . . . . . N NUMB 0147H NOT USED AC . . . . . . . . . . . . . . . . . B ADDR 00D6H NOT USED ACC. . . . . . . . . . . . . . . . . D ADDR 00E0H NOT USED ACSR . . . . . . . . . . . . . . . . D ADDR 0097H NOT USED diff --git a/demo/demo0.sim b/demo/demo0.sim deleted file mode 100644 index a2482bc..0000000 --- a/demo/demo0.sim +++ /dev/null @@ -1,6 +0,0 @@ -458DB610414A7EC882B8DFA06C1D6748 12/21/07 demo0.asm -8 0 8 -9 1 6 -10 2 184 127 251 -11 5 120 0 -12 7 128 247
\ No newline at end of file diff --git a/demo/demo1.adf b/demo/demo1.adf index e4387cf..0a7873a 100644 --- a/demo/demo1.adf +++ b/demo/demo1.adf @@ -1,7 +1,7 @@ -# Assembler debug file for MCU 8051 IDE v1.1 +# Assembler debug file for MCU 8051 IDE v1.4.7 # Used assembler: MCU 8051 IDE -# Date: 03/02/09 -D9C47EC024BB961B1F86B2A2C82D6D7A "demo1.asm" +# Date: 12/28/2012 +2078A8D0F7F402380D20B396DE54ECD6 "demo1.asm" 0 48 0 128 0 0 52 2 117 144 15 0 53 5 117 176 30 @@ -16,4 +16,4 @@ D9C47EC024BB961B1F86B2A2C82D6D7A "demo1.asm" 0 58 24 35 0 58 25 245 144 0 59 27 128 237 -0 17 29 4
\ No newline at end of file +0 17 511 4
\ No newline at end of file diff --git a/demo/demo1.asm b/demo/demo1.asm index 3ba82dd..0587166 100644 --- a/demo/demo1.asm +++ b/demo/demo1.asm @@ -1,11 +1,11 @@ -; MCU 8051 IDE - Demostration code +; MCU 8051 IDE - Demonstration code ; Macro instructions, conditional compilation and constants ; Try tab "Graph" on bottom panel ; Press F2 and F6 to run the program (start simulator and animate) $TITLE('DEMO 2') ; Set title for code listing -$DATE(36/-4/1907) ; Set date for code listing +$DATE(11/29/1182) ; Set date for code listing (the 29th of November 1182, welcome back to the Medieval Era) ; Constant definitions ; -------------------- @@ -16,10 +16,10 @@ inc_dec equ 100 / X ; Flag: Increment/Decrement counter cseg at 1FFh ; Code segment starts at 0x1FF something: db 4d ; Reserve 4 bytes in this segment -; Macro instructions +; Macro instructions ; -------------------- -;; Shift the given registeres +;; Shift the given registers shift macro reg0, reg1 ; Increment / Decrement counter @@ -42,7 +42,7 @@ shift macro reg0, reg1 mov reg0, A endm -; Program initilization +; Program initialization ; -------------------- org 0h sjmp start diff --git a/demo/demo1.bin b/demo/demo1.bin Binary files differdeleted file mode 100644 index 4f74af1..0000000 --- a/demo/demo1.bin +++ /dev/null diff --git a/demo/demo1.hex b/demo/demo1.hex index f83cb51..1e95cae 100644 --- a/demo/demo1.hex +++ b/demo/demo1.hex @@ -1,2 +1,4 @@ -:1E000000800075900F75B01E8000E50F04F50F8590B085B090D3E59023F59080ED04A4 -:00000001FF
\ No newline at end of file +:0F000000800075900F75B01E8000E50F04F50F9E +:0E000F008590B085B090D3E59023F59080EDFC +:0101FF0004FB +:00000001FF diff --git a/demo/demo1.lst b/demo/demo1.lst index 25d0ef4..687181e 100644 --- a/demo/demo1.lst +++ b/demo/demo1.lst @@ -1,12 +1,12 @@ -demo1 DEMO 2 36/-4/1907 PAGE 1 - 1 ; MCU 8051 IDE - Demostration code +demo1 DEMO 2 11/29/1182 PAGE 1 + 1 ; MCU 8051 IDE - Demonstration code 2 ; Macro instructions, conditional compilation and constants 3 ; Try tab "Graph" on bottom panel 4 5 ; Press F2 and F6 to run the program (start simulator and animate) 6 7 $TITLE('DEMO 2') ; Set title for code listing - 8 $DATE(36/-4/1907) ; Set date for code listing + 8 $DATE(11/29/1182) ; Set date for code listing (the 29th of November 1182, welcome back to the M 9 10 ; Constant definitions 11 ; -------------------- @@ -15,12 +15,12 @@ demo1 DEMO 2 0001 14 inc_dec equ 100 / X ; Flag: Increment/Decrement counter 15 16 cseg at 1FFh ; Code segment starts at 0x1FF - 17 something: db 4d ; Reserve 4 bytes in this segment +01FF 04 17 something: db 4d ; Reserve 4 bytes in this segment 18 19 ; Macro instructions 20 ; -------------------- 21 - 22 ;; Shift the given registeres + 22 ;; Shift the given registers 23 shift macro reg0, reg1 24 25 ; Increment / Decrement counter @@ -42,40 +42,50 @@ demo1 DEMO 2 42 mov reg0, A 43 endm 44 - 45 ; Program initilization + 45 ; Program initialization 46 ; -------------------- -0000 75900F 47 org 0h -0002 75B01E 48 sjmp start + 47 org 0h +****WARNING: This ORG has lower value than the previous one +0000 8000 48 sjmp start 49 50 ; Program start 51 ; -------------------- -0005 8000 52 start: mov P1, #00Fh -0008 E50F 53 mov P3, #01Eh - 54 +1 sjmp main - 55 +1 -000A 04 56 +1 mov a, counter -000C F50F 57 +1 inc a -000D 8590B0 58 +1 mov counter, a +0002 75900F 52 start: mov P1, #00Fh +0005 75B01E 53 mov P3, #01Eh +0008 8000 54 sjmp main + 55 + 56 ; Main loop + 57 ; -------------------- + 58 +1 main: shift P1, P3 59 +1 -000F 85B090 60 +1 mov p3, p1 -0012 D3 61 +1 mov p1, p3 -0015 E590 62 +1 setb c -0016 23 63 +1 mov a, p1 -0018 F590 64 +1 rl a -0019 80ED 65 +1 mov p1, a - 66 - 67 ; Main loop - 68 ; -------------------- - 69 main: shift P1, P3 - 70 sjmp main - 71 - 72 ; Program end - 73 ; -------------------- - 74 end -ASSEMBLY COMPLETE, NO ERRORS FOUND, NO WARNINGS +000A E50F 60 +1 mov a , counter + 61 +1 if inc_dec <> 0 +000C 04 62 +1 inc a + 63 +1 else + 64 +1 dec a + 65 +1 endif +000D F50F 66 +1 mov counter , a + 67 +1 +000F 8590B0 68 +1 mov P3 , P1 +0012 85B090 69 +1 mov P1 , P3 +0015 D3 70 +1 setb c +0016 E590 71 +1 mov a , P1 +0018 23 72 +1 rl a +0019 F590 73 +1 mov P1 , a +001B 80ED 74 sjmp main + 75 + 76 ; Program end + 77 ; -------------------- + 78 end +ASSEMBLY COMPLETE, NO ERRORS FOUND, 1 WARNING +ERROR SUMMARY: +Line 49, WARNING: This ORG has lower value than the previous one + SYMBOL TABLE: +??MCU_8051_IDE . . . . . . . . . . . N NUMB 8051H NOT USED +??VERSION. . . . . . . . . . . . . . N NUMB 0147H NOT USED AC . . . . . . . . . . . . . . . . . B ADDR 00D6H NOT USED ACC. . . . . . . . . . . . . . . . . D ADDR 00E0H NOT USED ACSR . . . . . . . . . . . . . . . . D ADDR 0097H NOT USED @@ -221,7 +231,7 @@ SINT . . . . . . . . . . . . . . . . C ADDR 0023H NOT USED SM0. . . . . . . . . . . . . . . . . B ADDR 009FH NOT USED SM1. . . . . . . . . . . . . . . . . B ADDR 009EH NOT USED SM2. . . . . . . . . . . . . . . . . B ADDR 009DH NOT USED -SOMETHING. . . . . . . . . . . . . . C ADDR 001DH NOT USED +SOMETHING. . . . . . . . . . . . . . C ADDR 01FFH NOT USED SP . . . . . . . . . . . . . . . . . D ADDR 0081H NOT USED SPCON. . . . . . . . . . . . . . . . D ADDR 00C3H NOT USED SPCR . . . . . . . . . . . . . . . . D ADDR 00D5H NOT USED diff --git a/demo/demo1.sim b/demo/demo1.sim deleted file mode 100644 index 1d235f3..0000000 --- a/demo/demo1.sim +++ /dev/null @@ -1,16 +0,0 @@ -C4FD5C3C2DF98DDEE6FE5ACA0FD745A8 12/21/07 demo1.asm -48 0 128 0 -52 2 117 144 15 -53 5 117 176 30 -54 8 128 0 -58 10 229 15 -58 12 4 -58 13 245 15 -58 15 133 176 144 -58 18 133 144 176 -58 21 211 -58 22 229 144 -58 24 35 -58 25 245 144 -59 27 128 237 -17 511 4
\ No newline at end of file diff --git a/demo/demo2.adf b/demo/demo2.adf index f542c32..365403a 100644 --- a/demo/demo2.adf +++ b/demo/demo2.adf @@ -1,13 +1,13 @@ -# Assembler debug file for MCU 8051 IDE v1.3.1 +# Assembler debug file for MCU 8051 IDE v1.4.7 # Used assembler: MCU 8051 IDE -# Date: 10/27/2009 -016FCF566042EC66EE9118BAFA4D4A35 "demo2.asm" +# Date: 12/28/2012 +37AFD8BE8D1F3D6436C93B0B9616E95A "demo2.asm" 0 47 0 128 28 0 50 11 128 0 0 56 13 127 26 0 57 15 126 0 0 58 17 238 -0 58 18 144 0 47 +0 58 18 144 0 208 0 58 21 147 0 58 22 141 130 0 58 24 240 @@ -22,29 +22,29 @@ 0 69 41 210 140 0 70 43 128 0 0 74 45 128 254 -0 28 47 87 -0 28 48 101 -0 28 49 108 -0 28 50 99 -0 28 51 111 -0 28 52 109 -0 28 53 101 -0 28 54 32 -0 28 55 105 -0 28 56 110 -0 28 57 32 -0 28 58 77 -0 28 59 67 -0 28 60 85 -0 28 61 32 -0 28 62 56 -0 28 63 48 -0 28 64 53 -0 28 65 49 -0 28 66 32 -0 28 67 73 -0 28 68 68 -0 28 69 69 -0 28 70 32 -0 28 71 33 -0 28 72 32
\ No newline at end of file +0 28 208 87 +0 28 209 101 +0 28 210 108 +0 28 211 99 +0 28 212 111 +0 28 213 109 +0 28 214 101 +0 28 215 32 +0 28 216 105 +0 28 217 110 +0 28 218 32 +0 28 219 77 +0 28 220 67 +0 28 221 85 +0 28 222 32 +0 28 223 56 +0 28 224 48 +0 28 225 53 +0 28 226 49 +0 28 227 32 +0 28 228 73 +0 28 229 68 +0 28 230 69 +0 28 231 32 +0 28 232 33 +0 28 233 32
\ No newline at end of file diff --git a/demo/demo2.asm b/demo/demo2.asm index d3f595d..9573416 100644 --- a/demo/demo2.asm +++ b/demo/demo2.asm @@ -1,4 +1,4 @@ -; MCU 8051 IDE - Demostration code +; MCU 8051 IDE - Demonstration code ; Interrupts, hexadecimal editor and code validator ; ------------------------------------------------------ ; THIS REQUIRES ANOTHER MCU THAN AT89C2051 BECAUSE @@ -18,7 +18,7 @@ if 0 mov A, #55d, B ; too many operands inc 0FFh,, 04x4h ; invalid operands db (4 *** 5) ; invalid expression -label?: mul B ; ivalid label and invalid operand +label?: mul B ; invalid label and invalid operand endif list ; Enable code listing @@ -41,7 +41,7 @@ write_to_xdata macro str, code_ptr, xdata_ptr inc code_ptr endm -; Program initilization +; Program initialization ; -------------------- org 0h ; Reset vector sjmp start @@ -49,10 +49,10 @@ endm org 0Bh ; Interrupt vector - T0 sjmp T0_int -; Subprograms +; Sub-programs ; -------------------- -;; Hadnle interrupt from TF0 +;; Handle interrupt from TF0 T0_int: mov R7, #string_legth mov R6, #0h loop: write_to_xdata string, R6, R5 @@ -71,7 +71,7 @@ start: ; Start timer 0 in mode 2 ; Main loop ; -------------------- -main: sjmp $ ; Inifinite loop +main: sjmp $ ; Infinite loop ; Program end ; -------------------- diff --git a/demo/demo2.bin b/demo/demo2.bin Binary files differdeleted file mode 100644 index 031c85b..0000000 --- a/demo/demo2.bin +++ /dev/null diff --git a/demo/demo2.hex b/demo/demo2.hex index 1139f92..6449cc4 100644 --- a/demo/demo2.hex +++ b/demo/demo2.hex @@ -1,3 +1,7 @@ :02000000801C62 -:3E000B0080007F1A7E00EE90002F938D82F00D0EDFF4327D0075A8FF758AFF758903D28C800080FE57656C636F6D6520696E204D4355203830353120494445202120C4 -:00000001FF
\ No newline at end of file +:10000B0080007F1A7E00EE9000D0938D82F00D0E53 +:10001B00DFF4327D0075A8FF758AFF758903D28CDA +:04002B00800080FED3 +:1000D00057656C636F6D6520696E204D4355203800 +:0A00E000303531204944452021202D +:00000001FF diff --git a/demo/demo2.lst b/demo/demo2.lst index 4ce2673..2414232 100644 --- a/demo/demo2.lst +++ b/demo/demo2.lst @@ -1,5 +1,5 @@ demo2 PAGE 1 -0048 80FE 1 ; MCU 8051 IDE - Demostration code + 1 ; MCU 8051 IDE - Demonstration code 2 ; Interrupts, hexadecimal editor and code validator 3 ; ------------------------------------------------------ 4 ; THIS REQUIRES ANOTHER MCU THAN AT89C2051 BECAUSE @@ -20,7 +20,12 @@ demo2 25 ; Constants 26 ; -------------------- 27 cseg at 0D0h - 28 string: db 'Welcome in MCU 8051 IDE ! ' +00D0 57656C636F 28 string: db 'Welcome in MCU 8051 IDE ! ' + 6D6520696E + 204D435520 + 3830353120 + 4944452021 + 20 29 001A 30 string_legth equ 26d 31 @@ -36,54 +41,58 @@ demo2 41 inc code_ptr 42 endm 43 - 44 ; Program initilization + 44 ; Program initialization 45 ; -------------------- -0000 801C 46 org 0h ; Reset vector - 47 sjmp start + 46 org 0h ; Reset vector +****WARNING: This ORG has lower value than the previous one +0000 801C 47 sjmp start 48 49 org 0Bh ; Interrupt vector - T0 - 50 sjmp T0_int +000B 8000 50 sjmp T0_int 51 - 52 ; Subprograms + 52 ; Sub-programs 53 ; -------------------- 54 - 55 ;; Hadnle interrupt from TF0 - 56 T0_int: mov R7, #string_legth - 57 mov R6, #0h + 55 ;; Handle interrupt from TF0 +000D 7F1A 56 T0_int: mov R7, #string_legth +000F 7E00 57 mov R6, #0h 58 +1 loop: write_to_xdata string, R6, R5 - 59 +1 mov a, r6 - 60 +1 mov dptr, #string - 61 +1 movc a, @a+dptr - 62 +1 mov dpl, r5 - 63 +1 movx @dptr, a - 64 +1 inc r5 - 65 +1 inc r6 - 66 djnz R7, loop - 67 reti +0011 EE 59 +1 mov a , R6 +0012 9000D0 60 +1 mov dptr , #string +0015 93 61 +1 movc a , @a+dptr +0016 8D82 62 +1 mov dpl , R5 +0018 F0 63 +1 movx @dptr , a +0019 0D 64 +1 inc R5 +001A 0E 65 +1 inc R6 +001B DFF4 66 djnz R7, loop +001D 32 67 reti 68 69 ; Program start 70 ; -------------------- 71 start: ; Start timer 0 in mode 2 - 72 mov R5, #0h - 73 mov IE, #0FFh - 74 mov TL0, #255d - 75 mov TMOD, #03h - 76 setb TR0 - 77 sjmp main +001E 7D00 72 mov R5, #0h +0020 75A8FF 73 mov IE, #0FFh +0023 758AFF 74 mov TL0, #255d +0026 758903 75 mov TMOD, #03h +0029 D28C 76 setb TR0 +002B 8000 77 sjmp main 78 79 ; Main loop 80 ; -------------------- - 81 main: sjmp $ ; Inifinite loop +002D 80FE 81 main: sjmp $ ; Infinite loop 82 83 ; Program end 84 ; -------------------- 85 end -ASSEMBLY COMPLETE, NO ERRORS FOUND, NO WARNINGS +ASSEMBLY COMPLETE, NO ERRORS FOUND, 1 WARNING +ERROR SUMMARY: +Line 48, WARNING: This ORG has lower value than the previous one + SYMBOL TABLE: ??MCU_8051_IDE . . . . . . . . . . . N NUMB 8051H NOT USED -??VERSION. . . . . . . . . . . . . . N NUMB 0131H NOT USED +??VERSION. . . . . . . . . . . . . . N NUMB 0147H NOT USED AC . . . . . . . . . . . . . . . . . B ADDR 00D6H NOT USED ACC. . . . . . . . . . . . . . . . . D ADDR 00E0H NOT USED ACSR . . . . . . . . . . . . . . . . D ADDR 0097H NOT USED @@ -236,7 +245,7 @@ SPDR . . . . . . . . . . . . . . . . D ADDR 0086H NOT USED SPSR . . . . . . . . . . . . . . . . D ADDR 00AAH NOT USED SPSTA. . . . . . . . . . . . . . . . D ADDR 00C4H NOT USED START. . . . . . . . . . . . . . . . C ADDR 001EH -STRING . . . . . . . . . . . . . . . C ADDR 002FH +STRING . . . . . . . . . . . . . . . C ADDR 00D0H STRING_LEGTH . . . . . . . . . . . . N NUMB 001AH T0 . . . . . . . . . . . . . . . . . B ADDR 00B4H NOT USED T0_INT . . . . . . . . . . . . . . . C ADDR 000DH diff --git a/demo/demo2.sim b/demo/demo2.sim deleted file mode 100644 index 4230f05..0000000 --- a/demo/demo2.sim +++ /dev/null @@ -1,47 +0,0 @@ -3E5C5EAE0BA81D024AAE08DD4B210650 12/21/07 demo2.asm -47 0 128 28 -50 11 128 0 -56 13 127 26 -57 15 126 0 -58 17 238 -58 18 144 0 208 -58 21 147 -58 22 141 130 -58 24 240 -58 25 13 -58 26 14 -59 27 223 244 -60 29 50 -65 30 125 0 -66 32 117 168 255 -67 35 117 138 255 -68 38 117 137 3 -69 41 210 140 -70 43 128 0 -74 45 128 254 -28 208 87 -28 209 101 -28 210 108 -28 211 99 -28 212 111 -28 213 109 -28 214 101 -28 215 32 -28 216 105 -28 217 110 -28 218 32 -28 219 77 -28 220 67 -28 221 85 -28 222 32 -28 223 56 -28 224 48 -28 225 53 -28 226 49 -28 227 32 -28 228 73 -28 229 68 -28 230 69 -28 231 32 -28 232 33 -28 233 32
\ No newline at end of file diff --git a/demo/demo3.adf b/demo/demo3.adf index 64c2b62..a1b6fa0 100644 --- a/demo/demo3.adf +++ b/demo/demo3.adf @@ -1,9 +1,9 @@ -# Assembler debug file for MCU 8051 IDE v1.1 +# Assembler debug file for MCU 8051 IDE v1.4.7 # Used assembler: MCU 8051 IDE -# Date: 03/02/09 -6180D365C7F535CABD42C3E78A0798B9 "demo3.asm" +# Date: 12/28/2012 +5B8A70E1D6517500E2AE4F4FA5B98BC5 "demo3.asm" 0 67 0 128 254 -0 35 2 51 -0 35 3 52 -0 36 4 51 -0 36 5 52
\ No newline at end of file +0 35 32 51 +0 35 33 52 +0 36 34 51 +0 36 35 52
\ No newline at end of file diff --git a/demo/demo3.asm b/demo/demo3.asm index d93d260..c55a966 100644 --- a/demo/demo3.asm +++ b/demo/demo3.asm @@ -1,23 +1,23 @@ -; MCU 8051 IDE - Demostration code +; MCU 8051 IDE - Demonstration code ; Compiler directives -$DATE(32/13/1907)Â Â ; Places date in page header +$DATE(32/13/1907)Â Â ; Places date in page header ; $EJECT ; Places a form feed in listing -; $INCLUDE(file.asm) ; Inserts file in source program +; $INCLUDE(file.asm) ; Inserts file in source program ; $LIST ; Allows listing to be output -; $NOLIST ; Stops outputting the listing +; $NOLIST ; Stops outputting the listing ; $NOMOD ; No predefined symbols used $OBJECT(file.hex) ; Places object output in file -; $NOOBJECT ; No object file is generated +; $NOOBJECT ; No object file is generated $PAGING ; Break output listing into pages -; $NOPAGING ; Print listing w/o page breaks +; $NOPAGING ; Print listing w/o page breaks $PAGELENGTH(10) ; No. of lines on a listing page $PAGEWIDTH(20) Â Â ; No. of columns on a listing page $PRINT(file.lst) ; Places listing output in file -; $NOPRINT ; Listing will not be output +; $NOPRINT ; Listing will not be output ; $SYMBOLS ; Append symbol table to listing -; $NOSYMBOLS ; Symbol table will not be output +; $NOSYMBOLS ; Symbol table will not be output $TITLE('demo - 3') ; Places string in page header @@ -27,29 +27,28 @@ $TITLE('demo - 3') ; Places string in page header a EQU 54d ; Define symbol b0 DATA a / 2 ; Define internal memory symbol c IDATA (b0*2-5) ; Define indirectly addressed internal memory -d BIT 070Q ; Define internal bit memory symbol +d BIT 070Q ; Define internal bit memory symbol e CODE 0FFA5h ; Define program memory symbol var SET (A * 44) MOD 9 - 14 ; Variable defined by an expression - CSEG at 20h ; Select program memory space -x: DB '34' ; Store byte values in program memory -y: DW 3334h ; Store word values in program memory + CSEG at 20h ; Select program memory space +x: DB '34' ; Store byte values in program memory +y: DW 3334h ; Store word values in program memory DSEG at 5d ; Select internal memory data space m: DS 1 ; Reserve bytes of data memory - xseg ; Select external memory data space + xseg ; Select external memory data space n: DS 1 ; Reserve bytes of data memory ISEG ; Select indirectly addressed internal memory space -o: DS 1 ; Reserve bytes of data memory +o: DS 1 ; Reserve bytes of data memory NOLIST ; Disable code listing BSEG ; Select bit addressable memory space r: DBIT 4 ; Reserve bits of bit memory LIST ; Enable code listing - mc macro label ; Define macro instruction IF 2 <> 2 OR 1 = 4 EXITM ; Exit macro @@ -57,14 +56,15 @@ mc macro label ; Define macro instruction sjmp label endm ; End of definition -main: ORG 0 ; Set segment location counter - IF 0 ; Begin conditional assembly block + CSEG ; <-- From now on, ORG refers to the code segment +main: ORG 0 ; Set segment location counter + IF 0 ; Begin conditional assembly block USING 2 ; Select register bank (define AR0..7) - ELSE ; Alternative conditional assembly block + ELSE ; Alternative conditional assembly block USING 2 ; Select register bank (define AR0..7) ENDIF ; End conditional assembly block - mc main ; Macro instuction + mc main ; Macro instruction END ; End of assembly language source file diff --git a/demo/demo3.bin b/demo/demo3.bin deleted file mode 100644 index 45d3d20..0000000 --- a/demo/demo3.bin +++ /dev/null @@ -1 +0,0 @@ -€þ3
\ No newline at end of file diff --git a/demo/demo3.sim b/demo/demo3.sim deleted file mode 100644 index ef0cd1f..0000000 --- a/demo/demo3.sim +++ /dev/null @@ -1,6 +0,0 @@ -6180D365C7F535CABD42C3E78A0798B9 12/21/07 demo3.asm -67 0 128 254 -35 32 51 -35 33 52 -36 34 51 -36 35 52
\ No newline at end of file diff --git a/demo/demo4.adf b/demo/demo4.adf index fb6a934..bde9028 100644 --- a/demo/demo4.adf +++ b/demo/demo4.adf @@ -1,8 +1,8 @@ -# Assembler Debug File created by MCU 8051 IDE v1.0.5 +# Assembler debug file for MCU 8051 IDE v1.4.7 # Used assembler: MCU 8051 IDE -# Date: 04/30/08 +# Date: 12/28/2012 7E1BFADD8BDB7A40D6B8CA5161E3113A "demo4.asm" -0 27 0 128 64 +0 27 0 1 66 0 30 3 210 152 0 30 5 210 153 0 30 7 17 58 diff --git a/demo/demo4.bin b/demo/demo4.bin Binary files differdeleted file mode 100644 index 413b6f7..0000000 --- a/demo/demo4.bin +++ /dev/null diff --git a/demo/demo4.hex b/demo/demo4.hex index 20def10..330d4f5 100644 --- a/demo/demo4.hex +++ b/demo/demo4.hex @@ -1,9 +1,10 @@ -:0200000080403E +:020000000142BB :07000300D298D299113A32A4 :07000B00D298D299113A329C :07001300D298D299113A3294 :07001B00D298D299113A328C :07002300D298D299113A3284 :07002B00D298D299113A327C -:1E003300D298D299113A327F10113F22DFFE22D28DD28FD289D28B75A8FFD2BC80FEBD -:00000001FF
\ No newline at end of file +:0F003300D298D299113A327F10113F22DFFE226C +:0F004200D28DD28FD289D28B75A8FFD2BC80FE0F +:00000001FF diff --git a/demo/demo4.lst b/demo/demo4.lst index 867750e..ccc5390 100644 --- a/demo/demo4.lst +++ b/demo/demo4.lst @@ -1,4 +1,4 @@ -demo4 PAGE 1 +demo4 PAGE 1 1 ; MCU 8051 IDE - Demostration code 2 ; Interrupt monitor and list of active subprograms 3 @@ -25,98 +25,98 @@ demo4 24 ; Interrupt vectors 25 ; ----------------- 26 org 00h ; Reset -0000 D298 27 ajmp start +0000 0142 27 ajmp start 28 - 29 +1 org 03h ; External 0 - 30 +2 - 31 +3 - 32 +4 - 33 +5 - 34 +6 - 35 +7 - 36 +7 - 37 +7 setb RI -000B 113F 38 +7 setb TI -000D 22 39 +7 - 40 +7 acall wait -000F DFFE 41 +7 reti - 42 +6 setb RI -0011 22 43 +6 setb TI - 44 +6 - 45 +6 acall wait -0013 D28F 46 +6 reti - 47 +5 setb RI -0015 D289 48 +5 setb TI - 49 +5 -0017 D28B 50 +5 acall wait -0019 75A8FF 51 +5 reti - 52 +4 setb RI - 53 +4 setb TI - 54 +4 -001B 80FE 55 +4 acall wait - 56 +4 reti - 57 +3 setb RI - 58 +3 setb TI - 59 +3 - 60 +3 acall wait - 61 +3 reti - 62 +2 setb RI - 63 +2 setb TI - 64 +2 - 65 +2 acall wait - 66 +2 reti - 67 +1 setb RI - 68 +1 setb TI - 69 +1 - 70 +1 acall wait - 71 +1 reti - 72 intr + 29 org 03h ; External 0 + 30 +1 intr + 31 +1 +0003 D298 32 +1 setb ri +0005 D299 33 +1 setb ti + 34 +1 +0007 113A 35 +1 acall wait +0009 32 36 +1 reti + 37 + 38 org 0Bh ; Timer 0 + 39 +1 intr + 40 +1 +000B D298 41 +1 setb ri +000D D299 42 +1 setb ti + 43 +1 +000F 113A 44 +1 acall wait +0011 32 45 +1 reti + 46 + 47 org 13h ; External 0 + 48 +1 intr + 49 +1 +0013 D298 50 +1 setb ri +0015 D299 51 +1 setb ti + 52 +1 +0017 113A 53 +1 acall wait +0019 32 54 +1 reti + 55 + 56 org 1Bh ; Timer 1 + 57 +1 intr + 58 +1 +001B D298 59 +1 setb ri +001D D299 60 +1 setb ti + 61 +1 +001F 113A 62 +1 acall wait +0021 32 63 +1 reti + 64 + 65 org 23h ; UART and SPI + 66 +1 intr + 67 +1 +0023 D298 68 +1 setb ri +0025 D299 69 +1 setb ti + 70 +1 +0027 113A 71 +1 acall wait +0029 32 72 +1 reti 73 - 74 org 0Bh ; Timer 0 - 75 intr - 76 - 77 org 13h ; External 0 - 78 intr - 79 - 80 org 1Bh ; Timer 1 - 81 intr + 74 org 2Bh ; Timer 2 + 75 +1 intr + 76 +1 +002B D298 77 +1 setb ri +002D D299 78 +1 setb ti + 79 +1 +002F 113A 80 +1 acall wait +0031 32 81 +1 reti 82 - 83 org 23h ; UART and SPI - 84 intr - 85 - 86 org 2Bh ; Timer 2 - 87 intr - 88 - 89 org 33h ; Analog comparator - 90 intr + 83 org 33h ; Analog comparator + 84 +1 intr + 85 +1 +0033 D298 86 +1 setb ri +0035 D299 87 +1 setb ti + 88 +1 +0037 113A 89 +1 acall wait +0039 32 90 +1 reti 91 92 ; Subprograms 93 ; ----------------- 94 wait: ; Wait for 24 cycles - 95 mov R7, #10h - 96 acall wait_aux - 97 ret +003A 7F10 95 mov R7, #10h +003C 113F 96 acall wait_aux +003E 22 97 ret 98 99 wait_aux: - 100 djnz R7, $ - 101 ret +003F DFFE 100 djnz R7, $ +0041 22 101 ret 102 103 104 ; Program start 105 ; ----------------- 106 start: 107 ; Set some interrupt bits - 108 setb TF0 - 109 setb TF1 - 110 setb IE0 - 111 setb IE1 +0042 D28D 108 setb TF0 +0044 D28F 109 setb TF1 +0046 D289 110 setb IE0 +0048 D28B 111 setb IE1 112 113 ; Enable all interrupts and set priorities - 114 mov IE, #0FFh - 115 setb PS +004A 75A8FF 114 mov IE, #0FFh +004D D2BC 115 setb PS 116 117 ; Infinite loop - 118 sjmp $ +004F 80FE 118 sjmp $ 119 120 121 ; End of code @@ -126,15 +126,57 @@ ASSEMBLY COMPLETE, NO ERRORS FOUND, NO WARNINGS SYMBOL TABLE: +??MCU_8051_IDE . . . . . . . . . . . N NUMB 8051H NOT USED +??VERSION. . . . . . . . . . . . . . N NUMB 0147H NOT USED AC . . . . . . . . . . . . . . . . . B ADDR 00D6H NOT USED ACC. . . . . . . . . . . . . . . . . D ADDR 00E0H NOT USED ACSR . . . . . . . . . . . . . . . . D ADDR 0097H NOT USED +ADCF . . . . . . . . . . . . . . . . D ADDR 00F6H NOT USED +ADCLK. . . . . . . . . . . . . . . . D ADDR 00F2H NOT USED +ADCON. . . . . . . . . . . . . . . . D ADDR 00F3H NOT USED +ADDH . . . . . . . . . . . . . . . . D ADDR 00F5H NOT USED +ADDL . . . . . . . . . . . . . . . . D ADDR 00F4H NOT USED AUXR . . . . . . . . . . . . . . . . D ADDR 008EH NOT USED AUXR1. . . . . . . . . . . . . . . . D ADDR 00A2H NOT USED B. . . . . . . . . . . . . . . . . . D ADDR 00F0H NOT USED +BDRCON . . . . . . . . . . . . . . . D ADDR 009BH NOT USED +BDRCON_1 . . . . . . . . . . . . . . D ADDR 009CH NOT USED +BRL. . . . . . . . . . . . . . . . . D ADDR 009AH NOT USED +CCAP0H . . . . . . . . . . . . . . . D ADDR 00FAH NOT USED +CCAP0L . . . . . . . . . . . . . . . D ADDR 00EAH NOT USED +CCAP1H . . . . . . . . . . . . . . . D ADDR 00FBH NOT USED +CCAP1L . . . . . . . . . . . . . . . D ADDR 00EBH NOT USED +CCAP2H . . . . . . . . . . . . . . . D ADDR 00FCH NOT USED +CCAP3H . . . . . . . . . . . . . . . D ADDR 00FDH NOT USED +CCAP4H . . . . . . . . . . . . . . . D ADDR 00FEH NOT USED +CCAPL2H. . . . . . . . . . . . . . . D ADDR 00FCH NOT USED +CCAPL2L. . . . . . . . . . . . . . . D ADDR 00ECH NOT USED +CCAPL3H. . . . . . . . . . . . . . . D ADDR 00FDH NOT USED +CCAPL3L. . . . . . . . . . . . . . . D ADDR 00EDH NOT USED +CCAPL4H. . . . . . . . . . . . . . . D ADDR 00FEH NOT USED +CCAPL4L. . . . . . . . . . . . . . . D ADDR 00EEH NOT USED +CCAPM0 . . . . . . . . . . . . . . . D ADDR 00DAH NOT USED +CCAPM1 . . . . . . . . . . . . . . . D ADDR 00DBH NOT USED +CCAPM2 . . . . . . . . . . . . . . . D ADDR 00DCH NOT USED +CCAPM3 . . . . . . . . . . . . . . . D ADDR 00DDH NOT USED +CCAPM4 . . . . . . . . . . . . . . . D ADDR 00DEH NOT USED +CCF0 . . . . . . . . . . . . . . . . B ADDR 00D8H NOT USED +CCF1 . . . . . . . . . . . . . . . . B ADDR 00D9H NOT USED +CCF2 . . . . . . . . . . . . . . . . B ADDR 00DAH NOT USED +CCF3 . . . . . . . . . . . . . . . . B ADDR 00DBH NOT USED +CCF4 . . . . . . . . . . . . . . . . B ADDR 00DCH NOT USED +CCON . . . . . . . . . . . . . . . . D ADDR 00D8H NOT USED +CFINT. . . . . . . . . . . . . . . . C ADDR 0033H NOT USED +CH . . . . . . . . . . . . . . . . . D ADDR 00F9H NOT USED CKCON. . . . . . . . . . . . . . . . D ADDR 008FH NOT USED +CKCON0 . . . . . . . . . . . . . . . D ADDR 008FH NOT USED +CKRL . . . . . . . . . . . . . . . . D ADDR 0097H NOT USED +CKSEL. . . . . . . . . . . . . . . . D ADDR 0085H NOT USED +CL . . . . . . . . . . . . . . . . . D ADDR 00E9H NOT USED CLKREG . . . . . . . . . . . . . . . D ADDR 008FH NOT USED +CMOD . . . . . . . . . . . . . . . . D ADDR 00D9H NOT USED CPRL2. . . . . . . . . . . . . . . . B ADDR 00C8H NOT USED +CR . . . . . . . . . . . . . . . . . B ADDR 00DEH NOT USED CT2. . . . . . . . . . . . . . . . . B ADDR 00C9H NOT USED CY . . . . . . . . . . . . . . . . . B ADDR 00D7H NOT USED DP0H . . . . . . . . . . . . . . . . D ADDR 0083H NOT USED @@ -144,60 +186,98 @@ DP1L . . . . . . . . . . . . . . . . D ADDR 0084H NOT USED DPH. . . . . . . . . . . . . . . . . D ADDR 0083H NOT USED DPL. . . . . . . . . . . . . . . . . D ADDR 0082H NOT USED EA . . . . . . . . . . . . . . . . . B ADDR 00AFH NOT USED +EC . . . . . . . . . . . . . . . . . B ADDR 00AEH NOT USED EECON. . . . . . . . . . . . . . . . D ADDR 0096H NOT USED ES . . . . . . . . . . . . . . . . . B ADDR 00ACH NOT USED ET0. . . . . . . . . . . . . . . . . B ADDR 00A9H NOT USED ET1. . . . . . . . . . . . . . . . . B ADDR 00ABH NOT USED +ET2. . . . . . . . . . . . . . . . . B ADDR 00ADH NOT USED EX0. . . . . . . . . . . . . . . . . B ADDR 00A8H NOT USED EX1. . . . . . . . . . . . . . . . . B ADDR 00AAH NOT USED EXEN2. . . . . . . . . . . . . . . . B ADDR 00CBH NOT USED EXF2 . . . . . . . . . . . . . . . . B ADDR 00CEH NOT USED +EXTI0. . . . . . . . . . . . . . . . C ADDR 0003H NOT USED +EXTI1. . . . . . . . . . . . . . . . C ADDR 0013H NOT USED F0 . . . . . . . . . . . . . . . . . B ADDR 00D5H NOT USED -IE . . . . . . . . . . . . . . . . . D ADDR 00A8H NOT USED -IE0. . . . . . . . . . . . . . . . . B ADDR 0089H NOT USED -IE1. . . . . . . . . . . . . . . . . B ADDR 008BH NOT USED +FE . . . . . . . . . . . . . . . . . B ADDR 009FH NOT USED +IE . . . . . . . . . . . . . . . . . D ADDR 00A8H +IE0. . . . . . . . . . . . . . . . . B ADDR 0089H +IE1. . . . . . . . . . . . . . . . . B ADDR 008BH INT0 . . . . . . . . . . . . . . . . B ADDR 00B2H NOT USED INT1 . . . . . . . . . . . . . . . . B ADDR 00B3H NOT USED IP . . . . . . . . . . . . . . . . . D ADDR 00B8H NOT USED IPH. . . . . . . . . . . . . . . . . D ADDR 00B7H NOT USED +IPH0 . . . . . . . . . . . . . . . . D ADDR 00B7H NOT USED +IPH1 . . . . . . . . . . . . . . . . D ADDR 00B3H NOT USED +IPL0 . . . . . . . . . . . . . . . . D ADDR 00B8H NOT USED +IPL1 . . . . . . . . . . . . . . . . D ADDR 00B2H NOT USED IT0. . . . . . . . . . . . . . . . . B ADDR 0088H NOT USED IT1. . . . . . . . . . . . . . . . . B ADDR 008AH NOT USED +KBE. . . . . . . . . . . . . . . . . D ADDR 009DH NOT USED +KBF. . . . . . . . . . . . . . . . . D ADDR 009EH NOT USED +KBLS . . . . . . . . . . . . . . . . D ADDR 009CH NOT USED +OSCCON . . . . . . . . . . . . . . . D ADDR 0086H NOT USED OV . . . . . . . . . . . . . . . . . B ADDR 00D2H NOT USED P. . . . . . . . . . . . . . . . . . B ADDR 00D0H NOT USED P0 . . . . . . . . . . . . . . . . . D ADDR 0080H NOT USED P1 . . . . . . . . . . . . . . . . . D ADDR 0090H NOT USED +P1M1 . . . . . . . . . . . . . . . . D ADDR 00D4H NOT USED +P1M2 . . . . . . . . . . . . . . . . D ADDR 00E2H NOT USED P2 . . . . . . . . . . . . . . . . . D ADDR 00A0H NOT USED P3 . . . . . . . . . . . . . . . . . D ADDR 00B0H NOT USED +P3M1 . . . . . . . . . . . . . . . . D ADDR 00D5H NOT USED +P3M2 . . . . . . . . . . . . . . . . D ADDR 00E3H NOT USED P4 . . . . . . . . . . . . . . . . . D ADDR 00C0H NOT USED +P4M1 . . . . . . . . . . . . . . . . D ADDR 00D6H NOT USED +P4M2 . . . . . . . . . . . . . . . . D ADDR 00E4H NOT USED +P5 . . . . . . . . . . . . . . . . . D ADDR 00E8H NOT USED +PC . . . . . . . . . . . . . . . . . B ADDR 00BEH NOT USED PCON . . . . . . . . . . . . . . . . D ADDR 0087H NOT USED -PS . . . . . . . . . . . . . . . . . B ADDR 00BCH NOT USED +PPCL . . . . . . . . . . . . . . . . B ADDR 00BEH NOT USED +PS . . . . . . . . . . . . . . . . . B ADDR 00BCH +PSL. . . . . . . . . . . . . . . . . B ADDR 00BCH NOT USED PSW. . . . . . . . . . . . . . . . . D ADDR 00D0H NOT USED PT0. . . . . . . . . . . . . . . . . B ADDR 00B9H NOT USED +PT0L . . . . . . . . . . . . . . . . B ADDR 00B9H NOT USED PT1. . . . . . . . . . . . . . . . . B ADDR 00BBH NOT USED +PT1L . . . . . . . . . . . . . . . . B ADDR 00BBH NOT USED +PT2. . . . . . . . . . . . . . . . . B ADDR 00BDH NOT USED +PT2L . . . . . . . . . . . . . . . . B ADDR 00BDH NOT USED PX0. . . . . . . . . . . . . . . . . B ADDR 00B8H NOT USED +PX0L . . . . . . . . . . . . . . . . B ADDR 00B8H NOT USED PX1. . . . . . . . . . . . . . . . . B ADDR 00BAH NOT USED +PX1L . . . . . . . . . . . . . . . . B ADDR 00BAH NOT USED RB8. . . . . . . . . . . . . . . . . B ADDR 009AH NOT USED RCAP2H . . . . . . . . . . . . . . . D ADDR 00CBH NOT USED RCAP2L . . . . . . . . . . . . . . . D ADDR 00CAH NOT USED RCLK . . . . . . . . . . . . . . . . B ADDR 00CDH NOT USED RD . . . . . . . . . . . . . . . . . B ADDR 00B7H NOT USED REN. . . . . . . . . . . . . . . . . B ADDR 009CH NOT USED -RI . . . . . . . . . . . . . . . . . B ADDR 0098H NOT USED +RESET. . . . . . . . . . . . . . . . C ADDR 0000H NOT USED +RI . . . . . . . . . . . . . . . . . B ADDR 0098H RS0. . . . . . . . . . . . . . . . . B ADDR 00D3H NOT USED RS1. . . . . . . . . . . . . . . . . B ADDR 00D4H NOT USED RXD. . . . . . . . . . . . . . . . . B ADDR 00B0H NOT USED SADDR. . . . . . . . . . . . . . . . D ADDR 00A9H NOT USED +SADDR_0. . . . . . . . . . . . . . . D ADDR 00A9H NOT USED +SADDR_1. . . . . . . . . . . . . . . D ADDR 00AAH NOT USED SADEN. . . . . . . . . . . . . . . . D ADDR 00B9H NOT USED +SADEN_0. . . . . . . . . . . . . . . D ADDR 00B9H NOT USED +SADEN_1. . . . . . . . . . . . . . . D ADDR 00BAH NOT USED SBUF . . . . . . . . . . . . . . . . D ADDR 0099H NOT USED SCON . . . . . . . . . . . . . . . . D ADDR 0098H NOT USED +SINT . . . . . . . . . . . . . . . . C ADDR 0023H NOT USED SM0. . . . . . . . . . . . . . . . . B ADDR 009FH NOT USED SM1. . . . . . . . . . . . . . . . . B ADDR 009EH NOT USED SM2. . . . . . . . . . . . . . . . . B ADDR 009DH NOT USED SP . . . . . . . . . . . . . . . . . D ADDR 0081H NOT USED +SPCON. . . . . . . . . . . . . . . . D ADDR 00C3H NOT USED SPCR . . . . . . . . . . . . . . . . D ADDR 00D5H NOT USED +SPDAT. . . . . . . . . . . . . . . . D ADDR 00C5H NOT USED SPDR . . . . . . . . . . . . . . . . D ADDR 0086H NOT USED SPSR . . . . . . . . . . . . . . . . D ADDR 00AAH NOT USED -START. . . . . . . . . . . . . . . . C ADDR 0042H NOT USED +SPSTA. . . . . . . . . . . . . . . . D ADDR 00C4H NOT USED +START. . . . . . . . . . . . . . . . C ADDR 0042H T0 . . . . . . . . . . . . . . . . . B ADDR 00B4H NOT USED T1 . . . . . . . . . . . . . . . . . B ADDR 00B5H NOT USED T2CON. . . . . . . . . . . . . . . . D ADDR 00C8H NOT USED @@ -205,13 +285,16 @@ T2MOD. . . . . . . . . . . . . . . . D ADDR 00C9H NOT USED TB8. . . . . . . . . . . . . . . . . B ADDR 009BH NOT USED TCLK . . . . . . . . . . . . . . . . B ADDR 00CCH NOT USED TCON . . . . . . . . . . . . . . . . D ADDR 0088H NOT USED -TF0. . . . . . . . . . . . . . . . . B ADDR 008DH NOT USED -TF1. . . . . . . . . . . . . . . . . B ADDR 008FH NOT USED +TF0. . . . . . . . . . . . . . . . . B ADDR 008DH +TF1. . . . . . . . . . . . . . . . . B ADDR 008FH TF2. . . . . . . . . . . . . . . . . B ADDR 00CFH NOT USED TH0. . . . . . . . . . . . . . . . . D ADDR 008CH NOT USED TH1. . . . . . . . . . . . . . . . . D ADDR 008DH NOT USED TH2. . . . . . . . . . . . . . . . . D ADDR 00CDH NOT USED -TI . . . . . . . . . . . . . . . . . B ADDR 0099H NOT USED +TI . . . . . . . . . . . . . . . . . B ADDR 0099H +TIMER0 . . . . . . . . . . . . . . . C ADDR 000BH NOT USED +TIMER1 . . . . . . . . . . . . . . . C ADDR 001BH NOT USED +TIMER2 . . . . . . . . . . . . . . . C ADDR 002BH NOT USED TL0. . . . . . . . . . . . . . . . . D ADDR 008AH NOT USED TL1. . . . . . . . . . . . . . . . . D ADDR 008BH NOT USED TL2. . . . . . . . . . . . . . . . . D ADDR 00CCH NOT USED @@ -220,8 +303,8 @@ TR0. . . . . . . . . . . . . . . . . B ADDR 008CH NOT USED TR1. . . . . . . . . . . . . . . . . B ADDR 008EH NOT USED TR2. . . . . . . . . . . . . . . . . B ADDR 00CAH NOT USED TXD. . . . . . . . . . . . . . . . . B ADDR 00B1H NOT USED -WAIT . . . . . . . . . . . . . . . . C ADDR 003AH NOT USED -WAIT_AUX . . . . . . . . . . . . . . C ADDR 003FH NOT USED +WAIT . . . . . . . . . . . . . . . . C ADDR 003AH +WAIT_AUX . . . . . . . . . . . . . . C ADDR 003FH WDTCON . . . . . . . . . . . . . . . D ADDR 00A7H NOT USED WDTPRG . . . . . . . . . . . . . . . D ADDR 00A7H NOT USED WDTRST . . . . . . . . . . . . . . . D ADDR 00A6H NOT USED diff --git a/demo/demo4.sim b/demo/demo4.sim deleted file mode 100644 index 52643cc..0000000 --- a/demo/demo4.sim +++ /dev/null @@ -1,42 +0,0 @@ -7E1BFADD8BDB7A40D6B8CA5161E3113A 01/14/08 demo4.asm -27 0 128 64 -30 3 210 152 -30 5 210 153 -30 7 17 58 -30 9 50 -33 11 210 152 -33 13 210 153 -33 15 17 58 -33 17 50 -36 19 210 152 -36 21 210 153 -36 23 17 58 -36 25 50 -39 27 210 152 -39 29 210 153 -39 31 17 58 -39 33 50 -42 35 210 152 -42 37 210 153 -42 39 17 58 -42 41 50 -45 43 210 152 -45 45 210 153 -45 47 17 58 -45 49 50 -48 51 210 152 -48 53 210 153 -48 55 17 58 -48 57 50 -53 58 127 16 -54 60 17 63 -55 62 34 -58 63 223 254 -59 65 34 -66 66 210 141 -67 68 210 143 -68 70 210 137 -69 72 210 139 -72 74 117 168 255 -73 77 210 188 -76 79 128 254
\ No newline at end of file diff --git a/demo/demo5.adf b/demo/demo5.adf index de35ed8..9cd1274 100644 --- a/demo/demo5.adf +++ b/demo/demo5.adf @@ -1,5 +1,5 @@ -# Assembler debug file for MCU 8051 IDE v1.1 +# Assembler debug file for MCU 8051 IDE v1.4.7 # Used assembler: MCU 8051 IDE -# Date: 03/02/09 -8A77C444C26BA55C5A8AC82FE0C8CFA9 "demo5.asm" +# Date: 12/28/2012 +83FBE8C57ABDDCD92CDD70B3C5326563 "demo5.asm" 0 32 0 128 254
\ No newline at end of file diff --git a/demo/demo5.asm b/demo/demo5.asm index 9c3bc68..8729c7e 100644 --- a/demo/demo5.asm +++ b/demo/demo5.asm @@ -32,4 +32,4 @@ sjmp $ end -; !!! HAVE A GOOD LUCK WITH THIS IDE !!!
\ No newline at end of file +; !!! HAVE A GOOD LUCK WITH THIS IDE !!! diff --git a/demo/demo5.bin b/demo/demo5.bin deleted file mode 100644 index 5416677..0000000 --- a/demo/demo5.bin +++ /dev/null @@ -1 +0,0 @@ -€
\ No newline at end of file diff --git a/demo/demo5.hex b/demo/demo5.hex index 0df57c5..53b1f23 100644 --- a/demo/demo5.hex +++ b/demo/demo5.hex @@ -1,2 +1,2 @@ :0200000080FE80 -:00000001FF
\ No newline at end of file +:00000001FF diff --git a/demo/demo5.lst b/demo/demo5.lst index 3468d65..66d4d77 100644 --- a/demo/demo5.lst +++ b/demo/demo5.lst @@ -30,12 +30,14 @@ demo5 29 ; !!! HAVE A GOOD LUCK WITH THIS IDE !!! 30 31 org 0 - 32 sjmp $ +0000 80FE 32 sjmp $ 33 end ASSEMBLY COMPLETE, NO ERRORS FOUND, NO WARNINGS SYMBOL TABLE: +??MCU_8051_IDE . . . . . . . . . . . N NUMB 8051H NOT USED +??VERSION. . . . . . . . . . . . . . N NUMB 0147H NOT USED AC . . . . . . . . . . . . . . . . . B ADDR 00D6H NOT USED ACC. . . . . . . . . . . . . . . . . D ADDR 00E0H NOT USED ACSR . . . . . . . . . . . . . . . . D ADDR 0097H NOT USED diff --git a/demo/demo5.sim b/demo/demo5.sim deleted file mode 100644 index 7f2a49c..0000000 --- a/demo/demo5.sim +++ /dev/null @@ -1,2 +0,0 @@ -7D9DA265AF8276820125E7E130CFFF37 12/21/07 demo4.asm -32 0 128 254
\ No newline at end of file diff --git a/demo/demo_c_0 b/demo/demo_c_0 Binary files differdeleted file mode 100644 index 671d577..0000000 --- a/demo/demo_c_0 +++ /dev/null diff --git a/demo/demo_c_0.adb b/demo/demo_c_0.adb deleted file mode 100644 index 30be84d..0000000 --- a/demo/demo_c_0.adb +++ /dev/null @@ -1,106 +0,0 @@ -M:demo_c_0 -F:G$someFunction$0$0({2}DF,SV:S),C,0,0,0,0,0 -F:G$main$0$0({2}DF,SI:S),C,0,0,0,0,0 -F:G$main$0$0({2}DF,SI:S),C,0,0,0,0,0 -S:G$some_variable$0$0({4}SL:U),E,0,0 -S:G$i$0$0({2}SI:S),E,0,0 -S:LsomeFunction$somevalue$1$1({1}SC:U),R,0,0,[r2] -S:G$P0$0$0({1}SC:U),I,0,0 -S:G$SP$0$0({1}SC:U),I,0,0 -S:G$DPL$0$0({1}SC:U),I,0,0 -S:G$DPH$0$0({1}SC:U),I,0,0 -S:G$PCON$0$0({1}SC:U),I,0,0 -S:G$TCON$0$0({1}SC:U),I,0,0 -S:G$TMOD$0$0({1}SC:U),I,0,0 -S:G$TL0$0$0({1}SC:U),I,0,0 -S:G$TL1$0$0({1}SC:U),I,0,0 -S:G$TH0$0$0({1}SC:U),I,0,0 -S:G$TH1$0$0({1}SC:U),I,0,0 -S:G$P1$0$0({1}SC:U),I,0,0 -S:G$SCON$0$0({1}SC:U),I,0,0 -S:G$SBUF$0$0({1}SC:U),I,0,0 -S:G$P2$0$0({1}SC:U),I,0,0 -S:G$IE$0$0({1}SC:U),I,0,0 -S:G$P3$0$0({1}SC:U),I,0,0 -S:G$IP$0$0({1}SC:U),I,0,0 -S:G$PSW$0$0({1}SC:U),I,0,0 -S:G$ACC$0$0({1}SC:U),I,0,0 -S:G$A$0$0({1}SC:U),I,0,0 -S:G$B$0$0({1}SC:U),I,0,0 -S:G$P0_0$0$0({1}SX:U),J,0,0 -S:G$P0_1$0$0({1}SX:U),J,0,0 -S:G$P0_2$0$0({1}SX:U),J,0,0 -S:G$P0_3$0$0({1}SX:U),J,0,0 -S:G$P0_4$0$0({1}SX:U),J,0,0 -S:G$P0_5$0$0({1}SX:U),J,0,0 -S:G$P0_6$0$0({1}SX:U),J,0,0 -S:G$P0_7$0$0({1}SX:U),J,0,0 -S:G$IT0$0$0({1}SX:U),J,0,0 -S:G$IE0$0$0({1}SX:U),J,0,0 -S:G$IT1$0$0({1}SX:U),J,0,0 -S:G$IE1$0$0({1}SX:U),J,0,0 -S:G$TR0$0$0({1}SX:U),J,0,0 -S:G$TF0$0$0({1}SX:U),J,0,0 -S:G$TR1$0$0({1}SX:U),J,0,0 -S:G$TF1$0$0({1}SX:U),J,0,0 -S:G$P1_0$0$0({1}SX:U),J,0,0 -S:G$P1_1$0$0({1}SX:U),J,0,0 -S:G$P1_2$0$0({1}SX:U),J,0,0 -S:G$P1_3$0$0({1}SX:U),J,0,0 -S:G$P1_4$0$0({1}SX:U),J,0,0 -S:G$P1_5$0$0({1}SX:U),J,0,0 -S:G$P1_6$0$0({1}SX:U),J,0,0 -S:G$P1_7$0$0({1}SX:U),J,0,0 -S:G$RI$0$0({1}SX:U),J,0,0 -S:G$TI$0$0({1}SX:U),J,0,0 -S:G$RB8$0$0({1}SX:U),J,0,0 -S:G$TB8$0$0({1}SX:U),J,0,0 -S:G$REN$0$0({1}SX:U),J,0,0 -S:G$SM2$0$0({1}SX:U),J,0,0 -S:G$SM1$0$0({1}SX:U),J,0,0 -S:G$SM0$0$0({1}SX:U),J,0,0 -S:G$P2_0$0$0({1}SX:U),J,0,0 -S:G$P2_1$0$0({1}SX:U),J,0,0 -S:G$P2_2$0$0({1}SX:U),J,0,0 -S:G$P2_3$0$0({1}SX:U),J,0,0 -S:G$P2_4$0$0({1}SX:U),J,0,0 -S:G$P2_5$0$0({1}SX:U),J,0,0 -S:G$P2_6$0$0({1}SX:U),J,0,0 -S:G$P2_7$0$0({1}SX:U),J,0,0 -S:G$EX0$0$0({1}SX:U),J,0,0 -S:G$ET0$0$0({1}SX:U),J,0,0 -S:G$EX1$0$0({1}SX:U),J,0,0 -S:G$ET1$0$0({1}SX:U),J,0,0 -S:G$ES$0$0({1}SX:U),J,0,0 -S:G$EA$0$0({1}SX:U),J,0,0 -S:G$P3_0$0$0({1}SX:U),J,0,0 -S:G$P3_1$0$0({1}SX:U),J,0,0 -S:G$P3_2$0$0({1}SX:U),J,0,0 -S:G$P3_3$0$0({1}SX:U),J,0,0 -S:G$P3_4$0$0({1}SX:U),J,0,0 -S:G$P3_5$0$0({1}SX:U),J,0,0 -S:G$P3_6$0$0({1}SX:U),J,0,0 -S:G$P3_7$0$0({1}SX:U),J,0,0 -S:G$RXD$0$0({1}SX:U),J,0,0 -S:G$TXD$0$0({1}SX:U),J,0,0 -S:G$INT0$0$0({1}SX:U),J,0,0 -S:G$INT1$0$0({1}SX:U),J,0,0 -S:G$T0$0$0({1}SX:U),J,0,0 -S:G$T1$0$0({1}SX:U),J,0,0 -S:G$WR$0$0({1}SX:U),J,0,0 -S:G$RD$0$0({1}SX:U),J,0,0 -S:G$PX0$0$0({1}SX:U),J,0,0 -S:G$PT0$0$0({1}SX:U),J,0,0 -S:G$PX1$0$0({1}SX:U),J,0,0 -S:G$PT1$0$0({1}SX:U),J,0,0 -S:G$PS$0$0({1}SX:U),J,0,0 -S:G$P$0$0({1}SX:U),J,0,0 -S:G$FL$0$0({1}SX:U),J,0,0 -S:G$OV$0$0({1}SX:U),J,0,0 -S:G$RS0$0$0({1}SX:U),J,0,0 -S:G$RS1$0$0({1}SX:U),J,0,0 -S:G$F0$0$0({1}SX:U),J,0,0 -S:G$AC$0$0({1}SX:U),J,0,0 -S:G$CY$0$0({1}SX:U),J,0,0 -S:G$someFunction$0$0({2}DF,SV:S),C,0,0 -S:G$main$0$0({2}DF,SI:S),C,0,0 diff --git a/demo/demo_c_0.asm b/demo/demo_c_0.asm deleted file mode 100644 index 8338791..0000000 --- a/demo/demo_c_0.asm +++ /dev/null @@ -1,529 +0,0 @@ -;-------------------------------------------------------- -; File Created by SDCC : free open source ANSI-C Compiler -; Version 2.9.0 #5416 (Oct 6 2009) (UNIX) -; This file was generated Tue Oct 27 23:03:10 2009 -;-------------------------------------------------------- - .module demo_c_0 - .optsdcc -mmcs51 --model-small - -;-------------------------------------------------------- -; Public variables in this module -;-------------------------------------------------------- - .globl _main - .globl _someFunction - .globl _CY - .globl _AC - .globl _F0 - .globl _RS1 - .globl _RS0 - .globl _OV - .globl _FL - .globl _P - .globl _PS - .globl _PT1 - .globl _PX1 - .globl _PT0 - .globl _PX0 - .globl _RD - .globl _WR - .globl _T1 - .globl _T0 - .globl _INT1 - .globl _INT0 - .globl _TXD - .globl _RXD - .globl _P3_7 - .globl _P3_6 - .globl _P3_5 - .globl _P3_4 - .globl _P3_3 - .globl _P3_2 - .globl _P3_1 - .globl _P3_0 - .globl _EA - .globl _ES - .globl _ET1 - .globl _EX1 - .globl _ET0 - .globl _EX0 - .globl _P2_7 - .globl _P2_6 - .globl _P2_5 - .globl _P2_4 - .globl _P2_3 - .globl _P2_2 - .globl _P2_1 - .globl _P2_0 - .globl _SM0 - .globl _SM1 - .globl _SM2 - .globl _REN - .globl _TB8 - .globl _RB8 - .globl _TI - .globl _RI - .globl _P1_7 - .globl _P1_6 - .globl _P1_5 - .globl _P1_4 - .globl _P1_3 - .globl _P1_2 - .globl _P1_1 - .globl _P1_0 - .globl _TF1 - .globl _TR1 - .globl _TF0 - .globl _TR0 - .globl _IE1 - .globl _IT1 - .globl _IE0 - .globl _IT0 - .globl _P0_7 - .globl _P0_6 - .globl _P0_5 - .globl _P0_4 - .globl _P0_3 - .globl _P0_2 - .globl _P0_1 - .globl _P0_0 - .globl _B - .globl _A - .globl _ACC - .globl _PSW - .globl _IP - .globl _P3 - .globl _IE - .globl _P2 - .globl _SBUF - .globl _SCON - .globl _P1 - .globl _TH1 - .globl _TH0 - .globl _TL1 - .globl _TL0 - .globl _TMOD - .globl _TCON - .globl _PCON - .globl _DPH - .globl _DPL - .globl _SP - .globl _P0 - .globl _i - .globl _some_variable -;-------------------------------------------------------- -; special function registers -;-------------------------------------------------------- - .area RSEG (DATA) -G$P0$0$0 == 0x0080 -_P0 = 0x0080 -G$SP$0$0 == 0x0081 -_SP = 0x0081 -G$DPL$0$0 == 0x0082 -_DPL = 0x0082 -G$DPH$0$0 == 0x0083 -_DPH = 0x0083 -G$PCON$0$0 == 0x0087 -_PCON = 0x0087 -G$TCON$0$0 == 0x0088 -_TCON = 0x0088 -G$TMOD$0$0 == 0x0089 -_TMOD = 0x0089 -G$TL0$0$0 == 0x008a -_TL0 = 0x008a -G$TL1$0$0 == 0x008b -_TL1 = 0x008b -G$TH0$0$0 == 0x008c -_TH0 = 0x008c -G$TH1$0$0 == 0x008d -_TH1 = 0x008d -G$P1$0$0 == 0x0090 -_P1 = 0x0090 -G$SCON$0$0 == 0x0098 -_SCON = 0x0098 -G$SBUF$0$0 == 0x0099 -_SBUF = 0x0099 -G$P2$0$0 == 0x00a0 -_P2 = 0x00a0 -G$IE$0$0 == 0x00a8 -_IE = 0x00a8 -G$P3$0$0 == 0x00b0 -_P3 = 0x00b0 -G$IP$0$0 == 0x00b8 -_IP = 0x00b8 -G$PSW$0$0 == 0x00d0 -_PSW = 0x00d0 -G$ACC$0$0 == 0x00e0 -_ACC = 0x00e0 -G$A$0$0 == 0x00e0 -_A = 0x00e0 -G$B$0$0 == 0x00f0 -_B = 0x00f0 -;-------------------------------------------------------- -; special function bits -;-------------------------------------------------------- - .area RSEG (DATA) -G$P0_0$0$0 == 0x0080 -_P0_0 = 0x0080 -G$P0_1$0$0 == 0x0081 -_P0_1 = 0x0081 -G$P0_2$0$0 == 0x0082 -_P0_2 = 0x0082 -G$P0_3$0$0 == 0x0083 -_P0_3 = 0x0083 -G$P0_4$0$0 == 0x0084 -_P0_4 = 0x0084 -G$P0_5$0$0 == 0x0085 -_P0_5 = 0x0085 -G$P0_6$0$0 == 0x0086 -_P0_6 = 0x0086 -G$P0_7$0$0 == 0x0087 -_P0_7 = 0x0087 -G$IT0$0$0 == 0x0088 -_IT0 = 0x0088 -G$IE0$0$0 == 0x0089 -_IE0 = 0x0089 -G$IT1$0$0 == 0x008a -_IT1 = 0x008a -G$IE1$0$0 == 0x008b -_IE1 = 0x008b -G$TR0$0$0 == 0x008c -_TR0 = 0x008c -G$TF0$0$0 == 0x008d -_TF0 = 0x008d -G$TR1$0$0 == 0x008e -_TR1 = 0x008e -G$TF1$0$0 == 0x008f -_TF1 = 0x008f -G$P1_0$0$0 == 0x0090 -_P1_0 = 0x0090 -G$P1_1$0$0 == 0x0091 -_P1_1 = 0x0091 -G$P1_2$0$0 == 0x0092 -_P1_2 = 0x0092 -G$P1_3$0$0 == 0x0093 -_P1_3 = 0x0093 -G$P1_4$0$0 == 0x0094 -_P1_4 = 0x0094 -G$P1_5$0$0 == 0x0095 -_P1_5 = 0x0095 -G$P1_6$0$0 == 0x0096 -_P1_6 = 0x0096 -G$P1_7$0$0 == 0x0097 -_P1_7 = 0x0097 -G$RI$0$0 == 0x0098 -_RI = 0x0098 -G$TI$0$0 == 0x0099 -_TI = 0x0099 -G$RB8$0$0 == 0x009a -_RB8 = 0x009a -G$TB8$0$0 == 0x009b -_TB8 = 0x009b -G$REN$0$0 == 0x009c -_REN = 0x009c -G$SM2$0$0 == 0x009d -_SM2 = 0x009d -G$SM1$0$0 == 0x009e -_SM1 = 0x009e -G$SM0$0$0 == 0x009f -_SM0 = 0x009f -G$P2_0$0$0 == 0x00a0 -_P2_0 = 0x00a0 -G$P2_1$0$0 == 0x00a1 -_P2_1 = 0x00a1 -G$P2_2$0$0 == 0x00a2 -_P2_2 = 0x00a2 -G$P2_3$0$0 == 0x00a3 -_P2_3 = 0x00a3 -G$P2_4$0$0 == 0x00a4 -_P2_4 = 0x00a4 -G$P2_5$0$0 == 0x00a5 -_P2_5 = 0x00a5 -G$P2_6$0$0 == 0x00a6 -_P2_6 = 0x00a6 -G$P2_7$0$0 == 0x00a7 -_P2_7 = 0x00a7 -G$EX0$0$0 == 0x00a8 -_EX0 = 0x00a8 -G$ET0$0$0 == 0x00a9 -_ET0 = 0x00a9 -G$EX1$0$0 == 0x00aa -_EX1 = 0x00aa -G$ET1$0$0 == 0x00ab -_ET1 = 0x00ab -G$ES$0$0 == 0x00ac -_ES = 0x00ac -G$EA$0$0 == 0x00af -_EA = 0x00af -G$P3_0$0$0 == 0x00b0 -_P3_0 = 0x00b0 -G$P3_1$0$0 == 0x00b1 -_P3_1 = 0x00b1 -G$P3_2$0$0 == 0x00b2 -_P3_2 = 0x00b2 -G$P3_3$0$0 == 0x00b3 -_P3_3 = 0x00b3 -G$P3_4$0$0 == 0x00b4 -_P3_4 = 0x00b4 -G$P3_5$0$0 == 0x00b5 -_P3_5 = 0x00b5 -G$P3_6$0$0 == 0x00b6 -_P3_6 = 0x00b6 -G$P3_7$0$0 == 0x00b7 -_P3_7 = 0x00b7 -G$RXD$0$0 == 0x00b0 -_RXD = 0x00b0 -G$TXD$0$0 == 0x00b1 -_TXD = 0x00b1 -G$INT0$0$0 == 0x00b2 -_INT0 = 0x00b2 -G$INT1$0$0 == 0x00b3 -_INT1 = 0x00b3 -G$T0$0$0 == 0x00b4 -_T0 = 0x00b4 -G$T1$0$0 == 0x00b5 -_T1 = 0x00b5 -G$WR$0$0 == 0x00b6 -_WR = 0x00b6 -G$RD$0$0 == 0x00b7 -_RD = 0x00b7 -G$PX0$0$0 == 0x00b8 -_PX0 = 0x00b8 -G$PT0$0$0 == 0x00b9 -_PT0 = 0x00b9 -G$PX1$0$0 == 0x00ba -_PX1 = 0x00ba -G$PT1$0$0 == 0x00bb -_PT1 = 0x00bb -G$PS$0$0 == 0x00bc -_PS = 0x00bc -G$P$0$0 == 0x00d0 -_P = 0x00d0 -G$FL$0$0 == 0x00d1 -_FL = 0x00d1 -G$OV$0$0 == 0x00d2 -_OV = 0x00d2 -G$RS0$0$0 == 0x00d3 -_RS0 = 0x00d3 -G$RS1$0$0 == 0x00d4 -_RS1 = 0x00d4 -G$F0$0$0 == 0x00d5 -_F0 = 0x00d5 -G$AC$0$0 == 0x00d6 -_AC = 0x00d6 -G$CY$0$0 == 0x00d7 -_CY = 0x00d7 -;-------------------------------------------------------- -; overlayable register banks -;-------------------------------------------------------- - .area REG_BANK_0 (REL,OVR,DATA) - .ds 8 -;-------------------------------------------------------- -; internal ram data -;-------------------------------------------------------- - .area DSEG (DATA) -G$some_variable$0$0==. -_some_variable:: - .ds 4 -G$i$0$0==. -_i:: - .ds 2 -;-------------------------------------------------------- -; overlayable items in internal ram -;-------------------------------------------------------- - .area OSEG (OVR,DATA) -;-------------------------------------------------------- -; Stack segment in internal ram -;-------------------------------------------------------- - .area SSEG (DATA) -__start__stack: - .ds 1 - -;-------------------------------------------------------- -; indirectly addressable internal ram data -;-------------------------------------------------------- - .area ISEG (DATA) -;-------------------------------------------------------- -; absolute internal ram data -;-------------------------------------------------------- - .area IABS (ABS,DATA) - .area IABS (ABS,DATA) -;-------------------------------------------------------- -; bit data -;-------------------------------------------------------- - .area BSEG (BIT) -;-------------------------------------------------------- -; paged external ram data -;-------------------------------------------------------- - .area PSEG (PAG,XDATA) -;-------------------------------------------------------- -; external ram data -;-------------------------------------------------------- - .area XSEG (XDATA) -;-------------------------------------------------------- -; absolute external ram data -;-------------------------------------------------------- - .area XABS (ABS,XDATA) -;-------------------------------------------------------- -; external initialized ram data -;-------------------------------------------------------- - .area XISEG (XDATA) - .area HOME (CODE) - .area GSINIT0 (CODE) - .area GSINIT1 (CODE) - .area GSINIT2 (CODE) - .area GSINIT3 (CODE) - .area GSINIT4 (CODE) - .area GSINIT5 (CODE) - .area GSINIT (CODE) - .area GSFINAL (CODE) - .area CSEG (CODE) -;-------------------------------------------------------- -; interrupt vector -;-------------------------------------------------------- - .area HOME (CODE) -__interrupt_vect: - ljmp __sdcc_gsinit_startup -;-------------------------------------------------------- -; global & static initialisations -;-------------------------------------------------------- - .area HOME (CODE) - .area GSINIT (CODE) - .area GSFINAL (CODE) - .area GSINIT (CODE) - .globl __sdcc_gsinit_startup - .globl __sdcc_program_startup - .globl __start__stack - .globl __mcs51_genXINIT - .globl __mcs51_genXRAMCLEAR - .globl __mcs51_genRAMCLEAR - G$main$0$0 ==. - C$demo_c_0.c$10$1$1 ==. -; demo_c_0.c:10: unsigned long some_variable=0; ///< Documentation for this variable comes here - clr a - mov _some_variable,a - mov (_some_variable + 1),a - mov (_some_variable + 2),a - mov (_some_variable + 3),a - .area GSFINAL (CODE) - ljmp __sdcc_program_startup -;-------------------------------------------------------- -; Home -;-------------------------------------------------------- - .area HOME (CODE) - .area HOME (CODE) -__sdcc_program_startup: - lcall _main -; return from main will lock up - sjmp . -;-------------------------------------------------------- -; code -;-------------------------------------------------------- - .area CSEG (CODE) -;------------------------------------------------------------ -;Allocation info for local variables in function 'someFunction' -;------------------------------------------------------------ -;somevalue Allocated to registers r2 -;------------------------------------------------------------ - G$someFunction$0$0 ==. - C$demo_c_0.c$20$0$0 ==. -; demo_c_0.c:20: void someFunction(unsigned char somevalue) -; ----------------------------------------- -; function someFunction -; ----------------------------------------- -_someFunction: - ar2 = 0x02 - ar3 = 0x03 - ar4 = 0x04 - ar5 = 0x05 - ar6 = 0x06 - ar7 = 0x07 - ar0 = 0x00 - ar1 = 0x01 - mov r2,dpl - C$demo_c_0.c$23$1$1 ==. -; demo_c_0.c:23: P1=somevalue; - mov _P1,r2 - C$demo_c_0.c$24$1$1 ==. -; demo_c_0.c:24: P3=somevalue^0xFF; - mov a,#0xFF - xrl a,r2 - mov _P3,a - C$demo_c_0.c$25$1$1 ==. - XG$someFunction$0$0 ==. - ret -;------------------------------------------------------------ -;Allocation info for local variables in function 'main' -;------------------------------------------------------------ -;------------------------------------------------------------ - G$main$0$0 ==. - C$demo_c_0.c$28$1$1 ==. -; demo_c_0.c:28: int main() -; ----------------------------------------- -; function main -; ----------------------------------------- -_main: - C$demo_c_0.c$31$1$1 ==. -; demo_c_0.c:31: while(1) { -00102$: - C$demo_c_0.c$32$2$2 ==. -; demo_c_0.c:32: for(i=0; i<255; i++) { - clr a - mov _i,a - mov (_i + 1),a -00104$: - clr c - mov a,_i - subb a,#0xFF - mov a,(_i + 1) - xrl a,#0x80 - subb a,#0x80 - jnc 00107$ - C$demo_c_0.c$33$3$3 ==. -; demo_c_0.c:33: someFunction(i+2); - mov r2,_i - mov a,#0x02 - add a,r2 - mov dpl,a - lcall _someFunction - C$demo_c_0.c$34$3$3 ==. -; demo_c_0.c:34: some_variable++; - inc _some_variable - clr a - cjne a,_some_variable,00114$ - inc (_some_variable + 1) - cjne a,(_some_variable + 1),00114$ - inc (_some_variable + 2) - cjne a,(_some_variable + 2),00114$ - inc (_some_variable + 3) -00114$: - C$demo_c_0.c$32$2$2 ==. -; demo_c_0.c:32: for(i=0; i<255; i++) { - inc _i - clr a - cjne a,_i,00104$ - inc (_i + 1) - sjmp 00104$ -00107$: - C$demo_c_0.c$36$2$2 ==. -; demo_c_0.c:36: some_variable-=22; - mov a,_some_variable - add a,#0xea - mov _some_variable,a - mov a,(_some_variable + 1) - addc a,#0xff - mov (_some_variable + 1),a - mov a,(_some_variable + 2) - addc a,#0xff - mov (_some_variable + 2),a - mov a,(_some_variable + 3) - addc a,#0xff - mov (_some_variable + 3),a - C$demo_c_0.c$40$1$1 ==. -; demo_c_0.c:40: return 0; - C$demo_c_0.c$41$1$1 ==. - XG$main$0$0 ==. - sjmp 00102$ - .area CSEG (CODE) - .area CONST (CODE) - .area XINIT (CODE) - .area CABS (ABS,CODE) diff --git a/demo/demo_c_0.c b/demo/demo_c_0.c index 9655334..944786e 100644 --- a/demo/demo_c_0.c +++ b/demo/demo_c_0.c @@ -3,7 +3,7 @@ * @file demo_c_0.c */ -// This file defines registers avaliable in AT89x51 MCUs +// This file defines registers available in AT89x51 MCUs // See /usr/share/sdcc/include/mcs51/ for alternatives #include <at89x51.h> diff --git a/demo/demo_c_0.hashes b/demo/demo_c_0.hashes index aa19cb5..b2854fe 100644 --- a/demo/demo_c_0.hashes +++ b/demo/demo_c_0.hashes @@ -1 +1 @@ -79C98C5ADE29831807D59F6BC438063A "demo_c_0.c" +A958F84B552CBBD6CB8D8FA776FEB327 "demo_c_0.c" diff --git a/demo/demo_c_0.hex b/demo/demo_c_0.hex deleted file mode 100644 index 6160cd7..0000000 --- a/demo/demo_c_0.hex +++ /dev/null @@ -1,34 +0,0 @@ -:03000000020008F3 -:06006100E4F508F509F5C5 -:030067000AF50B8C -:03006A000200038E -:0500030012007780FEF1 -:0A006D00AA828A9074FF6AF5B0229F -:05007700E4F50CF50D9D -:0A007C00C3E50C94FFE50D648094C9 -:0B008600805026AA0C74022AF582129A -:06009100006D0508E4B556 -:05009700080C0509B58D -:05009C000907050AB58B -:0400A1000A02050B3F -:0700A500050CE4B50CD105C8 -:0300AC000D80CDF7 -:0700AF00E50824EAF508E56D -:0600B6000934FFF509E525 -:0600BC000A34FFF50AE51D -:0700C2000B34FFF50B80AECB -:06003700E478FFF6D8FD9D -:080015007900E94400601B7A48 -:05001D00009000CD7809 -:030022000075A0C6 -:0A00250000E493F2A308B8000205FE -:08002F00A0D9F4DAF275A0FF7C -:08003D007800E84400600A7934 -:030045000075A0A3 -:0600480000E4F309D8FCFE -:08004E007800E84400600C7921 -:0B00560000900000E4F0A3D8FCD9FAF1 -:0300080075810DF2 -:0A000B001200C9E582600302000341 -:0400C900758200221A -:00000001FF diff --git a/demo/demo_c_0.lnk b/demo/demo_c_0.lnk deleted file mode 100644 index 4e51a94..0000000 --- a/demo/demo_c_0.lnk +++ /dev/null @@ -1,19 +0,0 @@ --myuxi --Y --a 0x0100 --v 0x0000 --w 0x0800 --z --b HOME = 0x0000 --b ISEG = 0x0000 --b BSEG = 0x0000 --k /usr/libexec/sdcc/../share/sdcc/lib/small --k /usr/share/sdcc/lib/small --l mcs51 --l libsdcc --l libint --l liblong --l libfloat -demo_c_0.rel - --e diff --git a/demo/demo_c_0.lst b/demo/demo_c_0.lst index ec4c901..3053251 100644 --- a/demo/demo_c_0.lst +++ b/demo/demo_c_0.lst @@ -1,7 +1,7 @@ 1 ;-------------------------------------------------------- 2 ; File Created by SDCC : free open source ANSI-C Compiler - 3 ; Version 2.9.0 #5416 (Oct 6 2009) (UNIX) - 4 ; This file was generated Tue Oct 27 23:03:10 2009 + 3 ; Version 2.9.0 #5416 (Feb 3 2010) (UNIX) + 4 ; This file was generated Sun Dec 16 06:02:12 2012 5 ;-------------------------------------------------------- 6 .module demo_c_0 7 .optsdcc -mmcs51 --model-small diff --git a/demo/demo_c_0.map b/demo/demo_c_0.map deleted file mode 100644 index d1247dd..0000000 --- a/demo/demo_c_0.map +++ /dev/null @@ -1,488 +0,0 @@ - -Hexadecimal - -Area Addr Size Decimal Bytes (Attributes) --------------------------------- ---- ---- ------- ----- ------------ -CABS 0000 0000 = 0. bytes (ABS,CON,CODE) - - Value Global - -------- -------------------------------- - 0C:FFFFFF00 s_BSEG - 0C:0000 l_BIT_BANK - 0C:0000 l_BSEG - 0C:0000 l_BSEG_BYTES - 0C:0000 l_CABS - 0C:0000 l_CONST - 0C:0000 l_GSINIT1 - 0C:0000 l_GSINIT5 - 0C:0000 l_IABS - 0C:0000 l_ISEG - 0C:0000 l_OSEG - 0C:0000 l_PSEG - 0C:0000 l_REG_BANK_1 - 0C:0000 l_REG_BANK_2 - 0C:0000 l_REG_BANK_3 - 0C:0000 l_RSEG - 0C:0000 l_XABS - 0C:0000 l_XINIT - 0C:0000 l_XISEG - 0C:0000 l_XSEG - 0C:0000 l__CODE - 0C:0000 s_BSEG_BYTES - 0C:0000 s_CABS - 0C:0000 s_DSEG - 0C:0000 s_HOME - 0C:0000 s_IABS - 0C:0000 s_ISEG - 0C:0000 s_PSEG - 0C:0000 s_REG_BANK_0 - 0C:0000 s_XABS - 0C:0000 s_XISEG - 0C:0000 s_XSEG - 0C:0003 l_GSFINAL - 0C:0003 l_GSINIT0 - 0C:0008 l_HOME - 0C:0008 l_REG_BANK_0 - 0C:0008 s_GSINIT0 - 0C:0008 s_REG_BANK_1 - 0C:0009 l_GSINIT - 0C:000A l_GSINIT2 - 0C:000B s_GSINIT1 - 0C:000B s_GSINIT2 - 0C:000E s_RSEG - 0C:000E s_SSEG - 0C:0010 s_REG_BANK_2 - 0C:0015 s_GSINIT3 - 0C:0018 s_BIT_BANK - 0C:0018 s_OSEG - 0C:0018 s_REG_BANK_3 - 0C:0020 s__CODE - 0C:0022 l_GSINIT3 - 0C:002A l_GSINIT4 - 0C:0037 s_GSINIT4 - 0C:0060 l_CSEG - 0C:0061 s_GSINIT - 0C:0061 s_GSINIT5 - 0C:006A s_GSFINAL - 0C:006D s_CSEG - 0C:0080 l_DSEG - 0C:00CD s_CONST - 0C:00CD s_XINIT - 0C:00F2 l_SSEG - 0C:0100 l_IRAM - - - -Hexadecimal - -Area Addr Size Decimal Bytes (Attributes) --------------------------------- ---- ---- ------- ----- ------------ -. .ABS. 0000 0000 = 0. bytes (ABS,CON) - - Value Global - -------- -------------------------------- - 0080 G$P0$0$0 - 0080 G$P0_0$0$0 - 0080 _P0 - 0080 _P0_0 - 0081 G$P0_1$0$0 - 0081 G$SP$0$0 - 0081 _P0_1 - 0081 _SP - 0082 G$DPL$0$0 - 0082 G$P0_2$0$0 - 0082 _DPL - 0082 _P0_2 - 0083 G$DPH$0$0 - 0083 G$P0_3$0$0 - 0083 _DPH - 0083 _P0_3 - 0084 G$P0_4$0$0 - 0084 _P0_4 - 0085 G$P0_5$0$0 - 0085 _P0_5 - 0086 G$P0_6$0$0 - 0086 _P0_6 - 0087 G$P0_7$0$0 - 0087 G$PCON$0$0 - 0087 _P0_7 - 0087 _PCON - 0088 G$IT0$0$0 - 0088 G$TCON$0$0 - 0088 _IT0 - 0088 _TCON - 0089 G$IE0$0$0 - 0089 G$TMOD$0$0 - 0089 _IE0 - 0089 _TMOD - 008A G$IT1$0$0 - 008A G$TL0$0$0 - 008A _IT1 - 008A _TL0 - 008B G$IE1$0$0 - 008B G$TL1$0$0 - 008B _IE1 - 008B _TL1 - 008C G$TH0$0$0 - 008C G$TR0$0$0 - 008C _TH0 - 008C _TR0 - 008D G$TF0$0$0 - 008D G$TH1$0$0 - 008D _TF0 - 008D _TH1 - 008E G$TR1$0$0 - 008E _TR1 - 008F G$TF1$0$0 - 008F _TF1 - 0090 G$P1$0$0 - 0090 G$P1_0$0$0 - 0090 _P1 - 0090 _P1_0 - 0091 G$P1_1$0$0 - 0091 _P1_1 - 0092 G$P1_2$0$0 - 0092 _P1_2 - 0093 G$P1_3$0$0 - 0093 _P1_3 - 0094 G$P1_4$0$0 - 0094 _P1_4 - 0095 G$P1_5$0$0 - 0095 _P1_5 - 0096 G$P1_6$0$0 - 0096 _P1_6 - 0097 G$P1_7$0$0 - 0097 _P1_7 - 0098 G$RI$0$0 - 0098 G$SCON$0$0 - 0098 _RI - 0098 _SCON - 0099 G$SBUF$0$0 - 0099 G$TI$0$0 - 0099 _SBUF - 0099 _TI - 009A G$RB8$0$0 - 009A _RB8 - 009B G$TB8$0$0 - 009B _TB8 - 009C G$REN$0$0 - 009C _REN - 009D G$SM2$0$0 - 009D _SM2 - 009E G$SM1$0$0 - 009E _SM1 - 009F G$SM0$0$0 - 009F _SM0 - 00A0 G$P2$0$0 - 00A0 G$P2_0$0$0 - 00A0 _P2 - 00A0 _P2_0 - 00A0 __XPAGE - 00A1 G$P2_1$0$0 - 00A1 _P2_1 - 00A2 G$P2_2$0$0 - 00A2 _P2_2 - 00A3 G$P2_3$0$0 - 00A3 _P2_3 - 00A4 G$P2_4$0$0 - 00A4 _P2_4 - 00A5 G$P2_5$0$0 - 00A5 _P2_5 - 00A6 G$P2_6$0$0 - 00A6 _P2_6 - 00A7 G$P2_7$0$0 - 00A7 _P2_7 - 00A8 G$EX0$0$0 - 00A8 G$IE$0$0 - 00A8 _EX0 - 00A8 _IE - 00A9 G$ET0$0$0 - 00A9 _ET0 - 00AA G$EX1$0$0 - 00AA _EX1 - 00AB G$ET1$0$0 - 00AB _ET1 - 00AC G$ES$0$0 - 00AC _ES - 00AF G$EA$0$0 - 00AF _EA - 00B0 G$P3$0$0 - 00B0 G$P3_0$0$0 - 00B0 G$RXD$0$0 - 00B0 _P3 - 00B0 _P3_0 - 00B0 _RXD - 00B1 G$P3_1$0$0 - 00B1 G$TXD$0$0 - 00B1 _P3_1 - 00B1 _TXD - 00B2 G$INT0$0$0 - 00B2 G$P3_2$0$0 - 00B2 _INT0 - 00B2 _P3_2 - 00B3 G$INT1$0$0 - 00B3 G$P3_3$0$0 - 00B3 _INT1 - 00B3 _P3_3 - 00B4 G$P3_4$0$0 - 00B4 G$T0$0$0 - 00B4 _P3_4 - 00B4 _T0 - 00B5 G$P3_5$0$0 - 00B5 G$T1$0$0 - 00B5 _P3_5 - 00B5 _T1 - 00B6 G$P3_6$0$0 - 00B6 G$WR$0$0 - 00B6 _P3_6 - 00B6 _WR - 00B7 G$P3_7$0$0 - 00B7 G$RD$0$0 - 00B7 _P3_7 - 00B7 _RD - 00B8 G$IP$0$0 - 00B8 G$PX0$0$0 - 00B8 _IP - 00B8 _PX0 - 00B9 G$PT0$0$0 - 00B9 _PT0 - 00BA G$PX1$0$0 - 00BA _PX1 - 00BB G$PT1$0$0 - 00BB _PT1 - 00BC G$PS$0$0 - 00BC _PS - 00D0 G$P$0$0 - 00D0 G$PSW$0$0 - 00D0 _P - 00D0 _PSW - 00D1 G$FL$0$0 - 00D1 _FL - 00D2 G$OV$0$0 - 00D2 _OV - 00D3 G$RS0$0$0 - 00D3 _RS0 - 00D4 G$RS1$0$0 - 00D4 _RS1 - 00D5 G$F0$0$0 - 00D5 _F0 - 00D6 G$AC$0$0 - 00D6 _AC - 00D7 G$CY$0$0 - 00D7 _CY - 00E0 G$A$0$0 - 00E0 G$ACC$0$0 - 00E0 _A - 00E0 _ACC - 00F0 G$B$0$0 - 00F0 _B - - - - - - - - - -Hexadecimal - -Area Addr Size Decimal Bytes (Attributes) --------------------------------- ---- ---- ------- ----- ------------ -DSEG 0000 0080 = 128. bytes (REL,CON) - - Value Global - -------- -------------------------------- - 0008 G$some_variable$0$0 - 0008 _some_variable - 000C G$i$0$0 - 000C _i - - - -Hexadecimal - -Area Addr Size Decimal Bytes (Attributes) --------------------------------- ---- ---- ------- ----- ------------ -SSEG 000E 00F2 = 242. bytes (REL,OVR) - - Value Global - -------- -------------------------------- - 000E __start__stack - - - - - -Hexadecimal - -Area Addr Size Decimal Bytes (Attributes) --------------------------------- ---- ---- ------- ----- ------------ -HOME 0000 0008 = 8. bytes (REL,CON,CODE) - - Value Global - -------- -------------------------------- - 0C:0000 A$demo_c_0$385 - 0C:0003 A$demo_c_0$415 - 0C:0003 __sdcc_program_startup - 0C:0006 A$demo_c_0$417 - -Hexadecimal - -Area Addr Size Decimal Bytes (Attributes) --------------------------------- ---- ---- ------- ----- ------------ -GSINIT0 0008 0003 = 3. bytes (REL,CON,CODE) - - Value Global - -------- -------------------------------- - 0C:0008 __sdcc_gsinit_startup - - - -Hexadecimal - -Area Addr Size Decimal Bytes (Attributes) --------------------------------- ---- ---- ------- ----- ------------ -GSINIT3 0015 0022 = 34. bytes (REL,CON,CODE) - - Value Global - -------- -------------------------------- - 0C:0015 __mcs51_genXINIT - -Hexadecimal - -Area Addr Size Decimal Bytes (Attributes) --------------------------------- ---- ---- ------- ----- ------------ -GSINIT4 0037 002A = 42. bytes (REL,CON,CODE) - - Value Global - -------- -------------------------------- - 0C:0037 __mcs51_genRAMCLEAR - 0C:003D __mcs51_genXRAMCLEAR - - -Hexadecimal - -Area Addr Size Decimal Bytes (Attributes) --------------------------------- ---- ---- ------- ----- ------------ -GSINIT 0061 0009 = 9. bytes (REL,CON,CODE) - - Value Global - -------- -------------------------------- - 0C:0061 A$demo_c_0$402 - 0C:0061 C$demo_c_0.c$10$1$1 - 0C:0062 A$demo_c_0$403 - 0C:0064 A$demo_c_0$404 - 0C:0066 A$demo_c_0$405 - 0C:0068 A$demo_c_0$406 - -Hexadecimal - -Area Addr Size Decimal Bytes (Attributes) --------------------------------- ---- ---- ------- ----- ------------ -GSFINAL 006A 0003 = 3. bytes (REL,CON,CODE) - - Value Global - -------- -------------------------------- - 0C:006A A$demo_c_0$408 - -Hexadecimal - -Area Addr Size Decimal Bytes (Attributes) --------------------------------- ---- ---- ------- ----- ------------ -CSEG 006D 0060 = 96. bytes (REL,CON,CODE) - - Value Global - -------- -------------------------------- - 0C:006D A$demo_c_0$442 - 0C:006D C$demo_c_0.c$20$0$0 - 0C:006D G$someFunction$0$0 - 0C:006D _someFunction - 0C:006F A$demo_c_0$445 - 0C:006F C$demo_c_0.c$23$1$1 - 0C:0071 A$demo_c_0$448 - 0C:0071 C$demo_c_0.c$24$1$1 - 0C:0073 A$demo_c_0$449 - 0C:0074 A$demo_c_0$450 - 0C:0076 A$demo_c_0$453 - 0C:0076 C$demo_c_0.c$25$1$1 - 0C:0076 XG$someFunction$0$0 - 0C:0077 A$demo_c_0$470 - 0C:0077 C$demo_c_0.c$28$1$1 - 0C:0077 C$demo_c_0.c$31$1$1 - 0C:0077 G$main$0$0 - 0C:0077 _main - 0C:0078 A$demo_c_0$471 - 0C:007A A$demo_c_0$472 - 0C:007C A$demo_c_0$474 - 0C:007D A$demo_c_0$475 - 0C:007F A$demo_c_0$476 - 0C:0081 A$demo_c_0$477 - 0C:0083 A$demo_c_0$478 - 0C:0085 A$demo_c_0$479 - 0C:0087 A$demo_c_0$480 - 0C:0089 A$demo_c_0$483 - 0C:0089 C$demo_c_0.c$33$3$3 - 0C:008B A$demo_c_0$484 - 0C:008D A$demo_c_0$485 - 0C:008E A$demo_c_0$486 - 0C:0090 A$demo_c_0$487 - 0C:0093 A$demo_c_0$490 - 0C:0093 C$demo_c_0.c$34$3$3 - 0C:0095 A$demo_c_0$491 - 0C:0096 A$demo_c_0$492 - 0C:0099 A$demo_c_0$493 - 0C:009B A$demo_c_0$494 - 0C:009E A$demo_c_0$495 - 0C:00A0 A$demo_c_0$496 - 0C:00A3 A$demo_c_0$497 - 0C:00A5 A$demo_c_0$501 - 0C:00A5 C$demo_c_0.c$32$2$2 - 0C:00A7 A$demo_c_0$502 - 0C:00A8 A$demo_c_0$503 - 0C:00AB A$demo_c_0$504 - 0C:00AD A$demo_c_0$505 - 0C:00AF A$demo_c_0$509 - 0C:00AF C$demo_c_0.c$36$2$2 - 0C:00B1 A$demo_c_0$510 - 0C:00B3 A$demo_c_0$511 - 0C:00B5 A$demo_c_0$512 - 0C:00B7 A$demo_c_0$513 - 0C:00B9 A$demo_c_0$514 - 0C:00BB A$demo_c_0$515 - 0C:00BD A$demo_c_0$516 - 0C:00BF A$demo_c_0$517 - 0C:00C1 A$demo_c_0$518 - 0C:00C3 A$demo_c_0$519 - 0C:00C5 A$demo_c_0$520 - 0C:00C7 A$demo_c_0$525 - 0C:00C7 C$demo_c_0.c$40$1$1 - 0C:00C7 C$demo_c_0.c$41$1$1 - 0C:00C7 XG$main$0$0 - 0C:00C9 __sdcc_external_startup - - -ASxxxx Linker V01.75 + NoICE + SDCC Feb 1999, page 1. - -Files Linked [ module(s) ] - -demo_c_0.rel - -Libraries Linked [ object file ] - -/usr/share/sdcc/lib/small/mcs51.lib [ crtclear.rel ] -/usr/share/sdcc/lib/small/mcs51.lib [ crtxinit.rel ] -/usr/share/sdcc/lib/small/mcs51.lib [ crtxclear.rel ] -/usr/share/sdcc/lib/small/mcs51.lib [ crtpagesfr.rel ] -/usr/share/sdcc/lib/small/mcs51.lib [ crtstart.rel ] -/usr/share/sdcc/lib/small/libsdcc.lib [ _startup.rel ] - -ASxxxx Linker V01.75 + NoICE + SDCC Feb 1999, page 2. - -User Base Address Definitions - -HOME = 0x0000 -ISEG = 0x0000 -BSEG = 0x0000 - -
\ No newline at end of file diff --git a/demo/demo_c_0.mem b/demo/demo_c_0.mem deleted file mode 100644 index 01837e4..0000000 --- a/demo/demo_c_0.mem +++ /dev/null @@ -1,28 +0,0 @@ -Internal RAM layout: - 0 1 2 3 4 5 6 7 8 9 A B C D E F -0x00:|0|0|0|0|0|0|0|0|a|a|a|a|a|a|S|S| -0x10:|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S| -0x20:|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S| -0x30:|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S| -0x40:|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S| -0x50:|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S| -0x60:|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S| -0x70:|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S| -0x80:|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S| -0x90:|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S| -0xa0:|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S| -0xb0:|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S| -0xc0:|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S| -0xd0:|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S| -0xe0:|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S| -0xf0:|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S| -0-3:Reg Banks, T:Bit regs, a-z:Data, B:Bits, Q:Overlay, I:iData, S:Stack, A:Absolute - -Stack starts at: 0x0e (sp set to 0x0d) with 242 bytes available. - -Other memory: - Name Start End Size Max - ---------------- -------- -------- -------- -------- - PAGED EXT. RAM 0 0 - EXTERNAL RAM 0 0 - ROM/EPROM/FLASH 0x0000 0x00cc 205 2048 diff --git a/demo/demo_c_0.rel b/demo/demo_c_0.rel deleted file mode 100644 index 172db17..0000000 --- a/demo/demo_c_0.rel +++ /dev/null @@ -1,378 +0,0 @@ -;!FILE demo_c_0.asm -XH -H 1A areas 117 global symbols -M demo_c_0 -O -mmcs51 --model-small -S G$EX0$0$0 Def00A8 -S G$IT0$0$0 Def0088 -S G$TH1$0$0 Def008D -S _P1 Def0090 -S _A Def00E0 -S G$RXD$0$0 Def00B0 -S G$EX1$0$0 Def00AA -S G$TB8$0$0 Def009B -S G$IT1$0$0 Def008A -S G$IE$0$0 Def00A8 -S _P2 Def00A0 -S _B Def00F0 -S _SP Def0081 -S _P3 Def00B0 -S _PS Def00BC -S G$TXD$0$0 Def00B1 -S G$SM0$0$0 Def009F -S G$TL0$0$0 Def008A -S _T0 Def00B4 -S G$SM1$0$0 Def009E -S G$TL1$0$0 Def008B -S _T1 Def00B5 -S _OV Def00D2 -S G$FL$0$0 Def00D1 -S G$SM2$0$0 Def009D -S _ACC Def00E0 -S __mcs51_genRAMCLEAR Ref0000 -S G$PT0$0$0 Def00B9 -S G$RS0$0$0 Def00D3 -S G$PT1$0$0 Def00BB -S _WR Def00B6 -S G$F0$0$0 Def00D5 -S G$RS1$0$0 Def00D4 -S G$RD$0$0 Def00B7 -S G$TR0$0$0 Def008C -S G$TR1$0$0 Def008E -S G$PX0$0$0 Def00B8 -S G$ES$0$0 Def00AC -S G$PX1$0$0 Def00BA -S G$IP$0$0 Def00B8 -S G$PSW$0$0 Def00D0 -S G$RI$0$0 Def0098 -S _P0_0 Def0080 -S G$CY$0$0 Def00D7 -S _PCON Def0087 -S _SBUF Def0099 -S _P0_1 Def0081 -S _P1_0 Def0090 -S _P Def00D0 -S G$TI$0$0 Def0099 -S _P0_2 Def0082 -S _P1_1 Def0091 -S _P2_0 Def00A0 -S _P0_3 Def0083 -S _P1_2 Def0092 -S _P2_1 Def00A1 -S _P3_0 Def00B0 -S _SCON Def0098 -S _P0_4 Def0084 -S _P1_3 Def0093 -S _P2_2 Def00A2 -S _P3_1 Def00B1 -S G$P0$0$0 Def0080 -S _TCON Def0088 -S _TMOD Def0089 -S _P0_5 Def0085 -S _P1_4 Def0094 -S _P2_3 Def00A3 -S _P3_2 Def00B2 -S G$A$0$0 Def00E0 -S G$P1$0$0 Def0090 -S _P0_6 Def0086 -S _P1_5 Def0095 -S _P2_4 Def00A4 -S _P3_3 Def00B3 -S G$B$0$0 Def00F0 -S G$P2$0$0 Def00A0 -S _P0_7 Def0087 -S _P1_6 Def0096 -S _P2_5 Def00A5 -S _P3_4 Def00B4 -S G$PS$0$0 Def00BC -S G$P3$0$0 Def00B0 -S G$SP$0$0 Def0081 -S _P1_7 Def0097 -S _P2_6 Def00A6 -S _P3_5 Def00B5 -S G$T0$0$0 Def00B4 -S _P2_7 Def00A7 -S _P3_6 Def00B6 -S G$OV$0$0 Def00D2 -S G$T1$0$0 Def00B5 -S _P3_7 Def00B7 -S G$ACC$0$0 Def00E0 -S _INT0 Def00B2 -S _DPH Def0083 -S _INT1 Def00B3 -S G$WR$0$0 Def00B6 -S _IE0 Def0089 -S _IE1 Def008B -S _DPL Def0082 -S G$P0_0$0$0 Def0080 -S G$P$0$0 Def00D0 -S G$P1_0$0$0 Def0090 -S G$P0_1$0$0 Def0081 -S G$SBUF$0$0 Def0099 -S G$PCON$0$0 Def0087 -S _AC Def00D6 -S G$P2_0$0$0 Def00A0 -S G$P1_1$0$0 Def0091 -S G$P0_2$0$0 Def0082 -S _REN Def009C -S G$P3_0$0$0 Def00B0 -S G$P2_1$0$0 Def00A1 -S G$P1_2$0$0 Def0092 -S G$P0_3$0$0 Def0083 -S _EA Def00AF -S G$P3_1$0$0 Def00B1 -S G$P2_2$0$0 Def00A2 -S G$P1_3$0$0 Def0093 -S G$P0_4$0$0 Def0084 -S G$SCON$0$0 Def0098 -S G$P3_2$0$0 Def00B2 -S G$P2_3$0$0 Def00A3 -S G$P1_4$0$0 Def0094 -S G$P0_5$0$0 Def0085 -S G$TMOD$0$0 Def0089 -S G$TCON$0$0 Def0088 -S G$P3_3$0$0 Def00B3 -S G$P2_4$0$0 Def00A4 -S G$P1_5$0$0 Def0095 -S G$P0_6$0$0 Def0086 -S _ET0 Def00A9 -S G$P3_4$0$0 Def00B4 -S G$P2_5$0$0 Def00A5 -S G$P1_6$0$0 Def0096 -S G$P0_7$0$0 Def0087 -S _TF0 Def008D -S _ET1 Def00AB -S G$P3_5$0$0 Def00B5 -S G$P2_6$0$0 Def00A6 -S G$P1_7$0$0 Def0097 -S _TF1 Def008F -S G$P3_6$0$0 Def00B6 -S G$P2_7$0$0 Def00A7 -S _TH0 Def008C -S _RB8 Def009A -S __mcs51_genXINIT Ref0000 -S G$P3_7$0$0 Def00B7 -S _TH1 Def008D -S _IT0 Def0088 -S _EX0 Def00A8 -S _IE Def00A8 -S _IT1 Def008A -S _TB8 Def009B -S _EX1 Def00AA -S _RXD Def00B0 -S G$INT0$0$0 Def00B2 -S G$INT1$0$0 Def00B3 -S G$DPH$0$0 Def0083 -S _TL0 Def008A -S _SM0 Def009F -S _TXD Def00B1 -S _TL1 Def008B -S _SM1 Def009E -S G$IE0$0$0 Def0089 -S _SM2 Def009D -S _FL Def00D1 -S G$IE1$0$0 Def008B -S G$DPL$0$0 Def0082 -S _PT0 Def00B9 -S _PT1 Def00BB -S _RS0 Def00D3 -S _TR0 Def008C -S _RD Def00B7 -S _RS1 Def00D4 -S _F0 Def00D5 -S _TR1 Def008E -S G$AC$0$0 Def00D6 -S _ES Def00AC -S _PX0 Def00B8 -S G$REN$0$0 Def009C -S _IP Def00B8 -S _PX1 Def00BA -S G$EA$0$0 Def00AF -S _PSW Def00D0 -S __sdcc_gsinit_startup Ref0000 -S _RI Def0098 -S _CY Def00D7 -S G$ET0$0$0 Def00A9 -S _TI Def0099 -S G$ET1$0$0 Def00AB -S G$TF0$0$0 Def008D -S G$TF1$0$0 Def008F -S __mcs51_genXRAMCLEAR Ref0000 -S G$RB8$0$0 Def009A -S G$TH0$0$0 Def008C -S _P0 Def0080 -A _CODE size 0 flags 0 addr 0 -A RSEG size 0 flags 0 addr 0 -A REG_BANK_0 size 8 flags 4 addr 0 -A DSEG size 6 flags 0 addr 0 -S _i Def0004 -S G$some_variable$0$0 Def0000 -S G$i$0$0 Def0004 -S _some_variable Def0000 -A OSEG size 0 flags 4 addr 0 -A SSEG size 1 flags 0 addr 0 -S __start__stack Def0000 -A ISEG size 0 flags 0 addr 0 -A IABS size 0 flags 8 addr 0 -A BSEG size 0 flags 80 addr 0 -A PSEG size 0 flags 50 addr 0 -A XSEG size 0 flags 40 addr 0 -A XABS size 0 flags 48 addr 0 -A XISEG size 0 flags 40 addr 0 -A HOME size 8 flags 20 addr 0 -S __sdcc_program_startup Def0003 -S A$demo_c_0$415 Def0003 -S A$demo_c_0$417 Def0006 -S A$demo_c_0$385 Def0000 -A GSINIT0 size 0 flags 20 addr 0 -A GSINIT1 size 0 flags 20 addr 0 -A GSINIT2 size 0 flags 20 addr 0 -A GSINIT3 size 0 flags 20 addr 0 -A GSINIT4 size 0 flags 20 addr 0 -A GSINIT5 size 0 flags 20 addr 0 -A GSINIT size 9 flags 20 addr 0 -S A$demo_c_0$402 Def0000 -S A$demo_c_0$403 Def0001 -S A$demo_c_0$404 Def0003 -S A$demo_c_0$405 Def0005 -S A$demo_c_0$406 Def0007 -S C$demo_c_0.c$10$1$1 Def0000 -A GSFINAL size 3 flags 20 addr 0 -S A$demo_c_0$408 Def0000 -A CSEG size 5C flags 20 addr 0 -S A$demo_c_0$494 Def002E -S A$demo_c_0$485 Def0020 -S A$demo_c_0$476 Def0012 -S A$demo_c_0$449 Def0006 -S C$demo_c_0.c$40$1$1 Def005A -S C$demo_c_0.c$31$1$1 Def000A -S A$demo_c_0$495 Def0031 -S A$demo_c_0$486 Def0021 -S A$demo_c_0$477 Def0014 -S C$demo_c_0.c$41$1$1 Def005A -S C$demo_c_0.c$23$1$1 Def0002 -S A$demo_c_0$496 Def0033 -S A$demo_c_0$487 Def0023 -S A$demo_c_0$478 Def0016 -S C$demo_c_0.c$24$1$1 Def0004 -S A$demo_c_0$497 Def0036 -S A$demo_c_0$479 Def0018 -S C$demo_c_0.c$32$2$2 Def0038 -S C$demo_c_0.c$25$1$1 Def0009 -S _main Def000A -S XG$someFunction$0$0 Def0009 -S C$demo_c_0.c$33$3$3 Def001C -S C$demo_c_0.c$28$1$1 Def000A -S C$demo_c_0.c$36$2$2 Def0042 -S C$demo_c_0.c$34$3$3 Def0026 -S G$someFunction$0$0 Def0000 -S XG$main$0$0 Def005A -S G$main$0$0 Def000A -S A$demo_c_0$510 Def0044 -S A$demo_c_0$501 Def0038 -S A$demo_c_0$520 Def0058 -S A$demo_c_0$511 Def0046 -S A$demo_c_0$502 Def003A -S A$demo_c_0$512 Def0048 -S A$demo_c_0$503 Def003B -S A$demo_c_0$513 Def004A -S A$demo_c_0$504 Def003E -S A$demo_c_0$450 Def0007 -S A$demo_c_0$514 Def004C -S A$demo_c_0$505 Def0040 -S A$demo_c_0$442 Def0000 -S _someFunction Def0000 -S A$demo_c_0$515 Def004E -S A$demo_c_0$470 Def000A -S A$demo_c_0$525 Def005A -S A$demo_c_0$516 Def0050 -S A$demo_c_0$480 Def001A -S A$demo_c_0$471 Def000B -S A$demo_c_0$453 Def0009 -S A$demo_c_0$517 Def0052 -S A$demo_c_0$490 Def0026 -S A$demo_c_0$472 Def000D -S A$demo_c_0$445 Def0002 -S C$demo_c_0.c$20$0$0 Def0000 -S A$demo_c_0$518 Def0054 -S A$demo_c_0$509 Def0042 -S A$demo_c_0$491 Def0028 -S A$demo_c_0$519 Def0056 -S A$demo_c_0$492 Def0029 -S A$demo_c_0$483 Def001C -S A$demo_c_0$474 Def000F -S A$demo_c_0$493 Def002C -S A$demo_c_0$484 Def001E -S A$demo_c_0$475 Def0010 -S A$demo_c_0$448 Def0004 -A CONST size 0 flags 20 addr 0 -A XINIT size 0 flags 20 addr 0 -A CABS size 0 flags 28 addr 0 -T 00 00 -R 00 00 00 02 -T 00 00 -R 00 00 00 03 -T 00 00 -R 00 00 00 03 -T 00 04 -R 00 00 00 03 -T 00 04 -R 00 00 00 03 -T 00 00 -R 00 00 00 05 -T 00 00 -R 00 00 00 05 -T 00 00 -R 00 00 00 0D -T 00 00 02 00 00 -R 00 00 00 0D 02 03 00 BA -T 00 00 E4 F5 00 00 00 F5 00 00 01 F5 -R 00 00 00 14 F1 21 04 00 03 F1 21 08 00 03 -T 00 06 00 00 02 F5 00 00 03 -R 00 00 00 14 F1 21 02 00 03 F1 21 06 00 03 -T 00 00 02 00 03 -R 00 00 00 15 00 03 00 0D -T 00 03 -R 00 00 00 0D -T 00 03 12 00 0A 80 FE -R 00 00 00 0D 00 03 00 16 -T 00 00 -R 00 00 00 16 -T 00 00 AA 82 8A 90 74 FF 6A F5 B0 22 -R 00 00 00 16 -T 00 0A -R 00 00 00 16 -T 00 0A -R 00 00 00 16 -T 00 0A E4 F5 00 00 04 F5 00 00 05 -R 00 00 00 16 F1 21 04 00 03 F1 21 08 00 03 -T 00 0F -R 00 00 00 16 -T 00 0F C3 E5 00 00 04 94 FF E5 00 00 05 64 80 94 -R 00 00 00 16 F1 21 04 00 03 F1 21 0A 00 03 -T 00 19 80 50 26 AA 00 00 04 74 02 2A F5 82 12 -R 00 00 00 16 F1 21 06 00 03 -T 00 24 00 00 05 00 00 00 E4 B5 -R 00 00 00 16 00 02 00 16 F1 21 05 00 03 -T 00 2A 00 00 00 0C 05 00 00 01 B5 -R 00 00 00 16 F1 21 02 00 03 F1 21 07 00 03 -T 00 2F 00 00 01 07 05 00 00 02 B5 -R 00 00 00 16 F1 21 02 00 03 F1 21 07 00 03 -T 00 34 00 00 02 02 05 00 00 03 -R 00 00 00 16 F1 21 02 00 03 F1 21 07 00 03 -T 00 38 -R 00 00 00 16 -T 00 38 05 00 00 04 E4 B5 00 00 04 D1 05 -R 00 00 00 16 F1 21 03 00 03 F1 21 08 00 03 -T 00 3F 00 00 05 80 CD -R 00 00 00 16 F1 21 02 00 03 -T 00 42 -R 00 00 00 16 -T 00 42 E5 00 00 00 24 EA F5 00 00 00 E5 -R 00 00 00 16 F1 21 03 00 03 F1 21 09 00 03 -T 00 49 00 00 01 34 FF F5 00 00 01 E5 -R 00 00 00 16 F1 21 02 00 03 F1 21 08 00 03 -T 00 4F 00 00 02 34 FF F5 00 00 02 E5 -R 00 00 00 16 F1 21 02 00 03 F1 21 08 00 03 -T 00 55 00 00 03 34 FF F5 00 00 03 80 AE -R 00 00 00 16 F1 21 02 00 03 F1 21 08 00 03 diff --git a/demo/demo_c_0.rst b/demo/demo_c_0.rst deleted file mode 100644 index cc9b36a..0000000 --- a/demo/demo_c_0.rst +++ /dev/null @@ -1,529 +0,0 @@ - 1 ;-------------------------------------------------------- - 2 ; File Created by SDCC : free open source ANSI-C Compiler - 3 ; Version 2.9.0 #5416 (Oct 6 2009) (UNIX) - 4 ; This file was generated Tue Oct 27 23:03:10 2009 - 5 ;-------------------------------------------------------- - 6 .module demo_c_0 - 7 .optsdcc -mmcs51 --model-small - 8 - 9 ;-------------------------------------------------------- - 10 ; Public variables in this module - 11 ;-------------------------------------------------------- - 12 .globl _main - 13 .globl _someFunction - 14 .globl _CY - 15 .globl _AC - 16 .globl _F0 - 17 .globl _RS1 - 18 .globl _RS0 - 19 .globl _OV - 20 .globl _FL - 21 .globl _P - 22 .globl _PS - 23 .globl _PT1 - 24 .globl _PX1 - 25 .globl _PT0 - 26 .globl _PX0 - 27 .globl _RD - 28 .globl _WR - 29 .globl _T1 - 30 .globl _T0 - 31 .globl _INT1 - 32 .globl _INT0 - 33 .globl _TXD - 34 .globl _RXD - 35 .globl _P3_7 - 36 .globl _P3_6 - 37 .globl _P3_5 - 38 .globl _P3_4 - 39 .globl _P3_3 - 40 .globl _P3_2 - 41 .globl _P3_1 - 42 .globl _P3_0 - 43 .globl _EA - 44 .globl _ES - 45 .globl _ET1 - 46 .globl _EX1 - 47 .globl _ET0 - 48 .globl _EX0 - 49 .globl _P2_7 - 50 .globl _P2_6 - 51 .globl _P2_5 - 52 .globl _P2_4 - 53 .globl _P2_3 - 54 .globl _P2_2 - 55 .globl _P2_1 - 56 .globl _P2_0 - 57 .globl _SM0 - 58 .globl _SM1 - 59 .globl _SM2 - 60 .globl _REN - 61 .globl _TB8 - 62 .globl _RB8 - 63 .globl _TI - 64 .globl _RI - 65 .globl _P1_7 - 66 .globl _P1_6 - 67 .globl _P1_5 - 68 .globl _P1_4 - 69 .globl _P1_3 - 70 .globl _P1_2 - 71 .globl _P1_1 - 72 .globl _P1_0 - 73 .globl _TF1 - 74 .globl _TR1 - 75 .globl _TF0 - 76 .globl _TR0 - 77 .globl _IE1 - 78 .globl _IT1 - 79 .globl _IE0 - 80 .globl _IT0 - 81 .globl _P0_7 - 82 .globl _P0_6 - 83 .globl _P0_5 - 84 .globl _P0_4 - 85 .globl _P0_3 - 86 .globl _P0_2 - 87 .globl _P0_1 - 88 .globl _P0_0 - 89 .globl _B - 90 .globl _A - 91 .globl _ACC - 92 .globl _PSW - 93 .globl _IP - 94 .globl _P3 - 95 .globl _IE - 96 .globl _P2 - 97 .globl _SBUF - 98 .globl _SCON - 99 .globl _P1 - 100 .globl _TH1 - 101 .globl _TH0 - 102 .globl _TL1 - 103 .globl _TL0 - 104 .globl _TMOD - 105 .globl _TCON - 106 .globl _PCON - 107 .globl _DPH - 108 .globl _DPL - 109 .globl _SP - 110 .globl _P0 - 111 .globl _i - 112 .globl _some_variable - 113 ;-------------------------------------------------------- - 114 ; special function registers - 115 ;-------------------------------------------------------- - 116 .area RSEG (DATA) - 0080 117 G$P0$0$0 == 0x0080 - 0080 118 _P0 = 0x0080 - 0081 119 G$SP$0$0 == 0x0081 - 0081 120 _SP = 0x0081 - 0082 121 G$DPL$0$0 == 0x0082 - 0082 122 _DPL = 0x0082 - 0083 123 G$DPH$0$0 == 0x0083 - 0083 124 _DPH = 0x0083 - 0087 125 G$PCON$0$0 == 0x0087 - 0087 126 _PCON = 0x0087 - 0088 127 G$TCON$0$0 == 0x0088 - 0088 128 _TCON = 0x0088 - 0089 129 G$TMOD$0$0 == 0x0089 - 0089 130 _TMOD = 0x0089 - 008A 131 G$TL0$0$0 == 0x008a - 008A 132 _TL0 = 0x008a - 008B 133 G$TL1$0$0 == 0x008b - 008B 134 _TL1 = 0x008b - 008C 135 G$TH0$0$0 == 0x008c - 008C 136 _TH0 = 0x008c - 008D 137 G$TH1$0$0 == 0x008d - 008D 138 _TH1 = 0x008d - 0090 139 G$P1$0$0 == 0x0090 - 0090 140 _P1 = 0x0090 - 0098 141 G$SCON$0$0 == 0x0098 - 0098 142 _SCON = 0x0098 - 0099 143 G$SBUF$0$0 == 0x0099 - 0099 144 _SBUF = 0x0099 - 00A0 145 G$P2$0$0 == 0x00a0 - 00A0 146 _P2 = 0x00a0 - 00A8 147 G$IE$0$0 == 0x00a8 - 00A8 148 _IE = 0x00a8 - 00B0 149 G$P3$0$0 == 0x00b0 - 00B0 150 _P3 = 0x00b0 - 00B8 151 G$IP$0$0 == 0x00b8 - 00B8 152 _IP = 0x00b8 - 00D0 153 G$PSW$0$0 == 0x00d0 - 00D0 154 _PSW = 0x00d0 - 00E0 155 G$ACC$0$0 == 0x00e0 - 00E0 156 _ACC = 0x00e0 - 00E0 157 G$A$0$0 == 0x00e0 - 00E0 158 _A = 0x00e0 - 00F0 159 G$B$0$0 == 0x00f0 - 00F0 160 _B = 0x00f0 - 161 ;-------------------------------------------------------- - 162 ; special function bits - 163 ;-------------------------------------------------------- - 164 .area RSEG (DATA) - 0080 165 G$P0_0$0$0 == 0x0080 - 0080 166 _P0_0 = 0x0080 - 0081 167 G$P0_1$0$0 == 0x0081 - 0081 168 _P0_1 = 0x0081 - 0082 169 G$P0_2$0$0 == 0x0082 - 0082 170 _P0_2 = 0x0082 - 0083 171 G$P0_3$0$0 == 0x0083 - 0083 172 _P0_3 = 0x0083 - 0084 173 G$P0_4$0$0 == 0x0084 - 0084 174 _P0_4 = 0x0084 - 0085 175 G$P0_5$0$0 == 0x0085 - 0085 176 _P0_5 = 0x0085 - 0086 177 G$P0_6$0$0 == 0x0086 - 0086 178 _P0_6 = 0x0086 - 0087 179 G$P0_7$0$0 == 0x0087 - 0087 180 _P0_7 = 0x0087 - 0088 181 G$IT0$0$0 == 0x0088 - 0088 182 _IT0 = 0x0088 - 0089 183 G$IE0$0$0 == 0x0089 - 0089 184 _IE0 = 0x0089 - 008A 185 G$IT1$0$0 == 0x008a - 008A 186 _IT1 = 0x008a - 008B 187 G$IE1$0$0 == 0x008b - 008B 188 _IE1 = 0x008b - 008C 189 G$TR0$0$0 == 0x008c - 008C 190 _TR0 = 0x008c - 008D 191 G$TF0$0$0 == 0x008d - 008D 192 _TF0 = 0x008d - 008E 193 G$TR1$0$0 == 0x008e - 008E 194 _TR1 = 0x008e - 008F 195 G$TF1$0$0 == 0x008f - 008F 196 _TF1 = 0x008f - 0090 197 G$P1_0$0$0 == 0x0090 - 0090 198 _P1_0 = 0x0090 - 0091 199 G$P1_1$0$0 == 0x0091 - 0091 200 _P1_1 = 0x0091 - 0092 201 G$P1_2$0$0 == 0x0092 - 0092 202 _P1_2 = 0x0092 - 0093 203 G$P1_3$0$0 == 0x0093 - 0093 204 _P1_3 = 0x0093 - 0094 205 G$P1_4$0$0 == 0x0094 - 0094 206 _P1_4 = 0x0094 - 0095 207 G$P1_5$0$0 == 0x0095 - 0095 208 _P1_5 = 0x0095 - 0096 209 G$P1_6$0$0 == 0x0096 - 0096 210 _P1_6 = 0x0096 - 0097 211 G$P1_7$0$0 == 0x0097 - 0097 212 _P1_7 = 0x0097 - 0098 213 G$RI$0$0 == 0x0098 - 0098 214 _RI = 0x0098 - 0099 215 G$TI$0$0 == 0x0099 - 0099 216 _TI = 0x0099 - 009A 217 G$RB8$0$0 == 0x009a - 009A 218 _RB8 = 0x009a - 009B 219 G$TB8$0$0 == 0x009b - 009B 220 _TB8 = 0x009b - 009C 221 G$REN$0$0 == 0x009c - 009C 222 _REN = 0x009c - 009D 223 G$SM2$0$0 == 0x009d - 009D 224 _SM2 = 0x009d - 009E 225 G$SM1$0$0 == 0x009e - 009E 226 _SM1 = 0x009e - 009F 227 G$SM0$0$0 == 0x009f - 009F 228 _SM0 = 0x009f - 00A0 229 G$P2_0$0$0 == 0x00a0 - 00A0 230 _P2_0 = 0x00a0 - 00A1 231 G$P2_1$0$0 == 0x00a1 - 00A1 232 _P2_1 = 0x00a1 - 00A2 233 G$P2_2$0$0 == 0x00a2 - 00A2 234 _P2_2 = 0x00a2 - 00A3 235 G$P2_3$0$0 == 0x00a3 - 00A3 236 _P2_3 = 0x00a3 - 00A4 237 G$P2_4$0$0 == 0x00a4 - 00A4 238 _P2_4 = 0x00a4 - 00A5 239 G$P2_5$0$0 == 0x00a5 - 00A5 240 _P2_5 = 0x00a5 - 00A6 241 G$P2_6$0$0 == 0x00a6 - 00A6 242 _P2_6 = 0x00a6 - 00A7 243 G$P2_7$0$0 == 0x00a7 - 00A7 244 _P2_7 = 0x00a7 - 00A8 245 G$EX0$0$0 == 0x00a8 - 00A8 246 _EX0 = 0x00a8 - 00A9 247 G$ET0$0$0 == 0x00a9 - 00A9 248 _ET0 = 0x00a9 - 00AA 249 G$EX1$0$0 == 0x00aa - 00AA 250 _EX1 = 0x00aa - 00AB 251 G$ET1$0$0 == 0x00ab - 00AB 252 _ET1 = 0x00ab - 00AC 253 G$ES$0$0 == 0x00ac - 00AC 254 _ES = 0x00ac - 00AF 255 G$EA$0$0 == 0x00af - 00AF 256 _EA = 0x00af - 00B0 257 G$P3_0$0$0 == 0x00b0 - 00B0 258 _P3_0 = 0x00b0 - 00B1 259 G$P3_1$0$0 == 0x00b1 - 00B1 260 _P3_1 = 0x00b1 - 00B2 261 G$P3_2$0$0 == 0x00b2 - 00B2 262 _P3_2 = 0x00b2 - 00B3 263 G$P3_3$0$0 == 0x00b3 - 00B3 264 _P3_3 = 0x00b3 - 00B4 265 G$P3_4$0$0 == 0x00b4 - 00B4 266 _P3_4 = 0x00b4 - 00B5 267 G$P3_5$0$0 == 0x00b5 - 00B5 268 _P3_5 = 0x00b5 - 00B6 269 G$P3_6$0$0 == 0x00b6 - 00B6 270 _P3_6 = 0x00b6 - 00B7 271 G$P3_7$0$0 == 0x00b7 - 00B7 272 _P3_7 = 0x00b7 - 00B0 273 G$RXD$0$0 == 0x00b0 - 00B0 274 _RXD = 0x00b0 - 00B1 275 G$TXD$0$0 == 0x00b1 - 00B1 276 _TXD = 0x00b1 - 00B2 277 G$INT0$0$0 == 0x00b2 - 00B2 278 _INT0 = 0x00b2 - 00B3 279 G$INT1$0$0 == 0x00b3 - 00B3 280 _INT1 = 0x00b3 - 00B4 281 G$T0$0$0 == 0x00b4 - 00B4 282 _T0 = 0x00b4 - 00B5 283 G$T1$0$0 == 0x00b5 - 00B5 284 _T1 = 0x00b5 - 00B6 285 G$WR$0$0 == 0x00b6 - 00B6 286 _WR = 0x00b6 - 00B7 287 G$RD$0$0 == 0x00b7 - 00B7 288 _RD = 0x00b7 - 00B8 289 G$PX0$0$0 == 0x00b8 - 00B8 290 _PX0 = 0x00b8 - 00B9 291 G$PT0$0$0 == 0x00b9 - 00B9 292 _PT0 = 0x00b9 - 00BA 293 G$PX1$0$0 == 0x00ba - 00BA 294 _PX1 = 0x00ba - 00BB 295 G$PT1$0$0 == 0x00bb - 00BB 296 _PT1 = 0x00bb - 00BC 297 G$PS$0$0 == 0x00bc - 00BC 298 _PS = 0x00bc - 00D0 299 G$P$0$0 == 0x00d0 - 00D0 300 _P = 0x00d0 - 00D1 301 G$FL$0$0 == 0x00d1 - 00D1 302 _FL = 0x00d1 - 00D2 303 G$OV$0$0 == 0x00d2 - 00D2 304 _OV = 0x00d2 - 00D3 305 G$RS0$0$0 == 0x00d3 - 00D3 306 _RS0 = 0x00d3 - 00D4 307 G$RS1$0$0 == 0x00d4 - 00D4 308 _RS1 = 0x00d4 - 00D5 309 G$F0$0$0 == 0x00d5 - 00D5 310 _F0 = 0x00d5 - 00D6 311 G$AC$0$0 == 0x00d6 - 00D6 312 _AC = 0x00d6 - 00D7 313 G$CY$0$0 == 0x00d7 - 00D7 314 _CY = 0x00d7 - 315 ;-------------------------------------------------------- - 316 ; overlayable register banks - 317 ;-------------------------------------------------------- - 318 .area REG_BANK_0 (REL,OVR,DATA) - 0000 319 .ds 8 - 320 ;-------------------------------------------------------- - 321 ; internal ram data - 322 ;-------------------------------------------------------- - 323 .area DSEG (DATA) - 0000 324 G$some_variable$0$0==. - 0008 325 _some_variable:: - 0008 326 .ds 4 - 0004 327 G$i$0$0==. - 000C 328 _i:: - 000C 329 .ds 2 - 330 ;-------------------------------------------------------- - 331 ; overlayable items in internal ram - 332 ;-------------------------------------------------------- - 333 .area OSEG (OVR,DATA) - 334 ;-------------------------------------------------------- - 335 ; Stack segment in internal ram - 336 ;-------------------------------------------------------- - 337 .area SSEG (DATA) - 000E 338 __start__stack: - 000E 339 .ds 1 - 340 - 341 ;-------------------------------------------------------- - 342 ; indirectly addressable internal ram data - 343 ;-------------------------------------------------------- - 344 .area ISEG (DATA) - 345 ;-------------------------------------------------------- - 346 ; absolute internal ram data - 347 ;-------------------------------------------------------- - 348 .area IABS (ABS,DATA) - 349 .area IABS (ABS,DATA) - 350 ;-------------------------------------------------------- - 351 ; bit data - 352 ;-------------------------------------------------------- - 353 .area BSEG (BIT) - 354 ;-------------------------------------------------------- - 355 ; paged external ram data - 356 ;-------------------------------------------------------- - 357 .area PSEG (PAG,XDATA) - 358 ;-------------------------------------------------------- - 359 ; external ram data - 360 ;-------------------------------------------------------- - 361 .area XSEG (XDATA) - 362 ;-------------------------------------------------------- - 363 ; absolute external ram data - 364 ;-------------------------------------------------------- - 365 .area XABS (ABS,XDATA) - 366 ;-------------------------------------------------------- - 367 ; external initialized ram data - 368 ;-------------------------------------------------------- - 369 .area XISEG (XDATA) - 370 .area HOME (CODE) - 371 .area GSINIT0 (CODE) - 372 .area GSINIT1 (CODE) - 373 .area GSINIT2 (CODE) - 374 .area GSINIT3 (CODE) - 375 .area GSINIT4 (CODE) - 376 .area GSINIT5 (CODE) - 377 .area GSINIT (CODE) - 378 .area GSFINAL (CODE) - 379 .area CSEG (CODE) - 380 ;-------------------------------------------------------- - 381 ; interrupt vector - 382 ;-------------------------------------------------------- - 383 .area HOME (CODE) - 0000 384 __interrupt_vect: - 0000 02 00 08 385 ljmp __sdcc_gsinit_startup - 386 ;-------------------------------------------------------- - 387 ; global & static initialisations - 388 ;-------------------------------------------------------- - 389 .area HOME (CODE) - 390 .area GSINIT (CODE) - 391 .area GSFINAL (CODE) - 392 .area GSINIT (CODE) - 393 .globl __sdcc_gsinit_startup - 394 .globl __sdcc_program_startup - 395 .globl __start__stack - 396 .globl __mcs51_genXINIT - 397 .globl __mcs51_genXRAMCLEAR - 398 .globl __mcs51_genRAMCLEAR - 0000 399 G$main$0$0 ==. - 0000 400 C$demo_c_0.c$10$1$1 ==. - 401 ; demo_c_0.c:10: unsigned long some_variable=0; ///< Documentation for this variable comes here - 0061 E4 402 clr a - 0062 F5 08 403 mov _some_variable,a - 0064 F5 09 404 mov (_some_variable + 1),a - 0066 F5 0A 405 mov (_some_variable + 2),a - 0068 F5 0B 406 mov (_some_variable + 3),a - 407 .area GSFINAL (CODE) - 006A 02 00 03 408 ljmp __sdcc_program_startup - 409 ;-------------------------------------------------------- - 410 ; Home - 411 ;-------------------------------------------------------- - 412 .area HOME (CODE) - 413 .area HOME (CODE) - 0003 414 __sdcc_program_startup: - 0003 12 00 77 415 lcall _main - 416 ; return from main will lock up - 0006 80 FE 417 sjmp . - 418 ;-------------------------------------------------------- - 419 ; code - 420 ;-------------------------------------------------------- - 421 .area CSEG (CODE) - 422 ;------------------------------------------------------------ - 423 ;Allocation info for local variables in function 'someFunction' - 424 ;------------------------------------------------------------ - 425 ;somevalue Allocated to registers r2 - 426 ;------------------------------------------------------------ - 0000 427 G$someFunction$0$0 ==. - 0000 428 C$demo_c_0.c$20$0$0 ==. - 429 ; demo_c_0.c:20: void someFunction(unsigned char somevalue) - 430 ; ----------------------------------------- - 431 ; function someFunction - 432 ; ----------------------------------------- - 006D 433 _someFunction: - 0002 434 ar2 = 0x02 - 0003 435 ar3 = 0x03 - 0004 436 ar4 = 0x04 - 0005 437 ar5 = 0x05 - 0006 438 ar6 = 0x06 - 0007 439 ar7 = 0x07 - 0000 440 ar0 = 0x00 - 0001 441 ar1 = 0x01 - 006D AA 82 442 mov r2,dpl - 0002 443 C$demo_c_0.c$23$1$1 ==. - 444 ; demo_c_0.c:23: P1=somevalue; - 006F 8A 90 445 mov _P1,r2 - 0004 446 C$demo_c_0.c$24$1$1 ==. - 447 ; demo_c_0.c:24: P3=somevalue^0xFF; - 0071 74 FF 448 mov a,#0xFF - 0073 6A 449 xrl a,r2 - 0074 F5 B0 450 mov _P3,a - 0009 451 C$demo_c_0.c$25$1$1 ==. - 0009 452 XG$someFunction$0$0 ==. - 0076 22 453 ret - 454 ;------------------------------------------------------------ - 455 ;Allocation info for local variables in function 'main' - 456 ;------------------------------------------------------------ - 457 ;------------------------------------------------------------ - 000A 458 G$main$0$0 ==. - 000A 459 C$demo_c_0.c$28$1$1 ==. - 460 ; demo_c_0.c:28: int main() - 461 ; ----------------------------------------- - 462 ; function main - 463 ; ----------------------------------------- - 0077 464 _main: - 000A 465 C$demo_c_0.c$31$1$1 ==. - 466 ; demo_c_0.c:31: while(1) { - 0077 467 00102$: - 000A 468 C$demo_c_0.c$32$2$2 ==. - 469 ; demo_c_0.c:32: for(i=0; i<255; i++) { - 0077 E4 470 clr a - 0078 F5 0C 471 mov _i,a - 007A F5 0D 472 mov (_i + 1),a - 007C 473 00104$: - 007C C3 474 clr c - 007D E5 0C 475 mov a,_i - 007F 94 FF 476 subb a,#0xFF - 0081 E5 0D 477 mov a,(_i + 1) - 0083 64 80 478 xrl a,#0x80 - 0085 94 80 479 subb a,#0x80 - 0087 50 26 480 jnc 00107$ - 001C 481 C$demo_c_0.c$33$3$3 ==. - 482 ; demo_c_0.c:33: someFunction(i+2); - 0089 AA 0C 483 mov r2,_i - 008B 74 02 484 mov a,#0x02 - 008D 2A 485 add a,r2 - 008E F5 82 486 mov dpl,a - 0090 12 00 6D 487 lcall _someFunction - 0026 488 C$demo_c_0.c$34$3$3 ==. - 489 ; demo_c_0.c:34: some_variable++; - 0093 05 08 490 inc _some_variable - 0095 E4 491 clr a - 0096 B5 08 0C 492 cjne a,_some_variable,00114$ - 0099 05 09 493 inc (_some_variable + 1) - 009B B5 09 07 494 cjne a,(_some_variable + 1),00114$ - 009E 05 0A 495 inc (_some_variable + 2) - 00A0 B5 0A 02 496 cjne a,(_some_variable + 2),00114$ - 00A3 05 0B 497 inc (_some_variable + 3) - 00A5 498 00114$: - 0038 499 C$demo_c_0.c$32$2$2 ==. - 500 ; demo_c_0.c:32: for(i=0; i<255; i++) { - 00A5 05 0C 501 inc _i - 00A7 E4 502 clr a - 00A8 B5 0C D1 503 cjne a,_i,00104$ - 00AB 05 0D 504 inc (_i + 1) - 00AD 80 CD 505 sjmp 00104$ - 00AF 506 00107$: - 0042 507 C$demo_c_0.c$36$2$2 ==. - 508 ; demo_c_0.c:36: some_variable-=22; - 00AF E5 08 509 mov a,_some_variable - 00B1 24 EA 510 add a,#0xea - 00B3 F5 08 511 mov _some_variable,a - 00B5 E5 09 512 mov a,(_some_variable + 1) - 00B7 34 FF 513 addc a,#0xff - 00B9 F5 09 514 mov (_some_variable + 1),a - 00BB E5 0A 515 mov a,(_some_variable + 2) - 00BD 34 FF 516 addc a,#0xff - 00BF F5 0A 517 mov (_some_variable + 2),a - 00C1 E5 0B 518 mov a,(_some_variable + 3) - 00C3 34 FF 519 addc a,#0xff - 00C5 F5 0B 520 mov (_some_variable + 3),a - 005A 521 C$demo_c_0.c$40$1$1 ==. - 522 ; demo_c_0.c:40: return 0; - 005A 523 C$demo_c_0.c$41$1$1 ==. - 005A 524 XG$main$0$0 ==. - 00C7 80 AE 525 sjmp 00102$ - 526 .area CSEG (CODE) - 527 .area CONST (CODE) - 528 .area XINIT (CODE) - 529 .area CABS (ABS,CODE) diff --git a/demo/demo_c_0.sym b/demo/demo_c_0.sym deleted file mode 100644 index 9d943ba..0000000 --- a/demo/demo_c_0.sym +++ /dev/null @@ -1,659 +0,0 @@ -ASxxxx Assembler V01.70 + NoICE + SDCC mods + Flat24 Feb-1999 (Intel 8051), page 1. - -Symbol Table - - A 00D6 - D A$demo_c_0$385 0000 GR - 14 A$demo_c_0$402 0000 GR - 14 A$demo_c_0$403 0001 GR - 14 A$demo_c_0$404 0003 GR - 14 A$demo_c_0$405 0005 GR - 14 A$demo_c_0$406 0007 GR - 15 A$demo_c_0$408 0000 GR - D A$demo_c_0$415 0003 GR - D A$demo_c_0$417 0006 GR - 16 A$demo_c_0$442 0000 GR - 16 A$demo_c_0$445 0002 GR - 16 A$demo_c_0$448 0004 GR - 16 A$demo_c_0$449 0006 GR - 16 A$demo_c_0$450 0007 GR - 16 A$demo_c_0$453 0009 GR - 16 A$demo_c_0$470 000A GR - 16 A$demo_c_0$471 000B GR - 16 A$demo_c_0$472 000D GR - 16 A$demo_c_0$474 000F GR - 16 A$demo_c_0$475 0010 GR - 16 A$demo_c_0$476 0012 GR - 16 A$demo_c_0$477 0014 GR - 16 A$demo_c_0$478 0016 GR - 16 A$demo_c_0$479 0018 GR - 16 A$demo_c_0$480 001A GR - 16 A$demo_c_0$483 001C GR - 16 A$demo_c_0$484 001E GR - 16 A$demo_c_0$485 0020 GR - 16 A$demo_c_0$486 0021 GR - 16 A$demo_c_0$487 0023 GR - 16 A$demo_c_0$490 0026 GR - 16 A$demo_c_0$491 0028 GR - 16 A$demo_c_0$492 0029 GR - 16 A$demo_c_0$493 002C GR - 16 A$demo_c_0$494 002E GR - 16 A$demo_c_0$495 0031 GR - 16 A$demo_c_0$496 0033 GR - 16 A$demo_c_0$497 0036 GR - 16 A$demo_c_0$501 0038 GR - 16 A$demo_c_0$502 003A GR - 16 A$demo_c_0$503 003B GR - 16 A$demo_c_0$504 003E GR - 16 A$demo_c_0$505 0040 GR - 16 A$demo_c_0$509 0042 GR - 16 A$demo_c_0$510 0044 GR - 16 A$demo_c_0$511 0046 GR - 16 A$demo_c_0$512 0048 GR - 16 A$demo_c_0$513 004A GR - 16 A$demo_c_0$514 004C GR - 16 A$demo_c_0$515 004E GR - 16 A$demo_c_0$516 0050 GR - 16 A$demo_c_0$517 0052 GR - 16 A$demo_c_0$518 0054 GR - 16 A$demo_c_0$519 0056 GR - 16 A$demo_c_0$520 0058 GR - 16 A$demo_c_0$525 005A GR - AC 00D6 - ACC 00E0 - ACC.0 00E0 - ACC.1 00E1 - ACC.2 00E2 - ACC.3 00E3 - ACC.4 00E4 - ACC.5 00E5 - ACC.6 00E6 - ACC.7 00E7 - B 00F0 - B.0 00F0 - B.1 00F1 - B.2 00F2 - B.3 00F3 - B.4 00F4 - B.5 00F5 - B.6 00F6 - B.7 00F7 - 14 C$demo_c_0.c$10$1$1 = 0000 GR - 16 C$demo_c_0.c$20$0$0 = 0000 GR - 16 C$demo_c_0.c$23$1$1 = 0002 GR - 16 C$demo_c_0.c$24$1$1 = 0004 GR - 16 C$demo_c_0.c$25$1$1 = 0009 GR - 16 C$demo_c_0.c$28$1$1 = 000A GR - 16 C$demo_c_0.c$31$1$1 = 000A GR - 16 C$demo_c_0.c$32$2$2 = 0038 GR - 16 C$demo_c_0.c$33$3$3 = 001C GR - 16 C$demo_c_0.c$34$3$3 = 0026 GR - 16 C$demo_c_0.c$36$2$2 = 0042 GR - 16 C$demo_c_0.c$40$1$1 = 005A GR - 16 C$demo_c_0.c$41$1$1 = 005A GR - CPRL2 00C8 - CT2 00C9 - CY 00D7 - DPH 0083 - DPL 0082 - EA 00AF - ES 00AC - ET0 00A9 - ET1 00AB - ET2 00AD - EX0 00A8 - EX1 00AA - EXEN2 00CB - EXF2 00CE - F0 00D5 - G$A$0$0 = 00E0 G - G$AC$0$0 = 00D6 G - G$ACC$0$0 = 00E0 G - G$B$0$0 = 00F0 G - G$CY$0$0 = 00D7 G - G$DPH$0$0 = 0083 G - G$DPL$0$0 = 0082 G - G$EA$0$0 = 00AF G - G$ES$0$0 = 00AC G - G$ET0$0$0 = 00A9 G - G$ET1$0$0 = 00AB G - G$EX0$0$0 = 00A8 G - G$EX1$0$0 = 00AA G - G$F0$0$0 = 00D5 G - G$FL$0$0 = 00D1 G - G$IE$0$0 = 00A8 G - G$IE0$0$0 = 0089 G - G$IE1$0$0 = 008B G - G$INT0$0$0 = 00B2 G - G$INT1$0$0 = 00B3 G - G$IP$0$0 = 00B8 G - G$IT0$0$0 = 0088 G - G$IT1$0$0 = 008A G - G$OV$0$0 = 00D2 G - G$P$0$0 = 00D0 G - G$P0$0$0 = 0080 G - G$P0_0$0$0 = 0080 G - G$P0_1$0$0 = 0081 G - G$P0_2$0$0 = 0082 G - G$P0_3$0$0 = 0083 G - G$P0_4$0$0 = 0084 G - G$P0_5$0$0 = 0085 G - G$P0_6$0$0 = 0086 G - G$P0_7$0$0 = 0087 G - G$P1$0$0 = 0090 G - G$P1_0$0$0 = 0090 G - G$P1_1$0$0 = 0091 G - G$P1_2$0$0 = 0092 G - G$P1_3$0$0 = 0093 G - G$P1_4$0$0 = 0094 G - G$P1_5$0$0 = 0095 G - G$P1_6$0$0 = 0096 G - G$P1_7$0$0 = 0097 G - G$P2$0$0 = 00A0 G - G$P2_0$0$0 = 00A0 G - G$P2_1$0$0 = 00A1 G - G$P2_2$0$0 = 00A2 G - G$P2_3$0$0 = 00A3 G - G$P2_4$0$0 = 00A4 G - G$P2_5$0$0 = 00A5 G - G$P2_6$0$0 = 00A6 G - G$P2_7$0$0 = 00A7 G - G$P3$0$0 = 00B0 G - G$P3_0$0$0 = 00B0 G - G$P3_1$0$0 = 00B1 G - G$P3_2$0$0 = 00B2 G - G$P3_3$0$0 = 00B3 G - G$P3_4$0$0 = 00B4 G - G$P3_5$0$0 = 00B5 G - G$P3_6$0$0 = 00B6 G - G$P3_7$0$0 = 00B7 G - G$PCON$0$0 = 0087 G - G$PS$0$0 = 00BC G - G$PSW$0$0 = 00D0 G - G$PT0$0$0 = 00B9 G - G$PT1$0$0 = 00BB G - G$PX0$0$0 = 00B8 G - G$PX1$0$0 = 00BA G - G$RB8$0$0 = 009A G - G$RD$0$0 = 00B7 G - G$REN$0$0 = 009C G - G$RI$0$0 = 0098 G - G$RS0$0$0 = 00D3 G - G$RS1$0$0 = 00D4 G - G$RXD$0$0 = 00B0 G - G$SBUF$0$0 = 0099 G - G$SCON$0$0 = 0098 G - G$SM0$0$0 = 009F G - G$SM1$0$0 = 009E G - G$SM2$0$0 = 009D G - G$SP$0$0 = 0081 G - G$T0$0$0 = 00B4 G - G$T1$0$0 = 00B5 G - G$TB8$0$0 = 009B G - G$TCON$0$0 = 0088 G - G$TF0$0$0 = 008D G - G$TF1$0$0 = 008F G - G$TH0$0$0 = 008C G - G$TH1$0$0 = 008D G - G$TI$0$0 = 0099 G - G$TL0$0$0 = 008A G - G$TL1$0$0 = 008B G - G$TMOD$0$0 = 0089 G - G$TR0$0$0 = 008C G - G$TR1$0$0 = 008E G - G$TXD$0$0 = 00B1 G - G$WR$0$0 = 00B6 G - 3 G$i$0$0 = 0004 GR - 16 G$main$0$0 = 000A GR - 16 G$someFunction$0$0 = 0000 GR - 3 G$some_variable$0$0 = 0000 GR - IE 00A8 - IE.0 00A8 - IE.1 00A9 - IE.2 00AA - IE.3 00AB - IE.4 00AC - IE.5 00AD - IE.7 00AF - IE0 0089 - IE1 008B - INT0 00B2 - INT1 00B3 - IP 00B8 - IP.0 00B8 - IP.1 00B9 - IP.2 00BA - IP.3 00BB - IP.4 00BC - IP.5 00BD - IT0 0088 - IT1 008A - OV 00D2 - P 00D0 - P0 0080 - P0.0 0080 - P0.1 0081 - P0.2 0082 - P0.3 0083 - P0.4 0084 - P0.5 0085 - P0.6 0086 - P0.7 0087 - P1 0090 - P1.0 0090 - P1.1 0091 - P1.2 0092 - P1.3 0093 - P1.4 0094 - P1.5 0095 - P1.6 0096 - P1.7 0097 - P2 00A0 - P2.0 00A0 - P2.1 00A1 - P2.2 00A2 - P2.3 00A3 - P2.4 00A4 - P2.5 00A5 - P2.6 00A6 - P2.7 00A7 - P3 00B0 - P3.0 00B0 - P3.1 00B1 - P3.2 00B2 - P3.3 00B3 - P3.4 00B4 - P3.5 00B5 - P3.6 00B6 - P3.7 00B7 - PCON 0087 - PS 00BC - PSW 00D0 - PSW.0 00D0 - PSW.1 00D1 - PSW.2 00D2 - PSW.3 00D3 - PSW.4 00D4 - PSW.5 00D5 - PSW.6 00D6 - PSW.7 00D7 - PT0 00B9 - PT1 00BB - PT2 00BD - PX0 00B8 - PX1 00BA - RB8 009A - RCAP2H 00CB - RCAP2L 00CA - RCLK 00CD - REN 009C - RI 0098 - RS0 00D3 - RS1 00D4 - RXD 00B0 - SBUF 0099 - SCON 0098 - SCON.0 0098 - SCON.1 0099 - SCON.2 009A - SCON.3 009B - SCON.4 009C - SCON.5 009D - SCON.6 009E - SCON.7 009F - SM0 009F - SM1 009E - SM2 009D - SP 0081 - T2CON 00C8 - T2CON.0 00C8 - T2CON.1 00C9 - T2CON.2 00CA - T2CON.3 00CB - T2CON.4 00CC - T2CON.5 00CD - T2CON.6 00CE - T2CON.7 00CF - TB8 009B - TCLK 00CC - TCON 0088 - TCON.0 0088 - TCON.1 0089 - TCON.2 008A - TCON.3 008B - TCON.4 008C - TCON.5 008D - TCON.6 008E - TCON.7 008F - TF0 008D - TF1 008F - TF2 00CF - TH0 008C - TH1 008D - TH2 00CD - TI 0099 - TL0 008A - TL1 008B - TL2 00CC - TMOD 0089 - TR0 008C - TR1 008E - TR2 00CA - TXD 00B1 - 16 XG$main$0$0 = 005A GR - 16 XG$someFunction$0$0 = 0009 GR - _A = 00E0 G - _AC = 00D6 G - _ACC = 00E0 G - _B = 00F0 G - _CY = 00D7 G - _DPH = 0083 G - _DPL = 0082 G - _EA = 00AF G - _ES = 00AC G - _ET0 = 00A9 G - _ET1 = 00AB G - _EX0 = 00A8 G - _EX1 = 00AA G - _F0 = 00D5 G - _FL = 00D1 G - _IE = 00A8 G - _IE0 = 0089 G - _IE1 = 008B G - _INT0 = 00B2 G - _INT1 = 00B3 G - _IP = 00B8 G - _IT0 = 0088 G - _IT1 = 008A G - _OV = 00D2 G - _P = 00D0 G - _P0 = 0080 G - _P0_0 = 0080 G - _P0_1 = 0081 G - _P0_2 = 0082 G - _P0_3 = 0083 G - _P0_4 = 0084 G - _P0_5 = 0085 G - _P0_6 = 0086 G - _P0_7 = 0087 G - _P1 = 0090 G - _P1_0 = 0090 G - _P1_1 = 0091 G - _P1_2 = 0092 G - _P1_3 = 0093 G - _P1_4 = 0094 G - _P1_5 = 0095 G - _P1_6 = 0096 G - _P1_7 = 0097 G - _P2 = 00A0 G - _P2_0 = 00A0 G - _P2_1 = 00A1 G - _P2_2 = 00A2 G - _P2_3 = 00A3 G - _P2_4 = 00A4 G - _P2_5 = 00A5 G - _P2_6 = 00A6 G - _P2_7 = 00A7 G - _P3 = 00B0 G - _P3_0 = 00B0 G - _P3_1 = 00B1 G - _P3_2 = 00B2 G - _P3_3 = 00B3 G - _P3_4 = 00B4 G - _P3_5 = 00B5 G - _P3_6 = 00B6 G - _P3_7 = 00B7 G - _PCON = 0087 G - _PS = 00BC G - _PSW = 00D0 G - _PT0 = 00B9 G - _PT1 = 00BB G - _PX0 = 00B8 G - _PX1 = 00BA G - _RB8 = 009A G - _RD = 00B7 G - _REN = 009C G - _RI = 0098 G - _RS0 = 00D3 G - _RS1 = 00D4 G - _RXD = 00B0 G - _SBUF = 0099 G - _SCON = 0098 G - _SM0 = 009F G - _SM1 = 009E G - _SM2 = 009D G - _SP = 0081 G - _T0 = 00B4 G - _T1 = 00B5 G - _TB8 = 009B G - _TCON = 0088 G - _TF0 = 008D G - _TF1 = 008F G - _TH0 = 008C G - _TH1 = 008D G - _TI = 0099 G - _TL0 = 008A G - _TL1 = 008B G - _TMOD = 0089 G - _TR0 = 008C G - _TR1 = 008E G - _TXD = 00B1 G - _WR = 00B6 G - D __interrupt_vect 0000 R - __mcs51_genRAMCLEAR **** GX - __mcs51_genXINIT **** GX - __mcs51_genXRAMCLEAR **** GX - __sdcc_gsinit_startup **** GX - D __sdcc_program_startup 0003 GR - 5 __start__stack 0000 GR - 3 _i 0004 GR - 16 _main 000A GR - 16 _someFunction 0000 GR - 3 _some_variable 0000 GR - a 00D6 - ac 00D6 - acc 00E0 - acc.0 00E0 - acc.1 00E1 - acc.2 00E2 - acc.3 00E3 - acc.4 00E4 - acc.5 00E5 - acc.6 00E6 - acc.7 00E7 - ar0 = 0000 - ar1 = 0001 - ar2 = 0002 - ar3 = 0003 - ar4 = 0004 - ar5 = 0005 - ar6 = 0006 - ar7 = 0007 - b 00F0 - b.0 00F0 - b.1 00F1 - b.2 00F2 - b.3 00F3 - b.4 00F4 - b.5 00F5 - b.6 00F6 - b.7 00F7 - cprl2 00C8 - ct2 00C9 - cy 00D7 - dph 0083 - dpl 0082 - ea 00AF - es 00AC - et0 00A9 - et1 00AB - et2 00AD - ex0 00A8 - ex1 00AA - exen2 00CB - exf2 00CE - f0 00D5 - ie 00A8 - ie.0 00A8 - ie.1 00A9 - ie.2 00AA - ie.3 00AB - ie.4 00AC - ie.5 00AD - ie.7 00AF - ie0 0089 - ie1 008B - int0 00B2 - int1 00B3 - ip 00B8 - ip.0 00B8 - ip.1 00B9 - ip.2 00BA - ip.3 00BB - ip.4 00BC - ip.5 00BD - it0 0088 - it1 008A - ov 00D2 - p 00D0 - p0 0080 - p0.0 0080 - p0.1 0081 - p0.2 0082 - p0.3 0083 - p0.4 0084 - p0.5 0085 - p0.6 0086 - p0.7 0087 - p1 0090 - p1.0 0090 - p1.1 0091 - p1.2 0092 - p1.3 0093 - p1.4 0094 - p1.5 0095 - p1.6 0096 - p1.7 0097 - p2 00A0 - p2.0 00A0 - p2.1 00A1 - p2.2 00A2 - p2.3 00A3 - p2.4 00A4 - p2.5 00A5 - p2.6 00A6 - p2.7 00A7 - p3 00B0 - p3.0 00B0 - p3.1 00B1 - p3.2 00B2 - p3.3 00B3 - p3.4 00B4 - p3.5 00B5 - p3.6 00B6 - p3.7 00B7 - pcon 0087 - ps 00BC - psw 00D0 - psw.0 00D0 - psw.1 00D1 - psw.2 00D2 - psw.3 00D3 - psw.4 00D4 - psw.5 00D5 - psw.6 00D6 - psw.7 00D7 - pt0 00B9 - pt1 00BB - pt2 00BD - px0 00B8 - px1 00BA - rb8 009A - rcap2h 00CB - rcap2l 00CA - rclk 00CD - ren 009C - ri 0098 - rs0 00D3 - rs1 00D4 - rxd 00B0 - sbuf 0099 - scon 0098 - scon.0 0098 - scon.1 0099 - scon.2 009A - scon.3 009B - scon.4 009C - scon.5 009D - scon.6 009E - scon.7 009F - sm0 009F - sm1 009E - sm2 009D - sp 0081 - t2con 00C8 - t2con.0 00C8 - t2con.1 00C9 - t2con.2 00CA - t2con.3 00CB - t2con.4 00CC - t2con.5 00CD - t2con.6 00CE - t2con.7 00CF - tb8 009B - tclk 00CC - tcon 0088 - tcon.0 0088 - tcon.1 0089 - tcon.2 008A - tcon.3 008B - tcon.4 008C - tcon.5 008D - tcon.6 008E - tcon.7 008F - tf0 008D - tf1 008F - tf2 00CF - th0 008C - th1 008D - th2 00CD - ti 0099 - tl0 008A - tl1 008B - tl2 00CC - tmod 0089 - tr0 008C - tr1 008E - tr2 00CA - txd 00B1 - -ASxxxx Assembler V01.70 + NoICE + SDCC mods + Flat24 Feb-1999 (Intel 8051), page 2. - -Area Table - - 0 _CODE size 0 flags 0 - 1 RSEG size 0 flags 0 - 2 REG_BANK_0 size 8 flags 4 - 3 DSEG size 6 flags 0 - 4 OSEG size 0 flags 4 - 5 SSEG size 1 flags 0 - 6 ISEG size 0 flags 0 - 7 IABS size 0 flags 8 - 8 BSEG size 0 flags 80 - 9 PSEG size 0 flags 50 - A XSEG size 0 flags 40 - B XABS size 0 flags 48 - C XISEG size 0 flags 40 - D HOME size 8 flags 20 - E GSINIT0 size 0 flags 20 - F GSINIT1 size 0 flags 20 - 10 GSINIT2 size 0 flags 20 - 11 GSINIT3 size 0 flags 20 - 12 GSINIT4 size 0 flags 20 - 13 GSINIT5 size 0 flags 20 - 14 GSINIT size 9 flags 20 - 15 GSFINAL size 3 flags 20 - 16 CSEG size 5C flags 20 - 17 CONST size 0 flags 20 - 18 XINIT size 0 flags 20 - 19 CABS size 0 flags 28 diff --git a/demo/file.hex b/demo/file.hex index b6d53b5..98475a7 100644 --- a/demo/file.hex +++ b/demo/file.hex @@ -1,2 +1,3 @@ -:0600000080FE33343334AE -:00000001FF
\ No newline at end of file +:0200000080FE80 +:04002000333433340E +:00000001FF diff --git a/demo/file.lst b/demo/file.lst index 5ca698c..dc76e40 100644 --- a/demo/file.lst +++ b/demo/file.lst @@ -1,5 +1,5 @@ demo3 demo - 3 32/13/1907 PAGE 6 - 1 ; MCU 8051 IDE - Demostration code + 1 ; MCU 8051 IDE - Demonstration code 2 ; Compiler directives 3 4 @@ -33,47 +33,51 @@ demo3 demo - 3 32/13/1907 PAGE 6 0038 30 d BIT 070Q ; Define inte demo3 demo - 3 32/13/1907 PAGE 9 FFA5 31 e CODE 0FFA5h ; Define prog -****WARNING: Exceeding code memory capacity: e = 65445 - FFF2 33 var SET (A * 44) MOD 9 - 14 ; - 34 - 35 CSEG at 20h ; Select prog - 36 x: DB '34' ; Store byte - 37 y: DW 3334h ; Store word - 38 - 39 DSEG at 5d ; Select inte - 40 m: DS 1 ; Reserve byt + FFF2 32 var SET (A * 44) MOD 9 - 14 ; + 33 + 34 CSEG at 20h ; Select prog +0020 3334 35 x: DB '34' ; Store byte +0022 3334 36 y: DW 3334h ; Store word + 37 + 38 DSEG at 5d ; Select inte + 39 m: DS 1 ; Reserve byt + 40 demo3 demo - 3 32/13/1907 PAGE 10 - 41 - 42 xseg ; Select exte - 43 n: DS 1 ; Reserve byt - 44 - 45 ISEG ; Select indi - 46 o: DS 1 ; Reserve byt - 47 - 48 NOLIST ; Disable code listin - 51 LIST ; Enable code listing - 52 + 41 xseg ; Select exte + 42 n: DS 1 ; Reserve byt + 43 + 44 ISEG ; Select indi + 45 o: DS 1 ; Reserve byt + 46 + 47 NOLIST ; Disable code listin + 50 LIST ; Enable code listing + 51 + 52 mc macro label ; Define macr demo3 demo - 3 32/13/1907 PAGE 11 - 53 - 54 +1 mc macro label ; Define macr - 55 +1 sjmp main - 56 IF 2 <> 2 OR 1 = 4 - 57 EXITM ; Exit macro - 58 ENDIF - 59 sjmp label - 60 endm ; End of defi - 61 - 62 main: ORG 0 ; Set segment + 53 IF 2 <> 2 OR 1 = 4 + 54 EXITM ; Exit macro + 55 ENDIF + 56 sjmp label + 57 endm ; End of defi + 58 + 59 CSEG ; <-- From now on, OR + 60 main: ORG 0 ; Set segment +****WARNING: This ORG has lower value than the previous one + 61 IF 0 ; Begin conditional a demo3 demo - 3 32/13/1907 PAGE 12 - 63 IF 0 ; Begin conditional a + 62 USING 2 ; Sel + 63 ELSE ; Alternative conditi 64 USING 2 ; Sel - 65 ELSE ; Alternative conditi - 66 USING 2 ; Sel - 67 ENDIF ; End conditional ass - 68 - 69 mc main ; Macro instu - 70 - 71 END ; End of assembly lan + 65 ENDIF ; End conditional ass + 66 + 67 +1 mc main ; Macro instr + 68 +1 IF 2 <> 2 OR + 69 +1 EXITM + 70 +1 ENDIF +0000 80FE 71 +1 sjmp main +demo3 demo - 3 32/13/1907 PAGE 13 + 72 + 73 END ; End of assembly lan ASSEMBLY COMPLETE, NO ERRORS FOUND, 1 WARNING @@ -81,7 +85,7 @@ ASSEMBLY COMPLETE, NO ERRORS FOUND, 1 WARNING demo3 demo - 3 32/13/1907 PAGE 2 ERROR SUMMARY: -Line 31, WARNING: Exceeding code memory capacity: e = 65445 +Line 62, WARNING: This ORG has lower value than the previous one demo3 demo - 3 32/13/1907 PAGE 3 @@ -89,6 +93,8 @@ Line 31, WARNING: Exceeding code memory capacity: e = 65445 demo3 demo - 3 32/13/1907 PAGE 4 SYMBOL TABLE: +??MCU_8051_IDE . . . . . . . . . . . N NUMB 8051H NOT USED +??VERSION. . . . . . . . . . . . . . N NUMB 0147H NOT USED A. . . . . . . . . . . . . . . . . . N NUMB 0036H NOT USED AC . . . . . . . . . . . . . . . . . B ADDR 00D6H NOT USED ACC. . . . . . . . . . . . . . . . . D ADDR 00E0H NOT USED @@ -155,9 +161,9 @@ D. . . . . . . . . . . . . . . . . . B ADDR 0038H NOT USED DP0H . . . . . . . . . . . . . . . . D ADDR 0083H NOT USED DP0L . . . . . . . . . . . . . . . . D ADDR 0082H NOT USED DP1H . . . . . . . . . . . . . . . . D ADDR 0085H NOT USED +demo3 demo - 3 32/13/1907 PAGE 5 DP1L . . . . . . . . . . . . . . . . D ADDR 0084H NOT USED DPH. . . . . . . . . . . . . . . . . D ADDR 0083H NOT USED -demo3 demo - 3 32/13/1907 PAGE 5 DPL. . . . . . . . . . . . . . . . . D ADDR 0082H NOT USED E. . . . . . . . . . . . . . . . . . C ADDR FFA5H NOT USED EA . . . . . . . . . . . . . . . . . B ADDR 00AFH NOT USED @@ -224,9 +230,9 @@ PT2. . . . . . . . . . . . . . . . . B ADDR 00BDH NOT USED PT2L . . . . . . . . . . . . . . . . B ADDR 00BDH NOT USED PX0. . . . . . . . . . . . . . . . . B ADDR 00B8H NOT USED PX0L . . . . . . . . . . . . . . . . B ADDR 00B8H NOT USED +demo3 demo - 3 32/13/1907 PAGE 6 PX1. . . . . . . . . . . . . . . . . B ADDR 00BAH NOT USED PX1L . . . . . . . . . . . . . . . . B ADDR 00BAH NOT USED -demo3 demo - 3 32/13/1907 PAGE 6 R. . . . . . . . . . . . . . . . . . B ADDR 0000H NOT USED RB8. . . . . . . . . . . . . . . . . B ADDR 009AH NOT USED RCAP2H . . . . . . . . . . . . . . . D ADDR 00CBH NOT USED @@ -288,5 +294,5 @@ WDTCON . . . . . . . . . . . . . . . D ADDR 00A7H NOT USED WDTPRG . . . . . . . . . . . . . . . D ADDR 00A7H NOT USED WDTRST . . . . . . . . . . . . . . . D ADDR 00A6H NOT USED WR . . . . . . . . . . . . . . . . . B ADDR 00B6H NOT USED -X. . . . . . . . . . . . . . . . . . C ADDR 0002H NOT USED -Y. . . . . . . . . . . . . . . . . . C ADDR 0004H NOT USED
\ No newline at end of file +X. . . . . . . . . . . . . . . . . . C ADDR 0020H NOT USED +Y. . . . . . . . . . . . . . . . . . C ADDR 0022H NOT USED
\ No newline at end of file diff --git a/demo/keypad_display b/demo/keypad_display Binary files differdeleted file mode 100644 index 4bea3f5..0000000 --- a/demo/keypad_display +++ /dev/null diff --git a/demo/keypad_display.adb b/demo/keypad_display.adb deleted file mode 100644 index ff7f769..0000000 --- a/demo/keypad_display.adb +++ /dev/null @@ -1,106 +0,0 @@ -M:keypad_display -F:G$main$0$0({2}DF,SI:S),C,0,0,0,0,0 -S:G$state$0$0({1}SC:S),E,0,0 -S:G$row$0$0({2}SI:S),E,0,0 -S:G$P0$0$0({1}SC:U),I,0,0 -S:G$SP$0$0({1}SC:U),I,0,0 -S:G$DPL$0$0({1}SC:U),I,0,0 -S:G$DPH$0$0({1}SC:U),I,0,0 -S:G$PCON$0$0({1}SC:U),I,0,0 -S:G$TCON$0$0({1}SC:U),I,0,0 -S:G$TMOD$0$0({1}SC:U),I,0,0 -S:G$TL0$0$0({1}SC:U),I,0,0 -S:G$TL1$0$0({1}SC:U),I,0,0 -S:G$TH0$0$0({1}SC:U),I,0,0 -S:G$TH1$0$0({1}SC:U),I,0,0 -S:G$P1$0$0({1}SC:U),I,0,0 -S:G$SCON$0$0({1}SC:U),I,0,0 -S:G$SBUF$0$0({1}SC:U),I,0,0 -S:G$P2$0$0({1}SC:U),I,0,0 -S:G$IE$0$0({1}SC:U),I,0,0 -S:G$P3$0$0({1}SC:U),I,0,0 -S:G$IP$0$0({1}SC:U),I,0,0 -S:G$PSW$0$0({1}SC:U),I,0,0 -S:G$ACC$0$0({1}SC:U),I,0,0 -S:G$B$0$0({1}SC:U),I,0,0 -S:G$P0_0$0$0({1}SX:U),J,0,0 -S:G$P0_1$0$0({1}SX:U),J,0,0 -S:G$P0_2$0$0({1}SX:U),J,0,0 -S:G$P0_3$0$0({1}SX:U),J,0,0 -S:G$P0_4$0$0({1}SX:U),J,0,0 -S:G$P0_5$0$0({1}SX:U),J,0,0 -S:G$P0_6$0$0({1}SX:U),J,0,0 -S:G$P0_7$0$0({1}SX:U),J,0,0 -S:G$IT0$0$0({1}SX:U),J,0,0 -S:G$IE0$0$0({1}SX:U),J,0,0 -S:G$IT1$0$0({1}SX:U),J,0,0 -S:G$IE1$0$0({1}SX:U),J,0,0 -S:G$TR0$0$0({1}SX:U),J,0,0 -S:G$TF0$0$0({1}SX:U),J,0,0 -S:G$TR1$0$0({1}SX:U),J,0,0 -S:G$TF1$0$0({1}SX:U),J,0,0 -S:G$P1_0$0$0({1}SX:U),J,0,0 -S:G$P1_1$0$0({1}SX:U),J,0,0 -S:G$P1_2$0$0({1}SX:U),J,0,0 -S:G$P1_3$0$0({1}SX:U),J,0,0 -S:G$P1_4$0$0({1}SX:U),J,0,0 -S:G$P1_5$0$0({1}SX:U),J,0,0 -S:G$P1_6$0$0({1}SX:U),J,0,0 -S:G$P1_7$0$0({1}SX:U),J,0,0 -S:G$RI$0$0({1}SX:U),J,0,0 -S:G$TI$0$0({1}SX:U),J,0,0 -S:G$RB8$0$0({1}SX:U),J,0,0 -S:G$TB8$0$0({1}SX:U),J,0,0 -S:G$REN$0$0({1}SX:U),J,0,0 -S:G$SM2$0$0({1}SX:U),J,0,0 -S:G$SM1$0$0({1}SX:U),J,0,0 -S:G$SM0$0$0({1}SX:U),J,0,0 -S:G$P2_0$0$0({1}SX:U),J,0,0 -S:G$P2_1$0$0({1}SX:U),J,0,0 -S:G$P2_2$0$0({1}SX:U),J,0,0 -S:G$P2_3$0$0({1}SX:U),J,0,0 -S:G$P2_4$0$0({1}SX:U),J,0,0 -S:G$P2_5$0$0({1}SX:U),J,0,0 -S:G$P2_6$0$0({1}SX:U),J,0,0 -S:G$P2_7$0$0({1}SX:U),J,0,0 -S:G$EX0$0$0({1}SX:U),J,0,0 -S:G$ET0$0$0({1}SX:U),J,0,0 -S:G$EX1$0$0({1}SX:U),J,0,0 -S:G$ET1$0$0({1}SX:U),J,0,0 -S:G$ES$0$0({1}SX:U),J,0,0 -S:G$EA$0$0({1}SX:U),J,0,0 -S:G$P3_0$0$0({1}SX:U),J,0,0 -S:G$P3_1$0$0({1}SX:U),J,0,0 -S:G$P3_2$0$0({1}SX:U),J,0,0 -S:G$P3_3$0$0({1}SX:U),J,0,0 -S:G$P3_4$0$0({1}SX:U),J,0,0 -S:G$P3_5$0$0({1}SX:U),J,0,0 -S:G$P3_6$0$0({1}SX:U),J,0,0 -S:G$P3_7$0$0({1}SX:U),J,0,0 -S:G$RXD$0$0({1}SX:U),J,0,0 -S:G$TXD$0$0({1}SX:U),J,0,0 -S:G$INT0$0$0({1}SX:U),J,0,0 -S:G$INT1$0$0({1}SX:U),J,0,0 -S:G$T0$0$0({1}SX:U),J,0,0 -S:G$T1$0$0({1}SX:U),J,0,0 -S:G$WR$0$0({1}SX:U),J,0,0 -S:G$RD$0$0({1}SX:U),J,0,0 -S:G$PX0$0$0({1}SX:U),J,0,0 -S:G$PT0$0$0({1}SX:U),J,0,0 -S:G$PX1$0$0({1}SX:U),J,0,0 -S:G$PT1$0$0({1}SX:U),J,0,0 -S:G$PS$0$0({1}SX:U),J,0,0 -S:G$P$0$0({1}SX:U),J,0,0 -S:G$F1$0$0({1}SX:U),J,0,0 -S:G$OV$0$0({1}SX:U),J,0,0 -S:G$RS0$0$0({1}SX:U),J,0,0 -S:G$RS1$0$0({1}SX:U),J,0,0 -S:G$F0$0$0({1}SX:U),J,0,0 -S:G$AC$0$0({1}SX:U),J,0,0 -S:G$CY$0$0({1}SX:U),J,0,0 -S:G$main$0$0({2}DF,SI:S),C,0,0 -S:Fkeypad_display$keypad$0$0({4}DA4,SC:S),D,0,0 -S:Fkeypad_display$display_0$0$0({4}DA4,SC:S),D,0,0 -S:Fkeypad_display$display_1$0$0({4}DA4,SC:S),D,0,0 -S:Fkeypad_display$display_2$0$0({4}DA4,SC:S),D,0,0 -S:Fkeypad_display$display_3$0$0({4}DA4,SC:S),D,0,0 diff --git a/demo/keypad_display.asm b/demo/keypad_display.asm deleted file mode 100644 index a216cbe..0000000 --- a/demo/keypad_display.asm +++ /dev/null @@ -1,624 +0,0 @@ -;-------------------------------------------------------- -; File Created by SDCC : free open source ANSI-C Compiler -; Version 2.9.0 #5416 (Oct 6 2009) (UNIX) -; This file was generated Tue Oct 27 23:03:55 2009 -;-------------------------------------------------------- - .module keypad_display - .optsdcc -mmcs51 --model-small - -;-------------------------------------------------------- -; Public variables in this module -;-------------------------------------------------------- - .globl _main - .globl _CY - .globl _AC - .globl _F0 - .globl _RS1 - .globl _RS0 - .globl _OV - .globl _F1 - .globl _P - .globl _PS - .globl _PT1 - .globl _PX1 - .globl _PT0 - .globl _PX0 - .globl _RD - .globl _WR - .globl _T1 - .globl _T0 - .globl _INT1 - .globl _INT0 - .globl _TXD - .globl _RXD - .globl _P3_7 - .globl _P3_6 - .globl _P3_5 - .globl _P3_4 - .globl _P3_3 - .globl _P3_2 - .globl _P3_1 - .globl _P3_0 - .globl _EA - .globl _ES - .globl _ET1 - .globl _EX1 - .globl _ET0 - .globl _EX0 - .globl _P2_7 - .globl _P2_6 - .globl _P2_5 - .globl _P2_4 - .globl _P2_3 - .globl _P2_2 - .globl _P2_1 - .globl _P2_0 - .globl _SM0 - .globl _SM1 - .globl _SM2 - .globl _REN - .globl _TB8 - .globl _RB8 - .globl _TI - .globl _RI - .globl _P1_7 - .globl _P1_6 - .globl _P1_5 - .globl _P1_4 - .globl _P1_3 - .globl _P1_2 - .globl _P1_1 - .globl _P1_0 - .globl _TF1 - .globl _TR1 - .globl _TF0 - .globl _TR0 - .globl _IE1 - .globl _IT1 - .globl _IE0 - .globl _IT0 - .globl _P0_7 - .globl _P0_6 - .globl _P0_5 - .globl _P0_4 - .globl _P0_3 - .globl _P0_2 - .globl _P0_1 - .globl _P0_0 - .globl _B - .globl _ACC - .globl _PSW - .globl _IP - .globl _P3 - .globl _IE - .globl _P2 - .globl _SBUF - .globl _SCON - .globl _P1 - .globl _TH1 - .globl _TH0 - .globl _TL1 - .globl _TL0 - .globl _TMOD - .globl _TCON - .globl _PCON - .globl _DPH - .globl _DPL - .globl _SP - .globl _P0 - .globl _row - .globl _state -;-------------------------------------------------------- -; special function registers -;-------------------------------------------------------- - .area RSEG (DATA) -G$P0$0$0 == 0x0080 -_P0 = 0x0080 -G$SP$0$0 == 0x0081 -_SP = 0x0081 -G$DPL$0$0 == 0x0082 -_DPL = 0x0082 -G$DPH$0$0 == 0x0083 -_DPH = 0x0083 -G$PCON$0$0 == 0x0087 -_PCON = 0x0087 -G$TCON$0$0 == 0x0088 -_TCON = 0x0088 -G$TMOD$0$0 == 0x0089 -_TMOD = 0x0089 -G$TL0$0$0 == 0x008a -_TL0 = 0x008a -G$TL1$0$0 == 0x008b -_TL1 = 0x008b -G$TH0$0$0 == 0x008c -_TH0 = 0x008c -G$TH1$0$0 == 0x008d -_TH1 = 0x008d -G$P1$0$0 == 0x0090 -_P1 = 0x0090 -G$SCON$0$0 == 0x0098 -_SCON = 0x0098 -G$SBUF$0$0 == 0x0099 -_SBUF = 0x0099 -G$P2$0$0 == 0x00a0 -_P2 = 0x00a0 -G$IE$0$0 == 0x00a8 -_IE = 0x00a8 -G$P3$0$0 == 0x00b0 -_P3 = 0x00b0 -G$IP$0$0 == 0x00b8 -_IP = 0x00b8 -G$PSW$0$0 == 0x00d0 -_PSW = 0x00d0 -G$ACC$0$0 == 0x00e0 -_ACC = 0x00e0 -G$B$0$0 == 0x00f0 -_B = 0x00f0 -;-------------------------------------------------------- -; special function bits -;-------------------------------------------------------- - .area RSEG (DATA) -G$P0_0$0$0 == 0x0080 -_P0_0 = 0x0080 -G$P0_1$0$0 == 0x0081 -_P0_1 = 0x0081 -G$P0_2$0$0 == 0x0082 -_P0_2 = 0x0082 -G$P0_3$0$0 == 0x0083 -_P0_3 = 0x0083 -G$P0_4$0$0 == 0x0084 -_P0_4 = 0x0084 -G$P0_5$0$0 == 0x0085 -_P0_5 = 0x0085 -G$P0_6$0$0 == 0x0086 -_P0_6 = 0x0086 -G$P0_7$0$0 == 0x0087 -_P0_7 = 0x0087 -G$IT0$0$0 == 0x0088 -_IT0 = 0x0088 -G$IE0$0$0 == 0x0089 -_IE0 = 0x0089 -G$IT1$0$0 == 0x008a -_IT1 = 0x008a -G$IE1$0$0 == 0x008b -_IE1 = 0x008b -G$TR0$0$0 == 0x008c -_TR0 = 0x008c -G$TF0$0$0 == 0x008d -_TF0 = 0x008d -G$TR1$0$0 == 0x008e -_TR1 = 0x008e -G$TF1$0$0 == 0x008f -_TF1 = 0x008f -G$P1_0$0$0 == 0x0090 -_P1_0 = 0x0090 -G$P1_1$0$0 == 0x0091 -_P1_1 = 0x0091 -G$P1_2$0$0 == 0x0092 -_P1_2 = 0x0092 -G$P1_3$0$0 == 0x0093 -_P1_3 = 0x0093 -G$P1_4$0$0 == 0x0094 -_P1_4 = 0x0094 -G$P1_5$0$0 == 0x0095 -_P1_5 = 0x0095 -G$P1_6$0$0 == 0x0096 -_P1_6 = 0x0096 -G$P1_7$0$0 == 0x0097 -_P1_7 = 0x0097 -G$RI$0$0 == 0x0098 -_RI = 0x0098 -G$TI$0$0 == 0x0099 -_TI = 0x0099 -G$RB8$0$0 == 0x009a -_RB8 = 0x009a -G$TB8$0$0 == 0x009b -_TB8 = 0x009b -G$REN$0$0 == 0x009c -_REN = 0x009c -G$SM2$0$0 == 0x009d -_SM2 = 0x009d -G$SM1$0$0 == 0x009e -_SM1 = 0x009e -G$SM0$0$0 == 0x009f -_SM0 = 0x009f -G$P2_0$0$0 == 0x00a0 -_P2_0 = 0x00a0 -G$P2_1$0$0 == 0x00a1 -_P2_1 = 0x00a1 -G$P2_2$0$0 == 0x00a2 -_P2_2 = 0x00a2 -G$P2_3$0$0 == 0x00a3 -_P2_3 = 0x00a3 -G$P2_4$0$0 == 0x00a4 -_P2_4 = 0x00a4 -G$P2_5$0$0 == 0x00a5 -_P2_5 = 0x00a5 -G$P2_6$0$0 == 0x00a6 -_P2_6 = 0x00a6 -G$P2_7$0$0 == 0x00a7 -_P2_7 = 0x00a7 -G$EX0$0$0 == 0x00a8 -_EX0 = 0x00a8 -G$ET0$0$0 == 0x00a9 -_ET0 = 0x00a9 -G$EX1$0$0 == 0x00aa -_EX1 = 0x00aa -G$ET1$0$0 == 0x00ab -_ET1 = 0x00ab -G$ES$0$0 == 0x00ac -_ES = 0x00ac -G$EA$0$0 == 0x00af -_EA = 0x00af -G$P3_0$0$0 == 0x00b0 -_P3_0 = 0x00b0 -G$P3_1$0$0 == 0x00b1 -_P3_1 = 0x00b1 -G$P3_2$0$0 == 0x00b2 -_P3_2 = 0x00b2 -G$P3_3$0$0 == 0x00b3 -_P3_3 = 0x00b3 -G$P3_4$0$0 == 0x00b4 -_P3_4 = 0x00b4 -G$P3_5$0$0 == 0x00b5 -_P3_5 = 0x00b5 -G$P3_6$0$0 == 0x00b6 -_P3_6 = 0x00b6 -G$P3_7$0$0 == 0x00b7 -_P3_7 = 0x00b7 -G$RXD$0$0 == 0x00b0 -_RXD = 0x00b0 -G$TXD$0$0 == 0x00b1 -_TXD = 0x00b1 -G$INT0$0$0 == 0x00b2 -_INT0 = 0x00b2 -G$INT1$0$0 == 0x00b3 -_INT1 = 0x00b3 -G$T0$0$0 == 0x00b4 -_T0 = 0x00b4 -G$T1$0$0 == 0x00b5 -_T1 = 0x00b5 -G$WR$0$0 == 0x00b6 -_WR = 0x00b6 -G$RD$0$0 == 0x00b7 -_RD = 0x00b7 -G$PX0$0$0 == 0x00b8 -_PX0 = 0x00b8 -G$PT0$0$0 == 0x00b9 -_PT0 = 0x00b9 -G$PX1$0$0 == 0x00ba -_PX1 = 0x00ba -G$PT1$0$0 == 0x00bb -_PT1 = 0x00bb -G$PS$0$0 == 0x00bc -_PS = 0x00bc -G$P$0$0 == 0x00d0 -_P = 0x00d0 -G$F1$0$0 == 0x00d1 -_F1 = 0x00d1 -G$OV$0$0 == 0x00d2 -_OV = 0x00d2 -G$RS0$0$0 == 0x00d3 -_RS0 = 0x00d3 -G$RS1$0$0 == 0x00d4 -_RS1 = 0x00d4 -G$F0$0$0 == 0x00d5 -_F0 = 0x00d5 -G$AC$0$0 == 0x00d6 -_AC = 0x00d6 -G$CY$0$0 == 0x00d7 -_CY = 0x00d7 -;-------------------------------------------------------- -; overlayable register banks -;-------------------------------------------------------- - .area REG_BANK_0 (REL,OVR,DATA) - .ds 8 -;-------------------------------------------------------- -; internal ram data -;-------------------------------------------------------- - .area DSEG (DATA) -G$state$0$0==. -_state:: - .ds 1 -G$row$0$0==. -_row:: - .ds 2 -;-------------------------------------------------------- -; overlayable items in internal ram -;-------------------------------------------------------- - .area OSEG (OVR,DATA) -;-------------------------------------------------------- -; Stack segment in internal ram -;-------------------------------------------------------- - .area SSEG (DATA) -__start__stack: - .ds 1 - -;-------------------------------------------------------- -; indirectly addressable internal ram data -;-------------------------------------------------------- - .area ISEG (DATA) -;-------------------------------------------------------- -; absolute internal ram data -;-------------------------------------------------------- - .area IABS (ABS,DATA) - .area IABS (ABS,DATA) -;-------------------------------------------------------- -; bit data -;-------------------------------------------------------- - .area BSEG (BIT) -;-------------------------------------------------------- -; paged external ram data -;-------------------------------------------------------- - .area PSEG (PAG,XDATA) -;-------------------------------------------------------- -; external ram data -;-------------------------------------------------------- - .area XSEG (XDATA) -;-------------------------------------------------------- -; absolute external ram data -;-------------------------------------------------------- - .area XABS (ABS,XDATA) -;-------------------------------------------------------- -; external initialized ram data -;-------------------------------------------------------- - .area XISEG (XDATA) - .area HOME (CODE) - .area GSINIT0 (CODE) - .area GSINIT1 (CODE) - .area GSINIT2 (CODE) - .area GSINIT3 (CODE) - .area GSINIT4 (CODE) - .area GSINIT5 (CODE) - .area GSINIT (CODE) - .area GSFINAL (CODE) - .area CSEG (CODE) -;-------------------------------------------------------- -; interrupt vector -;-------------------------------------------------------- - .area HOME (CODE) -__interrupt_vect: - ljmp __sdcc_gsinit_startup -;-------------------------------------------------------- -; global & static initialisations -;-------------------------------------------------------- - .area HOME (CODE) - .area GSINIT (CODE) - .area GSFINAL (CODE) - .area GSINIT (CODE) - .globl __sdcc_gsinit_startup - .globl __sdcc_program_startup - .globl __start__stack - .globl __mcs51_genXINIT - .globl __mcs51_genXRAMCLEAR - .globl __mcs51_genRAMCLEAR - .area GSFINAL (CODE) - ljmp __sdcc_program_startup -;-------------------------------------------------------- -; Home -;-------------------------------------------------------- - .area HOME (CODE) - .area HOME (CODE) -__sdcc_program_startup: - lcall _main -; return from main will lock up - sjmp . -;-------------------------------------------------------- -; code -;-------------------------------------------------------- - .area CSEG (CODE) -;------------------------------------------------------------ -;Allocation info for local variables in function 'main' -;------------------------------------------------------------ -;------------------------------------------------------------ - G$main$0$0 ==. - C$keypad_display.c$38$0$0 ==. -; keypad_display.c:38: int main() -; ----------------------------------------- -; function main -; ----------------------------------------- -_main: - ar2 = 0x02 - ar3 = 0x03 - ar4 = 0x04 - ar5 = 0x05 - ar6 = 0x06 - ar7 = 0x07 - ar0 = 0x00 - ar1 = 0x01 - C$keypad_display.c$40$1$1 ==. -; keypad_display.c:40: while(1) { -00123$: - C$keypad_display.c$41$2$2 ==. -; keypad_display.c:41: for(row=0; row<4; row++) { - clr a - mov _row,a - mov (_row + 1),a -00118$: - clr c - mov a,_row - subb a,#0x04 - mov a,(_row + 1) - xrl a,#0x80 - subb a,#0x80 - jnc 00123$ - C$keypad_display.c$42$3$3 ==. -; keypad_display.c:42: P1=keypad[row]; - mov a,_row - add a,#_keypad - mov dpl,a - mov a,(_row + 1) - addc a,#(_keypad >> 8) - mov dph,a - clr a - movc a,@a+dptr - mov _P1,a - C$keypad_display.c$48$3$3 ==. -; keypad_display.c:48: _endasm; - - mov _state, P1 - - C$keypad_display.c$53$3$3 ==. -; keypad_display.c:53: state&=0x0f; - anl _state,#0x0F - C$keypad_display.c$54$3$3 ==. -; keypad_display.c:54: state^=0x0f; - xrl _state,#0x0F - C$keypad_display.c$56$3$3 ==. -; keypad_display.c:56: if(state & 1) { - mov a,_state - jnb acc.0,00111$ - C$keypad_display.c$57$4$4 ==. -; keypad_display.c:57: state=0; - mov _state,#0x00 - sjmp 00112$ -00111$: - C$keypad_display.c$58$3$3 ==. -; keypad_display.c:58: } else if(state & 2) { - mov a,_state - jnb acc.1,00108$ - C$keypad_display.c$59$4$5 ==. -; keypad_display.c:59: state=1; - mov _state,#0x01 - sjmp 00112$ -00108$: - C$keypad_display.c$60$3$3 ==. -; keypad_display.c:60: } else if(state & 4) { - mov a,_state - jnb acc.2,00105$ - C$keypad_display.c$61$4$6 ==. -; keypad_display.c:61: state=2; - mov _state,#0x02 - sjmp 00112$ -00105$: - C$keypad_display.c$62$3$3 ==. -; keypad_display.c:62: } else if(state & 8) { - mov a,_state - jb acc.3,00142$ - ljmp 00120$ -00142$: - C$keypad_display.c$63$4$7 ==. -; keypad_display.c:63: state=3; - mov _state,#0x03 - C$keypad_display.c$65$3$3 ==. -; keypad_display.c:65: continue; -00112$: - C$keypad_display.c$68$3$3 ==. -; keypad_display.c:68: switch(row) { - clr a - cjne a,_row,00143$ - clr a - cjne a,(_row + 1),00143$ - sjmp 00113$ -00143$: - mov a,#0x01 - cjne a,_row,00144$ - clr a - cjne a,(_row + 1),00144$ - sjmp 00114$ -00144$: - mov a,#0x02 - cjne a,_row,00145$ - clr a - cjne a,(_row + 1),00145$ - sjmp 00115$ -00145$: - mov a,#0x03 - cjne a,_row,00146$ - clr a - cjne a,(_row + 1),00146$ - sjmp 00116$ -00146$: - C$keypad_display.c$69$4$9 ==. -; keypad_display.c:69: case 0: - sjmp 00120$ -00113$: - C$keypad_display.c$70$4$9 ==. -; keypad_display.c:70: P3=display_0[state]; - mov a,_state - mov dptr,#_display_0 - movc a,@a+dptr - mov _P3,a - C$keypad_display.c$71$4$9 ==. -; keypad_display.c:71: break; - C$keypad_display.c$72$4$9 ==. -; keypad_display.c:72: case 1: - sjmp 00120$ -00114$: - C$keypad_display.c$73$4$9 ==. -; keypad_display.c:73: P3=display_1[state]; - mov a,_state - mov dptr,#_display_1 - movc a,@a+dptr - mov _P3,a - C$keypad_display.c$74$4$9 ==. -; keypad_display.c:74: break; - C$keypad_display.c$75$4$9 ==. -; keypad_display.c:75: case 2: - sjmp 00120$ -00115$: - C$keypad_display.c$76$4$9 ==. -; keypad_display.c:76: P3=display_2[state]; - mov a,_state - mov dptr,#_display_2 - movc a,@a+dptr - mov _P3,a - C$keypad_display.c$77$4$9 ==. -; keypad_display.c:77: break; - C$keypad_display.c$78$4$9 ==. -; keypad_display.c:78: case 3: - sjmp 00120$ -00116$: - C$keypad_display.c$79$4$9 ==. -; keypad_display.c:79: P3=display_3[state]; - mov a,_state - mov dptr,#_display_3 - movc a,@a+dptr - mov _P3,a - C$keypad_display.c$81$2$2 ==. -; keypad_display.c:81: } -00120$: - C$keypad_display.c$41$2$2 ==. -; keypad_display.c:41: for(row=0; row<4; row++) { - inc _row - clr a - cjne a,_row,00147$ - inc (_row + 1) -00147$: - C$keypad_display.c$84$1$1 ==. - XG$main$0$0 ==. - ljmp 00118$ - .area CSEG (CODE) - .area CONST (CODE) -Fkeypad_display$keypad$0$0 == . -_keypad: - .db #0xEF - .db #0xDF - .db #0xBF - .db #0x7F -Fkeypad_display$display_0$0$0 == . -_display_0: - .db #0xF9 - .db #0x64 - .db #0x70 - .db #0x48 -Fkeypad_display$display_1$0$0 == . -_display_1: - .db #0x59 - .db #0x52 - .db #0x42 - .db #0x40 -Fkeypad_display$display_2$0$0 == . -_display_2: - .db #0xF8 - .db #0x40 - .db #0x50 - .db #0xC6 -Fkeypad_display$display_3$0$0 == . -_display_3: - .db #0x79 - .db #0xC0 - .db #0x49 - .db #0xC0 - .area XINIT (CODE) - .area CABS (ABS,CODE) diff --git a/demo/keypad_display.c b/demo/keypad_display.c index e6cadf6..0601a74 100644 --- a/demo/keypad_display.c +++ b/demo/keypad_display.c @@ -8,7 +8,7 @@ * * Notes: * F9 - stop simulation - * F2 - shutdown simulator + * F2 - shut down simulator * * @file keypad_display.c */ diff --git a/demo/keypad_display.hashes b/demo/keypad_display.hashes index 55868bd..260da7a 100644 --- a/demo/keypad_display.hashes +++ b/demo/keypad_display.hashes @@ -1 +1 @@ -E44E4DC2094E8EB729FE653002B40A33 "keypad_display.c" +250BC76DCCF444C4F982EB733E057F5E "keypad_display.c" diff --git a/demo/keypad_display.hex b/demo/keypad_display.hex deleted file mode 100644 index b62bfae..0000000 --- a/demo/keypad_display.hex +++ /dev/null @@ -1,49 +0,0 @@ -:03000000020008F3 -:0300610002000397 -:0500030012006480FE04 -:05006400E4F509F50AB6 -:0A006900C3E5099404E50A648094DD -:0A0073008050EEE509241AF582E53D -:0A007D000A3401F583E493F5908541 -:06008700900853080F630E -:08008D00080FE50830E00575DD -:040095000800801FC0 -:0A009900E50830E105750801801547 -:0A00A300E50830E205750802800B45 -:0800AD00E50820E30302010B4A -:0300B500750803C8 -:0A00B800E4B50906E4B50A0280234E -:0A00C2007401B50906E4B50A0280D6 -:0100CC002211 -:0A00CD007402B50906E4B50A0280CA -:0100D7002107 -:0A00D8007403B50906E4B50A0280BE -:0100E20020FD -:0200E300802675 -:0A00E500E50890011E93F5B0801CA1 -:0A00EF00E50890012293F5B080129D -:0A00F900E50890012693F5B0800899 -:08010300E50890012A93F5B014 -:07010B000509E4B509020536 -:010112000AE2 -:030113000200697E -:04011A00EFDFBF7FD5 -:04011E00F9647048C8 -:0401220059524240AC -:04012600F84050C687 -:04012A0079C049C08F -:06003700E478FFF6D8FD9D -:080015007900E94400601B7A48 -:05001D000090012E78A7 -:030022000075A0C6 -:0A00250000E493F2A308B8000205FE -:08002F00A0D9F4DAF275A0FF7C -:08003D007800E84400600A7934 -:030045000075A0A3 -:0600480000E4F309D8FCFE -:08004E007800E84400600C7921 -:0B00560000900000E4F0A3D8FCD9FAF1 -:0300080075810AF5 -:0A000B00120116E5826003020003F3 -:0401160075820022CC -:00000001FF diff --git a/demo/keypad_display.lnk b/demo/keypad_display.lnk deleted file mode 100644 index 9287b22..0000000 --- a/demo/keypad_display.lnk +++ /dev/null @@ -1,19 +0,0 @@ --myuxi --Y --a 0x0100 --v 0x0000 --w 0x0800 --z --b HOME = 0x0000 --b ISEG = 0x0000 --b BSEG = 0x0000 --k /usr/libexec/sdcc/../share/sdcc/lib/small --k /usr/share/sdcc/lib/small --l mcs51 --l libsdcc --l libint --l liblong --l libfloat -keypad_display.rel - --e diff --git a/demo/keypad_display.lst b/demo/keypad_display.lst index 439d5d9..82a9049 100644 --- a/demo/keypad_display.lst +++ b/demo/keypad_display.lst @@ -1,7 +1,7 @@ 1 ;-------------------------------------------------------- 2 ; File Created by SDCC : free open source ANSI-C Compiler - 3 ; Version 2.9.0 #5416 (Oct 6 2009) (UNIX) - 4 ; This file was generated Tue Oct 27 23:03:55 2009 + 3 ; Version 2.9.0 #5416 (Feb 3 2010) (UNIX) + 4 ; This file was generated Sun Dec 16 06:02:14 2012 5 ;-------------------------------------------------------- 6 .module keypad_display 7 .optsdcc -mmcs51 --model-small diff --git a/demo/keypad_display.map b/demo/keypad_display.map deleted file mode 100644 index 276738d..0000000 --- a/demo/keypad_display.map +++ /dev/null @@ -1,536 +0,0 @@ - -Hexadecimal - -Area Addr Size Decimal Bytes (Attributes) --------------------------------- ---- ---- ------- ----- ------------ -CABS 0000 0000 = 0. bytes (ABS,CON,CODE) - - Value Global - -------- -------------------------------- - 0C:FFFFFF00 s_BSEG - 0C:0000 l_BIT_BANK - 0C:0000 l_BSEG - 0C:0000 l_BSEG_BYTES - 0C:0000 l_CABS - 0C:0000 l_GSINIT - 0C:0000 l_GSINIT1 - 0C:0000 l_GSINIT5 - 0C:0000 l_IABS - 0C:0000 l_ISEG - 0C:0000 l_OSEG - 0C:0000 l_PSEG - 0C:0000 l_REG_BANK_1 - 0C:0000 l_REG_BANK_2 - 0C:0000 l_REG_BANK_3 - 0C:0000 l_RSEG - 0C:0000 l_XABS - 0C:0000 l_XINIT - 0C:0000 l_XISEG - 0C:0000 l_XSEG - 0C:0000 l__CODE - 0C:0000 s_BSEG_BYTES - 0C:0000 s_CABS - 0C:0000 s_DSEG - 0C:0000 s_HOME - 0C:0000 s_IABS - 0C:0000 s_ISEG - 0C:0000 s_PSEG - 0C:0000 s_REG_BANK_0 - 0C:0000 s_XABS - 0C:0000 s_XISEG - 0C:0000 s_XSEG - 0C:0003 l_GSFINAL - 0C:0003 l_GSINIT0 - 0C:0008 l_HOME - 0C:0008 l_REG_BANK_0 - 0C:0008 s_GSINIT0 - 0C:0008 s_REG_BANK_1 - 0C:000A l_GSINIT2 - 0C:000B s_GSINIT1 - 0C:000B s_GSINIT2 - 0C:000B s_RSEG - 0C:000B s_SSEG - 0C:0010 s_REG_BANK_2 - 0C:0014 l_CONST - 0C:0015 s_GSINIT3 - 0C:0018 s_BIT_BANK - 0C:0018 s_OSEG - 0C:0018 s_REG_BANK_3 - 0C:0020 s__CODE - 0C:0022 l_GSINIT3 - 0C:002A l_GSINIT4 - 0C:0037 s_GSINIT4 - 0C:0061 s_GSFINAL - 0C:0061 s_GSINIT - 0C:0061 s_GSINIT5 - 0C:0064 s_CSEG - 0C:0080 l_DSEG - 0C:00B6 l_CSEG - 0C:00F5 l_SSEG - 0C:0100 l_IRAM - 0C:011A s_CONST - 0C:012E s_XINIT - - - -Hexadecimal - -Area Addr Size Decimal Bytes (Attributes) --------------------------------- ---- ---- ------- ----- ------------ -. .ABS. 0000 0000 = 0. bytes (ABS,CON) - - Value Global - -------- -------------------------------- - 0080 G$P0$0$0 - 0080 G$P0_0$0$0 - 0080 _P0 - 0080 _P0_0 - 0081 G$P0_1$0$0 - 0081 G$SP$0$0 - 0081 _P0_1 - 0081 _SP - 0082 G$DPL$0$0 - 0082 G$P0_2$0$0 - 0082 _DPL - 0082 _P0_2 - 0083 G$DPH$0$0 - 0083 G$P0_3$0$0 - 0083 _DPH - 0083 _P0_3 - 0084 G$P0_4$0$0 - 0084 _P0_4 - 0085 G$P0_5$0$0 - 0085 _P0_5 - 0086 G$P0_6$0$0 - 0086 _P0_6 - 0087 G$P0_7$0$0 - 0087 G$PCON$0$0 - 0087 _P0_7 - 0087 _PCON - 0088 G$IT0$0$0 - 0088 G$TCON$0$0 - 0088 _IT0 - 0088 _TCON - 0089 G$IE0$0$0 - 0089 G$TMOD$0$0 - 0089 _IE0 - 0089 _TMOD - 008A G$IT1$0$0 - 008A G$TL0$0$0 - 008A _IT1 - 008A _TL0 - 008B G$IE1$0$0 - 008B G$TL1$0$0 - 008B _IE1 - 008B _TL1 - 008C G$TH0$0$0 - 008C G$TR0$0$0 - 008C _TH0 - 008C _TR0 - 008D G$TF0$0$0 - 008D G$TH1$0$0 - 008D _TF0 - 008D _TH1 - 008E G$TR1$0$0 - 008E _TR1 - 008F G$TF1$0$0 - 008F _TF1 - 0090 G$P1$0$0 - 0090 G$P1_0$0$0 - 0090 _P1 - 0090 _P1_0 - 0091 G$P1_1$0$0 - 0091 _P1_1 - 0092 G$P1_2$0$0 - 0092 _P1_2 - 0093 G$P1_3$0$0 - 0093 _P1_3 - 0094 G$P1_4$0$0 - 0094 _P1_4 - 0095 G$P1_5$0$0 - 0095 _P1_5 - 0096 G$P1_6$0$0 - 0096 _P1_6 - 0097 G$P1_7$0$0 - 0097 _P1_7 - 0098 G$RI$0$0 - 0098 G$SCON$0$0 - 0098 _RI - 0098 _SCON - 0099 G$SBUF$0$0 - 0099 G$TI$0$0 - 0099 _SBUF - 0099 _TI - 009A G$RB8$0$0 - 009A _RB8 - 009B G$TB8$0$0 - 009B _TB8 - 009C G$REN$0$0 - 009C _REN - 009D G$SM2$0$0 - 009D _SM2 - 009E G$SM1$0$0 - 009E _SM1 - 009F G$SM0$0$0 - 009F _SM0 - 00A0 G$P2$0$0 - 00A0 G$P2_0$0$0 - 00A0 _P2 - 00A0 _P2_0 - 00A0 __XPAGE - 00A1 G$P2_1$0$0 - 00A1 _P2_1 - 00A2 G$P2_2$0$0 - 00A2 _P2_2 - 00A3 G$P2_3$0$0 - 00A3 _P2_3 - 00A4 G$P2_4$0$0 - 00A4 _P2_4 - 00A5 G$P2_5$0$0 - 00A5 _P2_5 - 00A6 G$P2_6$0$0 - 00A6 _P2_6 - 00A7 G$P2_7$0$0 - 00A7 _P2_7 - 00A8 G$EX0$0$0 - 00A8 G$IE$0$0 - 00A8 _EX0 - 00A8 _IE - 00A9 G$ET0$0$0 - 00A9 _ET0 - 00AA G$EX1$0$0 - 00AA _EX1 - 00AB G$ET1$0$0 - 00AB _ET1 - 00AC G$ES$0$0 - 00AC _ES - 00AF G$EA$0$0 - 00AF _EA - 00B0 G$P3$0$0 - 00B0 G$P3_0$0$0 - 00B0 G$RXD$0$0 - 00B0 _P3 - 00B0 _P3_0 - 00B0 _RXD - 00B1 G$P3_1$0$0 - 00B1 G$TXD$0$0 - 00B1 _P3_1 - 00B1 _TXD - 00B2 G$INT0$0$0 - 00B2 G$P3_2$0$0 - 00B2 _INT0 - 00B2 _P3_2 - 00B3 G$INT1$0$0 - 00B3 G$P3_3$0$0 - 00B3 _INT1 - 00B3 _P3_3 - 00B4 G$P3_4$0$0 - 00B4 G$T0$0$0 - 00B4 _P3_4 - 00B4 _T0 - 00B5 G$P3_5$0$0 - 00B5 G$T1$0$0 - 00B5 _P3_5 - 00B5 _T1 - 00B6 G$P3_6$0$0 - 00B6 G$WR$0$0 - 00B6 _P3_6 - 00B6 _WR - 00B7 G$P3_7$0$0 - 00B7 G$RD$0$0 - 00B7 _P3_7 - 00B7 _RD - 00B8 G$IP$0$0 - 00B8 G$PX0$0$0 - 00B8 _IP - 00B8 _PX0 - 00B9 G$PT0$0$0 - 00B9 _PT0 - 00BA G$PX1$0$0 - 00BA _PX1 - 00BB G$PT1$0$0 - 00BB _PT1 - 00BC G$PS$0$0 - 00BC _PS - 00D0 G$P$0$0 - 00D0 G$PSW$0$0 - 00D0 _P - 00D0 _PSW - 00D1 G$F1$0$0 - 00D1 _F1 - 00D2 G$OV$0$0 - 00D2 _OV - 00D3 G$RS0$0$0 - 00D3 _RS0 - 00D4 G$RS1$0$0 - 00D4 _RS1 - 00D5 G$F0$0$0 - 00D5 _F0 - 00D6 G$AC$0$0 - 00D6 _AC - 00D7 G$CY$0$0 - 00D7 _CY - 00E0 G$ACC$0$0 - 00E0 _ACC - 00F0 G$B$0$0 - 00F0 _B - - - - - - - - - -Hexadecimal - -Area Addr Size Decimal Bytes (Attributes) --------------------------------- ---- ---- ------- ----- ------------ -DSEG 0000 0080 = 128. bytes (REL,CON) - - Value Global - -------- -------------------------------- - 0008 G$state$0$0 - 0008 _state - 0009 G$row$0$0 - 0009 _row - - - -Hexadecimal - -Area Addr Size Decimal Bytes (Attributes) --------------------------------- ---- ---- ------- ----- ------------ -SSEG 000B 00F5 = 245. bytes (REL,OVR) - - Value Global - -------- -------------------------------- - 000B __start__stack - - - - - -Hexadecimal - -Area Addr Size Decimal Bytes (Attributes) --------------------------------- ---- ---- ------- ----- ------------ -HOME 0000 0008 = 8. bytes (REL,CON,CODE) - - Value Global - -------- -------------------------------- - 0C:0000 A$keypad_display$381 - 0C:0003 A$keypad_display$403 - 0C:0003 __sdcc_program_startup - 0C:0006 A$keypad_display$405 - -Hexadecimal - -Area Addr Size Decimal Bytes (Attributes) --------------------------------- ---- ---- ------- ----- ------------ -GSINIT0 0008 0003 = 3. bytes (REL,CON,CODE) - - Value Global - -------- -------------------------------- - 0C:0008 __sdcc_gsinit_startup - - - -Hexadecimal - -Area Addr Size Decimal Bytes (Attributes) --------------------------------- ---- ---- ------- ----- ------------ -GSINIT3 0015 0022 = 34. bytes (REL,CON,CODE) - - Value Global - -------- -------------------------------- - 0C:0015 __mcs51_genXINIT - -Hexadecimal - -Area Addr Size Decimal Bytes (Attributes) --------------------------------- ---- ---- ------- ----- ------------ -GSINIT4 0037 002A = 42. bytes (REL,CON,CODE) - - Value Global - -------- -------------------------------- - 0C:0037 __mcs51_genRAMCLEAR - 0C:003D __mcs51_genXRAMCLEAR - - - -Hexadecimal - -Area Addr Size Decimal Bytes (Attributes) --------------------------------- ---- ---- ------- ----- ------------ -GSFINAL 0061 0003 = 3. bytes (REL,CON,CODE) - - Value Global - -------- -------------------------------- - 0C:0061 A$keypad_display$396 - -Hexadecimal - -Area Addr Size Decimal Bytes (Attributes) --------------------------------- ---- ---- ------- ----- ------------ -CSEG 0064 00B6 = 182. bytes (REL,CON,CODE) - - Value Global - -------- -------------------------------- - 0C:0064 A$keypad_display$434 - 0C:0064 C$keypad_display.c$38$0$0 - 0C:0064 C$keypad_display.c$40$1$1 - 0C:0064 G$main$0$0 - 0C:0064 _main - 0C:0065 A$keypad_display$435 - 0C:0067 A$keypad_display$436 - 0C:0069 A$keypad_display$438 - 0C:006A A$keypad_display$439 - 0C:006C A$keypad_display$440 - 0C:006E A$keypad_display$441 - 0C:0070 A$keypad_display$442 - 0C:0072 A$keypad_display$443 - 0C:0074 A$keypad_display$444 - 0C:0076 A$keypad_display$447 - 0C:0076 C$keypad_display.c$42$3$3 - 0C:0078 A$keypad_display$448 - 0C:007A A$keypad_display$449 - 0C:007C A$keypad_display$450 - 0C:007E A$keypad_display$451 - 0C:0080 A$keypad_display$452 - 0C:0082 A$keypad_display$453 - 0C:0083 A$keypad_display$454 - 0C:0084 A$keypad_display$455 - 0C:0086 A$keypad_display$459 - 0C:0086 C$keypad_display.c$48$3$3 - 0C:0089 A$keypad_display$463 - 0C:0089 C$keypad_display.c$53$3$3 - 0C:008C A$keypad_display$466 - 0C:008C C$keypad_display.c$54$3$3 - 0C:008F A$keypad_display$469 - 0C:008F C$keypad_display.c$56$3$3 - 0C:0091 A$keypad_display$470 - 0C:0094 A$keypad_display$473 - 0C:0094 C$keypad_display.c$57$4$4 - 0C:0097 A$keypad_display$474 - 0C:0099 A$keypad_display$478 - 0C:0099 C$keypad_display.c$58$3$3 - 0C:009B A$keypad_display$479 - 0C:009E A$keypad_display$482 - 0C:009E C$keypad_display.c$59$4$5 - 0C:00A1 A$keypad_display$483 - 0C:00A3 A$keypad_display$487 - 0C:00A3 C$keypad_display.c$60$3$3 - 0C:00A5 A$keypad_display$488 - 0C:00A8 A$keypad_display$491 - 0C:00A8 C$keypad_display.c$61$4$6 - 0C:00AB A$keypad_display$492 - 0C:00AD A$keypad_display$496 - 0C:00AD C$keypad_display.c$62$3$3 - 0C:00AF A$keypad_display$497 - 0C:00B2 A$keypad_display$498 - 0C:00B5 A$keypad_display$502 - 0C:00B5 C$keypad_display.c$63$4$7 - 0C:00B8 A$keypad_display$508 - 0C:00B8 C$keypad_display.c$65$3$3 - 0C:00B8 C$keypad_display.c$68$3$3 - 0C:00B9 A$keypad_display$509 - 0C:00BC A$keypad_display$510 - 0C:00BD A$keypad_display$511 - 0C:00C0 A$keypad_display$512 - 0C:00C2 A$keypad_display$514 - 0C:00C4 A$keypad_display$515 - 0C:00C7 A$keypad_display$516 - 0C:00C8 A$keypad_display$517 - 0C:00CB A$keypad_display$518 - 0C:00CD A$keypad_display$520 - 0C:00CF A$keypad_display$521 - 0C:00D2 A$keypad_display$522 - 0C:00D3 A$keypad_display$523 - 0C:00D6 A$keypad_display$524 - 0C:00D8 A$keypad_display$526 - 0C:00DA A$keypad_display$527 - 0C:00DD A$keypad_display$528 - 0C:00DE A$keypad_display$529 - 0C:00E1 A$keypad_display$530 - 0C:00E3 A$keypad_display$534 - 0C:00E3 C$keypad_display.c$69$4$9 - 0C:00E5 A$keypad_display$538 - 0C:00E5 C$keypad_display.c$70$4$9 - 0C:00E7 A$keypad_display$539 - 0C:00EA A$keypad_display$540 - 0C:00EB A$keypad_display$541 - 0C:00ED A$keypad_display$546 - 0C:00ED C$keypad_display.c$71$4$9 - 0C:00ED C$keypad_display.c$72$4$9 - 0C:00EF A$keypad_display$550 - 0C:00EF C$keypad_display.c$73$4$9 - 0C:00F1 A$keypad_display$551 - 0C:00F4 A$keypad_display$552 - 0C:00F5 A$keypad_display$553 - 0C:00F7 A$keypad_display$558 - 0C:00F7 C$keypad_display.c$74$4$9 - 0C:00F7 C$keypad_display.c$75$4$9 - 0C:00F9 A$keypad_display$562 - 0C:00F9 C$keypad_display.c$76$4$9 - 0C:00FB A$keypad_display$563 - 0C:00FE A$keypad_display$564 - 0C:00FF A$keypad_display$565 - 0C:0101 A$keypad_display$570 - 0C:0101 C$keypad_display.c$77$4$9 - 0C:0101 C$keypad_display.c$78$4$9 - 0C:0103 A$keypad_display$574 - 0C:0103 C$keypad_display.c$79$4$9 - 0C:0105 A$keypad_display$575 - 0C:0108 A$keypad_display$576 - 0C:0109 A$keypad_display$577 - 0C:010B A$keypad_display$583 - 0C:010B C$keypad_display.c$41$2$2 - 0C:010B C$keypad_display.c$81$2$2 - 0C:010D A$keypad_display$584 - 0C:010E A$keypad_display$585 - 0C:0111 A$keypad_display$586 - 0C:0113 A$keypad_display$590 - 0C:0113 C$keypad_display.c$84$1$1 - 0C:0113 XG$main$0$0 - 0C:0116 __sdcc_external_startup - -Hexadecimal - -Area Addr Size Decimal Bytes (Attributes) --------------------------------- ---- ---- ------- ----- ------------ -CONST 011A 0014 = 20. bytes (REL,CON,CODE) - - Value Global - -------- -------------------------------- - 0C:011A Fkeypad_display$keypad$0$0 - 0C:011E Fkeypad_display$display_0$0$0 - 0C:0122 Fkeypad_display$display_1$0$0 - 0C:0126 Fkeypad_display$display_2$0$0 - 0C:012A Fkeypad_display$display_3$0$0 - -ASxxxx Linker V01.75 + NoICE + SDCC Feb 1999, page 1. - -Files Linked [ module(s) ] - -keypad_display.rel - -Libraries Linked [ object file ] - -/usr/share/sdcc/lib/small/mcs51.lib [ crtclear.rel ] -/usr/share/sdcc/lib/small/mcs51.lib [ crtxinit.rel ] -/usr/share/sdcc/lib/small/mcs51.lib [ crtxclear.rel ] -/usr/share/sdcc/lib/small/mcs51.lib [ crtpagesfr.rel ] -/usr/share/sdcc/lib/small/mcs51.lib [ crtstart.rel ] -/usr/share/sdcc/lib/small/libsdcc.lib [ _startup.rel ] - -ASxxxx Linker V01.75 + NoICE + SDCC Feb 1999, page 2. - -User Base Address Definitions - -HOME = 0x0000 -ISEG = 0x0000 -BSEG = 0x0000 - -
\ No newline at end of file diff --git a/demo/keypad_display.mem b/demo/keypad_display.mem deleted file mode 100644 index a205eff..0000000 --- a/demo/keypad_display.mem +++ /dev/null @@ -1,28 +0,0 @@ -Internal RAM layout: - 0 1 2 3 4 5 6 7 8 9 A B C D E F -0x00:|0|0|0|0|0|0|0|0|a|a|a|S|S|S|S|S| -0x10:|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S| -0x20:|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S| -0x30:|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S| -0x40:|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S| -0x50:|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S| -0x60:|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S| -0x70:|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S| -0x80:|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S| -0x90:|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S| -0xa0:|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S| -0xb0:|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S| -0xc0:|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S| -0xd0:|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S| -0xe0:|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S| -0xf0:|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S| -0-3:Reg Banks, T:Bit regs, a-z:Data, B:Bits, Q:Overlay, I:iData, S:Stack, A:Absolute - -Stack starts at: 0x0b (sp set to 0x0a) with 245 bytes available. - -Other memory: - Name Start End Size Max - ---------------- -------- -------- -------- -------- - PAGED EXT. RAM 0 0 - EXTERNAL RAM 0 0 - ROM/EPROM/FLASH 0x0000 0x012d 302 2048 diff --git a/demo/keypad_display.rel b/demo/keypad_display.rel deleted file mode 100644 index c4d3129..0000000 --- a/demo/keypad_display.rel +++ /dev/null @@ -1,490 +0,0 @@ -;!FILE keypad_display.asm -XH -H 1A areas 147 global symbols -M keypad_display -O -mmcs51 --model-small -S G$EX0$0$0 Def00A8 -S G$IT0$0$0 Def0088 -S G$TH1$0$0 Def008D -S _P1 Def0090 -S G$RXD$0$0 Def00B0 -S G$EX1$0$0 Def00AA -S G$TB8$0$0 Def009B -S G$IT1$0$0 Def008A -S G$IE$0$0 Def00A8 -S _P2 Def00A0 -S _B Def00F0 -S _SP Def0081 -S _P3 Def00B0 -S _PS Def00BC -S G$TXD$0$0 Def00B1 -S G$SM0$0$0 Def009F -S G$TL0$0$0 Def008A -S _T0 Def00B4 -S G$SM1$0$0 Def009E -S G$TL1$0$0 Def008B -S _T1 Def00B5 -S _OV Def00D2 -S G$SM2$0$0 Def009D -S _ACC Def00E0 -S __mcs51_genRAMCLEAR Ref0000 -S G$PT0$0$0 Def00B9 -S G$RS0$0$0 Def00D3 -S G$PT1$0$0 Def00BB -S _WR Def00B6 -S G$F0$0$0 Def00D5 -S G$RS1$0$0 Def00D4 -S G$RD$0$0 Def00B7 -S G$TR0$0$0 Def008C -S G$F1$0$0 Def00D1 -S G$TR1$0$0 Def008E -S G$PX0$0$0 Def00B8 -S G$ES$0$0 Def00AC -S G$PX1$0$0 Def00BA -S G$IP$0$0 Def00B8 -S G$PSW$0$0 Def00D0 -S G$RI$0$0 Def0098 -S _P0_0 Def0080 -S G$CY$0$0 Def00D7 -S _PCON Def0087 -S _SBUF Def0099 -S _P0_1 Def0081 -S _P1_0 Def0090 -S _P Def00D0 -S G$TI$0$0 Def0099 -S _P0_2 Def0082 -S _P1_1 Def0091 -S _P2_0 Def00A0 -S _P0_3 Def0083 -S _P1_2 Def0092 -S _P2_1 Def00A1 -S _P3_0 Def00B0 -S _SCON Def0098 -S _P0_4 Def0084 -S _P1_3 Def0093 -S _P2_2 Def00A2 -S _P3_1 Def00B1 -S G$P0$0$0 Def0080 -S _TCON Def0088 -S _TMOD Def0089 -S _P0_5 Def0085 -S _P1_4 Def0094 -S _P2_3 Def00A3 -S _P3_2 Def00B2 -S G$P1$0$0 Def0090 -S _P0_6 Def0086 -S _P1_5 Def0095 -S _P2_4 Def00A4 -S _P3_3 Def00B3 -S G$B$0$0 Def00F0 -S G$P2$0$0 Def00A0 -S _P0_7 Def0087 -S _P1_6 Def0096 -S _P2_5 Def00A5 -S _P3_4 Def00B4 -S G$PS$0$0 Def00BC -S G$P3$0$0 Def00B0 -S G$SP$0$0 Def0081 -S _P1_7 Def0097 -S _P2_6 Def00A6 -S _P3_5 Def00B5 -S G$T0$0$0 Def00B4 -S _P2_7 Def00A7 -S _P3_6 Def00B6 -S G$OV$0$0 Def00D2 -S G$T1$0$0 Def00B5 -S _P3_7 Def00B7 -S G$ACC$0$0 Def00E0 -S _INT0 Def00B2 -S _DPH Def0083 -S _INT1 Def00B3 -S G$WR$0$0 Def00B6 -S _IE0 Def0089 -S _IE1 Def008B -S _DPL Def0082 -S G$P0_0$0$0 Def0080 -S G$P$0$0 Def00D0 -S G$P1_0$0$0 Def0090 -S G$P0_1$0$0 Def0081 -S G$SBUF$0$0 Def0099 -S G$PCON$0$0 Def0087 -S _AC Def00D6 -S G$P2_0$0$0 Def00A0 -S G$P1_1$0$0 Def0091 -S G$P0_2$0$0 Def0082 -S _REN Def009C -S G$P3_0$0$0 Def00B0 -S G$P2_1$0$0 Def00A1 -S G$P1_2$0$0 Def0092 -S G$P0_3$0$0 Def0083 -S _EA Def00AF -S G$P3_1$0$0 Def00B1 -S G$P2_2$0$0 Def00A2 -S G$P1_3$0$0 Def0093 -S G$P0_4$0$0 Def0084 -S G$SCON$0$0 Def0098 -S G$P3_2$0$0 Def00B2 -S G$P2_3$0$0 Def00A3 -S G$P1_4$0$0 Def0094 -S G$P0_5$0$0 Def0085 -S G$TMOD$0$0 Def0089 -S G$TCON$0$0 Def0088 -S G$P3_3$0$0 Def00B3 -S G$P2_4$0$0 Def00A4 -S G$P1_5$0$0 Def0095 -S G$P0_6$0$0 Def0086 -S _ET0 Def00A9 -S G$P3_4$0$0 Def00B4 -S G$P2_5$0$0 Def00A5 -S G$P1_6$0$0 Def0096 -S G$P0_7$0$0 Def0087 -S _TF0 Def008D -S _ET1 Def00AB -S G$P3_5$0$0 Def00B5 -S G$P2_6$0$0 Def00A6 -S G$P1_7$0$0 Def0097 -S _TF1 Def008F -S G$P3_6$0$0 Def00B6 -S G$P2_7$0$0 Def00A7 -S _TH0 Def008C -S _RB8 Def009A -S __mcs51_genXINIT Ref0000 -S G$P3_7$0$0 Def00B7 -S _TH1 Def008D -S _IT0 Def0088 -S _EX0 Def00A8 -S _IE Def00A8 -S _IT1 Def008A -S _TB8 Def009B -S _EX1 Def00AA -S _RXD Def00B0 -S G$INT0$0$0 Def00B2 -S G$INT1$0$0 Def00B3 -S G$DPH$0$0 Def0083 -S _TL0 Def008A -S _SM0 Def009F -S _TXD Def00B1 -S _TL1 Def008B -S _SM1 Def009E -S G$IE0$0$0 Def0089 -S _SM2 Def009D -S G$IE1$0$0 Def008B -S G$DPL$0$0 Def0082 -S _PT0 Def00B9 -S _PT1 Def00BB -S _RS0 Def00D3 -S _TR0 Def008C -S _RD Def00B7 -S _RS1 Def00D4 -S _F0 Def00D5 -S _TR1 Def008E -S _F1 Def00D1 -S G$AC$0$0 Def00D6 -S _ES Def00AC -S _PX0 Def00B8 -S G$REN$0$0 Def009C -S _IP Def00B8 -S _PX1 Def00BA -S G$EA$0$0 Def00AF -S _PSW Def00D0 -S __sdcc_gsinit_startup Ref0000 -S _RI Def0098 -S _CY Def00D7 -S G$ET0$0$0 Def00A9 -S _TI Def0099 -S G$ET1$0$0 Def00AB -S G$TF0$0$0 Def008D -S G$TF1$0$0 Def008F -S __mcs51_genXRAMCLEAR Ref0000 -S G$RB8$0$0 Def009A -S G$TH0$0$0 Def008C -S _P0 Def0080 -A _CODE size 0 flags 0 addr 0 -A RSEG size 0 flags 0 addr 0 -A REG_BANK_0 size 8 flags 4 addr 0 -A DSEG size 3 flags 0 addr 0 -S _state Def0000 -S G$row$0$0 Def0001 -S G$state$0$0 Def0000 -S _row Def0001 -A OSEG size 0 flags 4 addr 0 -A SSEG size 1 flags 0 addr 0 -S __start__stack Def0000 -A ISEG size 0 flags 0 addr 0 -A IABS size 0 flags 8 addr 0 -A BSEG size 0 flags 80 addr 0 -A PSEG size 0 flags 50 addr 0 -A XSEG size 0 flags 40 addr 0 -A XABS size 0 flags 48 addr 0 -A XISEG size 0 flags 40 addr 0 -A HOME size 8 flags 20 addr 0 -S A$keypad_display$403 Def0003 -S A$keypad_display$405 Def0006 -S A$keypad_display$381 Def0000 -S __sdcc_program_startup Def0003 -A GSINIT0 size 0 flags 20 addr 0 -A GSINIT1 size 0 flags 20 addr 0 -A GSINIT2 size 0 flags 20 addr 0 -A GSINIT3 size 0 flags 20 addr 0 -A GSINIT4 size 0 flags 20 addr 0 -A GSINIT5 size 0 flags 20 addr 0 -A GSINIT size 0 flags 20 addr 0 -A GSFINAL size 3 flags 20 addr 0 -S A$keypad_display$396 Def0000 -A CSEG size B2 flags 20 addr 0 -S _main Def0000 -S XG$main$0$0 Def00AF -S A$keypad_display$510 Def0058 -S A$keypad_display$520 Def0069 -S A$keypad_display$511 Def0059 -S A$keypad_display$502 Def0051 -S A$keypad_display$530 Def007D -S A$keypad_display$521 Def006B -S A$keypad_display$512 Def005C -S A$keypad_display$440 Def0008 -S A$keypad_display$540 Def0086 -S A$keypad_display$522 Def006E -S A$keypad_display$450 Def0018 -S A$keypad_display$441 Def000A -S A$keypad_display$550 Def008B -S A$keypad_display$541 Def0087 -S A$keypad_display$523 Def006F -S A$keypad_display$514 Def005E -S A$keypad_display$451 Def001A -S A$keypad_display$442 Def000C -S A$keypad_display$551 Def008D -S A$keypad_display$524 Def0072 -S A$keypad_display$515 Def0060 -S A$keypad_display$470 Def002D -S A$keypad_display$452 Def001C -S A$keypad_display$443 Def000E -S A$keypad_display$434 Def0000 -S A$keypad_display$570 Def009D -S A$keypad_display$552 Def0090 -S A$keypad_display$534 Def007F -S A$keypad_display$516 Def0063 -S A$keypad_display$453 Def001E -S A$keypad_display$444 Def0010 -S A$keypad_display$435 Def0001 -S G$main$0$0 Def0000 -S A$keypad_display$562 Def0095 -S A$keypad_display$553 Def0091 -S A$keypad_display$526 Def0074 -S A$keypad_display$517 Def0064 -S A$keypad_display$508 Def0054 -S A$keypad_display$463 Def0025 -S A$keypad_display$454 Def001F -S A$keypad_display$436 Def0003 -S A$keypad_display$590 Def00AF -S A$keypad_display$563 Def0097 -S A$keypad_display$527 Def0076 -S A$keypad_display$518 Def0067 -S A$keypad_display$509 Def0055 -S A$keypad_display$491 Def0044 -S A$keypad_display$482 Def003A -S A$keypad_display$473 Def0030 -S A$keypad_display$455 Def0020 -S A$keypad_display$564 Def009A -S A$keypad_display$546 Def0089 -S A$keypad_display$528 Def0079 -S A$keypad_display$492 Def0047 -S A$keypad_display$483 Def003D -S A$keypad_display$474 Def0033 -S A$keypad_display$447 Def0012 -S A$keypad_display$438 Def0005 -S A$keypad_display$583 Def00A7 -S A$keypad_display$574 Def009F -S A$keypad_display$565 Def009B -S A$keypad_display$538 Def0081 -S A$keypad_display$529 Def007A -S A$keypad_display$466 Def0028 -S A$keypad_display$448 Def0014 -S A$keypad_display$439 Def0006 -S A$keypad_display$584 Def00A9 -S A$keypad_display$575 Def00A1 -S A$keypad_display$539 Def0083 -S A$keypad_display$449 Def0016 -S C$keypad_display.c$40$1$1 Def0000 -S A$keypad_display$585 Def00AA -S A$keypad_display$576 Def00A4 -S A$keypad_display$558 Def0093 -S A$keypad_display$459 Def0022 -S A$keypad_display$586 Def00AD -S A$keypad_display$577 Def00A5 -S A$keypad_display$496 Def0049 -S A$keypad_display$487 Def003F -S A$keypad_display$478 Def0035 -S A$keypad_display$469 Def002B -S A$keypad_display$497 Def004B -S A$keypad_display$488 Def0041 -S A$keypad_display$479 Def0037 -S C$keypad_display.c$41$2$2 Def00A7 -S A$keypad_display$498 Def004E -S C$keypad_display.c$38$0$0 Def0000 -S C$keypad_display.c$60$3$3 Def003F -S C$keypad_display.c$42$3$3 Def0012 -S C$keypad_display.c$81$2$2 Def00A7 -S C$keypad_display.c$84$1$1 Def00AF -S C$keypad_display.c$62$3$3 Def0049 -S C$keypad_display.c$53$3$3 Def0025 -S C$keypad_display.c$54$3$3 Def0028 -S C$keypad_display.c$65$3$3 Def0054 -S C$keypad_display.c$61$4$6 Def0044 -S C$keypad_display.c$56$3$3 Def002B -S C$keypad_display.c$48$3$3 Def0022 -S C$keypad_display.c$58$3$3 Def0035 -S C$keypad_display.c$70$4$9 Def0081 -S C$keypad_display.c$68$3$3 Def0054 -S C$keypad_display.c$63$4$7 Def0051 -S C$keypad_display.c$57$4$4 Def0030 -S C$keypad_display.c$71$4$9 Def0089 -S C$keypad_display.c$72$4$9 Def0089 -S C$keypad_display.c$73$4$9 Def008B -S C$keypad_display.c$59$4$5 Def003A -S C$keypad_display.c$74$4$9 Def0093 -S C$keypad_display.c$75$4$9 Def0093 -S C$keypad_display.c$76$4$9 Def0095 -S C$keypad_display.c$77$4$9 Def009D -S C$keypad_display.c$78$4$9 Def009D -S C$keypad_display.c$69$4$9 Def007F -S C$keypad_display.c$79$4$9 Def009F -A CONST size 14 flags 20 addr 0 -S Fkeypad_display$keypad$0$0 Def0000 -S Fkeypad_display$display_0$0$0 Def0004 -S Fkeypad_display$display_1$0$0 Def0008 -S Fkeypad_display$display_2$0$0 Def000C -S Fkeypad_display$display_3$0$0 Def0010 -A XINIT size 0 flags 20 addr 0 -A CABS size 0 flags 28 addr 0 -T 00 00 -R 00 00 00 02 -T 00 00 -R 00 00 00 03 -T 00 00 -R 00 00 00 03 -T 00 01 -R 00 00 00 03 -T 00 01 -R 00 00 00 03 -T 00 00 -R 00 00 00 05 -T 00 00 -R 00 00 00 05 -T 00 00 -R 00 00 00 0D -T 00 00 02 00 00 -R 00 00 00 0D 02 03 00 B8 -T 00 00 02 00 03 -R 00 00 00 15 00 03 00 0D -T 00 03 -R 00 00 00 0D -T 00 03 12 00 00 80 FE -R 00 00 00 0D 00 03 00 16 -T 00 00 -R 00 00 00 16 -T 00 00 -R 00 00 00 16 -T 00 00 E4 F5 00 00 01 F5 00 00 02 -R 00 00 00 16 F1 21 04 00 03 F1 21 08 00 03 -T 00 05 -R 00 00 00 16 -T 00 05 C3 E5 00 00 01 94 04 E5 00 00 02 64 80 94 -R 00 00 00 16 F1 21 04 00 03 F1 21 0A 00 03 -T 00 0F 80 50 EE E5 00 00 01 24 00 00 00 F5 82 E5 -R 00 00 00 16 F1 21 06 00 03 F1 01 0A 00 17 -T 00 19 00 00 02 34 00 00 00 F5 83 E4 93 F5 90 85 -R 00 00 00 16 F1 21 02 00 03 F1 81 06 00 17 -T 00 23 90 00 00 00 53 00 00 00 0F 63 -R 00 00 00 16 F1 21 03 00 03 F1 01 07 00 03 -T 00 29 00 00 00 0F E5 00 00 00 30 E0 05 75 -R 00 00 00 16 F1 01 02 00 03 F1 21 07 00 03 -T 00 31 00 00 00 00 80 1F -R 00 00 00 16 F1 21 02 00 03 -T 00 35 -R 00 00 00 16 -T 00 35 E5 00 00 00 30 E1 05 75 00 00 00 01 80 15 -R 00 00 00 16 F1 21 03 00 03 F1 21 0A 00 03 -T 00 3F -R 00 00 00 16 -T 00 3F E5 00 00 00 30 E2 05 75 00 00 00 02 80 0B -R 00 00 00 16 F1 21 03 00 03 F1 21 0A 00 03 -T 00 49 -R 00 00 00 16 -T 00 49 E5 00 00 00 20 E3 03 02 00 A7 -R 00 00 00 16 F1 21 03 00 03 00 0A 00 16 -T 00 51 -R 00 00 00 16 -T 00 51 75 00 00 00 03 -R 00 00 00 16 F1 21 03 00 03 -T 00 54 -R 00 00 00 16 -T 00 54 E4 B5 00 00 01 06 E4 B5 00 00 02 02 80 23 -R 00 00 00 16 F1 21 04 00 03 F1 21 0A 00 03 -T 00 5E -R 00 00 00 16 -T 00 5E 74 01 B5 00 00 01 06 E4 B5 00 00 02 02 80 -R 00 00 00 16 F1 21 05 00 03 F1 21 0B 00 03 -T 00 68 22 -R 00 00 00 16 -T 00 69 -R 00 00 00 16 -T 00 69 74 02 B5 00 00 01 06 E4 B5 00 00 02 02 80 -R 00 00 00 16 F1 21 05 00 03 F1 21 0B 00 03 -T 00 73 21 -R 00 00 00 16 -T 00 74 -R 00 00 00 16 -T 00 74 74 03 B5 00 00 01 06 E4 B5 00 00 02 02 80 -R 00 00 00 16 F1 21 05 00 03 F1 21 0B 00 03 -T 00 7E 20 -R 00 00 00 16 -T 00 7F -R 00 00 00 16 -T 00 7F 80 26 -R 00 00 00 16 -T 00 81 -R 00 00 00 16 -T 00 81 E5 00 00 00 90 00 04 93 F5 B0 80 1C -R 00 00 00 16 F1 21 03 00 03 00 07 00 17 -T 00 8B -R 00 00 00 16 -T 00 8B E5 00 00 00 90 00 08 93 F5 B0 80 12 -R 00 00 00 16 F1 21 03 00 03 00 07 00 17 -T 00 95 -R 00 00 00 16 -T 00 95 E5 00 00 00 90 00 0C 93 F5 B0 80 08 -R 00 00 00 16 F1 21 03 00 03 00 07 00 17 -T 00 9F -R 00 00 00 16 -T 00 9F E5 00 00 00 90 00 10 93 F5 B0 -R 00 00 00 16 F1 21 03 00 03 00 07 00 17 -T 00 A7 -R 00 00 00 16 -T 00 A7 05 00 00 01 E4 B5 00 00 01 02 05 -R 00 00 00 16 F1 21 03 00 03 F1 21 08 00 03 -T 00 AE 00 00 02 -R 00 00 00 16 F1 21 02 00 03 -T 00 AF -R 00 00 00 16 -T 00 AF 02 00 05 -R 00 00 00 16 00 03 00 16 -T 00 00 -R 00 00 00 17 -T 00 00 EF DF BF 7F -R 00 00 00 17 -T 00 04 -R 00 00 00 17 -T 00 04 F9 64 70 48 -R 00 00 00 17 -T 00 08 -R 00 00 00 17 -T 00 08 59 52 42 40 -R 00 00 00 17 -T 00 0C -R 00 00 00 17 -T 00 0C F8 40 50 C6 -R 00 00 00 17 -T 00 10 -R 00 00 00 17 -T 00 10 79 C0 49 C0 -R 00 00 00 17 diff --git a/demo/keypad_display.rst b/demo/keypad_display.rst deleted file mode 100644 index e013b8e..0000000 --- a/demo/keypad_display.rst +++ /dev/null @@ -1,624 +0,0 @@ - 1 ;-------------------------------------------------------- - 2 ; File Created by SDCC : free open source ANSI-C Compiler - 3 ; Version 2.9.0 #5416 (Oct 6 2009) (UNIX) - 4 ; This file was generated Tue Oct 27 23:03:55 2009 - 5 ;-------------------------------------------------------- - 6 .module keypad_display - 7 .optsdcc -mmcs51 --model-small - 8 - 9 ;-------------------------------------------------------- - 10 ; Public variables in this module - 11 ;-------------------------------------------------------- - 12 .globl _main - 13 .globl _CY - 14 .globl _AC - 15 .globl _F0 - 16 .globl _RS1 - 17 .globl _RS0 - 18 .globl _OV - 19 .globl _F1 - 20 .globl _P - 21 .globl _PS - 22 .globl _PT1 - 23 .globl _PX1 - 24 .globl _PT0 - 25 .globl _PX0 - 26 .globl _RD - 27 .globl _WR - 28 .globl _T1 - 29 .globl _T0 - 30 .globl _INT1 - 31 .globl _INT0 - 32 .globl _TXD - 33 .globl _RXD - 34 .globl _P3_7 - 35 .globl _P3_6 - 36 .globl _P3_5 - 37 .globl _P3_4 - 38 .globl _P3_3 - 39 .globl _P3_2 - 40 .globl _P3_1 - 41 .globl _P3_0 - 42 .globl _EA - 43 .globl _ES - 44 .globl _ET1 - 45 .globl _EX1 - 46 .globl _ET0 - 47 .globl _EX0 - 48 .globl _P2_7 - 49 .globl _P2_6 - 50 .globl _P2_5 - 51 .globl _P2_4 - 52 .globl _P2_3 - 53 .globl _P2_2 - 54 .globl _P2_1 - 55 .globl _P2_0 - 56 .globl _SM0 - 57 .globl _SM1 - 58 .globl _SM2 - 59 .globl _REN - 60 .globl _TB8 - 61 .globl _RB8 - 62 .globl _TI - 63 .globl _RI - 64 .globl _P1_7 - 65 .globl _P1_6 - 66 .globl _P1_5 - 67 .globl _P1_4 - 68 .globl _P1_3 - 69 .globl _P1_2 - 70 .globl _P1_1 - 71 .globl _P1_0 - 72 .globl _TF1 - 73 .globl _TR1 - 74 .globl _TF0 - 75 .globl _TR0 - 76 .globl _IE1 - 77 .globl _IT1 - 78 .globl _IE0 - 79 .globl _IT0 - 80 .globl _P0_7 - 81 .globl _P0_6 - 82 .globl _P0_5 - 83 .globl _P0_4 - 84 .globl _P0_3 - 85 .globl _P0_2 - 86 .globl _P0_1 - 87 .globl _P0_0 - 88 .globl _B - 89 .globl _ACC - 90 .globl _PSW - 91 .globl _IP - 92 .globl _P3 - 93 .globl _IE - 94 .globl _P2 - 95 .globl _SBUF - 96 .globl _SCON - 97 .globl _P1 - 98 .globl _TH1 - 99 .globl _TH0 - 100 .globl _TL1 - 101 .globl _TL0 - 102 .globl _TMOD - 103 .globl _TCON - 104 .globl _PCON - 105 .globl _DPH - 106 .globl _DPL - 107 .globl _SP - 108 .globl _P0 - 109 .globl _row - 110 .globl _state - 111 ;-------------------------------------------------------- - 112 ; special function registers - 113 ;-------------------------------------------------------- - 114 .area RSEG (DATA) - 0080 115 G$P0$0$0 == 0x0080 - 0080 116 _P0 = 0x0080 - 0081 117 G$SP$0$0 == 0x0081 - 0081 118 _SP = 0x0081 - 0082 119 G$DPL$0$0 == 0x0082 - 0082 120 _DPL = 0x0082 - 0083 121 G$DPH$0$0 == 0x0083 - 0083 122 _DPH = 0x0083 - 0087 123 G$PCON$0$0 == 0x0087 - 0087 124 _PCON = 0x0087 - 0088 125 G$TCON$0$0 == 0x0088 - 0088 126 _TCON = 0x0088 - 0089 127 G$TMOD$0$0 == 0x0089 - 0089 128 _TMOD = 0x0089 - 008A 129 G$TL0$0$0 == 0x008a - 008A 130 _TL0 = 0x008a - 008B 131 G$TL1$0$0 == 0x008b - 008B 132 _TL1 = 0x008b - 008C 133 G$TH0$0$0 == 0x008c - 008C 134 _TH0 = 0x008c - 008D 135 G$TH1$0$0 == 0x008d - 008D 136 _TH1 = 0x008d - 0090 137 G$P1$0$0 == 0x0090 - 0090 138 _P1 = 0x0090 - 0098 139 G$SCON$0$0 == 0x0098 - 0098 140 _SCON = 0x0098 - 0099 141 G$SBUF$0$0 == 0x0099 - 0099 142 _SBUF = 0x0099 - 00A0 143 G$P2$0$0 == 0x00a0 - 00A0 144 _P2 = 0x00a0 - 00A8 145 G$IE$0$0 == 0x00a8 - 00A8 146 _IE = 0x00a8 - 00B0 147 G$P3$0$0 == 0x00b0 - 00B0 148 _P3 = 0x00b0 - 00B8 149 G$IP$0$0 == 0x00b8 - 00B8 150 _IP = 0x00b8 - 00D0 151 G$PSW$0$0 == 0x00d0 - 00D0 152 _PSW = 0x00d0 - 00E0 153 G$ACC$0$0 == 0x00e0 - 00E0 154 _ACC = 0x00e0 - 00F0 155 G$B$0$0 == 0x00f0 - 00F0 156 _B = 0x00f0 - 157 ;-------------------------------------------------------- - 158 ; special function bits - 159 ;-------------------------------------------------------- - 160 .area RSEG (DATA) - 0080 161 G$P0_0$0$0 == 0x0080 - 0080 162 _P0_0 = 0x0080 - 0081 163 G$P0_1$0$0 == 0x0081 - 0081 164 _P0_1 = 0x0081 - 0082 165 G$P0_2$0$0 == 0x0082 - 0082 166 _P0_2 = 0x0082 - 0083 167 G$P0_3$0$0 == 0x0083 - 0083 168 _P0_3 = 0x0083 - 0084 169 G$P0_4$0$0 == 0x0084 - 0084 170 _P0_4 = 0x0084 - 0085 171 G$P0_5$0$0 == 0x0085 - 0085 172 _P0_5 = 0x0085 - 0086 173 G$P0_6$0$0 == 0x0086 - 0086 174 _P0_6 = 0x0086 - 0087 175 G$P0_7$0$0 == 0x0087 - 0087 176 _P0_7 = 0x0087 - 0088 177 G$IT0$0$0 == 0x0088 - 0088 178 _IT0 = 0x0088 - 0089 179 G$IE0$0$0 == 0x0089 - 0089 180 _IE0 = 0x0089 - 008A 181 G$IT1$0$0 == 0x008a - 008A 182 _IT1 = 0x008a - 008B 183 G$IE1$0$0 == 0x008b - 008B 184 _IE1 = 0x008b - 008C 185 G$TR0$0$0 == 0x008c - 008C 186 _TR0 = 0x008c - 008D 187 G$TF0$0$0 == 0x008d - 008D 188 _TF0 = 0x008d - 008E 189 G$TR1$0$0 == 0x008e - 008E 190 _TR1 = 0x008e - 008F 191 G$TF1$0$0 == 0x008f - 008F 192 _TF1 = 0x008f - 0090 193 G$P1_0$0$0 == 0x0090 - 0090 194 _P1_0 = 0x0090 - 0091 195 G$P1_1$0$0 == 0x0091 - 0091 196 _P1_1 = 0x0091 - 0092 197 G$P1_2$0$0 == 0x0092 - 0092 198 _P1_2 = 0x0092 - 0093 199 G$P1_3$0$0 == 0x0093 - 0093 200 _P1_3 = 0x0093 - 0094 201 G$P1_4$0$0 == 0x0094 - 0094 202 _P1_4 = 0x0094 - 0095 203 G$P1_5$0$0 == 0x0095 - 0095 204 _P1_5 = 0x0095 - 0096 205 G$P1_6$0$0 == 0x0096 - 0096 206 _P1_6 = 0x0096 - 0097 207 G$P1_7$0$0 == 0x0097 - 0097 208 _P1_7 = 0x0097 - 0098 209 G$RI$0$0 == 0x0098 - 0098 210 _RI = 0x0098 - 0099 211 G$TI$0$0 == 0x0099 - 0099 212 _TI = 0x0099 - 009A 213 G$RB8$0$0 == 0x009a - 009A 214 _RB8 = 0x009a - 009B 215 G$TB8$0$0 == 0x009b - 009B 216 _TB8 = 0x009b - 009C 217 G$REN$0$0 == 0x009c - 009C 218 _REN = 0x009c - 009D 219 G$SM2$0$0 == 0x009d - 009D 220 _SM2 = 0x009d - 009E 221 G$SM1$0$0 == 0x009e - 009E 222 _SM1 = 0x009e - 009F 223 G$SM0$0$0 == 0x009f - 009F 224 _SM0 = 0x009f - 00A0 225 G$P2_0$0$0 == 0x00a0 - 00A0 226 _P2_0 = 0x00a0 - 00A1 227 G$P2_1$0$0 == 0x00a1 - 00A1 228 _P2_1 = 0x00a1 - 00A2 229 G$P2_2$0$0 == 0x00a2 - 00A2 230 _P2_2 = 0x00a2 - 00A3 231 G$P2_3$0$0 == 0x00a3 - 00A3 232 _P2_3 = 0x00a3 - 00A4 233 G$P2_4$0$0 == 0x00a4 - 00A4 234 _P2_4 = 0x00a4 - 00A5 235 G$P2_5$0$0 == 0x00a5 - 00A5 236 _P2_5 = 0x00a5 - 00A6 237 G$P2_6$0$0 == 0x00a6 - 00A6 238 _P2_6 = 0x00a6 - 00A7 239 G$P2_7$0$0 == 0x00a7 - 00A7 240 _P2_7 = 0x00a7 - 00A8 241 G$EX0$0$0 == 0x00a8 - 00A8 242 _EX0 = 0x00a8 - 00A9 243 G$ET0$0$0 == 0x00a9 - 00A9 244 _ET0 = 0x00a9 - 00AA 245 G$EX1$0$0 == 0x00aa - 00AA 246 _EX1 = 0x00aa - 00AB 247 G$ET1$0$0 == 0x00ab - 00AB 248 _ET1 = 0x00ab - 00AC 249 G$ES$0$0 == 0x00ac - 00AC 250 _ES = 0x00ac - 00AF 251 G$EA$0$0 == 0x00af - 00AF 252 _EA = 0x00af - 00B0 253 G$P3_0$0$0 == 0x00b0 - 00B0 254 _P3_0 = 0x00b0 - 00B1 255 G$P3_1$0$0 == 0x00b1 - 00B1 256 _P3_1 = 0x00b1 - 00B2 257 G$P3_2$0$0 == 0x00b2 - 00B2 258 _P3_2 = 0x00b2 - 00B3 259 G$P3_3$0$0 == 0x00b3 - 00B3 260 _P3_3 = 0x00b3 - 00B4 261 G$P3_4$0$0 == 0x00b4 - 00B4 262 _P3_4 = 0x00b4 - 00B5 263 G$P3_5$0$0 == 0x00b5 - 00B5 264 _P3_5 = 0x00b5 - 00B6 265 G$P3_6$0$0 == 0x00b6 - 00B6 266 _P3_6 = 0x00b6 - 00B7 267 G$P3_7$0$0 == 0x00b7 - 00B7 268 _P3_7 = 0x00b7 - 00B0 269 G$RXD$0$0 == 0x00b0 - 00B0 270 _RXD = 0x00b0 - 00B1 271 G$TXD$0$0 == 0x00b1 - 00B1 272 _TXD = 0x00b1 - 00B2 273 G$INT0$0$0 == 0x00b2 - 00B2 274 _INT0 = 0x00b2 - 00B3 275 G$INT1$0$0 == 0x00b3 - 00B3 276 _INT1 = 0x00b3 - 00B4 277 G$T0$0$0 == 0x00b4 - 00B4 278 _T0 = 0x00b4 - 00B5 279 G$T1$0$0 == 0x00b5 - 00B5 280 _T1 = 0x00b5 - 00B6 281 G$WR$0$0 == 0x00b6 - 00B6 282 _WR = 0x00b6 - 00B7 283 G$RD$0$0 == 0x00b7 - 00B7 284 _RD = 0x00b7 - 00B8 285 G$PX0$0$0 == 0x00b8 - 00B8 286 _PX0 = 0x00b8 - 00B9 287 G$PT0$0$0 == 0x00b9 - 00B9 288 _PT0 = 0x00b9 - 00BA 289 G$PX1$0$0 == 0x00ba - 00BA 290 _PX1 = 0x00ba - 00BB 291 G$PT1$0$0 == 0x00bb - 00BB 292 _PT1 = 0x00bb - 00BC 293 G$PS$0$0 == 0x00bc - 00BC 294 _PS = 0x00bc - 00D0 295 G$P$0$0 == 0x00d0 - 00D0 296 _P = 0x00d0 - 00D1 297 G$F1$0$0 == 0x00d1 - 00D1 298 _F1 = 0x00d1 - 00D2 299 G$OV$0$0 == 0x00d2 - 00D2 300 _OV = 0x00d2 - 00D3 301 G$RS0$0$0 == 0x00d3 - 00D3 302 _RS0 = 0x00d3 - 00D4 303 G$RS1$0$0 == 0x00d4 - 00D4 304 _RS1 = 0x00d4 - 00D5 305 G$F0$0$0 == 0x00d5 - 00D5 306 _F0 = 0x00d5 - 00D6 307 G$AC$0$0 == 0x00d6 - 00D6 308 _AC = 0x00d6 - 00D7 309 G$CY$0$0 == 0x00d7 - 00D7 310 _CY = 0x00d7 - 311 ;-------------------------------------------------------- - 312 ; overlayable register banks - 313 ;-------------------------------------------------------- - 314 .area REG_BANK_0 (REL,OVR,DATA) - 0000 315 .ds 8 - 316 ;-------------------------------------------------------- - 317 ; internal ram data - 318 ;-------------------------------------------------------- - 319 .area DSEG (DATA) - 0000 320 G$state$0$0==. - 0008 321 _state:: - 0008 322 .ds 1 - 0001 323 G$row$0$0==. - 0009 324 _row:: - 0009 325 .ds 2 - 326 ;-------------------------------------------------------- - 327 ; overlayable items in internal ram - 328 ;-------------------------------------------------------- - 329 .area OSEG (OVR,DATA) - 330 ;-------------------------------------------------------- - 331 ; Stack segment in internal ram - 332 ;-------------------------------------------------------- - 333 .area SSEG (DATA) - 000B 334 __start__stack: - 000B 335 .ds 1 - 336 - 337 ;-------------------------------------------------------- - 338 ; indirectly addressable internal ram data - 339 ;-------------------------------------------------------- - 340 .area ISEG (DATA) - 341 ;-------------------------------------------------------- - 342 ; absolute internal ram data - 343 ;-------------------------------------------------------- - 344 .area IABS (ABS,DATA) - 345 .area IABS (ABS,DATA) - 346 ;-------------------------------------------------------- - 347 ; bit data - 348 ;-------------------------------------------------------- - 349 .area BSEG (BIT) - 350 ;-------------------------------------------------------- - 351 ; paged external ram data - 352 ;-------------------------------------------------------- - 353 .area PSEG (PAG,XDATA) - 354 ;-------------------------------------------------------- - 355 ; external ram data - 356 ;-------------------------------------------------------- - 357 .area XSEG (XDATA) - 358 ;-------------------------------------------------------- - 359 ; absolute external ram data - 360 ;-------------------------------------------------------- - 361 .area XABS (ABS,XDATA) - 362 ;-------------------------------------------------------- - 363 ; external initialized ram data - 364 ;-------------------------------------------------------- - 365 .area XISEG (XDATA) - 366 .area HOME (CODE) - 367 .area GSINIT0 (CODE) - 368 .area GSINIT1 (CODE) - 369 .area GSINIT2 (CODE) - 370 .area GSINIT3 (CODE) - 371 .area GSINIT4 (CODE) - 372 .area GSINIT5 (CODE) - 373 .area GSINIT (CODE) - 374 .area GSFINAL (CODE) - 375 .area CSEG (CODE) - 376 ;-------------------------------------------------------- - 377 ; interrupt vector - 378 ;-------------------------------------------------------- - 379 .area HOME (CODE) - 0000 380 __interrupt_vect: - 0000 02 00 08 381 ljmp __sdcc_gsinit_startup - 382 ;-------------------------------------------------------- - 383 ; global & static initialisations - 384 ;-------------------------------------------------------- - 385 .area HOME (CODE) - 386 .area GSINIT (CODE) - 387 .area GSFINAL (CODE) - 388 .area GSINIT (CODE) - 389 .globl __sdcc_gsinit_startup - 390 .globl __sdcc_program_startup - 391 .globl __start__stack - 392 .globl __mcs51_genXINIT - 393 .globl __mcs51_genXRAMCLEAR - 394 .globl __mcs51_genRAMCLEAR - 395 .area GSFINAL (CODE) - 0061 02 00 03 396 ljmp __sdcc_program_startup - 397 ;-------------------------------------------------------- - 398 ; Home - 399 ;-------------------------------------------------------- - 400 .area HOME (CODE) - 401 .area HOME (CODE) - 0003 402 __sdcc_program_startup: - 0003 12 00 64 403 lcall _main - 404 ; return from main will lock up - 0006 80 FE 405 sjmp . - 406 ;-------------------------------------------------------- - 407 ; code - 408 ;-------------------------------------------------------- - 409 .area CSEG (CODE) - 410 ;------------------------------------------------------------ - 411 ;Allocation info for local variables in function 'main' - 412 ;------------------------------------------------------------ - 413 ;------------------------------------------------------------ - 0000 414 G$main$0$0 ==. - 0000 415 C$keypad_display.c$38$0$0 ==. - 416 ; keypad_display.c:38: int main() - 417 ; ----------------------------------------- - 418 ; function main - 419 ; ----------------------------------------- - 0064 420 _main: - 0002 421 ar2 = 0x02 - 0003 422 ar3 = 0x03 - 0004 423 ar4 = 0x04 - 0005 424 ar5 = 0x05 - 0006 425 ar6 = 0x06 - 0007 426 ar7 = 0x07 - 0000 427 ar0 = 0x00 - 0001 428 ar1 = 0x01 - 0000 429 C$keypad_display.c$40$1$1 ==. - 430 ; keypad_display.c:40: while(1) { - 0064 431 00123$: - 0000 432 C$keypad_display.c$41$2$2 ==. - 433 ; keypad_display.c:41: for(row=0; row<4; row++) { - 0064 E4 434 clr a - 0065 F5 09 435 mov _row,a - 0067 F5 0A 436 mov (_row + 1),a - 0069 437 00118$: - 0069 C3 438 clr c - 006A E5 09 439 mov a,_row - 006C 94 04 440 subb a,#0x04 - 006E E5 0A 441 mov a,(_row + 1) - 0070 64 80 442 xrl a,#0x80 - 0072 94 80 443 subb a,#0x80 - 0074 50 EE 444 jnc 00123$ - 0012 445 C$keypad_display.c$42$3$3 ==. - 446 ; keypad_display.c:42: P1=keypad[row]; - 0076 E5 09 447 mov a,_row - 0078 24 1A 448 add a,#_keypad - 007A F5 82 449 mov dpl,a - 007C E5 0A 450 mov a,(_row + 1) - 007E 34 01 451 addc a,#(_keypad >> 8) - 0080 F5 83 452 mov dph,a - 0082 E4 453 clr a - 0083 93 454 movc a,@a+dptr - 0084 F5 90 455 mov _P1,a - 0022 456 C$keypad_display.c$48$3$3 ==. - 457 ; keypad_display.c:48: _endasm; - 458 - 0086 85 90 08 459 mov _state, P1 - 460 - 0025 461 C$keypad_display.c$53$3$3 ==. - 462 ; keypad_display.c:53: state&=0x0f; - 0089 53 08 0F 463 anl _state,#0x0F - 0028 464 C$keypad_display.c$54$3$3 ==. - 465 ; keypad_display.c:54: state^=0x0f; - 008C 63 08 0F 466 xrl _state,#0x0F - 002B 467 C$keypad_display.c$56$3$3 ==. - 468 ; keypad_display.c:56: if(state & 1) { - 008F E5 08 469 mov a,_state - 0091 30 E0 05 470 jnb acc.0,00111$ - 0030 471 C$keypad_display.c$57$4$4 ==. - 472 ; keypad_display.c:57: state=0; - 0094 75 08 00 473 mov _state,#0x00 - 0097 80 1F 474 sjmp 00112$ - 0099 475 00111$: - 0035 476 C$keypad_display.c$58$3$3 ==. - 477 ; keypad_display.c:58: } else if(state & 2) { - 0099 E5 08 478 mov a,_state - 009B 30 E1 05 479 jnb acc.1,00108$ - 003A 480 C$keypad_display.c$59$4$5 ==. - 481 ; keypad_display.c:59: state=1; - 009E 75 08 01 482 mov _state,#0x01 - 00A1 80 15 483 sjmp 00112$ - 00A3 484 00108$: - 003F 485 C$keypad_display.c$60$3$3 ==. - 486 ; keypad_display.c:60: } else if(state & 4) { - 00A3 E5 08 487 mov a,_state - 00A5 30 E2 05 488 jnb acc.2,00105$ - 0044 489 C$keypad_display.c$61$4$6 ==. - 490 ; keypad_display.c:61: state=2; - 00A8 75 08 02 491 mov _state,#0x02 - 00AB 80 0B 492 sjmp 00112$ - 00AD 493 00105$: - 0049 494 C$keypad_display.c$62$3$3 ==. - 495 ; keypad_display.c:62: } else if(state & 8) { - 00AD E5 08 496 mov a,_state - 00AF 20 E3 03 497 jb acc.3,00142$ - 00B2 02 01 0B 498 ljmp 00120$ - 00B5 499 00142$: - 0051 500 C$keypad_display.c$63$4$7 ==. - 501 ; keypad_display.c:63: state=3; - 00B5 75 08 03 502 mov _state,#0x03 - 0054 503 C$keypad_display.c$65$3$3 ==. - 504 ; keypad_display.c:65: continue; - 00B8 505 00112$: - 0054 506 C$keypad_display.c$68$3$3 ==. - 507 ; keypad_display.c:68: switch(row) { - 00B8 E4 508 clr a - 00B9 B5 09 06 509 cjne a,_row,00143$ - 00BC E4 510 clr a - 00BD B5 0A 02 511 cjne a,(_row + 1),00143$ - 00C0 80 23 512 sjmp 00113$ - 00C2 513 00143$: - 00C2 74 01 514 mov a,#0x01 - 00C4 B5 09 06 515 cjne a,_row,00144$ - 00C7 E4 516 clr a - 00C8 B5 0A 02 517 cjne a,(_row + 1),00144$ - 00CB 80 22 518 sjmp 00114$ - 00CD 519 00144$: - 00CD 74 02 520 mov a,#0x02 - 00CF B5 09 06 521 cjne a,_row,00145$ - 00D2 E4 522 clr a - 00D3 B5 0A 02 523 cjne a,(_row + 1),00145$ - 00D6 80 21 524 sjmp 00115$ - 00D8 525 00145$: - 00D8 74 03 526 mov a,#0x03 - 00DA B5 09 06 527 cjne a,_row,00146$ - 00DD E4 528 clr a - 00DE B5 0A 02 529 cjne a,(_row + 1),00146$ - 00E1 80 20 530 sjmp 00116$ - 00E3 531 00146$: - 007F 532 C$keypad_display.c$69$4$9 ==. - 533 ; keypad_display.c:69: case 0: - 00E3 80 26 534 sjmp 00120$ - 00E5 535 00113$: - 0081 536 C$keypad_display.c$70$4$9 ==. - 537 ; keypad_display.c:70: P3=display_0[state]; - 00E5 E5 08 538 mov a,_state - 00E7 90 01 1E 539 mov dptr,#_display_0 - 00EA 93 540 movc a,@a+dptr - 00EB F5 B0 541 mov _P3,a - 0089 542 C$keypad_display.c$71$4$9 ==. - 543 ; keypad_display.c:71: break; - 0089 544 C$keypad_display.c$72$4$9 ==. - 545 ; keypad_display.c:72: case 1: - 00ED 80 1C 546 sjmp 00120$ - 00EF 547 00114$: - 008B 548 C$keypad_display.c$73$4$9 ==. - 549 ; keypad_display.c:73: P3=display_1[state]; - 00EF E5 08 550 mov a,_state - 00F1 90 01 22 551 mov dptr,#_display_1 - 00F4 93 552 movc a,@a+dptr - 00F5 F5 B0 553 mov _P3,a - 0093 554 C$keypad_display.c$74$4$9 ==. - 555 ; keypad_display.c:74: break; - 0093 556 C$keypad_display.c$75$4$9 ==. - 557 ; keypad_display.c:75: case 2: - 00F7 80 12 558 sjmp 00120$ - 00F9 559 00115$: - 0095 560 C$keypad_display.c$76$4$9 ==. - 561 ; keypad_display.c:76: P3=display_2[state]; - 00F9 E5 08 562 mov a,_state - 00FB 90 01 26 563 mov dptr,#_display_2 - 00FE 93 564 movc a,@a+dptr - 00FF F5 B0 565 mov _P3,a - 009D 566 C$keypad_display.c$77$4$9 ==. - 567 ; keypad_display.c:77: break; - 009D 568 C$keypad_display.c$78$4$9 ==. - 569 ; keypad_display.c:78: case 3: - 0101 80 08 570 sjmp 00120$ - 0103 571 00116$: - 009F 572 C$keypad_display.c$79$4$9 ==. - 573 ; keypad_display.c:79: P3=display_3[state]; - 0103 E5 08 574 mov a,_state - 0105 90 01 2A 575 mov dptr,#_display_3 - 0108 93 576 movc a,@a+dptr - 0109 F5 B0 577 mov _P3,a - 00A7 578 C$keypad_display.c$81$2$2 ==. - 579 ; keypad_display.c:81: } - 010B 580 00120$: - 00A7 581 C$keypad_display.c$41$2$2 ==. - 582 ; keypad_display.c:41: for(row=0; row<4; row++) { - 010B 05 09 583 inc _row - 010D E4 584 clr a - 010E B5 09 02 585 cjne a,_row,00147$ - 0111 05 0A 586 inc (_row + 1) - 0113 587 00147$: - 00AF 588 C$keypad_display.c$84$1$1 ==. - 00AF 589 XG$main$0$0 ==. - 0113 02 00 69 590 ljmp 00118$ - 591 .area CSEG (CODE) - 592 .area CONST (CODE) - 0000 593 Fkeypad_display$keypad$0$0 == . - 011A 594 _keypad: - 011A EF 595 .db #0xEF - 011B DF 596 .db #0xDF - 011C BF 597 .db #0xBF - 011D 7F 598 .db #0x7F - 0004 599 Fkeypad_display$display_0$0$0 == . - 011E 600 _display_0: - 011E F9 601 .db #0xF9 - 011F 64 602 .db #0x64 - 0120 70 603 .db #0x70 - 0121 48 604 .db #0x48 - 0008 605 Fkeypad_display$display_1$0$0 == . - 0122 606 _display_1: - 0122 59 607 .db #0x59 - 0123 52 608 .db #0x52 - 0124 42 609 .db #0x42 - 0125 40 610 .db #0x40 - 000C 611 Fkeypad_display$display_2$0$0 == . - 0126 612 _display_2: - 0126 F8 613 .db #0xF8 - 0127 40 614 .db #0x40 - 0128 50 615 .db #0x50 - 0129 C6 616 .db #0xC6 - 0010 617 Fkeypad_display$display_3$0$0 == . - 012A 618 _display_3: - 012A 79 619 .db #0x79 - 012B C0 620 .db #0xC0 - 012C 49 621 .db #0x49 - 012D C0 622 .db #0xC0 - 623 .area XINIT (CODE) - 624 .area CABS (ABS,CODE) diff --git a/demo/keypad_display.sym b/demo/keypad_display.sym deleted file mode 100644 index eded721..0000000 --- a/demo/keypad_display.sym +++ /dev/null @@ -1,712 +0,0 @@ -ASxxxx Assembler V01.70 + NoICE + SDCC mods + Flat24 Feb-1999 (Intel 8051), page 1. - -Symbol Table - - A 00D6 - D A$keypad_display$381 0000 GR - 15 A$keypad_display$396 0000 GR - D A$keypad_display$403 0003 GR - D A$keypad_display$405 0006 GR - 16 A$keypad_display$434 0000 GR - 16 A$keypad_display$435 0001 GR - 16 A$keypad_display$436 0003 GR - 16 A$keypad_display$438 0005 GR - 16 A$keypad_display$439 0006 GR - 16 A$keypad_display$440 0008 GR - 16 A$keypad_display$441 000A GR - 16 A$keypad_display$442 000C GR - 16 A$keypad_display$443 000E GR - 16 A$keypad_display$444 0010 GR - 16 A$keypad_display$447 0012 GR - 16 A$keypad_display$448 0014 GR - 16 A$keypad_display$449 0016 GR - 16 A$keypad_display$450 0018 GR - 16 A$keypad_display$451 001A GR - 16 A$keypad_display$452 001C GR - 16 A$keypad_display$453 001E GR - 16 A$keypad_display$454 001F GR - 16 A$keypad_display$455 0020 GR - 16 A$keypad_display$459 0022 GR - 16 A$keypad_display$463 0025 GR - 16 A$keypad_display$466 0028 GR - 16 A$keypad_display$469 002B GR - 16 A$keypad_display$470 002D GR - 16 A$keypad_display$473 0030 GR - 16 A$keypad_display$474 0033 GR - 16 A$keypad_display$478 0035 GR - 16 A$keypad_display$479 0037 GR - 16 A$keypad_display$482 003A GR - 16 A$keypad_display$483 003D GR - 16 A$keypad_display$487 003F GR - 16 A$keypad_display$488 0041 GR - 16 A$keypad_display$491 0044 GR - 16 A$keypad_display$492 0047 GR - 16 A$keypad_display$496 0049 GR - 16 A$keypad_display$497 004B GR - 16 A$keypad_display$498 004E GR - 16 A$keypad_display$502 0051 GR - 16 A$keypad_display$508 0054 GR - 16 A$keypad_display$509 0055 GR - 16 A$keypad_display$510 0058 GR - 16 A$keypad_display$511 0059 GR - 16 A$keypad_display$512 005C GR - 16 A$keypad_display$514 005E GR - 16 A$keypad_display$515 0060 GR - 16 A$keypad_display$516 0063 GR - 16 A$keypad_display$517 0064 GR - 16 A$keypad_display$518 0067 GR - 16 A$keypad_display$520 0069 GR - 16 A$keypad_display$521 006B GR - 16 A$keypad_display$522 006E GR - 16 A$keypad_display$523 006F GR - 16 A$keypad_display$524 0072 GR - 16 A$keypad_display$526 0074 GR - 16 A$keypad_display$527 0076 GR - 16 A$keypad_display$528 0079 GR - 16 A$keypad_display$529 007A GR - 16 A$keypad_display$530 007D GR - 16 A$keypad_display$534 007F GR - 16 A$keypad_display$538 0081 GR - 16 A$keypad_display$539 0083 GR - 16 A$keypad_display$540 0086 GR - 16 A$keypad_display$541 0087 GR - 16 A$keypad_display$546 0089 GR - 16 A$keypad_display$550 008B GR - 16 A$keypad_display$551 008D GR - 16 A$keypad_display$552 0090 GR - 16 A$keypad_display$553 0091 GR - 16 A$keypad_display$558 0093 GR - 16 A$keypad_display$562 0095 GR - 16 A$keypad_display$563 0097 GR - 16 A$keypad_display$564 009A GR - 16 A$keypad_display$565 009B GR - 16 A$keypad_display$570 009D GR - 16 A$keypad_display$574 009F GR - 16 A$keypad_display$575 00A1 GR - 16 A$keypad_display$576 00A4 GR - 16 A$keypad_display$577 00A5 GR - 16 A$keypad_display$583 00A7 GR - 16 A$keypad_display$584 00A9 GR - 16 A$keypad_display$585 00AA GR - 16 A$keypad_display$586 00AD GR - 16 A$keypad_display$590 00AF GR - AC 00D6 - ACC 00E0 - ACC.0 00E0 - ACC.1 00E1 - ACC.2 00E2 - ACC.3 00E3 - ACC.4 00E4 - ACC.5 00E5 - ACC.6 00E6 - ACC.7 00E7 - B 00F0 - B.0 00F0 - B.1 00F1 - B.2 00F2 - B.3 00F3 - B.4 00F4 - B.5 00F5 - B.6 00F6 - B.7 00F7 - 16 C$keypad_display.c$38$0$0 = 0000 GR - 16 C$keypad_display.c$40$1$1 = 0000 GR - 16 C$keypad_display.c$41$2$2 = 00A7 GR - 16 C$keypad_display.c$42$3$3 = 0012 GR - 16 C$keypad_display.c$48$3$3 = 0022 GR - 16 C$keypad_display.c$53$3$3 = 0025 GR - 16 C$keypad_display.c$54$3$3 = 0028 GR - 16 C$keypad_display.c$56$3$3 = 002B GR - 16 C$keypad_display.c$57$4$4 = 0030 GR - 16 C$keypad_display.c$58$3$3 = 0035 GR - 16 C$keypad_display.c$59$4$5 = 003A GR - 16 C$keypad_display.c$60$3$3 = 003F GR - 16 C$keypad_display.c$61$4$6 = 0044 GR - 16 C$keypad_display.c$62$3$3 = 0049 GR - 16 C$keypad_display.c$63$4$7 = 0051 GR - 16 C$keypad_display.c$65$3$3 = 0054 GR - 16 C$keypad_display.c$68$3$3 = 0054 GR - 16 C$keypad_display.c$69$4$9 = 007F GR - 16 C$keypad_display.c$70$4$9 = 0081 GR - 16 C$keypad_display.c$71$4$9 = 0089 GR - 16 C$keypad_display.c$72$4$9 = 0089 GR - 16 C$keypad_display.c$73$4$9 = 008B GR - 16 C$keypad_display.c$74$4$9 = 0093 GR - 16 C$keypad_display.c$75$4$9 = 0093 GR - 16 C$keypad_display.c$76$4$9 = 0095 GR - 16 C$keypad_display.c$77$4$9 = 009D GR - 16 C$keypad_display.c$78$4$9 = 009D GR - 16 C$keypad_display.c$79$4$9 = 009F GR - 16 C$keypad_display.c$81$2$2 = 00A7 GR - 16 C$keypad_display.c$84$1$1 = 00AF GR - CPRL2 00C8 - CT2 00C9 - CY 00D7 - DPH 0083 - DPL 0082 - EA 00AF - ES 00AC - ET0 00A9 - ET1 00AB - ET2 00AD - EX0 00A8 - EX1 00AA - EXEN2 00CB - EXF2 00CE - F0 00D5 - 17 Fkeypad_display$display_0$0$0 = 0004 GR - 17 Fkeypad_display$display_1$0$0 = 0008 GR - 17 Fkeypad_display$display_2$0$0 = 000C GR - 17 Fkeypad_display$display_3$0$0 = 0010 GR - 17 Fkeypad_display$keypad$0$0 = 0000 GR - G$AC$0$0 = 00D6 G - G$ACC$0$0 = 00E0 G - G$B$0$0 = 00F0 G - G$CY$0$0 = 00D7 G - G$DPH$0$0 = 0083 G - G$DPL$0$0 = 0082 G - G$EA$0$0 = 00AF G - G$ES$0$0 = 00AC G - G$ET0$0$0 = 00A9 G - G$ET1$0$0 = 00AB G - G$EX0$0$0 = 00A8 G - G$EX1$0$0 = 00AA G - G$F0$0$0 = 00D5 G - G$F1$0$0 = 00D1 G - G$IE$0$0 = 00A8 G - G$IE0$0$0 = 0089 G - G$IE1$0$0 = 008B G - G$INT0$0$0 = 00B2 G - G$INT1$0$0 = 00B3 G - G$IP$0$0 = 00B8 G - G$IT0$0$0 = 0088 G - G$IT1$0$0 = 008A G - G$OV$0$0 = 00D2 G - G$P$0$0 = 00D0 G - G$P0$0$0 = 0080 G - G$P0_0$0$0 = 0080 G - G$P0_1$0$0 = 0081 G - G$P0_2$0$0 = 0082 G - G$P0_3$0$0 = 0083 G - G$P0_4$0$0 = 0084 G - G$P0_5$0$0 = 0085 G - G$P0_6$0$0 = 0086 G - G$P0_7$0$0 = 0087 G - G$P1$0$0 = 0090 G - G$P1_0$0$0 = 0090 G - G$P1_1$0$0 = 0091 G - G$P1_2$0$0 = 0092 G - G$P1_3$0$0 = 0093 G - G$P1_4$0$0 = 0094 G - G$P1_5$0$0 = 0095 G - G$P1_6$0$0 = 0096 G - G$P1_7$0$0 = 0097 G - G$P2$0$0 = 00A0 G - G$P2_0$0$0 = 00A0 G - G$P2_1$0$0 = 00A1 G - G$P2_2$0$0 = 00A2 G - G$P2_3$0$0 = 00A3 G - G$P2_4$0$0 = 00A4 G - G$P2_5$0$0 = 00A5 G - G$P2_6$0$0 = 00A6 G - G$P2_7$0$0 = 00A7 G - G$P3$0$0 = 00B0 G - G$P3_0$0$0 = 00B0 G - G$P3_1$0$0 = 00B1 G - G$P3_2$0$0 = 00B2 G - G$P3_3$0$0 = 00B3 G - G$P3_4$0$0 = 00B4 G - G$P3_5$0$0 = 00B5 G - G$P3_6$0$0 = 00B6 G - G$P3_7$0$0 = 00B7 G - G$PCON$0$0 = 0087 G - G$PS$0$0 = 00BC G - G$PSW$0$0 = 00D0 G - G$PT0$0$0 = 00B9 G - G$PT1$0$0 = 00BB G - G$PX0$0$0 = 00B8 G - G$PX1$0$0 = 00BA G - G$RB8$0$0 = 009A G - G$RD$0$0 = 00B7 G - G$REN$0$0 = 009C G - G$RI$0$0 = 0098 G - G$RS0$0$0 = 00D3 G - G$RS1$0$0 = 00D4 G - G$RXD$0$0 = 00B0 G - G$SBUF$0$0 = 0099 G - G$SCON$0$0 = 0098 G - G$SM0$0$0 = 009F G - G$SM1$0$0 = 009E G - G$SM2$0$0 = 009D G - G$SP$0$0 = 0081 G - G$T0$0$0 = 00B4 G - G$T1$0$0 = 00B5 G - G$TB8$0$0 = 009B G - G$TCON$0$0 = 0088 G - G$TF0$0$0 = 008D G - G$TF1$0$0 = 008F G - G$TH0$0$0 = 008C G - G$TH1$0$0 = 008D G - G$TI$0$0 = 0099 G - G$TL0$0$0 = 008A G - G$TL1$0$0 = 008B G - G$TMOD$0$0 = 0089 G - G$TR0$0$0 = 008C G - G$TR1$0$0 = 008E G - G$TXD$0$0 = 00B1 G - G$WR$0$0 = 00B6 G - 16 G$main$0$0 = 0000 GR - 3 G$row$0$0 = 0001 GR - 3 G$state$0$0 = 0000 GR - IE 00A8 - IE.0 00A8 - IE.1 00A9 - IE.2 00AA - IE.3 00AB - IE.4 00AC - IE.5 00AD - IE.7 00AF - IE0 0089 - IE1 008B - INT0 00B2 - INT1 00B3 - IP 00B8 - IP.0 00B8 - IP.1 00B9 - IP.2 00BA - IP.3 00BB - IP.4 00BC - IP.5 00BD - IT0 0088 - IT1 008A - OV 00D2 - P 00D0 - P0 0080 - P0.0 0080 - P0.1 0081 - P0.2 0082 - P0.3 0083 - P0.4 0084 - P0.5 0085 - P0.6 0086 - P0.7 0087 - P1 0090 - P1.0 0090 - P1.1 0091 - P1.2 0092 - P1.3 0093 - P1.4 0094 - P1.5 0095 - P1.6 0096 - P1.7 0097 - P2 00A0 - P2.0 00A0 - P2.1 00A1 - P2.2 00A2 - P2.3 00A3 - P2.4 00A4 - P2.5 00A5 - P2.6 00A6 - P2.7 00A7 - P3 00B0 - P3.0 00B0 - P3.1 00B1 - P3.2 00B2 - P3.3 00B3 - P3.4 00B4 - P3.5 00B5 - P3.6 00B6 - P3.7 00B7 - PCON 0087 - PS 00BC - PSW 00D0 - PSW.0 00D0 - PSW.1 00D1 - PSW.2 00D2 - PSW.3 00D3 - PSW.4 00D4 - PSW.5 00D5 - PSW.6 00D6 - PSW.7 00D7 - PT0 00B9 - PT1 00BB - PT2 00BD - PX0 00B8 - PX1 00BA - RB8 009A - RCAP2H 00CB - RCAP2L 00CA - RCLK 00CD - REN 009C - RI 0098 - RS0 00D3 - RS1 00D4 - RXD 00B0 - SBUF 0099 - SCON 0098 - SCON.0 0098 - SCON.1 0099 - SCON.2 009A - SCON.3 009B - SCON.4 009C - SCON.5 009D - SCON.6 009E - SCON.7 009F - SM0 009F - SM1 009E - SM2 009D - SP 0081 - T2CON 00C8 - T2CON.0 00C8 - T2CON.1 00C9 - T2CON.2 00CA - T2CON.3 00CB - T2CON.4 00CC - T2CON.5 00CD - T2CON.6 00CE - T2CON.7 00CF - TB8 009B - TCLK 00CC - TCON 0088 - TCON.0 0088 - TCON.1 0089 - TCON.2 008A - TCON.3 008B - TCON.4 008C - TCON.5 008D - TCON.6 008E - TCON.7 008F - TF0 008D - TF1 008F - TF2 00CF - TH0 008C - TH1 008D - TH2 00CD - TI 0099 - TL0 008A - TL1 008B - TL2 00CC - TMOD 0089 - TR0 008C - TR1 008E - TR2 00CA - TXD 00B1 - 16 XG$main$0$0 = 00AF GR - _AC = 00D6 G - _ACC = 00E0 G - _B = 00F0 G - _CY = 00D7 G - _DPH = 0083 G - _DPL = 0082 G - _EA = 00AF G - _ES = 00AC G - _ET0 = 00A9 G - _ET1 = 00AB G - _EX0 = 00A8 G - _EX1 = 00AA G - _F0 = 00D5 G - _F1 = 00D1 G - _IE = 00A8 G - _IE0 = 0089 G - _IE1 = 008B G - _INT0 = 00B2 G - _INT1 = 00B3 G - _IP = 00B8 G - _IT0 = 0088 G - _IT1 = 008A G - _OV = 00D2 G - _P = 00D0 G - _P0 = 0080 G - _P0_0 = 0080 G - _P0_1 = 0081 G - _P0_2 = 0082 G - _P0_3 = 0083 G - _P0_4 = 0084 G - _P0_5 = 0085 G - _P0_6 = 0086 G - _P0_7 = 0087 G - _P1 = 0090 G - _P1_0 = 0090 G - _P1_1 = 0091 G - _P1_2 = 0092 G - _P1_3 = 0093 G - _P1_4 = 0094 G - _P1_5 = 0095 G - _P1_6 = 0096 G - _P1_7 = 0097 G - _P2 = 00A0 G - _P2_0 = 00A0 G - _P2_1 = 00A1 G - _P2_2 = 00A2 G - _P2_3 = 00A3 G - _P2_4 = 00A4 G - _P2_5 = 00A5 G - _P2_6 = 00A6 G - _P2_7 = 00A7 G - _P3 = 00B0 G - _P3_0 = 00B0 G - _P3_1 = 00B1 G - _P3_2 = 00B2 G - _P3_3 = 00B3 G - _P3_4 = 00B4 G - _P3_5 = 00B5 G - _P3_6 = 00B6 G - _P3_7 = 00B7 G - _PCON = 0087 G - _PS = 00BC G - _PSW = 00D0 G - _PT0 = 00B9 G - _PT1 = 00BB G - _PX0 = 00B8 G - _PX1 = 00BA G - _RB8 = 009A G - _RD = 00B7 G - _REN = 009C G - _RI = 0098 G - _RS0 = 00D3 G - _RS1 = 00D4 G - _RXD = 00B0 G - _SBUF = 0099 G - _SCON = 0098 G - _SM0 = 009F G - _SM1 = 009E G - _SM2 = 009D G - _SP = 0081 G - _T0 = 00B4 G - _T1 = 00B5 G - _TB8 = 009B G - _TCON = 0088 G - _TF0 = 008D G - _TF1 = 008F G - _TH0 = 008C G - _TH1 = 008D G - _TI = 0099 G - _TL0 = 008A G - _TL1 = 008B G - _TMOD = 0089 G - _TR0 = 008C G - _TR1 = 008E G - _TXD = 00B1 G - _WR = 00B6 G - D __interrupt_vect 0000 R - __mcs51_genRAMCLEAR **** GX - __mcs51_genXINIT **** GX - __mcs51_genXRAMCLEAR **** GX - __sdcc_gsinit_startup **** GX - D __sdcc_program_startup 0003 GR - 5 __start__stack 0000 GR - 17 _display_0 0004 R - 17 _display_1 0008 R - 17 _display_2 000C R - 17 _display_3 0010 R - 17 _keypad 0000 R - 16 _main 0000 GR - 3 _row 0001 GR - 3 _state 0000 GR - a 00D6 - ac 00D6 - acc 00E0 - acc.0 00E0 - acc.1 00E1 - acc.2 00E2 - acc.3 00E3 - acc.4 00E4 - acc.5 00E5 - acc.6 00E6 - acc.7 00E7 - ar0 = 0000 - ar1 = 0001 - ar2 = 0002 - ar3 = 0003 - ar4 = 0004 - ar5 = 0005 - ar6 = 0006 - ar7 = 0007 - b 00F0 - b.0 00F0 - b.1 00F1 - b.2 00F2 - b.3 00F3 - b.4 00F4 - b.5 00F5 - b.6 00F6 - b.7 00F7 - cprl2 00C8 - ct2 00C9 - cy 00D7 - dph 0083 - dpl 0082 - ea 00AF - es 00AC - et0 00A9 - et1 00AB - et2 00AD - ex0 00A8 - ex1 00AA - exen2 00CB - exf2 00CE - f0 00D5 - ie 00A8 - ie.0 00A8 - ie.1 00A9 - ie.2 00AA - ie.3 00AB - ie.4 00AC - ie.5 00AD - ie.7 00AF - ie0 0089 - ie1 008B - int0 00B2 - int1 00B3 - ip 00B8 - ip.0 00B8 - ip.1 00B9 - ip.2 00BA - ip.3 00BB - ip.4 00BC - ip.5 00BD - it0 0088 - it1 008A - ov 00D2 - p 00D0 - p0 0080 - p0.0 0080 - p0.1 0081 - p0.2 0082 - p0.3 0083 - p0.4 0084 - p0.5 0085 - p0.6 0086 - p0.7 0087 - p1 0090 - p1.0 0090 - p1.1 0091 - p1.2 0092 - p1.3 0093 - p1.4 0094 - p1.5 0095 - p1.6 0096 - p1.7 0097 - p2 00A0 - p2.0 00A0 - p2.1 00A1 - p2.2 00A2 - p2.3 00A3 - p2.4 00A4 - p2.5 00A5 - p2.6 00A6 - p2.7 00A7 - p3 00B0 - p3.0 00B0 - p3.1 00B1 - p3.2 00B2 - p3.3 00B3 - p3.4 00B4 - p3.5 00B5 - p3.6 00B6 - p3.7 00B7 - pcon 0087 - ps 00BC - psw 00D0 - psw.0 00D0 - psw.1 00D1 - psw.2 00D2 - psw.3 00D3 - psw.4 00D4 - psw.5 00D5 - psw.6 00D6 - psw.7 00D7 - pt0 00B9 - pt1 00BB - pt2 00BD - px0 00B8 - px1 00BA - rb8 009A - rcap2h 00CB - rcap2l 00CA - rclk 00CD - ren 009C - ri 0098 - rs0 00D3 - rs1 00D4 - rxd 00B0 - sbuf 0099 - scon 0098 - scon.0 0098 - scon.1 0099 - scon.2 009A - scon.3 009B - scon.4 009C - scon.5 009D - scon.6 009E - scon.7 009F - sm0 009F - sm1 009E - sm2 009D - sp 0081 - t2con 00C8 - t2con.0 00C8 - t2con.1 00C9 - t2con.2 00CA - t2con.3 00CB - t2con.4 00CC - t2con.5 00CD - t2con.6 00CE - t2con.7 00CF - tb8 009B - tclk 00CC - tcon 0088 - tcon.0 0088 - tcon.1 0089 - tcon.2 008A - tcon.3 008B - tcon.4 008C - tcon.5 008D - tcon.6 008E - tcon.7 008F - tf0 008D - tf1 008F - tf2 00CF - th0 008C - th1 008D - th2 00CD - ti 0099 - tl0 008A - tl1 008B - tl2 00CC - tmod 0089 - tr0 008C - tr1 008E - tr2 00CA - txd 00B1 - -ASxxxx Assembler V01.70 + NoICE + SDCC mods + Flat24 Feb-1999 (Intel 8051), page 2. - -Area Table - - 0 _CODE size 0 flags 0 - 1 RSEG size 0 flags 0 - 2 REG_BANK_0 size 8 flags 4 - 3 DSEG size 3 flags 0 - 4 OSEG size 0 flags 4 - 5 SSEG size 1 flags 0 - 6 ISEG size 0 flags 0 - 7 IABS size 0 flags 8 - 8 BSEG size 0 flags 80 - 9 PSEG size 0 flags 50 - A XSEG size 0 flags 40 - B XABS size 0 flags 48 - C XISEG size 0 flags 40 - D HOME size 8 flags 20 - E GSINIT0 size 0 flags 20 - F GSINIT1 size 0 flags 20 - 10 GSINIT2 size 0 flags 20 - 11 GSINIT3 size 0 flags 20 - 12 GSINIT4 size 0 flags 20 - 13 GSINIT5 size 0 flags 20 - 14 GSINIT size 0 flags 20 - 15 GSFINAL size 3 flags 20 - 16 CSEG size B2 flags 20 - 17 CONST size 14 flags 20 - 18 XINIT size 0 flags 20 - 19 CABS size 0 flags 28 diff --git a/demo/keypad_display.vhw b/demo/keypad_display.vhw index 0a716f1..6df481e 100644 --- a/demo/keypad_display.vhw +++ b/demo/keypad_display.vhw @@ -3,4 +3,4 @@ # Project: Demo-project LedDisplay {{4 3 0 3 5 3 1 3 6 3 2 3 7 3 3 3} {4 3 0 7 5 2 1 6 6 0 2 5 7 - 3 4} 230x170+335+204 {Number of pressed key} red 1} -MatrixKeyPad {{4 1 0 1 5 1 1 1 6 1 2 1 7 1 3 1} {4 7 0 3 5 6 1 2 6 5 2 1 7 4 3 0} 225x235+79+174 {Pres any button and wait ...} {0 0 1 0 2 1 3 0 4 0 5 0 6 0 7 0 8 0 9 0 10 0 11 0 12 0 13 0 14 0 15 0} 1} +MatrixKeyPad {{4 1 0 1 5 1 1 1 6 1 2 1 7 1 3 1} {4 7 0 3 5 6 1 2 6 5 2 1 7 4 3 0} 225x235+79+174 {Click on any button and wait ...} {0 0 1 0 2 1 3 0 4 0 5 0 6 0 7 0 8 0 9 0 10 0 11 0 12 0 13 0 14 0 15 0} 1} diff --git a/demo/ledmatrix.adb b/demo/ledmatrix.adb deleted file mode 100644 index d573f21..0000000 --- a/demo/ledmatrix.adb +++ /dev/null @@ -1,102 +0,0 @@ -M:ledmatrix -F:G$main$0$0({2}DF,SI:S),C,0,0,0,0,0 -S:Lmain$i$1$1({2}SI:S),R,0,0,[r2,r3] -S:G$P0$0$0({1}SC:U),I,0,0 -S:G$SP$0$0({1}SC:U),I,0,0 -S:G$DPL$0$0({1}SC:U),I,0,0 -S:G$DPH$0$0({1}SC:U),I,0,0 -S:G$PCON$0$0({1}SC:U),I,0,0 -S:G$TCON$0$0({1}SC:U),I,0,0 -S:G$TMOD$0$0({1}SC:U),I,0,0 -S:G$TL0$0$0({1}SC:U),I,0,0 -S:G$TL1$0$0({1}SC:U),I,0,0 -S:G$TH0$0$0({1}SC:U),I,0,0 -S:G$TH1$0$0({1}SC:U),I,0,0 -S:G$P1$0$0({1}SC:U),I,0,0 -S:G$SCON$0$0({1}SC:U),I,0,0 -S:G$SBUF$0$0({1}SC:U),I,0,0 -S:G$P2$0$0({1}SC:U),I,0,0 -S:G$IE$0$0({1}SC:U),I,0,0 -S:G$P3$0$0({1}SC:U),I,0,0 -S:G$IP$0$0({1}SC:U),I,0,0 -S:G$PSW$0$0({1}SC:U),I,0,0 -S:G$ACC$0$0({1}SC:U),I,0,0 -S:G$A$0$0({1}SC:U),I,0,0 -S:G$B$0$0({1}SC:U),I,0,0 -S:G$P0_0$0$0({1}SX:U),J,0,0 -S:G$P0_1$0$0({1}SX:U),J,0,0 -S:G$P0_2$0$0({1}SX:U),J,0,0 -S:G$P0_3$0$0({1}SX:U),J,0,0 -S:G$P0_4$0$0({1}SX:U),J,0,0 -S:G$P0_5$0$0({1}SX:U),J,0,0 -S:G$P0_6$0$0({1}SX:U),J,0,0 -S:G$P0_7$0$0({1}SX:U),J,0,0 -S:G$IT0$0$0({1}SX:U),J,0,0 -S:G$IE0$0$0({1}SX:U),J,0,0 -S:G$IT1$0$0({1}SX:U),J,0,0 -S:G$IE1$0$0({1}SX:U),J,0,0 -S:G$TR0$0$0({1}SX:U),J,0,0 -S:G$TF0$0$0({1}SX:U),J,0,0 -S:G$TR1$0$0({1}SX:U),J,0,0 -S:G$TF1$0$0({1}SX:U),J,0,0 -S:G$P1_0$0$0({1}SX:U),J,0,0 -S:G$P1_1$0$0({1}SX:U),J,0,0 -S:G$P1_2$0$0({1}SX:U),J,0,0 -S:G$P1_3$0$0({1}SX:U),J,0,0 -S:G$P1_4$0$0({1}SX:U),J,0,0 -S:G$P1_5$0$0({1}SX:U),J,0,0 -S:G$P1_6$0$0({1}SX:U),J,0,0 -S:G$P1_7$0$0({1}SX:U),J,0,0 -S:G$RI$0$0({1}SX:U),J,0,0 -S:G$TI$0$0({1}SX:U),J,0,0 -S:G$RB8$0$0({1}SX:U),J,0,0 -S:G$TB8$0$0({1}SX:U),J,0,0 -S:G$REN$0$0({1}SX:U),J,0,0 -S:G$SM2$0$0({1}SX:U),J,0,0 -S:G$SM1$0$0({1}SX:U),J,0,0 -S:G$SM0$0$0({1}SX:U),J,0,0 -S:G$P2_0$0$0({1}SX:U),J,0,0 -S:G$P2_1$0$0({1}SX:U),J,0,0 -S:G$P2_2$0$0({1}SX:U),J,0,0 -S:G$P2_3$0$0({1}SX:U),J,0,0 -S:G$P2_4$0$0({1}SX:U),J,0,0 -S:G$P2_5$0$0({1}SX:U),J,0,0 -S:G$P2_6$0$0({1}SX:U),J,0,0 -S:G$P2_7$0$0({1}SX:U),J,0,0 -S:G$EX0$0$0({1}SX:U),J,0,0 -S:G$ET0$0$0({1}SX:U),J,0,0 -S:G$EX1$0$0({1}SX:U),J,0,0 -S:G$ET1$0$0({1}SX:U),J,0,0 -S:G$ES$0$0({1}SX:U),J,0,0 -S:G$EA$0$0({1}SX:U),J,0,0 -S:G$P3_0$0$0({1}SX:U),J,0,0 -S:G$P3_1$0$0({1}SX:U),J,0,0 -S:G$P3_2$0$0({1}SX:U),J,0,0 -S:G$P3_3$0$0({1}SX:U),J,0,0 -S:G$P3_4$0$0({1}SX:U),J,0,0 -S:G$P3_5$0$0({1}SX:U),J,0,0 -S:G$P3_6$0$0({1}SX:U),J,0,0 -S:G$P3_7$0$0({1}SX:U),J,0,0 -S:G$RXD$0$0({1}SX:U),J,0,0 -S:G$TXD$0$0({1}SX:U),J,0,0 -S:G$INT0$0$0({1}SX:U),J,0,0 -S:G$INT1$0$0({1}SX:U),J,0,0 -S:G$T0$0$0({1}SX:U),J,0,0 -S:G$T1$0$0({1}SX:U),J,0,0 -S:G$WR$0$0({1}SX:U),J,0,0 -S:G$RD$0$0({1}SX:U),J,0,0 -S:G$PX0$0$0({1}SX:U),J,0,0 -S:G$PT0$0$0({1}SX:U),J,0,0 -S:G$PX1$0$0({1}SX:U),J,0,0 -S:G$PT1$0$0({1}SX:U),J,0,0 -S:G$PS$0$0({1}SX:U),J,0,0 -S:G$P$0$0({1}SX:U),J,0,0 -S:G$FL$0$0({1}SX:U),J,0,0 -S:G$OV$0$0({1}SX:U),J,0,0 -S:G$RS0$0$0({1}SX:U),J,0,0 -S:G$RS1$0$0({1}SX:U),J,0,0 -S:G$F0$0$0({1}SX:U),J,0,0 -S:G$AC$0$0({1}SX:U),J,0,0 -S:G$CY$0$0({1}SX:U),J,0,0 -S:G$main$0$0({2}DF,SI:S),C,0,0 -S:Fledmatrix$image$0$0({8}DA8,SC:S),D,0,0 diff --git a/demo/ledmatrix.asm b/demo/ledmatrix.asm deleted file mode 100644 index d1b8e55..0000000 --- a/demo/ledmatrix.asm +++ /dev/null @@ -1,494 +0,0 @@ -;-------------------------------------------------------- -; File Created by SDCC : free open source ANSI-C Compiler -; Version 2.9.0 #5416 (Oct 6 2009) (UNIX) -; This file was generated Mon Oct 19 23:11:07 2009 -;-------------------------------------------------------- - .module ledmatrix - .optsdcc -mmcs51 --model-small - -;-------------------------------------------------------- -; Public variables in this module -;-------------------------------------------------------- - .globl _main - .globl _CY - .globl _AC - .globl _F0 - .globl _RS1 - .globl _RS0 - .globl _OV - .globl _FL - .globl _P - .globl _PS - .globl _PT1 - .globl _PX1 - .globl _PT0 - .globl _PX0 - .globl _RD - .globl _WR - .globl _T1 - .globl _T0 - .globl _INT1 - .globl _INT0 - .globl _TXD - .globl _RXD - .globl _P3_7 - .globl _P3_6 - .globl _P3_5 - .globl _P3_4 - .globl _P3_3 - .globl _P3_2 - .globl _P3_1 - .globl _P3_0 - .globl _EA - .globl _ES - .globl _ET1 - .globl _EX1 - .globl _ET0 - .globl _EX0 - .globl _P2_7 - .globl _P2_6 - .globl _P2_5 - .globl _P2_4 - .globl _P2_3 - .globl _P2_2 - .globl _P2_1 - .globl _P2_0 - .globl _SM0 - .globl _SM1 - .globl _SM2 - .globl _REN - .globl _TB8 - .globl _RB8 - .globl _TI - .globl _RI - .globl _P1_7 - .globl _P1_6 - .globl _P1_5 - .globl _P1_4 - .globl _P1_3 - .globl _P1_2 - .globl _P1_1 - .globl _P1_0 - .globl _TF1 - .globl _TR1 - .globl _TF0 - .globl _TR0 - .globl _IE1 - .globl _IT1 - .globl _IE0 - .globl _IT0 - .globl _P0_7 - .globl _P0_6 - .globl _P0_5 - .globl _P0_4 - .globl _P0_3 - .globl _P0_2 - .globl _P0_1 - .globl _P0_0 - .globl _B - .globl _A - .globl _ACC - .globl _PSW - .globl _IP - .globl _P3 - .globl _IE - .globl _P2 - .globl _SBUF - .globl _SCON - .globl _P1 - .globl _TH1 - .globl _TH0 - .globl _TL1 - .globl _TL0 - .globl _TMOD - .globl _TCON - .globl _PCON - .globl _DPH - .globl _DPL - .globl _SP - .globl _P0 -;-------------------------------------------------------- -; special function registers -;-------------------------------------------------------- - .area RSEG (DATA) -G$P0$0$0 == 0x0080 -_P0 = 0x0080 -G$SP$0$0 == 0x0081 -_SP = 0x0081 -G$DPL$0$0 == 0x0082 -_DPL = 0x0082 -G$DPH$0$0 == 0x0083 -_DPH = 0x0083 -G$PCON$0$0 == 0x0087 -_PCON = 0x0087 -G$TCON$0$0 == 0x0088 -_TCON = 0x0088 -G$TMOD$0$0 == 0x0089 -_TMOD = 0x0089 -G$TL0$0$0 == 0x008a -_TL0 = 0x008a -G$TL1$0$0 == 0x008b -_TL1 = 0x008b -G$TH0$0$0 == 0x008c -_TH0 = 0x008c -G$TH1$0$0 == 0x008d -_TH1 = 0x008d -G$P1$0$0 == 0x0090 -_P1 = 0x0090 -G$SCON$0$0 == 0x0098 -_SCON = 0x0098 -G$SBUF$0$0 == 0x0099 -_SBUF = 0x0099 -G$P2$0$0 == 0x00a0 -_P2 = 0x00a0 -G$IE$0$0 == 0x00a8 -_IE = 0x00a8 -G$P3$0$0 == 0x00b0 -_P3 = 0x00b0 -G$IP$0$0 == 0x00b8 -_IP = 0x00b8 -G$PSW$0$0 == 0x00d0 -_PSW = 0x00d0 -G$ACC$0$0 == 0x00e0 -_ACC = 0x00e0 -G$A$0$0 == 0x00e0 -_A = 0x00e0 -G$B$0$0 == 0x00f0 -_B = 0x00f0 -;-------------------------------------------------------- -; special function bits -;-------------------------------------------------------- - .area RSEG (DATA) -G$P0_0$0$0 == 0x0080 -_P0_0 = 0x0080 -G$P0_1$0$0 == 0x0081 -_P0_1 = 0x0081 -G$P0_2$0$0 == 0x0082 -_P0_2 = 0x0082 -G$P0_3$0$0 == 0x0083 -_P0_3 = 0x0083 -G$P0_4$0$0 == 0x0084 -_P0_4 = 0x0084 -G$P0_5$0$0 == 0x0085 -_P0_5 = 0x0085 -G$P0_6$0$0 == 0x0086 -_P0_6 = 0x0086 -G$P0_7$0$0 == 0x0087 -_P0_7 = 0x0087 -G$IT0$0$0 == 0x0088 -_IT0 = 0x0088 -G$IE0$0$0 == 0x0089 -_IE0 = 0x0089 -G$IT1$0$0 == 0x008a -_IT1 = 0x008a -G$IE1$0$0 == 0x008b -_IE1 = 0x008b -G$TR0$0$0 == 0x008c -_TR0 = 0x008c -G$TF0$0$0 == 0x008d -_TF0 = 0x008d -G$TR1$0$0 == 0x008e -_TR1 = 0x008e -G$TF1$0$0 == 0x008f -_TF1 = 0x008f -G$P1_0$0$0 == 0x0090 -_P1_0 = 0x0090 -G$P1_1$0$0 == 0x0091 -_P1_1 = 0x0091 -G$P1_2$0$0 == 0x0092 -_P1_2 = 0x0092 -G$P1_3$0$0 == 0x0093 -_P1_3 = 0x0093 -G$P1_4$0$0 == 0x0094 -_P1_4 = 0x0094 -G$P1_5$0$0 == 0x0095 -_P1_5 = 0x0095 -G$P1_6$0$0 == 0x0096 -_P1_6 = 0x0096 -G$P1_7$0$0 == 0x0097 -_P1_7 = 0x0097 -G$RI$0$0 == 0x0098 -_RI = 0x0098 -G$TI$0$0 == 0x0099 -_TI = 0x0099 -G$RB8$0$0 == 0x009a -_RB8 = 0x009a -G$TB8$0$0 == 0x009b -_TB8 = 0x009b -G$REN$0$0 == 0x009c -_REN = 0x009c -G$SM2$0$0 == 0x009d -_SM2 = 0x009d -G$SM1$0$0 == 0x009e -_SM1 = 0x009e -G$SM0$0$0 == 0x009f -_SM0 = 0x009f -G$P2_0$0$0 == 0x00a0 -_P2_0 = 0x00a0 -G$P2_1$0$0 == 0x00a1 -_P2_1 = 0x00a1 -G$P2_2$0$0 == 0x00a2 -_P2_2 = 0x00a2 -G$P2_3$0$0 == 0x00a3 -_P2_3 = 0x00a3 -G$P2_4$0$0 == 0x00a4 -_P2_4 = 0x00a4 -G$P2_5$0$0 == 0x00a5 -_P2_5 = 0x00a5 -G$P2_6$0$0 == 0x00a6 -_P2_6 = 0x00a6 -G$P2_7$0$0 == 0x00a7 -_P2_7 = 0x00a7 -G$EX0$0$0 == 0x00a8 -_EX0 = 0x00a8 -G$ET0$0$0 == 0x00a9 -_ET0 = 0x00a9 -G$EX1$0$0 == 0x00aa -_EX1 = 0x00aa -G$ET1$0$0 == 0x00ab -_ET1 = 0x00ab -G$ES$0$0 == 0x00ac -_ES = 0x00ac -G$EA$0$0 == 0x00af -_EA = 0x00af -G$P3_0$0$0 == 0x00b0 -_P3_0 = 0x00b0 -G$P3_1$0$0 == 0x00b1 -_P3_1 = 0x00b1 -G$P3_2$0$0 == 0x00b2 -_P3_2 = 0x00b2 -G$P3_3$0$0 == 0x00b3 -_P3_3 = 0x00b3 -G$P3_4$0$0 == 0x00b4 -_P3_4 = 0x00b4 -G$P3_5$0$0 == 0x00b5 -_P3_5 = 0x00b5 -G$P3_6$0$0 == 0x00b6 -_P3_6 = 0x00b6 -G$P3_7$0$0 == 0x00b7 -_P3_7 = 0x00b7 -G$RXD$0$0 == 0x00b0 -_RXD = 0x00b0 -G$TXD$0$0 == 0x00b1 -_TXD = 0x00b1 -G$INT0$0$0 == 0x00b2 -_INT0 = 0x00b2 -G$INT1$0$0 == 0x00b3 -_INT1 = 0x00b3 -G$T0$0$0 == 0x00b4 -_T0 = 0x00b4 -G$T1$0$0 == 0x00b5 -_T1 = 0x00b5 -G$WR$0$0 == 0x00b6 -_WR = 0x00b6 -G$RD$0$0 == 0x00b7 -_RD = 0x00b7 -G$PX0$0$0 == 0x00b8 -_PX0 = 0x00b8 -G$PT0$0$0 == 0x00b9 -_PT0 = 0x00b9 -G$PX1$0$0 == 0x00ba -_PX1 = 0x00ba -G$PT1$0$0 == 0x00bb -_PT1 = 0x00bb -G$PS$0$0 == 0x00bc -_PS = 0x00bc -G$P$0$0 == 0x00d0 -_P = 0x00d0 -G$FL$0$0 == 0x00d1 -_FL = 0x00d1 -G$OV$0$0 == 0x00d2 -_OV = 0x00d2 -G$RS0$0$0 == 0x00d3 -_RS0 = 0x00d3 -G$RS1$0$0 == 0x00d4 -_RS1 = 0x00d4 -G$F0$0$0 == 0x00d5 -_F0 = 0x00d5 -G$AC$0$0 == 0x00d6 -_AC = 0x00d6 -G$CY$0$0 == 0x00d7 -_CY = 0x00d7 -;-------------------------------------------------------- -; overlayable register banks -;-------------------------------------------------------- - .area REG_BANK_0 (REL,OVR,DATA) - .ds 8 -;-------------------------------------------------------- -; internal ram data -;-------------------------------------------------------- - .area DSEG (DATA) -;-------------------------------------------------------- -; overlayable items in internal ram -;-------------------------------------------------------- - .area OSEG (OVR,DATA) -;-------------------------------------------------------- -; Stack segment in internal ram -;-------------------------------------------------------- - .area SSEG (DATA) -__start__stack: - .ds 1 - -;-------------------------------------------------------- -; indirectly addressable internal ram data -;-------------------------------------------------------- - .area ISEG (DATA) -;-------------------------------------------------------- -; absolute internal ram data -;-------------------------------------------------------- - .area IABS (ABS,DATA) - .area IABS (ABS,DATA) -;-------------------------------------------------------- -; bit data -;-------------------------------------------------------- - .area BSEG (BIT) -;-------------------------------------------------------- -; paged external ram data -;-------------------------------------------------------- - .area PSEG (PAG,XDATA) -;-------------------------------------------------------- -; external ram data -;-------------------------------------------------------- - .area XSEG (XDATA) -;-------------------------------------------------------- -; absolute external ram data -;-------------------------------------------------------- - .area XABS (ABS,XDATA) -;-------------------------------------------------------- -; external initialized ram data -;-------------------------------------------------------- - .area XISEG (XDATA) - .area HOME (CODE) - .area GSINIT0 (CODE) - .area GSINIT1 (CODE) - .area GSINIT2 (CODE) - .area GSINIT3 (CODE) - .area GSINIT4 (CODE) - .area GSINIT5 (CODE) - .area GSINIT (CODE) - .area GSFINAL (CODE) - .area CSEG (CODE) -;-------------------------------------------------------- -; interrupt vector -;-------------------------------------------------------- - .area HOME (CODE) -__interrupt_vect: - ljmp __sdcc_gsinit_startup -;-------------------------------------------------------- -; global & static initialisations -;-------------------------------------------------------- - .area HOME (CODE) - .area GSINIT (CODE) - .area GSFINAL (CODE) - .area GSINIT (CODE) - .globl __sdcc_gsinit_startup - .globl __sdcc_program_startup - .globl __start__stack - .globl __mcs51_genXINIT - .globl __mcs51_genXRAMCLEAR - .globl __mcs51_genRAMCLEAR - .area GSFINAL (CODE) - ljmp __sdcc_program_startup -;-------------------------------------------------------- -; Home -;-------------------------------------------------------- - .area HOME (CODE) - .area HOME (CODE) -__sdcc_program_startup: - lcall _main -; return from main will lock up - sjmp . -;-------------------------------------------------------- -; code -;-------------------------------------------------------- - .area CSEG (CODE) -;------------------------------------------------------------ -;Allocation info for local variables in function 'main' -;------------------------------------------------------------ -;i Allocated to registers r2 r3 -;------------------------------------------------------------ - G$main$0$0 ==. - C$ledmatrix.c$27$0$0 ==. -; ledmatrix.c:27: int main() -; ----------------------------------------- -; function main -; ----------------------------------------- -_main: - ar2 = 0x02 - ar3 = 0x03 - ar4 = 0x04 - ar5 = 0x05 - ar6 = 0x06 - ar7 = 0x07 - ar0 = 0x00 - ar1 = 0x01 - C$ledmatrix.c$30$1$1 ==. -; ledmatrix.c:30: while(1) { -00102$: - C$ledmatrix.c$31$2$2 ==. -; ledmatrix.c:31: for(i=0; i<8; i++) { - mov r2,#0x00 - mov r3,#0x00 -00104$: - clr c - mov a,r2 - subb a,#0x08 - mov a,r3 - xrl a,#0x80 - subb a,#0x80 - jnc 00102$ - C$ledmatrix.c$32$3$3 ==. -; ledmatrix.c:32: P1 = 0xff; - mov _P1,#0xFF - C$ledmatrix.c$33$3$3 ==. -; ledmatrix.c:33: P0 = image[i]; - mov a,r2 - add a,#_image - mov dpl,a - mov a,r3 - addc a,#(_image >> 8) - mov dph,a - clr a - movc a,@a+dptr - mov _P0,a - C$ledmatrix.c$34$3$3 ==. -; ledmatrix.c:34: P1 = (1 << i) ^ 255; - mov b,r2 - inc b - mov r4,#0x01 - mov r5,#0x00 - sjmp 00115$ -00114$: - mov a,r4 - add a,r4 - mov r4,a - mov a,r5 - rlc a - mov r5,a -00115$: - djnz b,00114$ - mov a,#0xFF - xrl a,r4 - mov _P1,a - C$ledmatrix.c$31$2$2 ==. -; ledmatrix.c:31: for(i=0; i<8; i++) { - inc r2 - cjne r2,#0x00,00104$ - inc r3 - C$ledmatrix.c$37$1$1 ==. - XG$main$0$0 ==. - sjmp 00104$ - .area CSEG (CODE) - .area CONST (CODE) -Fledmatrix$image$0$0 == . -_image: - .db #0xB1 - .db #0x9D - .db #0xBD - .db #0xB1 - .db #0xB7 - .db #0xB7 - .db #0x11 - .db #0xFF - .area XINIT (CODE) - .area CABS (ABS,CODE) diff --git a/demo/ledmatrix.hex b/demo/ledmatrix.hex deleted file mode 100644 index 339b4c0..0000000 --- a/demo/ledmatrix.hex +++ /dev/null @@ -1,26 +0,0 @@ -:03000000020008F3 -:0300610002000397 -:0500030012006480FE04 -:040064007A007B00A3 -:0E006800C3EA9408EB6480948050F17590FF19 -:0A007600EA24A7F582EB3400F583BD -:0E008000E493F5808AF005F07C017D00800697 -:06008E00EC2CFCED33FD3B -:0E009400D5F0F774FF6CF5900ABA00C80B8027 -:0100A200C598 -:0800A700B19DBDB1B7B711FF17 -:06003700E478FFF6D8FD9D -:080015007900E94400601B7A48 -:05001D00009000AF7827 -:030022000075A0C6 -:0A00250000E493F2A308B8000205FE -:08002F00A0D9F4DAF275A0FF7C -:08003D007800E84400600A7934 -:030045000075A0A3 -:0600480000E4F309D8FCFE -:08004E007800E84400600C7921 -:0B00560000900000E4F0A3D8FCD9FAF1 -:03000800758107F8 -:0A000B001200A3E582600302000367 -:0400A3007582002240 -:00000001FF diff --git a/demo/ledmatrix.lnk b/demo/ledmatrix.lnk deleted file mode 100644 index b4c7fe4..0000000 --- a/demo/ledmatrix.lnk +++ /dev/null @@ -1,19 +0,0 @@ --myuxi --Y --a 0x0100 --v 0x0000 --w 0x2000 --z --b HOME = 0x0000 --b ISEG = 0x0000 --b BSEG = 0x0000 --k /usr/libexec/sdcc/../share/sdcc/lib/small --k /usr/share/sdcc/lib/small --l mcs51 --l libsdcc --l libint --l liblong --l libfloat -ledmatrix.rel - --e diff --git a/demo/ledmatrix.lst b/demo/ledmatrix.lst index 43d46a4..e96764e 100644 --- a/demo/ledmatrix.lst +++ b/demo/ledmatrix.lst @@ -1,7 +1,7 @@ 1 ;-------------------------------------------------------- 2 ; File Created by SDCC : free open source ANSI-C Compiler - 3 ; Version 2.9.0 #5416 (Oct 6 2009) (UNIX) - 4 ; This file was generated Mon Oct 19 23:11:07 2009 + 3 ; Version 2.9.0 #5416 (Feb 3 2010) (UNIX) + 4 ; This file was generated Sun Dec 16 06:02:13 2012 5 ;-------------------------------------------------------- 6 .module ledmatrix 7 .optsdcc -mmcs51 --model-small diff --git a/demo/ledmatrix.m5ihib b/demo/ledmatrix.m5ihib deleted file mode 100644 index 40d686b..0000000 --- a/demo/ledmatrix.m5ihib +++ /dev/null @@ -1,599 +0,0 @@ -<?xml version='1.0' encoding='utf-8'?> -<!-- - This is MCU 8051 IDE hibernation data file. - It does not contain program code, only data. - - PLEASE DO NOT EDIT THIS FILE MANUALY, BECAUSE - BAD FORMATING OF THIS FILE WILL LEAD MCU 8051 IDE TO CRASH ! ---> -<!DOCTYPE m5ihib [ - - <!-- ROOT ELEMENT --> - <!ELEMENT m5ihib (currentstate, subprograms, stepback)> - <!-- Root element Parameters: - version - File version - datetime - Date and time of creation - source_file - Souce code compiled and loaded in simulator before hibernation - processor - Processor type - xdata - Size of External data memory - eeprom - Size of data EEPROM - md5 - MD5 hash of the source code file - --> - <!ATTLIST m5ihib - version CDATA #REQUIRED - datetime CDATA #REQUIRED - source_file CDATA #REQUIRED - processor CDATA #REQUIRED - xdata CDATA #REQUIRED - eeprom CDATA #REQUIRED - md5 CDATA #REQUIRED - > - - - <!-- Current state of MCU --> - <!ELEMENT currentstate (iram, eram, xram, eeprom, sfr, special)> - - <!-- Internal data memory in decimal --> - <!ELEMENT iram (#PCDATA)> - - <!-- Expanded data memory in decimal --> - <!ELEMENT eram (#PCDATA)> - - <!-- External data memory in decimal --> - <!ELEMENT xram (#PCDATA)> - - <!-- Data EEPROM in decimal --> - <!ELEMENT eeprom (#PCDATA)> - - <!-- Special function registers --> - <!ELEMENT sfr (addresses, values)> - - <!-- SFR decimal addresses in the same order as in tag values --> - <!ELEMENT addresses (#PCDATA)> - - <!-- SFR decimal values in the same order as in tag values --> - <!ELEMENT values (#PCDATA)> - - <!-- Special engine variables --> - <!ELEMENT special (#PCDATA)> - - - <!-- Content of list of active interrupts --> - <!ELEMENT subprograms (sub)*> - <!-- Parameters of tag "subprograms": - count - Number of recorded subprograms - --> - <!ATTLIST subprograms - count CDATA #REQUIRED - > - - <!-- Active interrupt --> - <!ELEMENT sub EMPTY> - <!-- Parameters of tag "sub": - source - Source address - target - Target address - type - Type - --> - <!ATTLIST sub - source CDATA #REQUIRED - target CDATA #REQUIRED - type CDATA #REQUIRED - > - - - <!-- Stack for stepback function (backward stepping) --> - <!ELEMENT stepback (step)*> - <!-- Parameters of tag "stepback": - stacklength - Number of recorded program steps - --> - <!ATTLIST stepback - stacklength CDATA #REQUIRED - > - - <!-- One program step --> - <!ELEMENT step (spec, normal)> - - <!-- Special engine variables --> - <!ELEMENT spec (#PCDATA)> - - <!-- Ordinary registers --> - <!ELEMENT normal (reg)*> - - <!-- One register --> - <!ELEMENT reg EMPTY> - <!-- Parameters of tag "reg": - type - Memory type (E == ERAM; I == IDATA; X == XDATA; S == SFR) - addr - Register address - val - Previous register value - --> - <!ATTLIST reg - type CDATA #REQUIRED - addr CDATA #REQUIRED - val CDATA #REQUIRED - > - -]> -<m5ihib - version="1.0" - datetime="02/27/09 04:45:11" - source_file="ledmatrix.c" - processor="AT89C51" - xdata="2809" - eeprom="0" - md5="517133F895352F3918C3E1250EA990A5"> - <currentstate> - <iram> - 0 0 0 0 0 0 0 0 - 6 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - </iram> - <eram> - - </eram> - <xram> - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 0 0 0 0 0 0 0 - 0 - </xram> - <eeprom> - - </eeprom> - <sfr> - <addresses> - 152 135 153 136 137 138 139 - 140 176 141 240 160 224 144 - 208 128 129 130 409 131 184 - 168 - </addresses> - <values> - 0 0 247 0 0 0 0 - 0 255 0 0 255 0 255 - 0 255 9 0 120 0 0 - 0 - </values> - </sfr> - <special> - 0 {255 255 255 255 0} 100 0 {} 0 0 0 0 415 415 {} 0 0 0 0 0 0 0 0 2 - </special> - </currentstate> - <subprograms count="1"> - <sub source="6" target="100" type="0"/> - </subprograms> - <stepback stacklength="10"> - <step> - <spec> - 0 {255 255 255 255 0} 61 0 {} 0 0 0 0 401 401 {} 0 0 0 0 0 0 0 0 1 - </spec><normal> - <reg type="I" addr="0" val="0"/> - </normal> - </step> - <step> - <spec> - 0 {255 255 255 255 0} 63 0 {} 0 0 0 0 402 402 {} 0 0 0 0 0 0 0 0 1 - </spec><normal> - <reg type="S" addr="224" val="0"/> - <reg type="S" addr="208" val="0"/> - </normal> - </step> - <step> - <spec> - 0 {255 255 255 255 0} 64 0 {} 0 0 0 0 403 403 {} 0 0 0 0 0 0 0 0 1 - </spec><normal> - <reg type="S" addr="224" val="0"/> - <reg type="S" addr="208" val="0"/> - </normal> - </step> - <step> - <spec> - 0 {255 255 255 255 0} 66 0 {} 0 0 0 0 404 404 {} 0 0 0 0 0 0 0 0 2 - </spec><normal> - </normal> - </step> - <step> - <spec> - 0 {255 255 255 255 0} 78 0 {} 0 0 0 0 406 406 {} 0 0 0 0 0 0 0 0 1 - </spec><normal> - <reg type="I" addr="0" val="0"/> - </normal> - </step> - <step> - <spec> - 0 {255 255 255 255 0} 80 0 {} 0 0 0 0 407 407 {} 0 0 0 0 0 0 0 0 1 - </spec><normal> - <reg type="S" addr="224" val="0"/> - <reg type="S" addr="208" val="0"/> - </normal> - </step> - <step> - <spec> - 0 {255 255 255 255 0} 81 0 {} 0 0 0 0 408 408 {} 0 0 0 0 0 0 0 0 1 - </spec><normal> - <reg type="S" addr="224" val="0"/> - <reg type="S" addr="208" val="0"/> - </normal> - </step> - <step> - <spec> - 0 {255 255 255 255 0} 83 0 {} 0 0 0 0 409 409 {} 0 0 0 0 0 0 0 0 2 - </spec><normal> - </normal> - </step> - <step> - <spec> - 0 {255 255 255 255 0} 97 0 {} 0 0 0 0 411 411 {} 0 0 0 0 0 0 0 0 2 - </spec><normal> - </normal> - </step> - <step> - <spec> - 2 {255 255 255 255 0} 3 0 {} 0 0 0 0 413 413 {} 0 0 0 0 0 0 0 0 2 - </spec><normal> - <reg type="S" addr="129" val="7"/> - <reg type="I" addr="8" val="0"/> - <reg type="I" addr="9" val="0"/> - </normal> - </step> - </stepback> -</m5ihib> diff --git a/demo/ledmatrix.map b/demo/ledmatrix.map deleted file mode 100644 index 0fdab15..0000000 --- a/demo/ledmatrix.map +++ /dev/null @@ -1,454 +0,0 @@ - -Hexadecimal - -Area Addr Size Decimal Bytes (Attributes) --------------------------------- ---- ---- ------- ----- ------------ -CABS 0000 0000 = 0. bytes (ABS,CON,CODE) - - Value Global - -------- -------------------------------- - 0C:FFFFFF00 s_BSEG - 0C:0000 l_BIT_BANK - 0C:0000 l_BSEG - 0C:0000 l_BSEG_BYTES - 0C:0000 l_CABS - 0C:0000 l_GSINIT - 0C:0000 l_GSINIT1 - 0C:0000 l_GSINIT5 - 0C:0000 l_IABS - 0C:0000 l_ISEG - 0C:0000 l_OSEG - 0C:0000 l_PSEG - 0C:0000 l_REG_BANK_1 - 0C:0000 l_REG_BANK_2 - 0C:0000 l_REG_BANK_3 - 0C:0000 l_RSEG - 0C:0000 l_XABS - 0C:0000 l_XINIT - 0C:0000 l_XISEG - 0C:0000 l_XSEG - 0C:0000 l__CODE - 0C:0000 s_BSEG_BYTES - 0C:0000 s_CABS - 0C:0000 s_DSEG - 0C:0000 s_HOME - 0C:0000 s_IABS - 0C:0000 s_ISEG - 0C:0000 s_PSEG - 0C:0000 s_REG_BANK_0 - 0C:0000 s_XABS - 0C:0000 s_XISEG - 0C:0000 s_XSEG - 0C:0003 l_GSFINAL - 0C:0003 l_GSINIT0 - 0C:0008 l_CONST - 0C:0008 l_HOME - 0C:0008 l_REG_BANK_0 - 0C:0008 s_GSINIT0 - 0C:0008 s_REG_BANK_1 - 0C:0008 s_RSEG - 0C:0008 s_SSEG - 0C:000A l_GSINIT2 - 0C:000B s_GSINIT1 - 0C:000B s_GSINIT2 - 0C:0010 s_REG_BANK_2 - 0C:0015 s_GSINIT3 - 0C:0018 s_BIT_BANK - 0C:0018 s_OSEG - 0C:0018 s_REG_BANK_3 - 0C:0020 s__CODE - 0C:0022 l_GSINIT3 - 0C:002A l_GSINIT4 - 0C:0037 s_GSINIT4 - 0C:0043 l_CSEG - 0C:0061 s_GSFINAL - 0C:0061 s_GSINIT - 0C:0061 s_GSINIT5 - 0C:0064 s_CSEG - 0C:0080 l_DSEG - 0C:00A7 s_CONST - 0C:00AF s_XINIT - 0C:00F8 l_SSEG - 0C:0100 l_IRAM - - - -Hexadecimal - -Area Addr Size Decimal Bytes (Attributes) --------------------------------- ---- ---- ------- ----- ------------ -. .ABS. 0000 0000 = 0. bytes (ABS,CON) - - Value Global - -------- -------------------------------- - 0080 G$P0$0$0 - 0080 G$P0_0$0$0 - 0080 _P0 - 0080 _P0_0 - 0081 G$P0_1$0$0 - 0081 G$SP$0$0 - 0081 _P0_1 - 0081 _SP - 0082 G$DPL$0$0 - 0082 G$P0_2$0$0 - 0082 _DPL - 0082 _P0_2 - 0083 G$DPH$0$0 - 0083 G$P0_3$0$0 - 0083 _DPH - 0083 _P0_3 - 0084 G$P0_4$0$0 - 0084 _P0_4 - 0085 G$P0_5$0$0 - 0085 _P0_5 - 0086 G$P0_6$0$0 - 0086 _P0_6 - 0087 G$P0_7$0$0 - 0087 G$PCON$0$0 - 0087 _P0_7 - 0087 _PCON - 0088 G$IT0$0$0 - 0088 G$TCON$0$0 - 0088 _IT0 - 0088 _TCON - 0089 G$IE0$0$0 - 0089 G$TMOD$0$0 - 0089 _IE0 - 0089 _TMOD - 008A G$IT1$0$0 - 008A G$TL0$0$0 - 008A _IT1 - 008A _TL0 - 008B G$IE1$0$0 - 008B G$TL1$0$0 - 008B _IE1 - 008B _TL1 - 008C G$TH0$0$0 - 008C G$TR0$0$0 - 008C _TH0 - 008C _TR0 - 008D G$TF0$0$0 - 008D G$TH1$0$0 - 008D _TF0 - 008D _TH1 - 008E G$TR1$0$0 - 008E _TR1 - 008F G$TF1$0$0 - 008F _TF1 - 0090 G$P1$0$0 - 0090 G$P1_0$0$0 - 0090 _P1 - 0090 _P1_0 - 0091 G$P1_1$0$0 - 0091 _P1_1 - 0092 G$P1_2$0$0 - 0092 _P1_2 - 0093 G$P1_3$0$0 - 0093 _P1_3 - 0094 G$P1_4$0$0 - 0094 _P1_4 - 0095 G$P1_5$0$0 - 0095 _P1_5 - 0096 G$P1_6$0$0 - 0096 _P1_6 - 0097 G$P1_7$0$0 - 0097 _P1_7 - 0098 G$RI$0$0 - 0098 G$SCON$0$0 - 0098 _RI - 0098 _SCON - 0099 G$SBUF$0$0 - 0099 G$TI$0$0 - 0099 _SBUF - 0099 _TI - 009A G$RB8$0$0 - 009A _RB8 - 009B G$TB8$0$0 - 009B _TB8 - 009C G$REN$0$0 - 009C _REN - 009D G$SM2$0$0 - 009D _SM2 - 009E G$SM1$0$0 - 009E _SM1 - 009F G$SM0$0$0 - 009F _SM0 - 00A0 G$P2$0$0 - 00A0 G$P2_0$0$0 - 00A0 _P2 - 00A0 _P2_0 - 00A0 __XPAGE - 00A1 G$P2_1$0$0 - 00A1 _P2_1 - 00A2 G$P2_2$0$0 - 00A2 _P2_2 - 00A3 G$P2_3$0$0 - 00A3 _P2_3 - 00A4 G$P2_4$0$0 - 00A4 _P2_4 - 00A5 G$P2_5$0$0 - 00A5 _P2_5 - 00A6 G$P2_6$0$0 - 00A6 _P2_6 - 00A7 G$P2_7$0$0 - 00A7 _P2_7 - 00A8 G$EX0$0$0 - 00A8 G$IE$0$0 - 00A8 _EX0 - 00A8 _IE - 00A9 G$ET0$0$0 - 00A9 _ET0 - 00AA G$EX1$0$0 - 00AA _EX1 - 00AB G$ET1$0$0 - 00AB _ET1 - 00AC G$ES$0$0 - 00AC _ES - 00AF G$EA$0$0 - 00AF _EA - 00B0 G$P3$0$0 - 00B0 G$P3_0$0$0 - 00B0 G$RXD$0$0 - 00B0 _P3 - 00B0 _P3_0 - 00B0 _RXD - 00B1 G$P3_1$0$0 - 00B1 G$TXD$0$0 - 00B1 _P3_1 - 00B1 _TXD - 00B2 G$INT0$0$0 - 00B2 G$P3_2$0$0 - 00B2 _INT0 - 00B2 _P3_2 - 00B3 G$INT1$0$0 - 00B3 G$P3_3$0$0 - 00B3 _INT1 - 00B3 _P3_3 - 00B4 G$P3_4$0$0 - 00B4 G$T0$0$0 - 00B4 _P3_4 - 00B4 _T0 - 00B5 G$P3_5$0$0 - 00B5 G$T1$0$0 - 00B5 _P3_5 - 00B5 _T1 - 00B6 G$P3_6$0$0 - 00B6 G$WR$0$0 - 00B6 _P3_6 - 00B6 _WR - 00B7 G$P3_7$0$0 - 00B7 G$RD$0$0 - 00B7 _P3_7 - 00B7 _RD - 00B8 G$IP$0$0 - 00B8 G$PX0$0$0 - 00B8 _IP - 00B8 _PX0 - 00B9 G$PT0$0$0 - 00B9 _PT0 - 00BA G$PX1$0$0 - 00BA _PX1 - 00BB G$PT1$0$0 - 00BB _PT1 - 00BC G$PS$0$0 - 00BC _PS - 00D0 G$P$0$0 - 00D0 G$PSW$0$0 - 00D0 _P - 00D0 _PSW - 00D1 G$FL$0$0 - 00D1 _FL - 00D2 G$OV$0$0 - 00D2 _OV - 00D3 G$RS0$0$0 - 00D3 _RS0 - 00D4 G$RS1$0$0 - 00D4 _RS1 - 00D5 G$F0$0$0 - 00D5 _F0 - 00D6 G$AC$0$0 - 00D6 _AC - 00D7 G$CY$0$0 - 00D7 _CY - 00E0 G$A$0$0 - 00E0 G$ACC$0$0 - 00E0 _A - 00E0 _ACC - 00F0 G$B$0$0 - 00F0 _B - - - - - - - - - - - - -Hexadecimal - -Area Addr Size Decimal Bytes (Attributes) --------------------------------- ---- ---- ------- ----- ------------ -SSEG 0008 00F8 = 248. bytes (REL,OVR) - - Value Global - -------- -------------------------------- - 0008 __start__stack - - - - - -Hexadecimal - -Area Addr Size Decimal Bytes (Attributes) --------------------------------- ---- ---- ------- ----- ------------ -HOME 0000 0008 = 8. bytes (REL,CON,CODE) - - Value Global - -------- -------------------------------- - 0C:0000 A$ledmatrix$376 - 0C:0003 A$ledmatrix$398 - 0C:0003 __sdcc_program_startup - 0C:0006 A$ledmatrix$400 - -Hexadecimal - -Area Addr Size Decimal Bytes (Attributes) --------------------------------- ---- ---- ------- ----- ------------ -GSINIT0 0008 0003 = 3. bytes (REL,CON,CODE) - - Value Global - -------- -------------------------------- - 0C:0008 __sdcc_gsinit_startup - - - -Hexadecimal - -Area Addr Size Decimal Bytes (Attributes) --------------------------------- ---- ---- ------- ----- ------------ -GSINIT3 0015 0022 = 34. bytes (REL,CON,CODE) - - Value Global - -------- -------------------------------- - 0C:0015 __mcs51_genXINIT - -Hexadecimal - -Area Addr Size Decimal Bytes (Attributes) --------------------------------- ---- ---- ------- ----- ------------ -GSINIT4 0037 002A = 42. bytes (REL,CON,CODE) - - Value Global - -------- -------------------------------- - 0C:0037 __mcs51_genRAMCLEAR - 0C:003D __mcs51_genXRAMCLEAR - - - -Hexadecimal - -Area Addr Size Decimal Bytes (Attributes) --------------------------------- ---- ---- ------- ----- ------------ -GSFINAL 0061 0003 = 3. bytes (REL,CON,CODE) - - Value Global - -------- -------------------------------- - 0C:0061 A$ledmatrix$391 - -Hexadecimal - -Area Addr Size Decimal Bytes (Attributes) --------------------------------- ---- ---- ------- ----- ------------ -CSEG 0064 0043 = 67. bytes (REL,CON,CODE) - - Value Global - -------- -------------------------------- - 0C:0064 A$ledmatrix$430 - 0C:0064 C$ledmatrix.c$27$0$0 - 0C:0064 C$ledmatrix.c$30$1$1 - 0C:0064 G$main$0$0 - 0C:0064 _main - 0C:0066 A$ledmatrix$431 - 0C:0068 A$ledmatrix$433 - 0C:0069 A$ledmatrix$434 - 0C:006A A$ledmatrix$435 - 0C:006C A$ledmatrix$436 - 0C:006D A$ledmatrix$437 - 0C:006F A$ledmatrix$438 - 0C:0071 A$ledmatrix$439 - 0C:0073 A$ledmatrix$442 - 0C:0073 C$ledmatrix.c$32$3$3 - 0C:0076 A$ledmatrix$445 - 0C:0076 C$ledmatrix.c$33$3$3 - 0C:0077 A$ledmatrix$446 - 0C:0079 A$ledmatrix$447 - 0C:007B A$ledmatrix$448 - 0C:007C A$ledmatrix$449 - 0C:007E A$ledmatrix$450 - 0C:0080 A$ledmatrix$451 - 0C:0081 A$ledmatrix$452 - 0C:0082 A$ledmatrix$453 - 0C:0084 A$ledmatrix$456 - 0C:0084 C$ledmatrix.c$34$3$3 - 0C:0086 A$ledmatrix$457 - 0C:0088 A$ledmatrix$458 - 0C:008A A$ledmatrix$459 - 0C:008C A$ledmatrix$460 - 0C:008E A$ledmatrix$462 - 0C:008F A$ledmatrix$463 - 0C:0090 A$ledmatrix$464 - 0C:0091 A$ledmatrix$465 - 0C:0092 A$ledmatrix$466 - 0C:0093 A$ledmatrix$467 - 0C:0094 A$ledmatrix$469 - 0C:0097 A$ledmatrix$470 - 0C:0099 A$ledmatrix$471 - 0C:009A A$ledmatrix$472 - 0C:009C A$ledmatrix$475 - 0C:009C C$ledmatrix.c$31$2$2 - 0C:009D A$ledmatrix$476 - 0C:00A0 A$ledmatrix$477 - 0C:00A1 A$ledmatrix$480 - 0C:00A1 C$ledmatrix.c$37$1$1 - 0C:00A1 XG$main$0$0 - 0C:00A3 __sdcc_external_startup - -Hexadecimal - -Area Addr Size Decimal Bytes (Attributes) --------------------------------- ---- ---- ------- ----- ------------ -CONST 00A7 0008 = 8. bytes (REL,CON,CODE) - - Value Global - -------- -------------------------------- - 0C:00A7 Fledmatrix$image$0$0 - -ASxxxx Linker V01.75 + NoICE + SDCC Feb 1999, page 1. - -Files Linked [ module(s) ] - -ledmatrix.rel - -Libraries Linked [ object file ] - -/usr/share/sdcc/lib/small/mcs51.lib [ crtclear.rel ] -/usr/share/sdcc/lib/small/mcs51.lib [ crtxinit.rel ] -/usr/share/sdcc/lib/small/mcs51.lib [ crtxclear.rel ] -/usr/share/sdcc/lib/small/mcs51.lib [ crtpagesfr.rel ] -/usr/share/sdcc/lib/small/mcs51.lib [ crtstart.rel ] -/usr/share/sdcc/lib/small/libsdcc.lib [ _startup.rel ] - -ASxxxx Linker V01.75 + NoICE + SDCC Feb 1999, page 2. - -User Base Address Definitions - -HOME = 0x0000 -ISEG = 0x0000 -BSEG = 0x0000 - -
\ No newline at end of file diff --git a/demo/ledmatrix.mem b/demo/ledmatrix.mem deleted file mode 100644 index 0275aa5..0000000 --- a/demo/ledmatrix.mem +++ /dev/null @@ -1,28 +0,0 @@ -Internal RAM layout: - 0 1 2 3 4 5 6 7 8 9 A B C D E F -0x00:|0|0|0|0|0|0|0|0|S|S|S|S|S|S|S|S| -0x10:|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S| -0x20:|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S| -0x30:|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S| -0x40:|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S| -0x50:|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S| -0x60:|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S| -0x70:|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S| -0x80:|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S| -0x90:|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S| -0xa0:|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S| -0xb0:|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S| -0xc0:|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S| -0xd0:|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S| -0xe0:|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S| -0xf0:|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S| -0-3:Reg Banks, T:Bit regs, a-z:Data, B:Bits, Q:Overlay, I:iData, S:Stack, A:Absolute - -Stack starts at: 0x08 (sp set to 0x07) with 248 bytes available. - -Other memory: - Name Start End Size Max - ---------------- -------- -------- -------- -------- - PAGED EXT. RAM 0 0 - EXTERNAL RAM 0 0 - ROM/EPROM/FLASH 0x0000 0x00ae 175 8192 diff --git a/demo/ledmatrix.rel b/demo/ledmatrix.rel deleted file mode 100644 index e4cdd26..0000000 --- a/demo/ledmatrix.rel +++ /dev/null @@ -1,328 +0,0 @@ -;!FILE ledmatrix.asm -XH -H 1A areas FD global symbols -M ledmatrix -O -mmcs51 --model-small -S G$EX0$0$0 Def00A8 -S G$IT0$0$0 Def0088 -S G$TH1$0$0 Def008D -S _P1 Def0090 -S _A Def00E0 -S G$RXD$0$0 Def00B0 -S G$EX1$0$0 Def00AA -S G$TB8$0$0 Def009B -S G$IT1$0$0 Def008A -S G$IE$0$0 Def00A8 -S _P2 Def00A0 -S _B Def00F0 -S _SP Def0081 -S _P3 Def00B0 -S _PS Def00BC -S G$TXD$0$0 Def00B1 -S G$SM0$0$0 Def009F -S G$TL0$0$0 Def008A -S _T0 Def00B4 -S G$SM1$0$0 Def009E -S G$TL1$0$0 Def008B -S _T1 Def00B5 -S _OV Def00D2 -S G$FL$0$0 Def00D1 -S G$SM2$0$0 Def009D -S _ACC Def00E0 -S __mcs51_genRAMCLEAR Ref0000 -S G$PT0$0$0 Def00B9 -S G$RS0$0$0 Def00D3 -S G$PT1$0$0 Def00BB -S _WR Def00B6 -S G$F0$0$0 Def00D5 -S G$RS1$0$0 Def00D4 -S G$RD$0$0 Def00B7 -S G$TR0$0$0 Def008C -S G$TR1$0$0 Def008E -S G$PX0$0$0 Def00B8 -S G$ES$0$0 Def00AC -S G$PX1$0$0 Def00BA -S G$IP$0$0 Def00B8 -S G$PSW$0$0 Def00D0 -S G$RI$0$0 Def0098 -S _P0_0 Def0080 -S G$CY$0$0 Def00D7 -S _PCON Def0087 -S _SBUF Def0099 -S _P0_1 Def0081 -S _P1_0 Def0090 -S _P Def00D0 -S G$TI$0$0 Def0099 -S _P0_2 Def0082 -S _P1_1 Def0091 -S _P2_0 Def00A0 -S _P0_3 Def0083 -S _P1_2 Def0092 -S _P2_1 Def00A1 -S _P3_0 Def00B0 -S _SCON Def0098 -S _P0_4 Def0084 -S _P1_3 Def0093 -S _P2_2 Def00A2 -S _P3_1 Def00B1 -S G$P0$0$0 Def0080 -S _TCON Def0088 -S _TMOD Def0089 -S _P0_5 Def0085 -S _P1_4 Def0094 -S _P2_3 Def00A3 -S _P3_2 Def00B2 -S G$A$0$0 Def00E0 -S G$P1$0$0 Def0090 -S _P0_6 Def0086 -S _P1_5 Def0095 -S _P2_4 Def00A4 -S _P3_3 Def00B3 -S G$B$0$0 Def00F0 -S G$P2$0$0 Def00A0 -S _P0_7 Def0087 -S _P1_6 Def0096 -S _P2_5 Def00A5 -S _P3_4 Def00B4 -S G$PS$0$0 Def00BC -S G$P3$0$0 Def00B0 -S G$SP$0$0 Def0081 -S _P1_7 Def0097 -S _P2_6 Def00A6 -S _P3_5 Def00B5 -S G$T0$0$0 Def00B4 -S _P2_7 Def00A7 -S _P3_6 Def00B6 -S G$OV$0$0 Def00D2 -S G$T1$0$0 Def00B5 -S _P3_7 Def00B7 -S G$ACC$0$0 Def00E0 -S _INT0 Def00B2 -S _DPH Def0083 -S _INT1 Def00B3 -S G$WR$0$0 Def00B6 -S _IE0 Def0089 -S _IE1 Def008B -S _DPL Def0082 -S G$P0_0$0$0 Def0080 -S G$P$0$0 Def00D0 -S G$P1_0$0$0 Def0090 -S G$P0_1$0$0 Def0081 -S G$SBUF$0$0 Def0099 -S G$PCON$0$0 Def0087 -S _AC Def00D6 -S G$P2_0$0$0 Def00A0 -S G$P1_1$0$0 Def0091 -S G$P0_2$0$0 Def0082 -S _REN Def009C -S G$P3_0$0$0 Def00B0 -S G$P2_1$0$0 Def00A1 -S G$P1_2$0$0 Def0092 -S G$P0_3$0$0 Def0083 -S _EA Def00AF -S G$P3_1$0$0 Def00B1 -S G$P2_2$0$0 Def00A2 -S G$P1_3$0$0 Def0093 -S G$P0_4$0$0 Def0084 -S G$SCON$0$0 Def0098 -S G$P3_2$0$0 Def00B2 -S G$P2_3$0$0 Def00A3 -S G$P1_4$0$0 Def0094 -S G$P0_5$0$0 Def0085 -S G$TMOD$0$0 Def0089 -S G$TCON$0$0 Def0088 -S G$P3_3$0$0 Def00B3 -S G$P2_4$0$0 Def00A4 -S G$P1_5$0$0 Def0095 -S G$P0_6$0$0 Def0086 -S _ET0 Def00A9 -S G$P3_4$0$0 Def00B4 -S G$P2_5$0$0 Def00A5 -S G$P1_6$0$0 Def0096 -S G$P0_7$0$0 Def0087 -S _TF0 Def008D -S _ET1 Def00AB -S G$P3_5$0$0 Def00B5 -S G$P2_6$0$0 Def00A6 -S G$P1_7$0$0 Def0097 -S _TF1 Def008F -S G$P3_6$0$0 Def00B6 -S G$P2_7$0$0 Def00A7 -S _TH0 Def008C -S _RB8 Def009A -S __mcs51_genXINIT Ref0000 -S G$P3_7$0$0 Def00B7 -S _TH1 Def008D -S _IT0 Def0088 -S _EX0 Def00A8 -S _IE Def00A8 -S _IT1 Def008A -S _TB8 Def009B -S _EX1 Def00AA -S _RXD Def00B0 -S G$INT0$0$0 Def00B2 -S G$INT1$0$0 Def00B3 -S G$DPH$0$0 Def0083 -S _TL0 Def008A -S _SM0 Def009F -S _TXD Def00B1 -S _TL1 Def008B -S _SM1 Def009E -S G$IE0$0$0 Def0089 -S _SM2 Def009D -S _FL Def00D1 -S G$IE1$0$0 Def008B -S G$DPL$0$0 Def0082 -S _PT0 Def00B9 -S _PT1 Def00BB -S _RS0 Def00D3 -S _TR0 Def008C -S _RD Def00B7 -S _RS1 Def00D4 -S _F0 Def00D5 -S _TR1 Def008E -S G$AC$0$0 Def00D6 -S _ES Def00AC -S _PX0 Def00B8 -S G$REN$0$0 Def009C -S _IP Def00B8 -S _PX1 Def00BA -S G$EA$0$0 Def00AF -S _PSW Def00D0 -S __sdcc_gsinit_startup Ref0000 -S _RI Def0098 -S _CY Def00D7 -S G$ET0$0$0 Def00A9 -S _TI Def0099 -S G$ET1$0$0 Def00AB -S G$TF0$0$0 Def008D -S G$TF1$0$0 Def008F -S __mcs51_genXRAMCLEAR Ref0000 -S G$RB8$0$0 Def009A -S G$TH0$0$0 Def008C -S _P0 Def0080 -A _CODE size 0 flags 0 addr 0 -A RSEG size 0 flags 0 addr 0 -A REG_BANK_0 size 8 flags 4 addr 0 -A DSEG size 0 flags 0 addr 0 -A OSEG size 0 flags 4 addr 0 -A SSEG size 1 flags 0 addr 0 -S __start__stack Def0000 -A ISEG size 0 flags 0 addr 0 -A IABS size 0 flags 8 addr 0 -A BSEG size 0 flags 80 addr 0 -A PSEG size 0 flags 50 addr 0 -A XSEG size 0 flags 40 addr 0 -A XABS size 0 flags 48 addr 0 -A XISEG size 0 flags 40 addr 0 -A HOME size 8 flags 20 addr 0 -S A$ledmatrix$400 Def0006 -S A$ledmatrix$376 Def0000 -S A$ledmatrix$398 Def0003 -S __sdcc_program_startup Def0003 -A GSINIT0 size 0 flags 20 addr 0 -A GSINIT1 size 0 flags 20 addr 0 -A GSINIT2 size 0 flags 20 addr 0 -A GSINIT3 size 0 flags 20 addr 0 -A GSINIT4 size 0 flags 20 addr 0 -A GSINIT5 size 0 flags 20 addr 0 -A GSINIT size 0 flags 20 addr 0 -A GSFINAL size 3 flags 20 addr 0 -S A$ledmatrix$391 Def0000 -A CSEG size 3F flags 20 addr 0 -S _main Def0000 -S A$ledmatrix$430 Def0000 -S A$ledmatrix$431 Def0002 -S A$ledmatrix$450 Def001A -S A$ledmatrix$460 Def0028 -S A$ledmatrix$451 Def001C -S A$ledmatrix$442 Def000F -S A$ledmatrix$433 Def0004 -S A$ledmatrix$470 Def0033 -S A$ledmatrix$452 Def001D -S A$ledmatrix$434 Def0005 -S A$ledmatrix$480 Def003D -S A$ledmatrix$471 Def0035 -S A$ledmatrix$462 Def002A -S A$ledmatrix$453 Def001E -S A$ledmatrix$435 Def0006 -S A$ledmatrix$472 Def0036 -S A$ledmatrix$463 Def002B -S A$ledmatrix$445 Def0012 -S A$ledmatrix$436 Def0008 -S XG$main$0$0 Def003D -S A$ledmatrix$464 Def002C -S A$ledmatrix$446 Def0013 -S A$ledmatrix$437 Def0009 -S A$ledmatrix$465 Def002D -S A$ledmatrix$456 Def0020 -S A$ledmatrix$447 Def0015 -S A$ledmatrix$438 Def000B -S A$ledmatrix$475 Def0038 -S A$ledmatrix$466 Def002E -S A$ledmatrix$457 Def0022 -S A$ledmatrix$448 Def0017 -S A$ledmatrix$439 Def000D -S C$ledmatrix.c$30$1$1 Def0000 -S A$ledmatrix$476 Def0039 -S A$ledmatrix$467 Def002F -S A$ledmatrix$458 Def0024 -S A$ledmatrix$449 Def0018 -S A$ledmatrix$477 Def003C -S A$ledmatrix$459 Def0026 -S A$ledmatrix$469 Def0030 -S C$ledmatrix.c$31$2$2 Def0038 -S C$ledmatrix.c$27$0$0 Def0000 -S G$main$0$0 Def0000 -S C$ledmatrix.c$32$3$3 Def000F -S C$ledmatrix.c$37$1$1 Def003D -S C$ledmatrix.c$33$3$3 Def0012 -S C$ledmatrix.c$34$3$3 Def0020 -A CONST size 8 flags 20 addr 0 -S Fledmatrix$image$0$0 Def0000 -A XINIT size 0 flags 20 addr 0 -A CABS size 0 flags 28 addr 0 -T 00 00 -R 00 00 00 02 -T 00 00 -R 00 00 00 05 -T 00 00 -R 00 00 00 05 -T 00 00 -R 00 00 00 0D -T 00 00 02 00 00 -R 00 00 00 0D 02 03 00 BA -T 00 00 02 00 03 -R 00 00 00 15 00 03 00 0D -T 00 03 -R 00 00 00 0D -T 00 03 12 00 00 80 FE -R 00 00 00 0D 00 03 00 16 -T 00 00 -R 00 00 00 16 -T 00 00 -R 00 00 00 16 -T 00 00 7A 00 7B 00 -R 00 00 00 16 -T 00 04 -R 00 00 00 16 -T 00 04 C3 EA 94 08 EB 64 80 94 80 50 F1 75 90 FF -R 00 00 00 16 -T 00 12 EA 24 00 00 00 F5 82 EB 34 00 00 00 F5 83 -R 00 00 00 16 F1 01 04 00 17 F1 81 0B 00 17 -T 00 1C E4 93 F5 80 8A F0 05 F0 7C 01 7D 00 80 06 -R 00 00 00 16 -T 00 2A -R 00 00 00 16 -T 00 2A EC 2C FC ED 33 FD -R 00 00 00 16 -T 00 30 -R 00 00 00 16 -T 00 30 D5 F0 F7 74 FF 6C F5 90 0A BA 00 C8 0B 80 -R 00 00 00 16 -T 00 3E C5 -R 00 00 00 16 -T 00 00 -R 00 00 00 17 -T 00 00 B1 9D BD B1 B7 B7 11 FF -R 00 00 00 17 diff --git a/demo/ledmatrix.rst b/demo/ledmatrix.rst deleted file mode 100644 index 9a26795..0000000 --- a/demo/ledmatrix.rst +++ /dev/null @@ -1,494 +0,0 @@ - 1 ;-------------------------------------------------------- - 2 ; File Created by SDCC : free open source ANSI-C Compiler - 3 ; Version 2.9.0 #5416 (Oct 6 2009) (UNIX) - 4 ; This file was generated Mon Oct 19 23:11:07 2009 - 5 ;-------------------------------------------------------- - 6 .module ledmatrix - 7 .optsdcc -mmcs51 --model-small - 8 - 9 ;-------------------------------------------------------- - 10 ; Public variables in this module - 11 ;-------------------------------------------------------- - 12 .globl _main - 13 .globl _CY - 14 .globl _AC - 15 .globl _F0 - 16 .globl _RS1 - 17 .globl _RS0 - 18 .globl _OV - 19 .globl _FL - 20 .globl _P - 21 .globl _PS - 22 .globl _PT1 - 23 .globl _PX1 - 24 .globl _PT0 - 25 .globl _PX0 - 26 .globl _RD - 27 .globl _WR - 28 .globl _T1 - 29 .globl _T0 - 30 .globl _INT1 - 31 .globl _INT0 - 32 .globl _TXD - 33 .globl _RXD - 34 .globl _P3_7 - 35 .globl _P3_6 - 36 .globl _P3_5 - 37 .globl _P3_4 - 38 .globl _P3_3 - 39 .globl _P3_2 - 40 .globl _P3_1 - 41 .globl _P3_0 - 42 .globl _EA - 43 .globl _ES - 44 .globl _ET1 - 45 .globl _EX1 - 46 .globl _ET0 - 47 .globl _EX0 - 48 .globl _P2_7 - 49 .globl _P2_6 - 50 .globl _P2_5 - 51 .globl _P2_4 - 52 .globl _P2_3 - 53 .globl _P2_2 - 54 .globl _P2_1 - 55 .globl _P2_0 - 56 .globl _SM0 - 57 .globl _SM1 - 58 .globl _SM2 - 59 .globl _REN - 60 .globl _TB8 - 61 .globl _RB8 - 62 .globl _TI - 63 .globl _RI - 64 .globl _P1_7 - 65 .globl _P1_6 - 66 .globl _P1_5 - 67 .globl _P1_4 - 68 .globl _P1_3 - 69 .globl _P1_2 - 70 .globl _P1_1 - 71 .globl _P1_0 - 72 .globl _TF1 - 73 .globl _TR1 - 74 .globl _TF0 - 75 .globl _TR0 - 76 .globl _IE1 - 77 .globl _IT1 - 78 .globl _IE0 - 79 .globl _IT0 - 80 .globl _P0_7 - 81 .globl _P0_6 - 82 .globl _P0_5 - 83 .globl _P0_4 - 84 .globl _P0_3 - 85 .globl _P0_2 - 86 .globl _P0_1 - 87 .globl _P0_0 - 88 .globl _B - 89 .globl _A - 90 .globl _ACC - 91 .globl _PSW - 92 .globl _IP - 93 .globl _P3 - 94 .globl _IE - 95 .globl _P2 - 96 .globl _SBUF - 97 .globl _SCON - 98 .globl _P1 - 99 .globl _TH1 - 100 .globl _TH0 - 101 .globl _TL1 - 102 .globl _TL0 - 103 .globl _TMOD - 104 .globl _TCON - 105 .globl _PCON - 106 .globl _DPH - 107 .globl _DPL - 108 .globl _SP - 109 .globl _P0 - 110 ;-------------------------------------------------------- - 111 ; special function registers - 112 ;-------------------------------------------------------- - 113 .area RSEG (DATA) - 0080 114 G$P0$0$0 == 0x0080 - 0080 115 _P0 = 0x0080 - 0081 116 G$SP$0$0 == 0x0081 - 0081 117 _SP = 0x0081 - 0082 118 G$DPL$0$0 == 0x0082 - 0082 119 _DPL = 0x0082 - 0083 120 G$DPH$0$0 == 0x0083 - 0083 121 _DPH = 0x0083 - 0087 122 G$PCON$0$0 == 0x0087 - 0087 123 _PCON = 0x0087 - 0088 124 G$TCON$0$0 == 0x0088 - 0088 125 _TCON = 0x0088 - 0089 126 G$TMOD$0$0 == 0x0089 - 0089 127 _TMOD = 0x0089 - 008A 128 G$TL0$0$0 == 0x008a - 008A 129 _TL0 = 0x008a - 008B 130 G$TL1$0$0 == 0x008b - 008B 131 _TL1 = 0x008b - 008C 132 G$TH0$0$0 == 0x008c - 008C 133 _TH0 = 0x008c - 008D 134 G$TH1$0$0 == 0x008d - 008D 135 _TH1 = 0x008d - 0090 136 G$P1$0$0 == 0x0090 - 0090 137 _P1 = 0x0090 - 0098 138 G$SCON$0$0 == 0x0098 - 0098 139 _SCON = 0x0098 - 0099 140 G$SBUF$0$0 == 0x0099 - 0099 141 _SBUF = 0x0099 - 00A0 142 G$P2$0$0 == 0x00a0 - 00A0 143 _P2 = 0x00a0 - 00A8 144 G$IE$0$0 == 0x00a8 - 00A8 145 _IE = 0x00a8 - 00B0 146 G$P3$0$0 == 0x00b0 - 00B0 147 _P3 = 0x00b0 - 00B8 148 G$IP$0$0 == 0x00b8 - 00B8 149 _IP = 0x00b8 - 00D0 150 G$PSW$0$0 == 0x00d0 - 00D0 151 _PSW = 0x00d0 - 00E0 152 G$ACC$0$0 == 0x00e0 - 00E0 153 _ACC = 0x00e0 - 00E0 154 G$A$0$0 == 0x00e0 - 00E0 155 _A = 0x00e0 - 00F0 156 G$B$0$0 == 0x00f0 - 00F0 157 _B = 0x00f0 - 158 ;-------------------------------------------------------- - 159 ; special function bits - 160 ;-------------------------------------------------------- - 161 .area RSEG (DATA) - 0080 162 G$P0_0$0$0 == 0x0080 - 0080 163 _P0_0 = 0x0080 - 0081 164 G$P0_1$0$0 == 0x0081 - 0081 165 _P0_1 = 0x0081 - 0082 166 G$P0_2$0$0 == 0x0082 - 0082 167 _P0_2 = 0x0082 - 0083 168 G$P0_3$0$0 == 0x0083 - 0083 169 _P0_3 = 0x0083 - 0084 170 G$P0_4$0$0 == 0x0084 - 0084 171 _P0_4 = 0x0084 - 0085 172 G$P0_5$0$0 == 0x0085 - 0085 173 _P0_5 = 0x0085 - 0086 174 G$P0_6$0$0 == 0x0086 - 0086 175 _P0_6 = 0x0086 - 0087 176 G$P0_7$0$0 == 0x0087 - 0087 177 _P0_7 = 0x0087 - 0088 178 G$IT0$0$0 == 0x0088 - 0088 179 _IT0 = 0x0088 - 0089 180 G$IE0$0$0 == 0x0089 - 0089 181 _IE0 = 0x0089 - 008A 182 G$IT1$0$0 == 0x008a - 008A 183 _IT1 = 0x008a - 008B 184 G$IE1$0$0 == 0x008b - 008B 185 _IE1 = 0x008b - 008C 186 G$TR0$0$0 == 0x008c - 008C 187 _TR0 = 0x008c - 008D 188 G$TF0$0$0 == 0x008d - 008D 189 _TF0 = 0x008d - 008E 190 G$TR1$0$0 == 0x008e - 008E 191 _TR1 = 0x008e - 008F 192 G$TF1$0$0 == 0x008f - 008F 193 _TF1 = 0x008f - 0090 194 G$P1_0$0$0 == 0x0090 - 0090 195 _P1_0 = 0x0090 - 0091 196 G$P1_1$0$0 == 0x0091 - 0091 197 _P1_1 = 0x0091 - 0092 198 G$P1_2$0$0 == 0x0092 - 0092 199 _P1_2 = 0x0092 - 0093 200 G$P1_3$0$0 == 0x0093 - 0093 201 _P1_3 = 0x0093 - 0094 202 G$P1_4$0$0 == 0x0094 - 0094 203 _P1_4 = 0x0094 - 0095 204 G$P1_5$0$0 == 0x0095 - 0095 205 _P1_5 = 0x0095 - 0096 206 G$P1_6$0$0 == 0x0096 - 0096 207 _P1_6 = 0x0096 - 0097 208 G$P1_7$0$0 == 0x0097 - 0097 209 _P1_7 = 0x0097 - 0098 210 G$RI$0$0 == 0x0098 - 0098 211 _RI = 0x0098 - 0099 212 G$TI$0$0 == 0x0099 - 0099 213 _TI = 0x0099 - 009A 214 G$RB8$0$0 == 0x009a - 009A 215 _RB8 = 0x009a - 009B 216 G$TB8$0$0 == 0x009b - 009B 217 _TB8 = 0x009b - 009C 218 G$REN$0$0 == 0x009c - 009C 219 _REN = 0x009c - 009D 220 G$SM2$0$0 == 0x009d - 009D 221 _SM2 = 0x009d - 009E 222 G$SM1$0$0 == 0x009e - 009E 223 _SM1 = 0x009e - 009F 224 G$SM0$0$0 == 0x009f - 009F 225 _SM0 = 0x009f - 00A0 226 G$P2_0$0$0 == 0x00a0 - 00A0 227 _P2_0 = 0x00a0 - 00A1 228 G$P2_1$0$0 == 0x00a1 - 00A1 229 _P2_1 = 0x00a1 - 00A2 230 G$P2_2$0$0 == 0x00a2 - 00A2 231 _P2_2 = 0x00a2 - 00A3 232 G$P2_3$0$0 == 0x00a3 - 00A3 233 _P2_3 = 0x00a3 - 00A4 234 G$P2_4$0$0 == 0x00a4 - 00A4 235 _P2_4 = 0x00a4 - 00A5 236 G$P2_5$0$0 == 0x00a5 - 00A5 237 _P2_5 = 0x00a5 - 00A6 238 G$P2_6$0$0 == 0x00a6 - 00A6 239 _P2_6 = 0x00a6 - 00A7 240 G$P2_7$0$0 == 0x00a7 - 00A7 241 _P2_7 = 0x00a7 - 00A8 242 G$EX0$0$0 == 0x00a8 - 00A8 243 _EX0 = 0x00a8 - 00A9 244 G$ET0$0$0 == 0x00a9 - 00A9 245 _ET0 = 0x00a9 - 00AA 246 G$EX1$0$0 == 0x00aa - 00AA 247 _EX1 = 0x00aa - 00AB 248 G$ET1$0$0 == 0x00ab - 00AB 249 _ET1 = 0x00ab - 00AC 250 G$ES$0$0 == 0x00ac - 00AC 251 _ES = 0x00ac - 00AF 252 G$EA$0$0 == 0x00af - 00AF 253 _EA = 0x00af - 00B0 254 G$P3_0$0$0 == 0x00b0 - 00B0 255 _P3_0 = 0x00b0 - 00B1 256 G$P3_1$0$0 == 0x00b1 - 00B1 257 _P3_1 = 0x00b1 - 00B2 258 G$P3_2$0$0 == 0x00b2 - 00B2 259 _P3_2 = 0x00b2 - 00B3 260 G$P3_3$0$0 == 0x00b3 - 00B3 261 _P3_3 = 0x00b3 - 00B4 262 G$P3_4$0$0 == 0x00b4 - 00B4 263 _P3_4 = 0x00b4 - 00B5 264 G$P3_5$0$0 == 0x00b5 - 00B5 265 _P3_5 = 0x00b5 - 00B6 266 G$P3_6$0$0 == 0x00b6 - 00B6 267 _P3_6 = 0x00b6 - 00B7 268 G$P3_7$0$0 == 0x00b7 - 00B7 269 _P3_7 = 0x00b7 - 00B0 270 G$RXD$0$0 == 0x00b0 - 00B0 271 _RXD = 0x00b0 - 00B1 272 G$TXD$0$0 == 0x00b1 - 00B1 273 _TXD = 0x00b1 - 00B2 274 G$INT0$0$0 == 0x00b2 - 00B2 275 _INT0 = 0x00b2 - 00B3 276 G$INT1$0$0 == 0x00b3 - 00B3 277 _INT1 = 0x00b3 - 00B4 278 G$T0$0$0 == 0x00b4 - 00B4 279 _T0 = 0x00b4 - 00B5 280 G$T1$0$0 == 0x00b5 - 00B5 281 _T1 = 0x00b5 - 00B6 282 G$WR$0$0 == 0x00b6 - 00B6 283 _WR = 0x00b6 - 00B7 284 G$RD$0$0 == 0x00b7 - 00B7 285 _RD = 0x00b7 - 00B8 286 G$PX0$0$0 == 0x00b8 - 00B8 287 _PX0 = 0x00b8 - 00B9 288 G$PT0$0$0 == 0x00b9 - 00B9 289 _PT0 = 0x00b9 - 00BA 290 G$PX1$0$0 == 0x00ba - 00BA 291 _PX1 = 0x00ba - 00BB 292 G$PT1$0$0 == 0x00bb - 00BB 293 _PT1 = 0x00bb - 00BC 294 G$PS$0$0 == 0x00bc - 00BC 295 _PS = 0x00bc - 00D0 296 G$P$0$0 == 0x00d0 - 00D0 297 _P = 0x00d0 - 00D1 298 G$FL$0$0 == 0x00d1 - 00D1 299 _FL = 0x00d1 - 00D2 300 G$OV$0$0 == 0x00d2 - 00D2 301 _OV = 0x00d2 - 00D3 302 G$RS0$0$0 == 0x00d3 - 00D3 303 _RS0 = 0x00d3 - 00D4 304 G$RS1$0$0 == 0x00d4 - 00D4 305 _RS1 = 0x00d4 - 00D5 306 G$F0$0$0 == 0x00d5 - 00D5 307 _F0 = 0x00d5 - 00D6 308 G$AC$0$0 == 0x00d6 - 00D6 309 _AC = 0x00d6 - 00D7 310 G$CY$0$0 == 0x00d7 - 00D7 311 _CY = 0x00d7 - 312 ;-------------------------------------------------------- - 313 ; overlayable register banks - 314 ;-------------------------------------------------------- - 315 .area REG_BANK_0 (REL,OVR,DATA) - 0000 316 .ds 8 - 317 ;-------------------------------------------------------- - 318 ; internal ram data - 319 ;-------------------------------------------------------- - 320 .area DSEG (DATA) - 321 ;-------------------------------------------------------- - 322 ; overlayable items in internal ram - 323 ;-------------------------------------------------------- - 324 .area OSEG (OVR,DATA) - 325 ;-------------------------------------------------------- - 326 ; Stack segment in internal ram - 327 ;-------------------------------------------------------- - 328 .area SSEG (DATA) - 0008 329 __start__stack: - 0008 330 .ds 1 - 331 - 332 ;-------------------------------------------------------- - 333 ; indirectly addressable internal ram data - 334 ;-------------------------------------------------------- - 335 .area ISEG (DATA) - 336 ;-------------------------------------------------------- - 337 ; absolute internal ram data - 338 ;-------------------------------------------------------- - 339 .area IABS (ABS,DATA) - 340 .area IABS (ABS,DATA) - 341 ;-------------------------------------------------------- - 342 ; bit data - 343 ;-------------------------------------------------------- - 344 .area BSEG (BIT) - 345 ;-------------------------------------------------------- - 346 ; paged external ram data - 347 ;-------------------------------------------------------- - 348 .area PSEG (PAG,XDATA) - 349 ;-------------------------------------------------------- - 350 ; external ram data - 351 ;-------------------------------------------------------- - 352 .area XSEG (XDATA) - 353 ;-------------------------------------------------------- - 354 ; absolute external ram data - 355 ;-------------------------------------------------------- - 356 .area XABS (ABS,XDATA) - 357 ;-------------------------------------------------------- - 358 ; external initialized ram data - 359 ;-------------------------------------------------------- - 360 .area XISEG (XDATA) - 361 .area HOME (CODE) - 362 .area GSINIT0 (CODE) - 363 .area GSINIT1 (CODE) - 364 .area GSINIT2 (CODE) - 365 .area GSINIT3 (CODE) - 366 .area GSINIT4 (CODE) - 367 .area GSINIT5 (CODE) - 368 .area GSINIT (CODE) - 369 .area GSFINAL (CODE) - 370 .area CSEG (CODE) - 371 ;-------------------------------------------------------- - 372 ; interrupt vector - 373 ;-------------------------------------------------------- - 374 .area HOME (CODE) - 0000 375 __interrupt_vect: - 0000 02 00 08 376 ljmp __sdcc_gsinit_startup - 377 ;-------------------------------------------------------- - 378 ; global & static initialisations - 379 ;-------------------------------------------------------- - 380 .area HOME (CODE) - 381 .area GSINIT (CODE) - 382 .area GSFINAL (CODE) - 383 .area GSINIT (CODE) - 384 .globl __sdcc_gsinit_startup - 385 .globl __sdcc_program_startup - 386 .globl __start__stack - 387 .globl __mcs51_genXINIT - 388 .globl __mcs51_genXRAMCLEAR - 389 .globl __mcs51_genRAMCLEAR - 390 .area GSFINAL (CODE) - 0061 02 00 03 391 ljmp __sdcc_program_startup - 392 ;-------------------------------------------------------- - 393 ; Home - 394 ;-------------------------------------------------------- - 395 .area HOME (CODE) - 396 .area HOME (CODE) - 0003 397 __sdcc_program_startup: - 0003 12 00 64 398 lcall _main - 399 ; return from main will lock up - 0006 80 FE 400 sjmp . - 401 ;-------------------------------------------------------- - 402 ; code - 403 ;-------------------------------------------------------- - 404 .area CSEG (CODE) - 405 ;------------------------------------------------------------ - 406 ;Allocation info for local variables in function 'main' - 407 ;------------------------------------------------------------ - 408 ;i Allocated to registers r2 r3 - 409 ;------------------------------------------------------------ - 0000 410 G$main$0$0 ==. - 0000 411 C$ledmatrix.c$27$0$0 ==. - 412 ; ledmatrix.c:27: int main() - 413 ; ----------------------------------------- - 414 ; function main - 415 ; ----------------------------------------- - 0064 416 _main: - 0002 417 ar2 = 0x02 - 0003 418 ar3 = 0x03 - 0004 419 ar4 = 0x04 - 0005 420 ar5 = 0x05 - 0006 421 ar6 = 0x06 - 0007 422 ar7 = 0x07 - 0000 423 ar0 = 0x00 - 0001 424 ar1 = 0x01 - 0000 425 C$ledmatrix.c$30$1$1 ==. - 426 ; ledmatrix.c:30: while(1) { - 0064 427 00102$: - 0000 428 C$ledmatrix.c$31$2$2 ==. - 429 ; ledmatrix.c:31: for(i=0; i<8; i++) { - 0064 7A 00 430 mov r2,#0x00 - 0066 7B 00 431 mov r3,#0x00 - 0068 432 00104$: - 0068 C3 433 clr c - 0069 EA 434 mov a,r2 - 006A 94 08 435 subb a,#0x08 - 006C EB 436 mov a,r3 - 006D 64 80 437 xrl a,#0x80 - 006F 94 80 438 subb a,#0x80 - 0071 50 F1 439 jnc 00102$ - 000F 440 C$ledmatrix.c$32$3$3 ==. - 441 ; ledmatrix.c:32: P1 = 0xff; - 0073 75 90 FF 442 mov _P1,#0xFF - 0012 443 C$ledmatrix.c$33$3$3 ==. - 444 ; ledmatrix.c:33: P0 = image[i]; - 0076 EA 445 mov a,r2 - 0077 24 A7 446 add a,#_image - 0079 F5 82 447 mov dpl,a - 007B EB 448 mov a,r3 - 007C 34 00 449 addc a,#(_image >> 8) - 007E F5 83 450 mov dph,a - 0080 E4 451 clr a - 0081 93 452 movc a,@a+dptr - 0082 F5 80 453 mov _P0,a - 0020 454 C$ledmatrix.c$34$3$3 ==. - 455 ; ledmatrix.c:34: P1 = (1 << i) ^ 255; - 0084 8A F0 456 mov b,r2 - 0086 05 F0 457 inc b - 0088 7C 01 458 mov r4,#0x01 - 008A 7D 00 459 mov r5,#0x00 - 008C 80 06 460 sjmp 00115$ - 008E 461 00114$: - 008E EC 462 mov a,r4 - 008F 2C 463 add a,r4 - 0090 FC 464 mov r4,a - 0091 ED 465 mov a,r5 - 0092 33 466 rlc a - 0093 FD 467 mov r5,a - 0094 468 00115$: - 0094 D5 F0 F7 469 djnz b,00114$ - 0097 74 FF 470 mov a,#0xFF - 0099 6C 471 xrl a,r4 - 009A F5 90 472 mov _P1,a - 0038 473 C$ledmatrix.c$31$2$2 ==. - 474 ; ledmatrix.c:31: for(i=0; i<8; i++) { - 009C 0A 475 inc r2 - 009D BA 00 C8 476 cjne r2,#0x00,00104$ - 00A0 0B 477 inc r3 - 003D 478 C$ledmatrix.c$37$1$1 ==. - 003D 479 XG$main$0$0 ==. - 00A1 80 C5 480 sjmp 00104$ - 481 .area CSEG (CODE) - 482 .area CONST (CODE) - 0000 483 Fledmatrix$image$0$0 == . - 00A7 484 _image: - 00A7 B1 485 .db #0xB1 - 00A8 9D 486 .db #0x9D - 00A9 BD 487 .db #0xBD - 00AA B1 488 .db #0xB1 - 00AB B7 489 .db #0xB7 - 00AC B7 490 .db #0xB7 - 00AD 11 491 .db #0x11 - 00AE FF 492 .db #0xFF - 493 .area XINIT (CODE) - 494 .area CABS (ABS,CODE) diff --git a/demo/ledmatrix.sym b/demo/ledmatrix.sym deleted file mode 100644 index e61476a..0000000 --- a/demo/ledmatrix.sym +++ /dev/null @@ -1,634 +0,0 @@ -ASxxxx Assembler V01.70 + NoICE + SDCC mods + Flat24 Feb-1999 (Intel 8051), page 1. - -Symbol Table - - A 00D6 - D A$ledmatrix$376 0000 GR - 15 A$ledmatrix$391 0000 GR - D A$ledmatrix$398 0003 GR - D A$ledmatrix$400 0006 GR - 16 A$ledmatrix$430 0000 GR - 16 A$ledmatrix$431 0002 GR - 16 A$ledmatrix$433 0004 GR - 16 A$ledmatrix$434 0005 GR - 16 A$ledmatrix$435 0006 GR - 16 A$ledmatrix$436 0008 GR - 16 A$ledmatrix$437 0009 GR - 16 A$ledmatrix$438 000B GR - 16 A$ledmatrix$439 000D GR - 16 A$ledmatrix$442 000F GR - 16 A$ledmatrix$445 0012 GR - 16 A$ledmatrix$446 0013 GR - 16 A$ledmatrix$447 0015 GR - 16 A$ledmatrix$448 0017 GR - 16 A$ledmatrix$449 0018 GR - 16 A$ledmatrix$450 001A GR - 16 A$ledmatrix$451 001C GR - 16 A$ledmatrix$452 001D GR - 16 A$ledmatrix$453 001E GR - 16 A$ledmatrix$456 0020 GR - 16 A$ledmatrix$457 0022 GR - 16 A$ledmatrix$458 0024 GR - 16 A$ledmatrix$459 0026 GR - 16 A$ledmatrix$460 0028 GR - 16 A$ledmatrix$462 002A GR - 16 A$ledmatrix$463 002B GR - 16 A$ledmatrix$464 002C GR - 16 A$ledmatrix$465 002D GR - 16 A$ledmatrix$466 002E GR - 16 A$ledmatrix$467 002F GR - 16 A$ledmatrix$469 0030 GR - 16 A$ledmatrix$470 0033 GR - 16 A$ledmatrix$471 0035 GR - 16 A$ledmatrix$472 0036 GR - 16 A$ledmatrix$475 0038 GR - 16 A$ledmatrix$476 0039 GR - 16 A$ledmatrix$477 003C GR - 16 A$ledmatrix$480 003D GR - AC 00D6 - ACC 00E0 - ACC.0 00E0 - ACC.1 00E1 - ACC.2 00E2 - ACC.3 00E3 - ACC.4 00E4 - ACC.5 00E5 - ACC.6 00E6 - ACC.7 00E7 - B 00F0 - B.0 00F0 - B.1 00F1 - B.2 00F2 - B.3 00F3 - B.4 00F4 - B.5 00F5 - B.6 00F6 - B.7 00F7 - 16 C$ledmatrix.c$27$0$0 = 0000 GR - 16 C$ledmatrix.c$30$1$1 = 0000 GR - 16 C$ledmatrix.c$31$2$2 = 0038 GR - 16 C$ledmatrix.c$32$3$3 = 000F GR - 16 C$ledmatrix.c$33$3$3 = 0012 GR - 16 C$ledmatrix.c$34$3$3 = 0020 GR - 16 C$ledmatrix.c$37$1$1 = 003D GR - CPRL2 00C8 - CT2 00C9 - CY 00D7 - DPH 0083 - DPL 0082 - EA 00AF - ES 00AC - ET0 00A9 - ET1 00AB - ET2 00AD - EX0 00A8 - EX1 00AA - EXEN2 00CB - EXF2 00CE - F0 00D5 - 17 Fledmatrix$image$0$0 = 0000 GR - G$A$0$0 = 00E0 G - G$AC$0$0 = 00D6 G - G$ACC$0$0 = 00E0 G - G$B$0$0 = 00F0 G - G$CY$0$0 = 00D7 G - G$DPH$0$0 = 0083 G - G$DPL$0$0 = 0082 G - G$EA$0$0 = 00AF G - G$ES$0$0 = 00AC G - G$ET0$0$0 = 00A9 G - G$ET1$0$0 = 00AB G - G$EX0$0$0 = 00A8 G - G$EX1$0$0 = 00AA G - G$F0$0$0 = 00D5 G - G$FL$0$0 = 00D1 G - G$IE$0$0 = 00A8 G - G$IE0$0$0 = 0089 G - G$IE1$0$0 = 008B G - G$INT0$0$0 = 00B2 G - G$INT1$0$0 = 00B3 G - G$IP$0$0 = 00B8 G - G$IT0$0$0 = 0088 G - G$IT1$0$0 = 008A G - G$OV$0$0 = 00D2 G - G$P$0$0 = 00D0 G - G$P0$0$0 = 0080 G - G$P0_0$0$0 = 0080 G - G$P0_1$0$0 = 0081 G - G$P0_2$0$0 = 0082 G - G$P0_3$0$0 = 0083 G - G$P0_4$0$0 = 0084 G - G$P0_5$0$0 = 0085 G - G$P0_6$0$0 = 0086 G - G$P0_7$0$0 = 0087 G - G$P1$0$0 = 0090 G - G$P1_0$0$0 = 0090 G - G$P1_1$0$0 = 0091 G - G$P1_2$0$0 = 0092 G - G$P1_3$0$0 = 0093 G - G$P1_4$0$0 = 0094 G - G$P1_5$0$0 = 0095 G - G$P1_6$0$0 = 0096 G - G$P1_7$0$0 = 0097 G - G$P2$0$0 = 00A0 G - G$P2_0$0$0 = 00A0 G - G$P2_1$0$0 = 00A1 G - G$P2_2$0$0 = 00A2 G - G$P2_3$0$0 = 00A3 G - G$P2_4$0$0 = 00A4 G - G$P2_5$0$0 = 00A5 G - G$P2_6$0$0 = 00A6 G - G$P2_7$0$0 = 00A7 G - G$P3$0$0 = 00B0 G - G$P3_0$0$0 = 00B0 G - G$P3_1$0$0 = 00B1 G - G$P3_2$0$0 = 00B2 G - G$P3_3$0$0 = 00B3 G - G$P3_4$0$0 = 00B4 G - G$P3_5$0$0 = 00B5 G - G$P3_6$0$0 = 00B6 G - G$P3_7$0$0 = 00B7 G - G$PCON$0$0 = 0087 G - G$PS$0$0 = 00BC G - G$PSW$0$0 = 00D0 G - G$PT0$0$0 = 00B9 G - G$PT1$0$0 = 00BB G - G$PX0$0$0 = 00B8 G - G$PX1$0$0 = 00BA G - G$RB8$0$0 = 009A G - G$RD$0$0 = 00B7 G - G$REN$0$0 = 009C G - G$RI$0$0 = 0098 G - G$RS0$0$0 = 00D3 G - G$RS1$0$0 = 00D4 G - G$RXD$0$0 = 00B0 G - G$SBUF$0$0 = 0099 G - G$SCON$0$0 = 0098 G - G$SM0$0$0 = 009F G - G$SM1$0$0 = 009E G - G$SM2$0$0 = 009D G - G$SP$0$0 = 0081 G - G$T0$0$0 = 00B4 G - G$T1$0$0 = 00B5 G - G$TB8$0$0 = 009B G - G$TCON$0$0 = 0088 G - G$TF0$0$0 = 008D G - G$TF1$0$0 = 008F G - G$TH0$0$0 = 008C G - G$TH1$0$0 = 008D G - G$TI$0$0 = 0099 G - G$TL0$0$0 = 008A G - G$TL1$0$0 = 008B G - G$TMOD$0$0 = 0089 G - G$TR0$0$0 = 008C G - G$TR1$0$0 = 008E G - G$TXD$0$0 = 00B1 G - G$WR$0$0 = 00B6 G - 16 G$main$0$0 = 0000 GR - IE 00A8 - IE.0 00A8 - IE.1 00A9 - IE.2 00AA - IE.3 00AB - IE.4 00AC - IE.5 00AD - IE.7 00AF - IE0 0089 - IE1 008B - INT0 00B2 - INT1 00B3 - IP 00B8 - IP.0 00B8 - IP.1 00B9 - IP.2 00BA - IP.3 00BB - IP.4 00BC - IP.5 00BD - IT0 0088 - IT1 008A - OV 00D2 - P 00D0 - P0 0080 - P0.0 0080 - P0.1 0081 - P0.2 0082 - P0.3 0083 - P0.4 0084 - P0.5 0085 - P0.6 0086 - P0.7 0087 - P1 0090 - P1.0 0090 - P1.1 0091 - P1.2 0092 - P1.3 0093 - P1.4 0094 - P1.5 0095 - P1.6 0096 - P1.7 0097 - P2 00A0 - P2.0 00A0 - P2.1 00A1 - P2.2 00A2 - P2.3 00A3 - P2.4 00A4 - P2.5 00A5 - P2.6 00A6 - P2.7 00A7 - P3 00B0 - P3.0 00B0 - P3.1 00B1 - P3.2 00B2 - P3.3 00B3 - P3.4 00B4 - P3.5 00B5 - P3.6 00B6 - P3.7 00B7 - PCON 0087 - PS 00BC - PSW 00D0 - PSW.0 00D0 - PSW.1 00D1 - PSW.2 00D2 - PSW.3 00D3 - PSW.4 00D4 - PSW.5 00D5 - PSW.6 00D6 - PSW.7 00D7 - PT0 00B9 - PT1 00BB - PT2 00BD - PX0 00B8 - PX1 00BA - RB8 009A - RCAP2H 00CB - RCAP2L 00CA - RCLK 00CD - REN 009C - RI 0098 - RS0 00D3 - RS1 00D4 - RXD 00B0 - SBUF 0099 - SCON 0098 - SCON.0 0098 - SCON.1 0099 - SCON.2 009A - SCON.3 009B - SCON.4 009C - SCON.5 009D - SCON.6 009E - SCON.7 009F - SM0 009F - SM1 009E - SM2 009D - SP 0081 - T2CON 00C8 - T2CON.0 00C8 - T2CON.1 00C9 - T2CON.2 00CA - T2CON.3 00CB - T2CON.4 00CC - T2CON.5 00CD - T2CON.6 00CE - T2CON.7 00CF - TB8 009B - TCLK 00CC - TCON 0088 - TCON.0 0088 - TCON.1 0089 - TCON.2 008A - TCON.3 008B - TCON.4 008C - TCON.5 008D - TCON.6 008E - TCON.7 008F - TF0 008D - TF1 008F - TF2 00CF - TH0 008C - TH1 008D - TH2 00CD - TI 0099 - TL0 008A - TL1 008B - TL2 00CC - TMOD 0089 - TR0 008C - TR1 008E - TR2 00CA - TXD 00B1 - 16 XG$main$0$0 = 003D GR - _A = 00E0 G - _AC = 00D6 G - _ACC = 00E0 G - _B = 00F0 G - _CY = 00D7 G - _DPH = 0083 G - _DPL = 0082 G - _EA = 00AF G - _ES = 00AC G - _ET0 = 00A9 G - _ET1 = 00AB G - _EX0 = 00A8 G - _EX1 = 00AA G - _F0 = 00D5 G - _FL = 00D1 G - _IE = 00A8 G - _IE0 = 0089 G - _IE1 = 008B G - _INT0 = 00B2 G - _INT1 = 00B3 G - _IP = 00B8 G - _IT0 = 0088 G - _IT1 = 008A G - _OV = 00D2 G - _P = 00D0 G - _P0 = 0080 G - _P0_0 = 0080 G - _P0_1 = 0081 G - _P0_2 = 0082 G - _P0_3 = 0083 G - _P0_4 = 0084 G - _P0_5 = 0085 G - _P0_6 = 0086 G - _P0_7 = 0087 G - _P1 = 0090 G - _P1_0 = 0090 G - _P1_1 = 0091 G - _P1_2 = 0092 G - _P1_3 = 0093 G - _P1_4 = 0094 G - _P1_5 = 0095 G - _P1_6 = 0096 G - _P1_7 = 0097 G - _P2 = 00A0 G - _P2_0 = 00A0 G - _P2_1 = 00A1 G - _P2_2 = 00A2 G - _P2_3 = 00A3 G - _P2_4 = 00A4 G - _P2_5 = 00A5 G - _P2_6 = 00A6 G - _P2_7 = 00A7 G - _P3 = 00B0 G - _P3_0 = 00B0 G - _P3_1 = 00B1 G - _P3_2 = 00B2 G - _P3_3 = 00B3 G - _P3_4 = 00B4 G - _P3_5 = 00B5 G - _P3_6 = 00B6 G - _P3_7 = 00B7 G - _PCON = 0087 G - _PS = 00BC G - _PSW = 00D0 G - _PT0 = 00B9 G - _PT1 = 00BB G - _PX0 = 00B8 G - _PX1 = 00BA G - _RB8 = 009A G - _RD = 00B7 G - _REN = 009C G - _RI = 0098 G - _RS0 = 00D3 G - _RS1 = 00D4 G - _RXD = 00B0 G - _SBUF = 0099 G - _SCON = 0098 G - _SM0 = 009F G - _SM1 = 009E G - _SM2 = 009D G - _SP = 0081 G - _T0 = 00B4 G - _T1 = 00B5 G - _TB8 = 009B G - _TCON = 0088 G - _TF0 = 008D G - _TF1 = 008F G - _TH0 = 008C G - _TH1 = 008D G - _TI = 0099 G - _TL0 = 008A G - _TL1 = 008B G - _TMOD = 0089 G - _TR0 = 008C G - _TR1 = 008E G - _TXD = 00B1 G - _WR = 00B6 G - D __interrupt_vect 0000 R - __mcs51_genRAMCLEAR **** GX - __mcs51_genXINIT **** GX - __mcs51_genXRAMCLEAR **** GX - __sdcc_gsinit_startup **** GX - D __sdcc_program_startup 0003 GR - 5 __start__stack 0000 GR - 17 _image 0000 R - 16 _main 0000 GR - a 00D6 - ac 00D6 - acc 00E0 - acc.0 00E0 - acc.1 00E1 - acc.2 00E2 - acc.3 00E3 - acc.4 00E4 - acc.5 00E5 - acc.6 00E6 - acc.7 00E7 - ar0 = 0000 - ar1 = 0001 - ar2 = 0002 - ar3 = 0003 - ar4 = 0004 - ar5 = 0005 - ar6 = 0006 - ar7 = 0007 - b 00F0 - b.0 00F0 - b.1 00F1 - b.2 00F2 - b.3 00F3 - b.4 00F4 - b.5 00F5 - b.6 00F6 - b.7 00F7 - cprl2 00C8 - ct2 00C9 - cy 00D7 - dph 0083 - dpl 0082 - ea 00AF - es 00AC - et0 00A9 - et1 00AB - et2 00AD - ex0 00A8 - ex1 00AA - exen2 00CB - exf2 00CE - f0 00D5 - ie 00A8 - ie.0 00A8 - ie.1 00A9 - ie.2 00AA - ie.3 00AB - ie.4 00AC - ie.5 00AD - ie.7 00AF - ie0 0089 - ie1 008B - int0 00B2 - int1 00B3 - ip 00B8 - ip.0 00B8 - ip.1 00B9 - ip.2 00BA - ip.3 00BB - ip.4 00BC - ip.5 00BD - it0 0088 - it1 008A - ov 00D2 - p 00D0 - p0 0080 - p0.0 0080 - p0.1 0081 - p0.2 0082 - p0.3 0083 - p0.4 0084 - p0.5 0085 - p0.6 0086 - p0.7 0087 - p1 0090 - p1.0 0090 - p1.1 0091 - p1.2 0092 - p1.3 0093 - p1.4 0094 - p1.5 0095 - p1.6 0096 - p1.7 0097 - p2 00A0 - p2.0 00A0 - p2.1 00A1 - p2.2 00A2 - p2.3 00A3 - p2.4 00A4 - p2.5 00A5 - p2.6 00A6 - p2.7 00A7 - p3 00B0 - p3.0 00B0 - p3.1 00B1 - p3.2 00B2 - p3.3 00B3 - p3.4 00B4 - p3.5 00B5 - p3.6 00B6 - p3.7 00B7 - pcon 0087 - ps 00BC - psw 00D0 - psw.0 00D0 - psw.1 00D1 - psw.2 00D2 - psw.3 00D3 - psw.4 00D4 - psw.5 00D5 - psw.6 00D6 - psw.7 00D7 - pt0 00B9 - pt1 00BB - pt2 00BD - px0 00B8 - px1 00BA - rb8 009A - rcap2h 00CB - rcap2l 00CA - rclk 00CD - ren 009C - ri 0098 - rs0 00D3 - rs1 00D4 - rxd 00B0 - sbuf 0099 - scon 0098 - scon.0 0098 - scon.1 0099 - scon.2 009A - scon.3 009B - scon.4 009C - scon.5 009D - scon.6 009E - scon.7 009F - sm0 009F - sm1 009E - sm2 009D - sp 0081 - t2con 00C8 - t2con.0 00C8 - t2con.1 00C9 - t2con.2 00CA - t2con.3 00CB - t2con.4 00CC - t2con.5 00CD - t2con.6 00CE - t2con.7 00CF - tb8 009B - tclk 00CC - tcon 0088 - tcon.0 0088 - tcon.1 0089 - tcon.2 008A - tcon.3 008B - tcon.4 008C - tcon.5 008D - tcon.6 008E - tcon.7 008F - tf0 008D - tf1 008F - tf2 00CF - th0 008C - th1 008D - th2 00CD - ti 0099 - tl0 008A - tl1 008B - tl2 00CC - tmod 0089 - tr0 008C - tr1 008E - tr2 00CA - txd 00B1 - -ASxxxx Assembler V01.70 + NoICE + SDCC mods + Flat24 Feb-1999 (Intel 8051), page 2. - -Area Table - - 0 _CODE size 0 flags 0 - 1 RSEG size 0 flags 0 - 2 REG_BANK_0 size 8 flags 4 - 3 DSEG size 0 flags 0 - 4 OSEG size 0 flags 4 - 5 SSEG size 1 flags 0 - 6 ISEG size 0 flags 0 - 7 IABS size 0 flags 8 - 8 BSEG size 0 flags 80 - 9 PSEG size 0 flags 50 - A XSEG size 0 flags 40 - B XABS size 0 flags 48 - C XISEG size 0 flags 40 - D HOME size 8 flags 20 - E GSINIT0 size 0 flags 20 - F GSINIT1 size 0 flags 20 - 10 GSINIT2 size 0 flags 20 - 11 GSINIT3 size 0 flags 20 - 12 GSINIT4 size 0 flags 20 - 13 GSINIT5 size 0 flags 20 - 14 GSINIT size 0 flags 20 - 15 GSFINAL size 3 flags 20 - 16 CSEG size 3F flags 20 - 17 CONST size 8 flags 20 - 18 XINIT size 0 flags 20 - 19 CABS size 0 flags 28 diff --git a/demo/mleddisplay.adf b/demo/mleddisplay.adf index f3c5764..470e81d 100644 --- a/demo/mleddisplay.adf +++ b/demo/mleddisplay.adf @@ -1,7 +1,7 @@ -# Assembler debug file for MCU 8051 IDE v1.1 +# Assembler debug file for MCU 8051 IDE v1.4.7 # Used assembler: MCU 8051 IDE -# Date: 03/02/09 -BFC1B21D558BFAE2B1E43162DAEFE347 "mleddisplay.asm" +# Date: 12/28/2012 +8BF7EBDCE29A2FCF7D73079108BBAD39 "mleddisplay.asm" 0 37 0 2 0 37 0 51 3 6 0 52 4 182 10 9 @@ -32,7 +32,7 @@ BFC1B21D558BFAE2B1E43162DAEFE347 "mleddisplay.asm" 0 113 57 17 17 0 116 59 120 32 0 117 61 17 3 -0 120 63 1 55 +0 120 63 128 246 0 21 65 192 0 22 66 249 0 23 67 164 diff --git a/demo/mleddisplay.asm b/demo/mleddisplay.asm index 8e2add9..be9acf2 100644 --- a/demo/mleddisplay.asm +++ b/demo/mleddisplay.asm @@ -46,7 +46,7 @@ numbers:db 11000000b ; 0 ; ; Affected registers: R0 ; Interrupts: None - ; Notes: Recursive subprogram + ; Notes: Recursive sub-program inrement_number: inc @R0 cjne @R0, #0Ah, inc_num_end diff --git a/demo/mleddisplay.bin b/demo/mleddisplay.bin Binary files differdeleted file mode 100644 index 18d8eb4..0000000 --- a/demo/mleddisplay.bin +++ /dev/null diff --git a/demo/mleddisplay.hex b/demo/mleddisplay.hex index abf8563..4dc2bcd 100644 --- a/demo/mleddisplay.hex +++ b/demo/mleddisplay.hex @@ -1,2 +1,6 @@ -:4B00000002002506B60A09760008B824012211032218E5F003F5F0E69375B0FFF59085F0B0B820ED2275200075210075220075230075F0EE90004178241111782011030137C0F9A4B0999282F8809027 -:00000001FF
\ No newline at end of file +:1000000002002506B60A09760008B8240122110369 +:0E0010002218E5F003F5F0E69375B0FFF590C9 +:10001E0085F0B0B820ED2275200075210075220004 +:0F002E0075230075F0EE900041782411117820B1 +:0E003D00110380F6C0F9A4B0999282F8809069 +:00000001FF diff --git a/demo/mleddisplay.lst b/demo/mleddisplay.lst index f87d046..f92f61a 100644 --- a/demo/mleddisplay.lst +++ b/demo/mleddisplay.lst @@ -35,7 +35,7 @@ mleddisplay 34 ; ----------------------------------------------- 35 ; Reset vector 36 org 0 -0000 06 37 jmp start +0000 020025 37 jmp start 38 39 ; ----------------------------------------------- 40 ; SUBPROGRAMS @@ -47,18 +47,18 @@ mleddisplay 46 ; 47 ; Affected registers: R0 48 ; Interrupts: None - 49 ; Notes: Recursive subprogram + 49 ; Notes: Recursive sub-program 50 inrement_number: -0003 B60A09 51 inc @R0 -0004 7600 52 cjne @R0, #0Ah, inc_num_end +0003 06 51 inc @R0 +0004 B60A09 52 cjne @R0, #0Ah, inc_num_end 53 -0007 08 54 mov @R0, #0 -0009 B82401 55 inc R0 -000A 22 56 cjne R0, #data_ptr+data_len, $+4 - 57 ret -000E 0137 58 call inrement_number +0007 7600 54 mov @R0, #0 +0009 08 55 inc R0 +000A B82401 56 cjne R0, #data_ptr+data_len, $+4 +000D 22 57 ret +000E 1103 58 call inrement_number 59 inc_num_end: -0010 7820 60 ret +0010 22 60 ret 61 62 ;; Display the number on the LED display 63 ; @@ -111,14 +111,14 @@ mleddisplay 110 main: 111 ; Show the number on the LED display 0037 7824 112 mov R0, #data_ptr+data_len - 113 call display_number +0039 1111 113 call display_number 114 115 ; Increment the number - 116 mov R0, #data_ptr - 117 call inrement_number +003B 7820 116 mov R0, #data_ptr +003D 1103 117 call inrement_number 118 119 ; Close main loop - 120 jmp main +003F 80F6 120 jmp main 121 122 ; ----------------------------------------------- 123 ; PROGRAM END @@ -128,6 +128,8 @@ ASSEMBLY COMPLETE, NO ERRORS FOUND, NO WARNINGS SYMBOL TABLE: +??MCU_8051_IDE . . . . . . . . . . . N NUMB 8051H NOT USED +??VERSION. . . . . . . . . . . . . . N NUMB 0147H NOT USED AC . . . . . . . . . . . . . . . . . B ADDR 00D6H NOT USED ACC. . . . . . . . . . . . . . . . . D ADDR 00E0H NOT USED ACSR . . . . . . . . . . . . . . . . D ADDR 0097H NOT USED @@ -179,7 +181,7 @@ CPRL2. . . . . . . . . . . . . . . . B ADDR 00C8H NOT USED CR . . . . . . . . . . . . . . . . . B ADDR 00DEH NOT USED CT2. . . . . . . . . . . . . . . . . B ADDR 00C9H NOT USED CY . . . . . . . . . . . . . . . . . B ADDR 00D7H NOT USED -DATA_LEN . . . . . . . . . . . . . . N NUMB 0004H NOT USED +DATA_LEN . . . . . . . . . . . . . . N NUMB 0004H DATA_PTR . . . . . . . . . . . . . . D ADDR 0020H DISPLAY_NUMBER . . . . . . . . . . . C ADDR 0011H DP0H . . . . . . . . . . . . . . . . D ADDR 0083H NOT USED diff --git a/demo/mleddisplay.vhw b/demo/mleddisplay.vhw index ecdf182..bb55c14 100644 --- a/demo/mleddisplay.vhw +++ b/demo/mleddisplay.vhw @@ -1,5 +1,6 @@ -# MCU 8051 IDE: Virtual HW configuration file -# Date: 05/10/2010 -# Project: Demo-project +# MCU 8051 IDE: Virtual HW component configuration file +# Date: 03/02/09 +# Project: DEBUG +# Component: Multiplexed LED display -MultiplexedLedDisplay {{0 1 1 1 2 1 3 1 4 1 T0 3 5 1 T1 3 6 1 T2 3 7 1 T3 3} {0 7 1 6 2 5 3 4 4 3 T0 7 5 2 T1 6 6 1 T2 5 7 0 T3 4} 425x225+850+345 {Demo for "leddisplay.asm"} red 50 1} +MultiplexedLedDisplay {{0 1 1 1 2 1 3 1 4 1 T0 3 5 1 T1 3 6 1 T2 3 7 1 T3 3} {0 7 1 6 2 5 3 4 4 3 T0 7 5 2 T1 6 6 1 T2 5 7 0 T3 4} {} {Demo for "leddisplay.asm"} blue 50} |