fixed typos

This commit is contained in:
dekunukem
2022-05-01 17:19:20 +01:00
parent 0d569961a1
commit df97e6b7e7
11 changed files with 560 additions and 571 deletions

View File

Binary file not shown.

View File

@@ -27,20 +27,11 @@ Project File Date: 03/28/2022
<h2>Output:</h2>
*** Using Compiler 'V5.06 update 6 (build 750)', folder: 'C:\Keil_v5\ARM\ARMCC\Bin'
Build target 'ibmpc'
compiling main.c...
../Src/main.c(467): warning: #188-D: enumerated type mixed with another type
HAL_GPIO_WritePin(GAMEPAD_B1_GPIO_Port, GAMEPAD_B1_Pin, !(this_gamepad_event->button_1));
../Src/main.c(468): warning: #188-D: enumerated type mixed with another type
HAL_GPIO_WritePin(GAMEPAD_B2_GPIO_Port, GAMEPAD_B2_Pin, !(this_gamepad_event->button_2));
../Src/main.c(469): warning: #188-D: enumerated type mixed with another type
HAL_GPIO_WritePin(GAMEPAD_B3_GPIO_Port, GAMEPAD_B3_Pin, !(this_gamepad_event->button_3));
../Src/main.c(470): warning: #188-D: enumerated type mixed with another type
HAL_GPIO_WritePin(GAMEPAD_B4_GPIO_Port, GAMEPAD_B4_Pin, !(this_gamepad_event->button_4));
../Src/main.c: 4 warnings, 0 errors
compiling ps2kb.c...
linking...
Program Size: Code=16508 RO-data=428 RW-data=132 ZI-data=2180
Program Size: Code=16496 RO-data=428 RW-data=132 ZI-data=2180
FromELF: creating hex file...
"ibmpc\ibmpc.axf" - 0 Error(s), 4 Warning(s).
"ibmpc\ibmpc.axf" - 0 Error(s), 0 Warning(s).
<h2>Software Packages used:</h2>
@@ -63,7 +54,7 @@ Package Vendor: Keil
<h2>Collection of Component Files used:</h2>
* Component: ARM::CMSIS:CORE:5.3.0
Build Time Elapsed: 00:00:01
Build Time Elapsed: 00:00:02
</pre>
</body>
</html>

View File

