summaryrefslogtreecommitdiffstats
path: root/src/dist/default
diff options
context:
space:
mode:
authorNao Pross <naopross@thearcway.org>2018-02-23 16:31:32 +0100
committerNao Pross <naopross@thearcway.org>2018-02-23 16:31:32 +0100
commita588c9f6e6f0946844ed27e618d792cd025d4362 (patch)
treed16bbb2b5d99ec50036cc78884abde5a67fab798 /src/dist/default
parentFix rs232 interface for MIDI serial (diff)
downloadXilofono-a588c9f6e6f0946844ed27e618d792cd025d4362.tar.gz
Xilofono-a588c9f6e6f0946844ed27e618d792cd025d4362.zip
No time for commit msg
Diffstat (limited to 'src/dist/default')
-rw-r--r--src/dist/default/production/memoryfile.xml17
-rw-r--r--src/dist/default/production/src.production.cmf545
-rw-r--r--src/dist/default/production/src.production.elfbin0 -> 19102 bytes
-rw-r--r--src/dist/default/production/src.production.hex72
-rw-r--r--src/dist/default/production/src.production.hxl45
-rw-r--r--src/dist/default/production/src.production.lst1813
-rw-r--r--src/dist/default/production/src.production.map821
-rw-r--r--src/dist/default/production/src.production.mum9
-rw-r--r--src/dist/default/production/src.production.objbin0 -> 13299 bytes
-rw-r--r--src/dist/default/production/src.production.rlfbin0 -> 116932 bytes
-rw-r--r--src/dist/default/production/src.production.sdb557
-rw-r--r--src/dist/default/production/src.production.sym450
12 files changed, 4329 insertions, 0 deletions
diff --git a/src/dist/default/production/memoryfile.xml b/src/dist/default/production/memoryfile.xml
new file mode 100644
index 0000000..6f5f082
--- /dev/null
+++ b/src/dist/default/production/memoryfile.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project>
+ <executable name="dist/default/production\src.production.hex">
+ <memory name="program">
+ <units>bytes</units>
+ <length>32768</length>
+ <used>1058</used>
+ <free>31710</free>
+ </memory>
+ <memory name="data">
+ <units>bytes</units>
+ <length>1536</length>
+ <used>78</used>
+ <free>1458</free>
+ </memory>
+ </executable>
+</project>
diff --git a/src/dist/default/production/src.production.cmf b/src/dist/default/production/src.production.cmf
new file mode 100644
index 0000000..53d83bb
--- /dev/null
+++ b/src/dist/default/production/src.production.cmf
@@ -0,0 +1,545 @@
+%CMF
+# %PSECTS Section
+# For each object file, details of its psects are enumerated here.
+# The begining of the section is indicated by %PSECTS. The first
+# line indicates the name of the first object file, e.g.
+# $foo.obj
+# Each line that follows describes a psect in that object file, until
+# the next object file. The lines that describe a psect have the
+# format:
+# <psect name> <class name> <space> <link address> <load addresses> <length> <delta>
+# All addresses and the length are given in unqualified hexadecimal
+# in delta units. Any other numeric values are decimal.
+%PSECTS
+$C:\Users\_prossn\AppData\Local\Temp\s5hg.obj
+idloc IDLOC 0 200000 200000 8 1
+init CODE 0 1B8 1B8 4 1
+reset_vec CODE 0 0 0 4 1
+config CONFIG 0 300000 300000 E 1
+$dist/default/production\src.production.obj
+cinit CODE 0 354 354 32 1
+text0 CODE 0 308 308 4C 1
+text1 CODE 0 1BC 1BC 78 1
+text2 CODE 0 3D8 3D8 24 1
+text3 CODE 0 3B2 3B2 26 1
+text4 CODE 0 386 386 2C 1
+text5 CODE 0 2A8 2A8 60 1
+text6 CODE 0 3FC 3FC 1C 1
+text7 CODE 0 234 234 74 1
+text8 CODE 0 418 418 C 1
+idataCOMRAM CODE 0 424 424 2 1
+cstackCOMRAM COMRAM 1 1 1 24 1
+cstackBANK0 BANK0 1 60 60 9 1
+temp COMRAM 1 45 45 1 1
+intcode CODE 0 8 8 1B0 1
+dataCOMRAM COMRAM 1 43 43 2 1
+bssCOMRAM COMRAM 1 25 25 1E 1
+# %UNUSED Section
+# This section enumerates the unused ranges of each CLASS. Each entry
+# is described on a single line as follows:
+# <class name> <range> <delta>
+# Addresses given in the range are in hexadecimal and units of delta.
+%UNUSED
+RAM 69-5FF 1
+SFR F38-FFF 1
+BANK0 69-FF 1
+BANK1 100-1FF 1
+BANK2 200-2FF 1
+BANK3 300-3FF 1
+BANK4 400-4FF 1
+BANK5 500-5FF 1
+CONST 4-7 1
+CONST 426-7FFF 1
+STACK 69-5FF 1
+SMALLCONST 600-7FFF 1
+CODE 4-7 1
+CODE 426-7FFF 1
+BIGRAM 46-5F 1
+BIGRAM 69-5FF 1
+COMRAM 46-5F 1
+EEDATA F00000-F000FF 1
+MEDIUMCONST 600-7FFF 1
+# %LINETAB Section
+# This section enumerates the file/line to address mappings.
+# The beginning of the section is indicated by %LINETAB.
+# The first line indicates the name of the first object file, e.g.
+# $foo.obj
+# Each line that follows describes a single mapping until the next
+# object file. Mappings have the following format:
+# <address> <psect name> <class name> ><line number>:<file name>
+# The address is absolute and given given in unqualified hex
+# in delta units of the psect. All mappings within an object file
+# are in ascending order of addresses.
+# All other numeric values are in decimal.
+%LINETAB
+$dist/default/production\src.production.obj
+8 intcode CODE >101:Z:\SAMB_4\projects\xilofono\src\main.c
+8 intcode CODE >33:Z:\SAMB_4\projects\xilofono\src\rs232.c
+52 intcode CODE >105:Z:\SAMB_4\projects\xilofono\src\main.c
+54 intcode CODE >107:Z:\SAMB_4\projects\xilofono\src\main.c
+58 intcode CODE >109:Z:\SAMB_4\projects\xilofono\src\main.c
+5C intcode CODE >110:Z:\SAMB_4\projects\xilofono\src\main.c
+60 intcode CODE >111:Z:\SAMB_4\projects\xilofono\src\main.c
+60 intcode CODE >112:Z:\SAMB_4\projects\xilofono\src\main.c
+B6 intcode CODE >113:Z:\SAMB_4\projects\xilofono\src\main.c
+BE intcode CODE >115:Z:\SAMB_4\projects\xilofono\src\main.c
+C2 intcode CODE >116:Z:\SAMB_4\projects\xilofono\src\main.c
+C6 intcode CODE >117:Z:\SAMB_4\projects\xilofono\src\main.c
+C6 intcode CODE >118:Z:\SAMB_4\projects\xilofono\src\main.c
+11C intcode CODE >119:Z:\SAMB_4\projects\xilofono\src\main.c
+13C intcode CODE >129:Z:\SAMB_4\projects\xilofono\src\main.c
+146 intcode CODE >130:Z:\SAMB_4\projects\xilofono\src\main.c
+168 intcode CODE >133:Z:\SAMB_4\projects\xilofono\src\main.c
+16A intcode CODE >134:Z:\SAMB_4\projects\xilofono\src\main.c
+16A intcode CODE >136:Z:\SAMB_4\projects\xilofono\src\main.c
+16C intcode CODE >137:Z:\SAMB_4\projects\xilofono\src\main.c
+418 text8 CODE >29:Z:\SAMB_4\projects\xilofono\src\rs232.c
+41A text8 CODE >31:Z:\SAMB_4\projects\xilofono\src\rs232.c
+41E text8 CODE >32:Z:\SAMB_4\projects\xilofono\src\rs232.c
+422 text8 CODE >33:Z:\SAMB_4\projects\xilofono\src\rs232.c
+234 text7 CODE >226:Z:\SAMB_4\projects\xilofono\src\main.c
+234 text7 CODE >231:Z:\SAMB_4\projects\xilofono\src\main.c
+23C text7 CODE >235:Z:\SAMB_4\projects\xilofono\src\main.c
+250 text7 CODE >236:Z:\SAMB_4\projects\xilofono\src\main.c
+25C text7 CODE >238:Z:\SAMB_4\projects\xilofono\src\main.c
+282 text7 CODE >240:Z:\SAMB_4\projects\xilofono\src\main.c
+284 text7 CODE >241:Z:\SAMB_4\projects\xilofono\src\main.c
+296 text7 CODE >240:Z:\SAMB_4\projects\xilofono\src\main.c
+296 text7 CODE >242:Z:\SAMB_4\projects\xilofono\src\main.c
+3FC text6 CODE >4:Z:\SAMB_4\projects\xilofono\src\rs232.c
+3FC text6 CODE >7:Z:\SAMB_4\projects\xilofono\src\rs232.c
+3FE text6 CODE >8:Z:\SAMB_4\projects\xilofono\src\rs232.c
+400 text6 CODE >11:Z:\SAMB_4\projects\xilofono\src\rs232.c
+402 text6 CODE >12:Z:\SAMB_4\projects\xilofono\src\rs232.c
+406 text6 CODE >13:Z:\SAMB_4\projects\xilofono\src\rs232.c
+40A text6 CODE >14:Z:\SAMB_4\projects\xilofono\src\rs232.c
+40C text6 CODE >15:Z:\SAMB_4\projects\xilofono\src\rs232.c
+40E text6 CODE >18:Z:\SAMB_4\projects\xilofono\src\rs232.c
+410 text6 CODE >19:Z:\SAMB_4\projects\xilofono\src\rs232.c
+412 text6 CODE >20:Z:\SAMB_4\projects\xilofono\src\rs232.c
+414 text6 CODE >21:Z:\SAMB_4\projects\xilofono\src\rs232.c
+416 text6 CODE >22:Z:\SAMB_4\projects\xilofono\src\rs232.c
+2A8 text5 CODE >140:Z:\SAMB_4\projects\xilofono\src\main.c
+2A8 text5 CODE >142:Z:\SAMB_4\projects\xilofono\src\main.c
+2AA text5 CODE >146:Z:\SAMB_4\projects\xilofono\src\main.c
+2AC text5 CODE >148:Z:\SAMB_4\projects\xilofono\src\main.c
+2B8 text5 CODE >150:Z:\SAMB_4\projects\xilofono\src\main.c
+2BE text5 CODE >152:Z:\SAMB_4\projects\xilofono\src\main.c
+2C2 text5 CODE >156:Z:\SAMB_4\projects\xilofono\src\main.c
+2C8 text5 CODE >157:Z:\SAMB_4\projects\xilofono\src\main.c
+2CC text5 CODE >158:Z:\SAMB_4\projects\xilofono\src\main.c
+2D0 text5 CODE >159:Z:\SAMB_4\projects\xilofono\src\main.c
+2D4 text5 CODE >162:Z:\SAMB_4\projects\xilofono\src\main.c
+2D6 text5 CODE >163:Z:\SAMB_4\projects\xilofono\src\main.c
+2D8 text5 CODE >165:Z:\SAMB_4\projects\xilofono\src\main.c
+2DA text5 CODE >166:Z:\SAMB_4\projects\xilofono\src\main.c
+2DC text5 CODE >167:Z:\SAMB_4\projects\xilofono\src\main.c
+2DE text5 CODE >168:Z:\SAMB_4\projects\xilofono\src\main.c
+2E0 text5 CODE >171:Z:\SAMB_4\projects\xilofono\src\main.c
+2E2 text5 CODE >173:Z:\SAMB_4\projects\xilofono\src\main.c
+2E4 text5 CODE >175:Z:\SAMB_4\projects\xilofono\src\main.c
+2E6 text5 CODE >177:Z:\SAMB_4\projects\xilofono\src\main.c
+2E8 text5 CODE >181:Z:\SAMB_4\projects\xilofono\src\main.c
+2EC text5 CODE >183:Z:\SAMB_4\projects\xilofono\src\main.c
+2F4 text5 CODE >185:Z:\SAMB_4\projects\xilofono\src\main.c
+2F8 text5 CODE >187:Z:\SAMB_4\projects\xilofono\src\main.c
+2FA text5 CODE >190:Z:\SAMB_4\projects\xilofono\src\main.c
+2FC text5 CODE >191:Z:\SAMB_4\projects\xilofono\src\main.c
+2FE text5 CODE >194:Z:\SAMB_4\projects\xilofono\src\main.c
+300 text5 CODE >197:Z:\SAMB_4\projects\xilofono\src\main.c
+304 text5 CODE >199:Z:\SAMB_4\projects\xilofono\src\main.c
+306 text5 CODE >200:Z:\SAMB_4\projects\xilofono\src\main.c
+386 text4 CODE >8:C:\Program Files\Microchip\xc8\v1.44\sources\common\memset.c
+386 text4 CODE >18:C:\Program Files\Microchip\xc8\v1.44\sources\common\memset.c
+38E text4 CODE >19:C:\Program Files\Microchip\xc8\v1.44\sources\common\memset.c
+390 text4 CODE >20:C:\Program Files\Microchip\xc8\v1.44\sources\common\memset.c
+3A0 text4 CODE >19:C:\Program Files\Microchip\xc8\v1.44\sources\common\memset.c
+3B2 text3 CODE >51:Z:\SAMB_4\projects\xilofono\src\midi.c
+3B2 text3 CODE >53:Z:\SAMB_4\projects\xilofono\src\midi.c
+3BA text3 CODE >57:Z:\SAMB_4\projects\xilofono\src\midi.c
+3D8 text2 CODE >40:Z:\SAMB_4\projects\xilofono\src\midi.c
+3D8 text2 CODE >42:Z:\SAMB_4\projects\xilofono\src\midi.c
+3E0 text2 CODE >46:Z:\SAMB_4\projects\xilofono\src\midi.c
+1BC text1 CODE >62:Z:\SAMB_4\projects\xilofono\src\midi.c
+1BC text1 CODE >64:Z:\SAMB_4\projects\xilofono\src\midi.c
+1C4 text1 CODE >68:Z:\SAMB_4\projects\xilofono\src\midi.c
+1DA text1 CODE >72:Z:\SAMB_4\projects\xilofono\src\midi.c
+1EA text1 CODE >73:Z:\SAMB_4\projects\xilofono\src\midi.c
+1FE text1 CODE >75:Z:\SAMB_4\projects\xilofono\src\midi.c
+20E text1 CODE >76:Z:\SAMB_4\projects\xilofono\src\midi.c
+21E text1 CODE >79:Z:\SAMB_4\projects\xilofono\src\midi.c
+308 text0 CODE >204:Z:\SAMB_4\projects\xilofono\src\main.c
+308 text0 CODE >210:Z:\SAMB_4\projects\xilofono\src\main.c
+30C text0 CODE >213:Z:\SAMB_4\projects\xilofono\src\main.c
+328 text0 CODE >216:Z:\SAMB_4\projects\xilofono\src\main.c
+344 text0 CODE >217:Z:\SAMB_4\projects\xilofono\src\main.c
+346 text0 CODE >220:Z:\SAMB_4\projects\xilofono\src\main.c
+346 text0 CODE >221:Z:\SAMB_4\projects\xilofono\src\main.c
+352 text0 CODE >220:Z:\SAMB_4\projects\xilofono\src\main.c
+354 cinit CODE >1211:C:\Users\_prossn\AppData\Local\Temp\s5hg.
+354 cinit CODE >1213:C:\Users\_prossn\AppData\Local\Temp\s5hg.
+354 cinit CODE >1216:C:\Users\_prossn\AppData\Local\Temp\s5hg.
+354 cinit CODE >1238:C:\Users\_prossn\AppData\Local\Temp\s5hg.
+356 cinit CODE >1239:C:\Users\_prossn\AppData\Local\Temp\s5hg.
+358 cinit CODE >1240:C:\Users\_prossn\AppData\Local\Temp\s5hg.
+35A cinit CODE >1241:C:\Users\_prossn\AppData\Local\Temp\s5hg.
+35C cinit CODE >1242:C:\Users\_prossn\AppData\Local\Temp\s5hg.
+35E cinit CODE >1243:C:\Users\_prossn\AppData\Local\Temp\s5hg.
+360 cinit CODE >1244:C:\Users\_prossn\AppData\Local\Temp\s5hg.
+362 cinit CODE >1245:C:\Users\_prossn\AppData\Local\Temp\s5hg.
+366 cinit CODE >1246:C:\Users\_prossn\AppData\Local\Temp\s5hg.
+368 cinit CODE >1247:C:\Users\_prossn\AppData\Local\Temp\s5hg.
+36C cinit CODE >1251:C:\Users\_prossn\AppData\Local\Temp\s5hg.
+370 cinit CODE >1252:C:\Users\_prossn\AppData\Local\Temp\s5hg.
+372 cinit CODE >1253:C:\Users\_prossn\AppData\Local\Temp\s5hg.
+372 cinit CODE >1254:C:\Users\_prossn\AppData\Local\Temp\s5hg.
+374 cinit CODE >1255:C:\Users\_prossn\AppData\Local\Temp\s5hg.
+376 cinit CODE >1256:C:\Users\_prossn\AppData\Local\Temp\s5hg.
+378 cinit CODE >1262:C:\Users\_prossn\AppData\Local\Temp\s5hg.
+378 cinit CODE >1264:C:\Users\_prossn\AppData\Local\Temp\s5hg.
+37A cinit CODE >1265:C:\Users\_prossn\AppData\Local\Temp\s5hg.
+37C cinit CODE >1267:C:\Users\_prossn\AppData\Local\Temp\s5hg.
+37E cinit CODE >1268:C:\Users\_prossn\AppData\Local\Temp\s5hg.
+380 cinit CODE >1269:C:\Users\_prossn\AppData\Local\Temp\s5hg.
+382 cinit CODE >1270:C:\Users\_prossn\AppData\Local\Temp\s5hg.
+# %SYMTAB Section
+# An enumeration of all symbols in the program.
+# The beginning of the section is indicated by %SYMTAB.
+# Each line describes a single symbol as follows:
+# <label> <value> [-]<load-adj> <class> <space> <psect> <file-name>
+# The value and load-adj are both in unqualified hexadecimal.
+# All other numeric values are in decimal. The load-adj is the
+# quantity one needs to add to the symbol value in order to obtain the load
+# address of the symbol. This value may be signed. If the symbol
+# was defined in a psect then <psect> will be "-". File-name
+# is the name of the object file in which the symbol was defined.
+%SYMTAB
+__Lmediumconst 0 0 MEDIUMCONST 0 mediumconst dist/default/production\src.production.obj
+__Hspace_0 30000E 0 ABS 0 - dist/default/production\src.production.obj
+__Hspace_1 69 0 ABS 0 - dist/default/production\src.production.obj
+__Hspace_2 0 0 ABS 0 - dist/default/production\src.production.obj
+__CFG_IESO$OFF 0 0 ABS 0 - dist/default/production\src.production.obj
+isr@data 18 0 COMRAM 1 cstackCOMRAM dist/default/production\src.production.obj
+__end_of_midi_set_status 3FC 0 CODE 0 text2 dist/default/production\src.production.obj
+__Hibigdata 0 0 CODE 0 ibigdata dist/default/production\src.production.obj
+__mediumconst 0 0 MEDIUMCONST 0 mediumconst C:\Users\_prossn\AppData\Local\Temp\s5hg.obj
+__Heeprom_data 0 0 EEDATA 0 eeprom_data dist/default/production\src.production.obj
+__Lsmallconst 0 0 SMALLCONST 0 smallconst dist/default/production\src.production.obj
+___sp 0 0 STACK 2 stack C:\Users\_prossn\AppData\Local\Temp\s5hg.obj
+_main 308 0 CODE 0 text0 dist/default/production\src.production.obj
+btemp 45 0 COMRAM 1 temp dist/default/production\src.production.obj
+isr@i 19 0 COMRAM 1 cstackCOMRAM dist/default/production\src.production.obj
+start 1B8 0 CODE 0 init C:\Users\_prossn\AppData\Local\Temp\s5hg.obj
+__size_of_main 0 0 ABS 0 - dist/default/production\src.production.obj
+__HbssCOMRAM 0 0 ABS 0 bssCOMRAM dist/default/production\src.production.obj
+eusart_write_midi@data 21 0 COMRAM 1 cstackCOMRAM dist/default/production\src.production.obj
+__CFG_CCP2MX$PORTC1 0 0 ABS 0 - dist/default/production\src.production.obj
+midi_note_on@channel 21 0 COMRAM 1 cstackCOMRAM dist/default/production\src.production.obj
+__Hpowerup 1B8 0 CODE 0 powerup dist/default/production\src.production.obj
+__CFG_CCP3MX$PORTB5 0 0 ABS 0 - dist/default/production\src.production.obj
+__size_of_eusart_write_midi 0 0 ABS 0 - dist/default/production\src.production.obj
+__HdataCOMRAM 0 0 ABS 0 dataCOMRAM dist/default/production\src.production.obj
+__accesstop 60 0 ABS 0 - C:\Users\_prossn\AppData\Local\Temp\s5hg.obj
+intlevel0 0 0 CODE 0 text C:\Users\_prossn\AppData\Local\Temp\s5hg.obj
+intlevel1 0 0 CODE 0 text C:\Users\_prossn\AppData\Local\Temp\s5hg.obj
+intlevel2 0 0 CODE 0 text C:\Users\_prossn\AppData\Local\Temp\s5hg.obj
+intlevel3 0 0 CODE 0 text C:\Users\_prossn\AppData\Local\Temp\s5hg.obj
+__LbssCOMRAM 0 0 ABS 0 bssCOMRAM dist/default/production\src.production.obj
+_midi_set_status 3D8 0 CODE 0 text2 dist/default/production\src.production.obj
+_OSCCONbits FD3 0 ABS 0 - dist/default/production\src.production.obj
+__LnvFARRAM 0 0 FARRAM 0 nvFARRAM dist/default/production\src.production.obj
+wtemp6 46 0 COMRAM 1 temp dist/default/production\src.production.obj
+__CFG_EBTR0$OFF 0 0 ABS 0 - dist/default/production\src.production.obj
+__CFG_EBTR1$OFF 0 0 ABS 0 - dist/default/production\src.production.obj
+__CFG_EBTR2$OFF 0 0 ABS 0 - dist/default/production\src.production.obj
+__CFG_EBTR3$OFF 0 0 ABS 0 - dist/default/production\src.production.obj
+__CFG_EBTRB$OFF 0 0 ABS 0 - dist/default/production\src.production.obj
+eusart_write_midi@pkt 1B 0 COMRAM 1 cstackCOMRAM dist/default/production\src.production.obj
+__CFG_P2BMX$PORTD2 0 0 ABS 0 - dist/default/production\src.production.obj
+__Hifardata 0 0 CODE 0 ifardata dist/default/production\src.production.obj
+__Hclrtext 0 0 ABS 0 clrtext dist/default/production\src.production.obj
+__pidataCOMRAM 424 0 CODE 0 idataCOMRAM dist/default/production\src.production.obj
+__CFG_PRICLKEN$ON 0 0 ABS 0 - dist/default/production\src.production.obj
+midi_note_on@velocity 24 0 COMRAM 1 cstackCOMRAM dist/default/production\src.production.obj
+_ANSELA F38 0 ABS 0 - dist/default/production\src.production.obj
+_ANSELB F39 0 ABS 0 - dist/default/production\src.production.obj
+_ANSELC F3A 0 ABS 0 - dist/default/production\src.production.obj
+_ANSELD F3B 0 ABS 0 - dist/default/production\src.production.obj
+___inthi_sp 0 0 STACK 2 stack C:\Users\_prossn\AppData\Local\Temp\s5hg.obj
+___intlo_sp 0 0 STACK 2 stack C:\Users\_prossn\AppData\Local\Temp\s5hg.obj
+__LdataCOMRAM 0 0 ABS 0 dataCOMRAM dist/default/production\src.production.obj
+__size_of_init_hw 0 0 ABS 0 - dist/default/production\src.production.obj
+eusart_write_midi@length 1F 0 COMRAM 1 cstackCOMRAM dist/default/production\src.production.obj
+__Hintcode_body 0 0 ABS 0 intcode_body dist/default/production\src.production.obj
+__Lintsave_regs 0 0 BIGRAM 1 intsave_regs dist/default/production\src.production.obj
+_TXSTA1bits FAC 0 ABS 0 - dist/default/production\src.production.obj
+__Hmediumconst 0 0 MEDIUMCONST 0 mediumconst dist/default/production\src.production.obj
+__Hintcodelo 1B8 0 CODE 0 intcodelo dist/default/production\src.production.obj
+midi_note_on@note 23 0 COMRAM 1 cstackCOMRAM dist/default/production\src.production.obj
+_OSCTUNEbits F9B 0 ABS 0 - dist/default/production\src.production.obj
+__LidataCOMRAM 0 0 ABS 0 idataCOMRAM dist/default/production\src.production.obj
+__size_of_putch 0 0 ABS 0 - dist/default/production\src.production.obj
+__Lintcodelo 1B8 0 CODE 0 intcodelo dist/default/production\src.production.obj
+__CFG_FCMEN$OFF 0 0 ABS 0 - dist/default/production\src.production.obj
+start_initialization 354 0 CODE 0 cinit dist/default/production\src.production.obj
+__CFG_PBADEN$ON 0 0 ABS 0 - dist/default/production\src.production.obj
+__HnvFARRAM 0 0 FARRAM 0 nvFARRAM dist/default/production\src.production.obj
+__size_of_midi_set_status 0 0 ABS 0 - dist/default/production\src.production.obj
+_TRISCbits F94 0 ABS 0 - dist/default/production\src.production.obj
+_TRISDbits F95 0 ABS 0 - dist/default/production\src.production.obj
+___rparam_used 1 0 ABS 0 - dist/default/production\src.production.obj
+_RC1REG FAE 0 ABS 0 - dist/default/production\src.production.obj
+__end_of_memset 3B2 0 CODE 0 text4 dist/default/production\src.production.obj
+__end_of_eusart_write_midi 2A8 0 CODE 0 text7 dist/default/production\src.production.obj
+__CFG_WDTPS$32768 0 0 ABS 0 - dist/default/production\src.production.obj
+_SPBRG1 FAF 0 ABS 0 - dist/default/production\src.production.obj
+__pcstackBANK0 60 0 BANK0 1 cstackBANK0 dist/default/production\src.production.obj
+_TX1REG FAD 0 ABS 0 - dist/default/production\src.production.obj
+__end_of_init_hw 308 0 CODE 0 text5 dist/default/production\src.production.obj
+__Hbank0 0 0 ABS 0 bank0 dist/default/production\src.production.obj
+__Hbank1 0 0 ABS 0 bank1 dist/default/production\src.production.obj
+__Hbank2 0 0 ABS 0 bank2 dist/default/production\src.production.obj
+__Hbank3 0 0 ABS 0 bank3 dist/default/production\src.production.obj
+__Hbank4 0 0 ABS 0 bank4 dist/default/production\src.production.obj
+__Hbank5 0 0 ABS 0 bank5 dist/default/production\src.production.obj
+__Hcinit 0 0 ABS 0 cinit dist/default/production\src.production.obj
+__Hconst 0 0 CONST 0 const dist/default/production\src.production.obj
+__Hidata 0 0 CODE 0 idata dist/default/production\src.production.obj
+__Hidloc 200008 0 IDLOC 0 idloc dist/default/production\src.production.obj
+__Hnvbit 0 0 COMRAM 1 nvbit dist/default/production\src.production.obj
+__Hparam 0 0 COMRAM 1 rparam dist/default/production\src.production.obj
+__Hrdata 0 0 COMRAM 1 rdata dist/default/production\src.production.obj
+__Hstack 0 0 STACK 2 stack dist/default/production\src.production.obj
+__Htext0 0 0 ABS 0 text0 dist/default/production\src.production.obj
+__Htext1 0 0 ABS 0 text1 dist/default/production\src.production.obj
+__Htext2 0 0 ABS 0 text2 dist/default/production\src.production.obj
+__Htext3 0 0 ABS 0 text3 dist/default/production\src.production.obj
+__Htext4 0 0 ABS 0 text4 dist/default/production\src.production.obj
+__Htext5 0 0 ABS 0 text5 dist/default/production\src.production.obj
+__Htext6 0 0 ABS 0 text6 dist/default/production\src.production.obj
+__Htext7 0 0 ABS 0 text7 dist/default/production\src.production.obj
+__Htext8 0 0 ABS 0 text8 dist/default/production\src.production.obj
+__Hbigbss 0 0 BIGRAM 1 bigbss dist/default/production\src.production.obj
+__Hbigram 0 0 ABS 0 bigram dist/default/production\src.production.obj
+__smallconst 0 0 SMALLCONST 0 smallconst C:\Users\_prossn\AppData\Local\Temp\s5hg.obj
+__CFG_FOSC$INTIO7 0 0 ABS 0 - dist/default/production\src.production.obj
+__Hcomram 0 0 ABS 0 comram dist/default/production\src.production.obj
+__Hconfig 30000E 0 CONFIG 0 config dist/default/production\src.production.obj
+midi_note_on@pkt 1F 0 COMRAM 1 cstackCOMRAM dist/default/production\src.production.obj
+__Lbank0 0 0 ABS 0 bank0 dist/default/production\src.production.obj
+__Lbank1 0 0 ABS 0 bank1 dist/default/production\src.production.obj
+__Lbank2 0 0 ABS 0 bank2 dist/default/production\src.production.obj
+__Lbank3 0 0 ABS 0 bank3 dist/default/production\src.production.obj
+__Lbank4 0 0 ABS 0 bank4 dist/default/production\src.production.obj
+__Lbank5 0 0 ABS 0 bank5 dist/default/production\src.production.obj
+__Lcinit 0 0 ABS 0 cinit dist/default/production\src.production.obj
+__Lconst 0 0 CONST 0 const dist/default/production\src.production.obj
+__Lidata 0 0 CODE 0 idata dist/default/production\src.production.obj
+__Lidloc 200000 0 IDLOC 0 idloc dist/default/production\src.production.obj
+__Lnvbit 0 0 COMRAM 1 nvbit dist/default/production\src.production.obj
+__Lparam 0 0 COMRAM 1 rparam dist/default/production\src.production.obj
+__Lrdata 0 0 COMRAM 1 rdata dist/default/production\src.production.obj
+__Lstack 0 0 STACK 2 stack dist/default/production\src.production.obj
+__Ltext0 0 0 ABS 0 text0 dist/default/production\src.production.obj
+__Ltext1 0 0 ABS 0 text1 dist/default/production\src.production.obj
+__Ltext2 0 0 ABS 0 text2 dist/default/production\src.production.obj
+__Ltext3 0 0 ABS 0 text3 dist/default/production\src.production.obj
+__Ltext4 0 0 ABS 0 text4 dist/default/production\src.production.obj
+__Ltext5 0 0 ABS 0 text5 dist/default/production\src.production.obj
+__Ltext6 0 0 ABS 0 text6 dist/default/production\src.production.obj
+__Ltext7 0 0 ABS 0 text7 dist/default/production\src.production.obj
+__Ltext8 0 0 ABS 0 text8 dist/default/production\src.production.obj
+__Hfarbss 0 0 FARRAM 0 farbss dist/default/production\src.production.obj
+__Lintcode_body 0 0 ABS 0 intcode_body dist/default/production\src.production.obj
+_PORTAbits F80 0 ABS 0 - dist/default/production\src.production.obj
+_PORTDbits F83 0 ABS 0 - dist/default/production\src.production.obj
+__CFG_T3CMX$PORTC0 0 0 ABS 0 - dist/default/production\src.production.obj
+_INTCONbits FF2 0 ABS 0 - dist/default/production\src.production.obj
+__Habs1 0 0 ABS 0 abs1 dist/default/production\src.production.obj
+__Hdata 0 0 ABS 0 data dist/default/production\src.production.obj
+__Hinit 1BC 0 CODE 0 init dist/default/production\src.production.obj
+__Hrbit 0 0 COMRAM 1 rbit dist/default/production\src.production.obj
+__Hrbss 0 0 COMRAM 1 rbss dist/default/production\src.production.obj
+__Htemp 46 0 COMRAM 1 temp dist/default/production\src.production.obj
+__Htext 0 0 ABS 0 text dist/default/production\src.production.obj
+__Labs1 0 0 ABS 0 abs1 dist/default/production\src.production.obj
+__Ldata 0 0 ABS 0 data dist/default/production\src.production.obj
+__Linit 1B8 0 CODE 0 init dist/default/production\src.production.obj
+__Lrbit 0 0 COMRAM 1 rbit dist/default/production\src.production.obj
+__Lrbss 0 0 COMRAM 1 rbss dist/default/production\src.production.obj
+__Ltemp 45 0 COMRAM 1 temp dist/default/production\src.production.obj
+__Ltext 0 0 ABS 0 text dist/default/production\src.production.obj
+__CFG_XINST$OFF 0 0 ABS 0 - dist/default/production\src.production.obj
+_keypresses 25 0 COMRAM 1 bssCOMRAM dist/default/production\src.production.obj
+memset@c 1C 0 COMRAM 1 cstackCOMRAM dist/default/production\src.production.obj
+memset@n 1E 0 COMRAM 1 cstackCOMRAM dist/default/production\src.production.obj
+memset@p 20 0 COMRAM 1 cstackCOMRAM dist/default/production\src.production.obj
+__LcstackBANK0 0 0 ABS 0 cstackBANK0 dist/default/production\src.production.obj
+int$flags 45 0 COMRAM 1 temp dist/default/production\src.production.obj
+__HcstackCOMRAM 0 0 ABS 0 cstackCOMRAM dist/default/production\src.production.obj
+__Hintret 0 0 ABS 0 intret dist/default/production\src.production.obj
+__Hirdata 0 0 CODE 0 irdata dist/default/production\src.production.obj
+_PR2 FBB 0 ABS 0 - dist/default/production\src.production.obj
+__S0 30000E 0 ABS 0 - dist/default/production\src.production.obj
+__S1 69 0 ABS 0 - dist/default/production\src.production.obj
+__S2 0 0 ABS 0 - dist/default/production\src.production.obj
+_isr 8 0 CODE 0 intcode dist/default/production\src.production.obj
+__HidataCOMRAM 0 0 ABS 0 idataCOMRAM dist/default/production\src.production.obj
+__Lbigdata 0 0 BIGRAM 1 bigdata dist/default/production\src.production.obj
+__Hnvrram 0 0 COMRAM 1 nvrram dist/default/production\src.production.obj
+_eusart_write_midi 234 0 CODE 0 text7 dist/default/production\src.production.obj
+__end_of_isr 1B8 0 CODE 0 intcode dist/default/production\src.production.obj
+__CFG_BORV$190 0 0 ABS 0 - dist/default/production\src.production.obj
+__Lintentry 0 0 ABS 0 intentry dist/default/production\src.production.obj
+__Hramtop 600 0 RAM 0 ramtop dist/default/production\src.production.obj
+__Hrparam 0 0 COMRAM 1 rparam dist/default/production\src.production.obj
+_midi_note_on 1BC 0 CODE 0 text1 dist/default/production\src.production.obj
+__CFG_PWRTEN$OFF 0 0 ABS 0 - dist/default/production\src.production.obj
+__activetblptr 2 0 ABS 0 - dist/default/production\src.production.obj
+__Hstruct 0 0 COMRAM 1 struct dist/default/production\src.production.obj
+_PIE1bits F9D 0 ABS 0 - dist/default/production\src.production.obj
+__CFG_HFOFST$ON 0 0 ABS 0 - dist/default/production\src.production.obj
+_memset 386 0 CODE 0 text4 dist/default/production\src.production.obj
+memset@p1 1A 0 COMRAM 1 cstackCOMRAM dist/default/production\src.production.obj
+__Lbigbss 0 0 BIGRAM 1 bigbss dist/default/production\src.production.obj
+__Lbigram 0 0 ABS 0 bigram dist/default/production\src.production.obj
+midi_set_channel@pkt 1A 0 COMRAM 1 cstackCOMRAM dist/default/production\src.production.obj
+__Lcomram 0 0 ABS 0 comram dist/default/production\src.production.obj
+__Lconfig 300000 0 CONFIG 0 config dist/default/production\src.production.obj
+__CFG_WDTEN$ON 0 0 ABS 0 - dist/default/production\src.production.obj
+_RCSTA1bits FAB 0 ABS 0 - dist/default/production\src.production.obj
+__Lfarbss 0 0 FARRAM 0 farbss dist/default/production\src.production.obj
+_eusart1_init 3FC 0 CODE 0 text6 dist/default/production\src.production.obj
+__Lfardata 0 0 FARRAM 0 fardata dist/default/production\src.production.obj
+midi_set_status@status 1C 0 COMRAM 1 cstackCOMRAM dist/default/production\src.production.obj
+__size_of_midi_note_on 0 0 ABS 0 - dist/default/production\src.production.obj
+stackhi 5FF 0 ABS 0 - C:\Users\_prossn\AppData\Local\Temp\s5hg.obj
+stacklo 69 0 ABS 0 - C:\Users\_prossn\AppData\Local\Temp\s5hg.obj
+__Lintcode 8 0 CODE 0 intcode dist/default/production\src.production.obj
+__Lintret 0 0 ABS 0 intret dist/default/production\src.production.obj
+__Lirdata 0 0 CODE 0 irdata dist/default/production\src.production.obj
+_midi_set_channel 3B2 0 CODE 0 text3 dist/default/production\src.production.obj
+__Lspace_0 0 0 ABS 0 - dist/default/production\src.production.obj
+__Lspace_1 0 0 ABS 0 - dist/default/production\src.production.obj
+__Lspace_2 0 0 ABS 0 - dist/default/production\src.production.obj
+__pbssCOMRAM 25 0 COMRAM 1 bssCOMRAM dist/default/production\src.production.obj
+__size_of_memset 0 0 ABS 0 - dist/default/production\src.production.obj
+__HcstackBANK0 0 0 ABS 0 cstackBANK0 dist/default/production\src.production.obj
+_PIR1bits F9E 0 ABS 0 - dist/default/production\src.production.obj
+__CFG_LVP$ON 0 0 ABS 0 - dist/default/production\src.production.obj
+__LcstackCOMRAM 0 0 ABS 0 cstackCOMRAM dist/default/production\src.production.obj
+end_of_initialization 378 0 CODE 0 cinit dist/default/production\src.production.obj
+__end_of_midi_note_on 234 0 CODE 0 text1 dist/default/production\src.production.obj
+__Lnvrram 0 0 COMRAM 1 nvrram dist/default/production\src.production.obj
+__Hintentry 0 0 ABS 0 intentry dist/default/production\src.production.obj
+__CFG_STVREN$ON 0 0 ABS 0 - dist/default/production\src.production.obj
+_midi_base_scale 43 0 COMRAM 1 dataCOMRAM dist/default/production\src.production.obj
+__Hreset_vec 4 0 CODE 0 reset_vec dist/default/production\src.production.obj
+__size_of_eusart1_init 0 0 ABS 0 - dist/default/production\src.production.obj
+_init_hw 2A8 0 CODE 0 text5 dist/default/production\src.production.obj
+__Lramtop 600 0 RAM 0 ramtop dist/default/production\src.production.obj
+__Lrparam 0 0 COMRAM 1 rparam dist/default/production\src.production.obj
+__pcinit 354 0 CODE 0 cinit dist/default/production\src.production.obj
+__ptext0 308 0 CODE 0 text0 dist/default/production\src.production.obj
+__ptext1 1BC 0 CODE 0 text1 dist/default/production\src.production.obj
+__ptext2 3D8 0 CODE 0 text2 dist/default/production\src.production.obj
+__ptext3 3B2 0 CODE 0 text3 dist/default/production\src.production.obj
+__ptext4 386 0 CODE 0 text4 dist/default/production\src.production.obj
+__ptext5 2A8 0 CODE 0 text5 dist/default/production\src.production.obj
+__ptext6 3FC 0 CODE 0 text6 dist/default/production\src.production.obj
+__ptext7 234 0 CODE 0 text7 dist/default/production\src.production.obj
+__ptext8 418 0 CODE 0 text8 dist/default/production\src.production.obj
+__Lstruct 0 0 COMRAM 1 struct dist/default/production\src.production.obj
+__ramtop 600 0 RAM 0 ramtop C:\Users\_prossn\AppData\Local\Temp\s5hg.obj
+putch@c 1A 0 COMRAM 1 cstackCOMRAM dist/default/production\src.production.obj
+__Lpowerup 1B8 0 CODE 0 powerup dist/default/production\src.production.obj
+__Leeprom_data 0 0 EEDATA 0 eeprom_data dist/default/production\src.production.obj
+_isr$592 17 0 COMRAM 1 cstackCOMRAM dist/default/production\src.production.obj
+midi_set_status@pkt 1A 0 COMRAM 1 cstackCOMRAM dist/default/production\src.production.obj
+__Lreset_vec 0 0 CODE 0 reset_vec dist/default/production\src.production.obj
+__end_of_eusart1_init 418 0 CODE 0 text6 dist/default/production\src.production.obj
+___param_bank 0 0 ABS 0 - dist/default/production\src.production.obj
+__Hbigdata 0 0 BIGRAM 1 bigdata dist/default/production\src.production.obj
+__end_of__initialization 378 0 CODE 0 cinit dist/default/production\src.production.obj
+__CFG_WRT0$OFF 0 0 ABS 0 - dist/default/production\src.production.obj
+__CFG_WRT1$OFF 0 0 ABS 0 - dist/default/production\src.production.obj
+__CFG_WRT2$OFF 0 0 ABS 0 - dist/default/production\src.production.obj
+__CFG_WRT3$OFF 0 0 ABS 0 - dist/default/production\src.production.obj
+__CFG_PLLCFG$ON 0 0 ABS 0 - dist/default/production\src.production.obj
+__CFG_WRTB$OFF 0 0 ABS 0 - dist/default/production\src.production.obj
+__Libigdata 0 0 CODE 0 ibigdata dist/default/production\src.production.obj
+__CFG_WRTC$OFF 0 0 ABS 0 - dist/default/production\src.production.obj
+__CFG_WRTD$OFF 0 0 ABS 0 - dist/default/production\src.production.obj
+__Lclrtext 0 0 ABS 0 clrtext dist/default/production\src.production.obj
+_SPBRGH1 FB0 0 ABS 0 - dist/default/production\src.production.obj
+__end_of_midi_set_channel 3D8 0 CODE 0 text3 dist/default/production\src.production.obj
+__pcstackCOMRAM 1 0 COMRAM 1 cstackCOMRAM dist/default/production\src.production.obj
+__size_of_midi_set_channel 0 0 ABS 0 - dist/default/production\src.production.obj
+__CFG_BOREN$SBORDIS 0 0 ABS 0 - dist/default/production\src.production.obj
+__end_of_main 354 0 CODE 0 text0 dist/default/production\src.production.obj
+__pintcode 8 0 CODE 0 intcode dist/default/production\src.production.obj
+_PORTA F80 0 ABS 0 - dist/default/production\src.production.obj
+_PORTB F81 0 ABS 0 - dist/default/production\src.production.obj
+_RC1IF 7CF5 0 ABS 0 - dist/default/production\src.production.obj
+_TRISA F92 0 ABS 0 - dist/default/production\src.production.obj
+_TRISB F93 0 ABS 0 - dist/default/production\src.production.obj
+_TX1IF 7CF4 0 ABS 0 - dist/default/production\src.production.obj
+__end_of_putch 424 0 CODE 0 text8 dist/default/production\src.production.obj
+__CFG_CP0$OFF 0 0 ABS 0 - dist/default/production\src.production.obj
+__CFG_CP1$OFF 0 0 ABS 0 - dist/default/production\src.production.obj
+__HRAM 0 0 ABS 0 - dist/default/production\src.production.obj
+__Hbss 0 0 RAM 1 bss dist/default/production\src.production.obj
+__Hram 0 0 ABS 0 ram dist/default/production\src.production.obj
+__Hsfr 0 0 ABS 0 sfr dist/default/production\src.production.obj
+__LRAM 1 0 ABS 0 - dist/default/production\src.production.obj
+__Lbss 0 0 RAM 1 bss dist/default/production\src.production.obj
+__Lram 0 0 ABS 0 ram dist/default/production\src.production.obj
+__Lsfr 0 0 ABS 0 sfr dist/default/production\src.production.obj
+__CFG_CP2$OFF 0 0 ABS 0 - dist/default/production\src.production.obj
+__CFG_CP3$OFF 0 0 ABS 0 - dist/default/production\src.production.obj
+__CFG_CPB$OFF 0 0 ABS 0 - dist/default/production\src.production.obj
+_putch 418 0 CODE 0 text8 dist/default/production\src.production.obj
+__CFG_CPD$OFF 0 0 ABS 0 - dist/default/production\src.production.obj
+__size_of_isr 0 0 ABS 0 - dist/default/production\src.production.obj
+main@sample_message 62 0 BANK0 1 cstackBANK0 dist/default/production\src.production.obj
+__initialization 354 0 CODE 0 cinit dist/default/production\src.production.obj
+_BAUDCON1bits FB8 0 ABS 0 - dist/default/production\src.production.obj
+__pdataCOMRAM 43 0 COMRAM 1 dataCOMRAM dist/default/production\src.production.obj
+_T2CONbits FBA 0 ABS 0 - dist/default/production\src.production.obj
+__Hfardata 0 0 FARRAM 0 fardata dist/default/production\src.production.obj
+__Hsmallconst 0 0 SMALLCONST 0 smallconst dist/default/production\src.production.obj
+__Lifardata 0 0 CODE 0 ifardata dist/default/production\src.production.obj
+__Hintsave_regs 0 0 BIGRAM 1 intsave_regs dist/default/production\src.production.obj
+__CFG_MCLRE$EXTMCLR 0 0 ABS 0 - dist/default/production\src.production.obj
+midi_set_channel@channel 1C 0 COMRAM 1 cstackCOMRAM dist/default/production\src.production.obj
+__Hintcode 1B8 0 CODE 0 intcode dist/default/production\src.production.obj
+# %SPLITSTAB Section
+# This section enumerates all the psect splits performed by the assembler.
+# The beginning of the section is indicated by %SPLITSTAB.
+# Each line is a record a particular split, where the parent psect is on
+# the left and the child on the right. Note that a child psect is always
+# split form the top of the parent psect. All splits from a given parent
+# are listed in the order in which they occurred.
+%SPLITSTAB
+# %DABS Section
+# This section contains a table of all usuage of the assember
+# directive DABS in the program. Each line has the following format:
+# <name> <space> <address> <size>
+# If the DABS was originally labelled then that shall be <name>,
+# otherwise name will be "-". The <space> number is in decimal.
+# <address> and <size> are in byte units as unqaulified hexadecimal
+%DABS
+# %SEGMENTS Section
+# This sections enumerates the segments of the program. Each segment
+# is described on a single line as follows:
+# <name> <space> <link address> <file address> <size> <delta>
+# Addresses and size are in unqualified hexadecimal. The link address
+# and size are in units of delta. The file address is in units of bytes.
+# All other numeric quantities are in decimal.
+%SEGMENTS
+idloc 0 200000 200000 8 1
+cstackCOMRAM 1 1 1 45 1
+cstackBANK0 1 60 60 9 1
+reset_vec 0 0 0 4 1
+intcode 0 8 8 41E 1
+config 0 300000 300000 E 1
diff --git a/src/dist/default/production/src.production.elf b/src/dist/default/production/src.production.elf
new file mode 100644
index 0000000..8220677
--- /dev/null
+++ b/src/dist/default/production/src.production.elf
Binary files differ
diff --git a/src/dist/default/production/src.production.hex b/src/dist/default/production/src.production.hex
new file mode 100644
index 0000000..579dfa8
--- /dev/null
+++ b/src/dist/default/production/src.production.hex
@@ -0,0 +1,72 @@
+:04000000DCEF00F041
+:100008004582FACF05F0FBCF06F0E9CF07F0EACF3B
+:1000180008F0E1CF09F0E2CF0AF0D9CF0BF0DACF40
+:100028000CF0F3CF0DF0F4CF0EF0F6CF0FF0F7CFC2
+:1000380010F0F8CF11F0F5CF12F045C013F046C01C
+:1000480014F047C015F048C016F083969EA289D0D8
+:1000580080CF18F0070E196E1950020D250EF324E3
+:10006800D96E000EF420DA6EDECF01F0DDCF02F09B
+:10007800D8900136023619C003F018C004F0032ADC
+:1000880002D0D8900432032EFCD7010E0416045077
+:100098000112000E02121950020D250EF324D96E1A
+:1000A800000EF420DA6E01C0DEFF02C0DDFF190683
+:1000B8001928D8A4D1D781CF18F0070E196E195076
+:1000C800020D250EF324D96E000EF420DA6EDECF71
+:1000D80001F0DDCF02F0D8900136023619C003F0E6
+:1000E80018C004F0032A02D0D8900432032EFCD79B
+:1000F800010E041604500112000E02121950020DCE
+:10010800250EF324D96E000EF420DA6E01C0DEFF4E
+:1001180002C0DDFFF80E016EFF0E026E19061928E7
+:10012800036E046A0150032602500422035004108F
+:10013800D8A4C5D780A002D0838801D08398000EA8
+:10014800176E25502610D8B406D0FF0E2614D8A452
+:1001580002D0010E176E17B002D0839401D08384A9
+:100168009E92838616C048F015C047F014C046F02A
+:1001780013C045F012C0F5FF11C0F8FF10C0F7FF1B
+:100188000FC0F6FF0EC0F4FF0DC0F3FF0CC0DAFF7E
+:100198000BC0D9FF0AC0E2FF09C0E1FF08C0EAFFAF
+:1001A80007C0E9FF06C0FBFF05C0FAFF4592110032
+:1001B800AAEF01F01F502010D8B41200030E1F241C
+:1001C8000001606F000E2020616F60516111D8B48A
+:1001D80012001FC01AF020C01BF0080E1C6EECECB9
+:1001E80001F01FC01AF020C01BF021C01CF022C073
+:1001F8001DF0D9EC01F020EE03F01F50D926205055
+:10020800DA2223C0DFFF20EE04F01F50D926205049
+:10021800DA2224C0DFFF20EE01F01F50D92620503B
+:10022800DA22020EDE6E000EDD6E12001B501C106C
+:10023800D8B4120020EE01F01B50D9261C50DA2247
+:10024800DECF1FF0DDCF20F0030E1B24216E000E41
+:100258001C20226E1BC0D9FF1CC0DAFFDF380F0B31
+:100268001D6E1BC0D9FF1CC0DAFFDF500F0B1E6EBE
+:100278001E38F00B1D100CEC02F009D021C0D9FF7C
+:1002880022C0DAFFDF500CEC02F0214A222A1F06B6
+:10029800D8A020061F28F2E12028D8B41200EED7F3
+:1002A800F29E9B8C9B809B829B849B869B889B9ABF
+:1002B800D388D38AD38CFC0ED316000E0F01386F67
+:1002C800000E396F000E3A6F000E3B6F926893680C
+:1002D800959295949596959883828394838683982E
+:1002E800800EBB6EBA50870B1809BA6E030EBA128D
+:1002F800BA849D829E92F28CFEEC01F0F28E12007E
+:1003080054EC01F0250E1A6E000E1B6E000E1D6EC9
+:10031800000E1C6E000E1F6E1E0E1E6EC3EC01F04A
+:10032800620E1F6E000E206E000E226E000E216EF1
+:100338003C0E236E7F0E246EDEEC00F08392620E7C
+:100348001B6E000E1C6E1AEC01F0F9D7240EF66E27
+:10035800040EF76E000EF86E0900F5CF43F00900A1
+:10036800F5CF44F000EE25F01E0EEE6AE806FDE13A
+:1003780045904592000EF86E000184EF01F01AC016
+:1003880020F01BC021F008D020C0D9FF21C0DAFF1F
+:100398001CC0DFFF204A212A1E06D8A01F061E28DF
+:1003A800F3E11F28D8B41200EFD71A501B10D8B4A5
+:1003B80012001CC01EF00F0E1E161AC0D9FF1BC05B
+:1003C800DAFF1E3ADF501E180F0B1E18DF6E1200E0
+:1003D8001A501B10D8B412001CC01DF00F0E1D16A9
+:1003E8001AC0D9FF1BC0DAFFDF501D18F00B1D180B
+:1003F800DF6E1200AC98AC9CAB8E1F0EAF6E000E79
+:10040800B06EAC94B896948E948CAB88AC8A12007B
+:0E0418001A6E9EA8FED71AC0ADFF12003C005F
+:020000040020DA
+:08000000FFFFFFFFFFFFFFFF00
+:020000040030CA
+:0E000000FF391F3FFFBF85FF0FC00FE00F400D
+:00000001FF
diff --git a/src/dist/default/production/src.production.hxl b/src/dist/default/production/src.production.hxl
new file mode 100644
index 0000000..848925e
--- /dev/null
+++ b/src/dist/default/production/src.production.hxl
@@ -0,0 +1,45 @@
+### HEXMate logfile and output summary ###
+### Memory Usage ###
+ Unused memory ranges:
+ 4h - 7h
+ 426h - 1FFFFFh
+ 200008h - 2FFFFFh
+ 30000Eh - 30003Fh
+
+ dist/default/production\src.production.hex ranges:
+ 0h - 3h
+ 8h - 425h
+ 200000h - 200007h
+ 300000h - 30000Dh
+
+### Hex Memory Map ###
+ Legend:
+ - = Unused memory
+ F = Filled ROM
+ S = Stored serial code
+ A = Stored ASCII string
+ R = Reserved for checksum
+ C = Stored checksum result
+ T = Trailing code
+ & = Find & replace opcode
+ X = Find & delete opcode
+ 1 = dist/default/production\src.production.hex
+00000000: 1111----11111111111111111111111111111111111111111111111111111111
+00000040: 1111111111111111111111111111111111111111111111111111111111111111
+00000080: 1111111111111111111111111111111111111111111111111111111111111111
+000000C0: 1111111111111111111111111111111111111111111111111111111111111111
+00000100: 1111111111111111111111111111111111111111111111111111111111111111
+00000140: 1111111111111111111111111111111111111111111111111111111111111111
+00000180: 1111111111111111111111111111111111111111111111111111111111111111
+000001C0: 1111111111111111111111111111111111111111111111111111111111111111
+00000200: 1111111111111111111111111111111111111111111111111111111111111111
+00000240: 1111111111111111111111111111111111111111111111111111111111111111
+00000280: 1111111111111111111111111111111111111111111111111111111111111111
+000002C0: 1111111111111111111111111111111111111111111111111111111111111111
+00000300: 1111111111111111111111111111111111111111111111111111111111111111
+00000340: 1111111111111111111111111111111111111111111111111111111111111111
+00000380: 1111111111111111111111111111111111111111111111111111111111111111
+000003C0: 1111111111111111111111111111111111111111111111111111111111111111
+00000400: 11111111111111111111111111111111111111--------------------------
+00200000: 11111111--------------------------------------------------------
+00300000: 11111111111111--------------------------------------------------
diff --git a/src/dist/default/production/src.production.lst b/src/dist/default/production/src.production.lst
new file mode 100644
index 0000000..a97f5cc
--- /dev/null
+++ b/src/dist/default/production/src.production.lst
@@ -0,0 +1,1813 @@
+
+
+Microchip Technology PIC18 LITE Macro Assembler V1.44 build -154322312
+ Fri Feb 23 16:30:02 2018
+
+Microchip Technology Omniscient Code Generator v1.44 (Free mode) build 201709140600
+ 1 processor 18F45K22
+ 2 fnconf rparam,??,?,0
+ 3 opt pw 120
+ 4 opt lm
+ 5 psect idataCOMRAM,global,class=CODE,delta=1,noexec
+ 6 psect cinit,global,reloc=2,class=CODE,delta=1
+ 7 psect bssCOMRAM,global,class=COMRAM,space=1,delta=1,noexec
+ 8 psect dataCOMRAM,global,class=COMRAM,space=1,delta=1,noexec
+ 9 psect cstackBANK0,global,class=BANK0,space=1,delta=1,noexec
+ 10 psect cstackCOMRAM,global,class=COMRAM,space=1,delta=1,noexec
+ 11 psect text0,global,reloc=2,class=CODE,delta=1
+ 12 psect text1,global,reloc=2,class=CODE,delta=1
+ 13 psect text2,global,reloc=2,class=CODE,delta=1
+ 14 psect text3,global,reloc=2,class=CODE,delta=1
+ 15 psect text4,global,reloc=2,class=CODE,delta=1,group=1
+ 16 psect text5,global,reloc=2,class=CODE,delta=1,inline
+ 17 psect text6,global,reloc=2,class=CODE,delta=1
+ 18 psect text7,global,reloc=2,class=CODE,delta=1
+ 19 psect text8,global,reloc=2,class=CODE,delta=1
+ 20 psect intcode,global,reloc=2,class=CODE,delta=1
+ 21 psect intsave_regs,global,class=BIGRAM,space=1,delta=1,noexec
+ 22 psect rparam,global,class=COMRAM,space=1,delta=1,noexec
+ 23 psect temp,global,ovrld,common,class=COMRAM,space=1,delta=1
+ 24 0000
+ 25 ; Version 1.44
+ 26 ; Generated 14/09/2017 GMT
+ 27 ;
+ 28 ; Copyright © 2017, Microchip Technology Inc. and its subsidiaries ("Microchip")
+ 29 ; All rights reserved.
+ 30 ;
+ 31 ; This software is developed by Microchip Technology Inc. and its subsidiaries ("Microch
+ + ip").
+ 32 ;
+ 33 ; Redistribution and use in source and binary forms, with or without modification, are
+ 34 ; permitted provided that the following conditions are met:
+ 35 ;
+ 36 ; 1. Redistributions of source code must retain the above copyright notice, this lis
+ + t of
+ 37 ; conditions and the following disclaimer.
+ 38 ;
+ 39 ; 2. Redistributions in binary form must reproduce the above copyright notice, this
+ + list
+ 40 ; of conditions and the following disclaimer in the documentation and/or other
+ 41 ; materials provided with the distribution.
+ 42 ;
+ 43 ; 3. Microchip's name may not be used to endorse or promote products derived from th
+ + is
+ 44 ; software without specific prior written permission.
+ 45 ;
+ 46 ; THIS SOFTWARE IS PROVIDED BY MICROCHIP "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES,
+ 47 ; INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS F
+ + OR
+ 48 ; PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL MICROCHIP BE LIABLE FOR ANY DIRECT, INDIREC
+ + T,
+ 49 ; INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING BUT NOT LIMITED TO
+ 50 ; PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA OR PROFITS; OR BUSINESS
+ 51 ; INTERRUPTION) HOWSOEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, ST
+ + RICT
+ 52 ; LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE U
+ + SE OF
+ 53 ; THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ 54 ;
+ 55 ;
+ 56 ; Code-generator required, PIC18F45K22 Definitions
+ 57 ;
+ 58 ; SFR Addresses
+ 59 0000
+ 60 psect idataCOMRAM
+ 61 000424 __pidataCOMRAM:
+ 62 opt stack 0
+ 63
+ 64 ;initializer for _midi_base_scale
+ 65 000424 003C dw 60
+ 66 0000 _ANSELD set 3899
+ 67 0000 _ANSELC set 3898
+ 68 0000 _ANSELB set 3897
+ 69 0000 _ANSELA set 3896
+ 70 0000 _RC1REG set 4014
+ 71 0000 _TX1REG set 4013
+ 72 0000 _TRISCbits set 3988
+ 73 0000 _BAUDCON1bits set 4024
+ 74 0000 _SPBRGH1 set 4016
+ 75 0000 _SPBRG1 set 4015
+ 76 0000 _RCSTA1bits set 4011
+ 77 0000 _TXSTA1bits set 4012
+ 78 0000 _PIE1bits set 3997
+ 79 0000 _T2CONbits set 4026
+ 80 0000 _PR2 set 4027
+ 81 0000 _TRISDbits set 3989
+ 82 0000 _TRISB set 3987
+ 83 0000 _TRISA set 3986
+ 84 0000 _OSCCONbits set 4051
+ 85 0000 _OSCTUNEbits set 3995
+ 86 0000 _INTCONbits set 4082
+ 87 0000 _PORTAbits set 3968
+ 88 0000 _PORTB set 3969
+ 89 0000 _PORTA set 3968
+ 90 0000 _PIR1bits set 3998
+ 91 0000 _PORTDbits set 3971
+ 92 0000 _RC1IF set 31989
+ 93 0000 _TX1IF set 31988
+ 94
+ 95 ; #config settings
+ 96 0000
+ 97 psect cinit
+ 98 000354 __pcinit:
+ 99 opt stack 0
+ 100 000354 start_initialization:
+ 101 opt stack 0
+ 102 000354 __initialization:
+ 103 opt stack 0
+ 104
+ 105 ; Initialize objects allocated to COMRAM (2 bytes)
+ 106 ; load TBLPTR registers with __pidataCOMRAM
+ 107 000354 0E24 movlw low __pidataCOMRAM
+ 108 000356 6EF6 movwf tblptrl,c
+ 109 000358 0E04 movlw high __pidataCOMRAM
+ 110 00035A 6EF7 movwf tblptrh,c
+ 111 00035C 0E00 movlw low (__pidataCOMRAM shr (0+16))
+ 112 00035E 6EF8 movwf tblptru,c
+ 113 000360 0009 tblrd *+ ;fetch initializer
+ 114 000362 CFF5 F043 movff tablat,__pdataCOMRAM
+ 115 000366 0009 tblrd *+ ;fetch initializer
+ 116 000368 CFF5 F044 movff tablat,__pdataCOMRAM+1
+ 117
+ 118 ; Clear objects allocated to COMRAM (30 bytes)
+ 119 00036C EE00 F025 lfsr 0,__pbssCOMRAM
+ 120 000370 0E1E movlw 30
+ 121 000372 clear_0:
+ 122 000372 6AEE clrf postinc0,c
+ 123 000374 06E8 decf wreg,f,c
+ 124 000376 E1FD bnz clear_0
+ 125 000378 end_of_initialization:
+ 126 opt stack 0
+ 127 000378 __end_of__initialization:
+ 128 opt stack 0
+ 129 000378 9045 bcf int$flags,0,c ;clear compiler interrupt flag (level 1)
+ 130 00037A 9245 bcf int$flags,1,c ;clear compiler interrupt flag (level 2)
+ 131 00037C 0E00 movlw low (__Lmediumconst shr (0+16))
+ 132 00037E 6EF8 movwf tblptru,c
+ 133 000380 0100 movlb 0
+ 134 000382 EF84 F001 goto _main ;jump to C main() function
+ 135 tblptru equ 0xFF8
+ 136 tblptrh equ 0xFF7
+ 137 tblptrl equ 0xFF6
+ 138 tablat equ 0xFF5
+ 139 postinc0 equ 0xFEE
+ 140 wreg equ 0xFE8
+ 141
+ 142 psect bssCOMRAM
+ 143 000025 __pbssCOMRAM:
+ 144 opt stack 0
+ 145 000025 _keypresses:
+ 146 opt stack 0
+ 147 000025 ds 30
+ 148 tblptru equ 0xFF8
+ 149 tblptrh equ 0xFF7
+ 150 tblptrl equ 0xFF6
+ 151 tablat equ 0xFF5
+ 152 postinc0 equ 0xFEE
+ 153 wreg equ 0xFE8
+ 154
+ 155 psect dataCOMRAM
+ 156 000043 __pdataCOMRAM:
+ 157 opt stack 0
+ 158 000043 _midi_base_scale:
+ 159 opt stack 0
+ 160 000043 ds 2
+ 161 tblptru equ 0xFF8
+ 162 tblptrh equ 0xFF7
+ 163 tblptrl equ 0xFF6
+ 164 tablat equ 0xFF5
+ 165 postinc0 equ 0xFEE
+ 166 wreg equ 0xFE8
+ 167
+ 168 psect cstackBANK0
+ 169 000060 __pcstackBANK0:
+ 170 opt stack 0
+ 171 000060 ??_midi_note_on:
+ 172
+ 173 ; 1 bytes @ 0x0
+ 174 000060 ds 2
+ 175 000062 main@sample_message:
+ 176 opt stack 0
+ 177
+ 178 ; 7 bytes @ 0x2
+ 179 000062 ds 7
+ 180 tblptru equ 0xFF8
+ 181 tblptrh equ 0xFF7
+ 182 tblptrl equ 0xFF6
+ 183 tablat equ 0xFF5
+ 184 postinc0 equ 0xFEE
+ 185 wreg equ 0xFE8
+ 186
+ 187 psect cstackCOMRAM
+ 188 000001 __pcstackCOMRAM:
+ 189 opt stack 0
+ 190 000001 ??_isr:
+ 191 000001
+ 192 ; 1 bytes @ 0x0
+ 193 000001 ds 22
+ 194 000017 _isr$592:
+ 195 opt stack 0
+ 196
+ 197 ; 1 bytes @ 0x16
+ 198 000017 ds 1
+ 199 000018 isr@data:
+ 200 opt stack 0
+ 201
+ 202 ; 1 bytes @ 0x17
+ 203 000018 ds 1
+ 204 000019 isr@i:
+ 205 opt stack 0
+ 206
+ 207 ; 1 bytes @ 0x18
+ 208 000019 ds 1
+ 209 00001A putch@c:
+ 210 opt stack 0
+ 211 00001A midi_set_status@pkt:
+ 212 opt stack 0
+ 213 00001A midi_set_channel@pkt:
+ 214 opt stack 0
+ 215 00001A memset@p1:
+ 216 opt stack 0
+ 217
+ 218 ; 2 bytes @ 0x19
+ 219 00001A ds 1
+ 220 00001B eusart_write_midi@pkt:
+ 221 opt stack 0
+ 222
+ 223 ; 2 bytes @ 0x1A
+ 224 00001B ds 1
+ 225 00001C midi_set_status@status:
+ 226 opt stack 0
+ 227 00001C midi_set_channel@channel:
+ 228 opt stack 0
+ 229 00001C memset@c:
+ 230 opt stack 0
+ 231
+ 232 ; 2 bytes @ 0x1B
+ 233 00001C ds 1
+ 234 00001D ??_eusart_write_midi:
+ 235 00001D ??_midi_set_status:
+ 236
+ 237 ; 1 bytes @ 0x1C
+ 238 00001D ds 1
+ 239 00001E ??_midi_set_channel:
+ 240 00001E memset@n:
+ 241 opt stack 0
+ 242
+ 243 ; 2 bytes @ 0x1D
+ 244 00001E ds 1
+ 245 00001F eusart_write_midi@length:
+ 246 opt stack 0
+ 247 00001F midi_note_on@pkt:
+ 248 opt stack 0
+ 249
+ 250 ; 2 bytes @ 0x1E
+ 251 00001F ds 1
+ 252 000020 memset@p:
+ 253 opt stack 0
+ 254
+ 255 ; 2 bytes @ 0x1F
+ 256 000020 ds 1
+ 257 000021 eusart_write_midi@data:
+ 258 opt stack 0
+ 259 000021 midi_note_on@channel:
+ 260 opt stack 0
+ 261
+ 262 ; 2 bytes @ 0x20
+ 263 000021 ds 2
+ 264 000023 midi_note_on@note:
+ 265 opt stack 0
+ 266
+ 267 ; 1 bytes @ 0x22
+ 268 000023 ds 1
+ 269 000024 midi_note_on@velocity:
+ 270 opt stack 0
+ 271
+ 272 ; 1 bytes @ 0x23
+ 273 000024 ds 1
+ 274 000025 tblptru equ 0xFF8
+ 275 tblptrh equ 0xFF7
+ 276 tblptrl equ 0xFF6
+ 277 tablat equ 0xFF5
+ 278 postinc0 equ 0xFEE
+ 279 wreg equ 0xFE8
+ 280
+ 281 ; 1 bytes @ 0x24
+ 282 ;;
+ 283 ;;Main: autosize = 0, tempsize = 0, incstack = 0, save=0
+ 284 ;;
+ 285 ;; *************** function _main *****************
+ 286 ;; Defined at:
+ 287 ;; line 204 in file "main.c"
+ 288 ;; Parameters: Size Location Type
+ 289 ;; None
+ 290 ;; Auto vars: Size Location Type
+ 291 ;; sample_messa 7 2[BANK0 ] struct .
+ 292 ;; data 1 0 unsigned char
+ 293 ;; i 1 0 unsigned char
+ 294 ;; Return value: Size Location Type
+ 295 ;; 1 wreg void
+ 296 ;; Registers used:
+ 297 ;; wreg, fsr2l, fsr2h, status,2, status,0, cstack
+ 298 ;; Tracked objects:
+ 299 ;; On entry : 0/0
+ 300 ;; On exit : 0/0
+ 301 ;; Unchanged: 0/0
+ 302 ;; Data sizes: COMRAM BANK0 BANK1 BANK2 BANK3 BANK4 BANK5
+ 303 ;; Params: 0 0 0 0 0 0 0
+ 304 ;; Locals: 0 7 0 0 0 0 0
+ 305 ;; Temps: 0 0 0 0 0 0 0
+ 306 ;; Totals: 0 7 0 0 0 0 0
+ 307 ;;Total ram usage: 7 bytes
+ 308 ;; Hardware stack levels required when called: 3
+ 309 ;; This function calls:
+ 310 ;; _eusart_write_midi
+ 311 ;; _init_hw
+ 312 ;; _memset
+ 313 ;; _midi_note_on
+ 314 ;; This function is called by:
+ 315 ;; Startup code after reset
+ 316 ;; This function uses a non-reentrant model
+ 317 ;;
+ 318
+ 319 psect text0
+ 320 000308 __ptext0:
+ 321 opt stack 0
+ 322 000308 _main:
+ 323 opt stack 28
+ 324
+ 325 ;main.c: 206: unsigned char i, data;
+ 326 ;main.c: 207: midi_message_t sample_message;
+ 327 ;main.c: 210: init_hw();
+ 328
+ 329 ;incstack = 0
+ 330 000308 EC54 F001 call _init_hw ;wreg free
+ 331
+ 332 ;main.c: 213: memset(keypresses, 0, sizeof(keypresses));
+ 333 00030C 0E25 movlw low _keypresses
+ 334 00030E 6E1A movwf memset@p1,c
+ 335 000310 0E00 movlw high _keypresses
+ 336 000312 6E1B movwf memset@p1+1,c
+ 337 000314 0E00 movlw 0
+ 338 000316 6E1D movwf memset@c+1,c
+ 339 000318 0E00 movlw 0
+ 340 00031A 6E1C movwf memset@c,c
+ 341 00031C 0E00 movlw 0
+ 342 00031E 6E1F movwf memset@n+1,c
+ 343 000320 0E1E movlw 30
+ 344 000322 6E1E movwf memset@n,c
+ 345 000324 ECC3 F001 call _memset ;wreg free
+ 346
+ 347 ;main.c: 216: midi_note_on(&sample_message, 0x0, 0x3C, 0x7F);
+ 348 000328 0E62 movlw low main@sample_message
+ 349 00032A 6E1F movwf midi_note_on@pkt,c
+ 350 00032C 0E00 movlw high main@sample_message
+ 351 00032E 6E20 movwf midi_note_on@pkt+1,c
+ 352 000330 0E00 movlw 0
+ 353 000332 6E22 movwf midi_note_on@channel+1,c
+ 354 000334 0E00 movlw 0
+ 355 000336 6E21 movwf midi_note_on@channel,c
+ 356 000338 0E3C movlw 60
+ 357 00033A 6E23 movwf midi_note_on@note,c
+ 358 00033C 0E7F movlw 127
+ 359 00033E 6E24 movwf midi_note_on@velocity,c
+ 360 000340 ECDE F000 call _midi_note_on ;wreg free
+ 361
+ 362 ;main.c: 217: PORTDbits.RD1 = 0;
+ 363 000344 9283 bcf 3971,1,c ;volatile
+ 364 000346
+ 365 ;main.c: 221: eusart_write_midi(&sample_message);
+ 366 000346 0E62 movlw low main@sample_message
+ 367 000348 6E1B movwf eusart_write_midi@pkt,c
+ 368 00034A 0E00 movlw high main@sample_message
+ 369 00034C 6E1C movwf eusart_write_midi@pkt+1,c
+ 370 00034E EC1A F001 call _eusart_write_midi ;wreg free
+ 371 000352 D7F9 goto l70
+ 372 000354 __end_of_main:
+ 373 opt stack 0
+ 374 tblptru equ 0xFF8
+ 375 tblptrh equ 0xFF7
+ 376 tblptrl equ 0xFF6
+ 377 tablat equ 0xFF5
+ 378 postinc0 equ 0xFEE
+ 379 wreg equ 0xFE8
+ 380
+ 381 ;; *************** function _midi_note_on *****************
+ 382 ;; Defined at:
+ 383 ;; line 62 in file "midi.c"
+ 384 ;; Parameters: Size Location Type
+ 385 ;; pkt 2 30[COMRAM] PTR struct .
+ 386 ;; -> main@sample_message(7),
+ 387 ;; channel 2 32[COMRAM] unsigned int
+ 388 ;; note 1 34[COMRAM] enum E31
+ 389 ;; velocity 1 35[COMRAM] unsigned char
+ 390 ;; Auto vars: Size Location Type
+ 391 ;; None
+ 392 ;; Return value: Size Location Type
+ 393 ;; 2 30[COMRAM] int
+ 394 ;; Registers used:
+ 395 ;; wreg, fsr2l, fsr2h, status,2, status,0, cstack
+ 396 ;; Tracked objects:
+ 397 ;; On entry : 0/0
+ 398 ;; On exit : 0/0
+ 399 ;; Unchanged: 0/0
+ 400 ;; Data sizes: COMRAM BANK0 BANK1 BANK2 BANK3 BANK4 BANK5
+ 401 ;; Params: 6 0 0 0 0 0 0
+ 402 ;; Locals: 0 0 0 0 0 0 0
+ 403 ;; Temps: 0 2 0 0 0 0 0
+ 404 ;; Totals: 6 2 0 0 0 0 0
+ 405 ;;Total ram usage: 8 bytes
+ 406 ;; Hardware stack levels used: 1
+ 407 ;; Hardware stack levels required when called: 2
+ 408 ;; This function calls:
+ 409 ;; _midi_set_channel
+ 410 ;; _midi_set_status
+ 411 ;; This function is called by:
+ 412 ;; _main
+ 413 ;; This function uses a non-reentrant model
+ 414 ;;
+ 415
+ 416 psect text1
+ 417 0001BC __ptext1:
+ 418 opt stack 0
+ 419 0001BC _midi_note_on:
+ 420 opt stack 28
+ 421
+ 422 ;midi.c: 64: if (pkt == (0)) {
+ 423
+ 424 ;incstack = 0
+ 425 0001BC 501F movf midi_note_on@pkt,w,c
+ 426 0001BE 1020 iorwf midi_note_on@pkt+1,w,c
+ 427 0001C0 B4D8 btfsc status,2,c
+ 428 0001C2 0012 return
+ 429
+ 430 ;midi.c: 66: }
+ 431 ;midi.c: 68: if (pkt->data == (0)) {
+ 432
+ 433 ;midi.c: 65: return -1;
+ 434 ; Return value of _midi_note_on is never used
+ 435 0001C4 0E03 movlw 3
+ 436 0001C6 241F addwf midi_note_on@pkt,w,c
+ 437 0001C8 0100 movlb 0 ; () banked
+ 438 0001CA 6F60 movwf ??_midi_note_on& (0+255),b
+ 439 0001CC 0E00 movlw 0
+ 440 0001CE 2020 addwfc midi_note_on@pkt+1,w,c
+ 441 0001D0 6F61 movwf (??_midi_note_on+1)& (0+255),b
+ 442 0001D2 5160 movf ??_midi_note_on& (0+255),w,b
+ 443 0001D4 1161 iorwf (??_midi_note_on+1)& (0+255),w,b
+ 444 0001D6 B4D8 btfsc status,2,c
+ 445 0001D8 0012 return
+ 446
+ 447 ; BSR set to: 0
+ 448 ;midi.c: 70: }
+ 449 ;midi.c: 72: midi_set_status(pkt, NOTE_ON);
+ 450
+ 451 ; BSR set to: 0
+ 452
+ 453 ; BSR set to: 0
+ 454 ;midi.c: 69: return -2;
+ 455 ; Return value of _midi_note_on is never used
+ 456 0001DA C01F F01A movff midi_note_on@pkt,midi_set_status@pkt
+ 457 0001DE C020 F01B movff midi_note_on@pkt+1,midi_set_status@pkt+1
+ 458 0001E2 0E08 movlw 8
+ 459 0001E4 6E1C movwf midi_set_status@status,c
+ 460 0001E6 ECEC F001 call _midi_set_status ;wreg free
+ 461
+ 462 ;midi.c: 73: midi_set_channel(pkt, channel);
+ 463 0001EA C01F F01A movff midi_note_on@pkt,midi_set_channel@pkt
+ 464 0001EE C020 F01B movff midi_note_on@pkt+1,midi_set_channel@pkt+1
+ 465 0001F2 C021 F01C movff midi_note_on@channel,midi_set_channel@channel
+ 466 0001F6 C022 F01D movff midi_note_on@channel+1,midi_set_channel@channel+1
+ 467 0001FA ECD9 F001 call _midi_set_channel ;wreg free
+ 468
+ 469 ;midi.c: 75: pkt->data[0] = note;
+ 470 0001FE EE20 F003 lfsr 2,3
+ 471 000202 501F movf midi_note_on@pkt,w,c
+ 472 000204 26D9 addwf fsr2l,f,c
+ 473 000206 5020 movf midi_note_on@pkt+1,w,c
+ 474 000208 22DA addwfc fsr2h,f,c
+ 475 00020A C023 FFDF movff midi_note_on@note,indf2
+ 476
+ 477 ;midi.c: 76: pkt->data[1] = velocity;
+ 478 00020E EE20 F004 lfsr 2,4
+ 479 000212 501F movf midi_note_on@pkt,w,c
+ 480 000214 26D9 addwf fsr2l,f,c
+ 481 000216 5020 movf midi_note_on@pkt+1,w,c
+ 482 000218 22DA addwfc fsr2h,f,c
+ 483 00021A C024 FFDF movff midi_note_on@velocity,indf2
+ 484
+ 485 ;midi.c: 79: pkt->data_size = 2;
+ 486 00021E EE20 F001 lfsr 2,1
+ 487 000222 501F movf midi_note_on@pkt,w,c
+ 488 000224 26D9 addwf fsr2l,f,c
+ 489 000226 5020 movf midi_note_on@pkt+1,w,c
+ 490 000228 22DA addwfc fsr2h,f,c
+ 491 00022A 0E02 movlw 2
+ 492 00022C 6EDE movwf postinc2,c
+ 493 00022E 0E00 movlw 0
+ 494 000230 6EDD movwf postdec2,c
+ 495 000232 0012 return
+ 496 000234 __end_of_midi_note_on:
+ 497 opt stack 0
+ 498 tblptru equ 0xFF8
+ 499 tblptrh equ 0xFF7
+ 500 tblptrl equ 0xFF6
+ 501 tablat equ 0xFF5
+ 502 postinc0 equ 0xFEE
+ 503 wreg equ 0xFE8
+ 504 indf2 equ 0xFDF
+ 505 postinc2 equ 0xFDE
+ 506 postdec2 equ 0xFDD
+ 507 fsr2h equ 0xFDA
+ 508 fsr2l equ 0xFD9
+ 509 status equ 0xFD8
+ 510
+ 511 ;; *************** function _midi_set_status *****************
+ 512 ;; Defined at:
+ 513 ;; line 40 in file "midi.c"
+ 514 ;; Parameters: Size Location Type
+ 515 ;; pkt 2 25[COMRAM] PTR struct .
+ 516 ;; -> main@sample_message(7),
+ 517 ;; status 1 27[COMRAM] enum E40
+ 518 ;; Auto vars: Size Location Type
+ 519 ;; None
+ 520 ;; Return value: Size Location Type
+ 521 ;; 2 25[COMRAM] int
+ 522 ;; Registers used:
+ 523 ;; wreg, fsr2l, fsr2h, status,2, status,0
+ 524 ;; Tracked objects:
+ 525 ;; On entry : 0/0
+ 526 ;; On exit : 0/0
+ 527 ;; Unchanged: 0/0
+ 528 ;; Data sizes: COMRAM BANK0 BANK1 BANK2 BANK3 BANK4 BANK5
+ 529 ;; Params: 3 0 0 0 0 0 0
+ 530 ;; Locals: 0 0 0 0 0 0 0
+ 531 ;; Temps: 1 0 0 0 0 0 0
+ 532 ;; Totals: 4 0 0 0 0 0 0
+ 533 ;;Total ram usage: 4 bytes
+ 534 ;; Hardware stack levels used: 1
+ 535 ;; Hardware stack levels required when called: 1
+ 536 ;; This function calls:
+ 537 ;; Nothing
+ 538 ;; This function is called by:
+ 539 ;; _midi_note_on
+ 540 ;; _midi_note_off
+ 541 ;; This function uses a non-reentrant model
+ 542 ;;
+ 543
+ 544 psect text2
+ 545 0003D8 __ptext2:
+ 546 opt stack 0
+ 547 0003D8 _midi_set_status:
+ 548 opt stack 28
+ 549
+ 550 ;midi.c: 42: if (pkt == (0)) {
+ 551
+ 552 ;incstack = 0
+ 553 0003D8 501A movf midi_set_status@pkt,w,c
+ 554 0003DA 101B iorwf midi_set_status@pkt+1,w,c
+ 555 0003DC B4D8 btfsc status,2,c
+ 556 0003DE 0012 return
+ 557
+ 558 ;midi.c: 44: }
+ 559 ;midi.c: 46: pkt->status = status & 0x0F;
+ 560
+ 561 ;midi.c: 43: return -1;
+ 562 ; Return value of _midi_set_status is never used
+ 563 0003E0 C01C F01D movff midi_set_status@status,??_midi_set_status
+ 564 0003E4 0E0F movlw 15
+ 565 0003E6 161D andwf ??_midi_set_status,f,c
+ 566 0003E8 C01A FFD9 movff midi_set_status@pkt,fsr2l
+ 567 0003EC C01B FFDA movff midi_set_status@pkt+1,fsr2h
+ 568 0003F0 50DF movf indf2,w,c
+ 569 0003F2 181D xorwf ??_midi_set_status,w,c
+ 570 0003F4 0BF0 andlw -16
+ 571 0003F6 181D xorwf ??_midi_set_status,w,c
+ 572 0003F8 6EDF movwf indf2,c
+ 573 0003FA 0012 return
+ 574 0003FC __end_of_midi_set_status:
+ 575 opt stack 0
+ 576 tblptru equ 0xFF8
+ 577 tblptrh equ 0xFF7
+ 578 tblptrl equ 0xFF6
+ 579 tablat equ 0xFF5
+ 580 postinc0 equ 0xFEE
+ 581 wreg equ 0xFE8
+ 582 indf2 equ 0xFDF
+ 583 postinc2 equ 0xFDE
+ 584 postdec2 equ 0xFDD
+ 585 fsr2h equ 0xFDA
+ 586 fsr2l equ 0xFD9
+ 587 status equ 0xFD8
+ 588
+ 589 ;; *************** function _midi_set_channel *****************
+ 590 ;; Defined at:
+ 591 ;; line 51 in file "midi.c"
+ 592 ;; Parameters: Size Location Type
+ 593 ;; pkt 2 25[COMRAM] PTR struct .
+ 594 ;; -> main@sample_message(7),
+ 595 ;; channel 2 27[COMRAM] unsigned int
+ 596 ;; Auto vars: Size Location Type
+ 597 ;; None
+ 598 ;; Return value: Size Location Type
+ 599 ;; 2 25[COMRAM] int
+ 600 ;; Registers used:
+ 601 ;; wreg, fsr2l, fsr2h, status,2, status,0
+ 602 ;; Tracked objects:
+ 603 ;; On entry : 0/0
+ 604 ;; On exit : 0/0
+ 605 ;; Unchanged: 0/0
+ 606 ;; Data sizes: COMRAM BANK0 BANK1 BANK2 BANK3 BANK4 BANK5
+ 607 ;; Params: 4 0 0 0 0 0 0
+ 608 ;; Locals: 0 0 0 0 0 0 0
+ 609 ;; Temps: 1 0 0 0 0 0 0
+ 610 ;; Totals: 5 0 0 0 0 0 0
+ 611 ;;Total ram usage: 5 bytes
+ 612 ;; Hardware stack levels used: 1
+ 613 ;; Hardware stack levels required when called: 1
+ 614 ;; This function calls:
+ 615 ;; Nothing
+ 616 ;; This function is called by:
+ 617 ;; _midi_note_on
+ 618 ;; _midi_note_off
+ 619 ;; This function uses a non-reentrant model
+ 620 ;;
+ 621
+ 622 psect text3
+ 623 0003B2 __ptext3:
+ 624 opt stack 0
+ 625 0003B2 _midi_set_channel:
+ 626 opt stack 28
+ 627
+ 628 ;midi.c: 53: if (pkt == (0)) {
+ 629
+ 630 ;incstack = 0
+ 631 0003B2 501A movf midi_set_channel@pkt,w,c
+ 632 0003B4 101B iorwf midi_set_channel@pkt+1,w,c
+ 633 0003B6 B4D8 btfsc status,2,c
+ 634 0003B8 0012 return
+ 635
+ 636 ;midi.c: 55: }
+ 637 ;midi.c: 57: pkt->channel = channel & 0x0F;
+ 638
+ 639 ;midi.c: 54: return -1;
+ 640 ; Return value of _midi_set_channel is never used
+ 641 0003BA C01C F01E movff midi_set_channel@channel,??_midi_set_channel
+ 642 0003BE 0E0F movlw 15
+ 643 0003C0 161E andwf ??_midi_set_channel,f,c
+ 644 0003C2 C01A FFD9 movff midi_set_channel@pkt,fsr2l
+ 645 0003C6 C01B FFDA movff midi_set_channel@pkt+1,fsr2h
+ 646 0003CA 3A1E swapf ??_midi_set_channel,f,c
+ 647 0003CC 50DF movf indf2,w,c
+ 648 0003CE 181E xorwf ??_midi_set_channel,w,c
+ 649 0003D0 0B0F andlw -241
+ 650 0003D2 181E xorwf ??_midi_set_channel,w,c
+ 651 0003D4 6EDF movwf indf2,c
+ 652 0003D6 0012 return
+ 653 0003D8 __end_of_midi_set_channel:
+ 654 opt stack 0
+ 655 tblptru equ 0xFF8
+ 656 tblptrh equ 0xFF7
+ 657 tblptrl equ 0xFF6
+ 658 tablat equ 0xFF5
+ 659 postinc0 equ 0xFEE
+ 660 wreg equ 0xFE8
+ 661 indf2 equ 0xFDF
+ 662 postinc2 equ 0xFDE
+ 663 postdec2 equ 0xFDD
+ 664 fsr2h equ 0xFDA
+ 665 fsr2l equ 0xFD9
+ 666 status equ 0xFD8
+ 667
+ 668 ;; *************** function _memset *****************
+ 669 ;; Defined at:
+ 670 ;; line 8 in file "C:\Program Files\Microchip\xc8\v1.44\sources\common\memset.c"
+ 671 ;; Parameters: Size Location Type
+ 672 ;; p1 2 25[COMRAM] PTR void
+ 673 ;; -> keypresses(30),
+ 674 ;; c 2 27[COMRAM] int
+ 675 ;; n 2 29[COMRAM] unsigned int
+ 676 ;; Auto vars: Size Location Type
+ 677 ;; p 2 31[COMRAM] PTR unsigned char
+ 678 ;; -> keypresses(30),
+ 679 ;; Return value: Size Location Type
+ 680 ;; 2 25[COMRAM] PTR void
+ 681 ;; Registers used:
+ 682 ;; wreg, fsr2l, fsr2h, status,2, status,0
+ 683 ;; Tracked objects:
+ 684 ;; On entry : 0/0
+ 685 ;; On exit : 0/0
+ 686 ;; Unchanged: 0/0
+ 687 ;; Data sizes: COMRAM BANK0 BANK1 BANK2 BANK3 BANK4 BANK5
+ 688 ;; Params: 6 0 0 0 0 0 0
+ 689 ;; Locals: 2 0 0 0 0 0 0
+ 690 ;; Temps: 0 0 0 0 0 0 0
+ 691 ;; Totals: 8 0 0 0 0 0 0
+ 692 ;;Total ram usage: 8 bytes
+ 693 ;; Hardware stack levels used: 1
+ 694 ;; Hardware stack levels required when called: 1
+ 695 ;; This function calls:
+ 696 ;; Nothing
+ 697 ;; This function is called by:
+ 698 ;; _main
+ 699 ;; This function uses a non-reentrant model
+ 700 ;;
+ 701
+ 702 psect text4
+ 703 000386 __ptext4:
+ 704 opt stack 0
+ 705 000386 _memset:
+ 706 opt stack 29
+ 707
+ 708 ;incstack = 0
+ 709 000386 C01A F020 movff memset@p1,memset@p
+ 710 00038A C01B F021 movff memset@p1+1,memset@p+1
+ 711 00038E D008 goto l569
+ 712 000390 l1129:
+ 713 000390 C020 FFD9 movff memset@p,fsr2l
+ 714 000394 C021 FFDA movff memset@p+1,fsr2h
+ 715 000398 C01C FFDF movff memset@c,indf2
+ 716 00039C 4A20 infsnz memset@p,f,c
+ 717 00039E 2A21 incf memset@p+1,f,c
+ 718 0003A0 l569:
+ 719 0003A0 061E decf memset@n,f,c
+ 720 0003A2 A0D8 btfss status,0,c
+ 721 0003A4 061F decf memset@n+1,f,c
+ 722 0003A6 281E incf memset@n,w,c
+ 723 0003A8 E1F3 bnz l1129
+ 724 0003AA 281F incf memset@n+1,w,c
+ 725 0003AC B4D8 btfsc status,2,c
+ 726 0003AE 0012 return
+ 727 0003B0 D7EF goto l570
+ 728 0003B2 __end_of_memset:
+ 729 opt stack 0
+ 730 tblptru equ 0xFF8
+ 731 tblptrh equ 0xFF7
+ 732 tblptrl equ 0xFF6
+ 733 tablat equ 0xFF5
+ 734 postinc0 equ 0xFEE
+ 735 wreg equ 0xFE8
+ 736 indf2 equ 0xFDF
+ 737 postinc2 equ 0xFDE
+ 738 postdec2 equ 0xFDD
+ 739 fsr2h equ 0xFDA
+ 740 fsr2l equ 0xFD9
+ 741 status equ 0xFD8
+ 742
+ 743 ;; *************** function _init_hw *****************
+ 744 ;; Defined at:
+ 745 ;; line 140 in file "main.c"
+ 746 ;; Parameters: Size Location Type
+ 747 ;; None
+ 748 ;; Auto vars: Size Location Type
+ 749 ;; None
+ 750 ;; Return value: Size Location Type
+ 751 ;; 1 wreg void
+ 752 ;; Registers used:
+ 753 ;; wreg, status,2, cstack
+ 754 ;; Tracked objects:
+ 755 ;; On entry : 0/0
+ 756 ;; On exit : 0/0
+ 757 ;; Unchanged: 0/0
+ 758 ;; Data sizes: COMRAM BANK0 BANK1 BANK2 BANK3 BANK4 BANK5
+ 759 ;; Params: 0 0 0 0 0 0 0
+ 760 ;; Locals: 0 0 0 0 0 0 0
+ 761 ;; Temps: 0 0 0 0 0 0 0
+ 762 ;; Totals: 0 0 0 0 0 0 0
+ 763 ;;Total ram usage: 0 bytes
+ 764 ;; Hardware stack levels used: 1
+ 765 ;; Hardware stack levels required when called: 2
+ 766 ;; This function calls:
+ 767 ;; _eusart1_init
+ 768 ;; This function is called by:
+ 769 ;; _main
+ 770 ;; This function uses a non-reentrant model
+ 771 ;;
+ 772
+ 773 psect text5
+ 774 0002A8 __ptext5:
+ 775 opt stack 0
+ 776 0002A8 _init_hw:
+ 777 opt stack 28
+ 778
+ 779 ;main.c: 142: (INTCONbits.GIE = 0);
+ 780
+ 781 ;incstack = 0
+ 782 0002A8 9EF2 bcf intcon,7,c ;volatile
+ 783
+ 784 ;main.c: 146: OSCTUNEbits.PLLEN = 1;
+ 785 0002AA 8C9B bsf 3995,6,c ;volatile
+ 786
+ 787 ;main.c: 148: OSCTUNEbits.TUN = 0b011111;
+ 788 0002AC 809B bsf 3995,0,c ;volatile
+ 789 0002AE 829B bsf 3995,1,c ;volatile
+ 790 0002B0 849B bsf 3995,2,c ;volatile
+ 791 0002B2 869B bsf 3995,3,c ;volatile
+ 792 0002B4 889B bsf 3995,4,c ;volatile
+ 793 0002B6 9A9B bcf 3995,5,c ;volatile
+ 794
+ 795 ;main.c: 150: OSCCONbits.IRCF = 0b111;
+ 796 0002B8 88D3 bsf 4051,4,c ;volatile
+ 797 0002BA 8AD3 bsf 4051,5,c ;volatile
+ 798 0002BC 8CD3 bsf 4051,6,c ;volatile
+ 799
+ 800 ;main.c: 152: OSCCONbits.SCS = 0b00;
+ 801 0002BE 0EFC movlw -4
+ 802 0002C0 16D3 andwf 4051,f,c ;volatile
+ 803
+ 804 ;main.c: 156: ANSELA = 0x00;
+ 805 0002C2 0E00 movlw 0
+ 806 0002C4 010F movlb 15 ; () banked
+ 807 0002C6 6F38 movwf 56,b ;volatile
+ 808
+ 809 ;main.c: 157: ANSELB = 0x00;
+ 810 0002C8 0E00 movlw 0
+ 811 0002CA 6F39 movwf 57,b ;volatile
+ 812
+ 813 ;main.c: 158: ANSELC = 0x00;
+ 814 0002CC 0E00 movlw 0
+ 815 0002CE 6F3A movwf 58,b ;volatile
+ 816
+ 817 ;main.c: 159: ANSELD = 0x00;
+ 818 0002D0 0E00 movlw 0
+ 819 0002D2 6F3B movwf 59,b ;volatile
+ 820
+ 821 ; BSR set to: 15
+ 822 ;main.c: 162: TRISA = 0xFF;
+ 823 0002D4 6892 setf 3986,c ;volatile
+ 824
+ 825 ; BSR set to: 15
+ 826 ;main.c: 163: TRISB = 0xFF;
+ 827 0002D6 6893 setf 3987,c ;volatile
+ 828
+ 829 ; BSR set to: 15
+ 830 ;main.c: 165: TRISDbits.TRISD1 = 0;
+ 831 0002D8 9295 bcf 3989,1,c ;volatile
+ 832
+ 833 ; BSR set to: 15
+ 834 ;main.c: 166: TRISDbits.TRISD2 = 0;
+ 835 0002DA 9495 bcf 3989,2,c ;volatile
+ 836
+ 837 ; BSR set to: 15
+ 838 ;main.c: 167: TRISDbits.TRISD3 = 0;
+ 839 0002DC 9695 bcf 3989,3,c ;volatile
+ 840
+ 841 ; BSR set to: 15
+ 842 ;main.c: 168: TRISDbits.TRISD4 = 0;
+ 843 0002DE 9895 bcf 3989,4,c ;volatile
+ 844
+ 845 ; BSR set to: 15
+ 846 ;main.c: 171: PORTDbits.RD1 = 1;
+ 847 0002E0 8283 bsf 3971,1,c ;volatile
+ 848
+ 849 ; BSR set to: 15
+ 850 ;main.c: 173: PORTDbits.RD2 = 0;
+ 851 0002E2 9483 bcf 3971,2,c ;volatile
+ 852
+ 853 ; BSR set to: 15
+ 854 ;main.c: 175: PORTDbits.RD3 = 1;
+ 855 0002E4 8683 bsf 3971,3,c ;volatile
+ 856
+ 857 ; BSR set to: 15
+ 858 ;main.c: 177: PORTDbits.RD4 = 0;
+ 859 0002E6 9883 bcf 3971,4,c ;volatile
+ 860
+ 861 ;main.c: 181: PR2 = 128;
+ 862 0002E8 0E80 movlw 128
+ 863 0002EA 6EBB movwf 4027,c ;volatile
+ 864
+ 865 ;main.c: 183: T2CONbits.T2OUTPS = 0b0011;
+ 866 0002EC 50BA movf 4026,w,c ;volatile
+ 867 0002EE 0B87 andlw -121
+ 868 0002F0 0918 iorlw 24
+ 869 0002F2 6EBA movwf 4026,c ;volatile
+ 870
+ 871 ;main.c: 185: T2CONbits.T2CKPS = 0b11;
+ 872 0002F4 0E03 movlw 3
+ 873 0002F6 12BA iorwf 4026,f,c ;volatile
+ 874
+ 875 ; BSR set to: 15
+ 876 ;main.c: 187: T2CONbits.TMR2ON = 1;
+ 877 0002F8 84BA bsf 4026,2,c ;volatile
+ 878
+ 879 ; BSR set to: 15
+ 880 ;main.c: 190: PIE1bits.TMR2IE = 1;
+ 881 0002FA 829D bsf 3997,1,c ;volatile
+ 882
+ 883 ; BSR set to: 15
+ 884 ;main.c: 191: PIR1bits.TMR2IF = 0;
+ 885 0002FC 929E bcf 3998,1,c ;volatile
+ 886
+ 887 ; BSR set to: 15
+ 888 ;main.c: 194: INTCONbits.PEIE = 1;
+ 889 0002FE 8CF2 bsf intcon,6,c ;volatile
+ 890
+ 891 ; BSR set to: 15
+ 892 ;main.c: 197: eusart1_init();
+ 893 000300 ECFE F001 call _eusart1_init ;wreg free
+ 894
+ 895 ;main.c: 199: (INTCONbits.GIE = 1);
+ 896 000304 8EF2 bsf intcon,7,c ;volatile
+ 897 000306 0012 return ;funcret
+ 898 000308 __end_of_init_hw:
+ 899 opt stack 0
+ 900 tblptru equ 0xFF8
+ 901 tblptrh equ 0xFF7
+ 902 tblptrl equ 0xFF6
+ 903 tablat equ 0xFF5
+ 904 intcon equ 0xFF2
+ 905 postinc0 equ 0xFEE
+ 906 wreg equ 0xFE8
+ 907 indf2 equ 0xFDF
+ 908 postinc2 equ 0xFDE
+ 909 postdec2 equ 0xFDD
+ 910 fsr2h equ 0xFDA
+ 911 fsr2l equ 0xFD9
+ 912 status equ 0xFD8
+ 913
+ 914 ;; *************** function _eusart1_init *****************
+ 915 ;; Defined at:
+ 916 ;; line 4 in file "rs232.c"
+ 917 ;; Parameters: Size Location Type
+ 918 ;; None
+ 919 ;; Auto vars: Size Location Type
+ 920 ;; None
+ 921 ;; Return value: Size Location Type
+ 922 ;; 1 wreg void
+ 923 ;; Registers used:
+ 924 ;; wreg, status,2
+ 925 ;; Tracked objects:
+ 926 ;; On entry : 0/0
+ 927 ;; On exit : 0/0
+ 928 ;; Unchanged: 0/0
+ 929 ;; Data sizes: COMRAM BANK0 BANK1 BANK2 BANK3 BANK4 BANK5
+ 930 ;; Params: 0 0 0 0 0 0 0
+ 931 ;; Locals: 0 0 0 0 0 0 0
+ 932 ;; Temps: 0 0 0 0 0 0 0
+ 933 ;; Totals: 0 0 0 0 0 0 0
+ 934 ;;Total ram usage: 0 bytes
+ 935 ;; Hardware stack levels used: 1
+ 936 ;; Hardware stack levels required when called: 1
+ 937 ;; This function calls:
+ 938 ;; Nothing
+ 939 ;; This function is called by:
+ 940 ;; _init_hw
+ 941 ;; This function uses a non-reentrant model
+ 942 ;;
+ 943
+ 944 psect text6
+ 945 0003FC __ptext6:
+ 946 opt stack 0
+ 947 0003FC _eusart1_init:
+ 948 opt stack 28
+ 949
+ 950 ;rs232.c: 7: TXSTA1bits.SYNC = 0;
+ 951
+ 952 ;incstack = 0
+ 953 0003FC 98AC bcf 4012,4,c ;volatile
+ 954
+ 955 ;rs232.c: 8: TXSTA1bits.TX9 = 0;
+ 956 0003FE 9CAC bcf 4012,6,c ;volatile
+ 957
+ 958 ;rs232.c: 11: RCSTA1bits.SPEN = 1;
+ 959 000400 8EAB bsf 4011,7,c ;volatile
+ 960
+ 961 ;rs232.c: 12: SPBRG1 = 31;
+ 962 000402 0E1F movlw 31
+ 963 000404 6EAF movwf 4015,c ;volatile
+ 964
+ 965 ;rs232.c: 13: SPBRGH1 = 0;
+ 966 000406 0E00 movlw 0
+ 967 000408 6EB0 movwf 4016,c ;volatile
+ 968
+ 969 ;rs232.c: 14: TXSTA1bits.BRGH = 0;
+ 970 00040A 94AC bcf 4012,2,c ;volatile
+ 971
+ 972 ;rs232.c: 15: BAUDCON1bits.BRG16 = 0;
+ 973 00040C 96B8 bcf 4024,3,c ;volatile
+ 974
+ 975 ;rs232.c: 18: TRISCbits.TRISC7 = 1;
+ 976 00040E 8E94 bsf 3988,7,c ;volatile
+ 977
+ 978 ;rs232.c: 19: TRISCbits.TRISC6 = 1;
+ 979 000410 8C94 bsf 3988,6,c ;volatile
+ 980
+ 981 ;rs232.c: 20: RCSTA1bits.CREN = 1;
+ 982 000412 88AB bsf 4011,4,c ;volatile
+ 983
+ 984 ;rs232.c: 21: TXSTA1bits.TXEN = 1;
+ 985 000414 8AAC bsf 4012,5,c ;volatile
+ 986 000416 0012 return ;funcret
+ 987 000418 __end_of_eusart1_init:
+ 988 opt stack 0
+ 989 tblptru equ 0xFF8
+ 990 tblptrh equ 0xFF7
+ 991 tblptrl equ 0xFF6
+ 992 tablat equ 0xFF5
+ 993 intcon equ 0xFF2
+ 994 postinc0 equ 0xFEE
+ 995 wreg equ 0xFE8
+ 996 indf2 equ 0xFDF
+ 997 postinc2 equ 0xFDE
+ 998 postdec2 equ 0xFDD
+ 999 fsr2h equ 0xFDA
+ 1000 fsr2l equ 0xFD9
+ 1001 status equ 0xFD8
+ 1002
+ 1003 ;; *************** function _eusart_write_midi *****************
+ 1004 ;; Defined at:
+ 1005 ;; line 226 in file "main.c"
+ 1006 ;; Parameters: Size Location Type
+ 1007 ;; pkt 2 26[COMRAM] PTR const struct .
+ 1008 ;; -> main@sample_message(7),
+ 1009 ;; Auto vars: Size Location Type
+ 1010 ;; data 2 32[COMRAM] PTR unsigned char
+ 1011 ;; -> sample_message.data(4), main@sample_message(7),
+ 1012 ;; length 2 30[COMRAM] unsigned int
+ 1013 ;; Return value: Size Location Type
+ 1014 ;; 2 26[COMRAM] int
+ 1015 ;; Registers used:
+ 1016 ;; wreg, fsr2l, fsr2h, status,2, status,0, cstack
+ 1017 ;; Tracked objects:
+ 1018 ;; On entry : 0/0
+ 1019 ;; On exit : 0/0
+ 1020 ;; Unchanged: 0/0
+ 1021 ;; Data sizes: COMRAM BANK0 BANK1 BANK2 BANK3 BANK4 BANK5
+ 1022 ;; Params: 2 0 0 0 0 0 0
+ 1023 ;; Locals: 4 0 0 0 0 0 0
+ 1024 ;; Temps: 2 0 0 0 0 0 0
+ 1025 ;; Totals: 8 0 0 0 0 0 0
+ 1026 ;;Total ram usage: 8 bytes
+ 1027 ;; Hardware stack levels used: 1
+ 1028 ;; Hardware stack levels required when called: 2
+ 1029 ;; This function calls:
+ 1030 ;; _putch
+ 1031 ;; This function is called by:
+ 1032 ;; _main
+ 1033 ;; This function uses a non-reentrant model
+ 1034 ;;
+ 1035
+ 1036 psect text7
+ 1037 000234 __ptext7:
+ 1038 opt stack 0
+ 1039 000234 _eusart_write_midi:
+ 1040 opt stack 28
+ 1041
+ 1042 ;main.c: 228: size_t length;
+ 1043 ;main.c: 229: uint8_t *data;
+ 1044 ;main.c: 231: if (pkt == (0)) {
+ 1045
+ 1046 ;incstack = 0
+ 1047 000234 501B movf eusart_write_midi@pkt,w,c
+ 1048 000236 101C iorwf eusart_write_midi@pkt+1,w,c
+ 1049 000238 B4D8 btfsc status,2,c
+ 1050 00023A 0012 return
+ 1051
+ 1052 ;main.c: 233: }
+ 1053 ;main.c: 235: length = pkt->data_size;
+ 1054
+ 1055 ;main.c: 232: return -1;
+ 1056 ; Return value of _eusart_write_midi is never used
+ 1057 00023C EE20 F001 lfsr 2,1
+ 1058 000240 501B movf eusart_write_midi@pkt,w,c
+ 1059 000242 26D9 addwf fsr2l,f,c
+ 1060 000244 501C movf eusart_write_midi@pkt+1,w,c
+ 1061 000246 22DA addwfc fsr2h,f,c
+ 1062 000248 CFDE F01F movff postinc2,eusart_write_midi@length
+ 1063 00024C CFDD F020 movff postdec2,eusart_write_midi@length+1
+ 1064
+ 1065 ;main.c: 236: data = (uint8_t *) pkt->data;
+ 1066 000250 0E03 movlw 3
+ 1067 000252 241B addwf eusart_write_midi@pkt,w,c
+ 1068 000254 6E21 movwf eusart_write_midi@data,c
+ 1069 000256 0E00 movlw 0
+ 1070 000258 201C addwfc eusart_write_midi@pkt+1,w,c
+ 1071 00025A 6E22 movwf eusart_write_midi@data+1,c
+ 1072
+ 1073 ;main.c: 238: putch((char)((pkt->status << 4) | pkt->channel));
+ 1074 00025C C01B FFD9 movff eusart_write_midi@pkt,fsr2l
+ 1075 000260 C01C FFDA movff eusart_write_midi@pkt+1,fsr2h
+ 1076 000264 38DF swapf indf2,w,c
+ 1077 000266 0B0F andlw 15
+ 1078 000268 6E1D movwf ??_eusart_write_midi& (0+255),c
+ 1079 00026A C01B FFD9 movff eusart_write_midi@pkt,fsr2l
+ 1080 00026E C01C FFDA movff eusart_write_midi@pkt+1,fsr2h
+ 1081 000272 50DF movf indf2,w,c
+ 1082 000274 0B0F andlw 15
+ 1083 000276 6E1E movwf (??_eusart_write_midi+1)& (0+255),c
+ 1084 000278 381E swapf ??_eusart_write_midi+1,w,c
+ 1085 00027A 0BF0 andlw 240
+ 1086 00027C 101D iorwf ??_eusart_write_midi,w,c
+ 1087 00027E EC0C F002 call _putch
+ 1088
+ 1089 ;main.c: 240: while (length--) {
+ 1090 000282 D009 goto l78
+ 1091 000284 l1163:
+ 1092
+ 1093 ;main.c: 241: putch((char) *(data++));
+ 1094 000284 C021 FFD9 movff eusart_write_midi@data,fsr2l
+ 1095 000288 C022 FFDA movff eusart_write_midi@data+1,fsr2h
+ 1096 00028C 50DF movf indf2,w,c
+ 1097 00028E EC0C F002 call _putch
+ 1098 000292 4A21 infsnz eusart_write_midi@data,f,c
+ 1099 000294 2A22 incf eusart_write_midi@data+1,f,c
+ 1100 000296 l78:
+ 1101 000296 061F decf eusart_write_midi@length,f,c
+ 1102 000298 A0D8 btfss status,0,c
+ 1103 00029A 0620 decf eusart_write_midi@length+1,f,c
+ 1104 00029C 281F incf eusart_write_midi@length,w,c
+ 1105 00029E E1F2 bnz l1163
+ 1106 0002A0 2820 incf eusart_write_midi@length+1,w,c
+ 1107 0002A2 B4D8 btfsc status,2,c
+ 1108 0002A4 0012 return
+ 1109 0002A6 D7EE goto l79
+ 1110 0002A8 __end_of_eusart_write_midi:
+ 1111 opt stack 0
+ 1112 tblptru equ 0xFF8
+ 1113 tblptrh equ 0xFF7
+ 1114 tblptrl equ 0xFF6
+ 1115 tablat equ 0xFF5
+ 1116 intcon equ 0xFF2
+ 1117 postinc0 equ 0xFEE
+ 1118 wreg equ 0xFE8
+ 1119 indf2 equ 0xFDF
+ 1120 postinc2 equ 0xFDE
+ 1121 postdec2 equ 0xFDD
+ 1122 fsr2h equ 0xFDA
+ 1123 fsr2l equ 0xFD9
+ 1124 status equ 0xFD8
+ 1125
+ 1126 ;; *************** function _putch *****************
+ 1127 ;; Defined at:
+ 1128 ;; line 29 in file "rs232.c"
+ 1129 ;; Parameters: Size Location Type
+ 1130 ;; c 1 wreg unsigned char
+ 1131 ;; Auto vars: Size Location Type
+ 1132 ;; c 1 25[COMRAM] unsigned char
+ 1133 ;; Return value: Size Location Type
+ 1134 ;; 1 wreg void
+ 1135 ;; Registers used:
+ 1136 ;; wreg
+ 1137 ;; Tracked objects:
+ 1138 ;; On entry : 0/0
+ 1139 ;; On exit : 0/0
+ 1140 ;; Unchanged: 0/0
+ 1141 ;; Data sizes: COMRAM BANK0 BANK1 BANK2 BANK3 BANK4 BANK5
+ 1142 ;; Params: 0 0 0 0 0 0 0
+ 1143 ;; Locals: 1 0 0 0 0 0 0
+ 1144 ;; Temps: 0 0 0 0 0 0 0
+ 1145 ;; Totals: 1 0 0 0 0 0 0
+ 1146 ;;Total ram usage: 1 bytes
+ 1147 ;; Hardware stack levels used: 1
+ 1148 ;; Hardware stack levels required when called: 1
+ 1149 ;; This function calls:
+ 1150 ;; Nothing
+ 1151 ;; This function is called by:
+ 1152 ;; _eusart_write_midi
+ 1153 ;; _getche
+ 1154 ;; This function uses a non-reentrant model
+ 1155 ;;
+ 1156
+ 1157 psect text8
+ 1158 000418 __ptext8:
+ 1159 opt stack 0
+ 1160 000418 _putch:
+ 1161 opt stack 28
+ 1162
+ 1163 ;incstack = 0
+ 1164 ;putch@c stored from wreg
+ 1165 000418 6E1A movwf putch@c,c
+ 1166 00041A
+ 1167 ;rs232.c: 31: while (!TX1IF);
+ 1168 00041A A89E btfss 3998,4,c ;volatile
+ 1169 00041C D7FE goto l1071
+ 1170
+ 1171 ;rs232.c: 32: TX1REG = c;
+ 1172 00041E C01A FFAD movff putch@c,4013 ;volatile
+ 1173 000422 0012 return ;funcret
+ 1174 000424 __end_of_putch:
+ 1175 opt stack 0
+ 1176 tblptru equ 0xFF8
+ 1177 tblptrh equ 0xFF7
+ 1178 tblptrl equ 0xFF6
+ 1179 tablat equ 0xFF5
+ 1180 intcon equ 0xFF2
+ 1181 postinc0 equ 0xFEE
+ 1182 wreg equ 0xFE8
+ 1183 indf2 equ 0xFDF
+ 1184 postinc2 equ 0xFDE
+ 1185 postdec2 equ 0xFDD
+ 1186 fsr2h equ 0xFDA
+ 1187 fsr2l equ 0xFD9
+ 1188 status equ 0xFD8
+ 1189
+ 1190 ;; *************** function _isr *****************
+ 1191 ;; Defined at:
+ 1192 ;; line 101 in file "main.c"
+ 1193 ;; Parameters: Size Location Type
+ 1194 ;; None
+ 1195 ;; Auto vars: Size Location Type
+ 1196 ;; i 1 24[COMRAM] unsigned char
+ 1197 ;; data 1 23[COMRAM] unsigned char
+ 1198 ;; Return value: Size Location Type
+ 1199 ;; 1 wreg void
+ 1200 ;; Registers used:
+ 1201 ;; wreg, fsr2l, fsr2h, status,2, status,0, prodl, prodh
+ 1202 ;; Tracked objects:
+ 1203 ;; On entry : 0/0
+ 1204 ;; On exit : 0/0
+ 1205 ;; Unchanged: 0/0
+ 1206 ;; Data sizes: COMRAM BANK0 BANK1 BANK2 BANK3 BANK4 BANK5
+ 1207 ;; Params: 0 0 0 0 0 0 0
+ 1208 ;; Locals: 3 0 0 0 0 0 0
+ 1209 ;; Temps: 22 0 0 0 0 0 0
+ 1210 ;; Totals: 25 0 0 0 0 0 0
+ 1211 ;;Total ram usage: 25 bytes
+ 1212 ;; Hardware stack levels used: 1
+ 1213 ;; This function calls:
+ 1214 ;; Nothing
+ 1215 ;; This function is called by:
+ 1216 ;; Interrupt level 2
+ 1217 ;; This function uses a non-reentrant model
+ 1218 ;;
+ 1219
+ 1220 psect intcode
+ 1221 000008 __pintcode:
+ 1222 opt stack 0
+ 1223 000008 _isr:
+ 1224 opt stack 28
+ 1225
+ 1226 ;incstack = 0
+ 1227 000008 8245 bsf btemp,1,c ;set compiler interrupt flag (level 2)
+ 1228 00000A CFFA F005 movff pclath,??_isr+4
+ 1229 00000E CFFB F006 movff pclatu,??_isr+5
+ 1230 000012 CFE9 F007 movff fsr0l,??_isr+6
+ 1231 000016 CFEA F008 movff fsr0h,??_isr+7
+ 1232 00001A CFE1 F009 movff fsr1l,??_isr+8
+ 1233 00001E CFE2 F00A movff fsr1h,??_isr+9
+ 1234 000022 CFD9 F00B movff fsr2l,??_isr+10
+ 1235 000026 CFDA F00C movff fsr2h,??_isr+11
+ 1236 00002A CFF3 F00D movff prodl,??_isr+12
+ 1237 00002E CFF4 F00E movff prodh,??_isr+13
+ 1238 000032 CFF6 F00F movff tblptrl,??_isr+14
+ 1239 000036 CFF7 F010 movff tblptrh,??_isr+15
+ 1240 00003A CFF8 F011 movff tblptru,??_isr+16
+ 1241 00003E CFF5 F012 movff tablat,??_isr+17
+ 1242 000042 C045 F013 movff btemp,??_isr+18
+ 1243 000046 C046 F014 movff btemp+1,??_isr+19
+ 1244 00004A C047 F015 movff btemp+2,??_isr+20
+ 1245 00004E C048 F016 movff btemp+3,??_isr+21
+ 1246
+ 1247 ;main.c: 103: unsigned char i, data;
+ 1248 ;main.c: 105: PORTDbits.RD3 = 0;
+ 1249 000052 9683 bcf 3971,3,c ;volatile
+ 1250
+ 1251 ;main.c: 107: if (PIR1bits.TMR2IF) {
+ 1252 000054 A29E btfss 3998,1,c ;volatile
+ 1253 000056 D089 goto i2l55
+ 1254
+ 1255 ;main.c: 109: data = PORTA;
+ 1256 000058 CF80 F018 movff 3968,isr@data ;volatile
+ 1257
+ 1258 ;main.c: 110: i = 7;
+ 1259 00005C 0E07 movlw 7
+ 1260 00005E 6E19 movwf isr@i,c
+ 1261 000060
+ 1262 ;main.c: 112: keypresses[i] = (keypresses[i] << 1) | ((data >> i) & 0x01);
+ 1263 000060 5019 movf isr@i,w,c
+ 1264 000062 0D02 mullw 2
+ 1265 000064 0E25 movlw low _keypresses
+ 1266 000066 24F3 addwf prodl,w,c
+ 1267 000068 6ED9 movwf fsr2l,c
+ 1268 00006A 0E00 movlw high _keypresses
+ 1269 00006C 20F4 addwfc prodh,w,c
+ 1270 00006E 6EDA movwf fsr2h,c
+ 1271 000070 CFDE F001 movff postinc2,??_isr
+ 1272 000074 CFDD F002 movff postdec2,??_isr+1
+ 1273 000078 90D8 bcf status,0,c
+ 1274 00007A 3601 rlcf ??_isr,f,c
+ 1275 00007C 3602 rlcf ??_isr+1,f,c
+ 1276 00007E C019 F003 movff isr@i,??_isr+2
+ 1277 000082 C018 F004 movff isr@data,??_isr+3
+ 1278 000086 2A03 incf ??_isr+2,f,c
+ 1279 000088 D002 goto i2u29_44
+ 1280 00008A i2u29_45:
+ 1281 00008A 90D8 bcf status,0,c
+ 1282 00008C 3204 rrcf ??_isr+3,f,c
+ 1283 00008E i2u29_44:
+ 1284 00008E 2E03 decfsz ??_isr+2,f,c
+ 1285 000090 D7FC goto i2u29_45
+ 1286 000092 0E01 movlw 1
+ 1287 000094 1604 andwf ??_isr+3,f,c
+ 1288 000096 5004 movf ??_isr+3,w,c
+ 1289 000098 1201 iorwf ??_isr,f,c
+ 1290 00009A 0E00 movlw 0
+ 1291 00009C 1202 iorwf ??_isr+1,f,c
+ 1292 00009E 5019 movf isr@i,w,c
+ 1293 0000A0 0D02 mullw 2
+ 1294 0000A2 0E25 movlw low _keypresses
+ 1295 0000A4 24F3 addwf prodl,w,c
+ 1296 0000A6 6ED9 movwf fsr2l,c
+ 1297 0000A8 0E00 movlw high _keypresses
+ 1298 0000AA 20F4 addwfc prodh,w,c
+ 1299 0000AC 6EDA movwf fsr2h,c
+ 1300 0000AE C001 FFDE movff ??_isr,postinc2
+ 1301 0000B2 C002 FFDD movff ??_isr+1,postdec2
+ 1302
+ 1303 ;main.c: 113: } while (i--);
+ 1304 0000B6 0619 decf isr@i,f,c
+ 1305 0000B8 2819 incf isr@i,w,c
+ 1306 0000BA A4D8 btfss status,2,c
+ 1307 0000BC D7D1 goto i2l56
+ 1308
+ 1309 ;main.c: 115: data = PORTB;
+ 1310 0000BE CF81 F018 movff 3969,isr@data ;volatile
+ 1311
+ 1312 ;main.c: 116: i = 7;
+ 1313 0000C2 0E07 movlw 7
+ 1314 0000C4 6E19 movwf isr@i,c
+ 1315 0000C6
+ 1316 ;main.c: 118: keypresses[i] = (keypresses[i] << 1) | ((data >> i) & 0x01);
+ 1317 0000C6 5019 movf isr@i,w,c
+ 1318 0000C8 0D02 mullw 2
+ 1319 0000CA 0E25 movlw low _keypresses
+ 1320 0000CC 24F3 addwf prodl,w,c
+ 1321 0000CE 6ED9 movwf fsr2l,c
+ 1322 0000D0 0E00 movlw high _keypresses
+ 1323 0000D2 20F4 addwfc prodh,w,c
+ 1324 0000D4 6EDA movwf fsr2h,c
+ 1325 0000D6 CFDE F001 movff postinc2,??_isr
+ 1326 0000DA CFDD F002 movff postdec2,??_isr+1
+ 1327 0000DE 90D8 bcf status,0,c
+ 1328 0000E0 3601 rlcf ??_isr,f,c
+ 1329 0000E2 3602 rlcf ??_isr+1,f,c
+ 1330 0000E4 C019 F003 movff isr@i,??_isr+2
+ 1331 0000E8 C018 F004 movff isr@data,??_isr+3
+ 1332 0000EC 2A03 incf ??_isr+2,f,c
+ 1333 0000EE D002 goto i2u31_44
+ 1334 0000F0 i2u31_45:
+ 1335 0000F0 90D8 bcf status,0,c
+ 1336 0000F2 3204 rrcf ??_isr+3,f,c
+ 1337 0000F4 i2u31_44:
+ 1338 0000F4 2E03 decfsz ??_isr+2,f,c
+ 1339 0000F6 D7FC goto i2u31_45
+ 1340 0000F8 0E01 movlw 1
+ 1341 0000FA 1604 andwf ??_isr+3,f,c
+ 1342 0000FC 5004 movf ??_isr+3,w,c
+ 1343 0000FE 1201 iorwf ??_isr,f,c
+ 1344 000100 0E00 movlw 0
+ 1345 000102 1202 iorwf ??_isr+1,f,c
+ 1346 000104 5019 movf isr@i,w,c
+ 1347 000106 0D02 mullw 2
+ 1348 000108 0E25 movlw low _keypresses
+ 1349 00010A 24F3 addwf prodl,w,c
+ 1350 00010C 6ED9 movwf fsr2l,c
+ 1351 00010E 0E00 movlw high _keypresses
+ 1352 000110 20F4 addwfc prodh,w,c
+ 1353 000112 6EDA movwf fsr2h,c
+ 1354 000114 C001 FFDE movff ??_isr,postinc2
+ 1355 000118 C002 FFDD movff ??_isr+1,postdec2
+ 1356
+ 1357 ;main.c: 119: } while (i-- - 8);
+ 1358 00011C 0EF8 movlw 248
+ 1359 00011E 6E01 movwf ??_isr& (0+255),c
+ 1360 000120 0EFF movlw 255
+ 1361 000122 6E02 movwf (??_isr+1)& (0+255),c
+ 1362 000124 0619 decf isr@i,f,c
+ 1363 000126 2819 incf isr@i,w,c
+ 1364 000128 6E03 movwf (??_isr+2)& (0+255),c
+ 1365 00012A 6A04 clrf (??_isr+3)& (0+255),c
+ 1366 00012C 5001 movf ??_isr,w,c
+ 1367 00012E 2603 addwf ??_isr+2,f,c
+ 1368 000130 5002 movf ??_isr+1,w,c
+ 1369 000132 2204 addwfc ??_isr+3,f,c
+ 1370 000134 5003 movf ??_isr+2,w,c
+ 1371 000136 1004 iorwf ??_isr+3,w,c
+ 1372 000138 A4D8 btfss status,2,c
+ 1373 00013A D7C5 goto i2l58
+ 1374
+ 1375 ;main.c: 129: PORTDbits.RD4 = PORTAbits.RA0;
+ 1376 00013C A080 btfss 3968,0,c ;volatile
+ 1377 00013E D002 bra i2u33_45
+ 1378 000140 8883 bsf 3971,4,c ;volatile
+ 1379 000142 D001 bra i2u33_47
+ 1380 000144 i2u33_45:
+ 1381 000144 9883 bcf 3971,4,c ;volatile
+ 1382 000146 i2u33_47:
+ 1383
+ 1384 ;main.c: 130: PORTDbits.RD2 = (keypresses[0] && !(keypresses[0] & 0xFF00));
+ 1385 000146 0E00 movlw 0
+ 1386 000148 6E17 movwf _isr$592,c
+ 1387 00014A 5025 movf _keypresses,w,c ;volatile
+ 1388 00014C 1026 iorwf _keypresses+1,w,c ;volatile
+ 1389 00014E B4D8 btfsc status,2,c
+ 1390 000150 D006 goto i2l61
+ 1391 000152 0EFF movlw 255
+ 1392 000154 1426 andwf _keypresses+1,w,c ;volatile
+ 1393 000156 A4D8 btfss status,2,c
+ 1394 000158 D002 goto i2l61
+ 1395 00015A 0E01 movlw 1
+ 1396 00015C 6E17 movwf _isr$592,c
+ 1397 00015E i2l61:
+ 1398 00015E B017 btfsc _isr$592,0,c
+ 1399 000160 D002 bra i2u36_45
+ 1400 000162 9483 bcf 3971,2,c ;volatile
+ 1401 000164 D001 bra i2u36_46
+ 1402 000166 i2u36_45:
+ 1403 000166 8483 bsf 3971,2,c ;volatile
+ 1404 000168 i2u36_46:
+ 1405
+ 1406 ;main.c: 133: PIR1bits.TMR2IF = 0;
+ 1407 000168 929E bcf 3998,1,c ;volatile
+ 1408 00016A i2l55:
+ 1409
+ 1410 ;main.c: 134: }
+ 1411 ;main.c: 136: PORTDbits.RD3 = 1;
+ 1412 00016A 8683 bsf 3971,3,c ;volatile
+ 1413 00016C C016 F048 movff ??_isr+21,btemp+3
+ 1414 000170 C015 F047 movff ??_isr+20,btemp+2
+ 1415 000174 C014 F046 movff ??_isr+19,btemp+1
+ 1416 000178 C013 F045 movff ??_isr+18,btemp
+ 1417 00017C C012 FFF5 movff ??_isr+17,tablat
+ 1418 000180 C011 FFF8 movff ??_isr+16,tblptru
+ 1419 000184 C010 FFF7 movff ??_isr+15,tblptrh
+ 1420 000188 C00F FFF6 movff ??_isr+14,tblptrl
+ 1421 00018C C00E FFF4 movff ??_isr+13,prodh
+ 1422 000190 C00D FFF3 movff ??_isr+12,prodl
+ 1423 000194 C00C FFDA movff ??_isr+11,fsr2h
+ 1424 000198 C00B FFD9 movff ??_isr+10,fsr2l
+ 1425 00019C C00A FFE2 movff ??_isr+9,fsr1h
+ 1426 0001A0 C009 FFE1 movff ??_isr+8,fsr1l
+ 1427 0001A4 C008 FFEA movff ??_isr+7,fsr0h
+ 1428 0001A8 C007 FFE9 movff ??_isr+6,fsr0l
+ 1429 0001AC C006 FFFB movff ??_isr+5,pclatu
+ 1430 0001B0 C005 FFFA movff ??_isr+4,pclath
+ 1431 0001B4 9245 bcf btemp,1,c ;clear compiler interrupt flag (level 2)
+ 1432 0001B6 0011 retfie f
+ 1433 0001B8 __end_of_isr:
+ 1434 opt stack 0
+ 1435 0000 pclatu equ 0xFFB
+ 1436 pclath equ 0xFFA
+ 1437 tblptru equ 0xFF8
+ 1438 tblptrh equ 0xFF7
+ 1439 tblptrl equ 0xFF6
+ 1440 tablat equ 0xFF5
+ 1441 prodh equ 0xFF4
+ 1442 prodl equ 0xFF3
+ 1443 intcon equ 0xFF2
+ 1444 postinc0 equ 0xFEE
+ 1445 fsr0h equ 0xFEA
+ 1446 fsr0l equ 0xFE9
+ 1447 wreg equ 0xFE8
+ 1448 fsr1h equ 0xFE2
+ 1449 fsr1l equ 0xFE1
+ 1450 indf2 equ 0xFDF
+ 1451 postinc2 equ 0xFDE
+ 1452 postdec2 equ 0xFDD
+ 1453 fsr2h equ 0xFDA
+ 1454 fsr2l equ 0xFD9
+ 1455 status equ 0xFD8
+ 1456 pclatu equ 0xFFB
+ 1457 pclath equ 0xFFA
+ 1458 tblptru equ 0xFF8
+ 1459 tblptrh equ 0xFF7
+ 1460 tblptrl equ 0xFF6
+ 1461 tablat equ 0xFF5
+ 1462 prodh equ 0xFF4
+ 1463 prodl equ 0xFF3
+ 1464 intcon equ 0xFF2
+ 1465 postinc0 equ 0xFEE
+ 1466 fsr0h equ 0xFEA
+ 1467 fsr0l equ 0xFE9
+ 1468 wreg equ 0xFE8
+ 1469 fsr1h equ 0xFE2
+ 1470 fsr1l equ 0xFE1
+ 1471 indf2 equ 0xFDF
+ 1472 postinc2 equ 0xFDE
+ 1473 postdec2 equ 0xFDD
+ 1474 fsr2h equ 0xFDA
+ 1475 fsr2l equ 0xFD9
+ 1476 status equ 0xFD8
+ 1477
+ 1478 psect rparam
+ 1479 0000 pclatu equ 0xFFB
+ 1480 pclath equ 0xFFA
+ 1481 tblptru equ 0xFF8
+ 1482 tblptrh equ 0xFF7
+ 1483 tblptrl equ 0xFF6
+ 1484 tablat equ 0xFF5
+ 1485 prodh equ 0xFF4
+ 1486 prodl equ 0xFF3
+ 1487 intcon equ 0xFF2
+ 1488 postinc0 equ 0xFEE
+ 1489 fsr0h equ 0xFEA
+ 1490 fsr0l equ 0xFE9
+ 1491 wreg equ 0xFE8
+ 1492 fsr1h equ 0xFE2
+ 1493 fsr1l equ 0xFE1
+ 1494 indf2 equ 0xFDF
+ 1495 postinc2 equ 0xFDE
+ 1496 postdec2 equ 0xFDD
+ 1497 fsr2h equ 0xFDA
+ 1498 fsr2l equ 0xFD9
+ 1499 status equ 0xFD8
+ 1500
+ 1501 psect temp
+ 1502 000045 btemp:
+ 1503 opt stack 0
+ 1504 000045 ds 1
+ 1505 0000 int$flags set btemp
+ 1506 0000 wtemp6 set btemp+1
+ 1507 pclatu equ 0xFFB
+ 1508 pclath equ 0xFFA
+ 1509 tblptru equ 0xFF8
+ 1510 tblptrh equ 0xFF7
+ 1511 tblptrl equ 0xFF6
+ 1512 tablat equ 0xFF5
+ 1513 prodh equ 0xFF4
+ 1514 prodl equ 0xFF3
+ 1515 intcon equ 0xFF2
+ 1516 postinc0 equ 0xFEE
+ 1517 fsr0h equ 0xFEA
+ 1518 fsr0l equ 0xFE9
+ 1519 wreg equ 0xFE8
+ 1520 fsr1h equ 0xFE2
+ 1521 fsr1l equ 0xFE1
+ 1522 indf2 equ 0xFDF
+ 1523 postinc2 equ 0xFDE
+ 1524 postdec2 equ 0xFDD
+ 1525 fsr2h equ 0xFDA
+ 1526 fsr2l equ 0xFD9
+ 1527 status equ 0xFD8
+
+
+Data Sizes:
+ Strings 0
+ Constant 0
+ Data 2
+ BSS 30
+ Persistent 0
+ Stack 0
+
+Auto Spaces:
+ Space Size Autos Used
+ COMRAM 94 36 68
+ BANK0 160 9 9
+ BANK1 256 0 0
+ BANK2 256 0 0
+ BANK3 256 0 0
+ BANK4 256 0 0
+ BANK5 256 0 0
+
+Pointer List with Targets:
+
+ memset@p1 PTR void size(2) Largest target is 30
+ -> keypresses(COMRAM[30]),
+
+ memset@p PTR unsigned char size(2) Largest target is 30
+ -> keypresses(COMRAM[30]),
+
+ midi_note_on@pkt PTR struct . size(2) Largest target is 7
+ -> main@sample_message(BANK0[7]),
+
+ midi_set_channel@pkt PTR struct . size(2) Largest target is 7
+ -> main@sample_message(BANK0[7]),
+
+ midi_set_status@pkt PTR struct . size(2) Largest target is 7
+ -> main@sample_message(BANK0[7]),
+
+ eusart_write_midi@data PTR unsigned char size(2) Largest target is 7
+ -> sample_message.data(COMRAM[4]), main@sample_message(BANK0[7]),
+
+ eusart_write_midi@pkt PTR const struct . size(2) Largest target is 7
+ -> main@sample_message(BANK0[7]),
+
+ sp__memset PTR void size(2) Largest target is 30
+ -> keypresses(COMRAM[30]),
+
+
+Critical Paths under _main in COMRAM
+
+ _main->_midi_note_on
+ _midi_note_on->_midi_set_channel
+ _eusart_write_midi->_putch
+
+Critical Paths under _isr in COMRAM
+
+ None.
+
+Critical Paths under _main in BANK0
+
+ _main->_midi_note_on
+
+Critical Paths under _isr in BANK0
+
+ None.
+
+Critical Paths under _main in BANK1
+
+ None.
+
+Critical Paths under _isr in BANK1
+
+ None.
+
+Critical Paths under _main in BANK2
+
+ None.
+
+Critical Paths under _isr in BANK2
+
+ None.
+
+Critical Paths under _main in BANK3
+
+ None.
+
+Critical Paths under _isr in BANK3
+
+ None.
+
+Critical Paths under _main in BANK4
+
+ None.
+
+Critical Paths under _isr in BANK4
+
+ None.
+
+Critical Paths under _main in BANK5
+
+ None.
+
+Critical Paths under _isr in BANK5
+
+ None.
+
+Call Graph Tables:
+
+ ---------------------------------------------------------------------------------
+ (Depth) Function Calls Base Space Used Autos Params Refs
+ ---------------------------------------------------------------------------------
+ (0) _main 9 9 0 2419
+ 2 BANK0 7 7 0
+ _eusart_write_midi
+ _init_hw
+ _memset
+ _midi_note_on
+ ---------------------------------------------------------------------------------
+ (1) _midi_note_on 8 2 6 1576
+ 30 COMRAM 6 0 6
+ 0 BANK0 2 2 0
+ _midi_set_channel
+ _midi_set_status
+ ---------------------------------------------------------------------------------
+ (2) _midi_set_status 4 1 3 453
+ 25 COMRAM 4 1 3
+ ---------------------------------------------------------------------------------
+ (2) _midi_set_channel 5 1 4 453
+ 25 COMRAM 5 1 4
+ ---------------------------------------------------------------------------------
+ (1) _memset 8 2 6 407
+ 25 COMRAM 8 2 6
+ ---------------------------------------------------------------------------------
+ (1) _init_hw 0 0 0 0
+ _eusart1_init
+ ---------------------------------------------------------------------------------
+ (2) _eusart1_init 0 0 0 0
+ ---------------------------------------------------------------------------------
+ (1) _eusart_write_midi 8 6 2 338
+ 26 COMRAM 8 6 2
+ _putch
+ ---------------------------------------------------------------------------------
+ (2) _putch 1 1 0 22
+ 25 COMRAM 1 1 0
+ ---------------------------------------------------------------------------------
+ Estimated maximum stack depth 2
+ ---------------------------------------------------------------------------------
+ (Depth) Function Calls Base Space Used Autos Params Refs
+ ---------------------------------------------------------------------------------
+ (3) _isr 25 25 0 248
+ 0 COMRAM 25 25 0
+ ---------------------------------------------------------------------------------
+ Estimated maximum stack depth 3
+ ---------------------------------------------------------------------------------
+
+ Call Graph Graphs:
+
+ _main (ROOT)
+ _eusart_write_midi
+ _putch
+ _init_hw
+ _eusart1_init
+ _memset
+ _midi_note_on
+ _midi_set_channel
+ _midi_set_status
+
+ _isr (ROOT)
+
+ Address spaces:
+Name Size Autos Total Cost Usage
+BIGRAM 5FF 0 0 16 0.0%
+EEDATA 100 0 0 0 0.0%
+BITBANK5 100 0 0 14 0.0%
+BANK5 100 0 0 15 0.0%
+BITBANK4 100 0 0 12 0.0%
+BANK4 100 0 0 13 0.0%
+BITBANK3 100 0 0 10 0.0%
+BANK3 100 0 0 11 0.0%
+BITBANK2 100 0 0 7 0.0%
+BANK2 100 0 0 8 0.0%
+BITBANK1 100 0 0 5 0.0%
+BANK1 100 0 0 6 0.0%
+BITBANK0 A0 0 0 3 0.0%
+BANK0 A0 9 9 4 5.6%
+BITCOMRAM 5E 0 0 0 0.0%
+COMRAM 5E 24 44 1 72.3%
+BITSFR_1 0 0 0 200 0.0%
+SFR_1 0 0 0 200 0.0%
+BITSFR 0 0 0 200 0.0%
+SFR 0 0 0 200 0.0%
+STACK 0 0 0 2 0.0%
+NULL 0 0 0 0 0.0%
+ABS 0 0 4D 9 0.0%
+DATA 0 0 4D 17 0.0%
+CODE 0 0 0 0 0.0%
+
+
+Microchip Technology PIC18 Macro Assembler V1.44 build -154322312
+Symbol Table Fri Feb 23 16:30:02 2018
+
+ l70 0346 l78 0296 l79 0284
+ __CFG_CP0$OFF 000000 __CFG_CP1$OFF 000000 __CFG_CP2$OFF 000000
+ __CFG_CP3$OFF 000000 __CFG_LVP$ON 000000 l570 0390
+ l569 03A0 __CFG_CPB$OFF 000000 _PR2 000FBB
+ __CFG_CPD$OFF 000000 _isr 0008 prod 000FF3
+ wreg 000FE8 _TXSTA1bits 000FAC l1071 041A
+ l1129 0390 l1163 0284 ?_isr 0001
+ i2l61 015E i2l55 016A i2l56 0060
+ i2l58 00C6 _main 0308 midi_note_on@channel 0021
+ fsr0h 000FEA fsr1h 000FE2 fsr2h 000FDA
+ fsr0l 000FE9 indf2 000FDF fsr1l 000FE1
+ fsr2l 000FD9 btemp 0045 __CFG_BORV$190 000000
+ isr@i 0019 prodh 000FF4 prodl 000FF3
+ start 01B8 __CFG_IESO$OFF 000000 midi_note_on@pkt 001F
+ ___param_bank 000000 ??_isr 0001 _BAUDCON1bits 000FB8
+ ?_main 0001 _RC1IF 007CF5 __CFG_WDTEN$ON 000000
+ _TX1IF 007CF4 _PORTA 000F80 _PORTB 000F81
+ _TRISA 000F92 _TRISB 000F93 __CFG_WRT0$OFF 000000
+ __CFG_WRT1$OFF 000000 __CFG_WRT2$OFF 000000 __CFG_WRT3$OFF 000000
+ __CFG_EBTR0$OFF 000000 __CFG_FCMEN$OFF 000000 __CFG_EBTR1$OFF 000000
+ __CFG_EBTR2$OFF 000000 __CFG_EBTR3$OFF 000000 __CFG_WRTB$OFF 000000
+ __CFG_WRTC$OFF 000000 __CFG_WRTD$OFF 000000 __CFG_EBTRB$OFF 000000
+ __end_of_init_hw 0308 __CFG_MCLRE$EXTMCLR 000000 _putch 0418
+ pclath 000FFA tablat 000FF5 _eusart_write_midi 0234
+ __end_of_midi_set_status 03FC status 000FD8 wtemp6 0046
+ __CFG_HFOFST$ON 000000 ?_eusart_write_midi 001B __CFG_PBADEN$ON 000000
+ eusart_write_midi@length 001F __initialization 0354 midi_note_on@note 0023
+ __end_of_main 0354 ??_eusart_write_midi 001D midi_note_on@velocity 0024
+ ??_main 0025 ?_midi_note_on 001F __activetblptr 000002
+ __CFG_PLLCFG$ON 000000 __end_of_eusart_write_midi 02A8 _ANSELA 000F38
+ ?_putch 0001 _ANSELB 000F39 _ANSELC 000F3A
+ _ANSELD 000F3B _RC1REG 000FAE _SPBRG1 000FAF
+ _TX1REG 000FAD ?_eusart1_init 0001 __CFG_XINST$OFF 000000
+ __CFG_STVREN$ON 000000 __end_of_midi_set_channel 03D8 _memset 0386
+ clear_0 0372 midi_set_status@status 001C ??_midi_note_on 0060
+ ??_init_hw 001A __pdataCOMRAM 0043 tblptrh 000FF7
+ tblptrl 000FF6 tblptru 000FF8 putch@c 001A
+ __accesstop 0060 __end_of__initialization 0378 ?_midi_set_status 001A
+ ??_eusart1_init 001A ___rparam_used 000001 __pcstackCOMRAM 0001
+ __end_of_putch 0424 __size_of_eusart_write_midi 0074 ??_putch 001A
+ __CFG_CCP2MX$PORTC1 000000 __CFG_CCP3MX$PORTB5 000000 ?_memset 001A
+ i2u31_44 00F4 i2u31_45 00F0 i2u33_45 0144
+ i2u33_47 0146 i2u36_45 0166 i2u36_46 0168
+ i2u29_44 008E i2u29_45 008A _SPBRGH1 000FB0
+ __end_of_midi_note_on 0234 eusart_write_midi@pkt 001B __CFG_PWRTEN$OFF 000000
+ __Hparam 0000 __Lparam 0000 __pcinit 0354
+ _isr$592 0017 __size_of_memset 002C __ramtop 0600
+ __ptext0 0308 __ptext1 01BC __ptext2 03D8
+ __ptext3 03B2 __ptext4 0386 __ptext5 02A8
+ __ptext6 03FC __ptext7 0234 __ptext8 0418
+ __end_of_eusart1_init 0418 _T2CONbits 000FBA _init_hw 02A8
+ __size_of_isr 01B0 _keypresses 0025 end_of_initialization 0378
+ isr@data 0018 memset@c 001C memset@n 001E
+ memset@p 0020 __Lmediumconst 0000 postdec2 000FDD
+ postinc0 000FEE postinc2 000FDE ?_midi_set_channel 001A
+ _PORTAbits 000F80 _PORTDbits 000F83 ??_midi_set_channel 001E
+ __CFG_FOSC$INTIO7 000000 _TRISCbits 000F94 _TRISDbits 000F95
+ midi_set_channel@channel 001C __pidataCOMRAM 0424 __end_of_memset 03B2
+ start_initialization 0354 __end_of_isr 01B8 __size_of_midi_note_on 0078
+ __size_of_midi_set_status 0024 __size_of_eusart1_init 001C ??_memset 0020
+ _midi_note_on 01BC __pbssCOMRAM 0025 __pcstackBANK0 0060
+ midi_set_status@pkt 001A _eusart1_init 03FC __pintcode 0008
+ __CFG_PRICLKEN$ON 000000 main@sample_message 0062 ?_init_hw 0001
+ __size_of_putch 000C _PIE1bits 000F9D _PIR1bits 000F9E
+ __CFG_WDTPS$32768 000000 ??_midi_set_status 001D __size_of_midi_set_channel 0026
+ eusart_write_midi@data 0021 __Hrparam 0000 __Lrparam 0000
+ __CFG_BOREN$SBORDIS 000000 __CFG_P2BMX$PORTD2 000000 __size_of_init_hw 0060
+ _midi_base_scale 0043 __size_of_main 004C int$flags 0045
+ _OSCTUNEbits 000F9B _INTCONbits 000FF2 memset@p1 001A
+ midi_set_channel@pkt 001A intlevel2 0000 _RCSTA1bits 000FAB
+ _OSCCONbits 000FD3 __CFG_T3CMX$PORTC0 000000 _midi_set_channel 03B2
+ _midi_set_status 03D8
diff --git a/src/dist/default/production/src.production.map b/src/dist/default/production/src.production.map
new file mode 100644
index 0000000..f4c46fc
--- /dev/null
+++ b/src/dist/default/production/src.production.map
@@ -0,0 +1,821 @@
+Microchip MPLAB XC8 Compiler V1.44 ()
+
+Linker command line:
+
+-W-3 --edf=C:\Program Files\Microchip\xc8\v1.44\dat\en_msgs.txt -cs \
+ -h+dist/default/production\src.production.sym \
+ --cmf=dist/default/production\src.production.cmf -z -Q18F45K22 \
+ -oC:\Users\_prossn\AppData\Local\Temp\s5hg.2 \
+ -Mdist/default/production/src.production.map -E1 -ver=XC8 \
+ -ASTACK=069h-05ffh -pstack=STACK -ACODE=00h-07FFFh -ACONST=00h-07FFFh \
+ -ASMALLCONST=0600h-06FFhx122 -AMEDIUMCONST=0600h-07FFFh -ACOMRAM=01h-05Fh \
+ -AABS1=00h-05FFh -ABIGRAM=01h-05FFh -ARAM=060h-0FFh,0100h-01FFhx5 \
+ -ABANK0=060h-0FFh -ABANK1=0100h-01FFh -ABANK2=0200h-02FFh \
+ -ABANK3=0300h-03FFh -ABANK4=0400h-04FFh -ABANK5=0500h-05FFh \
+ -ASFR=0F38h-0F5Fh,0F60h-0FFFh \
+ -preset_vec=00h,intcode=08h,intcodelo,powerup,init -pramtop=0600h \
+ -psmallconst=SMALLCONST -pmediumconst=MEDIUMCONST -pconst=CONST \
+ -AFARRAM=00h-00h -ACONFIG=0300000h-030000Dh -pconfig=CONFIG \
+ -AIDLOC=0200000h-0200007h -pidloc=IDLOC -AEEDATA=0F00000h-0F000FFh \
+ -peeprom_data=EEDATA \
+ -prdata=COMRAM,nvrram=COMRAM,nvbit=COMRAM,rbss=COMRAM,rbit=COMRAM \
+ -pfarbss=FARRAM,fardata=FARRAM,nvFARRAM=FARRAM \
+ -pintsave_regs=BIGRAM,bigbss=BIGRAM,bigdata=BIGRAM -pbss=RAM \
+ -pidata=CODE,irdata=CODE,ibigdata=CODE,ifardata=CODE -prparam=COMRAM \
+ C:\Users\_prossn\AppData\Local\Temp\s5hg.obj \
+ dist/default/production\src.production.obj
+
+Object code version is 3.11
+
+Machine type is 18F45K22
+
+Call graph: (short form)
+
+
+
+
+ Name Link Load Length Selector Space Scale
+C:\Users\_prossn\AppData\Local\Temp\s5hg.obj
+ init 1B8 1B8 4 4 0
+ reset_vec 0 0 4 0 0
+ idloc 200000 200000 8 200000 0
+ config 300000 300000 E 300000 0
+dist/default/production\src.production.obj
+ intcode 8 8 1B0 4 0
+ temp 45 45 1 1 1
+ text8 418 418 C 4 0
+ text7 234 234 74 4 0
+ text6 3FC 3FC 1C 4 0
+ text5 2A8 2A8 60 4 0
+ text4 386 386 2C 4 0
+ text3 3B2 3B2 26 4 0
+ text2 3D8 3D8 24 4 0
+ text1 1BC 1BC 78 4 0
+ text0 308 308 4C 4 0
+ cstackCOMRAM 1 1 24 1 1
+ cstackBANK0 60 60 9 60 1
+ dataCOMRAM 43 43 2 1 1
+ bssCOMRAM 25 25 1E 1 1
+ cinit 354 354 32 4 0
+ idataCOMRAM 424 424 2 4 0
+
+TOTAL Name Link Load Length Space
+ CLASS STACK
+
+ CLASS CODE
+ intcode 8 8 1B0 0
+ init 1B8 1B8 4 0
+ reset_vec 0 0 4 0
+ text8 418 418 C 0
+ text7 234 234 74 0
+ text6 3FC 3FC 1C 0
+ text5 2A8 2A8 60 0
+ text4 386 386 2C 0
+ text3 3B2 3B2 26 0
+ text2 3D8 3D8 24 0
+ text1 1BC 1BC 78 0
+ text0 308 308 4C 0
+ cinit 354 354 32 0
+ idataCOMRAM 424 424 2 0
+
+ CLASS CONST
+
+ CLASS SMALLCONST
+
+ CLASS MEDIUMCONST
+
+ CLASS COMRAM
+ temp 45 45 1 1
+ cstackCOMRAM 1 1 24 1
+ dataCOMRAM 43 43 2 1
+ bssCOMRAM 25 25 1E 1
+
+ CLASS ABS1
+
+ CLASS BIGRAM
+
+ CLASS RAM
+
+ CLASS BANK0
+ cstackBANK0 60 60 9 1
+
+ CLASS BANK1
+
+ CLASS BANK2
+
+ CLASS BANK3
+
+ CLASS BANK4
+
+ CLASS BANK5
+
+ CLASS SFR
+
+ CLASS FARRAM
+
+ CLASS CONFIG
+ config 300000 300000 E 0
+
+ CLASS IDLOC
+ idloc 200000 200000 8 0
+
+ CLASS EEDATA
+
+
+
+SEGMENTS Name Load Length Top Selector Space Class
+
+ reset_vec 000000 000004 000004 0 0 CODE
+ cstackCOMRAM 000001 000045 000046 1 1 COMRAM
+ intcode 000008 00041E 000426 4 0 CODE
+ cstackBANK0 000060 000009 000069 60 1 BANK0
+ idloc 200000 000008 200008 200000 0 IDLOC
+ config 300000 00000E 30000E 300000 0 CONFIG
+
+
+UNUSED ADDRESS RANGES
+
+ Name Unused Largest block Delta
+ BANK0 000069-0000FF 97
+ BANK1 000100-0001FF 100
+ BANK2 000200-0002FF 100
+ BANK3 000300-0003FF 100
+ BANK4 000400-0004FF 100
+ BANK5 000500-0005FF 100
+ BIGRAM 000046-00005F 1A
+ 000069-0005FF 597
+ CODE 000004-000007 4
+ 000426-007FFF 7BDA
+ COMRAM 000046-00005F 1A
+ CONST 000004-000007 4
+ 000426-007FFF 7BDA
+ EEDATA F00000-F000FF 100
+ MEDIUMCONST 000600-007FFF 7A00
+ RAM 000069-0005FF 100
+ SFR 000F38-000FFF 28
+ SMALLCONST 000600-007FFF 100
+ STACK 000069-0005FF 597
+
+ Symbol Table
+
+_ANSELA (abs) 000F38
+_ANSELB (abs) 000F39
+_ANSELC (abs) 000F3A
+_ANSELD (abs) 000F3B
+_BAUDCON1bits (abs) 000FB8
+_INTCONbits (abs) 000FF2
+_OSCCONbits (abs) 000FD3
+_OSCTUNEbits (abs) 000F9B
+_PIE1bits (abs) 000F9D
+_PIR1bits (abs) 000F9E
+_PORTA (abs) 000F80
+_PORTAbits (abs) 000F80
+_PORTB (abs) 000F81
+_PORTDbits (abs) 000F83
+_PR2 (abs) 000FBB
+_RC1IF (abs) 007CF5
+_RC1REG (abs) 000FAE
+_RCSTA1bits (abs) 000FAB
+_SPBRG1 (abs) 000FAF
+_SPBRGH1 (abs) 000FB0
+_T2CONbits (abs) 000FBA
+_TRISA (abs) 000F92
+_TRISB (abs) 000F93
+_TRISCbits (abs) 000F94
+_TRISDbits (abs) 000F95
+_TX1IF (abs) 007CF4
+_TX1REG (abs) 000FAD
+_TXSTA1bits (abs) 000FAC
+__CFG_BOREN$SBORDIS (abs) 000000
+__CFG_BORV$190 (abs) 000000
+__CFG_CCP2MX$PORTC1 (abs) 000000
+__CFG_CCP3MX$PORTB5 (abs) 000000
+__CFG_CP0$OFF (abs) 000000
+__CFG_CP1$OFF (abs) 000000
+__CFG_CP2$OFF (abs) 000000
+__CFG_CP3$OFF (abs) 000000
+__CFG_CPB$OFF (abs) 000000
+__CFG_CPD$OFF (abs) 000000
+__CFG_EBTR0$OFF (abs) 000000
+__CFG_EBTR1$OFF (abs) 000000
+__CFG_EBTR2$OFF (abs) 000000
+__CFG_EBTR3$OFF (abs) 000000
+__CFG_EBTRB$OFF (abs) 000000
+__CFG_FCMEN$OFF (abs) 000000
+__CFG_FOSC$INTIO7 (abs) 000000
+__CFG_HFOFST$ON (abs) 000000
+__CFG_IESO$OFF (abs) 000000
+__CFG_LVP$ON (abs) 000000
+__CFG_MCLRE$EXTMCLR (abs) 000000
+__CFG_P2BMX$PORTD2 (abs) 000000
+__CFG_PBADEN$ON (abs) 000000
+__CFG_PLLCFG$ON (abs) 000000
+__CFG_PRICLKEN$ON (abs) 000000
+__CFG_PWRTEN$OFF (abs) 000000
+__CFG_STVREN$ON (abs) 000000
+__CFG_T3CMX$PORTC0 (abs) 000000
+__CFG_WDTEN$ON (abs) 000000
+__CFG_WDTPS$32768 (abs) 000000
+__CFG_WRT0$OFF (abs) 000000
+__CFG_WRT1$OFF (abs) 000000
+__CFG_WRT2$OFF (abs) 000000
+__CFG_WRT3$OFF (abs) 000000
+__CFG_WRTB$OFF (abs) 000000
+__CFG_WRTC$OFF (abs) 000000
+__CFG_WRTD$OFF (abs) 000000
+__CFG_XINST$OFF (abs) 000000
+__HRAM (abs) 000000
+__Habs1 abs1 000000
+__Hbank0 bank0 000000
+__Hbank1 bank1 000000
+__Hbank2 bank2 000000
+__Hbank3 bank3 000000
+__Hbank4 bank4 000000
+__Hbank5 bank5 000000
+__Hbigbss bigbss 000000
+__Hbigdata bigdata 000000
+__Hbigram bigram 000000
+__Hbss bss 000000
+__HbssCOMRAM bssCOMRAM 000000
+__Hcinit cinit 000000
+__Hclrtext clrtext 000000
+__Hcomram comram 000000
+__Hconfig config 30000E
+__Hconst const 000000
+__HcstackBANK0 cstackBANK0 000000
+__HcstackCOMRAM cstackCOMRAM 000000
+__Hdata data 000000
+__HdataCOMRAM dataCOMRAM 000000
+__Heeprom_data eeprom_data 000000
+__Hfarbss farbss 000000
+__Hfardata fardata 000000
+__Hibigdata ibigdata 000000
+__Hidata idata 000000
+__HidataCOMRAM idataCOMRAM 000000
+__Hidloc idloc 200008
+__Hifardata ifardata 000000
+__Hinit init 0001BC
+__Hintcode intcode 0001B8
+__Hintcode_body intcode_body 000000
+__Hintcodelo intcodelo 0001B8
+__Hintentry intentry 000000
+__Hintret intret 000000
+__Hintsave_regs intsave_regs 000000
+__Hirdata irdata 000000
+__Hmediumconst mediumconst 000000
+__HnvFARRAM nvFARRAM 000000
+__Hnvbit nvbit 000000
+__Hnvrram nvrram 000000
+__Hparam rparam 000000
+__Hpowerup powerup 0001B8
+__Hram ram 000000
+__Hramtop ramtop 000600
+__Hrbit rbit 000000
+__Hrbss rbss 000000
+__Hrdata rdata 000000
+__Hreset_vec reset_vec 000004
+__Hrparam rparam 000000
+__Hsfr sfr 000000
+__Hsmallconst smallconst 000000
+__Hspace_0 (abs) 30000E
+__Hspace_1 (abs) 000069
+__Hspace_2 (abs) 000000
+__Hstack stack 000000
+__Hstruct struct 000000
+__Htemp temp 000046
+__Htext text 000000
+__Htext0 text0 000000
+__Htext1 text1 000000
+__Htext2 text2 000000
+__Htext3 text3 000000
+__Htext4 text4 000000
+__Htext5 text5 000000
+__Htext6 text6 000000
+__Htext7 text7 000000
+__Htext8 text8 000000
+__LRAM (abs) 000001
+__Labs1 abs1 000000
+__Lbank0 bank0 000000
+__Lbank1 bank1 000000
+__Lbank2 bank2 000000
+__Lbank3 bank3 000000
+__Lbank4 bank4 000000
+__Lbank5 bank5 000000
+__Lbigbss bigbss 000000
+__Lbigdata bigdata 000000
+__Lbigram bigram 000000
+__Lbss bss 000000
+__LbssCOMRAM bssCOMRAM 000000
+__Lcinit cinit 000000
+__Lclrtext clrtext 000000
+__Lcomram comram 000000
+__Lconfig config 300000
+__Lconst const 000000
+__LcstackBANK0 cstackBANK0 000000
+__LcstackCOMRAM cstackCOMRAM 000000
+__Ldata data 000000
+__LdataCOMRAM dataCOMRAM 000000
+__Leeprom_data eeprom_data 000000
+__Lfarbss farbss 000000
+__Lfardata fardata 000000
+__Libigdata ibigdata 000000
+__Lidata idata 000000
+__LidataCOMRAM idataCOMRAM 000000
+__Lidloc idloc 200000
+__Lifardata ifardata 000000
+__Linit init 0001B8
+__Lintcode intcode 000008
+__Lintcode_body intcode_body 000000
+__Lintcodelo intcodelo 0001B8
+__Lintentry intentry 000000
+__Lintret intret 000000
+__Lintsave_regs intsave_regs 000000
+__Lirdata irdata 000000
+__Lmediumconst mediumconst 000000
+__LnvFARRAM nvFARRAM 000000
+__Lnvbit nvbit 000000
+__Lnvrram nvrram 000000
+__Lparam rparam 000000
+__Lpowerup powerup 0001B8
+__Lram ram 000000
+__Lramtop ramtop 000600
+__Lrbit rbit 000000
+__Lrbss rbss 000000
+__Lrdata rdata 000000
+__Lreset_vec reset_vec 000000
+__Lrparam rparam 000000
+__Lsfr sfr 000000
+__Lsmallconst smallconst 000000
+__Lspace_0 (abs) 000000
+__Lspace_1 (abs) 000000
+__Lspace_2 (abs) 000000
+__Lstack stack 000000
+__Lstruct struct 000000
+__Ltemp temp 000045
+__Ltext text 000000
+__Ltext0 text0 000000
+__Ltext1 text1 000000
+__Ltext2 text2 000000
+__Ltext3 text3 000000
+__Ltext4 text4 000000
+__Ltext5 text5 000000
+__Ltext6 text6 000000
+__Ltext7 text7 000000
+__Ltext8 text8 000000
+__S0 (abs) 30000E
+__S1 (abs) 000069
+__S2 (abs) 000000
+___inthi_sp stack 000000
+___intlo_sp stack 000000
+___param_bank (abs) 000000
+___rparam_used (abs) 000001
+___sp stack 000000
+__accesstop (abs) 000060
+__activetblptr (abs) 000002
+__end_of__initialization cinit 000378
+__end_of_eusart1_init text6 000418
+__end_of_eusart_write_midi text7 0002A8
+__end_of_init_hw text5 000308
+__end_of_isr intcode 0001B8
+__end_of_main text0 000354
+__end_of_memset text4 0003B2
+__end_of_midi_note_on text1 000234
+__end_of_midi_set_channel text3 0003D8
+__end_of_midi_set_status text2 0003FC
+__end_of_putch text8 000424
+__initialization cinit 000354
+__mediumconst mediumconst 000000
+__pbssCOMRAM bssCOMRAM 000025
+__pcinit cinit 000354
+__pcstackBANK0 cstackBANK0 000060
+__pcstackCOMRAM cstackCOMRAM 000001
+__pdataCOMRAM dataCOMRAM 000043
+__pidataCOMRAM idataCOMRAM 000424
+__pintcode intcode 000008
+__ptext0 text0 000308
+__ptext1 text1 0001BC
+__ptext2 text2 0003D8
+__ptext3 text3 0003B2
+__ptext4 text4 000386
+__ptext5 text5 0002A8
+__ptext6 text6 0003FC
+__ptext7 text7 000234
+__ptext8 text8 000418
+__ramtop ramtop 000600
+__size_of_eusart1_init (abs) 000000
+__size_of_eusart_write_midi (abs) 000000
+__size_of_init_hw (abs) 000000
+__size_of_isr (abs) 000000
+__size_of_main (abs) 000000
+__size_of_memset (abs) 000000
+__size_of_midi_note_on (abs) 000000
+__size_of_midi_set_channel (abs) 000000
+__size_of_midi_set_status (abs) 000000
+__size_of_putch (abs) 000000
+__smallconst smallconst 000000
+_eusart1_init text6 0003FC
+_eusart_write_midi text7 000234
+_init_hw text5 0002A8
+_isr intcode 000008
+_isr$592 cstackCOMRAM 000017
+_keypresses bssCOMRAM 000025
+_main text0 000308
+_memset text4 000386
+_midi_base_scale dataCOMRAM 000043
+_midi_note_on text1 0001BC
+_midi_set_channel text3 0003B2
+_midi_set_status text2 0003D8
+_putch text8 000418
+btemp temp 000045
+end_of_initialization cinit 000378
+eusart_write_midi@data cstackCOMRAM 000021
+eusart_write_midi@length cstackCOMRAM 00001F
+eusart_write_midi@pkt cstackCOMRAM 00001B
+int$flags temp 000045
+intlevel0 text 000000
+intlevel1 text 000000
+intlevel2 text 000000
+intlevel3 text 000000
+isr@data cstackCOMRAM 000018
+isr@i cstackCOMRAM 000019
+main@sample_message cstackBANK0 000062
+memset@c cstackCOMRAM 00001C
+memset@n cstackCOMRAM 00001E
+memset@p cstackCOMRAM 000020
+memset@p1 cstackCOMRAM 00001A
+midi_note_on@channel cstackCOMRAM 000021
+midi_note_on@note cstackCOMRAM 000023
+midi_note_on@pkt cstackCOMRAM 00001F
+midi_note_on@velocity cstackCOMRAM 000024
+midi_set_channel@channel cstackCOMRAM 00001C
+midi_set_channel@pkt cstackCOMRAM 00001A
+midi_set_status@pkt cstackCOMRAM 00001A
+midi_set_status@status cstackCOMRAM 00001C
+putch@c cstackCOMRAM 00001A
+stackhi (abs) 0005FF
+stacklo (abs) 000069
+start init 0001B8
+start_initialization cinit 000354
+wtemp6 temp 000046
+
+
+FUNCTION INFORMATION:
+
+ *************** function _main *****************
+ Defined at:
+ line 204 in file "main.c"
+ Parameters: Size Location Type
+ None
+ Auto vars: Size Location Type
+ sample_messa 7 2[BANK0 ] struct .
+ data 1 0 unsigned char
+ i 1 0 unsigned char
+ Return value: Size Location Type
+ 1 wreg void
+ Registers used:
+ wreg, fsr2l, fsr2h, status,2, status,0, cstack
+ Tracked objects:
+ On entry :
+ On exit :
+ Unchanged:
+ Data sizes: COMRAM BANK0 BANK1 BANK2 BANK3 BANK4 BANK5
+ Params: 0 0 0 0 0 0 0
+ Locals: 0 7 0 0 0 0 0
+ Temps: 0 0 0 0 0 0 0
+ Totals: 0 7 0 0 0 0 0
+Total ram usage: 7 bytes
+ Hardware stack levels required when called: 3
+ This function calls:
+ _eusart_write_midi
+ _init_hw
+ _memset
+ _midi_note_on
+ This function is called by:
+ Startup code after reset
+ This function uses a non-reentrant model
+
+
+ *************** function _midi_note_on *****************
+ Defined at:
+ line 62 in file "midi.c"
+ Parameters: Size Location Type
+ pkt 2 30[COMRAM] PTR struct .
+ -> main@sample_message(7),
+ channel 2 32[COMRAM] unsigned int
+ note 1 34[COMRAM] enum E31
+ velocity 1 35[COMRAM] unsigned char
+ Auto vars: Size Location Type
+ None
+ Return value: Size Location Type
+ 2 30[COMRAM] int
+ Registers used:
+ wreg, fsr2l, fsr2h, status,2, status,0, cstack
+ Tracked objects:
+ On entry :
+ On exit :
+ Unchanged:
+ Data sizes: COMRAM BANK0 BANK1 BANK2 BANK3 BANK4 BANK5
+ Params: 6 0 0 0 0 0 0
+ Locals: 0 0 0 0 0 0 0
+ Temps: 0 2 0 0 0 0 0
+ Totals: 6 2 0 0 0 0 0
+Total ram usage: 8 bytes
+ Hardware stack levels used: 1
+ Hardware stack levels required when called: 2
+ This function calls:
+ _midi_set_channel
+ _midi_set_status
+ This function is called by:
+ _main
+ This function uses a non-reentrant model
+
+
+ *************** function _midi_set_status *****************
+ Defined at:
+ line 40 in file "midi.c"
+ Parameters: Size Location Type
+ pkt 2 25[COMRAM] PTR struct .
+ -> main@sample_message(7),
+ status 1 27[COMRAM] enum E40
+ Auto vars: Size Location Type
+ None
+ Return value: Size Location Type
+ 2 25[COMRAM] int
+ Registers used:
+ wreg, fsr2l, fsr2h, status,2, status,0
+ Tracked objects:
+ On entry :
+ On exit :
+ Unchanged:
+ Data sizes: COMRAM BANK0 BANK1 BANK2 BANK3 BANK4 BANK5
+ Params: 3 0 0 0 0 0 0
+ Locals: 0 0 0 0 0 0 0
+ Temps: 1 0 0 0 0 0 0
+ Totals: 4 0 0 0 0 0 0
+Total ram usage: 4 bytes
+ Hardware stack levels used: 1
+ Hardware stack levels required when called: 1
+ This function calls:
+ Nothing
+ This function is called by:
+ _midi_note_on
+ _midi_note_off
+ This function uses a non-reentrant model
+
+
+ *************** function _midi_set_channel *****************
+ Defined at:
+ line 51 in file "midi.c"
+ Parameters: Size Location Type
+ pkt 2 25[COMRAM] PTR struct .
+ -> main@sample_message(7),
+ channel 2 27[COMRAM] unsigned int
+ Auto vars: Size Location Type
+ None
+ Return value: Size Location Type
+ 2 25[COMRAM] int
+ Registers used:
+ wreg, fsr2l, fsr2h, status,2, status,0
+ Tracked objects:
+ On entry :
+ On exit :
+ Unchanged:
+ Data sizes: COMRAM BANK0 BANK1 BANK2 BANK3 BANK4 BANK5
+ Params: 4 0 0 0 0 0 0
+ Locals: 0 0 0 0 0 0 0
+ Temps: 1 0 0 0 0 0 0
+ Totals: 5 0 0 0 0 0 0
+Total ram usage: 5 bytes
+ Hardware stack levels used: 1
+ Hardware stack levels required when called: 1
+ This function calls:
+ Nothing
+ This function is called by:
+ _midi_note_on
+ _midi_note_off
+ This function uses a non-reentrant model
+
+
+ *************** function _memset *****************
+ Defined at:
+ line 8 in file "C:\Program Files\Microchip\xc8\v1.44\sources\common\memset.c"
+ Parameters: Size Location Type
+ p1 2 25[COMRAM] PTR void
+ -> keypresses(30),
+ c 2 27[COMRAM] int
+ n 2 29[COMRAM] unsigned int
+ Auto vars: Size Location Type
+ p 2 31[COMRAM] PTR unsigned char
+ -> keypresses(30),
+ Return value: Size Location Type
+ 2 25[COMRAM] PTR void
+ Registers used:
+ wreg, fsr2l, fsr2h, status,2, status,0
+ Tracked objects:
+ On entry :
+ On exit :
+ Unchanged:
+ Data sizes: COMRAM BANK0 BANK1 BANK2 BANK3 BANK4 BANK5
+ Params: 6 0 0 0 0 0 0
+ Locals: 2 0 0 0 0 0 0
+ Temps: 0 0 0 0 0 0 0
+ Totals: 8 0 0 0 0 0 0
+Total ram usage: 8 bytes
+ Hardware stack levels used: 1
+ Hardware stack levels required when called: 1
+ This function calls:
+ Nothing
+ This function is called by:
+ _main
+ This function uses a non-reentrant model
+
+
+ *************** function _init_hw *****************
+ Defined at:
+ line 140 in file "main.c"
+ Parameters: Size Location Type
+ None
+ Auto vars: Size Location Type
+ None
+ Return value: Size Location Type
+ 1 wreg void
+ Registers used:
+ wreg, status,2, cstack
+ Tracked objects:
+ On entry :
+ On exit :
+ Unchanged:
+ Data sizes: COMRAM BANK0 BANK1 BANK2 BANK3 BANK4 BANK5
+ Params: 0 0 0 0 0 0 0
+ Locals: 0 0 0 0 0 0 0
+ Temps: 0 0 0 0 0 0 0
+ Totals: 0 0 0 0 0 0 0
+Total ram usage: 0 bytes
+ Hardware stack levels used: 1
+ Hardware stack levels required when called: 2
+ This function calls:
+ _eusart1_init
+ This function is called by:
+ _main
+ This function uses a non-reentrant model
+
+
+ *************** function _eusart1_init *****************
+ Defined at:
+ line 4 in file "rs232.c"
+ Parameters: Size Location Type
+ None
+ Auto vars: Size Location Type
+ None
+ Return value: Size Location Type
+ 1 wreg void
+ Registers used:
+ wreg, status,2
+ Tracked objects:
+ On entry :
+ On exit :
+ Unchanged:
+ Data sizes: COMRAM BANK0 BANK1 BANK2 BANK3 BANK4 BANK5
+ Params: 0 0 0 0 0 0 0
+ Locals: 0 0 0 0 0 0 0
+ Temps: 0 0 0 0 0 0 0
+ Totals: 0 0 0 0 0 0 0
+Total ram usage: 0 bytes
+ Hardware stack levels used: 1
+ Hardware stack levels required when called: 1
+ This function calls:
+ Nothing
+ This function is called by:
+ _init_hw
+ This function uses a non-reentrant model
+
+
+ *************** function _eusart_write_midi *****************
+ Defined at:
+ line 226 in file "main.c"
+ Parameters: Size Location Type
+ pkt 2 26[COMRAM] PTR const struct .
+ -> main@sample_message(7),
+ Auto vars: Size Location Type
+ data 2 32[COMRAM] PTR unsigned char
+ -> sample_message.data(4), main@sample_message(7),
+ length 2 30[COMRAM] unsigned int
+ Return value: Size Location Type
+ 2 26[COMRAM] int
+ Registers used:
+ wreg, fsr2l, fsr2h, status,2, status,0, cstack
+ Tracked objects:
+ On entry :
+ On exit :
+ Unchanged:
+ Data sizes: COMRAM BANK0 BANK1 BANK2 BANK3 BANK4 BANK5
+ Params: 2 0 0 0 0 0 0
+ Locals: 4 0 0 0 0 0 0
+ Temps: 2 0 0 0 0 0 0
+ Totals: 8 0 0 0 0 0 0
+Total ram usage: 8 bytes
+ Hardware stack levels used: 1
+ Hardware stack levels required when called: 2
+ This function calls:
+ _putch
+ This function is called by:
+ _main
+ This function uses a non-reentrant model
+
+
+ *************** function _putch *****************
+ Defined at:
+ line 29 in file "rs232.c"
+ Parameters: Size Location Type
+ c 1 wreg unsigned char
+ Auto vars: Size Location Type
+ c 1 25[COMRAM] unsigned char
+ Return value: Size Location Type
+ 1 wreg void
+ Registers used:
+ wreg
+ Tracked objects:
+ On entry :
+ On exit :
+ Unchanged:
+ Data sizes: COMRAM BANK0 BANK1 BANK2 BANK3 BANK4 BANK5
+ Params: 0 0 0 0 0 0 0
+ Locals: 1 0 0 0 0 0 0
+ Temps: 0 0 0 0 0 0 0
+ Totals: 1 0 0 0 0 0 0
+Total ram usage: 1 bytes
+ Hardware stack levels used: 1
+ Hardware stack levels required when called: 1
+ This function calls:
+ Nothing
+ This function is called by:
+ _eusart_write_midi
+ _getche
+ This function uses a non-reentrant model
+
+
+ *************** function _isr *****************
+ Defined at:
+ line 101 in file "main.c"
+ Parameters: Size Location Type
+ None
+ Auto vars: Size Location Type
+ i 1 24[COMRAM] unsigned char
+ data 1 23[COMRAM] unsigned char
+ Return value: Size Location Type
+ 1 wreg void
+ Registers used:
+ wreg, fsr2l, fsr2h, status,2, status,0, prodl, prodh
+ Tracked objects:
+ On entry :
+ On exit :
+ Unchanged:
+ Data sizes: COMRAM BANK0 BANK1 BANK2 BANK3 BANK4 BANK5
+ Params: 0 0 0 0 0 0 0
+ Locals: 3 0 0 0 0 0 0
+ Temps: 22 0 0 0 0 0 0
+ Totals: 25 0 0 0 0 0 0
+Total ram usage: 25 bytes
+ Hardware stack levels used: 1
+ This function calls:
+ Nothing
+ This function is called by:
+ Interrupt level 2
+ This function uses a non-reentrant model
+
+
+
+MODULE INFORMATION
+
+Module Function Class Link Load Size
+rs232.c
+ _putch CODE 0418 0000 13
+ _eusart1_init CODE 03FC 0000 29
+
+rs232.c estimated size: 42
+
+shared
+ __initialization CODE 0354 0000 37
+
+shared estimated size: 37
+
+midi.c
+ _midi_set_channel CODE 03B2 0000 39
+ _midi_note_on CODE 01BC 0000 121
+ _midi_set_status CODE 03D8 0000 37
+
+midi.c estimated size: 197
+
+C:\Program Files\Microchip\xc8\v1.44\sources\common\memset.c
+ _memset CODE 0386 0000 45
+
+C:\Program Files\Microchip\xc8\v1.44\sources\common\memset.c estimated size: 45
+
+main.c
+ _init_hw CODE 02A8 0000 97
+ _eusart_write_midi CODE 0234 0000 117
+ _main CODE 0308 0000 77
+ _isr CODE 0008 0000 433
+
+main.c estimated size: 724
+
diff --git a/src/dist/default/production/src.production.mum b/src/dist/default/production/src.production.mum
new file mode 100644
index 0000000..c14afe5
--- /dev/null
+++ b/src/dist/default/production/src.production.mum
@@ -0,0 +1,9 @@
+
+Memory Summary:
+ Program space used 422h ( 1058) of 7A00h bytes ( 3.4%)
+ Data space used 4Eh ( 78) of 5FFh bytes ( 5.1%)
+ Configuration bits used 7h ( 7) of 7h words (100.0%)
+ EEPROM space used 0h ( 0) of 100h bytes ( 0.0%)
+ ID Location space used 8h ( 8) of 8h bytes (100.0%)
+ Data stack space used 0h ( 0) of 597h bytes ( 0.0%)
+
diff --git a/src/dist/default/production/src.production.obj b/src/dist/default/production/src.production.obj
new file mode 100644
index 0000000..2f7bc81
--- /dev/null
+++ b/src/dist/default/production/src.production.obj
Binary files differ
diff --git a/src/dist/default/production/src.production.rlf b/src/dist/default/production/src.production.rlf
new file mode 100644
index 0000000..2d46de5
--- /dev/null
+++ b/src/dist/default/production/src.production.rlf
Binary files differ
diff --git a/src/dist/default/production/src.production.sdb b/src/dist/default/production/src.production.sdb
new file mode 100644
index 0000000..f9bbdf0
--- /dev/null
+++ b/src/dist/default/production/src.production.sdb
@@ -0,0 +1,557 @@
+[p LITE_MODE AUTOSTATIC LFSROK EMI_WORD ]
+[d version 1.1 ]
+[d edition pro ]
+[d chip 18F45K22 ]
+[d frameptr 4065 ]
+"216 Z:\SAMB_4\projects\xilofono\src\main.c
+[e E41 . `uc
+C 0
+D 1
+E 2
+F 3
+G 4
+A 5
+B 6
+]
+"41 Z:\SAMB_4\projects\xilofono\src\midi.c
+[e E40 . `uc
+NOTE_ON 8
+NOTE_OFF 9
+POLYPHONIC_KEYPRESS 10
+CONTROLLER 11
+PROGRAM_CHANGE 12
+CHANNEL_PRESSURE 13
+PITCH_BLEND 15
+]
+"63
+[e E31 . `uc
+C 0
+D 1
+E 2
+F 3
+G 4
+A 5
+B 6
+]
+"62 C:\Program Files\Microchip\xc8\v1.44\sources\common\float.c
+[v ___ftpack __ftpack `(f 1 e 3 0 ]
+"86 C:\Program Files\Microchip\xc8\v1.44\sources\common\ftadd.c
+[v ___ftadd __ftadd `(f 1 e 3 0 ]
+"54 C:\Program Files\Microchip\xc8\v1.44\sources\common\ftdiv.c
+[v ___ftdiv __ftdiv `(f 1 e 3 0 ]
+"62 C:\Program Files\Microchip\xc8\v1.44\sources\common\ftmul.c
+[v ___ftmul __ftmul `(f 1 e 3 0 ]
+"20 C:\Program Files\Microchip\xc8\v1.44\sources\common\ftsub.c
+[v ___ftsub __ftsub `(f 1 e 3 0 ]
+"8 C:\Program Files\Microchip\xc8\v1.44\sources\common\memset.c
+[v _memset memset `(*.39v 1 e 2 0 ]
+"10 C:\Program Files\Microchip\xc8\v1.44\sources\common\sprcadd.c
+[v ___fladd __fladd `(d 1 e 3 0 ]
+"245
+[v ___flsub __flsub `(d 1 e 3 0 ]
+"11 C:\Program Files\Microchip\xc8\v1.44\sources\common\sprcdiv.c
+[v ___fldiv __fldiv `(d 1 e 3 0 ]
+"8 C:\Program Files\Microchip\xc8\v1.44\sources\common\sprcmul.c
+[v ___flmul __flmul `(d 1 e 3 0 ]
+"15 C:\Program Files\Microchip\xc8\v1.44\sources\common\Umul32.c
+[v ___lmul __lmul `(ul 1 e 4 0 ]
+"101 Z:\SAMB_4\projects\xilofono\src\main.c
+[v _isr isr `II(v 1 e 1 0 ]
+"140
+[v _init_hw init_hw `T(v 1 e 1 0 ]
+"204
+[v _main main `(v 1 e 1 0 ]
+"226
+[v _eusart_write_midi eusart_write_midi `(i 1 e 2 0 ]
+"40 Z:\SAMB_4\projects\xilofono\src\midi.c
+[v _midi_set_status midi_set_status `(i 1 e 2 0 ]
+"51
+[v _midi_set_channel midi_set_channel `(i 1 e 2 0 ]
+"62
+[v _midi_note_on midi_note_on `(i 1 e 2 0 ]
+"4 Z:\SAMB_4\projects\xilofono\src\rs232.c
+[v _eusart1_init eusart1_init `(v 1 e 1 0 ]
+"29
+[v _putch putch `(v 1 e 1 0 ]
+"35
+[v _getch getch `(uc 1 e 1 0 ]
+"50 C:\Program Files\Microchip\xc8\v1.44\include\pic18f45k22.h
+[v _ANSELA ANSELA `VEuc 1 e 1 @3896 ]
+"95
+[v _ANSELB ANSELB `VEuc 1 e 1 @3897 ]
+"145
+[v _ANSELC ANSELC `VEuc 1 e 1 @3898 ]
+"196
+[v _ANSELD ANSELD `VEuc 1 e 1 @3899 ]
+"6278
+[v _PORTA PORTA `VEuc 1 e 1 @3968 ]
+[s S160 . 1 `uc 1 RA0 1 0 :1:0
+`uc 1 RA1 1 0 :1:1
+`uc 1 RA2 1 0 :1:2
+`uc 1 RA3 1 0 :1:3
+`uc 1 RA4 1 0 :1:4
+`uc 1 RA5 1 0 :1:5
+`uc 1 RA6 1 0 :1:6
+`uc 1 RA7 1 0 :1:7
+]
+"6363
+[s S169 . 1 `uc 1 AN0 1 0 :1:0
+`uc 1 AN1 1 0 :1:1
+`uc 1 AN2 1 0 :1:2
+`uc 1 AN3 1 0 :1:3
+`uc 1 . 1 0 :1:4
+`uc 1 AN4 1 0 :1:5
+]
+[s S176 . 1 `uc 1 C12IN0M 1 0 :1:0
+`uc 1 C12IN1M 1 0 :1:1
+`uc 1 C2INP 1 0 :1:2
+`uc 1 C1INP 1 0 :1:3
+`uc 1 C1OUT 1 0 :1:4
+`uc 1 C2OUT 1 0 :1:5
+]
+[s S183 . 1 `uc 1 C12IN0N 1 0 :1:0
+`uc 1 C12IN1N 1 0 :1:1
+`uc 1 VREFM 1 0 :1:2
+`uc 1 VREFP 1 0 :1:3
+`uc 1 T0CKI 1 0 :1:4
+`uc 1 SS 1 0 :1:5
+]
+[s S190 . 1 `uc 1 . 1 0 :5:0
+`uc 1 NOT_SS 1 0 :1:5
+]
+[s S193 . 1 `uc 1 . 1 0 :2:0
+`uc 1 VREFN 1 0 :1:2
+`uc 1 . 1 0 :1:3
+`uc 1 SRQ 1 0 :1:4
+`uc 1 nSS 1 0 :1:5
+]
+[s S199 . 1 `uc 1 . 1 0 :2:0
+`uc 1 CVREF 1 0 :1:2
+`uc 1 . 1 0 :2:3
+`uc 1 LVDIN 1 0 :1:5
+]
+[s S204 . 1 `uc 1 . 1 0 :2:0
+`uc 1 DACOUT 1 0 :1:2
+`uc 1 . 1 0 :2:3
+`uc 1 HLVDIN 1 0 :1:5
+]
+[s S209 . 1 `uc 1 . 1 0 :5:0
+`uc 1 SS1 1 0 :1:5
+]
+[s S212 . 1 `uc 1 . 1 0 :5:0
+`uc 1 NOT_SS1 1 0 :1:5
+]
+[s S215 . 1 `uc 1 . 1 0 :5:0
+`uc 1 nSS1 1 0 :1:5
+]
+[s S218 . 1 `uc 1 . 1 0 :5:0
+`uc 1 SRNQ 1 0 :1:5
+]
+[s S221 . 1 `uc 1 ULPWUIN 1 0 :1:0
+`uc 1 . 1 0 :6:1
+`uc 1 RJPU 1 0 :1:7
+]
+[u S225 . 1 `S160 1 . 1 0 `S169 1 . 1 0 `S176 1 . 1 0 `S183 1 . 1 0 `S190 1 . 1 0 `S193 1 . 1 0 `S199 1 . 1 0 `S204 1 . 1 0 `S209 1 . 1 0 `S212 1 . 1 0 `S215 1 . 1 0 `S218 1 . 1 0 `S221 1 . 1 0 ]
+[v _PORTAbits PORTAbits `VES225 1 e 1 @3968 ]
+"6563
+[v _PORTB PORTB `VEuc 1 e 1 @3969 ]
+[s S21 . 1 `uc 1 RD0 1 0 :1:0
+`uc 1 RD1 1 0 :1:1
+`uc 1 RD2 1 0 :1:2
+`uc 1 RD3 1 0 :1:3
+`uc 1 RD4 1 0 :1:4
+`uc 1 RD5 1 0 :1:5
+`uc 1 RD6 1 0 :1:6
+`uc 1 RD7 1 0 :1:7
+]
+"7203
+[s S30 . 1 `uc 1 . 1 0 :2:0
+`uc 1 P2B 1 0 :1:2
+`uc 1 P2C 1 0 :1:3
+`uc 1 P2D 1 0 :1:4
+`uc 1 P1B 1 0 :1:5
+`uc 1 P1C 1 0 :1:6
+`uc 1 P1D 1 0 :1:7
+]
+[s S38 . 1 `uc 1 . 1 0 :1:0
+`uc 1 CCP4 1 0 :1:1
+`uc 1 . 1 0 :4:2
+`uc 1 TX2 1 0 :1:6
+`uc 1 RX2 1 0 :1:7
+]
+[s S44 . 1 `uc 1 . 1 0 :3:0
+`uc 1 NOT_SS2 1 0 :1:3
+]
+[s S47 . 1 `uc 1 SCK2 1 0 :1:0
+`uc 1 SDI2 1 0 :1:1
+`uc 1 . 1 0 :1:2
+`uc 1 nSS2 1 0 :1:3
+`uc 1 SDO2 1 0 :1:4
+`uc 1 . 1 0 :1:5
+`uc 1 CK2 1 0 :1:6
+`uc 1 DT2 1 0 :1:7
+]
+[s S56 . 1 `uc 1 SCL2 1 0 :1:0
+`uc 1 SDA2 1 0 :1:1
+`uc 1 . 1 0 :1:2
+`uc 1 SS2 1 0 :1:3
+]
+[s S61 . 1 `uc 1 AN20 1 0 :1:0
+`uc 1 AN21 1 0 :1:1
+`uc 1 AN22 1 0 :1:2
+`uc 1 AN23 1 0 :1:3
+`uc 1 AN24 1 0 :1:4
+`uc 1 AN25 1 0 :1:5
+`uc 1 AN26 1 0 :1:6
+`uc 1 AN27 1 0 :1:7
+]
+[u S70 . 1 `S21 1 . 1 0 `S30 1 . 1 0 `S38 1 . 1 0 `S44 1 . 1 0 `S47 1 . 1 0 `S56 1 . 1 0 `S61 1 . 1 0 ]
+[v _PORTDbits PORTDbits `VES70 1 e 1 @3971 ]
+"8058
+[v _TRISA TRISA `VEuc 1 e 1 @3986 ]
+"8280
+[v _TRISB TRISB `VEuc 1 e 1 @3987 ]
+[s S855 . 1 `uc 1 TRISC0 1 0 :1:0
+`uc 1 TRISC1 1 0 :1:1
+`uc 1 TRISC2 1 0 :1:2
+`uc 1 TRISC3 1 0 :1:3
+`uc 1 TRISC4 1 0 :1:4
+`uc 1 TRISC5 1 0 :1:5
+`uc 1 TRISC6 1 0 :1:6
+`uc 1 TRISC7 1 0 :1:7
+]
+"8534
+[s S864 . 1 `uc 1 RC0 1 0 :1:0
+`uc 1 RC1 1 0 :1:1
+`uc 1 RC2 1 0 :1:2
+`uc 1 RC3 1 0 :1:3
+`uc 1 RC4 1 0 :1:4
+`uc 1 RC5 1 0 :1:5
+`uc 1 RC6 1 0 :1:6
+`uc 1 RC7 1 0 :1:7
+]
+[u S873 . 1 `S855 1 . 1 0 `S864 1 . 1 0 ]
+[v _TRISCbits TRISCbits `VES873 1 e 1 @3988 ]
+[s S418 . 1 `uc 1 TRISD0 1 0 :1:0
+`uc 1 TRISD1 1 0 :1:1
+`uc 1 TRISD2 1 0 :1:2
+`uc 1 TRISD3 1 0 :1:3
+`uc 1 TRISD4 1 0 :1:4
+`uc 1 TRISD5 1 0 :1:5
+`uc 1 TRISD6 1 0 :1:6
+`uc 1 TRISD7 1 0 :1:7
+]
+"8756
+[u S436 . 1 `S418 1 . 1 0 `S21 1 . 1 0 ]
+[v _TRISDbits TRISDbits `VES436 1 e 1 @3989 ]
+[s S354 . 1 `uc 1 TUN 1 0 :6:0
+`uc 1 PLLEN 1 0 :1:6
+`uc 1 INTSRC 1 0 :1:7
+]
+"9082
+[s S358 . 1 `uc 1 TUN0 1 0 :1:0
+`uc 1 TUN1 1 0 :1:1
+`uc 1 TUN2 1 0 :1:2
+`uc 1 TUN3 1 0 :1:3
+`uc 1 TUN4 1 0 :1:4
+`uc 1 TUN5 1 0 :1:5
+]
+[u S365 . 1 `S354 1 . 1 0 `S358 1 . 1 0 ]
+[v _OSCTUNEbits OSCTUNEbits `VES365 1 e 1 @3995 ]
+[s S487 . 1 `uc 1 TMR1IE 1 0 :1:0
+`uc 1 TMR2IE 1 0 :1:1
+`uc 1 CCP1IE 1 0 :1:2
+`uc 1 SSP1IE 1 0 :1:3
+`uc 1 TX1IE 1 0 :1:4
+`uc 1 RC1IE 1 0 :1:5
+`uc 1 ADIE 1 0 :1:6
+]
+"9434
+[s S495 . 1 `uc 1 . 1 0 :3:0
+`uc 1 SSPIE 1 0 :1:3
+`uc 1 TXIE 1 0 :1:4
+`uc 1 RCIE 1 0 :1:5
+]
+[u S500 . 1 `S487 1 . 1 0 `S495 1 . 1 0 ]
+[v _PIE1bits PIE1bits `VES500 1 e 1 @3997 ]
+[s S128 . 1 `uc 1 TMR1IF 1 0 :1:0
+`uc 1 TMR2IF 1 0 :1:1
+`uc 1 CCP1IF 1 0 :1:2
+`uc 1 SSP1IF 1 0 :1:3
+`uc 1 TX1IF 1 0 :1:4
+`uc 1 RC1IF 1 0 :1:5
+`uc 1 ADIF 1 0 :1:6
+]
+"9511
+[s S136 . 1 `uc 1 . 1 0 :3:0
+`uc 1 SSPIF 1 0 :1:3
+`uc 1 TXIF 1 0 :1:4
+`uc 1 RCIF 1 0 :1:5
+]
+[u S141 . 1 `S128 1 . 1 0 `S136 1 . 1 0 ]
+[v _PIR1bits PIR1bits `VES141 1 e 1 @3998 ]
+[s S700 . 1 `uc 1 RX9D 1 0 :1:0
+`uc 1 OERR 1 0 :1:1
+`uc 1 FERR 1 0 :1:2
+`uc 1 ADDEN 1 0 :1:3
+`uc 1 CREN 1 0 :1:4
+`uc 1 SREN 1 0 :1:5
+`uc 1 RX9 1 0 :1:6
+`uc 1 SPEN 1 0 :1:7
+]
+"10396
+[s S709 . 1 `uc 1 . 1 0 :3:0
+`uc 1 ADEN 1 0 :1:3
+]
+[s S712 . 1 `uc 1 RX9D1 1 0 :1:0
+`uc 1 OERR1 1 0 :1:1
+`uc 1 FERR1 1 0 :1:2
+`uc 1 ADDEN1 1 0 :1:3
+`uc 1 CREN1 1 0 :1:4
+`uc 1 SREN1 1 0 :1:5
+`uc 1 RX91 1 0 :1:6
+`uc 1 SPEN1 1 0 :1:7
+]
+[s S721 . 1 `uc 1 RCD8 1 0 :1:0
+`uc 1 . 1 0 :5:1
+`uc 1 RC8_9 1 0 :1:6
+]
+[s S725 . 1 `uc 1 . 1 0 :6:0
+`uc 1 RC9 1 0 :1:6
+]
+[s S728 . 1 `uc 1 . 1 0 :5:0
+`uc 1 SRENA 1 0 :1:5
+]
+[u S731 . 1 `S700 1 . 1 0 `S709 1 . 1 0 `S712 1 . 1 0 `S721 1 . 1 0 `S725 1 . 1 0 `S728 1 . 1 0 ]
+[v _RCSTA1bits RCSTA1bits `VES731 1 e 1 @4011 ]
+[s S651 . 1 `uc 1 TX9D 1 0 :1:0
+`uc 1 TRMT 1 0 :1:1
+`uc 1 BRGH 1 0 :1:2
+`uc 1 SENDB 1 0 :1:3
+`uc 1 SYNC 1 0 :1:4
+`uc 1 TXEN 1 0 :1:5
+`uc 1 TX9 1 0 :1:6
+`uc 1 CSRC 1 0 :1:7
+]
+"10840
+[s S660 . 1 `uc 1 TX9D1 1 0 :1:0
+`uc 1 TRMT1 1 0 :1:1
+`uc 1 BRGH1 1 0 :1:2
+`uc 1 SENDB1 1 0 :1:3
+`uc 1 SYNC1 1 0 :1:4
+`uc 1 TXEN1 1 0 :1:5
+`uc 1 TX91 1 0 :1:6
+`uc 1 CSRC1 1 0 :1:7
+]
+[s S669 . 1 `uc 1 TXD8 1 0 :1:0
+`uc 1 . 1 0 :5:1
+`uc 1 TX8_9 1 0 :1:6
+]
+[u S673 . 1 `S651 1 . 1 0 `S660 1 . 1 0 `S669 1 . 1 0 ]
+[v _TXSTA1bits TXSTA1bits `VES673 1 e 1 @4012 ]
+"11183
+[v _TX1REG TX1REG `VEuc 1 e 1 @4013 ]
+"11261
+[v _RC1REG RC1REG `VEuc 1 e 1 @4014 ]
+"11330
+[v _SPBRG1 SPBRG1 `VEuc 1 e 1 @4015 ]
+"11408
+[v _SPBRGH1 SPBRGH1 `VEuc 1 e 1 @4016 ]
+[s S772 . 1 `uc 1 ABDEN 1 0 :1:0
+`uc 1 WUE 1 0 :1:1
+`uc 1 . 1 0 :1:2
+`uc 1 BRG16 1 0 :1:3
+`uc 1 CKTXP 1 0 :1:4
+`uc 1 DTRXP 1 0 :1:5
+`uc 1 RCIDL 1 0 :1:6
+`uc 1 ABDOVF 1 0 :1:7
+]
+"12436
+[s S781 . 1 `uc 1 . 1 0 :4:0
+`uc 1 SCKP 1 0 :1:4
+]
+[s S784 . 1 `uc 1 ABDEN1 1 0 :1:0
+`uc 1 WUE1 1 0 :1:1
+`uc 1 . 1 0 :1:2
+`uc 1 BRG161 1 0 :1:3
+`uc 1 SCKP1 1 0 :1:4
+`uc 1 DTRXP1 1 0 :1:5
+`uc 1 RCIDL1 1 0 :1:6
+`uc 1 ABDOVF1 1 0 :1:7
+]
+[s S793 . 1 `uc 1 . 1 0 :4:0
+`uc 1 TXCKP 1 0 :1:4
+`uc 1 RXDTP 1 0 :1:5
+`uc 1 RCMT 1 0 :1:6
+]
+[s S798 . 1 `uc 1 . 1 0 :4:0
+`uc 1 TXCKP1 1 0 :1:4
+`uc 1 RXDTP1 1 0 :1:5
+`uc 1 RCMT1 1 0 :1:6
+]
+[s S803 . 1 `uc 1 . 1 0 :5:0
+`uc 1 RXCKP 1 0 :1:5
+]
+[s S806 . 1 `uc 1 . 1 0 :1:0
+`uc 1 W4E 1 0 :1:1
+]
+[u S809 . 1 `S772 1 . 1 0 `S781 1 . 1 0 `S784 1 . 1 0 `S793 1 . 1 0 `S798 1 . 1 0 `S803 1 . 1 0 `S806 1 . 1 0 ]
+[v _BAUDCON1bits BAUDCON1bits `VES809 1 e 1 @4024 ]
+[s S459 . 1 `uc 1 T2CKPS 1 0 :2:0
+`uc 1 TMR2ON 1 0 :1:2
+`uc 1 T2OUTPS 1 0 :4:3
+]
+"13217
+[s S463 . 1 `uc 1 T2CKPS0 1 0 :1:0
+`uc 1 T2CKPS1 1 0 :1:1
+`uc 1 . 1 0 :1:2
+`uc 1 T2OUTPS0 1 0 :1:3
+`uc 1 T2OUTPS1 1 0 :1:4
+`uc 1 T2OUTPS2 1 0 :1:5
+`uc 1 T2OUTPS3 1 0 :1:6
+]
+[u S471 . 1 `S459 1 . 1 0 `S463 1 . 1 0 ]
+[v _T2CONbits T2CONbits `VES471 1 e 1 @4026 ]
+"13267
+[v _PR2 PR2 `VEuc 1 e 1 @4027 ]
+[s S380 . 1 `uc 1 SCS 1 0 :2:0
+`uc 1 HFIOFS 1 0 :1:2
+`uc 1 OSTS 1 0 :1:3
+`uc 1 IRCF 1 0 :3:4
+`uc 1 IDLEN 1 0 :1:7
+]
+"16033
+[s S386 . 1 `uc 1 SCS0 1 0 :1:0
+`uc 1 SCS1 1 0 :1:1
+`uc 1 IOFS 1 0 :1:2
+`uc 1 . 1 0 :1:3
+`uc 1 IRCF0 1 0 :1:4
+`uc 1 IRCF1 1 0 :1:5
+`uc 1 IRCF2 1 0 :1:6
+]
+[u S394 . 1 `S380 1 . 1 0 `S386 1 . 1 0 ]
+[v _OSCCONbits OSCCONbits `VES394 1 e 1 @4051 ]
+[s S305 . 1 `uc 1 RBIF 1 0 :1:0
+`uc 1 INT0IF 1 0 :1:1
+`uc 1 TMR0IF 1 0 :1:2
+`uc 1 RBIE 1 0 :1:3
+`uc 1 INT0IE 1 0 :1:4
+`uc 1 TMR0IE 1 0 :1:5
+`uc 1 PEIE_GIEL 1 0 :1:6
+`uc 1 GIE_GIEH 1 0 :1:7
+]
+"16922
+[s S314 . 1 `uc 1 . 1 0 :1:0
+`uc 1 INT0F 1 0 :1:1
+`uc 1 T0IF 1 0 :1:2
+`uc 1 . 1 0 :1:3
+`uc 1 INT0E 1 0 :1:4
+`uc 1 T0IE 1 0 :1:5
+`uc 1 PEIE 1 0 :1:6
+`uc 1 GIE 1 0 :1:7
+]
+[s S323 . 1 `uc 1 . 1 0 :6:0
+`uc 1 GIEL 1 0 :1:6
+`uc 1 GIEH 1 0 :1:7
+]
+[u S327 . 1 `S305 1 . 1 0 `S314 1 . 1 0 `S323 1 . 1 0 ]
+[v _INTCONbits INTCONbits `VES327 1 e 1 @4082 ]
+"18736
+[v _RC1IF RC1IF `VEb 1 e 0 @31989 ]
+"19488
+[v _TX1IF TX1IF `VEb 1 e 0 @31988 ]
+"95 Z:\SAMB_4\projects\xilofono\src\main.c
+[v _keypresses keypresses `VE[15]ui 1 e 30 0 ]
+"204
+[v _main main `(v 1 e 1 0 ]
+{
+[s S521 . 7 `uc 1 status 1 0 :4:0
+`uc 1 channel 1 0 :4:4
+`ui 1 data_size 2 1 `[4]uc 1 data 4 3 ]
+"207
+[v main@sample_message sample_message `S521 1 a 7 2 ]
+"223
+} 0
+"62 Z:\SAMB_4\projects\xilofono\src\midi.c
+[v _midi_note_on midi_note_on `(i 1 e 2 0 ]
+{
+[s S521 . 7 `uc 1 status 1 0 :4:0
+`uc 1 channel 1 0 :4:4
+`ui 1 data_size 2 1 `[4]uc 1 data 4 3 ]
+[v midi_note_on@pkt pkt `*.39S521 1 p 2 30 ]
+[v midi_note_on@channel channel `ui 1 p 2 32 ]
+[v midi_note_on@note note `E31 1 p 1 34 ]
+[v midi_note_on@velocity velocity `uc 1 p 1 35 ]
+"83
+} 0
+"40
+[v _midi_set_status midi_set_status `(i 1 e 2 0 ]
+{
+[s S521 . 7 `uc 1 status 1 0 :4:0
+`uc 1 channel 1 0 :4:4
+`ui 1 data_size 2 1 `[4]uc 1 data 4 3 ]
+[v midi_set_status@pkt pkt `*.39S521 1 p 2 25 ]
+[v midi_set_status@status status `E40 1 p 1 27 ]
+"49
+} 0
+"51
+[v _midi_set_channel midi_set_channel `(i 1 e 2 0 ]
+{
+[s S521 . 7 `uc 1 status 1 0 :4:0
+`uc 1 channel 1 0 :4:4
+`ui 1 data_size 2 1 `[4]uc 1 data 4 3 ]
+[v midi_set_channel@pkt pkt `*.39S521 1 p 2 25 ]
+[v midi_set_channel@channel channel `ui 1 p 2 27 ]
+"60
+} 0
+"8 C:\Program Files\Microchip\xc8\v1.44\sources\common\memset.c
+[v _memset memset `(*.39v 1 e 2 0 ]
+{
+"15
+[v memset@p p `*.39uc 1 a 2 31 ]
+"8
+[v memset@p1 p1 `*.39v 1 p 2 25 ]
+[v memset@c c `i 1 p 2 27 ]
+[v memset@n n `ui 1 p 2 29 ]
+"22
+} 0
+"140 Z:\SAMB_4\projects\xilofono\src\main.c
+[v _init_hw init_hw `T(v 1 e 1 0 ]
+{
+"200
+} 0
+"4 Z:\SAMB_4\projects\xilofono\src\rs232.c
+[v _eusart1_init eusart1_init `(v 1 e 1 0 ]
+{
+"22
+} 0
+"226 Z:\SAMB_4\projects\xilofono\src\main.c
+[v _eusart_write_midi eusart_write_midi `(i 1 e 2 0 ]
+{
+"229
+[v eusart_write_midi@data data `*.39uc 1 a 2 32 ]
+"228
+[v eusart_write_midi@length length `ui 1 a 2 30 ]
+[s S521 . 7 `uc 1 status 1 0 :4:0
+`uc 1 channel 1 0 :4:4
+`ui 1 data_size 2 1 `[4]uc 1 data 4 3 ]
+"226
+[v eusart_write_midi@pkt pkt `*.39CS521 1 p 2 26 ]
+"245
+} 0
+"29 Z:\SAMB_4\projects\xilofono\src\rs232.c
+[v _putch putch `(v 1 e 1 0 ]
+{
+[v putch@c c `uc 1 a 1 wreg ]
+[v putch@c c `uc 1 a 1 wreg ]
+[v putch@c c `uc 1 a 1 25 ]
+"33
+} 0
+"101 Z:\SAMB_4\projects\xilofono\src\main.c
+[v _isr isr `II(v 1 e 1 0 ]
+{
+"103
+[v isr@i i `uc 1 a 1 24 ]
+[v isr@data data `uc 1 a 1 23 ]
+"137
+} 0
diff --git a/src/dist/default/production/src.production.sym b/src/dist/default/production/src.production.sym
new file mode 100644
index 0000000..4a8ee88
--- /dev/null
+++ b/src/dist/default/production/src.production.sym
@@ -0,0 +1,450 @@
+__CFG_XINST$OFF 0 0 ABS 0
+main@sample_message 62 0 BANK0 1
+_PR2 FBB 0 ABS 0
+__S0 30000E 0 ABS 0
+__S1 69 0 ABS 0
+__S2 0 0 ABS 0
+__Hintentry 0 0 ABS 0
+__Lintentry 0 0 ABS 0
+midi_set_channel@pkt 1A 0 COMRAM 1
+__end_of_init_hw 308 0 CODE 0
+_isr 8 0 CODE 0
+__CFG_WDTEN$ON 0 0 ABS 0
+__end_of_eusart_write_midi 2A8 0 CODE 0
+_midi_base_scale 43 0 COMRAM 1
+isr@i 19 0 COMRAM 1
+_main 308 0 CODE 0
+___sp 0 0 STACK 2
+btemp 45 0 COMRAM 1
+start 1B8 0 CODE 0
+__size_of_eusart1_init 0 0 ABS 0
+eusart_write_midi@pkt 1B 0 COMRAM 1
+_RC1IF 7CF5 0 ABS 0
+_TX1IF 7CF4 0 ABS 0
+_TRISA F92 0 ABS 0
+_TRISB F93 0 ABS 0
+_PORTA F80 0 ABS 0
+_PORTB F81 0 ABS 0
+__Hirdata 0 0 CODE 0
+__Lirdata 0 0 CODE 0
+__HRAM 0 0 ABS 0
+__LRAM 1 0 ABS 0
+wtemp6 46 0 COMRAM 1
+__CFG_WDTPS$32768 0 0 ABS 0
+__Hconfig 30000E 0 CONFIG 0
+__Lconfig 300000 0 CONFIG 0
+__CFG_FOSC$INTIO7 0 0 ABS 0
+__Hbigram 0 0 ABS 0
+__Lbigram 0 0 ABS 0
+__Hrparam 0 0 COMRAM 1
+__Lrparam 0 0 COMRAM 1
+__Hram 0 0 ABS 0
+__Lram 0 0 ABS 0
+__Hcomram 0 0 ABS 0
+_putch 418 0 CODE 0
+__Lcomram 0 0 ABS 0
+__Hsfr 0 0 ABS 0
+__Lsfr 0 0 ABS 0
+__size_of_isr 0 0 ABS 0
+eusart_write_midi@data 21 0 COMRAM 1
+__Hbss 0 0 RAM 1
+__CFG_STVREN$ON 0 0 ABS 0
+__Lbss 0 0 RAM 1
+___param_bank 0 0 ABS 0
+__Hnvrram 0 0 COMRAM 1
+__Lnvrram 0 0 COMRAM 1
+int$flags 45 0 COMRAM 1
+__size_of_midi_note_on 0 0 ABS 0
+_SPBRG1 FAF 0 ABS 0
+__end_of_putch 424 0 CODE 0
+_PIE1bits F9D 0 ABS 0
+__Heeprom_data 0 0 EEDATA 0
+__Leeprom_data 0 0 EEDATA 0
+_PIR1bits F9E 0 ABS 0
+__Hintsave_regs 0 0 BIGRAM 1
+__Lintsave_regs 0 0 BIGRAM 1
+_ANSELA F38 0 ABS 0
+_ANSELB F39 0 ABS 0
+_RC1REG FAE 0 ABS 0
+_ANSELC F3A 0 ABS 0
+_TX1REG FAD 0 ABS 0
+_ANSELD F3B 0 ABS 0
+__Hbigbss 0 0 BIGRAM 1
+__Lbigbss 0 0 BIGRAM 1
+__Hintret 0 0 ABS 0
+__Lintret 0 0 ABS 0
+__Hramtop 600 0 RAM 0
+__Lramtop 600 0 RAM 0
+__Hstruct 0 0 COMRAM 1
+__Lstruct 0 0 COMRAM 1
+__Hbigdata 0 0 BIGRAM 1
+__Lbigdata 0 0 BIGRAM 1
+__Hmediumconst 0 0 MEDIUMCONST 0
+__Lmediumconst 0 0 MEDIUMCONST 0
+__Hfarbss 0 0 FARRAM 0
+__Lfarbss 0 0 FARRAM 0
+__Hintcode 1B8 0 CODE 0
+__Lintcode 8 0 CODE 0
+__Hfardata 0 0 FARRAM 0
+__Lfardata 0 0 FARRAM 0
+midi_note_on@velocity 24 0 COMRAM 1
+__pintcode 8 0 CODE 0
+__Habs1 0 0 ABS 0
+__Labs1 0 0 ABS 0
+__CFG_EBTR0$OFF 0 0 ABS 0
+__HnvFARRAM 0 0 FARRAM 0
+__LnvFARRAM 0 0 FARRAM 0
+__CFG_EBTR1$OFF 0 0 ABS 0
+__CFG_CCP2MX$PORTC1 0 0 ABS 0
+putch@c 1A 0 COMRAM 1
+__end_of_eusart1_init 418 0 CODE 0
+__CFG_EBTR2$OFF 0 0 ABS 0
+__CFG_CCP3MX$PORTB5 0 0 ABS 0
+__end_of_memset 3B2 0 CODE 0
+__Hdata 0 0 ABS 0
+__Ldata 0 0 ABS 0
+__CFG_EBTR3$OFF 0 0 ABS 0
+stackhi 5FF 0 ABS 0
+__HcstackBANK0 0 0 ABS 0
+__LcstackBANK0 0 0 ABS 0
+__pcstackBANK0 60 0 BANK0 1
+__Htemp 46 0 COMRAM 1
+__Ltemp 45 0 COMRAM 1
+stacklo 69 0 ABS 0
+__Hrbit 0 0 COMRAM 1
+__Lrbit 0 0 COMRAM 1
+__Hinit 1BC 0 CODE 0
+__Linit 1B8 0 CODE 0
+_isr$592 17 0 COMRAM 1
+__Hintcodelo 1B8 0 CODE 0
+__Lintcodelo 1B8 0 CODE 0
+_memset 386 0 CODE 0
+__Hrbss 0 0 COMRAM 1
+__end_of_main 354 0 CODE 0
+__Lrbss 0 0 COMRAM 1
+__Htext 0 0 ABS 0
+__Ltext 0 0 ABS 0
+__CFG_LVP$ON 0 0 ABS 0
+end_of_initialization 378 0 CODE 0
+_midi_set_status 3D8 0 CODE 0
+_SPBRGH1 FB0 0 ABS 0
+__size_of_init_hw 0 0 ABS 0
+__end_of_midi_set_channel 3D8 0 CODE 0
+midi_note_on@channel 21 0 COMRAM 1
+__size_of_putch 0 0 ABS 0
+_TRISCbits F94 0 ABS 0
+_PORTAbits F80 0 ABS 0
+_TRISDbits F95 0 ABS 0
+_PORTDbits F83 0 ABS 0
+_T2CONbits FBA 0 ABS 0
+_midi_set_channel 3B2 0 CODE 0
+__size_of_eusart_write_midi 0 0 ABS 0
+__Hibigdata 0 0 CODE 0
+__Libigdata 0 0 CODE 0
+__Hifardata 0 0 CODE 0
+__Lifardata 0 0 CODE 0
+__Hbank0 0 0 ABS 0
+__Lbank0 0 0 ABS 0
+__Hbank1 0 0 ABS 0
+__Lbank1 0 0 ABS 0
+__Hbank2 0 0 ABS 0
+__Lbank2 0 0 ABS 0
+__Hbank3 0 0 ABS 0
+__Lbank3 0 0 ABS 0
+__Hbank4 0 0 ABS 0
+__Lbank4 0 0 ABS 0
+__Hbank5 0 0 ABS 0
+__Lbank5 0 0 ABS 0
+__Hpowerup 1B8 0 CODE 0
+__Lpowerup 1B8 0 CODE 0
+__Htext0 0 0 ABS 0
+__Ltext0 0 0 ABS 0
+_eusart_write_midi 234 0 CODE 0
+__Htext1 0 0 ABS 0
+__Ltext1 0 0 ABS 0
+__ptext0 308 0 CODE 0
+__Htext2 0 0 ABS 0
+__Ltext2 0 0 ABS 0
+__ptext1 1BC 0 CODE 0
+__end_of_midi_note_on 234 0 CODE 0
+__Htext3 0 0 ABS 0
+__Ltext3 0 0 ABS 0
+__ptext2 3D8 0 CODE 0
+__Htext4 0 0 ABS 0
+__Ltext4 0 0 ABS 0
+__ptext3 3B2 0 CODE 0
+__Htext5 0 0 ABS 0
+__CFG_P2BMX$PORTD2 0 0 ABS 0
+__Ltext5 0 0 ABS 0
+__ptext4 386 0 CODE 0
+__Htext6 0 0 ABS 0
+__Ltext6 0 0 ABS 0
+__ptext5 2A8 0 CODE 0
+__Htext7 0 0 ABS 0
+__Ltext7 0 0 ABS 0
+__ptext6 3FC 0 CODE 0
+__HbssCOMRAM 0 0 ABS 0
+__LbssCOMRAM 0 0 ABS 0
+__Htext8 0 0 ABS 0
+__Ltext8 0 0 ABS 0
+__ptext7 234 0 CODE 0
+__pbssCOMRAM 25 0 COMRAM 1
+__ptext8 418 0 CODE 0
+__CFG_T3CMX$PORTC0 0 0 ABS 0
+__Hclrtext 0 0 ABS 0
+__Lclrtext 0 0 ABS 0
+__CFG_HFOFST$ON 0 0 ABS 0
+_OSCTUNEbits F9B 0 ABS 0
+__end_of__initialization 378 0 CODE 0
+__CFG_PRICLKEN$ON 0 0 ABS 0
+memset@c 1C 0 COMRAM 1
+___rparam_used 1 0 ABS 0
+__size_of_memset 0 0 ABS 0
+memset@n 1E 0 COMRAM 1
+memset@p 20 0 COMRAM 1
+isr@data 18 0 COMRAM 1
+__Hidata 0 0 CODE 0
+__Lidata 0 0 CODE 0
+__Hrdata 0 0 COMRAM 1
+__Lrdata 0 0 COMRAM 1
+__Hidloc 200008 0 IDLOC 0
+__Lidloc 200000 0 IDLOC 0
+__CFG_PWRTEN$OFF 0 0 ABS 0
+__Hstack 0 0 STACK 2
+__Lstack 0 0 STACK 2
+_midi_note_on 1BC 0 CODE 0
+midi_set_channel@channel 1C 0 COMRAM 1
+__Hparam 0 0 COMRAM 1
+__Lparam 0 0 COMRAM 1
+__Hspace_0 30000E 0 ABS 0
+__HcstackCOMRAM 0 0 ABS 0
+__Lspace_0 0 0 ABS 0
+__LcstackCOMRAM 0 0 ABS 0
+__end_of_isr 1B8 0 CODE 0
+__pcstackCOMRAM 1 0 COMRAM 1
+__Hspace_1 69 0 ABS 0
+__Lspace_1 0 0 ABS 0
+__Hsmallconst 0 0 SMALLCONST 0
+__Lsmallconst 0 0 SMALLCONST 0
+eusart_write_midi@length 1F 0 COMRAM 1
+__Hspace_2 0 0 ABS 0
+__Lspace_2 0 0 ABS 0
+__Hnvbit 0 0 COMRAM 1
+__Lnvbit 0 0 COMRAM 1
+__Hcinit 0 0 ABS 0
+__Lcinit 0 0 ABS 0
+__pcinit 354 0 CODE 0
+__CFG_EBTRB$OFF 0 0 ABS 0
+_init_hw 2A8 0 CODE 0
+__ramtop 600 0 RAM 0
+__mediumconst 0 0 MEDIUMCONST 0
+__size_of_main 0 0 ABS 0
+__Hconst 0 0 CONST 0
+__Lconst 0 0 CONST 0
+__CFG_PLLCFG$ON 0 0 ABS 0
+__CFG_WRT0$OFF 0 0 ABS 0
+__CFG_WRT1$OFF 0 0 ABS 0
+midi_note_on@pkt 1F 0 COMRAM 1
+__CFG_MCLRE$EXTMCLR 0 0 ABS 0
+__CFG_WRT2$OFF 0 0 ABS 0
+__CFG_WRT3$OFF 0 0 ABS 0
+__CFG_FCMEN$OFF 0 0 ABS 0
+__size_of_midi_set_status 0 0 ABS 0
+midi_note_on@note 23 0 COMRAM 1
+midi_set_status@pkt 1A 0 COMRAM 1
+_RCSTA1bits FAB 0 ABS 0
+_TXSTA1bits FAC 0 ABS 0
+___inthi_sp 0 0 STACK 2
+__size_of_midi_set_channel 0 0 ABS 0
+___intlo_sp 0 0 STACK 2
+_OSCCONbits FD3 0 ABS 0
+_INTCONbits FF2 0 ABS 0
+__HidataCOMRAM 0 0 ABS 0
+__LidataCOMRAM 0 0 ABS 0
+_keypresses 25 0 COMRAM 1
+__pidataCOMRAM 424 0 CODE 0
+__CFG_CP0$OFF 0 0 ABS 0
+__smallconst 0 0 SMALLCONST 0
+__CFG_CP1$OFF 0 0 ABS 0
+memset@p1 1A 0 COMRAM 1
+__Hreset_vec 4 0 CODE 0
+__Lreset_vec 0 0 CODE 0
+__CFG_CP2$OFF 0 0 ABS 0
+__CFG_CP3$OFF 0 0 ABS 0
+__CFG_BORV$190 0 0 ABS 0
+__accesstop 60 0 ABS 0
+__end_of_midi_set_status 3FC 0 CODE 0
+__Hintcode_body 0 0 ABS 0
+__Lintcode_body 0 0 ABS 0
+__CFG_PBADEN$ON 0 0 ABS 0
+intlevel0 0 0 CODE 0
+intlevel1 0 0 CODE 0
+__CFG_WRTB$OFF 0 0 ABS 0
+midi_set_status@status 1C 0 COMRAM 1
+intlevel2 0 0 CODE 0
+intlevel3 0 0 CODE 0
+__CFG_WRTC$OFF 0 0 ABS 0
+_BAUDCON1bits FB8 0 ABS 0
+__CFG_WRTD$OFF 0 0 ABS 0
+__HdataCOMRAM 0 0 ABS 0
+__LdataCOMRAM 0 0 ABS 0
+__pdataCOMRAM 43 0 COMRAM 1
+__CFG_CPB$OFF 0 0 ABS 0
+__CFG_CPD$OFF 0 0 ABS 0
+start_initialization 354 0 CODE 0
+__CFG_BOREN$SBORDIS 0 0 ABS 0
+__CFG_IESO$OFF 0 0 ABS 0
+_eusart1_init 3FC 0 CODE 0
+__initialization 354 0 CODE 0
+__activetblptr 2 0 ABS 0
+%segments
+reset_vec 0 3 CODE 0 0
+intcode 8 425 CODE 8 0
+config 300000 30000D CONFIG 300000 0
+idloc 200000 200007 IDLOC 200000 0
+cstackCOMRAM 1 45 COMRAM 1 1
+cstackBANK0 60 68 BANK0 60 1
+%locals
+dist/default/production\src.production.obj
+C:\Program Files\Microchip\xc8\v1.44\include\pic18f45k22.h
+C:\Users\_prossn\AppData\Local\Temp\s5hg.
+1211 354 0 CODE 0
+1213 354 0 CODE 0
+1216 354 0 CODE 0
+1238 354 0 CODE 0
+1239 356 0 CODE 0
+1240 358 0 CODE 0
+1241 35A 0 CODE 0
+1242 35C 0 CODE 0
+1243 35E 0 CODE 0
+1244 360 0 CODE 0
+1245 362 0 CODE 0
+1246 366 0 CODE 0
+1247 368 0 CODE 0
+1251 36C 0 CODE 0
+1252 370 0 CODE 0
+1253 372 0 CODE 0
+1254 372 0 CODE 0
+1255 374 0 CODE 0
+1256 376 0 CODE 0
+1262 378 0 CODE 0
+1264 378 0 CODE 0
+1265 37A 0 CODE 0
+1267 37C 0 CODE 0
+1268 37E 0 CODE 0
+1269 380 0 CODE 0
+1270 382 0 CODE 0
+main.c
+204 308 0 CODE 0
+210 308 0 CODE 0
+213 30C 0 CODE 0
+216 328 0 CODE 0
+217 344 0 CODE 0
+220 346 0 CODE 0
+221 346 0 CODE 0
+220 352 0 CODE 0
+midi.c
+62 1BC 0 CODE 0
+64 1BC 0 CODE 0
+68 1C4 0 CODE 0
+72 1DA 0 CODE 0
+73 1EA 0 CODE 0
+75 1FE 0 CODE 0
+76 20E 0 CODE 0
+79 21E 0 CODE 0
+midi.c
+40 3D8 0 CODE 0
+42 3D8 0 CODE 0
+46 3E0 0 CODE 0
+midi.c
+51 3B2 0 CODE 0
+53 3B2 0 CODE 0
+57 3BA 0 CODE 0
+C:\Program Files\Microchip\xc8\v1.44\sources\common\memset.c
+8 386 0 CODE 0
+18 386 0 CODE 0
+19 38E 0 CODE 0
+20 390 0 CODE 0
+19 3A0 0 CODE 0
+main.c
+140 2A8 0 CODE 0
+142 2A8 0 CODE 0
+146 2AA 0 CODE 0
+148 2AC 0 CODE 0
+150 2B8 0 CODE 0
+152 2BE 0 CODE 0
+156 2C2 0 CODE 0
+157 2C8 0 CODE 0
+158 2CC 0 CODE 0
+159 2D0 0 CODE 0
+162 2D4 0 CODE 0
+163 2D6 0 CODE 0
+165 2D8 0 CODE 0
+166 2DA 0 CODE 0
+167 2DC 0 CODE 0
+168 2DE 0 CODE 0
+171 2E0 0 CODE 0
+173 2E2 0 CODE 0
+175 2E4 0 CODE 0
+177 2E6 0 CODE 0
+181 2E8 0 CODE 0
+183 2EC 0 CODE 0
+185 2F4 0 CODE 0
+187 2F8 0 CODE 0
+190 2FA 0 CODE 0
+191 2FC 0 CODE 0
+194 2FE 0 CODE 0
+197 300 0 CODE 0
+199 304 0 CODE 0
+200 306 0 CODE 0
+rs232.c
+4 3FC 0 CODE 0
+7 3FC 0 CODE 0
+8 3FE 0 CODE 0
+11 400 0 CODE 0
+12 402 0 CODE 0
+13 406 0 CODE 0
+14 40A 0 CODE 0
+15 40C 0 CODE 0
+18 40E 0 CODE 0
+19 410 0 CODE 0
+20 412 0 CODE 0
+21 414 0 CODE 0
+22 416 0 CODE 0
+main.c
+226 234 0 CODE 0
+231 234 0 CODE 0
+235 23C 0 CODE 0
+236 250 0 CODE 0
+238 25C 0 CODE 0
+240 282 0 CODE 0
+241 284 0 CODE 0
+242 296 0 CODE 0
+240 296 0 CODE 0
+rs232.c
+29 418 0 CODE 0
+31 41A 0 CODE 0
+32 41E 0 CODE 0
+33 422 0 CODE 0
+rs232.c
+33 8 0 CODE 0
+main.c
+101 8 0 CODE 0
+105 52 0 CODE 0
+107 54 0 CODE 0
+109 58 0 CODE 0
+110 5C 0 CODE 0
+111 60 0 CODE 0
+112 60 0 CODE 0
+113 B6 0 CODE 0
+115 BE 0 CODE 0
+116 C2 0 CODE 0
+117 C6 0 CODE 0
+118 C6 0 CODE 0
+119 11C 0 CODE 0
+129 13C 0 CODE 0
+130 146 0 CODE 0
+133 168 0 CODE 0
+134 16A 0 CODE 0
+136 16A 0 CODE 0
+137 16C 0 CODE 0