From f7669a3fcc87d4f6040257c3dd8708c263331458 Mon Sep 17 00:00:00 2001 From: Rr42 Date: Fri, 25 May 2018 10:13:59 +0530 Subject: Added all LDmicro filles to be ported --- ldmicro/reg/expected/avr-hw.hex | 330 +++++++++++++++++++++++++++++++ ldmicro/reg/expected/contacts.hex | 21 ++ ldmicro/reg/expected/integers.hex | 134 +++++++++++++ ldmicro/reg/expected/misc-ops.hex | 69 +++++++ ldmicro/reg/expected/pic16-hw.hex | 189 ++++++++++++++++++ ldmicro/reg/expected/timers-counters.hex | 119 +++++++++++ ldmicro/reg/go.bat | 1 + ldmicro/reg/run-tests.pl | 33 ++++ ldmicro/reg/tests/avr-hw.ld | 61 ++++++ ldmicro/reg/tests/contacts.ld | 41 ++++ ldmicro/reg/tests/integers.ld | 61 ++++++ ldmicro/reg/tests/misc-ops.ld | 53 +++++ ldmicro/reg/tests/pic16-hw.ld | 61 ++++++ ldmicro/reg/tests/timers-counters.ld | 57 ++++++ 14 files changed, 1230 insertions(+) create mode 100644 ldmicro/reg/expected/avr-hw.hex create mode 100644 ldmicro/reg/expected/contacts.hex create mode 100644 ldmicro/reg/expected/integers.hex create mode 100644 ldmicro/reg/expected/misc-ops.hex create mode 100644 ldmicro/reg/expected/pic16-hw.hex create mode 100644 ldmicro/reg/expected/timers-counters.hex create mode 100644 ldmicro/reg/go.bat create mode 100644 ldmicro/reg/run-tests.pl create mode 100644 ldmicro/reg/tests/avr-hw.ld create mode 100644 ldmicro/reg/tests/contacts.ld create mode 100644 ldmicro/reg/tests/integers.ld create mode 100644 ldmicro/reg/tests/misc-ops.ld create mode 100644 ldmicro/reg/tests/pic16-hw.ld create mode 100644 ldmicro/reg/tests/timers-counters.ld (limited to 'ldmicro/reg') diff --git a/ldmicro/reg/expected/avr-hw.hex b/ldmicro/reg/expected/avr-hw.hex new file mode 100644 index 0000000..1fdd509 --- /dev/null +++ b/ldmicro/reg/expected/avr-hw.hex @@ -0,0 +1,330 @@ +:1000000022C0189518951895189518951895189553 +:100010001895189518951895189518951895189578 +:100020001895189518951895189518951895189568 +:100030001895189518951895189518951895189558 +:10004000189518951895B0E0AEE500E10C93B0E076 +:10005000ADE50FEF0C93B1E1A0E000E020E030E16E +:10006000A150B0400C93215030402223C9F73323D4 +:10007000B9F7B0E0A8E900E00C93B0E0A9E907E621 +:100080000C93B0E0AAE908E10C93B0E0AAE300E029 +:100090000C93B0E0ABE300E00C93B0E0A7E300E822 +:1000A0000C93B0E0A8E300E00C93B0E0A4E300E020 +:1000B0000C93B0E0A5E300E00C93B0E0A1E308E00E +:1000C0000C93B0E0A2E300E00C93B0E0A2E200E009 +:1000D0000C93B0E0A3E201E00C93B0E0A1E600E0F5 +:1000E0000C93B0E0A2E600E00C93B0E0A4E600E0E0 +:1000F0000C93B0E0A5E600E00C93B0E0AFE400E0C4 +:100100000C93B0E0AEE409E00C93B0E0ABE40CE992 +:100110000C93B0E0AAE40EE30C93B0E0A7E500E195 +:100120000C93B0E0A6E50C9104FFFBCFB0E0A6E590 +:100130000C9100610C93A895B1E0A1E00C910260D4 +:100140000C93B1E0A1E00C91B1E0A1E01C9101FFA2 +:100150001B7F01FD14601C93B1E0A1E00C9102FF34 +:10016000EFC0B1E0A1E00C9103FD60C0B1E0A1E0FF +:100170000C910F7E0C93B0E0ACE30C9101FD23C019 +:10018000B1E0A1E00C9100FF23C0B0E0AEE30C9120 +:10019000B0E0AFE31C91039509F413951C93B0E014 +:1001A000AEE30C93B1E0A0E00C91B0E0ADE30C93B2 +:1001B000B0E0ACE304E00C9306E00C93B1E0A1E006 +:1001C0000C910E7F0C93B1E0A1E00C9100610C93B7 +:1001D000B1E0A1E00C9104FD29C0B1E0A1E00C91D7 +:1001E00008600C93B0E0AFE300E00C93B0E0AEE346 +:1001F00000E00C93B0E0ACE301E00C93B0E0ADE3C1 +:100200000C91B1E0A2E00C93B0E0AFE300E00C93FE +:10021000B0E0AEE301E00C93B0E0ACE301E00C939E +:10022000B0E0ADE30C91B1E0A3E00C93B1E0A1E04C +:100230000C910F7E0C93B0E0ACE30C9101FD23C058 +:10024000B1E0A1E00C9100FF23C0B0E0AEE30C915F +:10025000B0E0AFE31C91039509F413951C93B0E053 +:10026000AEE30C93B1E0A0E00C91B0E0ADE30C93F1 +:10027000B0E0ACE304E00C9306E00C93B1E0A1E045 +:100280000C910E7F0C93B1E0A1E00C9100610C93F6 +:10029000B1E0A1E00C9104FD53C0B0E0AFE300E099 +:1002A0000C93B0E0AEE300E00C93B0E0ACE301E00F +:1002B0000C93B0E0ADE30C91B1E0A4E00C93B0E09E +:1002C000AFE300E00C93B0E0AEE301E00C93B0E0EC +:1002D000ACE301E00C93B0E0ADE30C91B1E0A5E03C +:1002E0000C93B1E0A4E00C91B1E0A5E01C91B1E069 +:1002F000A2E02C91B1E0A3E03C910217130709F4AE +:100300001FC0B1E0A1E00C9101600C93B1E0A3E04B +:100310000C91B1E0A0E00C93B0E0AFE300E00C93EF +:10032000B0E0AEE300E00C93B1E0A2E00C91B0E0ED +:10033000ADE30C93B0E0ACE304E00C9306E00C9367 +:10034000B1E0A1E00C91B1E0A1E01C9101FF1B7FA5 +:1003500001FD14601C93B1E0A1E00C9102FF1DC0EF +:10036000B0E0A7E200E00C93B0E0A6E205E80C9351 +:10037000B0E0A6E205EC0C93B0E0A6E20C9106FD1D +:10038000FBCFB0E0A4E20C91B1E0A6E00C93B0E0AA +:10039000A5E20C91B1E0A7E00C93B1E0A1E00C91D3 +:1003A000B1E0A1E01C9101FF1B7F01FD14601C93D3 +:1003B000B1E0A1E00C910F7D0C93B1E0A1E00C91B4 +:1003C000B1E0A1E01C9102FF1F7B02FD10641C93B1 +:1003D000B0E0A1E20C9100FD05C0B1E0A1E00C91FC +:1003E0000F7B0C93B1E0A1E00C9106FF05C0B1E0DA +:1003F000A1E00C9100620C93B1E0A1E00C91B1E09E +:10040000A1E01C9102FF1F7B02FD10641C93B1E070 +:10041000A8E000E00C93B1E0A9E002E00C93B1E0A9 +:10042000A8E00C91B1E0A9E01C91B1E0A6E02C910C +:10043000B1E0A7E03C91201731072CF4B1E0A1E036 +:100440000C910F7B0C93B1E0A1E00C9106FF05C06D +:10045000B1E0A1E00C9100620C93B1E0A1E00C913D +:10046000B1E0A1E01C9105FF1B7F05FD14601C930A +:10047000B1E0A1E00C91B1E0A1E01C9102FF1F7E70 +:1004800002FD10611C93B1E0A1E00C9107FF05C0D3 +:10049000B1E0A1E00C910B7F0C93B1E0A1E00C91D5 +:1004A000B1E0A1E01C9104FF1F7704FD10681C93CC +:1004B000B1E0A1E00C9102FF1CC0B1E0A8E001E0B6 +:1004C0000C93B1E0A9E000E00C93B1E0A2E02C9124 +:1004D000B1E0A3E03C91B1E0A8E00C91B1E0A9E06B +:1004E0001C91200F311FB1E0A2E02C93B1E0A3E0FA +:1004F0003C93B1E0A1E00C91B1E0A1E01C9101FFBF +:100500001B7F01FD14601C93B1E0AAE00C910E7FEB +:100510000C93B1E0A1E00C91B1E0AAE01C9102FFC4 +:100520001D7F02FD12601C93B1E0A8E00AE00C936D +:10053000B1E0A9E000E00C93B1E0A8E00C91B1E0DB +:10054000A9E01C91B1E0A2E02C91B1E0A3E03C91C4 +:10055000201731070CF405C0B1E0AAE00C910D7F23 +:100560000C93B1E0AAE00C9101FF08C0B1E0ABE050 +:1005700004E10C93B1E0ACE000E00C93B1E0AAE040 +:100580000C9101FF05C0B1E0AAE00C9101600C9351 +:10059000B1E0A1E00C91B1E0AAE01C9102FF1D7F47 +:1005A00002FD12601C93B1E0A8E00AE00C93B1E0F8 +:1005B000A9E000E00C93B1E0A8E00C91B1E0A9E063 +:1005C0001C91B1E0A2E02C91B1E0A3E03C91201796 +:1005D00031072CF4B1E0AAE00C910D7F0C93B1E04F +:1005E000AAE00C9101FF08C0B1E0ABE002E30C937C +:1005F000B1E0ACE000E00C93B1E0AAE00C9101FFA7 +:1006000005C0B1E0AAE00C9101600C93B1E0A1E05B +:100610000C91B1E0AAE01C9102FF1D7F02FD126067 +:100620001C93B1E0AAE00C9101FF21C0B1E0ABE066 +:100630000C9110E030E02FEFEAE0FAE00995132F7B +:10064000022F30E024E6EBE1FAE00995B0E0A3E404 +:100650000C93B1E0AAE00C9102FD09C0B1E0AAE060 +:100660000C9104600C93B0E0A5E40AE60C93B1E0B1 +:10067000AAE00C9101FF05C0B1E0AAE00C91016075 +:100680000C93B1E0AAE00C91B1E0A1E01C9100FF55 +:100690001B7F00FD14601C93B1E0A1E00C91B1E060 +:1006A000A1E01C9101FF1B7F01FD14601C93B1E0D0 +:1006B000A1E00C9102FF1EC0B1E0ADE00C91B1E0F1 +:1006C000AEE01C9123E630E00217130794F4B1E08A +:1006D000ADE00C91B1E0AEE01C91039509F41395E7 +:1006E0001C93B1E0ADE00C93B1E0A1E00C910B7F65 +:1006F0000C9308C0B1E0ADE000E00C93B1E0AEE0D7 +:1007000000E00C93B1E0A1E00C91B1E0A1E01C91FC +:1007100002FF1F7E02FD10611C93B1E0AAE00C9164 +:1007200003FF05C0B1E0A1E00C910B7F0C93B1E099 +:10073000A1E00C91B1E0AAE01C9104FF177F04FD39 +:1007400018601C93B1E0A1E00C9102FF0DC0B1E074 +:10075000AAE00C9104FD08C0B1E0AFE000E00C930A +:10076000B1E0A0E100E00C93B1E0A1E00C91B1E0B8 +:10077000AAE01C9102FF1F7E02FD10611C93B1E0F4 +:10078000AFE00C91B1E0A1E10C93B1E0A0E10C91DC +:10079000B1E0A2E10C93B1E0AFE00C91B1E0A0E1D7 +:1007A0001C9120E130E0021713070CF408C0B1E0FF +:1007B000A1E10FEF0C93B1E0A2E10FEF0C93B1E0D8 +:1007C000A1E00C910F7E0C93B1E0A1E00C9104FF2D +:1007D00006C0B1E0A4E00C91B0E0ACE90C93B1E04C +:1007E000A1E00C910F7E0C93B0E0ABE90C9105FDFC +:1007F00005C0B1E0A1E00C9100610C93B1E0A1E073 +:100800000C9104FF08C0B1E0A1E10FEF0C93B1E03F +:10081000A2E10FEF0C93B1E0A4E000E00C93B1E093 +:10082000A5E000E00C93B1E0A4E00C91B1E0A5E0FC +:100830001C91B1E0A1E12C91B1E0A2E13C91021741 +:10084000130741F4B1E0A8E003E70C93B1E0A9E09D +:1008500000E00C93B1E0A4E001E00C93B1E0A5E06E +:1008600000E00C93B1E0A4E00C91B1E0A5E01C9194 +:10087000B1E0A1E12C91B1E0A2E13C910217130794 +:1008800041F4B1E0A8E001E60C93B1E0A9E000E09A +:100890000C93B1E0A4E002E00C93B1E0A5E000E02D +:1008A0000C93B1E0A4E00C91B1E0A5E01C91B1E0A3 +:1008B000A1E12C91B1E0A2E13C910217130741F4B0 +:1008C000B1E0A8E006E70C93B1E0A9E000E00C93EA +:1008D000B1E0A4E003E00C93B1E0A5E000E00C93EC +:1008E000B1E0A4E00C91B1E0A5E01C91B1E0A1E180 +:1008F0002C91B1E0A2E13C910217130741F4B1E061 +:10090000A8E005E60C93B1E0A9E000E00C93B1E0AB +:10091000A4E004E00C93B1E0A5E000E00C93B1E0AA +:10092000A4E00C91B1E0A5E01C91B1E0A1E12C9113 +:10093000B1E0A2E13C910217130741F4B1E0A8E055 +:1009400004E60C93B1E0A9E000E00C93B1E0A4E070 +:1009500005E00C93B1E0A5E000E00C93B1E0A4E069 +:100960000C91B1E0A5E01C91B1E0A1E12C91B1E0C6 +:10097000A2E13C910217130741F4B1E0A8E000E2C4 +:100980000C93B1E0A9E000E00C93B1E0A4E006E034 +:100990000C93B1E0A5E000E00C93B1E0A4E00C9171 +:1009A000B1E0A5E01C91B1E0A1E12C91B1E0A2E1A0 +:1009B0003C910217130741F4B1E0A8E00DE30C935A +:1009C000B1E0A9E000E00C93B1E0A4E007E00C93F3 +:1009D000B1E0A5E000E00C93B1E0A4E00C91B1E03F +:1009E000A5E01C91B1E0A1E12C91B1E0A2E13C9124 +:1009F0000217130741F4B1E0A8E000E20C93B1E064 +:100A0000A9E000E00C93B1E0A4E008E00C93B1E0B1 +:100A1000A5E000E00C93B1E0A1E00C910F7E0C93F7 +:100A2000B1E0A4E00C91B1E0A5E01C91B1E0A1E13E +:100A30002C91B1E0A2E13C910217130729F4B1E037 +:100A4000A1E00C9100610C93B1E0A1E00C9104FFD6 +:100A500043C0B1E0A2E00C91B1E0A3E10C93B1E09E +:100A6000A3E00C91B1E0A4E10C93B1E0A8E000E2B6 +:100A70000C93B1E0A9E000E00C93B1E0A2E00C918E +:100A8000B1E0A3E01C9120E030E00217130724F549 +:100A9000B1E0A8E00DE20C93B1E0A9E000E00C9316 +:100AA000B1E0A4E000E00C93B1E0A5E000E00C931D +:100AB000B1E0A4E02C91B1E0A5E03C91B1E0A2E06E +:100AC0000C91B1E0A3E01C91201B310BB1E0A3E13C +:100AD0002C93B1E0A4E13C93B1E0A4E009E00C93D5 +:100AE000B1E0A5E000E00C93B1E0A1E00C910F7E35 +:100AF0000C93B1E0A4E00C91B1E0A5E01C91B1E051 +:100B0000A1E12C91B1E0A2E13C910217130729F475 +:100B1000B1E0A1E00C9100610C93B1E0A1E00C9177 +:100B200004FF89C0B1E0AAE00C9100620C93B1E02F +:100B3000A4E000E10C93B1E0A5E007E20C93B1E082 +:100B4000A4E02C91B1E0A5E03C91B1E0A3E10C91CF +:100B5000B1E0A4E11C91EBE1FAE00995B1E0A8E075 +:100B60000C93B1E0A9E01C93B1E0A4E02C91B1E0BA +:100B7000A5E03C91B1E0A8E00C91B1E0A9E01C91A6 +:100B8000EAE0FAE00995B1E0A4E02C93B1E0A5E039 +:100B90003C93B1E0A3E12C91B1E0A4E13C91B1E040 +:100BA000A4E00C91B1E0A5E01C91201B310BB1E059 +:100BB000A3E12C93B1E0A4E13C93B1E0A4E000E315 +:100BC0000C93B1E0A5E000E00C93B1E0A8E02C911B +:100BD000B1E0A9E03C91B1E0A4E00C91B1E0A5E066 +:100BE0001C91200F311FB1E0A8E02C93B1E0A9E0E7 +:100BF0003C93B1E0A4E00C91B1E0A5E01C91B1E020 +:100C0000A8E02C91B1E0A9E03C910217130771F420 +:100C1000B1E0AAE00C9105FF08C0B1E0A8E000E255 +:100C20000C93B1E0A9E000E00C9305C0B1E0AAE0AC +:100C30000C910F7D0C93B1E0A4E00AE00C93B1E0BD +:100C4000A5E000E00C93B1E0A1E00C910F7E0C93C5 +:100C5000B1E0A4E00C91B1E0A5E01C91B1E0A1E10C +:100C60002C91B1E0A2E13C910217130729F4B1E005 +:100C7000A1E00C9100610C93B1E0A1E00C9104FFA4 +:100C800084C0B1E0A4E008EE0C93B1E0A5E003E07D +:100C90000C93B1E0A4E02C91B1E0A5E03C91B1E06F +:100CA000A3E10C91B1E0A4E11C91EBE1FAE009951C +:100CB000B1E0A8E00C93B1E0A9E01C93B1E0A4E09E +:100CC0002C91B1E0A5E03C91B1E0A8E00C91B1E03D +:100CD000A9E01C91EAE0FAE00995B1E0A4E02C93C8 +:100CE000B1E0A5E03C93B1E0A3E12C91B1E0A4E137 +:100CF0003C91B1E0A4E00C91B1E0A5E01C91201B77 +:100D0000310BB1E0A3E12C93B1E0A4E13C93B1E05D +:100D1000A4E000E30C93B1E0A5E000E00C93B1E0A7 +:100D2000A8E02C91B1E0A9E03C91B1E0A4E00C91E5 +:100D3000B1E0A5E01C91200F311FB1E0A8E02C9399 +:100D4000B1E0A9E03C93B1E0A4E00C91B1E0A5E0F2 +:100D50001C91B1E0A8E02C91B1E0A9E03C91021710 +:100D6000130771F4B1E0AAE00C9105FF08C0B1E0EF +:100D7000A8E000E20C93B1E0A9E000E00C9305C00C +:100D8000B1E0AAE00C910F7D0C93B1E0A4E00BE080 +:100D90000C93B1E0A5E000E00C93B1E0A1E00C9170 +:100DA0000F7E0C93B1E0A4E00C91B1E0A5E01C91A2 +:100DB000B1E0A1E12C91B1E0A2E13C91021713074F +:100DC00029F4B1E0A1E00C9100610C93B1E0A1E045 +:100DD0000C9104FF84C0B1E0A4E004E60C93B1E000 +:100DE000A5E000E00C93B1E0A4E02C91B1E0A5E017 +:100DF0003C91B1E0A3E10C91B1E0A4E11C91EBE1E5 +:100E0000FAE00995B1E0A8E00C93B1E0A9E01C93E9 +:100E1000B1E0A4E02C91B1E0A5E03C91B1E0A8E004 +:100E20000C91B1E0A9E01C91EAE0FAE00995B1E08B +:100E3000A4E02C93B1E0A5E03C93B1E0A3E12C91B8 +:100E4000B1E0A4E13C91B1E0A4E00C91B1E0A5E0F7 +:100E50001C91201B310BB1E0A3E12C93B1E0A4E184 +:100E60003C93B1E0A4E000E30C93B1E0A5E000E026 +:100E70000C93B1E0A8E02C91B1E0A9E03C91B1E085 +:100E8000A4E00C91B1E0A5E01C91200F311FB1E06E +:100E9000A8E02C93B1E0A9E03C93B1E0A4E00C9170 +:100EA000B1E0A5E01C91B1E0A8E02C91B1E0A9E08F +:100EB0003C910217130771F4B1E0AAE00C9105FF11 +:100EC00008C0B1E0A8E000E20C93B1E0A9E000E0C6 +:100ED0000C9305C0B1E0AAE00C910F7D0C93B1E03A +:100EE000A4E00CE00C93B1E0A5E000E00C93B1E0CD +:100EF000A1E00C910F7E0C93B1E0A4E00C91B1E065 +:100F0000A5E01C91B1E0A1E12C91B1E0A2E13C91FE +:100F10000217130729F4B1E0A1E00C9100610C93D2 +:100F2000B1E0A1E00C9104FF84C0B1E0A4E00AE0CC +:100F30000C93B1E0A5E000E00C93B1E0A4E02C91AB +:100F4000B1E0A5E03C91B1E0A3E10C91B1E0A4E1F6 +:100F50001C91EBE1FAE00995B1E0A8E00C93B1E057 +:100F6000A9E01C93B1E0A4E02C91B1E0A5E03C9194 +:100F7000B1E0A8E00C91B1E0A9E01C91EAE0FAE050 +:100F80000995B1E0A4E02C93B1E0A5E03C93B1E079 +:100F9000A3E12C91B1E0A4E13C91B1E0A4E00C917B +:100FA000B1E0A5E01C91201B310BB1E0A3E12C9333 +:100FB000B1E0A4E13C93B1E0A4E000E30C93B1E024 +:100FC000A5E000E00C93B1E0A8E02C91B1E0A9E02D +:100FD0003C91B1E0A4E00C91B1E0A5E01C91200FA0 +:100FE000311FB1E0A8E02C93B1E0A9E03C93B1E05F +:100FF000A4E00C91B1E0A5E01C91B1E0A8E02C9137 +:10100000B1E0A9E03C910217130771F4B1E0AAE046 +:101010000C9105FF08C0B1E0A8E000E20C93B1E03C +:10102000A9E000E00C9305C0B1E0AAE00C910F7DAF +:101030000C93B1E0A4E00DE00C93B1E0A5E000E07A +:101040000C93B1E0A1E00C910F7E0C93B1E0A4E011 +:101050000C91B1E0A5E01C91B1E0A1E12C91B1E0CF +:10106000A2E13C910217130729F4B1E0A1E00C9131 +:1010700000610C93B1E0A1E00C9104FF62C0B1E00B +:10108000A4E001E00C93B1E0A5E000E00C93B1E036 +:10109000A4E02C91B1E0A5E03C91B1E0A3E10C917A +:1010A000B1E0A4E11C91EBE1FAE00995B1E0A8E020 +:1010B0000C93B1E0A9E01C93B1E0A4E02C91B1E065 +:1010C000A5E03C91B1E0A8E00C91B1E0A9E01C9151 +:1010D000EAE0FAE00995B1E0A4E02C93B1E0A5E0E4 +:1010E0003C93B1E0A3E12C91B1E0A4E13C91B1E0EB +:1010F000A4E00C91B1E0A5E01C91201B310BB1E004 +:10110000A3E12C93B1E0A4E13C93B1E0A4E000E3BF +:101110000C93B1E0A5E000E00C93B1E0A8E02C91C5 +:10112000B1E0A9E03C91B1E0A4E00C91B1E0A5E010 +:101130001C91200F311FB1E0A8E02C93B1E0A9E091 +:101140003C93B1E0A4E00EE00C93B1E0A5E000E038 +:101150000C93B1E0A4E00C91B1E0A5E01C91B1E0EA +:10116000A1E12C91B1E0A2E13C910217130741F4F7 +:10117000B1E0A8E00DE00C93B1E0A9E000E00C9331 +:10118000B1E0A4E00FE00C93B1E0A5E000E00C9327 +:10119000B1E0A4E00C91B1E0A5E01C91B1E0A1E1C7 +:1011A0002C91B1E0A2E13C910217130741F4B1E0A8 +:1011B000A8E00AE00C93B1E0A9E000E00C93B1E0F4 +:1011C000A1E10C91B1E0A2E11C9120E030E0021716 +:1011D00013070CF42CC0B1E0A1E00C9100610C935A +:1011E000B1E0A1E00C9104FF06C0B1E0A8E00C91D1 +:1011F000B0E0ACE90C93B1E0A1E00C910F7E0C9350 +:10120000B0E0ABE90C9105FD05C0B1E0A1E00C91A7 +:1012100000610C93B1E0AFE00C91B1E0A0E11C9152 +:10122000039509F413951C93B1E0AFE00C93B1E082 +:10123000A1E00C910B7F0C93B1E0AFE00C91B1E019 +:10124000A0E11C9120E130E0021713072CF4B1E07B +:10125000A1E00C9104600C93B1E0A1E00C91B1E02D +:10126000A1E01C9101FF1B7F01FD14601C93B1E004 +:10127000A1E00C9102FF08C0B1E0A5E108E70C93E2 +:10128000B1E0A6E100E00C93B1E0A1E00C91B1E087 +:10129000A1E01C9101FF1B7F01FD14601C93B1E0D4 +:1012A000A1E00C9102FF1EC0B1E0A7E10C91B1E0FA +:1012B000A8E11C9127EC30E00217130794F4B1E089 +:1012C000A7E10C91B1E0A8E11C91039509F41395F5 +:1012D0001C93B1E0A7E10C93B1E0A1E00C910B7F6E +:1012E0000C9308C0B1E0A7E100E00C93B1E0A8E1E5 +:1012F00000E00C93B1E0A1E00C91B1E0A1E01C9101 +:1013000002FF1F7E02FD10611C93B1E0AAE00C9168 +:1013100006FF05C0B1E0A1E00C910B7F0C93B1E09A +:10132000A1E00C91B1E0AAE01C9104FF1F7B04FD39 +:1013300010641C93B1E0A1E00C9102FF06C0B1E083 +:10134000A5E10C91B0E0ACE90C93B1E0A1E00C9107 +:101350000B7F0C93B0E0ABE90C9105FD05C0B1E04B +:10136000A1E00C9104600C93B1E0A1E00C91B1E01C +:10137000A1E01C9101FF1B7F01FD14601C93B1E0F3 +:10138000A1E00C9102FF19C0B1E0A1E00C910B7F2C +:101390000C93B0E0ABE90C9107FF0FC0B1E0A1E006 +:1013A0000C9104600C93B0E0ACE90C91B1E0A9E1C0 +:1013B0000C93B1E0AAE100E00C93B1E0A8E001E6F3 +:1013C0000C93B1E0A9E000E00C93B1E0A9E10C912D +:1013D000B1E0AAE11C91B1E0A8E02C91B1E0A9E054 +:1013E0003C910217130709F405C0B1E0A1E00C918C +:1013F0000B7F0C93B1E0A1E00C9102FF08C0B1E0BB +:10140000A2E000E00C93B1E0A3E000E00C93E1E97E +:10141000F0E00994551B441B60E110F4400F511F8C +:1014200020FD401B20FD510B55954795379527957D +:101430006A9599F70895D12ED32617FF04C0109509 +:1014400000950F5F1F4F37FF04C0309520952F5F29 +:101450003F4FEE24FF1841E1001F111F4A9539F458 +:10146000D7FE04C0109500950F5F1F4F0895EE1C26 +:10147000FF1CE21AF30A20F4E20EF31E8894ECCF6C +:041480000894EACF13 +:00000001FF diff --git a/ldmicro/reg/expected/contacts.hex b/ldmicro/reg/expected/contacts.hex new file mode 100644 index 0000000..5c653b7 --- /dev/null +++ b/ldmicro/reg/expected/contacts.hex @@ -0,0 +1,21 @@ +:020000040000FA +:100000008A110A1208280000000000000000000009 +:10001000283084005830A0008001840AA00B0C28EE +:10002000103095002730960000308E0000308F0091 +:10003000013090000B309700831686309F008312AA +:10004000003085008316DF30850083120030860083 +:100050008316FF3086008312003087008316FC3041 +:10006000870083120C1D32280C116400A914A918F2 +:100070002915A91C291105183E2829112919071429 +:10008000291D0710A9182915A91C2911A911291919 +:100090002916291D291285184E282912291E512892 +:1000A000A91529192916291D2912051958282912B7 +:1000B000291E5B28A915A9192915A91D2911291D72 +:1000C00062288516A9182915A91C291185196928DE +:1000D0002911051E6C282911A91229192917291D72 +:1000E0002913291F74288512291F7728A916291971 +:1000F0002917291D2913291F7F2887108028871475 +:10010000291F8328A916A91A2915A91E29118A01B0 +:02011000322893 +:02400E00723FFF +:00000001FF diff --git a/ldmicro/reg/expected/integers.hex b/ldmicro/reg/expected/integers.hex new file mode 100644 index 0000000..1e270a7 --- /dev/null +++ b/ldmicro/reg/expected/integers.hex @@ -0,0 +1,134 @@ +:1000000022C0189518951895189518951895189553 +:100010001895189518951895189518951895189578 +:100020001895189518951895189518951895189568 +:100030001895189518951895189518951895189558 +:10004000189518951895B0E0AEE504E00C93B0E073 +:10005000ADE50FEF0C93B5E0A0E000E020E034E068 +:10006000A150B0400C93215030402223C9F73323D4 +:10007000B9F7B0E0AAE304E00C93B0E0ABE300E032 +:100080000C93B0E0A7E300E00C93B0E0A8E301E03C +:100090000C93B0E0A4E300E00C93B0E0A5E300E033 +:1000A0000C93B0E0A1E300E40C93B0E0A2E300E025 +:1000B0000C93B0E0A6E200E00C93B0E0A7E200E011 +:1000C0000C93B0E0AFE400E00C93B0E0AEE40AE0E3 +:1000D0000C93B0E0ABE404EF0C93B0E0AAE402E2CE +:1000E0000C93B0E0A9E500E40C93B0E0A8E50C9116 +:1000F00006FFFBCFB0E0A8E50C9100640C93A89537 +:10010000B1E0A1E00C9102600C93B1E0A1E00C9190 +:10011000B1E0A1E01C9101FF1B7F01FD14601C9365 +:10012000B1E0A1E00C91077F0C93B1E0A1E00C914C +:10013000B1E0A1E01C9102FF1F7E02FD10611C9343 +:10014000B0E0A6E30C9100FD05C0B1E0A1E00C9188 +:100150000F7E0C93B1E0A1E00C9104FF08C0B1E068 +:10016000A2E00BE20C93B1E0A3E005E00C93B1E058 +:10017000A1E00C9104FF05C0B1E0A1E00C91086082 +:100180000C93B1E0A1E00C91B1E0A1E01C9102FF61 +:100190001F7E02FD10611C93B0E0A6E30C9100FFEE +:1001A00005C0B1E0A1E00C910F7E0C93B1E0A1E09D +:1001B0000C9104FF08C0B1E0A2E004EF0C93B1E0A1 +:1001C000A3E00FEF0C93B1E0A1E00C9104FF05C098 +:1001D000B1E0A1E00C9108600C93B1E0A1E00C91BA +:1001E000B1E0A1E01C9103FF1B7F03FD14601C9391 +:1001F000B1E0A1E00C91B1E0A1E01C9101FF1B7FF7 +:1002000001FD14601C93B1E0A1E00C910F7D0C93F3 +:10021000B1E0A1E00C91B1E0A1E01C9102FF1F7BD5 +:1002200002FD10641C93B1E0A1E00C9106FF1CC01C +:10023000B1E0A4E008EE0C93B1E0A5E003E00C937C +:10024000B1E0A2E02C91B1E0A3E03C91B1E0A4E0E8 +:100250000C91B1E0A5E01C91200F311FB1E0A6E0A8 +:100260002C93B1E0A7E03C93B1E0A1E00C9106FF34 +:1002700005C0B1E0A1E00C9100620C93B1E0A1E0F7 +:100280000C91B1E0A1E01C9102FF1F7B02FD106404 +:100290001C93B1E0A1E00C9106FF1CC0B1E0A4E00A +:1002A00005E00C93B1E0A5E000E00C93B1E0A2E022 +:1002B0002C91B1E0A3E03C91B1E0A4E00C91B1E05D +:1002C000A5E01C91201B310BB1E0A8E02C93B1E01C +:1002D000A9E03C93B1E0A1E00C9106FF05C0B1E0BC +:1002E000A1E00C9100620C93B1E0A1E00C91B1E0AF +:1002F000A1E01C9102FF1F7B02FD10641C93B1E082 +:10030000A1E00C9106FF1DC0B1E0A4E003E00C9356 +:10031000B1E0A5E000E00C93B1E0A2E02C91B1E0E7 +:10032000A3E03C91B1E0A4E00C91B1E0A5E01C9108 +:10033000ECEEF3E00995B1E0AAE02C93B1E0ABE07C +:100340003C93B1E0A1E00C9106FF05C0B1E0A1E053 +:100350000C9100620C93B1E0A1E00C91B1E0A1E03E +:100360001C9102FF1F7B02FD10641C93B1E0A1E011 +:100370000C9106FF1DC0B1E0A4E003E00C93B1E0D6 +:10038000A5E000E00C93B1E0A4E02C91B1E0A5E081 +:100390003C91B1E0AAE00C91B1E0ABE01C91EDEF33 +:1003A000F3E00995B1E0ACE00C93B1E0ADE01C9353 +:1003B000B1E0A1E00C9106FF05C0B1E0A1E00C9115 +:1003C00000620C93B1E0A1E00C91B1E0A1E01C91BE +:1003D00005FF1B7F05FD14601C93B1E0A1E00C91AB +:1003E000B1E0A1E01C9101FF1B7F01FD14601C9393 +:1003F000B1E0A1E00C910F770C93B1E0A1E00C917A +:10040000B1E0AEE01C9102FF1E7F02FD11601C9363 +:10041000B1E0A4E00BE20C93B1E0A5E005E00C93A1 +:10042000B1E0A2E00C91B1E0A3E01C91B1E0A4E046 +:100430002C91B1E0A5E03C910217130709F405C027 +:10044000B1E0AEE00C910E7F0C93B1E0AEE00C9108 +:1004500000FF05C0B1E0A1E00C9100680C93B1E091 +:10046000A1E00C91B1E0AEE01C9102FF1E7F02FD05 +:1004700011601C93B1E0AEE00C9100FF05C0B1E04B +:10048000A1E00C9100680C93B1E0A1E00C91B1E007 +:10049000A1E01C9107FF1B7F07FD14601C93B1E0D6 +:1004A000AEE00C910D7F0C93B1E0A1E00C91B1E0B6 +:1004B000AEE01C9102FF1B7F02FD14601C93B1E0B3 +:1004C000A4E000E00C93B1E0A5E000E00C93B1E003 +:1004D000A4E00C91B1E0A5E01C91B1E0A6E02C9164 +:1004E000B1E0A7E03C91201731070CF405C0B1E062 +:1004F000AEE00C910B7F0C93B1E0AEE00C9102FFEB +:1005000005C0B1E0AEE00C9102600C93B1E0A1E057 +:100510000C91B1E0AEE01C9102FF1B7F02FD146064 +:100520001C93B1E0A4E006E20C93B1E0A5E005E085 +:100530000C93B1E0A8E00C91B1E0A9E01C91B1E00E +:10054000A4E02C91B1E0A5E03C91201731072CF4F8 +:10055000B1E0AEE00C910B7F0C93B1E0AEE00C91FA +:1005600002FF05C0B1E0AEE00C9102600C93B1E077 +:10057000A1E00C91B1E0AEE01C9102FF1B7F02FDF7 +:1005800014601C93B1E0AEE00C9102FF05C0B1E035 +:10059000AEE00C9102600C93B1E0AEE00C91B1E0E2 +:1005A000A1E01C9101FF1B7F01FD14601C93B1E0D1 +:1005B000AEE00C91077F0C93B1E0A1E00C91B1E0AB +:1005C000AEE01C9102FF1F7E02FD10611C93B1E0A2 +:1005D000A4E000E20C93B1E0A5E00EE40C93B1E0DE +:1005E000A6E00C91B1E0A7E01C91B1E0A4E02C9151 +:1005F000B1E0A5E03C91201731070CF405C0B1E053 +:10060000AEE00C910F7E0C93B1E0AEE00C9104FFD4 +:1006100005C0B1E0AEE00C9108600C93B1E0A1E040 +:100620000C91B1E0AEE01C9102FF1F7E02FD106153 +:100630001C93B1E0A4E001E80C93B1E0A5E00FE069 +:100640000C93B1E0A4E00C91B1E0A5E01C91B1E005 +:10065000AAE02C91B1E0ABE03C91201731072CF4DB +:10066000B1E0AEE00C910F7E0C93B1E0AEE00C91E6 +:1006700004FF05C0B1E0AEE00C9108600C93B1E05E +:10068000A1E00C91B1E0AEE01C9102FF1F7E02FDE3 +:1006900010611C93B1E0AEE00C910F7E0C93B1E0C1 +:1006A000AEE00C9104FF05C0B1E0AEE00C91086033 +:1006B0000C93B1E0AEE00C91B1E0A1E01C9103FF1E +:1006C0001B7F03FD14601C93B1E0A1E00C91B0E02E +:1006D000ABE31C9102FF1B7F02FD14601C93B1E091 +:1006E000A1E00C91B1E0A1E01C9101FF1B7F01FD95 +:1006F00014601C93B1E0A4E00CED0C93B1E0A5E014 +:100700000FEF0C93B1E0AAE00C91B1E0ABE01C91CB +:10071000B1E0A4E02C91B1E0A5E03C9102171307F1 +:1007200029F4B1E0A1E00C910B7F0C93B1E0A4E0BF +:1007300000E00C93B1E0A5E000E00C93B1E0A2E092 +:100740000C91B1E0A3E01C91B1E0A4E02C91B1E0E8 +:10075000A5E03C91201731070CF405C0B1E0A1E001 +:100760000C910B7F0C93B1E0A1E00C9102FF1EC035 +:10077000B1E0AFE00C91B1E0A0E11C9123E130E0E9 +:100780000217130794F4B1E0AFE00C91B1E0A0E1DF +:100790001C91039509F413951C93B1E0AFE00C9301 +:1007A000B1E0A1E00C910B7F0C9308C0B1E0AFE089 +:1007B00000E00C93B1E0A0E100E00C93B1E0A1E017 +:1007C0000C91B0E0A2E31C9102FF1F7B02FD1064BC +:1007D0001C93E5E7F0E00994551B441B60E110F41D +:1007E000400F511F20FD401B20FD510B5595479593 +:1007F000379527956A9599F70895D12ED32617FF37 +:1008000004C0109500950F5F1F4F37FF04C030954F +:1008100020952F5F3F4FEE24FF1841E1001F111F6D +:100820004A9539F4D7FE04C0109500950F5F1F4F0D +:100830000895EE1CFF1CE21AF30A20F4E20EF31EE8 +:080840008894ECCF0894EACF84 +:00000001FF diff --git a/ldmicro/reg/expected/misc-ops.hex b/ldmicro/reg/expected/misc-ops.hex new file mode 100644 index 0000000..c3b7003 --- /dev/null +++ b/ldmicro/reg/expected/misc-ops.hex @@ -0,0 +1,69 @@ +:020000040000FA +:100000008A110A1208280000000000000000000009 +:10001000283084005830A0008001840AA00B0C28EE +:10002000103095002730960000308E0000308F0091 +:10003000013090000B309700831686309F008312AA +:10004000003085008316FD30850083120030860065 +:100050008316FF3086008312003087008316FD3040 +:10006000870083120C1D32280C116400A914A918F2 +:100070002915A91C291105183E282911A91842285B +:10008000A91446282919A914291DA910A918291548 +:10009000A91C2911A9194D282911291D64280030EE +:1000A0002B0203195A28A00020092B05A006A01B2B +:1000B0005F28632831302A02031C5F286328AA0FB7 +:1000C0006228AB0A291168280030AA000030AB0072 +:1000D000291A6E283130AC000030AD0029162919DC +:1000E000862800302D0203197C28A00020092D0548 +:1000F000A006A01B8128852831302C02031C8128F2 +:100100008528AC0F8428AD0A29158A280030AC0058 +:100110000030AD00291D8E28A9118F28A915A91816 +:100120002915A91C2911A91996282911291DB228B8 +:10013000A91AB2283008AE003108AF003208B0006A +:100140003308B1003408B2003508B3003608B400F3 +:100150003708B5003808B6003908B7003A08B800C3 +:100160003B08B9002919A916291DA912A918291592 +:10017000A91C291129132919A917291DA913A91F78 +:10018000D82851309F00831680309F00831206309C +:10019000A100A10BC9281F151F19CC281E08BD00DE +:1001A00083161E088312BC00831686309F008312BC +:1001B000A91FDB2829172919A917291DA913A91F68 +:1001C000E5283C08BA003D08BB00A91FE82829170C +:1001D000291B2915291F2911A9182915A91C29111D +:1001E0003E102919BE14291DBE10A919F828BE10E9 +:1001F000BE1C14293E191429BF0FFF28C00A003065 +:10020000400203190A29A00020094005A006A01BEE +:100210000F29102905303F02031C0F29102914292A +:100220000030BF000030C000BE183E15BE1C3E119D +:10023000BE1C1B293E142919BE14291DBE10BE1C4C +:1002400071290030C1000030C2003F084102031D87 +:10025000312940084202031D31290A30C300003011 +:10026000C4000130C1000030C2003F084102031D3C +:10027000412940084202031D41294630C300003095 +:10028000C4000230C1000030C2003F084102031D1B +:10029000512940084202031D51295030C30000304B +:1002A000C4000330C1000030C2003F084102031DFA +:1002B000612940084202031D61294630C300003015 +:1002C000C4000430C1000030C2003F084102031DD9 +:1002D000712940084202031D71290A30C300003011 +:1002E000C400BE1C74293E142919BE14291DBE1059 +:1002F000BE1C9E294308A000A1016430A200A301F6 +:1003000001308A00BB2101308A002308A1002208A5 +:10031000A0006430A200A30101308A00D221013084 +:100320008A0020089B00BE199E29BE1583166330E3 +:10033000920083120C309D0004309200BE1CA12953 +:100340003E143E1829153E1C2911A9182915A91C6F +:100350002911A918AD29A914B1292919A914291DF0 +:10036000A910A9182915A91C291129198514291DB5 +:1003700085108A013228A501A4010310A30CA20C48 +:100380001030A600031CCA292008A4070318A50AD8 +:100390002108A5070310A50CA40CA30CA20CA60B06 +:1003A000C229080021082306A700A31FDC29A209EF +:1003B000A309A20A0319A30AA11FE329A009A109FD +:1003C000A00A0319A10AA501A40103101130A60077 +:1003D000A00DA10DA6030319012AA40DA50D220845 +:1003E000A402031CA5032308A502A51FFF292208B8 +:1003F000A4070318A50A2308A5070310E829031476 +:10040000E829A71F0800A009A109A00A0319A10A49 +:020410000800E2 +:02400E00723FFF +:00000001FF diff --git a/ldmicro/reg/expected/pic16-hw.hex b/ldmicro/reg/expected/pic16-hw.hex new file mode 100644 index 0000000..e966538 --- /dev/null +++ b/ldmicro/reg/expected/pic16-hw.hex @@ -0,0 +1,189 @@ +:020000040000FA +:100000008A110A1208280000000000000000000009 +:10001000283084005830A0008001840AA00B0C28EE +:10002000103095002730960000308E0000308F0091 +:10003000013090000B309700831686309F008312AA +:10004000003085008316FF30850083120030860063 +:100050008316FF3086008312003087008316FD3040 +:1000600087008312003088008316FF3088008312D7 +:1000700000308900831607308900831283161930F7 +:1000800099008312831620309800831290309800D4 +:100090000C1D48280C116400A914A9182915A91CC5 +:1000A0002911291DD928A91989282912831603176E +:1000B0008C186F2883120313291C722803178D0ACA +:1000C0000313280803178C0083168C130C15553066 +:1000D0008D00AA308D008C14831203132910831213 +:1000E00003132916291A8928A915031700308D0032 +:1000F00083168C130C1483120C080313AA00031725 +:1001000001308D0083168C130C1483120C0803131A +:10011000AB002912831603178C18A328831203132C +:10012000291CA62803178D0A0313280803178C001F +:1001300083168C130C1555308D00AA308D008C144D +:10014000831203132910831203132916291AD9289D +:10015000031700308D0083168C130C1483120C08C7 +:100160000313AC00031701308D0083168C130C149D +:1001700083120C080313AD002C082A02031DC528A6 +:100180002D082B02031DC528D92829142B08A800E7 +:10019000031700308D0003132A0803178C00831601 +:1001A0008C130C1555308D00AA308D008C148312E1 +:1001B0000313A9182915A91C2911291DF62849304E +:1001C0009F00831680309F0083120630A100A10B90 +:1001D000E7281F151F19EA281E08AF0083161E08FE +:1001E0008312AE00831686309F008312A91829154A +:1001F000A91C2911A91229192917291D2913051824 +:1002000002292913291F0529A91629192917291D8A +:1002100029130030B0000230B1003109A1002F05D0 +:10022000A0002F08A104A10931082F0203192129D8 +:10023000A105A200220920052104A206A21B26294D +:10024000272930082E02031C262927292913291FB4 +:100250002A29A916A91A2915A91E29112919291609 +:10026000291D2912A91F35292911291AA917291E63 +:10027000A913291D4A290130B0000030B1002A0815 +:100280003007AA002010031820142B083107AB00F8 +:100290002018AB0AA9182915A91C291132102919EF +:1002A000B214291DB2100A30B0000030B10031097B +:1002B000A1002B05A0002B08A104A10931082B02E5 +:1002C00003196B29A105A200220920052104A20619 +:1002D000A21B7029712930082A02031C7029712978 +:1002E0007229B210B21C78291430B3000030B40067 +:1002F000B21C7B2932142919B214291DB2100A30FC +:10030000B0000030B1003109A1002B05A0002B087E +:10031000A104A10931082B0203199729A105A20004 +:10032000220920052104A206A21B9C299D29300830 +:100330002A02031C9C299D29B210B21CA329323029 +:10034000B3000030B400B21CA62932142919B2142B +:10035000291DB210B21CD0293308A000A1017D30A4 +:10036000A200A30105308A00812501308A002308FC +:10037000A1002208A0006430A200A30105308A0079 +:10038000982501308A0020089B003219D0293215A7 +:1003900083167C30920083120C309D000530920051 +:1003A000B21CD329321432182915321C2911A9186C +:1003B0002915A91C2911291DF2290030360203191B +:1003C000E829A00020093605A006A01BED29F12987 +:1003D00063303502031CED29F129B50FF029B60A67 +:1003E0002911F6290030B5000030B6002919291668 +:1003F000291D2912B21DFD292911291AB215291EFC +:10040000B211291D092A321A092A0030B70000301A +:10041000B80029193216291D32123708B9003808D8 +:10042000BA000030380203191C2AA0002009380540 +:10043000A006A01B212A222A10303702031C212AE1 +:10044000222A262AFF30B900FF30BA002912291EBD +:100450002B2A2C089900291283169818312A831206 +:1004600029168312291E382AFF30B900FF30BA003E +:100470000030AC000030AD002C083902031D482AC2 +:100480002D083A02031D482A7330B0000030B10035 +:100490000130AC000030AD002C083902031D582A91 +:1004A0002D083A02031D582A6130B0000030B10017 +:1004B0000230AC000030AD002C083902031D682A60 +:1004C0002D083A02031D682A7630B0000030B100D2 +:1004D0000330AC000030AD002C083902031D782A2F +:1004E0002D083A02031D782A6530B0000030B100B3 +:1004F0000430AC000030AD002C083902031D882AFE +:100500002D083A02031D882A6430B0000030B10083 +:100510000530AC000030AD002C083902031D982ACC +:100520002D083A02031D982A2030B0000030B10097 +:100530000630AC000030AD002C083902031DA82A9B +:100540002D083A02031DA82A3D30B0000030B1004A +:100550000730AC000030AD002C083902031DB82A6A +:100560002D083A02031DB82A2030B0000030B10037 +:100570000830AC000030AD0029122C083902031DF0 +:10058000C62A2D083A02031DC62A2916291EF32A57 +:100590002A08BB002B08BC002030B0000030B1009E +:1005A00000302B020319DB2AA00020092B05A0062E +:1005B000A01BE02AF32A00302A02031CE02AF32AB7 +:1005C0002D30B0000030B1000030AC000030AD0084 +:1005D0002A082C02BB002010031820142B082D021F +:1005E000BC00201CBC030930AC000030AD00291257 +:1005F0002C083902031D012B2D083A02031D012B83 +:100600002916291E542BB2161030AC002730AD002D +:100610003B08A0003C08A1002C08A2002D08A30064 +:1006200005308A00982503308A002008B000210890 +:10063000B1002C08A0002D08A1003008A20031084C +:10064000A30005308A00812503308A002208AC000F +:100650002308AD002C083B02BB0020100318201417 +:100660002D083C02BC00201CBC033030AC00003024 +:10067000AD0030082C07B0002010031820143108FA +:100680002D07B1002018B10A2C083002031D532B8E +:100690002D083102031D532BB21E522B2030B00007 +:1006A0000030B100542BB2120A30AC000030AD0063 +:1006B00029122C083902031D622B2D083A02031D52 +:1006C000622B2916291EB42BE830AC000330AD0094 +:1006D0003B08A0003C08A1002C08A2002D08A300A4 +:1006E00005308A00982503308A002008B0002108D0 +:1006F000B1002C08A0002D08A1003008A20031088C +:10070000A30005308A00812503308A002208AC004E +:100710002308AD002C083B02BB0020100318201456 +:100720002D083C02BC00201CBC033030AC00003063 +:10073000AD0030082C07B000201003182014310839 +:100740002D07B1002018B10A2C083002031DB32B6D +:100750002D083102031DB32BB21EB22B2030B00086 +:100760000030B100B42BB2120B30AC000030AD0041 +:1007700029122C083902031DC22B2D083A02031D31 +:10078000C22B2916291E142C6430AC000030AD0099 +:100790003B08A0003C08A1002C08A2002D08A300E3 +:1007A00005308A00982503308A002008B00021080F +:1007B000B1002C08A0002D08A1003008A2003108CB +:1007C000A30005308A00812503308A002208AC008E +:1007D0002308AD002C083B02BB0020100318201496 +:1007E0002D083C02BC00201CBC033030AC000030A3 +:1007F000AD0030082C07B000201003182014310879 +:100800002D07B1002018B10A2C083002031D132C4B +:100810002D083102031D132CB21E122C2030B00003 +:100820000030B100142CB2120C30AC000030AD001E +:1008300029122C083902031D222C2D083A02031D0F +:10084000222C2916291E742C0A30AC000030AD0071 +:100850003B08A0003C08A1002C08A2002D08A30022 +:1008600005308A00982504308A002008B00021084D +:10087000B1002C08A0002D08A1003008A20031080A +:10088000A30005308A00812504308A002208AC00CC +:100890002308AD002C083B02BB00201003182014D5 +:1008A0002D083C02BC00201CBC033030AC000030E2 +:1008B000AD0030082C07B0002010031820143108B8 +:1008C0002D07B1002018B10A2C083002031D732C2B +:1008D0002D083102031D732CB21E722C2030B00083 +:1008E0000030B100742CB2120D30AC000030AD00FD +:1008F00029122C083902031D822C2D083A02031DEF +:10090000822C2916291EC42C0130AC000030AD0009 +:100910003B08A0003C08A1002C08A2002D08A30061 +:1009200005308A00982504308A002008B00021088C +:10093000B1002C08A0002D08A1003008A200310849 +:10094000A30005308A00812504308A002208AC000B +:100950002308AD002C083B02BB0020100318201414 +:100960002D083C02BC00201CBC033030AC00003021 +:10097000AD0030082C07B0002010031820143108F7 +:100980002D07B1002018B10A0E30AC000030AD00C8 +:100990002C083902031DD42C2D083A02031DD42C37 +:1009A0000D30B0000030B1000F30AC000030AD00B1 +:1009B0002C083902031DE42C2D083A02031DE42CF7 +:1009C0000A30B0000030B10000303A020319EF2CB9 +:1009D000A00020093A05A006A01BF42CF52C00303D +:1009E0003902031CF42CF52C042D2916291EFA2C8F +:1009F00030089900291283169818002D83122916A1 +:100A00008312B70F042DB80A2911003038020319D8 +:100A1000102DA00020093805A006A01B152D162DAD +:100A200010303702031C152D162D2915A91829156C +:100A3000A91C2911291D202D7830BD000030BE00D1 +:100A4000A9182915A91C2911291D3B2D0030400288 +:100A50000319312DA00020094005A006A01B362D4A +:100A60003A2DC7303F02031C362D3A2DBF0F392DCA +:100A7000C00A29113F2D0030BF000030C0002919E5 +:100A80002916291D2912321F462D2911291A32171C +:100A9000291E3213291D4E2D3D0899002911831658 +:100AA0009818542D831229158312A9182915A91CE9 +:100AB0002911291D6B2D29118C1E6B2D1A08C100BF +:100AC000C20129159818672D1819672D6B2D1A0862 +:100AD0001A08181218166130B0000030B100410831 +:100AE0003002031D782D42083102031D782D792D27 +:100AF0002911291D7F2D0030AA000030AB008A018A +:100B00004828A501A4010310A30CA20C1030A600D4 +:100B1000031C902D2008A4070318A50A2108A50787 +:100B20000310A50CA40CA30CA20CA60B882D080086 +:100B300021082306A700A31FA22DA209A309A20A28 +:100B40000319A30AA11FA92DA009A109A00A03192D +:100B5000A10AA501A40103101130A600A00DA10D4A +:100B6000A6030319C72DA40DA50D2208A402031C7A +:100B7000A5032308A502A51FC52D2208A407031855 +:100B8000A50A2308A5070310AE2D0314AE2DA71F39 +:0E0B90000800A009A109A00A0319A10A080083 +:02400E00723FFF +:00000001FF diff --git a/ldmicro/reg/expected/timers-counters.hex b/ldmicro/reg/expected/timers-counters.hex new file mode 100644 index 0000000..7a46571 --- /dev/null +++ b/ldmicro/reg/expected/timers-counters.hex @@ -0,0 +1,119 @@ +:1000000022C0189518951895189518951895189553 +:100010001895189518951895189518951895189578 +:100020001895189518951895189518951895189568 +:100030001895189518951895189518951895189558 +:10004000189518951895B0E0AEE500E10C93B0E076 +:10005000ADE50FEF0C93B1E1A0E000E020E030E16E +:10006000A150B0400C93215030402223C9F73323D4 +:10007000B9F7B0E0AAE300E20C93B0E0ABE300E034 +:100080000C93B0E0A7E300E00C93B0E0A8E300E03D +:100090000C93B0E0A4E300E00C93B0E0A5E300E033 +:1000A0000C93B0E0A1E304E00C93B0E0A2E300E025 +:1000B0000C93B0E0A2E200E00C93B0E0A3E207E012 +:1000C0000C93B0E0A1E600E20C93B0E0A2E600E001 +:1000D0000C93B0E0A4E600E00C93B0E0A5E600E0ED +:1000E0000C93B0E0AFE400E00C93B0E0AEE409E0C4 +:1000F0000C93B0E0ABE40CE90C93B0E0AAE40EE39F +:100100000C93B0E0A7E500E10C93B0E0A6E50C91FC +:1001100004FFFBCFB0E0A6E50C9100610C93A8951D +:10012000B1E0A1E00C9102600C93B1E0A1E00C9170 +:10013000B1E0A1E01C9101FF1B7F01FD14601C9345 +:10014000B1E0A1E00C9103FD05C0B1E0A1E00C918C +:100150000B7F0C93B1E0A1E00C9104FD08C0B1E06D +:10016000A2E009E00C93B1E0A3E000E00C93B1E061 +:10017000A1E00C9100610C93B1E0A1E00C9102FDB3 +:100180001EC0B1E0A2E00C91B1E0A3E01C9129E017 +:1001900030E00217130794F4B1E0A2E00C91B1E053 +:1001A000A3E01C91039509F413951C93B1E0A2E020 +:1001B0000C93B1E0A1E00C9104600C9308C0B1E095 +:1001C000A2E000E00C93B1E0A3E000E00C93B1E00A +:1001D000A1E00C9102FF1EC0B1E0A4E00C91B1E0DF +:1001E000A5E01C9129E030E00217130794F4B1E078 +:1001F000A4E00C91B1E0A5E01C91039509F41395DE +:100200001C93B1E0A4E00C93B1E0A1E00C910B7F52 +:100210000C9308C0B1E0A4E000E00C93B1E0A5E0CD +:1002200000E00C93B1E0A1E00C9102FF06C0B1E048 +:10023000A1E00C91077F0C9305C0B1E0A1E00C9107 +:1002400008600C93B1E0A1E00C91B1E0A1E01C9139 +:1002500001FF1B7F01FD14601C93B1E0A1E00C9134 +:1002600003FD05C0B1E0A1E00C910B7F0C93B0E061 +:10027000A1E20C9102FD05C0B1E0A1E00C910B7F61 +:100280000C93B1E0A1E00C9102FF12C0B1E0A1E03B +:100290000C9105FD0DC0B1E0A6E00C91B1E0A7E026 +:1002A0001C91039509F413951C93B1E0A6E00C93FF +:1002B000B1E0A1E00C91B1E0A1E01C9102FF1F7D33 +:1002C00002FD10621C93B1E0A6E00C91B1E0A7E042 +:1002D0001C9124E130E00217130734F4B1E0A1E0EF +:1002E0000C910B7F0C9305C0B1E0A1E00C91046070 +:1002F0000C93B1E0A8E00C91B1E0A9E01C9127EECD +:1003000033E002171307C4F4B1E0A1E00C9102FF3F +:100310000DC0B1E0A8E00C91B1E0A9E01C910395FB +:1003200009F413951C93B1E0A8E00C93B1E0A1E0AF +:100330000C910B7F0C9305C0B1E0A1E00C9104601F +:100340000C93B1E0A1E00C91B0E0A2E61C9102FF99 +:100350001F7D02FD10621C93B1E0A1E00C91B1E0A1 +:10036000A1E01C9101FF1B7F01FD14601C93B1E013 +:10037000A1E00C9103FD05C0B1E0A1E00C910B7F61 +:100380000C93B0E0A1E20C9100FD05C0B1E0A1E04A +:100390000C910B7F0C93B1E0A1E00C9102FF21C006 +:1003A000B1E0A1E00C9106FD1CC0B1E0AAE001E0C3 +:1003B0000C93B1E0ABE000E00C93B1E0A6E02C912F +:1003C000B1E0A7E03C91B1E0AAE00C91B1E0ABE074 +:1003D0001C91201B310BB1E0A6E02C93B1E0A7E00B +:1003E0003C93B1E0A1E00C91B1E0A1E01C9102FFCF +:1003F0001F7B02FD10641C93B1E0A6E00C91B1E0FC +:10040000A7E01C912AE030E00217130734F4B1E0B2 +:10041000A1E00C910B7F0C9305C0B1E0A1E00C9121 +:1004200004600C93B1E0A1E00C91B0E0A2E31C9158 +:1004300002FF1B7F02FD14601C93B1E0A1E00C9150 +:10044000B1E0A1E01C9101FF1B7F01FD14601C9332 +:10045000B0E0A1E20C9101FD05C0B1E0A1E00C917A +:100460000B7F0C93B1E0A1E00C910F770C93B1E0FE +:10047000A1E00C91B1E0ACE01C9102FF1E7F02FDF7 +:1004800011601C93B1E0ACE00C91B1E0ACE01C91C8 +:1004900000FF1D7F00FD12601C93B1E0ACE00C91E9 +:1004A00002FF05C0B1E0ACE00C910E7F0C93B1E00F +:1004B000ACE00C91B1E0ACE01C9101FF1B7F01FDB1 +:1004C00014601C93B1E0ACE00C9100FF05C0B1E0FA +:1004D000A1E00C9100680C93B1E0A1E00C91B1E0B7 +:1004E000ACE01C9102FF1E7F02FD11601C93B1E085 +:1004F000ACE00C91B1E0ACE01C9100FF1D7F00FD71 +:1005000012601C93B1E0ACE00C9100FD0BC0B1E0B7 +:10051000ACE00C9103FF05C0B1E0ACE00C910160D0 +:100520000C9305C0B1E0ACE00C910E7F0C93B1E0F0 +:10053000ACE00C91B1E0ACE01C9101FF177F01FD34 +:1005400018601C93B1E0ACE00C9100FF05C0B1E075 +:10055000A1E00C9100680C93B1E0A1E00C91B1E036 +:10056000A1E01C9107FF1B7F07FD14601C93B1E005 +:10057000A1E00C9102FF08C0B1E0A8E000E00C93FC +:10058000B1E0A9E000E00C93B1E0A1E00C91B1E092 +:10059000A1E01C9101FF1B7F01FD14601C93B1E0E1 +:1005A000A1E00C9103FD05C0B1E0A1E00C910B7F2F +:1005B0000C93B1E0A1E00C9102FF26C0B1E0ACE0E9 +:1005C0000C9104FD21C0B1E0ADE00C91B1E0AEE0D2 +:1005D0001C91039509F413951C93B1E0ADE00C93C5 +:1005E000B1E0ADE00C91B1E0AEE01C9128E030E06C +:1005F000021713070CF408C0B1E0ADE000E00C9363 +:10060000B1E0AEE000E00C93B1E0A1E00C91B1E00C +:10061000ACE01C9102FF1F7E02FD10611C93B1E053 +:10062000A1E00C91B1E0A1E01C9101FF1B7F01FD55 +:1006300014601C93B1E0AFE003E00C93B1E0A0E1E3 +:1006400000E00C93B1E0ADE00C91B1E0AEE01C91A4 +:10065000B1E0AFE02C91B1E0A0E13C9102171307AB +:1006600009F405C0B1E0A1E00C910B7F0C93B1E05F +:10067000A1E00C91B1E0ACE01C9102FF1D7F02FDF6 +:1006800012601C93B1E0A1E00C9102FD0BC0B1E03F +:10069000ACE00C9105FF05C0B1E0A1E00C91046055 +:1006A0000C9305C0B1E0A1E00C910B7F0C93B1E07D +:1006B000ACE00C91B1E0ACE01C9101FF1F7D01FDAD +:1006C00010621C93B1E0ACE00C9106FD08C0B1E0F3 +:1006D000A1E103E10C93B1E0A2E100E00C93B1E0F1 +:1006E000ACE00C9100640C93B1E0A1E00C9102FD30 +:1006F0001EC0B1E0A1E10C91B1E0A2E11C9123E1A7 +:1007000030E00217130794F4B1E0A1E10C91B1E0DD +:10071000A2E11C91039509F413951C93B1E0A1E1AA +:100720000C93B1E0A1E00C9104600C9308C0B1E01F +:10073000A1E100E00C93B1E0A2E100E00C93B1E094 +:10074000A1E00C91B0E0ABE31C9102FF1F7D02FD24 +:0A07500010621C93E5E8F0E0099444 +:00000001FF diff --git a/ldmicro/reg/go.bat b/ldmicro/reg/go.bat new file mode 100644 index 0000000..5338cea --- /dev/null +++ b/ldmicro/reg/go.bat @@ -0,0 +1 @@ +@perl run-tests.pl diff --git a/ldmicro/reg/run-tests.pl b/ldmicro/reg/run-tests.pl new file mode 100644 index 0000000..91e81b8 --- /dev/null +++ b/ldmicro/reg/run-tests.pl @@ -0,0 +1,33 @@ +#!/usr/bin/perl + +if (not -d 'results/') { + mkdir 'results'; +} + +$c = 0; +for $test () { + $output = $test; + $output =~ s/^tests/results/; + $output =~ s/\.ld$/.hex/; + + unlink $output; + + $cmd = "../ldmicro.exe /c $test $output"; + system $cmd; + $c++; +} + +print "\ndifferences follow:\n"; +@diff = `diff -q results expected`; +for(@diff) { + print " $_"; +} +$fc = scalar @diff; +print "($fc difference(s)/$c)\n"; +if($fc == 0) { + print "pass!\n"; + exit(0); +} else { + print "FAIL\n"; + exit(-1); +} diff --git a/ldmicro/reg/tests/avr-hw.ld b/ldmicro/reg/tests/avr-hw.ld new file mode 100644 index 0000000..7053aa4 --- /dev/null +++ b/ldmicro/reg/tests/avr-hw.ld @@ -0,0 +1,61 @@ +LDmicro0.1 +MICRO=Atmel AVR ATmega128 64-TQFP +CYCLE=10000 +CRYSTAL=4000000 +BAUD=2400 +COMPILED=C:\depot\ldmicro\reg\expected\avr-hw.hex + +IO LIST + Xinc at 2 + Aanalog at 61 +END + +PROGRAM +RUNG + COMMENT The more hardware-oriented ops (PWM, ADC, UART, EEPROM), test for the\r\nAVRs. +END +RUNG + PERSIST saved +END +RUNG + READ_ADC Aanalog +END +RUNG + PARALLEL + CONTACTS Xinc 0 + GEQ Aanalog 512 + END + OSR + ADD saved saved 1 +END +RUNG + PARALLEL + SERIES + LES saved 10 + MOVE duty 20 + END + SERIES + GEQ saved 10 + MOVE duty 50 + END + SET_PWM duty 2000 + END +END +RUNG + TON Tfmtd 1000000 + OSR + FORMATTED_STRING saved 15 115 97 118 101 100 32 61 32 92 45 53 92 114 92 110 +END +RUNG + MOVE char 'x' +END +RUNG + TON Tutx 2000000 + OSR + UART_SEND char +END +RUNG + UART_RECV inchar + EQU inchar 'a' + MOVE saved 0 +END diff --git a/ldmicro/reg/tests/contacts.ld b/ldmicro/reg/tests/contacts.ld new file mode 100644 index 0000000..07dd6a1 --- /dev/null +++ b/ldmicro/reg/tests/contacts.ld @@ -0,0 +1,41 @@ +LDmicro0.1 +MICRO=Microchip PIC16F876 28-PDIP or 28-SOIC +CYCLE=10000 +CRYSTAL=4000000 +BAUD=2400 +COMPILED=C:\depot\ldmicro\reg\expected\contacts.hex + +IO LIST + Xa at 2 + Xb at 3 + Xc at 4 + Xd at 5 + Xe at 6 + Yf at 11 + Yg at 7 + Yh at 12 +END + +PROGRAM +RUNG + COMMENT All types of contacts (NO, NC), and all types of coils (normal, inverted, set,\r\nreset); also test series and parallel combinations. +END +RUNG + CONTACTS Xa 0 + COIL Yf 0 0 0 +END +RUNG + PARALLEL + CONTACTS Xb 0 + CONTACTS Xc 0 + END + COIL Yg 0 1 0 +END +RUNG + CONTACTS Xd 0 + CONTACTS Xe 1 + PARALLEL + COIL Yg 0 0 1 + COIL Yh 1 0 0 + END +END diff --git a/ldmicro/reg/tests/integers.ld b/ldmicro/reg/tests/integers.ld new file mode 100644 index 0000000..d38a597 --- /dev/null +++ b/ldmicro/reg/tests/integers.ld @@ -0,0 +1,61 @@ +LDmicro0.1 +MICRO=Atmel AVR ATmega162 40-PDIP +CYCLE=50000 +CRYSTAL=10000000 +BAUD=2400 +COMPILED=C:\depot\ldmicro\reg\expected\integers.hex + +IO LIST + Xa at 1 + Yno at 16 + Yok at 37 +END + +PROGRAM +RUNG + COMMENT Test integer variable manipulations: move, arithmetic, comparison. Also test\r\na 50 ms cycle time, and the ATmega162 (odd timer register locations). +END +RUNG + PARALLEL + SERIES + CONTACTS Xa 0 + MOVE a 1323 + END + SERIES + CONTACTS Xa 1 + MOVE a -12 + END + END +END +RUNG + PARALLEL + ADD c a 1000 + SUB d a 5 + MUL e a 3 + DIV f e 3 + END +END +RUNG + PARALLEL + EQU a 1323 + SHORT + END + PARALLEL + LES c 0 + LEQ d 1318 + SHORT + END + SHORT + PARALLEL + GRT c 20000 + GEQ e 3969 + OPEN + END + COIL Yok 0 0 0 +END +RUNG + NEQ e -36 + GRT a 0 + TON Ton 1000000 + COIL Yno 0 0 0 +END diff --git a/ldmicro/reg/tests/misc-ops.ld b/ldmicro/reg/tests/misc-ops.ld new file mode 100644 index 0000000..9fff1c4 --- /dev/null +++ b/ldmicro/reg/tests/misc-ops.ld @@ -0,0 +1,53 @@ +LDmicro0.1 +MICRO=Microchip PIC16F876 28-PDIP or 28-SOIC +CYCLE=10000 +CRYSTAL=4000000 +BAUD=2400 +COMPILED=C:\depot\ldmicro\reg\expected\misc-ops.hex + +IO LIST + Xon at 2 + Yalways at 3 + Ain at 4 +END + +PROGRAM +RUNG + COMMENT Little things: shift register, look-up table, master control relay.\r\n +END +RUNG + CONTACTS Xon 0 + MASTER_RELAY +END +RUNG + CONTACTS Rosc 0 + TON Ton 500000 + TOF Tof 500000 + COIL Rosc 1 0 0 +END +RUNG + CONTACTS Rosc 0 + SHIFT_REGISTER reg 7 +END +RUNG + PARALLEL + READ_ADC Ain + MOVE reg0 Ain + END +END +RUNG + PARALLEL + SERIES + CONTACTS Rosc 0 + CTC Ci 4 + END + LOOK_UP_TABLE duty Ci 5 0 10 70 80 70 10 + SET_PWM duty 10000 + END +END +RUNG + MASTER_RELAY +END +RUNG + COIL Yalways 0 0 0 +END diff --git a/ldmicro/reg/tests/pic16-hw.ld b/ldmicro/reg/tests/pic16-hw.ld new file mode 100644 index 0000000..9c9ec46 --- /dev/null +++ b/ldmicro/reg/tests/pic16-hw.ld @@ -0,0 +1,61 @@ +LDmicro0.1 +MICRO=Microchip PIC16F877 40-PDIP +CYCLE=10000 +CRYSTAL=4000000 +BAUD=2400 +COMPILED=C:\depot\ldmicro\reg\expected\pic-hw.hex + +IO LIST + Xinc at 2 + Aanalog at 3 +END + +PROGRAM +RUNG + COMMENT The more hardware-oriented ops (PWM, ADC, UART, EEPROM), test for the\r\nPIC16s. +END +RUNG + PERSIST saved +END +RUNG + READ_ADC Aanalog +END +RUNG + PARALLEL + CONTACTS Xinc 0 + GEQ Aanalog 512 + END + OSR + ADD saved saved 1 +END +RUNG + PARALLEL + SERIES + LES saved 10 + MOVE duty 20 + END + SERIES + GEQ saved 10 + MOVE duty 50 + END + SET_PWM duty 2000 + END +END +RUNG + TON Tfmtd 1000000 + OSR + FORMATTED_STRING saved 15 115 97 118 101 100 32 61 32 92 45 53 92 114 92 110 +END +RUNG + MOVE char 'x' +END +RUNG + TON Tutx 2000000 + OSR + UART_SEND char +END +RUNG + UART_RECV inchar + EQU inchar 'a' + MOVE saved 0 +END diff --git a/ldmicro/reg/tests/timers-counters.ld b/ldmicro/reg/tests/timers-counters.ld new file mode 100644 index 0000000..867c6ff --- /dev/null +++ b/ldmicro/reg/tests/timers-counters.ld @@ -0,0 +1,57 @@ +LDmicro0.1 +MICRO=Atmel AVR ATmega128 64-TQFP +CYCLE=10000 +CRYSTAL=4000000 +BAUD=2400 +COMPILED=C:\depot\ldmicro\reg\expected\timers-counters.ld + +IO LIST + Xdown at 2 + Xres at 3 + Xup at 4 + Ydown at 27 + Ypulse at 46 + Yup at 56 +END + +PROGRAM +RUNG + COMMENT Test all the timers (TON, TOF, RTO) and counters (CTC, CTU, CTD), and the\r\nreset (RES) instruction. Also test one-shots. +END +RUNG + CONTACTS Rosc 0 + TOF Tof 100000 + TON Ton 100000 + COIL Rosc 1 0 0 +END +RUNG + CONTACTS Rosc 0 + CONTACTS Xup 0 + CTU Ccnt 20 + RTO Trto 10000000 + COIL Yup 0 0 0 +END +RUNG + CONTACTS Rosc 0 + CONTACTS Xdown 0 + CTD Ccnt 10 + COIL Ydown 0 0 0 +END +RUNG + CONTACTS Xres 0 + PARALLEL + OSR + OSF + END + RES Trto +END +RUNG + CONTACTS Rosc 0 + CTC Ccirc 7 +END +RUNG + EQU Ccirc 3 + OSF + TOF Tpulse 200000 + COIL Ypulse 0 0 0 +END -- cgit