@@ -11,7 +11,7 @@
:10009000E7000008E7000008E7000008E7000008A4
:1000A000E7000008B51E0008E7000008E7000008A8
:1000B000E7000008A9270008E7000008E70000089B
:1000C0000348854600F04EF800480047292E0008F6
:1000C0000348854600F04EF8004800471D2E000802
:1000D000080900200448804704480047FEE7FEE77F
:1000E000FEE7FEE7FEE7FEE721220008C100000868
:1000F00030B50B46014600202022012409E00D46C0
@@ -23,7 +23,7 @@
:10015000F6E710B513460A4604461946FFF7F0FFC6
:10016000204610BD064C0125064E05E0E36807CC8D
:100170002B430C3C98471034B442F7D3FFF7A4FF4D
:10018000084200082842000810B5022000F042F89A
:10018000FC4100081C42000810B5022000F042F8B3
:1001900010BD70B50024014620314A78022A03D0F0
:1001A00004218163012416E0026813680E25AB4325
:1001B0001360026813685B085B0013600122056C22
@@ -179,10 +179,10 @@
:100B10006068072109028843E9680843606000F0C3
:100B20002DF86168084A0906090F515CC840074959
:100B300008600020FFF790FE0020F8BD0020024072
:100B40000010024088130000F041000874000020EB
:100B40000010024088130000E441000874000020F7
:100B500001480068704700007400002004480549FF
:100B600000684968044A4905490F515CC84070470C
:100B700074000020001002400042000830B516A3A7
:100B70007400002000100240F441000830B516A3B4
:100B80000FCB89B06C460FC417A30FCB0FC41A4903
:100B90004A680C20144604401848042C05D0184B11
:100BA000082C04D00C2C00D1184609B030BD94029A
@@ -306,7 +306,7 @@
:1013000001F06CFB40425080207A3E49404210710F
:10131000607A5071607B9071A07B1072E07BD0711D
:10132000207C5072607C907237482C31143001F070
:101330005DFF57E0334821793830017061794170A1
:1013300057FF57E0334821793830017061794170A7
:10134000A1798170E179C170057145718571C571AF
:10135000217A0172617A4172A17A8172E17AC17255
:10136000014629481C3001F05BFB3BE001210022D3
@@ -669,14 +669,14 @@
:1029B00000900029F5DC08E00B980B990078491C81
:1029C0000B91109A0F999047761C0199481E01901F
:1029D0000029F1DC6D1C28E70928010009020143E8
:1029E00008B2704700B5014600F096FB411800F0B0
:1029F00093FB8842FBD300BD10B502490860FEF787
:1029E00008B2704700B5014600F090FB411800F0B6
:1029F0008DFB8842FBD300BD10B502490860FEF78D
:102A000083FD10BD0000002013B564230122694638
:102A10000248FEF718FF00981CBD0000840100204A
:102A200070B50D46044600F020F8002801D00120C2
:102A300070BD20780C226168504308182946FDF7C4
:102A40006DFB2078A178401CFDF752FB217000201F
:102A500070BD10B5044681700C20484300F0E4FAC4
:102A500070BD10B5044681700C20484300F0DEFACA
:102A60006060204600F026F810BD10B5044681785D
:102A70000078401CFDF73CFB6078814201D10120C9
:102A800010BD002010BD41780278914201D1002094
@@ -689,31 +689,31 @@
:102AF00000221E4D0121C9032846FDF74CFCA07899
:102B000000282AD0002201213046FDF744FCE0785D
:102B1000002824D00022012189032846FDF73BFC30
:102B2000207AFF25291A032000F0DAFA607A291AA0
:102B3000002000F0D5FAA07A291A022000F0D0FA7D
:102B4000E07A291A012000F0CBFA0648FFF7A6FF29
:102B2000207AFF25291A032000F0D4FA607A291AA6
:102B3000002000F0CFFAA07A291A022000F0CAFA89
:102B4000E07A291A012000F0C5FA0648FFF7A6FF2F
:102B500070BD0122C4E70122CBE70122D3E70122A5
:102B6000D9E7000068000020001400480008004871
:102B700070B50C4C012202212046FDF70CFC0A4DD9
:102B80000122D1032846FDF706FC0122114620460A
:102B9000FDF701FC012291032846FDF7FCFB00F044
:102BA00089FA70BD001400480008004870B544065A
:102BA00083FA70BD001400480008004870B5440660
:102BB000C109640EC901102C24D2214D285D0028C2
:102BC00020D000291FD002281CD11E482300FFF767
:102BD00003FE0817050C170F17171517FF230133EE
:102BE0000246590000F08AFB0AE001F0B9F907E05B
:102BF00010230246202100F077FF01E0FFF7B8FF25
:102BE0000246590000F084FB0AE001F0B3F907E067
:102BF00010230246202100F071FF01E0FFF7B8FF2B
:102C00000120285570BD0128FCD102202855230041
:102C1000FFF7E2FD0805060B050E05051305F1E7B4
:102C200000F0EAFC00F0F8FC70BD01F0E9F970BDBD
:102C300000F0F4FF00F0E2FF70BDFFF799FF70BDF8
:102C200000F0E4FC00F0F2FC70BD01F0E3F970BDCF
:102C300000F0EEFF00F0DCFF70BDFFF799FF70BD04
:102C4000F102002000040048102803D20249085C69
:102C5000012800D000207047F102002070B5154611
:102C60000E46044600F022F8002801D0012070BD75
:102C70002178606846542178A06845542078A1786E
:102C8000401CFDF735FA2170002070BD70B50D466F
:102C900004468170284600F0C7F96060284600F0BD
:102CA000C3F9A060204600F02BF870BD10B50446B3
:102C900004468170284600F0C1F96060284600F0C3
:102CA000BDF9A060204600F02BF870BD10B50446B9
:102CB00081780078401CFDF71BFA6078814201D1D1
:102CC000012010BD002010BD10B543780478A34248
:102CD00001D1012010BD4468E35C0B70816840782D
@@ -721,350 +721,349 @@
:102CF000884204D0A178401CFDF7FAF9617010BD3C
:102D000010B50446002020706070A1786068FDF75F
:102D10001EFAA178A068FDF71AFA10BD38B50D4665
:102D2000FF216A46ED3811703E4C0300FFF754FD59
:102D3000136A643148313A322A2375161616163151
:102D40003131750B310014220121FA2000F0C6FC4C
:102D500000F062FCFA220021AA2050E0207803282B
:102D600005D014220121FE2000F0B8FC55E0142209
:102D70000121FA20F8E714220121FA2000F0AEFC2C
:102D8000002005E014220121FA2000F0A7FC012018
:102D9000607038BD14220121FA2000F09FFC1E2132
:102DA000684636E014220121FA2000F097FC142234
:102DB0000021AB2000F092FC1422002183201EE0B1
:102DC00014220121FA2000F089FC1E21684600F03F
:102DD00095FB0028DDD114220121FA2000F07EFCB1
:102DE00068460078002803D00328D2D8207038BD68
:102DF00014220021207802E014220121EE2000F0AC
:102E00006DFC38BD14220121FA2000F067FC1E2160
:102E1000284600F073FB0028F3D114220121FA2088
:102E2000EDE70000040000201CB56648664C808970
:102E3000A081FDF701FDFFF7BDF9FEF7A3FEFEF748
:102E40004DFFFEF775FFFEF791FFFEF7B9FFFEF7A6
:102E5000DDFF5F485D490160032141605D49C1605C
:102E60008160FDF7A7FC002800D0FEE75848FDF779
:102E7000D3FC00210220019100900B462278564994
:102E800056A0FFF799FC52487430FFF7B5FD00F0EB
:102E900003FAFF250135564E6F0032462B46394660
:102EA000104600F02BFA32462B463946104601F008
:102EB00061F8324610232021104600F015FE022052
:102EC000FFF7C2FE002801D001F04AF8102149485E
:102ED000FFF7DCFE3C481021143000F0A0F93A481E
:102EE00010211C30FFF7B5FD00F0E4F84148202127
:102EF0006038FDF72CF93F4A3548203A1146202327
:102F000040391030FEF75EF9A1893BA0FFF754FC71
:102F100000F0C0F8002812D13BA0FFF74DFC0027BD
:102F200008213046FDF733FA3220FDF756F97F1CB1
:102F30000A2FF5DB012208213046FDF72CFA09277C
:102F4000FF062348FDF768FC0420FFF77DFE0028FC
:102F500009D00121C9033046FDF714FA002802D038
:102F600000F08EFE06E00520FFF76EFE002801D07F
:102F700000F0DAF80120FFF767FE002808D02946A4
:102F80003846FDF7FFF9002802D000F04DFB0CE0B9
:102F90000220FFF759FE002807D029463846FDF7E2
:102FA000F1F9002801D001F04BF80720FFF74CFEA3
:102FB000002801D0FFF78AFD607A0028C1D000F018
:102FC0005BFF0000C0F7FF1F4C00002000300040F6
:102FD000D0000020FF0F0000B941000825730A72DD
:102FE00065762564207625642E25642E25640A00E6
:102FF00000040048C4020020666C6173685F736956
:103000007A653A2025640A004469676974616C2016
:10301000706F74206E6F7420726573706F6E646968
:103020006E67210A00000000F0B50B30C108C9002E
:10303000144F0026144A0FE003688B420BD38B42D7
:1030400005D95C1A4318456830C3083B00E0436863
:10305000136002C004E0021D10680028ECD1304665
:10306000002803D13868002801D00020F0BD064AAE
:1030700006481060064A121AD208D20044C0012045
:103080003860D7E7800000207C0000200C0300207F
:103090000805002010B56423012258210448FDF7DB
:1030A0002BFA002801D0002010BD012010BD000027
:1030B0008400002010B5094C002204212046FDF7B1
:1030C0006AF90120FDF789F8012204212046FDF765
:1030D00062F90120FDF781F810BD000000040048EE
:1030E00003B583B0042802D3FF2005B000BD084912
:1030F0006423085C01210007020E04A802930191D9
:1031000000900B4658210348FDF784FAEDE70000D4
:10311000B541000884000020024800680068406A49
:10312000704700000000002070B52E4C207A00256A
:10313000002807D04D20E0710122E11D2A48FEF74A
:10314000E6FB25722748143000F083F8002806D0EB
:10315000A17A002904D02348143000F085F870BD0E
:103160002049C0220E310D808D700A708279002AAC
:1031700001D0E0220A70027A002A03D00A781023D4
:103180001A430A700022825E4088404200B2030661
:1031900003D50B7808252B430B70430603D50B781A
:1031A00004252B430B70130603D50B7802252B4304
:1031B0000B7053060125002B02DA0B782B430B70A2
:1031C0009206920E80064A70800E88700548143070
:1031D00000F04AF8034903220E310348FEF797FB3B
:1031E000A57270BD4C000020F401002070B50D46A2
:1031F000044600F020F8002801D0012070BD20789E
:103200000C226168504308182946FCF787FF207894
:10321000A178401CFCF76CFF2170002070BD10B538
:10322000044681700C204843FFF7FEFE6060204694
:1032300000F026F810BD10B5044681780078401CD7
:10324000FCF756FF6078814201D1012010BD0020BB
:1032500010BD41780278914201D10020704740684A
:103260000C2251434018704710B50446407821782D
:10327000884204D0A178401CFCF73AFF617010BD71
:1032800010B500210170417081780C2251434068D3
:10329000FCF75DFF10BD000010B510210548FCF7DC
:1032A00056FF012103480222417082700171427170
:1032B000C17110BDF102002070B50F4D6988A8687A
:1032C000FDF760F80446A988E868FDF75BF8012877
:1032D00002D0002809D00AE0012C02D0002C02D034
:1032E00005E0032070BD022070BD012C01D000203C
:1032F00070BD012070BD00000400002010B5054C19
:10330000A0606180E260A38000F076F900F084F9AB
:1033100010BD00000400002010B5094A5378002BAE
:1033200006D01278012A05D0022A06D0092010BD45
:10333000012010BD00F006F810BD00F017F810BD18
:103340000400002010B5532805D9572803D0582869
:1033500001D0032010BD002905D01422002100F067
:10336000BDF9002010BD80210843F6E710B55928AB
:1033700010D2614A145CFF2C7ED0002902D01422A6
:103380000021ABE014220021F02000F0A7F9002872
:1033900073D1F4E7632816D077285AD00246603AF2
:1033A0001F2A6BD8544A5932101860380478FF2C01
:1033B00062D000297ED014220021E02000F08EF996
:1033C00000285AD188E000291CD014220021E020D6
:1033D00000F084F9002850D114220021122000F0BE
:1033E0007DF9002849D114220021E02000F076F96F
:1033F00000287DD1142200217C2000F06FF90028E4
:1034000076D110BD14220021E02000F067F90028D9
:103410006ED114220021F02000F060F9002867D15D
:10342000142200217C2000F059F9002860D11422D8
:103430000021E02000F052F9002859D11422002187
:10344000F02000F04BF9002852D114220021122064
:10345000D3E70029A6D014220021E12000F03EF994
:10346000002845D114220021104600F037F9002829
:103470003ED11422002102E02CE039E03AE077202E
:1034800000F02CF9002833D114220021E12000F0B3
:1034900025F900282CD114220021F02000F01EF97B
:1034A000002825D114220021104600F017F9002829
:1034B0001ED100E014E014220021F02000F00EF9EB
:1034C000002815D114220021772000F007F90028E8
:1034D0000ED110BD022010BD1422012120468CE720
:1034E00014220021E02000F0F9F8002800D149E77B
:1034F000452010BD032010BD3C410008F3B581B04C
:103500000F4600250126FCF74DFF3A4C206107E0ED
:10351000FCF748FF2169401AB84201D30420FEBDE0
:10352000FFF7CAFE0128F3D11220FFF75BFA002251
:103530006188A068FCF72FFF2420FFF753FA0122CF
:103540006188A068FCF727FF1220FFF74BFAA188DB
:10355000E068FCF717FF012800D135437004060C22
:103560001220FFF73FFA00226188A068FCF713FFE2
:103570002420FFF737FA01226188A068FCF70BFFCF
:103580001220FFF72FFAFF2EE1D91220FFF72AFAB7
:1035900000226188A068FCF7FEFE2420FFF722FAD3
:1035A00001226188A068FCF7F6FE1220FFF71AFAE4
:1035B0001220FFF717FA0022A188E068FCF7EBFE63
:1035C00000226188A068FCF7E6FE2420FFF70AFAD3
:1035D00001226188A068FCF7DEFE1220FFF702FAE4
:1035E0000122A188E068FCF7D6FE01980570002052
:1035F000FEBD00000400002010B5064C01226188C9
:10360000A068FCF7C8FE0122A188E068FCF7C3FEB1
:1036100010BD0000040000200248022101700121B9
:10362000417070470400002038B5FFF745FE284C74
:103630000228A07114D0012815D003280FD1221D13
:10364000511E2448FFF740FB002808D12179E0787B
:10365000FFF762FE452836D01E48FFF745FB38BD10
:10366000FFF7CAFF38BDFF216846017018480A21DC
:10367000401CFFF743FF69466078FFF74FFB684641
:103680000478FF2CEED0134820216038FCF75FFD52
:103690001048CD21603801700146203149784170D1
:1036A00081218170E2070121002A00D0C170A207A8
:1036B00000D50171620700D541710122510306480E
:1036C000FCF769FE38BD0120FCF787FD38BD00001E
:1036D0004C000020C402002000080048F8B5154640
:1036E0000E460746FCF75EFE0C4C206107E0FCF737
:1036F00059FE2169401AA84201D30120F8BDFFF705
:10370000DBFD0328F3D1002E03D0AF208000FFF7AC
:1037100069F9384600F004F8F8BD00000400002004
:10372000F8B5474C054601260022A188E068FCF761
:1037300032FE1220FFF756F900226188A068FCF7DC
:103740002AFE2420FFF74EF901226188A068FCF7C9
:1037500022FE1220FFF746F96188A068FCF712FEEE
:10376000002868D00027E80701D0012200E00022ED
:10377000A188E068FCF70FFE1220FFF733F9002262
:103780006188A068FCF707FE2420FFF72BF90122CF
:103790006188A068FCF7FFFD1220FFF723F961881C
:1037A000A068FCF7EFFD002845D0E807C00F4640B1
:1037B0006D087F1C082FD6DB002E01D0012200E00F
:1037C0000022A188E068FCF7E6FD1220FFF70AF965
:1037D00000226188A068FCF7DEFD2420FFF702F9D3
:1037E00001226188A068FCF7D6FD1220FFF7FAF8E5
:1037F0006188A068FCF7C6FD00281CD00122A188C2
:10380000E068FCF7C8FD1220FFF7ECF800226188A1
:10381000A068FCF7C0FD2420FFF7E4F801226188CE
:10382000A068FCF7B8FD1220FFF7DCF8C820FFF70E
:10383000D9F80020F8BDFFF7DFFE4520F8BD0000F5
:103840000400002010B5164CE1896069FCF79AFD70
:10385000012805D1A1892069FCF794FD012806D033
:10386000E1896069FCF78EFD012802D007E00320A2
:1038700010BDA1892069FCF785FD002806D0E189EB
:103880006069FCF77FFD002802D007E0022010BD30
:10389000A1892069FCF776FD0128F8D0002010BD31
:1038A0001800002070B5294E0546B0790C46012855
:1038B0003BD0022838D03078002844D00821601C42
:1038C000FCF745FC0320207008206070A8790028D0
:1038D00001D009206070287A002803D06078022186
:1038E00008436070E9790420002902D0617801431F
:1038F00061700021695E002903DA617810221143AA
:1039000061700221695E002903DA61782022114387
:1039100061702978A170A978E17029792171717994
:10392000002900D02070002070BD2878317A40181E
:103930003072A878717A401870722879B17A40187C
:10394000B072012070BD032070BD0000180000207F
:10395000F8B500250E46FF2814D0624CEC281ED086
:10396000A17902291DD0E63801270300FEF734FFB4
:1039700011ACB29E716E6964645F6459643A23212C
:103980001E1B640000F04AF91421FA2000F0CAF965
:10399000FA21AA2000F0B9F9142100203EE0E079D4
:1039A00047E014213AE000F045F945E0002020709E
:1039B00040E027703EE01421FA2000F0B3F900F057
:1039C00053FA48489621401C00F09CF8002827D163
:1039D00044492079183162780A5407282CD2401CB7
:1039E000207129E000F040FA1421FA2000F09AF941
:1039F00000206071217902290ED93A481830401808
:103A00002038C17F502907D1817F642904D1407FAC
:103A1000C82801D1032060711421607900F075F984
:103A2000F8BD00F021FAA079E071A77104E0E1711E
:103A30000220A07100F018FA1421FA2000F072F9A7
:103A4000F8BD1421FA2000F06DF93AE0E171002090
:103A5000EFE71421FA2000F065F9A079012800D1E0
:103A600040252078002801D020200543E078022856
:103A700001D110200543B079002801D0042005436E
:103A8000F079002801D002200543307A002800D0C8
:103A90003D431421284600F038F91421A07800F0A5
:103AA00034F91421607800F030F90AE01421FA208A
:103AB00000F038F90B489621801C00F023F800280C
:103AC000BFD000F0D1F9F8BD1421FA2000F02AF996
:103AD000E770F8BD1421FA2000F024F90220E0700C
:103AE000F8BD00001800002010B5054C2061A18130
:103AF0006261E38100F092F800F080F810BD0000F0
:103B000018000020F3B581B00F4600250126FCF710
:103B100049FC044606E0FCF745FC001BB84201D313
:103B20000120FEBDFFF78EFE0128F4D11220FEF722
:103B300059FF314C0022A1892069FCF72CFC24207C
:103B4000FEF750FF0122A1892069FCF724FC122016
:103B5000FEF748FFE1896069FCF714FC012800D1F9
:103B600035437004060C1220FEF73CFF0022A189A9
:103B70002069FCF710FC2420FEF734FF0122A18904
:103B80002069FCF708FC1220FEF72CFFFF2EE1D97C
:103B90001220FEF727FF0022A1892069FCF7FBFB1A
:103BA0002420FEF71FFF0122A1892069FCF7F3FB07
:103BB0001220FEF717FF1220FEF714FF0022E18902
:103BC0006069FCF7E8FB0022A1892069FCF7E3FBB0
:103BD0002420FEF707FF0122A1892069FCF7DBFB07
:103BE0001220FEF7FFFE0122E1896069FCF7D3FB9A
:103BF000019805700020FEBD1800002010B5064C8D
:103C00000122A1892069FCF7C6FB0122E1896069D4
:103C1000FCF7C1FB10BD00001800002000B500F04B
:103C200009F80349002008718861C861487100BD26
:103C30001800002000B507486421417002218170FE
:103C40000121C170002101708171C17100F00CF976
:103C500000BD00001800002070B50546002409E0F2
:103C600028194078FF2100F050F8002801D00120E9
:103C700070BD641C2878A042F2DC002070BD0000FA
:103C800010B5FFF7DFFD154C022860710DD001283B
:103C90000ED020461430FFF7DCFA002807D0104978
:103CA000FFF700FE002813D10DE0FFF7A7FF10BDBE
:103CB0000A480A21801CFFF725FF0949A078183916
:103CC000FFF746FE10BD0648FFF7C6FF0028F9D1F2
:103CD00002481430FFF7C8FA10BD00004C00002065
:103CE000E802002070B50546FCF75CFB044606E0E0
:103CF000FCF758FB001BA84201D3012070BDFFF761
:103D0000A1FD0328F4D1002070BD10B5044608467B
:103D1000FFF7E8FF002801D0012010BD204600F089
:103D200013F810BD10B504460846FFF7DBFF002866
:103D300001D0012010BDAF208000FEF753FE2046C9
:103D400000F002F810BD0000F8B5464C054601260B
:103D50000022E1896069FCF71EFB1220FEF742FE9B
:103D60000022A1892069FCF716FB2420FEF73AFE09
:103D70000122A1892069FCF70EFB1220FEF732FE1A
:103D8000A1892069FCF7FEFA002868D00027E8071F
:103D900001D0012200E00022E1896069FCF7FBFA12
:103DA0001220FEF71FFE0022A1892069FCF7F3FA1A
:103DB0002420FEF717FE0122A1892069FCF7EBFA07
:103DC0001220FEF70FFEA1892069FCF7DBFA00281C
:103DD00045D0E807C00F46406D087F1C082FD6DB92
:103DE000002E01D0012200E00022E1896069FCF789
:103DF000D2FA1220FEF7F6FD0022A1892069FCF715
:103E0000CAFA2420FEF7EEFD0122A1892069FCF701
:103E1000C2FA1220FEF7E6FDA1892069FCF7B2FA8A
:103E200000281CD00122E1896069FCF7B4FA122055
:103E3000FEF7D8FD0022A1892069FCF7ACFA242006
:103E4000FEF7D0FD0122A1892069FCF7A4FA122017
:103E5000FEF7C8FDFA20FEF7C5FD0020F8BD0120E1
:103E6000F8BD0000180000200248002101724172D4
:103E7000817270471800002011A0FEF79DFC134DC1
:103E80000024295D12A0FEF797FC641C202CF8DBAF
:103E900010A0FEF791FC134D002408212846FCF7E2
:103EA00076FA6420FCF799F9641C642CF5DBBFF307
:103EB0004F8F0E490C48C860BFF34F8F00BFFDE71E
:103EC000535049204552524F520A000084020020AC
:103ED000256420000A7265626F6F74696E672E2E0A
:103EE0002E0A0000000400480400FA0500ED00E07E
:103EF00070B50646FCF756FA0446084D06E0FCF796
:103F000051FA001BB04201D9012070BD29886868B0
:103F1000FCF738FA0028F2D0002070BD38000020ED
:103F200010B50E4C21886068FCF72CFA012802D1EC
:103F3000FCF738FAE060FCF735FAE168401A14281B
:103F40000BD9C820FFF7D4FF1420FCF746F9AA20AC
:103F500000F094F80A20FCF740F910BD380000206A
:103F600010B500F05DF8FCF71DFA0149C86010BDFE
:103F70003800002010B5034C60602180A26063808F
:103F800010BD00003800002070B5044666380300FC
:103F9000FEF722FC0A1406080A0C0E101216181A54
:103FA000482413E04A2411E04B240FE04E240DE096
:103FB0004F240BE0502409E0512407E0472405E09A
:103FC000522403E0532401E0532C0BD8022902D0E1
:103FD00000290DD00EE0FCF7E5F9084D2969401ADB
:103FE000502801D8002070BDFCF7DCF9286101E001
:103FF00080200443204600F041F870BD38000020C6
:1040000010B5064C012221886068FCF7C4F9012232
:104010006188A068FCF7BFF910BD000038000020DF
:1040200010B5064C012221886068FCF7B4F9002223
:104030006188A068FCF7AFF910BD000038000020CF
:1040400010B5FFF76DFF0B4A0B48511EFEF73CFE03
:10405000002809D10748001F0179C078FFF794FFB5
:10406000002802D0FFF7DCFF10BD0348FEF73CFE3E
:1040700010BD000050000020C402002070B52E4C7E
:10408000054621886068FCF77DF900282AD00022C7
:1040900021886068FCF77FF90520FEF7A3FC012268
:1040A0006188A068FCF777F96E20FEF79BFC6188B9
:1040B000A068FCF767F9002816D001222188606803
:1040C000FCF769F94120FEF78DFC00222188606829
:1040D000FCF761F91E20FEF785FC0026E80705D0F5
:1040E000012204E0012070BD022070BD0022618821
:1040F000A068FCF750F9012221886068FCF74BF9B1
:104100004120FEF76FFC002221886068FCF743F92C
:104110001E20FEF767FC6D08761C082EDEDB0122F0
:1041200021886068FCF737F900226188A068FCF7F5
:1041300032F9002070BD000038000020FF76161E06
:1041400026252E363D3E46454E55660D151D242D21
:104150002C353C43444D545B5A141C1B232B3433E5
:104160003B424B4C520E125D1A22212A32313A4107
:10417000494A597C1129580506040C030B830A018E
:1041800009777E6C757D7B6B73747969727A707157
:10419000FFFF6178075A144AFF11FF6C757D6B743D
:1041A00069727A7071FFFFFFFFFFFFFFFFFFFFFFE4
:1041B000FFFF1F272F0001060755534234564320A7
:1041C00050726F746F636F6C20426F6172640A4942
:1041D000424D20504320436F6D70617469626C657D
:1041E0000A64656B754E756B656D20323032320036
:1041F0000000000000000000010203040607080997
:104200000000000001020304284200080000002012
:1042100084000000F2270008AC420008840000205F
:1042200084080000022800080000000002010000CD
:102D2000FF216A46ED3811703B4C0300FFF754FD5C
:102D300013645E2B422B342C241D6F161616162B93
:102D40002B2B6F0B2B0014220121FA2000F0C0FC6A
:102D500000F05CFCFA220021AA204AE02078032837
:102D600055D014220121FE2043E014220121FA2033
:102D700000F0AEFC002005E014220121FA2000F052
:102D8000A7FC0120607038BD14220121FA2000F058
:102D90009FFC1E21684636E014220121FA2000F033
:102DA00097FC14220021AB2000F092FC1422002199
:102DB00083201EE014220121FA2000F089FC1E214C
:102DC000684600F095FB0028DDD114220121FA208D
:102DD00000F07EFC68460078002803D00328D2D893
:102DE000207038BD14220021207802E01422012135
:102DF000EE2000F06DFC38BD14220121FA2000F015
:102E000067FC1E21284600F073FB0028F3D1142232
:102E10000121FA20EDE70000040000201CB56648FF
:102E2000664C8089A081FDF707FDFFF7C3F9FEF727
:102E3000A9FEFEF753FFFEF77BFFFEF797FFFEF7B5
:102E4000BFFFFEF7E3FF5F485D490160032141607A
:102E50005D49C1608160FDF7ADFC002800D0FEE750
:102E60005848FDF7D9FC00210220019100900B4643
:102E70002278564956A0FFF79FFC52487430FFF75E
:102E8000BBFD00F003FAFF250135564E6F003246B8
:102E90002B463946104600F02BFA32462B4639466F
:102EA000104601F061F8324610232021104600F050
:102EB00015FE0220FFF7C8FE002801D001F04AF8F5
:102EC00010214948FFF7E2FE3C481021143000F081
:102ED000A0F93A4810211C30FFF7BBFD00F0E4F8E0
:102EE000414820216038FDF732F93F4A3548203A01
:102EF0001146202340391030FEF764F9A1893BA028
:102F0000FFF75AFC00F0C0F8002812D13BA0FFF7F1
:102F100053FC002708213046FDF739FA3220FDF72F
:102F20005CF97F1C0A2FF5DB012208213046FDF7F2
:102F300032FA0927FF062348FDF76EFC0420FFF74D
:102F400083FE002809D00121C9033046FDF71AFA93
:102F5000002802D000F08EFE06E00520FFF774FE88
:102F6000002801D000F0DAF80120FFF76DFE0028FC
:102F700008D029463846FDF705FA002802D000F0AF
:102F80004DFB0CE00220FFF75FFE002807D029462A
:102F90003846FDF7F7F9002801D001F04BF807207B
:102FA000FFF752FE002801D0FFF790FD607A00285D
:102FB000C1D000F05BFF0000C0F7FF1F4C000020F5
:102FC00000300040D0000020FF0F0000AD4100089D
:102FD00025730A7265762564207625642E25642E75
:102FE00025640A0000040048C4020020666C617376
:102FF000685F73697A653A2025640A0044696769E5
:1030000074616C20706F74206E6F742072657370C1
:103010006F6E64696E67210A00000000F0B50B3026
:10302000C108C900144F0026144A0FE003688B4200
:103030000BD38B4205D95C1A4318456830C3083B53
:1030400000E04368136002C004E0021D106800281D
:10305000ECD13046002803D13868002801D0002088
:10306000F0BD064A06481060064A121AD208D2007D
:1030700044C001203860D7E7800000207C00002099
:103080000C0300200805002010B5642301225821FC
:103090000448FDF731FA002801D0002010BD0120BE
:1030A00010BD00008400002010B5094C002204214E
:1030B0002046FDF770F90120FDF78FF80122042169
:1030C0002046FDF768F90120FDF787F810BD0000E4
:1030D0000004004803B583B0042802D3FF2005B0E4
:1030E00000BD08496423085C01210007020E04A802
:1030F0000293019100900B4658210348FDF78AFA8C
:10310000EDE70000A94100088400002002480068A3
:103110000068406A704700000000002070B52E4C27
:10312000207A0025002807D04D20E0710122E11D02
:103130002A48FEF7ECFB25722748143000F083F88C
:10314000002806D0A17A002904D02348143000F0CA
:1031500085F870BD2049C0220E310D808D700A7037
:103160008279002A01D0E0220A70027A002A03D074
:103170000A7810231A430A700022825E4088404277
:1031800000B2030603D50B7808252B430B704306CA
:1031900003D50B7804252B430B70130603D50B784E
:1031A00002252B430B7053060125002B02DA0B7806
:1031B0002B430B709206920E80064A70800E887028
:1031C0000548143000F04AF8034903220E31034841
:1031D000FEF79DFBA57270BD4C000020F40100209D
:1031E00070B50D46044600F020F8002801D00120FB
:1031F00070BD20780C226168504308182946FCF7FE
:103200008DFF2078A178401CFCF772FF2170002010
:1032100070BD10B5044681700C204843FFF7FEFED8
:103220006060204600F026F810BD10B50446817895
:103230000078401CFCF75CFF6078814201D10120DE
:1032400010BD002010BD41780278914201D10020CC
:10325000704740680C2251434018704710B504462F
:1032600040782178884204D0A178401CFCF740FFC8
:10327000617010BD10B500210170417081780C2281
:1032800051434068FCF763FF10BD000010B51021EA
:103290000548FCF75CFF012103480222417082705F
:1032A00001714271C17110BDF102002070B50F4D66
:1032B0006988A868FDF766F80446A988E868FDF7FC
:1032C00061F8012802D0002809D00AE0012C02D0C0
:1032D000002C02D005E0032070BD022070BD012C3F
:1032E00001D0002070BD012070BD0000040000204E
:1032F00010B5054CA0606180E260A38000F076F913
:1033000000F084F910BD00000400002010B5094A47
:103310005378002B06D01278012A05D0022A06D055
:10332000092010BD012010BD00F006F810BD00F00E
:1033300017F810BD0400002010B5532805D95728F0
:1033400003D0582801D0032010BD002905D0142235
:10335000002100F0BDF9002010BD80210843F6E7F0
:1033600010B5592810D2614A145CFF2C7ED0002978
:1033700002D014220021ABE014220021F02000F042
:10338000A7F9002873D1F4E7632816D077285AD01C
:103390000246603A1F2A6BD8544A593210186038D6
:1033A0000478FF2C62D000297ED014220021E02076
:1033B00000F08EF900285AD188E000291CD0142290
:1033C0000021E02000F084F9002850D114220021CF
:1033D000122000F07DF9002849D114220021E020BC
:1033E00000F076F900287DD1142200217C2000F025
:1033F0006FF9002876D110BD14220021E02000F0E2
:1034000067F900286ED114220021F02000F060F945
:10341000002867D1142200217C2000F059F90028EF
:1034200060D114220021E02000F052F9002859D187
:1034300014220021F02000F04BF9002852D1142270
:1034400000211220D3E70029A6D014220021E12078
:1034500000F03EF9002845D114220021104600F06A
:1034600037F900283ED11422002102E02CE039E097
:103470003AE0772000F02CF9002833D11422002103
:10348000E12000F025F900282CD114220021F020A1
:1034900000F01EF9002825D114220021104600F06A
:1034A00017F900281ED100E014E014220021F020BA
:1034B00000F00EF9002815D114220021772000F029
:1034C00007F900280ED110BD022010BD14220121E1
:1034D00020468CE714220021E02000F0F9F80028B3
:1034E00000D149E7452010BD032010BD3041000840
:1034F000F3B581B00F4600250126FCF753FF3A4C87
:10350000206107E0FCF74EFF2169401AB84201D361
:103510000420FEBDFFF7CAFE0128F3D11220FFF7F9
:1035200061FA00226188A068FCF735FF2420FFF7CC
:1035300059FA01226188A068FCF72DFF1220FFF7DD
:1035400051FAA188E068FCF71DFF012800D135433E
:103550007004060C1220FFF745FA00226188A0686B
:10356000FCF719FF2420FFF73DFA01226188A068CB
:10357000FCF711FF1220FFF735FAFF2EE1D91220D8
:10358000FFF730FA00226188A068FCF704FF2420CE
:10359000FFF728FA01226188A068FCF7FCFE1220E0
:1035A000FFF720FA1220FFF71DFA0022A188E06839
:1035B000FCF7F1FE00226188A068FCF7ECFE2420F5
:1035C000FFF710FA01226188A068FCF7E4FE1220E0
:1035D000FFF708FA0122A188E068FCF7DCFE0198F9
:1035E00005700020FEBD00000400002010B5064C50
:1035F00001226188A068FCF7CEFE0122A188E06864
:10360000FCF7C9FE10BD00000400002002480221A2
:1036100001700121417070470400002038B5FFF7A8
:1036200045FE284C0228A07114D0012815D003288B
:103630000FD1221D511E2448FFF746FB002808D158
:103640002179E078FFF762FE452836D01E48FFF763
:103650004BFB38BDFFF7CAFF38BDFF21684601703C
:1036600018480A21401CFFF743FF69466078FFF7BE
:1036700055FB68460478FF2CEED0134820216038B3
:10368000FCF765FD1048CD216038017001462031FE
:103690004978417081218170E2070121002A00D020
:1036A000C170A20700D50171620700D541710122E6
:1036B00051030648FCF76FFE38BD0120FCF78DFD75
:1036C00038BD00004C000020C40200200008004863
:1036D000F8B515460E460746FCF764FE0C4C206113
:1036E00007E0FCF75FFE2169401AA84201D30120E0
:1036F000F8BDFFF7DBFD0328F3D1002E03D0AF2088
:103700008000FFF76FF9384600F004F8F8BD0000BC
:1037100004000020F8B5474C054601260022A18888
:10372000E068FCF738FE1220FFF75CF900226188A0
:10373000A068FCF730FE2420FFF754F901226188CD
:10374000A068FCF728FE1220FFF74CF96188A068FA
:10375000FCF718FE002868D00027E80701D00122F6
:1037600000E00022A188E068FCF715FE1220FFF7B8
:1037700039F900226188A068FCF70DFE2420FFF7CC
:1037800031F901226188A068FCF705FE1220FFF7DD
:1037900029F96188A068FCF7F5FD002845D0E80705
:1037A000C00F46406D087F1C082FD6DB002E01D0CD
:1037B000012200E00022A188E068FCF7ECFD122065
:1037C000FFF710F900226188A068FCF7E4FD2420CF
:1037D000FFF708F901226188A068FCF7DCFD1220E0
:1037E000FFF700F96188A068FCF7CCFD00281CD029
:1037F0000122A188E068FCF7CEFD1220FFF7F2F865
:1038000000226188A068FCF7C6FD2420FFF7EAF8D3
:1038100001226188A068FCF7BEFD1220FFF7E2F8E4
:10382000C820FFF7DFF80020F8BDFFF7DFFE4520D6
:10383000F8BD00000400002010B5164CE189606955
:10384000FCF7A0FD012805D1A1892069FCF79AFDAC
:10385000012806D0E1896069FCF794FD012802D0B7
:1038600007E0032010BDA1892069FCF78BFD00282B
:1038700006D0E1896069FCF785FD002802D007E0E9
:10388000022010BDA1892069FCF77CFD0128F8D039
:10389000002010BD1800002070B5294E0546B079F3
:1038A0000C4601283BD0022838D03078002844D07C
:1038B0000821601CFCF74BFC03202070082060707E
:1038C000A879002801D009206070287A002803D048
:1038D0006078022108436070E9790420002902D051
:1038E0006178014361700021695E002903DA617823
:1038F0001022114361700221695E002903DA6178A8
:103900002022114361702978A170A978E17029798A
:1039100021717179002900D02070002070BD2878B5
:10392000317A40183072A878717A4018707228790C
:10393000B17A4018B072012070BD032070BD000044
:1039400018000020F8B500250E46FF2814D0624C60
:10395000EC281ED0A17902291DD0E63801270300EA
:10396000FEF73AFF11ACB29E716E6964645F6459F0
:10397000643A23211E1B640000F04AF91421FA2046
:1039800000F0CAF9FA21AA2000F0B9F914210020A8
:103990003EE0E07947E014213AE000F045F945E0E7
:1039A0000020207040E027703EE01421FA2000F053
:1039B000B3F900F053FA48489621401C00F09CF8F7
:1039C000002827D144492079183162780A54072801
:1039D0002CD2401C207129E000F040FA1421FA207A
:1039E00000F09AF900206071217902290ED93A4835
:1039F000183040182038C17F502907D1817F6429B1
:103A000004D1407FC82801D103206071142160795E
:103A100000F075F9F8BD00F021FAA079E071A77106
:103A200004E0E1710220A07100F018FA1421FA20DC
:103A300000F072F9F8BD1421FA2000F06DF93AE0B7
:103A4000E1710020EFE71421FA2000F065F9A07978
:103A5000012800D140252078002801D020200543EE
:103A6000E078022801D110200543B079002801D068
:103A700004200543F079002801D002200543307A64
:103A8000002800D03D431421284600F038F91421C5
:103A9000A07800F034F91421607800F030F90AE0E1
:103AA0001421FA2000F038F90B489621801C00F010
:103AB00023F80028BFD000F0D1F9F8BD1421FA2076
:103AC00000F02AF9E770F8BD1421FA2000F024F97B
:103AD0000220E070F8BD00001800002010B5054C71
:103AE0002061A1816261E38100F092F800F080F82A
:103AF00010BD000018000020F3B581B00F4600256E
:103B00000126FCF74FFC044606E0FCF74BFC001BCB
:103B1000B84201D30120FEBDFFF78EFE0128F4D18B
:103B20001220FEF75FFF314C0022A1892069FCF7CB
:103B300032FC2420FEF756FF0122A1892069FCF700
:103B40002AFC1220FEF74EFFE1896069FCF71AFC9F
:103B5000012800D135437004060C1220FEF742FF05
:103B60000022A1892069FCF716FC2420FEF73AFF09
:103B70000122A1892069FCF70EFC1220FEF732FF1A
:103B8000FF2EE1D91220FEF72DFF0022A189206926
:103B9000FCF701FC2420FEF725FF0122A189206902
:103BA000FCF7F9FB1220FEF71DFF1220FEF71AFFAB
:103BB0000022E1896069FCF7EEFB0022A1892069FF
:103BC000FCF7E9FB2420FEF70DFF0122A189206903
:103BD000FCF7E1FB1220FEF705FF0122E189606995
:103BE000FCF7D9FB019805700020FEBD18000020ED
:103BF00010B5064C0122A1892069FCF7CCFB0122FB
:103C0000E1896069FCF7C7FB10BD000018000020C7
:103C100000B500F009F80349002008718861C86107
:103C2000487100BD1800002000B5074864214170AC
:103C3000022181700121C170002101708171C17167
:103C400000F00CF900BD00001800002070B505461A
:103C5000002409E028194078FF2100F050F80028DE
:103C600001D0012070BD641C2878A042F2DC002045
:103C700070BD000010B5FFF7DFFD154C0228607124
:103C80000DD001280ED020461430FFF7DCFA0028B2
:103C900007D01049FFF700FE002813D10DE0FFF711
:103CA000A7FF10BD0A480A21801CFFF725FF09491C
:103CB000A0781839FFF746FE10BD0648FFF7C6FF8B
:103CC0000028F9D102481430FFF7C8FA10BD0000EF
:103CD0004C000020E802002070B50546FCF762FBAE
:103CE000044606E0FCF75EFB001BA84201D301205E
:103CF00070BDFFF7A1FD0328F4D1002070BD10B501
:103D000004460846FFF7E8FF002801D0012010BD57
:103D1000204600F013F810BD10B504460846FFF722
:103D2000DBFF002801D0012010BDAF208000FEF78E
:103D300059FE204600F002F810BD0000F8B5464CD0
:103D4000054601260022E1896069FCF724FB122068
:103D5000FEF748FE0022A1892069FCF71CFB242005
:103D6000FEF740FE0122A1892069FCF714FB122016
:103D7000FEF738FEA1892069FCF704FB002868D013
:103D80000027E80701D0012200E00022E1896069F4
:103D9000FCF701FB1220FEF725FE0022A189206915
:103DA000FCF7F9FA2420FEF71DFE0122A189206903
:103DB000FCF7F1FA1220FEF715FEA1892069FCF745
:103DC000E1FA002845D0E807C00F46406D087F1C87
:103DD000082FD6DB002E01D0012200E00022E1896D
:103DE0006069FCF7D8FA1220FEF7FCFD0022A189D9
:103DF0002069FCF7D0FA2420FEF7F4FD0122A18906
:103E00002069FCF7C8FA1220FEF7ECFDA1892069B1
:103E1000FCF7B8FA00281CD00122E1896069FCF7A0
:103E2000BAFA1220FEF7DEFD0022A1892069FCF714
:103E3000B2FA2420FEF7D6FD0122A1892069FCF701
:103E4000AAFA1220FEF7CEFDFA20FEF7CBFD0020E5
:103E5000F8BD0120F8BD0000180000200248002134
:103E600001724172817270471800002011A0FEF7A4
:103E7000A3FC134D0024295D12A0FEF79DFC641CD9
:103E8000202CF8DB10A0FEF797FC134D002408212E
:103E90002846FCF77CFA6420FCF79FF9641C642C2C
:103EA000F5DBBFF34F8F0E490C48C860BFF34F8F4F
:103EB00000BFFDE7535049204552524F520A0000BF
:103EC00084020020256420000A7265626F6F7469A5
:103ED0006E672E2E2E0A0000000400480400FA052A
:103EE00000ED00E070B50646FCF75CFA0446084DAC
:103EF00006E0FCF757FA001BB04201D9012070BD63
:103F000029886868FCF73EFA0028F2D0002070BDCE
:103F10003800002010B50E4C21886068FCF732FA9A
:103F2000012802D1FCF73EFAE060FCF73BFAE168B9
:103F3000401A14280BD9C820FFF7D4FF1420FCF72F
:103F40004CF9AA2000F094F80A20FCF746F910BDBD
:103F50003800002010B500F05DF8FCF723FA0149A5
:103F6000C86010BD3800002010B5034C606021808F
:103F7000A260638010BD00003800002070B50446C8
:103F800066380300FEF728FC0A1406080A0C0E1017
:103F90001216181A482413E04A2411E04B240FE0AB
:103FA0004E240DE04F240BE0502409E0512407E09B
:103FB000472405E0522403E0532401E0532C0BD89E
:103FC000022902D000290DD00EE0FCF7EBF9084DD4
:103FD0002969401A502801D8002070BDFCF7E2F989
:103FE000286101E080200443204600F041F870BDC4
:103FF0003800002010B5064C012221886068FCF7CB
:10400000CAF901226188A068FCF7C5F910BD00005B
:104010003800002010B5064C012221886068FCF7AA
:10402000BAF900226188A068FCF7B5F910BD00005C
:104030003800002010B5FFF76DFF0B4A0B48511EEA
:10404000FEF742FE002809D10748001F0179C07819
:10405000FFF794FF002802D0FFF7DCFF10BD0348F4
:10406000FEF742FE10BD000050000020C4020020F8
:1040700070B52E4C054621886068FCF783F900284E
:104080002AD0002221886068FCF785F90520FEF718
:10409000A9FC01226188A068FCF77DF96E20FEF77B
:1040A000A1FC6188A068FCF76DF9002816D00122F8
:1040B00021886068FCF76FF94120FEF793FC00222D
:1040C00021886068FCF767F91E20FEF78BFC00264C
:1040D000E80705D0012204E0012070BD022070BD78
:1040E00000226188A068FCF756F9012221886068E7
:1040F000FCF751F94120FEF775FC00222188606829
:10410000FCF749F91E20FEF76DFC6D08761C082EA1
:10411000DEDB012221886068FCF73DF9002261881E
:10412000A068FCF738F9002070BD000038000020BE
:10413000FF76161E26252E363D3E46454E55660D0B
:10414000151D242D2C353C43444D545B5A141C1B27
:10415000232B34333B424B4C520E125D1A22212A40
:1041600032313A41494A597C1129580506040C0359
:104170000B830A0109777E6C757D7B6B737479699B
:10418000727A7071FFFF6178075A144AFF11FF6C51
:10419000757D6B7469727A7071FFFFFFFFFFFFFF1F
:1041A000FFFFFFFFFFFF1F272F00010607555342A8
:1041B0003456432050726F746F636F6C20426F618E
:1041C00072640A49424D20504320436F6D70617400
:1041D00069626C650A64656B754E756B656D20323E
:1041E0003032320000000000000000000102030431
:1041F0000607080900000000010203041C42000831
:104200000000002084000000F2270008A0420008FF
:10421000840000208408000002280008000000003C
:10422000020100000000000000000000000000008B
:10423000000000000000000000000000000000007E
:10424000000000000000000000000000000000006E
:10425000000000000000000000000000000000005E
:10426000000000000000000000000000000000004E
:10427000000000000000000000000000000000003E
:10428000000000000000000000000000000000002E
:1042900000000000000000000000000000127A0092
:0C42A00000000000000000000000000012
:1042900000127A0000000000000000000000000092
:04000005080000C12E
:00000001FF

