From 35be593afcc212d58255434626f6c2fcb30cc5f0 Mon Sep 17 00:00:00 2001 From: Renan Augusto Starke Date: Fri, 1 Jul 2022 15:38:56 -0300 Subject: [PATCH] Added compiler folder --- compiler/README.md | 11 + peripherals/lcd_hd44780/risc/sim.s | 157 --- peripherals/lcd_hd44780/risc/vsim.wlf | Bin 212992 -> 0 bytes software/Makefile | 13 +- software/lcd_hd44780/quartus_lcd_hd44780.hex | 1222 +++++++++--------- software/quartus_blink.hex | 497 +++---- 6 files changed, 880 insertions(+), 1020 deletions(-) create mode 100644 compiler/README.md delete mode 100644 peripherals/lcd_hd44780/risc/sim.s delete mode 100644 peripherals/lcd_hd44780/risc/vsim.wlf diff --git a/compiler/README.md b/compiler/README.md new file mode 100644 index 00000000..cb8ba4e9 --- /dev/null +++ b/compiler/README.md @@ -0,0 +1,11 @@ +# Instalação do compilador + + 1. Baixar [GNU RISC-C GCC](https://github.com/xpack-dev-tools/riscv-none-embed-gcc-xpack/releases) de acordo com SO do seu PC. Win32-x64 para Windows ou Linux-x64 para Linux. + 2. Extrair o pacote. + 3. Renomear o diretório "xpack-riscv-..." para gcc criando a seguinte árvore de aquivos: + + ```C + ./compiler/gcc/bin/+ + |- riscv-none-embed-gcc + |- (...) + ``` diff --git a/peripherals/lcd_hd44780/risc/sim.s b/peripherals/lcd_hd44780/risc/sim.s deleted file mode 100644 index 8a8c8537..00000000 --- a/peripherals/lcd_hd44780/risc/sim.s +++ /dev/null @@ -1,157 +0,0 @@ -0: 30047073 : csrrci x8, x0, 768 - -4: 00000297 : auipc x5, 0x0 -8: 57C28293 : addi x5, x5, 1404 -C: 30729073 : csrrw x5, x7, 775 - -10: 00000297 : auipc x5, 0x0 -14: 4C828293 : addi x5, x5, 1224 -18: 7EC29073 : csrrw x5, x12, 2028 - -1C: 7EC0E073 : csrrsi x1, x12, 2028 - -20: 00000297 : auipc x5, 0x0 -24: 3F028293 : addi x5, x5, 1008 -28: 30529073 : csrrw x5, x5, 773 - -2C: 02001137 : lui x2, 0x2001000 -30: 80010113 : addi x2, x2, -2048 -34: 020001B7 : lui x3, 0x2000000 -38: 00018193 : addi x3, x3, 0 -3C: FF010113 : addi x2, x2, -16 -40: 00012023 : sw x0, 0(x2) -44: 00012223 : sw x0, 4(x2) -48: 00012423 : sw x0, 8(x2) -4C: 00012623 : sw x0, 12(x2) -50: 0FC000EF : jal x1, 252 - -14C: FF010113 : addi x2, x2, -16 -150: 040007B7 : lui x15, 0x4000000 -154: 2807A423 : sw x0, 648(x15) -158: 2807A623 : sw x0, 652(x15) -15C: 2807A823 : sw x0, 656(x15) -160: 2807AA23 : sw x0, 660(x15) -164: 2807AC23 : sw x0, 664(x15) -168: 2807A223 : sw x0, 644(x15) -16C: 00100713 : addi x14, x0, 1 -170: 28E7A423 : sw x14, 648(x15) -174: 2807A423 : sw x0, 648(x15) -178: 28E7A823 : sw x14, 656(x15) -17C: 2807A823 : sw x0, 656(x15) -180: 000017B7 : lui x15, 0x1000 -184: A3078793 : addi x15, x15, -1488 -188: 0007A603 : lw x12, 0(x15) -18C: 0047A683 : lw x13, 4(x15) -190: 6F57206F : jal x0, 470772 - -190: 0087A703 : lw x14, 8(x15) -194: 00C12023 : sw x12, 0(x2) -198: 00D12223 : sw x13, 4(x2) -19C: 00E12423 : sw x14, 8(x2) -1A0: 00C7C783 : lbu x15, 12(x15) -1A4: 00F10623 : sb x15, 12(x2) -1A8: 00010713 : addi x14, x2, 0 -1AC: 00C10593 : addi x11, x2, 12 -1B0: 040007B7 : lui x15, 0x4000000 -1B4: 28078793 : addi x15, x15, 640 -1B8: 00100693 : addi x13, x0, 1 -1BC: 00074603 : lbu x12, 0(x14) -1C0: 00C7A023 : sw x12, 0(x15) -1C4: 0007A223 : sw x0, 4(x15) -1C8: 00D7A623 : sw x13, 12(x15) -1CC: 00D7A223 : sw x13, 4(x15) -1D0: 00170713 : addi x14, x14, 1 -1D4: FEB714E3 : bne x14, x11, -24 - -1BC: 00074603 : lbu x12, 0(x14) -1C0: 00C7A023 : sw x12, 0(x15) -1C4: 0007A223 : sw x0, 4(x15) -1C8: 00D7A623 : sw x13, 12(x15) -1CC: 00D7A223 : sw x13, 4(x15) -1D0: 00170713 : addi x14, x14, 1 -1D4: FEB714E3 : bne x14, x11, -24 - -1BC: 00074603 : lbu x12, 0(x14) -1C0: 00C7A023 : sw x12, 0(x15) -1C4: 0007A223 : sw x0, 4(x15) -1C8: 00D7A623 : sw x13, 12(x15) -1CC: 00D7A223 : sw x13, 4(x15) -1D0: 00170713 : addi x14, x14, 1 -1D4: FEB714E3 : bne x14, x11, -24 - -1BC: 00074603 : lbu x12, 0(x14) -1C0: 00C7A023 : sw x12, 0(x15) -1C4: 0007A223 : sw x0, 4(x15) -1C8: 00D7A623 : sw x13, 12(x15) -1CC: 00D7A223 : sw x13, 4(x15) -1D0: 00170713 : addi x14, x14, 1 -1D4: FEB714E3 : bne x14, x11, -24 - -1BC: 00074603 : lbu x12, 0(x14) -1C0: 00C7A023 : sw x12, 0(x15) -1C4: 0007A223 : sw x0, 4(x15) -1C8: 00D7A623 : sw x13, 12(x15) -1CC: 00D7A223 : sw x13, 4(x15) -1D0: 00170713 : addi x14, x14, 1 -1D4: FEB714E3 : bne x14, x11, -24 - -1BC: 00074603 : lbu x12, 0(x14) -1C0: 00C7A023 : sw x12, 0(x15) -1C4: 0007A223 : sw x0, 4(x15) -1C8: 00D7A623 : sw x13, 12(x15) -1CC: 00D7A223 : sw x13, 4(x15) -1D0: 00170713 : addi x14, x14, 1 -1D4: FEB714E3 : bne x14, x11, -24 - -1BC: 00074603 : lbu x12, 0(x14) -1C0: 00C7A023 : sw x12, 0(x15) -1C4: 0007A223 : sw x0, 4(x15) -1C8: 00D7A623 : sw x13, 12(x15) -1CC: 00D7A223 : sw x13, 4(x15) -1D0: 00170713 : addi x14, x14, 1 -1D4: FEB714E3 : bne x14, x11, -24 - -1BC: 00074603 : lbu x12, 0(x14) -1C0: 00C7A023 : sw x12, 0(x15) -1C4: 0007A223 : sw x0, 4(x15) -1C8: 00D7A623 : sw x13, 12(x15) -1CC: 00D7A223 : sw x13, 4(x15) -1D0: 00170713 : addi x14, x14, 1 -1D4: FEB714E3 : bne x14, x11, -24 - -1BC: 00074603 : lbu x12, 0(x14) -1C0: 00C7A023 : sw x12, 0(x15) -1C4: 0007A223 : sw x0, 4(x15) -1C8: 00D7A623 : sw x13, 12(x15) -1CC: 00D7A223 : sw x13, 4(x15) -1D0: 00170713 : addi x14, x14, 1 -1D4: FEB714E3 : bne x14, x11, -24 - -1BC: 00074603 : lbu x12, 0(x14) -1C0: 00C7A023 : sw x12, 0(x15) -1C4: 0007A223 : sw x0, 4(x15) -1C8: 00D7A623 : sw x13, 12(x15) -1CC: 00D7A223 : sw x13, 4(x15) -1D0: 00170713 : addi x14, x14, 1 -1D4: FEB714E3 : bne x14, x11, -24 - -1BC: 00074603 : lbu x12, 0(x14) -1C0: 00C7A023 : sw x12, 0(x15) -1C4: 0007A223 : sw x0, 4(x15) -1C8: 00D7A623 : sw x13, 12(x15) -1CC: 00D7A223 : sw x13, 4(x15) -1D0: 00170713 : addi x14, x14, 1 -1D4: FEB714E3 : bne x14, x11, -24 - -1BC: 00074603 : lbu x12, 0(x14) -1C0: 00C7A023 : sw x12, 0(x15) -1C4: 0007A223 : sw x0, 4(x15) -1C8: 00D7A623 : sw x13, 12(x15) -1CC: 00D7A223 : sw x13, 4(x15) -1D0: 00170713 : addi x14, x14, 1 -1D4: FEB714E3 : bne x14, x11, -24 - -1D8: 040007B7 : lui x15, 0x4000000 -1DC: 2807A623 : sw x0, 652(x15) -1E0: 0000006F : jal x0, 0 - diff --git a/peripherals/lcd_hd44780/risc/vsim.wlf b/peripherals/lcd_hd44780/risc/vsim.wlf deleted file mode 100644 index 4721811ce8086fa4fadcb5bc80a442639915bad4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 212992 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�ha@09 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 diff --git a/software/Makefile b/software/Makefile index e972b586..e7e2108c 100644 --- a/software/Makefile +++ b/software/Makefile @@ -1,8 +1,4 @@ -ifndef RISCV_TOOLS_PREFIX -#RISCV_TOOLS_PREFIX=riscv-none-embed- -# Para usar no LSC -RISCV_TOOLS_PREFIX = ~/.local/xPacks/@xpack-dev-tools/riscv-none-embed-gcc/10.1.0-1.1.1/.content/bin/riscv-none-embed- -endif +RISCV_TOOLS_PREFIX = ../compiler/gcc/bin/riscv-none-embed- QUARTUS_DIR=~/Data/Apps/intelFPGA/20.1/quartus/bin/ CXX = $(RISCV_TOOLS_PREFIX)g++ -march=rv32im @@ -15,13 +11,6 @@ LDFLAGS = -Wl LDLIBS = MAIN = blink -#test: testbench.vvp $(MAIN)32.hex -# # vvp -l testbench.log -N testbench.vvp - -#testbench.vvp: testbench.v ../../picorv32.v $(MAIN)_dbg.v -# #iverilog -o testbench.vvp testbench.v ../../picorv32.v -# #chmod -x testbench.vvp - quartus_$(MAIN).hex: $(MAIN)32.hex python3 hex8tointel.py $(MAIN).tmp > quartus_$(MAIN).hex rm $(MAIN)32.hex diff --git a/software/lcd_hd44780/quartus_lcd_hd44780.hex b/software/lcd_hd44780/quartus_lcd_hd44780.hex index b89a5cf6..4181451b 100644 --- a/software/lcd_hd44780/quartus_lcd_hd44780.hex +++ b/software/lcd_hd44780/quartus_lcd_hd44780.hex @@ -1,13 +1,13 @@ :0400000030047073e5 :040001000000029762 -:0400020057c28293cc +:040002005c02829387 :040003003072907354 :04000400000002975f -:040005004c82829314 +:0400050050c28293d0 :040006007ec29073b3 :040007007ec0e07364 :04000800000002975b -:040009003f0282939d +:040009004342829359 :04000a00305290736d :04000b0002001137a7 :04000c00800101135b @@ -68,306 +68,306 @@ :0400430045018613da :0400440040a6063399 :04004500000005931f -:040046001b4000ef6c +:040046001f8000ef28 :040047000000151789 -:040048008605051311 +:04004800898505138e :040049000005086343 :04004a000000151786 -:04004b008005051314 -:04004c0004d000efed -:04004d0050c000efb0 +:04004b008385051391 +:04004c00085000ef69 +:04004d00550000ef6b :04004e000001250385 :04004f0000410593d4 :040050000000061393 :04005100008000ef3c -:040052004c40006faf -:04005300ff01011395 -:04005400040007b7e6 -:040055002807a423b1 -:040056002807a623ae -:040057002807a823ab -:040058002807aa23a8 -:040059002807ac23a5 -:04005a002807a223ae -:04005b000010071377 -:04005c0028e7a423ca -:04005d002807a423a9 -:04005e0028e7a823c4 -:04005f002807a823a3 -:04006000000017b7ce -:04006100a3078793d7 -:040062000007a603ea -:040063000047a68329 -:040064000087a70367 -:0400650000c1202393 -:0400660000d1222380 -:0400670000e124236d -:0400680000c7c78383 -:0400690000f1062379 -:04006a000001071377 -:04006b0000c1059338 -:04006c00040007b7ce -:04006d002807879346 -:04006e0000100693e5 -:04006f00000746033d -:0400700000c7a02302 -:040071000007a223bf -:0400720000d7a623ea -:0400730000d7a223ed -:040074000017071357 -:04007500feb714e3db -:04007600040007b7c4 -:040077002807a6238d -:040078000000006f15 -:040079000040006fd4 -:04007a00000017b7b4 -:04007b00a4078793bc -:04007c000550071311 -:04007d00100006b7b2 -:04007e00001787934d -:04007f0000e6a023d4 -:040080000007c703ab -:04008100fe071ae379 -:0400820000100073f7 -:040083000000051361 -:040084000000806791 -:040085000006051359 -:0400860000c58733f7 -:0400870000e58c63a1 -:04008800100006b7a7 -:040089000015859346 -:04008a00fff5c78334 -:04008b0000f6a023b8 -:04008c00feb71ae3be -:04008d000000806788 -:04008e000000051356 -:04008f000000806786 -:04009000ff01011358 -:040091000011262311 -:040092003bc000ef80 -:0400930000200793af -:0400940000f5202330 -:04009500fff0051360 -:0400960000c1208302 -:04009700010101134f -:04009800000080677d -:0400990000050793c4 -:04009a004541a70332 -:04009b0000071663e1 -:04009c004501871380 -:04009d0044e1aa236d -:04009e004541a50330 -:04009f0000a787b37c -:0400a00044f1aa235a -:0400a1000000806774 -:0400a20000100073d7 -:0400a300ff01011345 -:0400a40000112623fe -:0400a50000018613bd -:0400a60042c1879339 -:0400a70040c7863395 -:0400a800000015b788 -:0400a900a685859310 -:0400aa0000018513b9 -:0400ab00418000efa1 -:0400ac0000c12083ec -:0400ad000101011339 -:0400ae000000806767 -:0400af00fff00793c4 -:0400b000fff5051340 -:0400b100fef51ee357 +:040052005080006f6b +:04005300fd01011397 +:04005400021126234c +:0400550002812423dd +:0400560002912223ce +:04005700032120233e +:0400580001312e2321 +:040059000400043764 +:04005a003004242327 +:04005b003004262324 +:04005c003004282321 +:04005d0030042a231e +:04005e0030042c231b +:04005f003004222324 +:04006000000014b7d1 +:040061003884851347 +:04006200178000ef14 +:04006300001009136d +:0400640031242423fc +:040065003884851343 +:04006600168000ef11 +:04006700300424231a +:040068003884851340 +:0400690015c000efcf +:04006a0031242823f2 +:04006b00388485133d +:04006c00150000ef8c +:04006d003004282310 +:04006e00000017b7c0 +:04006f00a687879346 +:040070000007a603dc +:040071000047a6831b +:040072000087a70359 +:0400730000c1202385 +:0400740000d1222372 +:0400750000e124235f +:0400760000c7c78375 +:0400770000f106236b +:0400780000010493ec +:0400790000c1099326 +:04007a000400043743 +:04007b003004041336 +:04007c000004c78332 +:04007d0000f4202348 +:04007e000004222335 +:04007f00012426230f +:040080000320051341 +:040081000fc000efbd +:040082000124222310 +:0400830009600513f8 +:040084000f0000ef7a +:04008500001484934c +:04008600fd349ce3c6 +:04008700040007b7b3 +:040088003007a62374 +:040089000000006f04 +:04008a000040006fc3 +:04008b00000017b7a3 +:04008c00a787879328 +:04008d000550071300 +:04008e00100006b7a1 +:04008f00001787933c +:0400900000e6a023c3 +:040091000007c7039a +:04009200fe071ae368 +:0400930000100073e6 +:040094000000051350 +:040095000000806780 +:040096000006051348 +:0400970000c58733e6 +:0400980000e58c6390 +:04009900100006b796 +:04009a000015859335 +:04009b00fff5c78323 +:04009c0000f6a023a7 +:04009d00feb71ae3ad +:04009e000000806777 +:04009f000000051345 +:0400a0000000806775 +:0400a100ff01011347 +:0400a2000011262300 +:0400a3003bc000ef6f +:0400a400002007939e +:0400a50000f520231f +:0400a600fff005134f +:0400a70000c12083f1 +:0400a800010101133e +:0400a900000080676c +:0400aa0000050793b3 +:0400ab004541a70321 +:0400ac0000071663d0 +:0400ad00450187136f +:0400ae0044e1aa235c +:0400af004541a5031f +:0400b00000a787b36b +:0400b10044f1aa2349 :0400b2000000806763 -:0400b30000f0031343 -:0400b4000005071329 -:0400b50002c37e63a1 -:0400b60000f7779345 -:0400b7000a07906341 -:0400b8000805926342 -:0400b900ff06769335 -:0400ba0000f67613c3 -:0400bb0000e686b322 -:0400bc0000b7202346 -:0400bd0000b7222343 -:0400be0000b7242340 -:0400bf0000b726233d -:0400c000010707131a -:0400c100fed766e31d -:0400c20000061463bd +:0400b30000100073c6 +:0400b400ff01011334 +:0400b50000112623ed +:0400b60000018613ac +:0400b70042c1879328 +:0400b80040c7863384 +:0400b900000015b777 +:0400ba00aa0585937b +:0400bb0000018513a8 +:0400bc00418000ef90 +:0400bd0000c12083db +:0400be000101011328 +:0400bf000000806756 +:0400c000fff00793b3 +:0400c100fff505132f +:0400c200fef51ee346 :0400c3000000806752 -:0400c40040c306b37c -:0400c50000269693e8 -:0400c600000002979d -:0400c700005686b3a6 -:0400c80000c6806787 -:0400c90000b7072352 -:0400ca0000b706a3d2 -:0400cb0000b7062351 -:0400cc0000b705a3d1 -:0400cd0000b7052350 -:0400ce0000b704a3d0 -:0400cf0000b704234f -:0400d00000b703a3cf -:0400d10000b703234e -:0400d20000b702a3ce -:0400d30000b702234d -:0400d40000b701a3cd -:0400d50000b701234c -:0400d60000b700a3cc -:0400d70000b700234b -:0400d800000080673d -:0400d9000ff5f59397 -:0400da000085969374 -:0400db0000d5e5b3b4 -:0400dc0001059693f1 -:0400dd0000d5e5b3b2 -:0400de00f6dff06fea -:0400df0000279693cd -:0400e0000000029783 -:0400e100005686b38c -:0400e2000000829305 -:0400e300fa0680e7b2 -:0400e4000002809303 -:0400e500ff078793f7 -:0400e60040f70733a5 -:0400e70000f60633e6 -:0400e800f6c378e300 -:0400e900f3dff06fe2 -:0400ea00ff010113fe -:0400eb000081242349 -:0400ec004501841333 -:0400ed000004478341 -:0400ee0000112623b4 -:0400ef00020792630f -:0400f0000000079372 -:0400f10000078a6317 -:0400f20000000517ee -:0400f3006645051346 -:0400f4000000009771 -:0400f500000000e720 -:0400f600001007935c -:0400f70000f40023ee -:0400f80000c12083a0 -:0400f900008124035b -:0400fa0001010113ec -:0400fb00000080671a -:0400fc000000079366 -:0400fd0000078c6309 -:0400fe004381859322 -:0400ff0000000517e1 -:04010000630505137b -:0401010000000317e0 -:040102000000006792 -:040103000000806711 -:04010400fb010113e7 -:0401050000112023a2 -:04010600004122236f -:04010700005124235c -:040108000061262349 -:040109000071282336 -:04010a0000a12a2303 -:04010b0000b12c23f0 -:04010c0000c12e23dd -:04010d0002d12023d8 -:04010e0002e12223c5 -:04010f0002f12423b2 -:04011000030126239e -:04011100031128238b -:0401120003c12a23d8 -:0401130003d12c23c5 -:0401140003e12e23b2 -:0401150005f12023ad -:04011600341022f38c -:04011700045120234c -:04011800300022f39e -:040119000451222348 -:04011a007c4022f310 -:04011b000451242344 -:04011c0034202573f3 -:04011d000001059345 -:04011e000401228333 -:04011f003412907393 -:0401200004412283f1 -:0401210030029073a5 -:0401220004812283af -:040123007c42907317 -:040124000001208333 -:040125000041220370 -:0401260000812283af -:0401270000c12303ed -:04012800010123832b -:040129000141250368 -:04012a0001812583a7 -:04012b0001c12603e5 -:04012c000201268323 -:04012d000241270361 -:04012e0002812783a0 -:04012f0002c12803de -:04013000030128831c -:0401310003412e0355 -:0401320003812e8394 -:0401330003c12f03d2 -:0401340005010113ad -:040135003020007303 -:04013600fb010113b5 -:040137000011202370 -:04013800004122233d -:04013900005124232a -:04013a000061262317 -:04013b000071282304 -:04013c0000a12a23d1 -:04013d0000b12c23be -:04013e0000c12e23ab -:04013f0002d12023a6 -:0401400002e1222393 -:0401410002f1242380 -:04014200030126236c -:040143000311282359 -:0401440003c12a23a6 -:0401450003d12c2393 -:0401460003e12e2380 -:0401470005f120237b -:0401480034202673c6 -:040149003070277378 -:04014a000026161362 -:04014b0000c70733af -:04014c00000727037e -:04014d00000700e7c0 -:04014e000001208309 -:04014f000041220346 -:040150000081228385 -:0401510000c12303c3 -:040152000101238301 -:04015300014125033e -:04015400018125837d -:0401550001c12603bb -:0401560002012683f9 -:040157000241270337 -:040158000281278376 -:0401590002c12803b4 -:04015a0003012883f2 -:04015b0003412e032b -:04015c0003812e836a -:04015d0003c12f03a8 -:04015e000501011383 -:04015f0030200073d9 -:04016000b81ff06f65 -:04016100000000009a -:040162000000000099 -:040163000000000098 -:040164000000000097 -:040165000000000096 -:040166000000000095 -:040167000000000094 -:040168000000000093 -:040169000000000092 -:04016a000000000091 -:04016b000000000090 -:04016c00000000008f -:04016d00000000008e -:04016e00000000008d -:04016f00000000008c -:04017000000000008b -:04017100000000008a +:0400c40000f0031332 +:0400c5000005071318 +:0400c60002c37e6390 +:0400c70000f7779334 +:0400c8000a07906330 +:0400c9000805926331 +:0400ca00ff06769324 +:0400cb0000f67613b2 +:0400cc0000e686b311 +:0400cd0000b7202335 +:0400ce0000b7222332 +:0400cf0000b724232f +:0400d00000b726232c +:0400d1000107071309 +:0400d200fed766e30c +:0400d30000061463ac +:0400d4000000806741 +:0400d50040c306b36b +:0400d60000269693d7 +:0400d700000002978c +:0400d800005686b395 +:0400d90000c6806776 +:0400da0000b7072341 +:0400db0000b706a3c1 +:0400dc0000b7062340 +:0400dd0000b705a3c0 +:0400de0000b705233f +:0400df0000b704a3bf +:0400e00000b704233e +:0400e10000b703a3be +:0400e20000b703233d +:0400e30000b702a3bd +:0400e40000b702233c +:0400e50000b701a3bc +:0400e60000b701233b +:0400e70000b700a3bb +:0400e80000b700233a +:0400e900000080672c +:0400ea000ff5f59386 +:0400eb000085969363 +:0400ec0000d5e5b3a3 +:0400ed0001059693e0 +:0400ee0000d5e5b3a1 +:0400ef00f6dff06fd9 +:0400f00000279693bc +:0400f1000000029772 +:0400f200005686b37b +:0400f30000008293f4 +:0400f400fa0680e7a1 +:0400f50000028093f2 +:0400f600ff078793e6 +:0400f70040f7073394 +:0400f80000f60633d5 +:0400f900f6c378e3ef +:0400fa00f3dff06fd1 +:0400fb00ff010113ed +:0400fc000081242338 +:0400fd004501841322 +:0400fe000004478330 +:0400ff0000112623a3 +:0401000002079263fd +:040101000000079360 +:0401020000078a6305 +:0401030000000517dc +:0401040065850513f5 +:04010500000000975f +:04010600000000e70e +:04010700001007934a +:0401080000f40023dc +:0401090000c120838e +:04010a000081240349 +:04010b0001010113da +:04010c000000806708 +:04010d000000079354 +:04010e0000078c63f7 +:04010f004381859310 +:0401100000000517cf +:04011100624505132b +:0401120000000317cf +:040113000000006781 +:040114000000806700 +:04011500fb010113d6 +:040116000011202391 +:04011700004122235e +:04011800005124234b +:040119000061262338 +:04011a000071282325 +:04011b0000a12a23f2 +:04011c0000b12c23df +:04011d0000c12e23cc +:04011e0002d12023c7 +:04011f0002e12223b4 +:0401200002f12423a1 +:04012100030126238d +:04012200031128237a +:0401230003c12a23c7 +:0401240003d12c23b4 +:0401250003e12e23a1 +:0401260005f120239c +:04012700341022f37b +:04012800045120233b +:04012900300022f38d +:04012a000451222337 +:04012b007c4022f3ff +:04012c000451242333 +:04012d0034202573e2 +:04012e000001059334 +:04012f000401228322 +:040130003412907382 +:0401310004412283e0 +:040132003002907394 +:04013300048122839e +:040134007c42907306 +:040135000001208322 +:04013600004122035f +:04013700008122839e +:0401380000c12303dc +:04013900010123831a +:04013a000141250357 +:04013b000181258396 +:04013c0001c12603d4 +:04013d000201268312 +:04013e000241270350 +:04013f00028127838f +:0401400002c12803cd +:04014100030128830b +:0401420003412e0344 +:0401430003812e8383 +:0401440003c12f03c1 +:04014500050101139c +:0401460030200073f2 +:04014700fb010113a4 +:04014800001120235f +:04014900004122232c +:04014a000051242319 +:04014b000061262306 +:04014c0000712823f3 +:04014d0000a12a23c0 +:04014e0000b12c23ad +:04014f0000c12e239a +:0401500002d1202395 +:0401510002e1222382 +:0401520002f124236f +:04015300030126235b +:040154000311282348 +:0401550003c12a2395 +:0401560003d12c2382 +:0401570003e12e236f +:0401580005f120236a +:0401590034202673b5 +:04015a003070277367 +:04015b000026161351 +:04015c0000c707339e +:04015d00000727036d +:04015e00000700e7af +:04015f0000012083f8 +:040160000041220335 +:040161000081228374 +:0401620000c12303b2 +:0401630001012383f0 +:04016400014125032d +:04016500018125836c +:0401660001c12603aa +:0401670002012683e8 +:040168000241270326 +:040169000281278365 +:04016a0002c12803a3 +:04016b0003012883e1 +:04016c0003412e031a +:04016d0003812e8359 +:04016e0003c12f0397 +:04016f000501011372 +:0401700030200073c8 +:04017100b3dff06f99 :040172000000000089 :040173000000000088 :040174000000000087 @@ -383,305 +383,305 @@ :04017e00000000007d :04017f00000000007c :04018000000000007b -:040181004281a5030f -:040182000000806792 -:04018300ff01011364 -:0401840000000593df -:0401850000812423ae -:04018600001126231b -:040187000005041358 -:040188001e4000ef26 -:040189000000051756 -:04018a004405250300 -:04018b0003c52783fe -:04018c000007846381 -:04018d00000780e700 -:04018e000004051351 -:04018f00c4dff0efea -:04019000ff01011357 -:0401910000812423a2 -:040192000121202304 -:040193000000041351 -:04019400000009134b -:040195004089093361 -:04019600001126230b -:04019700009122238e -:04019800402959138e -:0401990000090e63e8 -:04019a0000000493ca -:04019b0000042783b2 -:04019c000014849334 -:04019d000044041303 +:04018100000000007a +:040182000000000079 +:040183000000000078 +:040184000000000077 +:040185000000000076 +:040186000000000075 +:040187000000000074 +:040188000000000073 +:040189000000000072 +:04018a000000000071 +:04018b000000000070 +:04018c00000000006f +:04018d00000000006e +:04018e00000000006d +:04018f00000000006c +:04019000000000006b +:04019100000000006a +:040192004281a503fe +:040193000000806781 +:04019400ff01011353 +:0401950000000593ce +:04019600008124239d +:04019700001126230a +:040198000005041347 +:040199001d8000efd6 +:04019a000000051745 +:04019b0043452503b0 +:04019c0003c52783ed +:04019d000007846370 :04019e00000780e7ef -:04019f00fe9918e3ca -:0401a0000000041344 -:0401a100000009133e -:0401a2004089093354 -:0401a3004029591383 -:0401a40000090e63dd -:0401a50000000493bf -:0401a60000042783a7 -:0401a7000014849329 -:0401a80000440413f8 -:0401a900000780e7e4 -:0401aa00fe9918e3bf -:0401ab0000c12083ec -:0401ac0000812403a7 -:0401ad000041248366 -:0401ae000001290320 -:0401af000101011336 -:0401b0000000806764 -:0401b10000a5c7b32b -:0401b2000037f79388 -:0401b30000c508b3c8 -:0401b4000607966341 -:0401b500003007937c -:0401b60006c7f26323 -:0401b7000035779305 -:0401b8000005071324 -:0401b9000c079a6332 -:0401ba00ffc8f61371 -:0401bb0040e606b361 -:0401bc0002000793a3 -:0401bd0002000293a7 -:0401be0006d7c2633b -:0401bf00000586931e -:0401c000000707939a -:0401c10002c7786396 -:0401c2000006a80388 -:0401c30000478793d7 -:0401c40000468693d8 -:0401c500ff07ae235f -:0401c600fec7e8e3a5 -:0401c700fff60793a5 -:0401c80040e787b3d2 -:0401c900ffc7f793e2 -:0401ca0000478793d0 -:0401cb0000f70733ff -:0401cc0000f585b302 -:0401cd00011768634b -:0401ce000000806746 -:0401cf00000507130d -:0401d000ff157ce3b8 -:0401d1000005c783db -:0401d20000170713f8 -:0401d30000158593fb -:0401d400fef70fa380 -:0401d500ff1768e3c5 -:0401d600000080673e -:0401d7000045a683b6 -:0401d80001c5a78333 -:0401d9000005af83eb -:0401da000085af03ea -:0401db0000c5ae832a -:0401dc000105ae0368 -:0401dd000145a30332 -:0401de000185a803ec -:0401df0000d7222300 -:0401e0000205a683eb -:0401e10001f72023df -:0401e20001e72423ea -:0401e30001d72623f7 -:0401e40001c7282304 -:0401e50000672a2362 -:0401e60001072c23be -:0401e70000f72e23cc -:0401e80002470713b0 -:0401e90040e607b332 -:0401ea00fed72e23eb -:0401eb0002458593b1 -:0401ec00faf2c6e37a -:0401ed00f49ff06f1c -:0401ee000005c683bf -:0401ef0000170713db -:0401f00000377793ca -:0401f100fed70fa383 -:0401f20000158593dc -:0401f300f0078ee3a0 -:0401f4000005c683b9 -:0401f50000170713d5 -:0401f60000377793c4 -:0401f700fed70fa37d -:0401f80000158593d6 -:0401f900fc079ae382 -:0401fa00f01ff06f93 -:0401fb000000079366 -:0401fc00000788630d -:0401fd0000000517e2 -:0401fe00134505138d -:0401ff001800006f75 -:040200000000806713 -:04020100fd010113e7 -:0402020001412c2367 -:0402030000000a17d6 -:04020400258a2a031a -:04020500032120238e -:04020600148a29032a -:040207000211262397 -:040208000281242328 -:040209000291222319 -:04020a0001312e236d -:04020b0001512a2350 -:04020c000161282341 -:04020d000171262332 -:04020e000181242323 -:04020f00040900637b -:0402100000050b13c7 -:0402110000058b93c6 -:0402120000100a933b -:04021300fff009935c -:0402140000492483f6 -:04021500fff484135b -:040216000204426339 -:040217000024949398 -:04021800009904b392 -:04021900040b8463eb -:04021a001044a78362 -:04021b000577806380 -:04021c00fff40413d4 -:04021d00ffc4849303 -:04021e00ff3416e3b0 -:04021f0002c1208375 -:040220000281240330 -:0402210002412483ef -:0402220002012903a9 -:0402230001c1298369 -:0402240001812a0327 -:0402250001412a83e6 -:0402260001012b03a4 -:0402270000c12b8364 -:0402280000812c0322 -:0402290003010113b9 -:04022a0000008067e9 -:04022b0000492783dc -:04022c000044a68361 -:04022d00fff78793bd -:04022e0004878e6350 -:04022f000004a22302 -:04023000fa0688e35f -:04023100188927837e -:04023200008a973374 -:0402330000492c034f -:0402340000f777b3a5 -:0402350002079263c7 -:04023600000680e757 -:040237000049270350 -:04023800148a27837a -:0402390001871463c2 -:04023a00f92784e339 -:04023b00f80788e355 -:04023c00000789131b -:04023d00f5dff06f8a -:04023e0018c9278331 -:04023f000844a58347 -:0402400000f7773319 -:0402410000071c6333 -:04024200000b051395 -:04024300000680e74a -:04024400fcdff06f7c -:0402450000892223e7 -:04024600fa9ff06fbc -:040247000005851316 -:04024800000680e745 -:04024900fb9ff06fb8 -:04024a00ff0101139c -:04024b0000812423e7 -:04024c000000079314 -:04024d000000041396 -:04024e00408787b3ab -:04024f0000912223d5 -:040250000011262350 -:040251004027d493db -:0402520002048063bf -:04025300ffc78793c7 -:040254000087843368 -:0402550000042783f7 -:04025600fff484939a -:04025700ffc40413c9 -:04025800000780e734 -:04025900fe0498e324 -:04025a0000c120833c -:04025b0000812403f7 -:04025c0000412483b6 -:04025d000101011387 -:04025e0000008067b5 -:04025f0000050593fe -:040260000000069301 -:040261000000061380 -:040262000000051380 -:040263000040006fe8 -:040264000000071778 -:040265000d47270317 -:04026600148727834f -:0402670004078c6399 -:040268000047a703a1 -:0402690001f0081385 -:04026a0006e84e63f1 -:04026b00002718133d -:04026c00020506631e -:04026d0001078333cf -:04026e0008c324237a -:04026f001887a883c1 -:040270000010061361 -:0402710000e616335a -:0402720000c8e8b325 -:040273001917a42390 -:0402740010d324235c -:0402750000200693cc -:0402760002d5046346 -:040277000017071352 -:0402780000e7a223d6 -:04027900010787b33f -:04027a0000b7a42302 -:04027b000000051367 -:04027c000000806797 -:04027d0014c7079308 -:04027e0014f724232a -:04027f00fa5ff06fc3 -:0402800018c7a68372 -:040281000017071348 -:0402820000e7a223cc -:0402830000c6e63398 -:0402840018c7a623ce -:04028500010787b333 -:0402860000b7a423f6 -:04028700000005135b -:04028800000080678b -:04028900fff005136a +:04019f000004051340 +:0401a000c4dff0efd9 +:0401a100ff01011346 +:0401a2000081242391 +:0401a30001212023f3 +:0401a4000000041340 +:0401a500000009133a +:0401a6004089093350 +:0401a70000112623fa +:0401a800009122237d +:0401a900402959137d +:0401aa0000090e63d7 +:0401ab0000000493b9 +:0401ac0000042783a1 +:0401ad000014849323 +:0401ae0000440413f2 +:0401af00000780e7de +:0401b000fe9918e3b9 +:0401b1000000041333 +:0401b200000009132d +:0401b3004089093343 +:0401b4004029591372 +:0401b50000090e63cc +:0401b60000000493ae +:0401b7000004278396 +:0401b8000014849318 +:0401b90000440413e7 +:0401ba00000780e7d3 +:0401bb00fe9918e3ae +:0401bc0000c12083db +:0401bd000081240396 +:0401be000041248355 +:0401bf00000129030f +:0401c0000101011325 +:0401c1000000806753 +:0401c20000a5c7b31a +:0401c3000037f79377 +:0401c40000c508b3b7 +:0401c5000607926334 +:0401c600003007936b +:0401c70004c7fe6308 +:0401c80000357793f4 +:0401c9000005071313 +:0401ca000607986329 +:0401cb00ffc8f61360 +:0401cc00fe06079391 +:0401cd0008f76c6360 +:0401ce0002c77c6385 +:0401cf00000586930e +:0401d000000707938a +:0401d1000006a80379 +:0401d20000478793c8 +:0401d30000468693c9 +:0401d400ff07ae2350 +:0401d500fec7e8e396 +:0401d600fff6079396 +:0401d70040e787b3c3 +:0401d800ffc7f793d3 +:0401d90000478793c1 +:0401da0000f70733f0 +:0401db0000f585b3f3 +:0401dc00011768633c +:0401dd000000806737 +:0401de0000050713fe +:0401df00ff157ce3a9 +:0401e0000005c783cc +:0401e10000170713e9 +:0401e20000158593ec +:0401e300fef70fa371 +:0401e400ff1768e3b6 +:0401e500000080672f +:0401e6000005c683c7 +:0401e70000170713e3 +:0401e80000377793d2 +:0401e900fed70fa38b +:0401ea0000158593e4 +:0401eb00f80780e3ae +:0401ec000005c683c1 +:0401ed0000170713dd +:0401ee0000377793cc +:0401ef00fed70fa385 +:0401f00000158593de +:0401f100fc079ae38a +:0401f200f65ff06f55 +:0401f3000045a6839a +:0401f4000005a283dd +:0401f5000085af834f +:0401f60000c5af038e +:0401f7000105ae83cd +:0401f8000145ae030c +:0401f9000185a303d6 +:0401fa0001c5a80390 +:0401fb0000d72223e4 +:0401fc000205a683cf +:0401fd000057202364 +:0401fe0001f72423be +:0401ff0001e72623cb +:0402000001d72823d7 +:0402010001c72a23e4 +:0402020000672c2342 +:0402030001072e239e +:0402040002d72023da +:040205000247071392 +:040206000245859395 +:04020700faf768e3b7 +:04020800f19ff06f03 +:040209000000079357 +:04020a0000078863fe +:04020b0000000517d3 +:04020c00134505137e +:04020d001800006f66 +:04020e000000806705 +:04020f00fd010113d9 +:0402100001412c2359 +:0402110000000a17c8 +:04021200258a2a030c +:040213000321202380 +:04021400148a29031c +:040215000211262389 +:04021600028124231a +:04021700029122230b +:0402180001312e235f +:0402190001512a2342 +:04021a000161282333 +:04021b000171262324 +:04021c000181242315 +:04021d00040900636d +:04021e0000050b13b9 +:04021f0000058b93b8 +:0402200000100a932d +:04022100fff009934e +:0402220000492483e8 +:04022300fff484134d +:04022400020442632b +:04022500002494938a +:04022600009904b384 +:04022700040b8463dd +:040228001044a78354 +:040229000577806372 +:04022a00fff40413c6 +:04022b00ffc48493f5 +:04022c00ff3416e3a2 +:04022d0002c1208367 +:04022e000281240322 +:04022f0002412483e1 +:04023000020129039b +:0402310001c129835b +:0402320001812a0319 +:0402330001412a83d8 +:0402340001012b0396 +:0402350000c12b8356 +:0402360000812c0314 +:0402370003010113ab +:0402380000008067db +:0402390000492783ce +:04023a000044a68353 +:04023b00fff78793af +:04023c0004878e6342 +:04023d000004a223f4 +:04023e00fa0688e351 +:04023f001889278370 +:04024000008a973366 +:0402410000492c0341 +:0402420000f777b397 +:0402430002079263b9 +:04024400000680e749 +:040245000049270342 +:04024600148a27836c +:0402470001871463b4 +:04024800f92784e32b +:04024900f80788e347 +:04024a00000789130d +:04024b00f5dff06f7c +:04024c0018c9278323 +:04024d000844a58339 +:04024e0000f777330b +:04024f0000071c6325 +:04025000000b051387 +:04025100000680e73c +:04025200fcdff06f6e +:0402530000892223d9 +:04025400fa9ff06fae +:040255000005851308 +:04025600000680e737 +:04025700fb9ff06faa +:04025800ff0101138e +:0402590000812423d9 +:04025a000000079306 +:04025b000000041388 +:04025c00408787b39d +:04025d0000912223c7 +:04025e000011262342 +:04025f004027d493cd +:0402600002048063b1 +:04026100ffc78793b9 +:04026200008784335a +:0402630000042783e9 +:04026400fff484938c +:04026500ffc40413bb +:04026600000780e726 +:04026700fe0498e316 +:0402680000c120832e +:0402690000812403e9 +:04026a0000412483a8 +:04026b000101011379 +:04026c0000008067a7 +:04026d0000050593f0 +:04026e0000000693f3 +:04026f000000061372 +:040270000000051372 +:040271000040006fda +:04027200000007176a +:040273000d47270309 +:040274001487278341 +:0402750004078c638b +:040276000047a70393 +:0402770001f0081377 +:0402780006e84e63e3 +:04027900002718132f +:04027a000205066310 +:04027b0001078333c1 +:04027c0008c324236c +:04027d001887a883b3 +:04027e000010061353 +:04027f0000e616334c +:0402800000c8e8b317 +:040281001917a42382 +:0402820010d324234e +:0402830000200693be +:0402840002d5046338 +:040285000017071344 +:0402860000e7a223c8 +:04028700010787b331 +:0402880000b7a423f4 +:040289000000051359 :04028a000000806789 -:04028b00000000006f -:04028c006c6c6548e9 -:04028d006f57206f18 -:04028e0020646c720a -:04028f00000000006b -:040290006d696e55d1 -:040291006d656c70bb -:0402920065746e65bc -:0402930079732064f7 -:040294006d657473ad -:040295006c61632015 -:040296006163206c14 -:0402970064656c6cc2 -:0402980000000a2137 -:04029900020000005f -:04029a000000000060 -:04029b00020002ec6f -:04029c000200035405 -:04029d00020003bc9c -:04029e00000000005c -:04029f00000000005b -:0402a000000000005a -:0402a1000000000059 -:0402a2000000000058 -:0402a3000000000057 -:0402a4000000000056 -:0402a5000000000055 -:0402a6000000000054 -:0402a7000000000053 +:04028b0014c70793fa +:04028c0014f724231c +:04028d00fa5ff06fb5 +:04028e0018c7a68364 +:04028f00001707133a +:0402900000e7a223be +:0402910000c6e6338a +:0402920018c7a623c0 +:04029300010787b325 +:0402940000b7a423e8 +:04029500000005134d +:04029600000080677d +:04029700fff005135c +:04029800000080677b +:040299000000000061 +:04029a006c6c6548db +:04029b006f57206f0a +:04029c0020646c72fc +:04029d00000000005d +:04029e006d696e55c3 +:04029f006d656c70ad +:0402a00065746e65ae +:0402a10079732064e9 +:0402a2006d6574739f +:0402a3006c61632007 +:0402a4006163206c06 +:0402a50064656c6cb4 +:0402a60000000a2129 +:0402a7000200000051 :0402a8000000000052 -:0402a9000000000051 -:0402aa000000000050 -:0402ab00000000004f +:0402a900020002ec61 +:0402aa0002000354f7 +:0402ab00020003bc8e :0402ac00000000004e :0402ad00000000004d :0402ae00000000004c @@ -706,12 +706,12 @@ :0402c1000000000039 :0402c2000000000038 :0402c3000000000037 -:0402c4000000000135 +:0402c4000000000036 :0402c5000000000035 -:0402c600abcd330e7b -:0402c700e66d12349a -:0402c8000005deec63 -:0402c9000000000b26 +:0402c6000000000034 +:0402c7000000000033 +:0402c8000000000032 +:0402c9000000000031 :0402ca000000000030 :0402cb00000000002f :0402cc00000000002e @@ -720,12 +720,12 @@ :0402cf00000000002b :0402d000000000002a :0402d1000000000029 -:0402d2000000000028 +:0402d2000000000127 :0402d3000000000027 -:0402d4000000000026 -:0402d5000000000025 -:0402d6000000000024 -:0402d7000000000023 +:0402d400abcd330e6d +:0402d500e66d12348c +:0402d6000005deec55 +:0402d7000000000b18 :0402d8000000000022 :0402d9000000000021 :0402da000000000020 @@ -930,8 +930,22 @@ :0403a1000000000058 :0403a2000000000057 :0403a3000000000056 -:0403a4000200000053 -:0403a500000003a8a9 -:0403a600000003f060 -:0403a700000007ec5f +:0403a4000000000055 +:0403a5000000000054 +:0403a6000000000053 +:0403a7000000000052 +:0403a8000000000051 +:0403a9000000000050 +:0403aa00000000004f +:0403ab00000000004e +:0403ac00000000004d +:0403ad00000000004c +:0403ae00000000004b +:0403af00000000004a +:0403b0000000000049 +:0403b1000000000048 +:0403b2000200000045 +:0403b300000003ec57 +:0403b400000004340d +:0403b5000000082418 :00000001FF diff --git a/software/quartus_blink.hex b/software/quartus_blink.hex index 3d1724a0..0ca0c86c 100644 --- a/software/quartus_blink.hex +++ b/software/quartus_blink.hex @@ -70,11 +70,11 @@ :04004500000005931f :040046001a8000ef2d :040047000000151789 -:040048008485051393 +:0400480085450513d2 :040049000005086343 :04004a000000051796 -:04004b007e85051396 -:04004c00035000ef6e +:04004b007f450513d5 +:04004c00041000efad :04004d00500000ef70 :04004e000001250385 :04004f0000410593d4 @@ -102,7 +102,7 @@ :04006500fddff06f5c :040066000040006fe7 :04006700000017b7c7 -:04006800a187879352 +:04006800a247879391 :040069000550071324 :04006a00100006b7c5 :04006b000017879360 @@ -148,7 +148,7 @@ :0400930042c187934c :0400940040c78633a8 :04009500000015b79b -:04009600a4058593a5 +:04009600a4c58593e5 :0400970000018513cc :04009800458000efb0 :0400990000c12083ff @@ -238,7 +238,7 @@ :0400ed000000079375 :0400ee0000078a631a :0400ef0000000517f1 -:0400f000658505130a +:0400f0006645051349 :0400f1000000009774 :0400f200000000e723 :0400f300001007935f @@ -251,7 +251,7 @@ :0400fa0000078c630c :0400fb004381859325 :0400fc0000000517e4 -:0400fd006245051340 +:0400fd00630505137f :0400fe0000000317e4 :0400ff000000006796 :040100000000806714 @@ -387,9 +387,9 @@ :0401820000812423b1 :04018300001126231e :04018400000504135b -:040185001d8000efea +:040185001e4000ef29 :040186000000051759 -:0401870042452503c5 +:040187004305250304 :0401880003c5278301 :040189000007846384 :04018a00000780e703 @@ -431,236 +431,236 @@ :0401ae0000a5c7b32e :0401af000037f7938b :0401b00000c508b3cb -:0401b1000607926348 +:0401b1000607966344 :0401b200003007937f -:0401b30004c7fe631c +:0401b30006c7f26326 :0401b4000035779308 :0401b5000005071327 -:0401b600060798633d +:0401b6000c079a6335 :0401b700ffc8f61374 -:0401b800fe060793a5 -:0401b90008f76c6374 -:0401ba0002c77c6399 -:0401bb000005869322 -:0401bc00000707939e -:0401bd000006a8038d -:0401be0000478793dc -:0401bf0000468693dd -:0401c000ff07ae2364 -:0401c100fec7e8e3aa -:0401c200fff60793aa -:0401c30040e787b3d7 -:0401c400ffc7f793e7 -:0401c50000478793d5 -:0401c60000f7073304 -:0401c70000f585b307 -:0401c8000117686350 -:0401c900000080674b -:0401ca000005071312 -:0401cb00ff157ce3bd -:0401cc000005c783e0 -:0401cd0000170713fd -:0401ce000015859300 -:0401cf00fef70fa385 -:0401d000ff1768e3ca -:0401d1000000806743 -:0401d2000005c683db -:0401d30000170713f7 -:0401d40000377793e6 -:0401d500fed70fa39f -:0401d60000158593f8 -:0401d700f80780e3c2 -:0401d8000005c683d5 -:0401d90000170713f1 -:0401da0000377793e0 -:0401db00fed70fa399 -:0401dc0000158593f2 -:0401dd00fc079ae39e -:0401de00f65ff06f69 -:0401df000045a683ae -:0401e0000005a283f1 -:0401e1000085af8363 -:0401e20000c5af03a2 -:0401e3000105ae83e1 -:0401e4000145ae0320 -:0401e5000185a303ea -:0401e60001c5a803a4 -:0401e70000d72223f8 -:0401e8000205a683e3 -:0401e9000057202378 -:0401ea0001f72423d2 -:0401eb0001e72623df -:0401ec0001d72823ec -:0401ed0001c72a23f9 -:0401ee0000672c2357 -:0401ef0001072e23b3 -:0401f00002d72023ef -:0401f10002470713a7 -:0401f20002458593aa -:0401f300faf768e3cc -:0401f400f19ff06f18 -:0401f500000007936c -:0401f6000007886313 -:0401f70000000517e8 -:0401f8001345051393 -:0401f9001800006f7b -:0401fa00000080671a -:0401fb00fd010113ee -:0401fc0001412c236e -:0401fd0000000a17dd -:0401fe00248a2a0322 -:0401ff000321202395 -:04020000148a290330 -:04020100021126239d -:04020200028124232e -:04020300029122231f -:0402040001312e2373 -:0402050001512a2356 -:040206000161282347 -:040207000171262338 -:040208000181242329 -:040209000409006381 -:04020a0000050b13cd -:04020b0000058b93cc -:04020c0000100a9341 -:04020d00fff0099362 -:04020e0000492483fc -:04020f00fff4841361 -:04021000020442633f -:04021100002494939e -:04021200009904b398 -:04021300040b8463f1 -:040214001044a78368 -:040215000577806386 -:04021600fff40413da -:04021700ffc4849309 -:04021800ff3416e3b6 -:0402190002c120837b -:04021a000281240336 -:04021b0002412483f5 -:04021c0002012903af -:04021d0001c129836f -:04021e0001812a032d -:04021f0001412a83ec -:0402200001012b03aa -:0402210000c12b836a -:0402220000812c0328 -:0402230003010113bf -:0402240000008067ef -:0402250000492783e2 -:040226000044a68367 -:04022700fff78793c3 -:0402280004878e6356 -:040229000004a22308 -:04022a00fa0688e365 -:04022b001889278384 -:04022c00008a97337a -:04022d0000492c0355 -:04022e0000f777b3ab -:04022f0002079263cd -:04023000000680e75d -:040231000049270356 -:04023200148a278380 -:0402330001871463c8 -:04023400f92784e33f -:04023500f80788e35b -:040236000007891321 -:04023700f5dff06f90 -:0402380018c9278337 -:040239000844a5834d -:04023a0000f777331f -:04023b0000071c6339 -:04023c00000b05139b -:04023d00000680e750 -:04023e00fcdff06f82 -:04023f0000892223ed -:04024000fa9ff06fc2 -:04024100000585131c -:04024200000680e74b -:04024300fb9ff06fbe -:04024400ff010113a2 -:0402450000812423ed -:04024600000007931a -:04024700000004139c -:04024800408787b3b1 -:0402490000912223db -:04024a000011262356 -:04024b004027d493e1 -:04024c0002048063c5 -:04024d00ffc78793cd -:04024e00008784336e -:04024f0000042783fd -:04025000fff48493a0 -:04025100ffc40413cf -:04025200000780e73a -:04025300fe0498e32a -:0402540000c1208342 -:0402550000812403fd -:0402560000412483bc -:04025700010101138d -:0402580000008067bb -:040259000005059304 -:04025a000000069307 -:04025b000000061386 -:04025c000000051386 -:04025d000040006fee -:04025e00000007177e -:04025f000c4727031e -:040260001487278355 -:0402610004078c639f -:040262000047a703a7 -:0402630001f008138b -:0402640006e84e63f7 -:040265000027181343 -:040266000205066324 -:0402670001078333d5 -:0402680008c3242380 -:040269001887a883c7 -:04026a000010061367 -:04026b0000e6163360 -:04026c0000c8e8b32b -:04026d001917a42396 -:04026e0010d3242362 -:04026f0000200693d2 -:0402700002d504634c -:040271000017071358 -:0402720000e7a223dc -:04027300010787b345 -:0402740000b7a42308 -:04027500000005136d -:04027600000080679d -:0402770014c707930e -:0402780014f7242330 -:04027900fa5ff06fc9 -:04027a0018c7a68378 -:04027b00001707134e -:04027c0000e7a223d2 -:04027d0000c6e6339e -:04027e0018c7a623d4 -:04027f00010787b339 -:0402800000b7a423fc -:040281000000051361 -:040282000000806791 -:04028300fff0051370 -:04028400000080678f -:040285000000000075 -:040286006d696e55db -:040287006d656c70c5 -:0402880065746e65c6 -:040289007973206401 -:04028a006d657473b7 -:04028b006c6163201f -:04028c006163206c1e -:04028d0064656c6ccc -:04028e0000000a2141 -:04028f000200000069 -:04029000000000006a -:04029100020002ec79 -:04029200020003540f -:04029300020003bca6 -:040294000000000066 -:040295000000000065 -:040296000000000064 +:0401b80040e606b364 +:0401b90002000793a6 +:0401ba0002000293aa +:0401bb0006d7c2633e +:0401bc000005869321 +:0401bd00000707939d +:0401be0002c7786399 +:0401bf000006a8038b +:0401c00000478793da +:0401c10000468693db +:0401c200ff07ae2362 +:0401c300fec7e8e3a8 +:0401c400fff60793a8 +:0401c50040e787b3d5 +:0401c600ffc7f793e5 +:0401c70000478793d3 +:0401c80000f7073302 +:0401c90000f585b305 +:0401ca00011768634e +:0401cb000000806749 +:0401cc000005071310 +:0401cd00ff157ce3bb +:0401ce000005c783de +:0401cf0000170713fb +:0401d00000158593fe +:0401d100fef70fa383 +:0401d200ff1768e3c8 +:0401d3000000806741 +:0401d4000045a683b9 +:0401d50001c5a78336 +:0401d6000005af83ee +:0401d7000085af03ed +:0401d80000c5ae832d +:0401d9000105ae036b +:0401da000145a30335 +:0401db000185a803ef +:0401dc0000d7222303 +:0401dd000205a683ee +:0401de0001f72023e2 +:0401df0001e72423ed +:0401e00001d72623fa +:0401e10001c7282307 +:0401e20000672a2365 +:0401e30001072c23c1 +:0401e40000f72e23cf +:0401e50002470713b3 +:0401e60040e607b335 +:0401e700fed72e23ee +:0401e80002458593b4 +:0401e900faf2c6e37d +:0401ea00f49ff06f1f +:0401eb000005c683c2 +:0401ec0000170713de +:0401ed0000377793cd +:0401ee00fed70fa386 +:0401ef0000158593df +:0401f000f0078ee3a3 +:0401f1000005c683bc +:0401f20000170713d8 +:0401f30000377793c7 +:0401f400fed70fa380 +:0401f50000158593d9 +:0401f600fc079ae385 +:0401f700f01ff06f96 +:0401f8000000079369 +:0401f9000007886310 +:0401fa0000000517e5 +:0401fb001345051390 +:0401fc001800006f78 +:0401fd000000806717 +:0401fe00fd010113eb +:0401ff0001412c236b +:0402000000000a17d9 +:04020100248a2a031e +:040202000321202391 +:04020300148a29032d +:04020400021126239a +:04020500028124232b +:04020600029122231c +:0402070001312e2370 +:0402080001512a2353 +:040209000161282344 +:04020a000171262335 +:04020b000181242326 +:04020c00040900637e +:04020d0000050b13ca +:04020e0000058b93c9 +:04020f0000100a933e +:04021000fff009935f +:0402110000492483f9 +:04021200fff484135e +:04021300020442633c +:04021400002494939b +:04021500009904b395 +:04021600040b8463ee +:040217001044a78365 +:040218000577806383 +:04021900fff40413d7 +:04021a00ffc4849306 +:04021b00ff3416e3b3 +:04021c0002c1208378 +:04021d000281240333 +:04021e0002412483f2 +:04021f0002012903ac +:0402200001c129836c +:0402210001812a032a +:0402220001412a83e9 +:0402230001012b03a7 +:0402240000c12b8367 +:0402250000812c0325 +:0402260003010113bc +:0402270000008067ec +:0402280000492783df +:040229000044a68364 +:04022a00fff78793c0 +:04022b0004878e6353 +:04022c000004a22305 +:04022d00fa0688e362 +:04022e001889278381 +:04022f00008a973377 +:0402300000492c0352 +:0402310000f777b3a8 +:0402320002079263ca +:04023300000680e75a +:040234000049270353 +:04023500148a27837d +:0402360001871463c5 +:04023700f92784e33c +:04023800f80788e358 +:04023900000789131e +:04023a00f5dff06f8d +:04023b0018c9278334 +:04023c000844a5834a +:04023d0000f777331c +:04023e0000071c6336 +:04023f00000b051398 +:04024000000680e74d +:04024100fcdff06f7f +:0402420000892223ea +:04024300fa9ff06fbf +:040244000005851319 +:04024500000680e748 +:04024600fb9ff06fbb +:04024700ff0101139f +:0402480000812423ea +:040249000000079317 +:04024a000000041399 +:04024b00408787b3ae +:04024c0000912223d8 +:04024d000011262353 +:04024e004027d493de +:04024f0002048063c2 +:04025000ffc78793ca +:04025100008784336b +:0402520000042783fa +:04025300fff484939d +:04025400ffc40413cc +:04025500000780e737 +:04025600fe0498e327 +:0402570000c120833f +:0402580000812403fa +:0402590000412483b9 +:04025a00010101138a +:04025b0000008067b8 +:04025c000005059301 +:04025d000000069304 +:04025e000000061383 +:04025f000000051383 +:040260000040006feb +:04026100000007177b +:040262000c4727031b +:040263001487278352 +:0402640004078c639c +:040265000047a703a4 +:0402660001f0081388 +:0402670006e84e63f4 +:040268000027181340 +:040269000205066321 +:04026a0001078333d2 +:04026b0008c324237d +:04026c001887a883c4 +:04026d000010061364 +:04026e0000e616335d +:04026f0000c8e8b328 +:040270001917a42393 +:0402710010d324235f +:0402720000200693cf +:0402730002d5046349 +:040274000017071355 +:0402750000e7a223d9 +:04027600010787b342 +:0402770000b7a42305 +:04027800000005136a +:04027900000080679a +:04027a0014c707930b +:04027b0014f724232d +:04027c00fa5ff06fc6 +:04027d0018c7a68375 +:04027e00001707134b +:04027f0000e7a223cf +:0402800000c6e6339b +:0402810018c7a623d1 +:04028200010787b336 +:0402830000b7a423f9 +:04028400000005135e +:04028500000080678e +:04028600fff005136d +:04028700000080678c +:040288000000000072 +:040289006d696e55d8 +:04028a006d656c70c2 +:04028b0065746e65c3 +:04028c0079732064fe +:04028d006d657473b4 +:04028e006c6163201c +:04028f006163206c1b +:0402900064656c6cc9 +:0402910000000a213e +:040292000200000066 +:040293000000000067 +:04029400020002ec76 +:04029500020003540c +:04029600020003bca3 :040297000000000063 :040298000000000062 :040299000000000061 @@ -696,15 +696,15 @@ :0402b7000000000043 :0402b8000000000042 :0402b9000000000041 -:0402ba00000000013f +:0402ba000000000040 :0402bb00000000003f -:0402bc00abcd330e85 -:0402bd00e66d1234a4 -:0402be000005deec6d -:0402bf000000000b30 -:0402c000000000003a -:0402c1000000000039 -:0402c2000000000038 +:0402bc00000000003e +:0402bd00000000013c +:0402be00000000003c +:0402bf00abcd330e82 +:0402c000e66d1234a1 +:0402c1000005deec6a +:0402c2000000000b2d :0402c3000000000037 :0402c4000000000036 :0402c5000000000035 @@ -920,8 +920,11 @@ :040397000000000062 :040398000000000061 :040399000000000060 -:04039a00020000005d -:04039b000000039cbf -:04039c00000003e476 -:04039d00000007d481 +:04039a00000000005f +:04039b00000000005e +:04039c00000000005d +:04039d00020000005a +:04039e000000039cbc +:04039f00000003e473 +:0403a000000007e072 :00000001FF