summaryrefslogtreecommitdiff
path: root/demo
diff options
context:
space:
mode:
authorAndrej Shadura <andrewsh@debian.org>2018-05-08 15:59:31 +0200
committerAndrej Shadura <andrewsh@debian.org>2018-05-08 15:59:31 +0200
commit47aa8b00b2b11df13a100489e0f904a4947177ef (patch)
treeb35c9acc778ea2f761f3c549f7bee2f4491b3144 /demo
parent5b8466f7fae0e071c0f4eda13051c93313910028 (diff)
Import Upstream version 1.4.7
Diffstat (limited to 'demo')
-rw-r--r--demo/Demo project.mcu8051ide127
-rw-r--r--demo/LCD.adf65
-rw-r--r--demo/LCD.asm52
-rw-r--r--demo/LCD.hex8
-rw-r--r--demo/LCD.lst273
-rw-r--r--demo/LCD.vhc4
-rw-r--r--demo/demo0.adf6
-rw-r--r--demo/demo0.asm4
-rw-r--r--demo/demo0.bin1
-rw-r--r--demo/demo0.hex2
-rw-r--r--demo/demo0.lst14
-rw-r--r--demo/demo0.sim6
-rw-r--r--demo/demo1.adf8
-rw-r--r--demo/demo1.asm10
-rw-r--r--demo/demo1.binbin15 -> 0 bytes
-rw-r--r--demo/demo1.hex6
-rw-r--r--demo/demo1.lst74
-rw-r--r--demo/demo1.sim16
-rw-r--r--demo/demo2.adf60
-rw-r--r--demo/demo2.asm12
-rw-r--r--demo/demo2.binbin42 -> 0 bytes
-rw-r--r--demo/demo2.hex8
-rw-r--r--demo/demo2.lst67
-rw-r--r--demo/demo2.sim47
-rw-r--r--demo/demo3.adf14
-rw-r--r--demo/demo3.asm38
-rw-r--r--demo/demo3.bin1
-rw-r--r--demo/demo3.sim6
-rw-r--r--demo/demo4.adf6
-rw-r--r--demo/demo4.binbin66 -> 0 bytes
-rw-r--r--demo/demo4.hex7
-rw-r--r--demo/demo4.lst253
-rw-r--r--demo/demo4.sim42
-rw-r--r--demo/demo5.adf6
-rw-r--r--demo/demo5.asm2
-rw-r--r--demo/demo5.bin1
-rw-r--r--demo/demo5.hex2
-rw-r--r--demo/demo5.lst4
-rw-r--r--demo/demo5.sim2
-rw-r--r--demo/demo_c_0bin1425 -> 0 bytes
-rw-r--r--demo/demo_c_0.adb106
-rw-r--r--demo/demo_c_0.asm529
-rw-r--r--demo/demo_c_0.c2
-rw-r--r--demo/demo_c_0.hashes2
-rw-r--r--demo/demo_c_0.hex34
-rw-r--r--demo/demo_c_0.lnk19
-rw-r--r--demo/demo_c_0.lst4
-rw-r--r--demo/demo_c_0.map488
-rw-r--r--demo/demo_c_0.mem28
-rw-r--r--demo/demo_c_0.rel378
-rw-r--r--demo/demo_c_0.rst529
-rw-r--r--demo/demo_c_0.sym659
-rw-r--r--demo/file.hex5
-rw-r--r--demo/file.lst92
-rw-r--r--demo/keypad_displaybin1614 -> 0 bytes
-rw-r--r--demo/keypad_display.adb106
-rw-r--r--demo/keypad_display.asm624
-rw-r--r--demo/keypad_display.c2
-rw-r--r--demo/keypad_display.hashes2
-rw-r--r--demo/keypad_display.hex49
-rw-r--r--demo/keypad_display.lnk19
-rw-r--r--demo/keypad_display.lst4
-rw-r--r--demo/keypad_display.map536
-rw-r--r--demo/keypad_display.mem28
-rw-r--r--demo/keypad_display.rel490
-rw-r--r--demo/keypad_display.rst624
-rw-r--r--demo/keypad_display.sym712
-rw-r--r--demo/keypad_display.vhw2
-rw-r--r--demo/ledmatrix.adb102
-rw-r--r--demo/ledmatrix.asm494
-rw-r--r--demo/ledmatrix.hex26
-rw-r--r--demo/ledmatrix.lnk19
-rw-r--r--demo/ledmatrix.lst4
-rw-r--r--demo/ledmatrix.m5ihib599
-rw-r--r--demo/ledmatrix.map454
-rw-r--r--demo/ledmatrix.mem28
-rw-r--r--demo/ledmatrix.rel328
-rw-r--r--demo/ledmatrix.rst494
-rw-r--r--demo/ledmatrix.sym634
-rw-r--r--demo/mleddisplay.adf8
-rw-r--r--demo/mleddisplay.asm2
-rw-r--r--demo/mleddisplay.binbin38 -> 0 bytes
-rw-r--r--demo/mleddisplay.hex8
-rw-r--r--demo/mleddisplay.lst32
-rw-r--r--demo/mleddisplay.vhw9
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 &lt;martin.osmera@gmail.com&gt;
]]></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
deleted file mode 100644
index 4f74af1..0000000
--- a/demo/demo1.bin
+++ /dev/null
Binary files differ
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
deleted file mode 100644
index 031c85b..0000000
--- a/demo/demo2.bin
+++ /dev/null
Binary files differ
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
deleted file mode 100644
index 413b6f7..0000000
--- a/demo/demo4.bin
+++ /dev/null
Binary files differ
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
deleted file mode 100644
index 671d577..0000000
--- a/demo/demo_c_0
+++ /dev/null
Binary files differ
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
deleted file mode 100644
index 4bea3f5..0000000
--- a/demo/keypad_display
+++ /dev/null
Binary files differ
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
deleted file mode 100644
index 18d8eb4..0000000
--- a/demo/mleddisplay.bin
+++ /dev/null
Binary files differ
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}