View File

@@ -3,7 +3,7 @@
<title>Static Call Graph - [ibmpc\ibmpc.axf]</title></head>
<body><HR>
<H1>Static Call Graph for image ibmpc\ibmpc.axf</H1><HR>
<BR><P>#&#060CALLGRAPH&#062# ARM Linker, 5060750: Last Updated: Sun May 01 17:10:48 2022
<BR><P>#&#060CALLGRAPH&#062# ARM Linker, 5060750: Last Updated: Sun May 01 17:15:29 2022
<BR><P>
<H3>Maximum Stack Usage = 212 bytes + Unknown(Cycles, Untraceable Function Pointers)</H3><H3>
Call chain for Maximum Stack Depth:</H3>
@@ -1044,7 +1044,7 @@ Global Symbols
<BR>[Called By]<UL><LI><a href="#[ab]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;kb_buf_init
</UL>
<P><STRONG><a name="[ae]"></a>keyboard_reply</STRONG> (Thumb, 262 bytes, Stack size 16 bytes, ps2kb.o(i.keyboard_reply))
<P><STRONG><a name="[ae]"></a>keyboard_reply</STRONG> (Thumb, 250 bytes, Stack size 16 bytes, ps2kb.o(i.keyboard_reply))
<BR><BR>[Stack]<UL><LI>Max Depth = 72<LI>Call Chain = keyboard_reply &rArr; ps2kb_write &rArr; ps2kb_write_nowait &rArr; ps2kb_release_lines
</UL>
<BR>[Calls]<UL><LI><a href="#[af]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ps2kb_write

View File

@@ -2007,61 +2007,61 @@ Image Symbol Table
i.kb_buf_pop 0x08002ce8 Section 0 helpers.o(i.kb_buf_pop)
i.kb_buf_reset 0x08002d00 Section 0 helpers.o(i.kb_buf_reset)
i.keyboard_reply 0x08002d1c Section 0 ps2kb.o(i.keyboard_reply)
i.main 0x08002e28 Section 0 main.o(i.main)
i.malloc 0x08003028 Section 0 malloc.o(i.malloc)
i.mcp4451_is_available 0x08003094 Section 0 mcp4451.o(i.mcp4451_is_available)
i.mcp4451_reset 0x080030b4 Section 0 mcp4451.o(i.mcp4451_reset)
i.mcp4451_write_wiper 0x080030e0 Section 0 mcp4451.o(i.mcp4451_write_wiper)
i.micros 0x08003118 Section 0 delay_us.o(i.micros)
i.microsoft_serial_mouse_update 0x08003128 Section 0 main.o(i.microsoft_serial_mouse_update)
i.mouse_buf_add 0x080031ec Section 0 helpers.o(i.mouse_buf_add)
i.mouse_buf_init 0x0800321e Section 0 helpers.o(i.mouse_buf_init)
i.mouse_buf_is_full 0x08003236 Section 0 helpers.o(i.mouse_buf_is_full)
i.mouse_buf_peek 0x08003252 Section 0 helpers.o(i.mouse_buf_peek)
i.mouse_buf_pop 0x08003268 Section 0 helpers.o(i.mouse_buf_pop)
i.mouse_buf_reset 0x08003280 Section 0 helpers.o(i.mouse_buf_reset)
i.protocol_status_lookup_init 0x08003298 Section 0 main.o(i.protocol_status_lookup_init)
i.ps2kb_get_bus_status 0x080032b8 Section 0 ps2kb.o(i.ps2kb_get_bus_status)
i.ps2kb_init 0x080032fc Section 0 ps2kb.o(i.ps2kb_init)
i.ps2kb_press_key 0x08003318 Section 0 ps2kb.o(i.ps2kb_press_key)
i.ps2kb_press_key_scancode_1 0x08003344 Section 0 ps2kb.o(i.ps2kb_press_key_scancode_1)
i.ps2kb_press_key_scancode_2 0x0800336c Section 0 ps2kb.o(i.ps2kb_press_key_scancode_2)
i.ps2kb_read 0x080034fc Section 0 ps2kb.o(i.ps2kb_read)
i.ps2kb_release_lines 0x080035f8 Section 0 ps2kb.o(i.ps2kb_release_lines)
i.ps2kb_reset 0x08003618 Section 0 ps2kb.o(i.ps2kb_reset)
i.ps2kb_update 0x08003628 Section 0 main.o(i.ps2kb_update)
i.ps2kb_write 0x080036dc Section 0 ps2kb.o(i.ps2kb_write)
i.ps2kb_write_nowait 0x08003720 Section 0 ps2kb.o(i.ps2kb_write_nowait)
i.ps2mouse_get_bus_status 0x08003844 Section 0 ps2mouse.o(i.ps2mouse_get_bus_status)
i.ps2mouse_get_outgoing_data 0x080038a4 Section 0 ps2mouse.o(i.ps2mouse_get_outgoing_data)
i.ps2mouse_host_req_reply 0x08003950 Section 0 ps2mouse.o(i.ps2mouse_host_req_reply)
i.ps2mouse_init 0x08003ae8 Section 0 ps2mouse.o(i.ps2mouse_init)
i.ps2mouse_read 0x08003b04 Section 0 ps2mouse.o(i.ps2mouse_read)
i.ps2mouse_release_lines 0x08003bfc Section 0 ps2mouse.o(i.ps2mouse_release_lines)
i.ps2mouse_reset 0x08003c1c Section 0 ps2mouse.o(i.ps2mouse_reset)
i.ps2mouse_restore_defaults 0x08003c34 Section 0 ps2mouse.o(i.ps2mouse_restore_defaults)
i.ps2mouse_send_update 0x08003c58 Section 0 ps2mouse.o(i.ps2mouse_send_update)
i.ps2mouse_update 0x08003c80 Section 0 main.o(i.ps2mouse_update)
i.ps2mouse_wait_for_idle 0x08003ce4 Section 0 ps2mouse.o(i.ps2mouse_wait_for_idle)
i.ps2mouse_write 0x08003d0a Section 0 ps2mouse.o(i.ps2mouse_write)
i.ps2mouse_write_delay_start 0x08003d24 Section 0 ps2mouse.o(i.ps2mouse_write_delay_start)
i.ps2mouse_write_nowait 0x08003d48 Section 0 ps2mouse.o(i.ps2mouse_write_nowait)
i.reset_accumulators 0x08003e68 Section 0 ps2mouse.o(i.reset_accumulators)
i.spi_error_dump_reboot 0x08003e78 Section 0 main.o(i.spi_error_dump_reboot)
i.wait_for_clk_high 0x08003ef0 Section 0 xt_kb.o(i.wait_for_clk_high)
i.xtkb_check_for_softreset 0x08003f20 Section 0 xt_kb.o(i.xtkb_check_for_softreset)
i.xtkb_enable 0x08003f60 Section 0 xt_kb.o(i.xtkb_enable)
i.xtkb_init 0x08003f74 Section 0 xt_kb.o(i.xtkb_init)
i.xtkb_press_key 0x08003f88 Section 0 xt_kb.o(i.xtkb_press_key)
i.xtkb_release_lines 0x08004000 Section 0 xt_kb.o(i.xtkb_release_lines)
i.xtkb_reset_bus 0x08004020 Section 0 xt_kb.o(i.xtkb_reset_bus)
i.xtkb_update 0x08004040 Section 0 main.o(i.xtkb_update)
i.xtkb_write 0x0800407c Section 0 xt_kb.o(i.xtkb_write)
.constdata 0x0800413c Section 121 ps2kb.o(.constdata)
.constdata 0x080041b5 Section 4 mcp4451.o(.constdata)
.constdata 0x080041b9 Section 55 main.o(.constdata)
.constdata 0x080041f0 Section 16 system_stm32f0xx.o(.constdata)
.constdata 0x08004200 Section 8 system_stm32f0xx.o(.constdata)
i.main 0x08002e1c Section 0 main.o(i.main)
i.malloc 0x0800301c Section 0 malloc.o(i.malloc)
i.mcp4451_is_available 0x08003088 Section 0 mcp4451.o(i.mcp4451_is_available)
i.mcp4451_reset 0x080030a8 Section 0 mcp4451.o(i.mcp4451_reset)
i.mcp4451_write_wiper 0x080030d4 Section 0 mcp4451.o(i.mcp4451_write_wiper)
i.micros 0x0800310c Section 0 delay_us.o(i.micros)
i.microsoft_serial_mouse_update 0x0800311c Section 0 main.o(i.microsoft_serial_mouse_update)
i.mouse_buf_add 0x080031e0 Section 0 helpers.o(i.mouse_buf_add)
i.mouse_buf_init 0x08003212 Section 0 helpers.o(i.mouse_buf_init)
i.mouse_buf_is_full 0x0800322a Section 0 helpers.o(i.mouse_buf_is_full)
i.mouse_buf_peek 0x08003246 Section 0 helpers.o(i.mouse_buf_peek)
i.mouse_buf_pop 0x0800325c Section 0 helpers.o(i.mouse_buf_pop)
i.mouse_buf_reset 0x08003274 Section 0 helpers.o(i.mouse_buf_reset)
i.protocol_status_lookup_init 0x0800328c Section 0 main.o(i.protocol_status_lookup_init)
i.ps2kb_get_bus_status 0x080032ac Section 0 ps2kb.o(i.ps2kb_get_bus_status)
i.ps2kb_init 0x080032f0 Section 0 ps2kb.o(i.ps2kb_init)
i.ps2kb_press_key 0x0800330c Section 0 ps2kb.o(i.ps2kb_press_key)
i.ps2kb_press_key_scancode_1 0x08003338 Section 0 ps2kb.o(i.ps2kb_press_key_scancode_1)
i.ps2kb_press_key_scancode_2 0x08003360 Section 0 ps2kb.o(i.ps2kb_press_key_scancode_2)
i.ps2kb_read 0x080034f0 Section 0 ps2kb.o(i.ps2kb_read)
i.ps2kb_release_lines 0x080035ec Section 0 ps2kb.o(i.ps2kb_release_lines)
i.ps2kb_reset 0x0800360c Section 0 ps2kb.o(i.ps2kb_reset)
i.ps2kb_update 0x0800361c Section 0 main.o(i.ps2kb_update)
i.ps2kb_write 0x080036d0 Section 0 ps2kb.o(i.ps2kb_write)
i.ps2kb_write_nowait 0x08003714 Section 0 ps2kb.o(i.ps2kb_write_nowait)
i.ps2mouse_get_bus_status 0x08003838 Section 0 ps2mouse.o(i.ps2mouse_get_bus_status)
i.ps2mouse_get_outgoing_data 0x08003898 Section 0 ps2mouse.o(i.ps2mouse_get_outgoing_data)
i.ps2mouse_host_req_reply 0x08003944 Section 0 ps2mouse.o(i.ps2mouse_host_req_reply)
i.ps2mouse_init 0x08003adc Section 0 ps2mouse.o(i.ps2mouse_init)
i.ps2mouse_read 0x08003af8 Section 0 ps2mouse.o(i.ps2mouse_read)
i.ps2mouse_release_lines 0x08003bf0 Section 0 ps2mouse.o(i.ps2mouse_release_lines)
i.ps2mouse_reset 0x08003c10 Section 0 ps2mouse.o(i.ps2mouse_reset)
i.ps2mouse_restore_defaults 0x08003c28 Section 0 ps2mouse.o(i.ps2mouse_restore_defaults)
i.ps2mouse_send_update 0x08003c4c Section 0 ps2mouse.o(i.ps2mouse_send_update)
i.ps2mouse_update 0x08003c74 Section 0 main.o(i.ps2mouse_update)
i.ps2mouse_wait_for_idle 0x08003cd8 Section 0 ps2mouse.o(i.ps2mouse_wait_for_idle)
i.ps2mouse_write 0x08003cfe Section 0 ps2mouse.o(i.ps2mouse_write)
i.ps2mouse_write_delay_start 0x08003d18 Section 0 ps2mouse.o(i.ps2mouse_write_delay_start)
i.ps2mouse_write_nowait 0x08003d3c Section 0 ps2mouse.o(i.ps2mouse_write_nowait)
i.reset_accumulators 0x08003e5c Section 0 ps2mouse.o(i.reset_accumulators)
i.spi_error_dump_reboot 0x08003e6c Section 0 main.o(i.spi_error_dump_reboot)
i.wait_for_clk_high 0x08003ee4 Section 0 xt_kb.o(i.wait_for_clk_high)
i.xtkb_check_for_softreset 0x08003f14 Section 0 xt_kb.o(i.xtkb_check_for_softreset)
i.xtkb_enable 0x08003f54 Section 0 xt_kb.o(i.xtkb_enable)
i.xtkb_init 0x08003f68 Section 0 xt_kb.o(i.xtkb_init)
i.xtkb_press_key 0x08003f7c Section 0 xt_kb.o(i.xtkb_press_key)
i.xtkb_release_lines 0x08003ff4 Section 0 xt_kb.o(i.xtkb_release_lines)
i.xtkb_reset_bus 0x08004014 Section 0 xt_kb.o(i.xtkb_reset_bus)
i.xtkb_update 0x08004034 Section 0 main.o(i.xtkb_update)
i.xtkb_write 0x08004070 Section 0 xt_kb.o(i.xtkb_write)
.constdata 0x08004130 Section 121 ps2kb.o(.constdata)
.constdata 0x080041a9 Section 4 mcp4451.o(.constdata)
.constdata 0x080041ad Section 55 main.o(.constdata)
.constdata 0x080041e4 Section 16 system_stm32f0xx.o(.constdata)
.constdata 0x080041f4 Section 8 system_stm32f0xx.o(.constdata)
.data 0x20000000 Section 4 delay_us.o(.data)
.data 0x20000004 Section 20 ps2kb.o(.data)
.data 0x20000018 Section 32 ps2mouse.o(.data)
@@ -2284,65 +2284,65 @@ Image Symbol Table
kb_buf_peek 0x08002cc9 Thumb Code 32 helpers.o(i.kb_buf_peek)
kb_buf_pop 0x08002ce9 Thumb Code 24 helpers.o(i.kb_buf_pop)
kb_buf_reset 0x08002d01 Thumb Code 28 helpers.o(i.kb_buf_reset)
keyboard_reply 0x08002d1d Thumb Code 262 ps2kb.o(i.keyboard_reply)
main 0x08002e29 Thumb Code 410 main.o(i.main)
malloc 0x08003029 Thumb Code 92 malloc.o(i.malloc)
mcp4451_is_available 0x08003095 Thumb Code 26 mcp4451.o(i.mcp4451_is_available)
mcp4451_reset 0x080030b5 Thumb Code 38 mcp4451.o(i.mcp4451_reset)
mcp4451_write_wiper 0x080030e1 Thumb Code 46 mcp4451.o(i.mcp4451_write_wiper)
micros 0x08003119 Thumb Code 10 delay_us.o(i.micros)
microsoft_serial_mouse_update 0x08003129 Thumb Code 188 main.o(i.microsoft_serial_mouse_update)
mouse_buf_add 0x080031ed Thumb Code 50 helpers.o(i.mouse_buf_add)
mouse_buf_init 0x0800321f Thumb Code 24 helpers.o(i.mouse_buf_init)
mouse_buf_is_full 0x08003237 Thumb Code 28 helpers.o(i.mouse_buf_is_full)
mouse_buf_peek 0x08003253 Thumb Code 22 helpers.o(i.mouse_buf_peek)
mouse_buf_pop 0x08003269 Thumb Code 24 helpers.o(i.mouse_buf_pop)
mouse_buf_reset 0x08003281 Thumb Code 22 helpers.o(i.mouse_buf_reset)
protocol_status_lookup_init 0x08003299 Thumb Code 28 main.o(i.protocol_status_lookup_init)
ps2kb_get_bus_status 0x080032b9 Thumb Code 62 ps2kb.o(i.ps2kb_get_bus_status)
ps2kb_init 0x080032fd Thumb Code 22 ps2kb.o(i.ps2kb_init)
ps2kb_press_key 0x08003319 Thumb Code 40 ps2kb.o(i.ps2kb_press_key)
ps2kb_press_key_scancode_1 0x08003345 Thumb Code 40 ps2kb.o(i.ps2kb_press_key_scancode_1)
ps2kb_press_key_scancode_2 0x0800336d Thumb Code 396 ps2kb.o(i.ps2kb_press_key_scancode_2)
ps2kb_read 0x080034fd Thumb Code 246 ps2kb.o(i.ps2kb_read)
ps2kb_release_lines 0x080035f9 Thumb Code 26 ps2kb.o(i.ps2kb_release_lines)
ps2kb_reset 0x08003619 Thumb Code 12 ps2kb.o(i.ps2kb_reset)
ps2kb_update 0x08003629 Thumb Code 166 main.o(i.ps2kb_update)
ps2kb_write 0x080036dd Thumb Code 62 ps2kb.o(i.ps2kb_write)
ps2kb_write_nowait 0x08003721 Thumb Code 286 ps2kb.o(i.ps2kb_write_nowait)
ps2mouse_get_bus_status 0x08003845 Thumb Code 92 ps2mouse.o(i.ps2mouse_get_bus_status)
ps2mouse_get_outgoing_data 0x080038a5 Thumb Code 166 ps2mouse.o(i.ps2mouse_get_outgoing_data)
ps2mouse_host_req_reply 0x08003951 Thumb Code 402 ps2mouse.o(i.ps2mouse_host_req_reply)
ps2mouse_init 0x08003ae9 Thumb Code 22 ps2mouse.o(i.ps2mouse_init)
ps2mouse_read 0x08003b05 Thumb Code 244 ps2mouse.o(i.ps2mouse_read)
ps2mouse_release_lines 0x08003bfd Thumb Code 26 ps2mouse.o(i.ps2mouse_release_lines)
ps2mouse_reset 0x08003c1d Thumb Code 20 ps2mouse.o(i.ps2mouse_reset)
ps2mouse_restore_defaults 0x08003c35 Thumb Code 30 ps2mouse.o(i.ps2mouse_restore_defaults)
ps2mouse_send_update 0x08003c59 Thumb Code 38 ps2mouse.o(i.ps2mouse_send_update)
ps2mouse_update 0x08003c81 Thumb Code 90 main.o(i.ps2mouse_update)
ps2mouse_wait_for_idle 0x08003ce5 Thumb Code 38 ps2mouse.o(i.ps2mouse_wait_for_idle)
ps2mouse_write 0x08003d0b Thumb Code 26 ps2mouse.o(i.ps2mouse_write)
ps2mouse_write_delay_start 0x08003d25 Thumb Code 34 ps2mouse.o(i.ps2mouse_write_delay_start)
ps2mouse_write_nowait 0x08003d49 Thumb Code 282 ps2mouse.o(i.ps2mouse_write_nowait)
reset_accumulators 0x08003e69 Thumb Code 12 ps2mouse.o(i.reset_accumulators)
spi_error_dump_reboot 0x08003e79 Thumb Code 72 main.o(i.spi_error_dump_reboot)
wait_for_clk_high 0x08003ef1 Thumb Code 44 xt_kb.o(i.wait_for_clk_high)
xtkb_check_for_softreset 0x08003f21 Thumb Code 60 xt_kb.o(i.xtkb_check_for_softreset)
xtkb_enable 0x08003f61 Thumb Code 16 xt_kb.o(i.xtkb_enable)
xtkb_init 0x08003f75 Thumb Code 14 xt_kb.o(i.xtkb_init)
xtkb_press_key 0x08003f89 Thumb Code 116 xt_kb.o(i.xtkb_press_key)
xtkb_release_lines 0x08004001 Thumb Code 26 xt_kb.o(i.xtkb_release_lines)
xtkb_reset_bus 0x08004021 Thumb Code 26 xt_kb.o(i.xtkb_reset_bus)
xtkb_update 0x08004041 Thumb Code 50 main.o(i.xtkb_update)
xtkb_write 0x0800407d Thumb Code 186 xt_kb.o(i.xtkb_write)
linux_keycode_to_ps2_scancode_lookup_single_byte_codeset2 0x0800413c Data 89 ps2kb.o(.constdata)
linux_keycode_to_ps2_scancode_lookup_special_codeset2 0x08004195 Data 32 ps2kb.o(.constdata)
mcp4451_wiper_id_to_reg_addr_lookup 0x080041b5 Data 4 mcp4451.o(.constdata)
boot_message 0x080041b9 Data 55 main.o(.constdata)
AHBPrescTable 0x080041f0 Data 16 system_stm32f0xx.o(.constdata)
APBPrescTable 0x08004200 Data 8 system_stm32f0xx.o(.constdata)
Region$$Table$$Base 0x08004208 Number 0 anon$$obj.o(Region$$Table)
Region$$Table$$Limit 0x08004228 Number 0 anon$$obj.o(Region$$Table)
keyboard_reply 0x08002d1d Thumb Code 250 ps2kb.o(i.keyboard_reply)
main 0x08002e1d Thumb Code 410 main.o(i.main)
malloc 0x0800301d Thumb Code 92 malloc.o(i.malloc)
mcp4451_is_available 0x08003089 Thumb Code 26 mcp4451.o(i.mcp4451_is_available)
mcp4451_reset 0x080030a9 Thumb Code 38 mcp4451.o(i.mcp4451_reset)
mcp4451_write_wiper 0x080030d5 Thumb Code 46 mcp4451.o(i.mcp4451_write_wiper)
micros 0x0800310d Thumb Code 10 delay_us.o(i.micros)
microsoft_serial_mouse_update 0x0800311d Thumb Code 188 main.o(i.microsoft_serial_mouse_update)
mouse_buf_add 0x080031e1 Thumb Code 50 helpers.o(i.mouse_buf_add)
mouse_buf_init 0x08003213 Thumb Code 24 helpers.o(i.mouse_buf_init)
mouse_buf_is_full 0x0800322b Thumb Code 28 helpers.o(i.mouse_buf_is_full)
mouse_buf_peek 0x08003247 Thumb Code 22 helpers.o(i.mouse_buf_peek)
mouse_buf_pop 0x0800325d Thumb Code 24 helpers.o(i.mouse_buf_pop)
mouse_buf_reset 0x08003275 Thumb Code 22 helpers.o(i.mouse_buf_reset)
protocol_status_lookup_init 0x0800328d Thumb Code 28 main.o(i.protocol_status_lookup_init)
ps2kb_get_bus_status 0x080032ad Thumb Code 62 ps2kb.o(i.ps2kb_get_bus_status)
ps2kb_init 0x080032f1 Thumb Code 22 ps2kb.o(i.ps2kb_init)
ps2kb_press_key 0x0800330d Thumb Code 40 ps2kb.o(i.ps2kb_press_key)
ps2kb_press_key_scancode_1 0x08003339 Thumb Code 40 ps2kb.o(i.ps2kb_press_key_scancode_1)
ps2kb_press_key_scancode_2 0x08003361 Thumb Code 396 ps2kb.o(i.ps2kb_press_key_scancode_2)
ps2kb_read 0x080034f1 Thumb Code 246 ps2kb.o(i.ps2kb_read)
ps2kb_release_lines 0x080035ed Thumb Code 26 ps2kb.o(i.ps2kb_release_lines)
ps2kb_reset 0x0800360d Thumb Code 12 ps2kb.o(i.ps2kb_reset)
ps2kb_update 0x0800361d Thumb Code 166 main.o(i.ps2kb_update)
ps2kb_write 0x080036d1 Thumb Code 62 ps2kb.o(i.ps2kb_write)
ps2kb_write_nowait 0x08003715 Thumb Code 286 ps2kb.o(i.ps2kb_write_nowait)
ps2mouse_get_bus_status 0x08003839 Thumb Code 92 ps2mouse.o(i.ps2mouse_get_bus_status)
ps2mouse_get_outgoing_data 0x08003899 Thumb Code 166 ps2mouse.o(i.ps2mouse_get_outgoing_data)
ps2mouse_host_req_reply 0x08003945 Thumb Code 402 ps2mouse.o(i.ps2mouse_host_req_reply)
ps2mouse_init 0x08003add Thumb Code 22 ps2mouse.o(i.ps2mouse_init)
ps2mouse_read 0x08003af9 Thumb Code 244 ps2mouse.o(i.ps2mouse_read)
ps2mouse_release_lines 0x08003bf1 Thumb Code 26 ps2mouse.o(i.ps2mouse_release_lines)
ps2mouse_reset 0x08003c11 Thumb Code 20 ps2mouse.o(i.ps2mouse_reset)
ps2mouse_restore_defaults 0x08003c29 Thumb Code 30 ps2mouse.o(i.ps2mouse_restore_defaults)
ps2mouse_send_update 0x08003c4d Thumb Code 38 ps2mouse.o(i.ps2mouse_send_update)
ps2mouse_update 0x08003c75 Thumb Code 90 main.o(i.ps2mouse_update)
ps2mouse_wait_for_idle 0x08003cd9 Thumb Code 38 ps2mouse.o(i.ps2mouse_wait_for_idle)
ps2mouse_write 0x08003cff Thumb Code 26 ps2mouse.o(i.ps2mouse_write)
ps2mouse_write_delay_start 0x08003d19 Thumb Code 34 ps2mouse.o(i.ps2mouse_write_delay_start)
ps2mouse_write_nowait 0x08003d3d Thumb Code 282 ps2mouse.o(i.ps2mouse_write_nowait)
reset_accumulators 0x08003e5d Thumb Code 12 ps2mouse.o(i.reset_accumulators)
spi_error_dump_reboot 0x08003e6d Thumb Code 72 main.o(i.spi_error_dump_reboot)
wait_for_clk_high 0x08003ee5 Thumb Code 44 xt_kb.o(i.wait_for_clk_high)
xtkb_check_for_softreset 0x08003f15 Thumb Code 60 xt_kb.o(i.xtkb_check_for_softreset)
xtkb_enable 0x08003f55 Thumb Code 16 xt_kb.o(i.xtkb_enable)
xtkb_init 0x08003f69 Thumb Code 14 xt_kb.o(i.xtkb_init)
xtkb_press_key 0x08003f7d Thumb Code 116 xt_kb.o(i.xtkb_press_key)
xtkb_release_lines 0x08003ff5 Thumb Code 26 xt_kb.o(i.xtkb_release_lines)
xtkb_reset_bus 0x08004015 Thumb Code 26 xt_kb.o(i.xtkb_reset_bus)
xtkb_update 0x08004035 Thumb Code 50 main.o(i.xtkb_update)
xtkb_write 0x08004071 Thumb Code 186 xt_kb.o(i.xtkb_write)
linux_keycode_to_ps2_scancode_lookup_single_byte_codeset2 0x08004130 Data 89 ps2kb.o(.constdata)
linux_keycode_to_ps2_scancode_lookup_special_codeset2 0x08004189 Data 32 ps2kb.o(.constdata)
mcp4451_wiper_id_to_reg_addr_lookup 0x080041a9 Data 4 mcp4451.o(.constdata)
boot_message 0x080041ad Data 55 main.o(.constdata)
AHBPrescTable 0x080041e4 Data 16 system_stm32f0xx.o(.constdata)
APBPrescTable 0x080041f4 Data 8 system_stm32f0xx.o(.constdata)
Region$$Table$$Base 0x080041fc Number 0 anon$$obj.o(Region$$Table)
Region$$Table$$Limit 0x0800421c Number 0 anon$$obj.o(Region$$Table)
us_timer 0x20000000 Data 4 delay_us.o(.data)
ps2kb_current_scancode_set 0x20000004 Data 1 ps2kb.o(.data)
ps2kb_data_reporting_enabled 0x20000005 Data 1 ps2kb.o(.data)
@@ -2419,9 +2419,9 @@ Memory Map of the image
Image Entry point : 0x080000c1
Load Region LR_IROM1 (Base: 0x08000000, Size: 0x000042ac, Max: 0x00010000, ABSOLUTE)
Load Region LR_IROM1 (Base: 0x08000000, Size: 0x000042a0, Max: 0x00010000, ABSOLUTE)
Execution Region ER_IROM1 (Exec base: 0x08000000, Load base: 0x08000000, Size: 0x00004228, Max: 0x00010000, ABSOLUTE)
Execution Region ER_IROM1 (Exec base: 0x08000000, Load base: 0x08000000, Size: 0x0000421c, Max: 0x00010000, ABSOLUTE)
Exec Addr Load Addr Size Type Attr Idx E Section Name Object
@@ -2581,84 +2581,84 @@ Memory Map of the image
0x08002cc8 0x08002cc8 0x00000020 Code RO 163 i.kb_buf_peek helpers.o
0x08002ce8 0x08002ce8 0x00000018 Code RO 164 i.kb_buf_pop helpers.o
0x08002d00 0x08002d00 0x0000001c Code RO 165 i.kb_buf_reset helpers.o
0x08002d1c 0x08002d1c 0x0000010c Code RO 300 i.keyboard_reply ps2kb.o
0x08002e28 0x08002e28 0x00000200 Code RO 609 i.main main.o
0x08003028 0x08003028 0x0000006c Code RO 4226 i.malloc mc_p.l(malloc.o)
0x08003094 0x08003094 0x00000020 Code RO 487 i.mcp4451_is_available mcp4451.o
0x080030b4 0x080030b4 0x0000002c Code RO 488 i.mcp4451_reset mcp4451.o
0x080030e0 0x080030e0 0x00000038 Code RO 489 i.mcp4451_write_wiper mcp4451.o
0x08003118 0x08003118 0x00000010 Code RO 14 i.micros delay_us.o
0x08003128 0x08003128 0x000000c4 Code RO 610 i.microsoft_serial_mouse_update main.o
0x080031ec 0x080031ec 0x00000032 Code RO 166 i.mouse_buf_add helpers.o
0x0800321e 0x0800321e 0x00000018 Code RO 167 i.mouse_buf_init helpers.o
0x08003236 0x08003236 0x0000001c Code RO 169 i.mouse_buf_is_full helpers.o
0x08003252 0x08003252 0x00000016 Code RO 170 i.mouse_buf_peek helpers.o
0x08003268 0x08003268 0x00000018 Code RO 171 i.mouse_buf_pop helpers.o
0x08003280 0x08003280 0x00000016 Code RO 172 i.mouse_buf_reset helpers.o
0x08003296 0x08003296 0x00000002 PAD
0x08003298 0x08003298 0x00000020 Code RO 611 i.protocol_status_lookup_init main.o
0x080032b8 0x080032b8 0x00000044 Code RO 301 i.ps2kb_get_bus_status ps2kb.o
0x080032fc 0x080032fc 0x0000001c Code RO 302 i.ps2kb_init ps2kb.o
0x08003318 0x08003318 0x0000002c Code RO 303 i.ps2kb_press_key ps2kb.o
0x08003344 0x08003344 0x00000028 Code RO 304 i.ps2kb_press_key_scancode_1 ps2kb.o
0x0800336c 0x0800336c 0x00000190 Code RO 305 i.ps2kb_press_key_scancode_2 ps2kb.o
0x080034fc 0x080034fc 0x000000fc Code RO 306 i.ps2kb_read ps2kb.o
0x080035f8 0x080035f8 0x00000020 Code RO 307 i.ps2kb_release_lines ps2kb.o
0x08003618 0x08003618 0x00000010 Code RO 308 i.ps2kb_reset ps2kb.o
0x08003628 0x08003628 0x000000b4 Code RO 612 i.ps2kb_update main.o
0x080036dc 0x080036dc 0x00000044 Code RO 309 i.ps2kb_write ps2kb.o
0x08003720 0x08003720 0x00000124 Code RO 310 i.ps2kb_write_nowait ps2kb.o
0x08003844 0x08003844 0x00000060 Code RO 388 i.ps2mouse_get_bus_status ps2mouse.o
0x080038a4 0x080038a4 0x000000ac Code RO 389 i.ps2mouse_get_outgoing_data ps2mouse.o
0x08003950 0x08003950 0x00000198 Code RO 390 i.ps2mouse_host_req_reply ps2mouse.o
0x08003ae8 0x08003ae8 0x0000001c Code RO 391 i.ps2mouse_init ps2mouse.o
0x08003b04 0x08003b04 0x000000f8 Code RO 392 i.ps2mouse_read ps2mouse.o
0x08003bfc 0x08003bfc 0x00000020 Code RO 393 i.ps2mouse_release_lines ps2mouse.o
0x08003c1c 0x08003c1c 0x00000018 Code RO 394 i.ps2mouse_reset ps2mouse.o
0x08003c34 0x08003c34 0x00000024 Code RO 395 i.ps2mouse_restore_defaults ps2mouse.o
0x08003c58 0x08003c58 0x00000026 Code RO 396 i.ps2mouse_send_update ps2mouse.o
0x08003c7e 0x08003c7e 0x00000002 PAD
0x08003c80 0x08003c80 0x00000064 Code RO 613 i.ps2mouse_update main.o
0x08003ce4 0x08003ce4 0x00000026 Code RO 397 i.ps2mouse_wait_for_idle ps2mouse.o
0x08003d0a 0x08003d0a 0x0000001a Code RO 398 i.ps2mouse_write ps2mouse.o
0x08003d24 0x08003d24 0x00000022 Code RO 399 i.ps2mouse_write_delay_start ps2mouse.o
0x08003d46 0x08003d46 0x00000002 PAD
0x08003d48 0x08003d48 0x00000120 Code RO 400 i.ps2mouse_write_nowait ps2mouse.o
0x08003e68 0x08003e68 0x00000010 Code RO 401 i.reset_accumulators ps2mouse.o
0x08003e78 0x08003e78 0x00000078 Code RO 614 i.spi_error_dump_reboot main.o
0x08003ef0 0x08003ef0 0x00000030 Code RO 525 i.wait_for_clk_high xt_kb.o
0x08003f20 0x08003f20 0x00000040 Code RO 526 i.xtkb_check_for_softreset xt_kb.o
0x08003f60 0x08003f60 0x00000014 Code RO 527 i.xtkb_enable xt_kb.o
0x08003f74 0x08003f74 0x00000014 Code RO 528 i.xtkb_init xt_kb.o
0x08003f88 0x08003f88 0x00000078 Code RO 529 i.xtkb_press_key xt_kb.o
0x08004000 0x08004000 0x00000020 Code RO 530 i.xtkb_release_lines xt_kb.o
0x08004020 0x08004020 0x00000020 Code RO 531 i.xtkb_reset_bus xt_kb.o
0x08004040 0x08004040 0x0000003c Code RO 615 i.xtkb_update main.o
0x0800407c 0x0800407c 0x000000c0 Code RO 532 i.xtkb_write xt_kb.o
0x0800413c 0x0800413c 0x00000079 Data RO 311 .constdata ps2kb.o
0x080041b5 0x080041b5 0x00000004 Data RO 490 .constdata mcp4451.o
0x080041b9 0x080041b9 0x00000037 Data RO 621 .constdata main.o
0x080041f0 0x080041f0 0x00000010 Data RO 3921 .constdata system_stm32f0xx.o
0x08004200 0x08004200 0x00000008 Data RO 3922 .constdata system_stm32f0xx.o
0x08004208 0x08004208 0x00000020 Data RO 4293 Region$$Table anon$$obj.o
0x08002d1c 0x08002d1c 0x00000100 Code RO 300 i.keyboard_reply ps2kb.o
0x08002e1c 0x08002e1c 0x00000200 Code RO 609 i.main main.o
0x0800301c 0x0800301c 0x0000006c Code RO 4226 i.malloc mc_p.l(malloc.o)
0x08003088 0x08003088 0x00000020 Code RO 487 i.mcp4451_is_available mcp4451.o
0x080030a8 0x080030a8 0x0000002c Code RO 488 i.mcp4451_reset mcp4451.o
0x080030d4 0x080030d4 0x00000038 Code RO 489 i.mcp4451_write_wiper mcp4451.o
0x0800310c 0x0800310c 0x00000010 Code RO 14 i.micros delay_us.o
0x0800311c 0x0800311c 0x000000c4 Code RO 610 i.microsoft_serial_mouse_update main.o
0x080031e0 0x080031e0 0x00000032 Code RO 166 i.mouse_buf_add helpers.o
0x08003212 0x08003212 0x00000018 Code RO 167 i.mouse_buf_init helpers.o
0x0800322a 0x0800322a 0x0000001c Code RO 169 i.mouse_buf_is_full helpers.o
0x08003246 0x08003246 0x00000016 Code RO 170 i.mouse_buf_peek helpers.o
0x0800325c 0x0800325c 0x00000018 Code RO 171 i.mouse_buf_pop helpers.o
0x08003274 0x08003274 0x00000016 Code RO 172 i.mouse_buf_reset helpers.o
0x0800328a 0x0800328a 0x00000002 PAD
0x0800328c 0x0800328c 0x00000020 Code RO 611 i.protocol_status_lookup_init main.o
0x080032ac 0x080032ac 0x00000044 Code RO 301 i.ps2kb_get_bus_status ps2kb.o
0x080032f0 0x080032f0 0x0000001c Code RO 302 i.ps2kb_init ps2kb.o
0x0800330c 0x0800330c 0x0000002c Code RO 303 i.ps2kb_press_key ps2kb.o
0x08003338 0x08003338 0x00000028 Code RO 304 i.ps2kb_press_key_scancode_1 ps2kb.o
0x08003360 0x08003360 0x00000190 Code RO 305 i.ps2kb_press_key_scancode_2 ps2kb.o
0x080034f0 0x080034f0 0x000000fc Code RO 306 i.ps2kb_read ps2kb.o
0x080035ec 0x080035ec 0x00000020 Code RO 307 i.ps2kb_release_lines ps2kb.o
0x0800360c 0x0800360c 0x00000010 Code RO 308 i.ps2kb_reset ps2kb.o
0x0800361c 0x0800361c 0x000000b4 Code RO 612 i.ps2kb_update main.o
0x080036d0 0x080036d0 0x00000044 Code RO 309 i.ps2kb_write ps2kb.o
0x08003714 0x08003714 0x00000124 Code RO 310 i.ps2kb_write_nowait ps2kb.o
0x08003838 0x08003838 0x00000060 Code RO 388 i.ps2mouse_get_bus_status ps2mouse.o
0x08003898 0x08003898 0x000000ac Code RO 389 i.ps2mouse_get_outgoing_data ps2mouse.o
0x08003944 0x08003944 0x00000198 Code RO 390 i.ps2mouse_host_req_reply ps2mouse.o
0x08003adc 0x08003adc 0x0000001c Code RO 391 i.ps2mouse_init ps2mouse.o
0x08003af8 0x08003af8 0x000000f8 Code RO 392 i.ps2mouse_read ps2mouse.o
0x08003bf0 0x08003bf0 0x00000020 Code RO 393 i.ps2mouse_release_lines ps2mouse.o
0x08003c10 0x08003c10 0x00000018 Code RO 394 i.ps2mouse_reset ps2mouse.o
0x08003c28 0x08003c28 0x00000024 Code RO 395 i.ps2mouse_restore_defaults ps2mouse.o
0x08003c4c 0x08003c4c 0x00000026 Code RO 396 i.ps2mouse_send_update ps2mouse.o
0x08003c72 0x08003c72 0x00000002 PAD
0x08003c74 0x08003c74 0x00000064 Code RO 613 i.ps2mouse_update main.o
0x08003cd8 0x08003cd8 0x00000026 Code RO 397 i.ps2mouse_wait_for_idle ps2mouse.o
0x08003cfe 0x08003cfe 0x0000001a Code RO 398 i.ps2mouse_write ps2mouse.o
0x08003d18 0x08003d18 0x00000022 Code RO 399 i.ps2mouse_write_delay_start ps2mouse.o
0x08003d3a 0x08003d3a 0x00000002 PAD
0x08003d3c 0x08003d3c 0x00000120 Code RO 400 i.ps2mouse_write_nowait ps2mouse.o
0x08003e5c 0x08003e5c 0x00000010 Code RO 401 i.reset_accumulators ps2mouse.o
0x08003e6c 0x08003e6c 0x00000078 Code RO 614 i.spi_error_dump_reboot main.o
0x08003ee4 0x08003ee4 0x00000030 Code RO 525 i.wait_for_clk_high xt_kb.o
0x08003f14 0x08003f14 0x00000040 Code RO 526 i.xtkb_check_for_softreset xt_kb.o
0x08003f54 0x08003f54 0x00000014 Code RO 527 i.xtkb_enable xt_kb.o
0x08003f68 0x08003f68 0x00000014 Code RO 528 i.xtkb_init xt_kb.o
0x08003f7c 0x08003f7c 0x00000078 Code RO 529 i.xtkb_press_key xt_kb.o
0x08003ff4 0x08003ff4 0x00000020 Code RO 530 i.xtkb_release_lines xt_kb.o
0x08004014 0x08004014 0x00000020 Code RO 531 i.xtkb_reset_bus xt_kb.o
0x08004034 0x08004034 0x0000003c Code RO 615 i.xtkb_update main.o
0x08004070 0x08004070 0x000000c0 Code RO 532 i.xtkb_write xt_kb.o
0x08004130 0x08004130 0x00000079 Data RO 311 .constdata ps2kb.o
0x080041a9 0x080041a9 0x00000004 Data RO 490 .constdata mcp4451.o
0x080041ad 0x080041ad 0x00000037 Data RO 621 .constdata main.o
0x080041e4 0x080041e4 0x00000010 Data RO 3921 .constdata system_stm32f0xx.o
0x080041f4 0x080041f4 0x00000008 Data RO 3922 .constdata system_stm32f0xx.o
0x080041fc 0x080041fc 0x00000020 Data RO 4293 Region$$Table anon$$obj.o
Execution Region RW_IRAM1 (Exec base: 0x20000000, Load base: 0x08004228, Size: 0x00000908, Max: 0x00004000, ABSOLUTE)
Execution Region RW_IRAM1 (Exec base: 0x20000000, Load base: 0x0800421c, Size: 0x00000908, Max: 0x00004000, ABSOLUTE)
Exec Addr Load Addr Size Type Attr Idx E Section Name Object
0x20000000 0x08004228 0x00000004 Data RW 15 .data delay_us.o
0x20000004 0x0800422c 0x00000014 Data RW 312 .data ps2kb.o
0x20000018 0x08004240 0x00000020 Data RW 402 .data ps2mouse.o
0x20000038 0x08004260 0x00000014 Data RW 533 .data xt_kb.o
0x2000004c 0x08004274 0x00000024 Data RW 622 .data main.o
0x20000070 0x08004298 0x00000004 Data RW 3216 .data stm32f0xx_hal.o
0x20000074 0x0800429c 0x00000004 Data RW 3923 .data system_stm32f0xx.o
0x20000078 0x080042a0 0x00000004 Data RW 4267 .data mc_p.l(stdout.o)
0x2000007c 0x080042a4 0x00000004 Data RW 4270 .data mc_p.l(mvars.o)
0x20000080 0x080042a8 0x00000004 Data RW 4271 .data mc_p.l(mvars.o)
0x20000000 0x0800421c 0x00000004 Data RW 15 .data delay_us.o
0x20000004 0x08004220 0x00000014 Data RW 312 .data ps2kb.o
0x20000018 0x08004234 0x00000020 Data RW 402 .data ps2mouse.o
0x20000038 0x08004254 0x00000014 Data RW 533 .data xt_kb.o
0x2000004c 0x08004268 0x00000024 Data RW 622 .data main.o
0x20000070 0x0800428c 0x00000004 Data RW 3216 .data stm32f0xx_hal.o
0x20000074 0x08004290 0x00000004 Data RW 3923 .data system_stm32f0xx.o
0x20000078 0x08004294 0x00000004 Data RW 4267 .data mc_p.l(stdout.o)
0x2000007c 0x08004298 0x00000004 Data RW 4270 .data mc_p.l(mvars.o)
0x20000080 0x0800429c 0x00000004 Data RW 4271 .data mc_p.l(mvars.o)
0x20000084 - 0x0000027d Zero RW 616 .bss main.o
0x20000301 0x080042ac 0x00000007 PAD
0x20000301 0x080042a0 0x00000007 PAD
0x20000308 - 0x00000200 Zero RW 2 HEAP startup_stm32f072xb.o
0x20000508 - 0x00000400 Zero RW 1 STACK startup_stm32f072xb.o
@@ -2674,7 +2674,7 @@ Image component sizes
532 0 0 0 0 11932 helpers.o
2900 358 55 36 637 22444 main.o
132 22 4 0 0 2287 mcp4451.o
1534 76 121 20 0 9458 ps2kb.o
1522 76 121 20 0 9442 ps2kb.o
1484 72 0 32 0 11410 ps2mouse.o
28 8 192 0 1536 628 startup_stm32f072xb.o
122 18 0 4 0 3603 stm32f0xx_hal.o
@@ -2697,7 +2697,7 @@ Image component sizes
528 52 0 20 0 5910 xt_kb.o
----------------------------------------------------------------------
15706 1012 428 120 2180 650271 Object Totals
15694 1012 428 120 2180 650255 Object Totals
0 0 32 0 0 0 (incl. Generated)
34 0 0 0 7 0 (incl. Padding)
@@ -2743,15 +2743,15 @@ Image component sizes
Code (inc. data) RO Data RW Data ZI Data Debug
16508 1056 428 132 2180 643443 Grand Totals
16508 1056 428 132 2180 643443 ELF Image Totals
16508 1056 428 132 0 0 ROM Totals
16496 1056 428 132 2180 643427 Grand Totals
16496 1056 428 132 2180 643427 ELF Image Totals
16496 1056 428 132 0 0 ROM Totals
==============================================================================
Total RO Size (Code + RO Data) 16936 ( 16.54kB)
Total RO Size (Code + RO Data) 16924 ( 16.53kB)
Total RW Size (RW Data + ZI Data) 2312 ( 2.26kB)
Total ROM Size (Code + RO Data + RW Data) 17068 ( 16.67kB)
Total ROM Size (Code + RO Data + RW Data) 17056 ( 16.66kB)
==============================================================================

View File

@@ -74,7 +74,7 @@ I (../Drivers/STM32F0xx_HAL_Driver/Inc/stm32f0xx_hal_tim_ex.h)(0x5DFA0893)
I (../Drivers/STM32F0xx_HAL_Driver/Inc/stm32f0xx_hal.h)(0x5DFA0893)
I (../Inc/stm32f0xx_hal_conf.h)(0x62423606)
I (../Inc/main.h)(0x62423606)
I (../Drivers/STM32F0xx_HAL_Driver/Inc/stm32f0xx_hal_rcc.h)(0x5DFA0893)
I (../Drivers/STM32F0xx_HAL_Driver/Inc/stm32f0xx_hal_rcc.h)(0x5DFA0893)
I (../Drivers/STM32F0xx_HAL_Driver/Inc/stm32f0xx_hal_def.h)(0x5DFA0893)
I (../Drivers/CMSIS/Device/ST/STM32F0xx/Include/stm32f0xx.h)(0x5DFA0880)
I (../Drivers/CMSIS/Device/ST/STM32F0xx/Include/stm32f072xb.h)(0x5DFA0880)
@@ -239,7 +239,7 @@ I (../Inc/shared.h)(0x61B61A00)
I (../Drivers/CMSIS/Include/core_cmFunc.h)(0x5DFA0892)
I (../Drivers/CMSIS/Device/ST/STM32F0xx/Include/system_stm32f0xx.h)(0x5DFA0880)
I (../Drivers/STM32F0xx_HAL_Driver/Inc/stm32f0xx_hal_rcc_ex.h)(0x5DFA0893)
I (../Drivers/STM32F0xx_HAL_Driver/Inc/stm32f0xx_hal_gpio.h)(0x5DFA0893)
I (../Drivers/STM32F0xx_HAL_Driver/Inc/stm32f0xx_hal_gpio.h)(0x5DFA0893)
I (../Drivers/STM32F0xx_HAL_Driver/Inc/stm32f0xx_hal_gpio_ex.h)(0x5DFA0893)
I (../Drivers/STM32F0xx_HAL_Driver/Inc/stm32f0xx_hal_dma.h)(0x5DFA0893)
I (../Drivers/STM32F0xx_HAL_Driver/Inc/stm32f0xx_hal_dma_ex.h)(0x5DFA0893)

View File

Binary file not shown.

View File

Binary file not shown.

View File

Binary file not shown.

View File

Binary file not shown.

View File

@@ -354,6 +354,7 @@ void keyboard_reply(uint8_t cmd, uint8_t *leds)
PS2KB_SENDACK();
else
ps2kb_write(0xFE, 1, PS2KB_WRITE_DEFAULT_TIMEOUT_MS);
break;
case 0xF6: //set defaults
PS2KB_SENDACK();
break;
@@ -513,8 +514,6 @@ uint8_t ps2kb_press_key_scancode_2(uint8_t linux_keycode, uint8_t linux_keyvalue
return PS2_ERROR_UNKNOWN;
}
uint8_t ps2kb_press_key(uint8_t linux_keycode, uint8_t linux_keyvalue)
{
if(ps2kb_data_reporting_enabled == 0)