added 200Hz rate limit for PS/2

This commit is contained in:
dekunukem
2023-04-30 22:39:54 +01:00
parent 3b944ffc57
commit 5d1a74e32b
15 changed files with 1578 additions and 408 deletions

View File

File diff suppressed because one or more lines are too long

View File

@@ -421,14 +421,6 @@
</File>
</Group>
<Group>
<GroupName>::CMSIS</GroupName>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
<cbSel>0</cbSel>
<RteFlg>1</RteFlg>
</Group>
<Group>
<GroupName>Drivers/STM32F0xx_HAL_Driver</GroupName>
<tvExp>0</tvExp>
@@ -436,7 +428,7 @@
<cbSel>0</cbSel>
<RteFlg>0</RteFlg>
<File>
<GroupNumber>4</GroupNumber>
<GroupNumber>3</GroupNumber>
<FileNumber>18</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
@@ -448,7 +440,7 @@
<bShared>0</bShared>
</File>
<File>
<GroupNumber>4</GroupNumber>
<GroupNumber>3</GroupNumber>
<FileNumber>19</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
@@ -460,7 +452,7 @@
<bShared>0</bShared>
</File>
<File>
<GroupNumber>4</GroupNumber>
<GroupNumber>3</GroupNumber>
<FileNumber>20</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
@@ -472,7 +464,7 @@
<bShared>0</bShared>
</File>
<File>
<GroupNumber>4</GroupNumber>
<GroupNumber>3</GroupNumber>
<FileNumber>21</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
@@ -484,7 +476,7 @@
<bShared>0</bShared>
</File>
<File>
<GroupNumber>4</GroupNumber>
<GroupNumber>3</GroupNumber>
<FileNumber>22</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
@@ -496,7 +488,7 @@
<bShared>0</bShared>
</File>
<File>
<GroupNumber>4</GroupNumber>
<GroupNumber>3</GroupNumber>
<FileNumber>23</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
@@ -508,7 +500,7 @@
<bShared>0</bShared>
</File>
<File>
<GroupNumber>4</GroupNumber>
<GroupNumber>3</GroupNumber>
<FileNumber>24</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
@@ -520,7 +512,7 @@
<bShared>0</bShared>
</File>
<File>
<GroupNumber>4</GroupNumber>
<GroupNumber>3</GroupNumber>
<FileNumber>25</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
@@ -532,7 +524,7 @@
<bShared>0</bShared>
</File>
<File>
<GroupNumber>4</GroupNumber>
<GroupNumber>3</GroupNumber>
<FileNumber>26</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
@@ -544,7 +536,7 @@
<bShared>0</bShared>
</File>
<File>
<GroupNumber>4</GroupNumber>
<GroupNumber>3</GroupNumber>
<FileNumber>27</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
@@ -556,7 +548,7 @@
<bShared>0</bShared>
</File>
<File>
<GroupNumber>4</GroupNumber>
<GroupNumber>3</GroupNumber>
<FileNumber>28</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
@@ -568,7 +560,7 @@
<bShared>0</bShared>
</File>
<File>
<GroupNumber>4</GroupNumber>
<GroupNumber>3</GroupNumber>
<FileNumber>29</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
@@ -580,7 +572,7 @@
<bShared>0</bShared>
</File>
<File>
<GroupNumber>4</GroupNumber>
<GroupNumber>3</GroupNumber>
<FileNumber>30</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
@@ -592,7 +584,7 @@
<bShared>0</bShared>
</File>
<File>
<GroupNumber>4</GroupNumber>
<GroupNumber>3</GroupNumber>
<FileNumber>31</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
@@ -604,7 +596,7 @@
<bShared>0</bShared>
</File>
<File>
<GroupNumber>4</GroupNumber>
<GroupNumber>3</GroupNumber>
<FileNumber>32</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
@@ -616,7 +608,7 @@
<bShared>0</bShared>
</File>
<File>
<GroupNumber>4</GroupNumber>
<GroupNumber>3</GroupNumber>
<FileNumber>33</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
@@ -628,7 +620,7 @@
<bShared>0</bShared>
</File>
<File>
<GroupNumber>4</GroupNumber>
<GroupNumber>3</GroupNumber>
<FileNumber>34</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
@@ -640,7 +632,7 @@
<bShared>0</bShared>
</File>
<File>
<GroupNumber>4</GroupNumber>
<GroupNumber>3</GroupNumber>
<FileNumber>35</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
@@ -652,7 +644,7 @@
<bShared>0</bShared>
</File>
<File>
<GroupNumber>4</GroupNumber>
<GroupNumber>3</GroupNumber>
<FileNumber>36</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
@@ -672,7 +664,7 @@
<cbSel>0</cbSel>
<RteFlg>0</RteFlg>
<File>
<GroupNumber>5</GroupNumber>
<GroupNumber>4</GroupNumber>
<FileNumber>37</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
@@ -685,4 +677,12 @@
</File>
</Group>
<Group>
<GroupName>::CMSIS</GroupName>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
<cbSel>0</cbSel>
<RteFlg>1</RteFlg>
</Group>
</ProjectOpt>

View File

@@ -474,9 +474,6 @@
</File>
</Files>
</Group>
<Group>
<GroupName>::CMSIS</GroupName>
</Group>
<Group>
<GroupName>Drivers/STM32F0xx_HAL_Driver</GroupName>
<Files>
@@ -587,6 +584,9 @@
</File>
</Files>
</Group>
<Group>
<GroupName>::CMSIS</GroupName>
</Group>
</Groups>
</Target>
</Targets>

View File

Binary file not shown.

View File

@@ -22,16 +22,25 @@ Dialog DLL: TARMCM1.DLL V1.14.1.0
<h2>Project:</h2>
C:\Users\allen\Desktop\repos\USB4VC\firmware\ibmpc\MDK-ARM\ibmpc.uvprojx
Project File Date: 03/07/2023
Project File Date: 04/30/2023
<h2>Output:</h2>
*** Using Compiler 'V5.06 update 6 (build 750)', folder: 'C:\Keil_v5\ARM\ARMCC\Bin'
Build target 'ibmpc'
compiling ps2mouse.c...
compiling main.c...
../Src/main.c(556): 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(557): 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(558): 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(559): 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
linking...
Program Size: Code=17252 RO-data=768 RW-data=140 ZI-data=2340
Program Size: Code=17284 RO-data=768 RW-data=144 ZI-data=2344
FromELF: creating hex file...
"ibmpc\ibmpc.axf" - 0 Error(s), 0 Warning(s).
"ibmpc\ibmpc.axf" - 0 Error(s), 4 Warning(s).
<h2>Software Packages used:</h2>

View File

@@ -1,5 +1,5 @@
:020000040800F2
:10000000B0090020D50000083D1E00087519000841
:10000000B8090020D50000083D1E00087519000839
:1000100000000000000000000000000000000000E0
:100020000000000000000000000000007B2100082C
:100030000000000000000000851E00087D2100086F
@@ -12,7 +12,7 @@
:1000A000E7000008891E0008E7000008E7000008D4
:1000B000E70000087D270008E7000008E7000008C7
:1000C0000348854600F04EF800480047152F000809
:1000D000B00900200448804704480047FEE7FEE7D7
:1000D000B80900200448804704480047FEE7FEE7CF
:1000E000FEE7FEE7FEE7FEE7F5210008C100000895
:1000F00030B50B46014600202022012409E00D46C0
:10010000D5409D4205D31D469540491B2546954047
@@ -23,7 +23,7 @@
:10015000F6E710B513460A4604461946FFF7F0FFC6
:10016000204610BD064C0125064E05E0E36807CC8D
:100170002B430C3C98471034B442F7D3FFF7A4FF4D
:10018000444600086446000810B5022000F042F81A
:10018000644600088446000810B5022000F042F8DA
:1001900010BD70B50024014620314A78022A03D0F0
:1001A00004218163012416E0026813680E25AB4325
:1001B0001360026813685B085B0013600122056C22
@@ -57,7 +57,7 @@
:100370000004004800080048000C00480010004835
:10038000000401400069084000D001207047426924
:100390004A4042617047002A01D081617047816202
:1003A0007047000001480068704700007800002096
:1003A0007047000001480068704700007C00002092
:1003B00070B5024640325378202B1CD11378012BA4
:1003C00019D00123137024245470046825689D43B8
:1003D0002560046825681E03B54325600468256808
@@ -130,7 +130,7 @@
:1008000001E004490160002070BD0000CCCC000074
:1008100055550000AAAA00000068024901600020A6
:1008200070470000AAAA000002480168491C016044
:10083000704700007800002010B5064801681022BB
:10083000704700007C00002010B5064801681022B7
:1008400011430160002000F007F800F017F80020C5
:1008500010BD00000020024010B5044600F078F9F9
:100860007D21C900FFF744FC00F0E2FD0022214693
@@ -179,10 +179,10 @@
:100B10006068072109028843E9680843606000F0C3
:100B20002DF86168084A0906090F515CC840074959
:100B300008600020FFF790FE0020F8BD0020024072
:100B40000010024088130000294600087C000020A5
:100B500001480068704700007C00002004480549F7
:100B40000010024088130000494600088000002081
:100B500001480068704700008000002004480549F3
:100B600000684968044A4905490F515CC84070470C
:100B70007C000020001002403946000830B516A362
:100B700080000020001002405946000830B516A33E
:100B80000FCB89B06C460FC417A30FCB0FC41A4903
:100B90004A680C20144604401848042C05D0184B11
:100BA000082C04D00C2C00D1184609B030BD94029A
@@ -299,27 +299,27 @@
:10129000CF1E0008611F0008F8B501220920D10304
:1012A000C006FFF778F856492022881AFEF736FF65
:1012B000534C0127203C2078524EDE2801D0777213
:1012C00090E0A07808280BD0092810D000250B2822
:1012D00030D003284AD001284FD0022879D081E0AD
:1012E0004748A2792179203001F00EFD7AE061793A
:1012C00091E0A07808280BD0092810D000250B2821
:1012D00030D003284AD001284FD002287AD082E0AB
:1012E0004748A2792179203001F00EFD7BE0617939
:1012F000207901F05DFB424A2C321060E179A0793F
:1013000001F056FB40425060207A3D494042107245
:10131000607A5072607B9072A07B1073E07BD07219
:10132000207C5073607C907336482C31203001F063
:10133000EBFF57E0324821794C3001706179417000
:10132000207C5073607C907336482C31243001F05F
:10133000EBFF58E0324821794C30017061794170FF
:10134000A1798170E179C170057145718571C571AF
:10135000217A0172617A4172A17A8172E17AC17255
:1013600001462848283001F051FB3BE001210022D2
:1013700049032548FFF70FF834E021482021403881
:10136000014628482C3001F051FB3CE001210022CD
:1013700049032548FFF70FF835E021482021403880
:10138000FEF7E5FE1E48CD214038017061784170BE
:1013900080238370C7703178017145710521817197
:1013A000C171082200210546A1356C5C002C0CD0CF
:1013B000022C02D0012C03D005E0815403E008E0A8
:1013C0000C461C438454521CD2B2491C1029ECDB3D
:1013D00008E00325605D002804D001F013FC6D1CBB
:1013E000202DF7DB064A2023114640390748FFF736
:1013F000E9FE01F01FFF064940187061F8BD0000CA
:101400003C0300204800002000080048780100202C
:1013A0000621C171082200210546A1356C5C002C84
:1013B0000CD0022C02D0012C03D005E0815403E0B4
:1013C00008E00C461C438454521CD2B2491C10291C
:1013D000ECDB08E00325605D002804D001F012FC7E
:1013E0006D1C202DF7DB064A2023114640390748A3
:1013F000FFF7E8FE01F01EFF054940187061F8BDD7
:101400004003002048000020000800487C01002024
:1014100010270000042204490428086902D09043E0
:10142000086170471043FBE700E000E070470000F0
:10143000094910B5401E884201D9012010BD074C52
@@ -465,30 +465,30 @@
:101CF0000161416181610122C161C2600162FEF73F
:101D0000A1FB002800D0FEE700210848FEF750FBA9
:101D1000002800D0FEE700210448FEF76EFB0028F3
:101D200000D0FEE710BD0000005800401C0100205C
:101D200000D0FEE710BD0000005800402001002058
:101D30005D3E302010B50D480B4901600021416027
:101D40008160016141618161072201621202416289
:101D5000C260816207220163C2624163FFF7AAF990
:101D6000002800D0FEE710BD0030014078010020BF
:101D6000002800D0FEE710BD003001407C010020BB
:101D700010B50121124886B08907016000242F2187
:101D8000846041600461611E8461C160FFF790FB63
:101D9000002800D0FEE701200003009069460848B3
:101DA000FFF7BEFB002800D0FEE7049404A9044816
:101DB0000594FFF759FB002800D0FEE706B010BDE0
:101DC000DC01002010B50C480A490160E1214902FC
:101DC000E001002010B50C480A490160E1214902F8
:101DD000416000218160C16001618161C1610C22AB
:101DE000016242614162FFF7AFFC002800D0FEE7CC
:101DF00010BD0000003801401C02002010B50E4844
:101DF00010BD0000003801402002002010B50E4840
:101E00000C4901604B21090141600021C160016161
:101E100081610C22C1614261016230214162012174
:101E2000090381634900C163FFF78EFC002800D0DD
:101E3000FEE710BD004800408C0200207047000003
:101E3000FEE710BD004800409002002070470000FF
:101E40008307FF22DB0E9A408907090E994000287C
:101E50000BDA0007000F0838830808489B001818A1
:101E6000C36993430B43C3617047830804489B00D5
:101E70001B181868904308431860704700ED00E095
:101E800000E400E07047000010B50248FFF7A8F832
:101E900010BD00007801002010B50168C968026C0F
:101E900010BD00007C01002010B50168C968026C0B
:101EA0001180016C891C016401464031CA88521EB0
:101EB000CA80C988002909D101684A6840239A4329
:101EC0004A60C18F002901D100F06EF810BD10B535
@@ -631,9 +631,9 @@
:102750008160202060346072A0720020207203200B
:1027600005B0F0BD2068C1693046884304D0002020
:10277000B842D9D00020F3E70120F9E710B50248AC
:10278000FEF748FF10BD00008C0200200FB410B50A
:10278000FEF748FF10BD0000900200200FB410B506
:1027900003A9044B044A029800F024F810BC08BCBA
:1027A00004B01847F52900088000002030B47446B2
:1027A00004B01847F52900088400002030B47446AE
:1027B000641E2578641CAB4200D21D46635D5B003D
:1027C000E31830BC184702E008C8121F08C1002AED
:1027D000FAD170477047002001E001C1121F002AA2
@@ -671,7 +671,7 @@
:1029D000014600F02FFC411800F02CFC8842FBD38C
:1029E00000BD000010B502490860FEF78DFD10BD66
:1029F0000000002013B56423012269460248FEF757
:102A000022FF00981CBD00001C02002010B50B46E0
:102A000022FF00981CBD00002002002010B50B46DC
:102A1000044600F01DF8002801D0012010BD2078E8
:102A20000C226168504308181946FDF777FB20789F
:102A3000401C4007400F2070002010BD10B5044618
@@ -690,7 +690,7 @@
:102B0000607A291A002000F079FBA07A291A0220A5
:102B100000F074FBE07A291A012000F06FFB0648F0
:102B2000FFF7ACFF70BD0122C4E70122CBE7012211
:102B3000D3E70122D9E7000070000020001400480C
:102B3000D3E70122D9E70000740000200014004808
:102B40000008004870B50C4C012202212046FDF718
:102B500022FC0A4D0122D1032846FDF71CFC01226C
:102B600011462046FDF717FC012291032846FDF788
@@ -707,19 +707,19 @@
:102C10002BD2254D285D002827D0002926D0022858
:102C200023D122482300FFF7C1FD091E060D1E1007
:102C3000161E1C191E00FF2301330246590000F026
:102C400039FC10E001F000FB0DE0102302462021CA
:102C400039FC10E001F010FB0DE0102302462021BA
:102C500001F09EF807E000F0A1FB04E000F0AAFB01
:102C600001E0FFF76FFF0120285570BD0128FCD15E
:102C7000022028552300FFF799FD0805060B050ED5
:102C800005051305F1E700F0D9FD00F0E7FD70BD83
:102C900001F02AFB70BD01F015F901F003F970BDD8
:102CA000FFF750FF70BD00009D03002000040048A6
:102C900001F03AFB70BD01F015F901F003F970BDC8
:102CA000FFF750FF70BD0000A103002000040048A2
:102CB000002802D0ED2901D3002070470B4882780C
:102CC0000B48012A04D0022A06D0032A08D00BE0C0
:102CD0008E2909D2042206E08E2905D2022202E0C2
:102CE0008E2901D2032242540120704704000020A3
:102CF0008C000020102803D20249085C012800D073
:102D0000002070479D03002010B50C46034600F0DC
:102CF00090000020102803D20249085C012800D06F
:102D000000207047A103002010B50C46034600F0D8
:102D10001FF8002801D0012010BD197858684454CC
:102D20001978986842541878401C4007400F187072
:102D3000002010BD10B50446082000F001FA6060C4
@@ -752,38 +752,38 @@
:102EE0000021207802E014220121EE2000F032FDC2
:102EF000FEBD14220121FA2000F02CFD1E210298B3
:102F000000F01EFC00288BD0FEBD00000400002055
:102F10008C0000201CB57148714C8089A081FDF7A0
:102F1000900000201CB57148714C8089A081FDF79C
:102F20008BFCFFF731F9FEF72DFEFEF7D9FEFEF719
:102F300001FFFEF71DFFFEF745FFFEF75FFF6A4842
:102F400068490160032141606849C1608160FDF703
:102F500031FC002800D0FEE76348FDF75DFC05204A
:102F60000090019000232278614962A0FFF70EFCD7
:102F70005D487430FFF736FD00F068FAFF26013631
:102F8000614D77002A4633463946104600F092FAE2
:102F90002A4633463946104601F060F92A46102386
:102FA0002021104600F0F4FE0220FFF7A3FE0028C7
:102FB00001D001F049F95548FFF7BCFE48482030E0
:102FC00000F0B8F946482830FFF738FD00F0FEF869
:102FD0004E4820216038FDF7BAF84C4A4248203A62
:102FE0001146202340391030FEF7ECF8A18948A0A3
:102FF000FFF7CCFB00F0DAF8002812D148A0FFF769
:10300000C5FB002708212846FDF7C1F93220FDF74E
:10301000E4F87F1C0A2FF5DB012208212846FDF782
:10302000BAF90927FF063048FDF7F6FB00F002F970
:103030006169884205D901210022C9033846FDF79C
:10304000AAF90420FFF756FE002809D00121C90380
:103050002846FDF797F9002802D000F05FFF0EE048
:103060000520FFF747FE002802D000F0EBF806E04D
:103070000820FFF73FFE002801D000F0A5F901204D
:10308000FFF738FE00280FD031463846FDF77AF9B1
:10309000002809D000F0F4FB002812D00022012102
:1030A0003846FDF778F90CE00220FFF723FE0028F0
:1030B00007D031463846FDF765F9002801D001F008
:1030C00033F90720FFF716FE002801D0FFF7E8FCD0
:1030D000607A0028A7D001F043F80000C0F7FF1F76
:1030E000480000200030004068010020FF0F000071
:1030F000F245000825730A726576256420762564FA
:103100002E25642E25640A00000400485C0300207C
:102F500031FC002800D0FEE76348FDF75DFC062148
:102F600005200191009000232278614961A0FFF7BC
:102F70000DFC5D487430FFF735FD00F067FAFF2661
:102F80000136614D77002A4633463946104600F037
:102F900091FA2A4633463946104601F06FF92A461F
:102FA00010232021104600F0F3FE0220FFF7A2FEBE
:102FB000002801D001F058F95448FFF7BBFE4848FB
:102FC000243000F0B7F946482C30FFF737FD00F009
:102FD000FDF84E4820216038FDF7B9F84B4A4248C9
:102FE000203A1146202340391030FEF7EBF8A18932
:102FF00047A0FFF7CBFB00F0D9F8002812D148A07A
:10300000FFF7C4FB002708212846FDF7C0F932204E
:10301000FDF7E3F87F1C0A2FF5DB01220821284683
:10302000FDF7B9F90927FF062F48FDF7F5FB00F07A
:1030300001F96169884205D901210022C903384696
:10304000FDF7A9F90420FFF755FE002809D001215A
:10305000C9032846FDF796F9002802D000F05EFF6C
:103060000EE00520FFF746FE002802D000F0EAF847
:1030700006E00820FFF73EFE002801D000F0A4F98A
:103080000120FFF737FE00280FD031463846FDF704
:1030900079F9002809D000F0F3FB002812D00022B3
:1030A00001213846FDF777F90CE00220FFF722FEF8
:1030B000002807D031463846FDF764F9002801D0D2
:1030C00001F042F90720FFF715FE002801D0FFF7B5
:1030D000E7FC607A0028A7D001F052F8C0F7FF1F84
:1030E00048000020003000406C010020FF0F00006D
:1030F0001246000825730A726576256420762564D9
:103100002E25642E25640A00000400486003002078
:10311000666C6173685F73697A653A2025640A009A
:103120004469676974616C20706F74206E6F7420DD
:10313000726573706F6E64696E67210A000000002B
@@ -792,21 +792,21 @@
:1031600030C3083B00E04368136002C004E0021D66
:1031700010680028ECD13046002803D138680028B8
:1031800001D00020F0BD064A06481060064A121A17
:10319000D208D20044C001203860D7E78800002060
:1031A00084000020B4030020B005002010B5642383
:10319000D208D20044C001203860D7E78C0000205C
:1031A00088000020BC030020B805002010B564236F
:1031B000012258210448FDF79FF9002801D0002082
:1031C00010BD012010BD00001C01002070B50A4C8C
:1031C00010BD012010BD00002001002070B50A4C88
:1031D000002204212046FDF7DEF87D25ED0028467B
:1031E000FFF7F5FB012204212046FDF7D4F828461D
:1031F000FFF7EDFB70BD00000004004803B583B08D
:10320000042802D3FF2005B000BD08496423085CF0
:1032100001210007020E04A80293019100900B46C1
:1032200058210348FDF7F6F9EDE70000EE450008E8
:103230001C010020024800680068406A70470000D6
:1032200058210348FDF7F6F9EDE700000E460008C7
:1032300020010020024800680068406A70470000D2
:103240000000002070B52E4C207A002601250028B1
:1032500008D04D20E0710122E11D2A48FEF757FBFE
:10326000A57226722648203000F07AF8002845D052
:10327000A07A002842D123492148EC312030FFF7C1
:10326000A57226722648243000F07AF8002845D04E
:10327000A07A002842D123492148EC312430FFF7BD
:103280007FFC1F48C0210E300680867001701D49EA
:10329000EC318A7A002A01D0E02202700A7B002AEF
:1032A00003D0027810231A4302700A88898812B268
@@ -815,7 +815,7 @@
:1032D0000378022633430370530602D503782B4349
:1032E00003709206920E42708906890E817004491D
:1032F00003220E310348FEF70AFBA57270BD0000E1
:10330000480000208C02002030B50B46024600F039
:10330000480000209002002030B50B46024600F035
:103310001CF8002801D0012030BD11785068090147
:1033200040183ACB3AC01078401C0007000F1070CC
:10333000002030BD10B50446FF200130FFF700FF2C
@@ -826,18 +826,18 @@
:10338000090F4170704710B5002101704170FF2195
:1033900040680131FCF7DBFE10BD000010B50120D4
:1033A0000349000788600846FEF7CEF910BD00000B
:1033B0008C02002010B50349002088600846FEF703
:1033C000C3F910BD8C02002070B51E48FFF7C8FF7E
:1033D000002835D01B4C203CA07A002830D11A4957
:1033E0001848FFF7CDFB204618300022026002711A
:1033B0009002002010B50349002088600846FEF7FF
:1033C000C3F910BD9002002070B51E48FFF7C8FF7A
:1033D000002835D01B4C243CA07A002830D11A4953
:1033E0001848FFF7CDFB20461C3000220260027116
:1033F0008721017014498B7A002B01D0832303703D
:10340000CB7A002B03D00378FD252B4003700B7B78
:10341000002B03D003785B085B0003700B784370CC
:1034200009798170C27002710648FFF7A3FF054950
:10343000054805220839EC38FEF769FA0120A07228
:1034400070BD0000680000207803002010B5102136
:1034400070BD00006C0000207C03002010B510212E
:103450000648FCF77CFE012104480222417082707C
:10346000017142710272C17110BD00009D03002004
:10346000017142710272C17110BD0000A103002000
:1034700070B50F4DA988A868FCF784FF0446E98859
:10348000E868FCF77FFF012802D0002809D00AE095
:10349000012C02D0002C02D005E0032070BD0220D8
@@ -875,14 +875,14 @@
:10369000772000F05FF900280ED110BD022010BD88
:1036A0001422012120468CE714220021E02000F0A2
:1036B00051F9002800D149E7082010BD032010BDB2
:1036C0007545000810B5C32801D3052010BD1A4A5E
:1036C0009545000810B5C32801D3052010BD1A4A3E
:1036D000145CFF2C03D08E2C03D3062010BD0220D7
:1036E00010BD16480129025D04D0002910D002291E
:1036F0001BD01EE0022A03D0012A01D0032A18D1D0
:1037000014220021204600F025F900280BD110E0FA
:10371000022A01D0012A0CD114220021F02000F04D
:1037200019F90028ECD0082010BD012AE8D0042A9D
:10373000E6D0002010BD0000244400088C000020CA
:10373000E6D0002010BD00004444000890000020A6
:10374000F3B581B00F4600250126FCF72BFE3A4C5D
:10375000206107E0FCF726FE2169401AB84201D338
:103760000420FEBDFFF784FE0128F3D11220FFF7ED
@@ -902,7 +902,7 @@
:103840000122A188A068FCF7A6FD0122E188E068BA
:10385000FCF7A1FD10BD00000400002010B50548D4
:1038600002210170012141708E2203490348FCF7B7
:1038700055FC10BD04000020E74400088C00002027
:1038700055FC10BD04000020074500089000002002
:1038800038B5FFF7F5FD304C0228A07106D00925A8
:10389000ED06012806D0032837D04EE0FFF7CEFF13
:1038A000002038BD012211462846FCF774FDFF2197
@@ -915,7 +915,7 @@
:10391000511E6030FFF727FA00280ED10122114610
:103920002846FCF738FD2179E078FFF7D1FD08281B
:1039300005D006486030FFF726FA012038BD012087
:10394000FCF74BFCF9E7000048000020FC020020D7
:10394000FCF74BFCF9E700004800002000030020D2
:1039500000080048F8B515460E460746144CFCF71B
:1039600021FD206107E0FCF71DFD2169401AA842F6
:1039700001D30420F8BDFFF77BFD0328F3D1FFF747
@@ -963,27 +963,27 @@
:103C10000843F7E718000020F8B500250E46FF28F6
:103C200010D0E63800210127584C0300FEF7BEFDF6
:103C300011A0A69063619B9B9B5A9B549B331E1CB7
:103C40001A179B0000F03EF91421FA2000F0E5F964
:103C5000FA21AA2000F0D4F91421002075E000F028
:103C40001A179B0000F03EF91421FA2000F0F5F954
:103C5000FA21AA2000F0E4F91421002075E000F018
:103C60003DF980E021707EE027707CE01421FA208D
:103C700000F0D3F945489621401C00F097F8002841
:103C700000F0E3F945489621401C00F097F8002831
:103C80002FD142492079143162780A5407286AD228
:103C9000401C207167E01421FA2000F0BEF9217960
:103C9000401C207167E01421FA2000F0CEF9217950
:103CA000022916D93948143040182038C17F5029CC
:103CB0000FD1817F642902D0C82905D009E0407F57
:103CC000C82806D1032003E0407FC82801D1042082
:103CD00060711421607938E01421FA2000F09DF918
:103CE000A771F8BD1421FA2000F097F90220A07105
:103CF000F8BDA17137E01421FA2000F08EF9A07907
:103CD00060711421607938E01421FA2000F0ADF908
:103CE000A771F8BD1421FA2000F0A7F90220A071F5
:103CF000F8BDA17137E01421FA2000F09EF9A079F7
:103D0000012800D140252078002801D0202005433B
:103D1000E078022801D110200543B07A002801D0B4
:103D200004200543F07A002801D002200543307BAF
:103D3000002800D03D431421284600F061F91421E9
:103D4000A07800F05DF91421607800F059F9F8BD11
:103D50001421FA2000F061F90C489621801C00F033
:103D600025F80028F3D11421FA2000F056F9F8BD07
:103D70001421FA2000F051F9E770F8BD1421FA205F
:103D800000F04BF90220E070F8BD000018000020A0
:103D3000002800D03D431421284600F071F91421D9
:103D4000A07800F06DF91421607800F069F9F8BDF1
:103D50001421FA2000F071F90C489621801C00F023
:103D600025F80028F3D11421FA2000F066F9F8BDF7
:103D70001421FA2000F061F9E770F8BD1421FA204F
:103D800000F05BF90220E070F8BD00001800002090
:103D900010B5054CE06021812261638100F092F84A
:103DA00000F080F810BD000018000020F3B581B0CD
:103DB0000F4600250126FCF7F5FA044606E0FCF75D
@@ -1007,132 +1007,135 @@
:103ED00048618861487100BD1800002005486421D0
:103EE0004170022181700121C17000210170817136
:103EF000704700001800002070B50546002407E058
:103F000028194078C82100F07BF8002804D1641CEF
:103F000028194078C82100F08BF8002804D1641CDF
:103F10002878A042F4DC002070BD000070B5FFF7E7
:103F2000DBFD254C0228607124D00925ED0601280F
:103F300023D020462030FFF713FA00281CD020465B
:103F40001E492030FEF71CFE1C491C481C31FFF79F
:103F5000F3FD002810D1012211462846FCF71BFA78
:103F600016481C30FFF7C8FF00281FD0FCF71AFACC
:103F7000044617E0FFF796FF70BD01221146284660
:103F8000FCF709FA0C480A21801CFFF70FFF0B49C8
:103F9000A0781039FFF740FE08E0FCF703FA001B99
:103FA000142803D8FFF798FD0328F6D10022012139
:103FB0002846FCF7F0F970BD480000207803002087
:103FC00070B50546FCF7EEF9044606E0FCF7EAF9A1
:103FD000001BA84201D3042070BDFFF77DFD03281C
:103FE000F4D1FFF727F9044603E0FFF775FD032836
:103FF000E8D1FFF71FF9001B3C28F6D3002070BD65
:1040000010B504460846FFF7DBFF002801D0042066
:1040100010BD204600F012F810BD10B50446084649
:10402000FFF7CEFF002801D0042010BDAF20800094
:10403000FEF7CDFC204600F001F810BDF8B5474C66
:1040400005460126002261892069FCF7A4F91220A7
:10405000FEF7BDFC00222189E068FCF79CF92420D2
:10406000FEF7B5FC01222189E068FCF794F91220E3
:10407000FEF7ADFC2189E068FCF784F9002868D0E0
:104080000027E80701D0012200E0002261892069B1
:10409000FCF781F91220FEF79AFC00222189E068E2
:1040A000FCF779F92420FEF792FC01222189E068CF
:1040B000FCF771F91220FEF78AFC2189E068FCF711
:1040C00061F9002845D0E807C00F46406D087F1C05
:1040D000082FD6DB002E01D0012200E000226189EA
:1040E0002069FCF758F91220FEF771FC00222189A3
:1040F000E068FCF750F92420FEF769FC01222189D1
:10410000E068FCF748F91220FEF761FC2189E068BD
:10411000FCF738F900281CD0012261892069FCF7DE
:104120003AF91220FEF753FC00222189E068FCF7DF
:1041300032F92420FEF74BFC01222189E068FCF7CC
:104140002AF91220FEF743FCFA20FEF740FC00207B
:10415000F8BDFFF7A7FE0820F8BD000018000020FA
:1041600011A0FEF713FB134D0024295D12A0FEF7EA
:104170000DFB641C202CF8DB10A0FEF707FB134D91
:10418000002408212846FCF702F96420FCF725F8F2
:10419000641C642CF5DBBFF34F8F0E490C48C860DC
:1041A000BFF34F8F00BFFDE7535049204552524F98
:1041B000520A00001C030020256420000A72656278
:1041C0006F6F74696E672E2E2E0A0000000400487F
:1041D0000400FA0500ED00E070B50646FCF7E2F8D1
:1041E0000446084D06E0FCF7DDF8001BB04201D99B
:1041F000042070BD29886868FCF7C4F80028F2D054
:10420000002070BD3400002010B50E4C218860687D
:10421000FCF7B8F8012802D1FCF7C4F8E060FCF71D
:10422000C1F8E168401A14280BD9C820FFF7D4FF61
:104230001420FBF7D2FFAA2000F094F80A20FBF725
:10424000CCFF10BD3400002010B500F05DF8FCF785
:10425000A9F80149C86010BD3400002010B5034C16
:1042600060602180A260638010BD000034000020E7
:1042700070B5044666380300FEF798FA0A1406087B
:104280000A0C0E101216181A482413E0492411E0E3
:104290004B240FE04D240DE04F240BE0502409E0A7
:1042A000512407E0472405E0522403E0532401E0B1
:1042B000532C0BD8022902D000290DD00EE0FCF7B8
:1042C00071F8084D2969401A502801D8002070BDA6
:1042D000FCF768F8286101E080200443204600F0E4
:1042E00041F870BD3400002010B5064C0122218831
:1042F0006068FCF750F801226188A068FCF74BF871
:1043000010BD00003400002010B5064C01222188A9
:104310006068FCF740F800226188A068FCF73BF871
:1043200010BD00003400002010B5FFF76DFF0B4AF0
:104330000B48511EFEF717FD00280AD10748001F41
:104340000179C078FFF794FF452803D00448FEF7B1
:104350001AFD10BD0120FBF740FF10BD4C000020EE
:104360005C03002070B52E4C054621886068FCF780
:1043700009F800282AD0002221886068FCF70BF891
:104380000520FEF724FB01226188A068FCF703F8F2
:104390006E20FEF71CFB6188A068FBF7F3FF002886
:1043A00014D0012221886068FBF7F5FF4120FEF759
:1043B0000EFB002221886068FBF7EDFF1E20FEF750
:1043C00006FB0026E80705D0012204E0FFF79CFF6A
:1043D000452070BD00226188A068FBF7DCFF012248
:1043E00021886068FBF7D7FF4120FEF7F0FA002232
:1043F00021886068FBF7CFFF1E20FEF7E8FA6D0802
:10440000761C082EDEDB012221886068FBF7C3FFE3
:1044100000226188A068FBF7BEFF002070BD00008D
:1044200034000020FF08161E26252E363D3E464548
:104430004E55660D151D242D2C353C43444D545BC3
:104440005A111C1B232B34333B424B4C520E125C33
:104450001A22212A32313A41494A597E1929140730
:104460000F171F272F373F474F765F6C757D4E6BB9
:1044700073747C69727A7071FFFF13565EFFFFFFE1
:10448000FFFFFFFF79584A5739FF6E636F616A6516
:10449000606D6764FFFFFFFFFFFFFF62FFFFFFFF2D
:1044A000FF8B8C8DFFFFFFFFFFFFFFFFFFFFFFFF75
:1044B000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0C
:1044C000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC
:1044D000FFFFFFFFFFFFFFFFFFFFFF08101820286F
:1044E0003038404850575F010101010101010303C9
:1044F00001010101010103010202010201010301A5
:104500000201010101010301010101010101030196
:104510000101010101010301010101010101030187
:104520000301010101010301010101010101030175
:104530000101010101010301010101010103030363
:104540000201010101030301010301010301030150
:10455000030103030303030303030303030303012F
:104560000303010103030101010101030101010131
:104570000101010101FF76161E26252E363D3E461D
:10458000454E55660D151D242D2C353C43444D5488
:104590005B5A141C1B232B34333B424B4C520E12E0
:1045A0005D1A22212A32313A41494A597C1129584F
:1045B0000506040C030B830A0109777E6C757D7B6D
:1045C0006B73747969727A7071FFFF6178075A149E
:1045D0004AFF11FF6C757D6B7469727A7071FFFF11
:1045E000FFFFFFFFFFFFFFFFFFFFFF1F272F000160
:1045F00006075553423456432050726F746F636FF1
:104600006C20426F6172640A49424D20504320433E
:104610006F6D70617469626C650A64656B754E7567
:104620006B656D2032303232000000000000000067
:10463000000102030406070809000000000102034C
:104640000400000064460008000000208C00000008
:10465000C6270008F04600088C000020240900004E
:10466000D627000800000000020100000000000042
:10467000000000000000000000000000000000003A
:10468000000000000000000000000000000000002A
:103F2000DBFD2C4C022860712CD00925ED06012800
:103F30002BD0FFF77FF9A169401A2749884223D97E
:103F400020462430FFF70CFA00281DD020462349D4
:103F50002430FEF715FE214920481C31FFF7ECFD07
:103F6000002811D1012211462E462846FCF713FAEB
:103F70001A481C30FFF7C0FF002822D0FCF712FAC5
:103F800005461AE0FFF78EFF70BD01221146284654
:103F9000FCF701FA0F480A21801CFFF707FF0F49C1
:103FA000A0781039FFF738FE0022012128460EE0E4
:103FB000FCF7F8F9401B142803D8FFF78DFD032800
:103FC000F6D1FFF737F9A061002201213046FCF756
:103FD000E2F970BD48000020881300007C03002037
:103FE00070B50546FCF7DEF9044606E0FCF7DAF9A1
:103FF000001BA84201D3042070BDFFF76DFD03280C
:10400000F4D1FFF717F9044603E0FFF765FD032835
:10401000E8D1FFF70FF9001B3C28F6D3002070BD54
:1040200010B504460846FFF7DBFF002801D0042046
:1040300010BD204600F012F810BD10B50446084629
:10404000FFF7CEFF002801D0042010BDAF20800074
:10405000FEF7BDFC204600F001F810BDF8B5474C56
:1040600005460126002261892069FCF794F9122097
:10407000FEF7ADFC00222189E068FCF78CF92420D2
:10408000FEF7A5FC01222189E068FCF784F91220E3
:10409000FEF79DFC2189E068FCF774F9002868D0E0
:1040A0000027E80701D0012200E000226189206991
:1040B000FCF771F91220FEF78AFC00222189E068E2
:1040C000FCF769F92420FEF782FC01222189E068CF
:1040D000FCF761F91220FEF77AFC2189E068FCF711
:1040E00051F9002845D0E807C00F46406D087F1CF5
:1040F000082FD6DB002E01D0012200E000226189CA
:104100002069FCF748F91220FEF761FC00222189A2
:10411000E068FCF740F92420FEF759FC01222189D0
:10412000E068FCF738F91220FEF751FC2189E068BD
:10413000FCF728F900281CD0012261892069FCF7CE
:104140002AF91220FEF743FC00222189E068FCF7DF
:1041500022F92420FEF73BFC01222189E068FCF7CC
:104160001AF91220FEF733FCFA20FEF730FC00208B
:10417000F8BDFFF797FE0820F8BD000018000020EA
:1041800011A0FEF703FB134D0024295D12A0FEF7DA
:10419000FDFA641C202CF8DB10A0FEF7F7FA134D93
:1041A000002408212846FCF7F2F86420FCF715F8F3
:1041B000641C642CF5DBBFF34F8F0E490C48C860BC
:1041C000BFF34F8F00BFFDE7535049204552524F78
:1041D000520A000020030020256420000A72656254
:1041E0006F6F74696E672E2E2E0A0000000400485F
:1041F0000400FA0500ED00E070B50646FCF7D2F8C1
:104200000446084D06E0FCF7CDF8001BB04201D98A
:10421000042070BD29886868FCF7B4F80028F2D043
:10422000002070BD3400002010B50E4C218860685D
:10423000FCF7A8F8012802D1FCF7B4F8E060FCF71D
:10424000B1F8E168401A14280BD9C820FFF7D4FF51
:104250001420FBF7C2FFAA2000F094F80A20FBF715
:10426000BCFF10BD3400002010B500F05DF8FCF775
:1042700099F80149C86010BD3400002010B5034C06
:1042800060602180A260638010BD000034000020C7
:1042900070B5044666380300FEF788FA0A1406086B
:1042A0000A0C0E101216181A482413E0492411E0C3
:1042B0004B240FE04D240DE04F240BE0502409E087
:1042C000512407E0472405E0522403E0532401E091
:1042D000532C0BD8022902D000290DD00EE0FCF798
:1042E00061F8084D2969401A502801D8002070BD96
:1042F000FCF758F8286101E080200443204600F0D4
:1043000041F870BD3400002010B5064C0122218810
:104310006068FCF740F801226188A068FCF73BF870
:1043200010BD00003400002010B5064C0122218889
:104330006068FCF730F800226188A068FCF72BF871
:1043400010BD00003400002010B5FFF76DFF0B4AD0
:104350000B48511EFEF707FD00280AD10748001F31
:104360000179C078FFF794FF452803D00448FEF791
:104370000AFD10BD0120FBF730FF10BD4C000020EE
:104380006003002070B52E4C054621886068FBF75D
:10439000F9FF00282AD0002221886068FBF7FBFF84
:1043A0000520FEF714FB01226188A068FBF7F3FFEC
:1043B0006E20FEF70CFB6188A068FBF7E3FF002886
:1043C00014D0012221886068FBF7E5FF4120FEF749
:1043D000FEFA002221886068FBF7DDFF1E20FEF751
:1043E000F6FA0026E80705D0012204E0FFF79CFF5B
:1043F000452070BD00226188A068FBF7CCFF012238
:1044000021886068FBF7C7FF4120FEF7E0FA002231
:1044100021886068FBF7BFFF1E20FEF7D8FA6D0801
:10442000761C082EDEDB012221886068FBF7B3FFD3
:1044300000226188A068FBF7AEFF002070BD00007D
:1044400034000020FF08161E26252E363D3E464528
:104450004E55660D151D242D2C353C43444D545BA3
:104460005A111C1B232B34333B424B4C520E125C13
:104470001A22212A32313A41494A597E1929140710
:104480000F171F272F373F474F765F6C757D4E6B99
:1044900073747C69727A7071FFFF13565EFFFFFFC1
:1044A000FFFFFFFF79584A5739FF6E636F616A65F6
:1044B000606D6764FFFFFFFFFFFFFF62FFFFFFFF0D
:1044C000FF8B8C8DFFFFFFFFFFFFFFFFFFFFFFFF55
:1044D000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEC
:1044E000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDC
:1044F000FFFFFFFFFFFFFFFFFFFFFF08101820284F
:104500003038404850575F010101010101010303A8
:104510000101010101010301020201020101030184
:104520000201010101010301010101010101030176
:104530000101010101010301010101010101030167
:104540000301010101010301010101010101030155
:104550000101010101010301010101010103030343
:104560000201010101030301010301010301030130
:10457000030103030303030303030303030303010F
:104580000303010103030101010101030101010111
:104590000101010101FF76161E26252E363D3E46FD
:1045A000454E55660D151D242D2C353C43444D5468
:1045B0005B5A141C1B232B34333B424B4C520E12C0
:1045C0005D1A22212A32313A41494A597C1129582F
:1045D0000506040C030B830A0109777E6C757D7B4D
:1045E0006B73747969727A7071FFFF6178075A147E
:1045F0004AFF11FF6C757D6B7469727A7071FFFFF1
:10460000FFFFFFFFFFFFFFFFFFFFFF1F272F00013F
:1046100006075553423456432050726F746F636FD0
:104620006C20426F6172640A49424D20504320431E
:104630006F6D70617469626C650A64656B754E7547
:104640006B656D2032303232000000000000000047
:10465000000102030406070809000000000102032C
:1046600004000000844600080000002090000000C4
:10467000C627000814470008900000202809000001
:10468000D627000800000000020100000000000022
:10469000000000000000000000000000000000001A
:1046A000000000000000000000000000000000000A
:1046B00000000000000000000000000000000000FA
:1046C00000000000000000000000000000000000EA
:1046D00000000000000000000000000000000000DA
:1046E00000127A000000000000000000000000003E
:1046E00000000000000000000000000000000000CA
:1046F00000000000000000000000000000000000BA
:104700000000000000127A0000000000000000001D
:0447100000000000A5
: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: Tue Mar 07 22:20:15 2023
<BR><P>#&#060CALLGRAPH&#062# ARM Linker, 5060750: Last Updated: Sun Apr 30 22:35:38 2023
<BR><P>
<H3>Maximum Stack Usage = 212 bytes + Unknown(Cycles, Untraceable Function Pointers)</H3><H3>
Call chain for Maximum Stack Depth:</H3>
@@ -571,7 +571,7 @@ Global Symbols
<LI><a href="#[58]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_SPI_TxRxCpltCallback
</UL>
<P><STRONG><a name="[58]"></a>HAL_SPI_TxRxCpltCallback</STRONG> (Thumb, 358 bytes, Stack size 24 bytes, main.o(i.HAL_SPI_TxRxCpltCallback))
<P><STRONG><a name="[58]"></a>HAL_SPI_TxRxCpltCallback</STRONG> (Thumb, 360 bytes, Stack size 24 bytes, main.o(i.HAL_SPI_TxRxCpltCallback))
<BR><BR>[Stack]<UL><LI>Max Depth = 148<LI>Call Chain = HAL_SPI_TxRxCpltCallback &rArr; handle_protocol_switch &rArr; mouse_uart_switch_to_8bit &rArr; HAL_UART_Init &rArr; UART_SetConfig &rArr; HAL_RCC_GetSysClockFreq &rArr; __aeabi_uidivmod
</UL>
<BR>[Calls]<UL><LI><a href="#[59]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_GPIO_WritePin
@@ -1060,7 +1060,7 @@ Global Symbols
<BR>[Called By]<UL><LI><a href="#[c2]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ps2kb_update
</UL>
<P><STRONG><a name="[26]"></a>main</STRONG> (Thumb, 454 bytes, Stack size 16 bytes, main.o(i.main))
<P><STRONG><a name="[26]"></a>main</STRONG> (Thumb, 456 bytes, Stack size 16 bytes, main.o(i.main))
<BR><BR>[Stack]<UL><LI>Max Depth = 212<LI>Call Chain = main &rArr; SystemClock_Config &rArr; HAL_RCC_ClockConfig &rArr; HAL_RCC_GetSysClockFreq &rArr; __aeabi_uidivmod
</UL>
<BR>[Calls]<UL><LI><a href="#[85]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;MX_USART3_UART_Init
@@ -1141,6 +1141,7 @@ Global Symbols
<BR><BR>[Called By]<UL><LI><a href="#[d8]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ps2mouse_wait_for_idle
<LI><a href="#[b5]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ps2kb_write
<LI><a href="#[93]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;delay_us
<LI><a href="#[bf]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ps2mouse_update
<LI><a href="#[26]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;main
<LI><a href="#[58]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_SPI_TxRxCpltCallback
</UL>
@@ -1450,7 +1451,7 @@ Global Symbols
<BR>[Called By]<UL><LI><a href="#[bf]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ps2mouse_update
</UL>
<P><STRONG><a name="[bf]"></a>ps2mouse_update</STRONG> (Thumb, 156 bytes, Stack size 16 bytes, main.o(i.ps2mouse_update))
<P><STRONG><a name="[bf]"></a>ps2mouse_update</STRONG> (Thumb, 184 bytes, Stack size 16 bytes, main.o(i.ps2mouse_update))
<BR><BR>[Stack]<UL><LI>Max Depth = 80<LI>Call Chain = ps2mouse_update &rArr; ps2mouse_host_req_reply &rArr; ps2mouse_write_delay_start &rArr; ps2mouse_write_nowait &rArr; ps2mouse_release_lines
</UL>
<BR>[Calls]<UL><LI><a href="#[d7]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;ps2mouse_send_update
@@ -1462,6 +1463,7 @@ Global Symbols
<LI><a href="#[38]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_GetTick
<LI><a href="#[59]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;HAL_GPIO_WritePin
<LI><a href="#[a2]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;mouse_buf_peek
<LI><a href="#[62]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;micros
<LI><a href="#[a1]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;get_consolidated_mouse_event
</UL>
<BR>[Called By]<UL><LI><a href="#[26]">&gt;&gt;</a>&nbsp;&nbsp;&nbsp;main

View File

@@ -292,6 +292,7 @@ Section Cross References
main.o(i.ps2kb_update) refers to main.o(.data) for .data
main.o(i.ps2kb_update) refers to main.o(.bss) for .bss
main.o(i.ps2mouse_update) refers to ps2mouse.o(i.ps2mouse_get_bus_status) for ps2mouse_get_bus_status
main.o(i.ps2mouse_update) refers to delay_us.o(i.micros) for micros
main.o(i.ps2mouse_update) refers to helpers.o(i.mouse_buf_peek) for mouse_buf_peek
main.o(i.ps2mouse_update) refers to main.o(i.get_consolidated_mouse_event) for get_consolidated_mouse_event
main.o(i.ps2mouse_update) refers to ps2mouse.o(i.ps2mouse_get_outgoing_data) for ps2mouse_get_outgoing_data
@@ -2076,39 +2077,39 @@ Image Symbol Table
i.ps2mouse_restore_defaults 0x08003edc Section 0 ps2mouse.o(i.ps2mouse_restore_defaults)
i.ps2mouse_send_update 0x08003ef8 Section 0 ps2mouse.o(i.ps2mouse_send_update)
i.ps2mouse_update 0x08003f1c Section 0 main.o(i.ps2mouse_update)
i.ps2mouse_wait_for_idle 0x08003fc0 Section 0 ps2mouse.o(i.ps2mouse_wait_for_idle)
i.ps2mouse_write 0x08004000 Section 0 ps2mouse.o(i.ps2mouse_write)
i.ps2mouse_write_delay_start 0x0800401a Section 0 ps2mouse.o(i.ps2mouse_write_delay_start)
i.ps2mouse_write_nowait 0x0800403c Section 0 ps2mouse.o(i.ps2mouse_write_nowait)
i.spi_error_dump_reboot 0x08004160 Section 0 main.o(i.spi_error_dump_reboot)
i.wait_for_clk_high 0x080041d8 Section 0 xt_kb.o(i.wait_for_clk_high)
i.xtkb_check_for_softreset 0x08004208 Section 0 xt_kb.o(i.xtkb_check_for_softreset)
i.xtkb_enable 0x08004248 Section 0 xt_kb.o(i.xtkb_enable)
i.xtkb_init 0x0800425c Section 0 xt_kb.o(i.xtkb_init)
i.xtkb_press_key 0x08004270 Section 0 xt_kb.o(i.xtkb_press_key)
i.xtkb_release_lines 0x080042e8 Section 0 xt_kb.o(i.xtkb_release_lines)
i.xtkb_reset_bus 0x08004308 Section 0 xt_kb.o(i.xtkb_reset_bus)
i.xtkb_update 0x08004328 Section 0 main.o(i.xtkb_update)
i.xtkb_write 0x08004364 Section 0 xt_kb.o(i.xtkb_write)
.constdata 0x08004424 Section 458 ps2kb.o(.constdata)
.constdata 0x080045ee Section 4 mcp4451.o(.constdata)
.constdata 0x080045f2 Section 55 main.o(.constdata)
.constdata 0x08004629 Section 16 system_stm32f0xx.o(.constdata)
.constdata 0x08004639 Section 8 system_stm32f0xx.o(.constdata)
i.ps2mouse_wait_for_idle 0x08003fe0 Section 0 ps2mouse.o(i.ps2mouse_wait_for_idle)
i.ps2mouse_write 0x08004020 Section 0 ps2mouse.o(i.ps2mouse_write)
i.ps2mouse_write_delay_start 0x0800403a Section 0 ps2mouse.o(i.ps2mouse_write_delay_start)
i.ps2mouse_write_nowait 0x0800405c Section 0 ps2mouse.o(i.ps2mouse_write_nowait)
i.spi_error_dump_reboot 0x08004180 Section 0 main.o(i.spi_error_dump_reboot)
i.wait_for_clk_high 0x080041f8 Section 0 xt_kb.o(i.wait_for_clk_high)
i.xtkb_check_for_softreset 0x08004228 Section 0 xt_kb.o(i.xtkb_check_for_softreset)
i.xtkb_enable 0x08004268 Section 0 xt_kb.o(i.xtkb_enable)
i.xtkb_init 0x0800427c Section 0 xt_kb.o(i.xtkb_init)
i.xtkb_press_key 0x08004290 Section 0 xt_kb.o(i.xtkb_press_key)
i.xtkb_release_lines 0x08004308 Section 0 xt_kb.o(i.xtkb_release_lines)
i.xtkb_reset_bus 0x08004328 Section 0 xt_kb.o(i.xtkb_reset_bus)
i.xtkb_update 0x08004348 Section 0 main.o(i.xtkb_update)
i.xtkb_write 0x08004384 Section 0 xt_kb.o(i.xtkb_write)
.constdata 0x08004444 Section 458 ps2kb.o(.constdata)
.constdata 0x0800460e Section 4 mcp4451.o(.constdata)
.constdata 0x08004612 Section 55 main.o(.constdata)
.constdata 0x08004649 Section 16 system_stm32f0xx.o(.constdata)
.constdata 0x08004659 Section 8 system_stm32f0xx.o(.constdata)
.data 0x20000000 Section 4 delay_us.o(.data)
.data 0x20000004 Section 20 ps2kb.o(.data)
.data 0x20000018 Section 28 ps2mouse.o(.data)
.data 0x20000034 Section 20 xt_kb.o(.data)
.data 0x20000048 Section 48 main.o(.data)
.data 0x20000078 Section 4 stm32f0xx_hal.o(.data)
.data 0x2000007c Section 4 system_stm32f0xx.o(.data)
.data 0x20000080 Section 4 stdout.o(.data)
.data 0x20000084 Section 4 mvars.o(.data)
.data 0x20000048 Section 52 main.o(.data)
.data 0x2000007c Section 4 stm32f0xx_hal.o(.data)
.data 0x20000080 Section 4 system_stm32f0xx.o(.data)
.data 0x20000084 Section 4 stdout.o(.data)
.data 0x20000088 Section 4 mvars.o(.data)
.bss 0x2000008c Section 142 ps2kb.o(.bss)
.bss 0x2000011c Section 657 main.o(.bss)
HEAP 0x200003b0 Section 512 startup_stm32f072xb.o(HEAP)
STACK 0x200005b0 Section 1024 startup_stm32f072xb.o(STACK)
.data 0x2000008c Section 4 mvars.o(.data)
.bss 0x20000090 Section 142 ps2kb.o(.bss)
.bss 0x20000120 Section 657 main.o(.bss)
HEAP 0x200003b8 Section 512 startup_stm32f072xb.o(HEAP)
STACK 0x200005b8 Section 1024 startup_stm32f072xb.o(STACK)
Global Symbols
@@ -2254,7 +2255,7 @@ Image Symbol Table
HAL_SPI_MspInit 0x0800116d Thumb Code 76 stm32f0xx_hal_msp.o(i.HAL_SPI_MspInit)
HAL_SPI_RxCpltCallback 0x080011c1 Thumb Code 2 stm32f0xx_hal_spi.o(i.HAL_SPI_RxCpltCallback)
HAL_SPI_TransmitReceive_IT 0x080011c5 Thumb Code 196 stm32f0xx_hal_spi.o(i.HAL_SPI_TransmitReceive_IT)
HAL_SPI_TxRxCpltCallback 0x08001299 Thumb Code 358 main.o(i.HAL_SPI_TxRxCpltCallback)
HAL_SPI_TxRxCpltCallback 0x08001299 Thumb Code 360 main.o(i.HAL_SPI_TxRxCpltCallback)
HAL_SYSTICK_CLKSourceConfig 0x08001415 Thumb Code 20 stm32f0xx_hal_cortex.o(i.HAL_SYSTICK_CLKSourceConfig)
HAL_SYSTICK_Callback 0x0800142d Thumb Code 2 stm32f0xx_hal_cortex.o(i.HAL_SYSTICK_Callback)
HAL_SYSTICK_Config 0x08001431 Thumb Code 38 stm32f0xx_hal_cortex.o(i.HAL_SYSTICK_Config)
@@ -2322,7 +2323,7 @@ Image Symbol Table
kb_buf_pop 0x08002d87 Thumb Code 18 helpers.o(i.kb_buf_pop)
kb_buf_reset 0x08002d99 Thumb Code 28 helpers.o(i.kb_buf_reset)
keyboard_reply 0x08002db5 Thumb Code 342 ps2kb.o(i.keyboard_reply)
main 0x08002f15 Thumb Code 454 main.o(i.main)
main 0x08002f15 Thumb Code 456 main.o(i.main)
malloc 0x08003141 Thumb Code 92 malloc.o(i.malloc)
mcp4451_is_available 0x080031ad Thumb Code 26 mcp4451.o(i.mcp4451_is_available)
mcp4451_reset 0x080031cd Thumb Code 42 mcp4451.o(i.mcp4451_reset)
@@ -2360,31 +2361,31 @@ Image Symbol Table
ps2mouse_reset 0x08003ec5 Thumb Code 20 ps2mouse.o(i.ps2mouse_reset)
ps2mouse_restore_defaults 0x08003edd Thumb Code 22 ps2mouse.o(i.ps2mouse_restore_defaults)
ps2mouse_send_update 0x08003ef9 Thumb Code 34 ps2mouse.o(i.ps2mouse_send_update)
ps2mouse_update 0x08003f1d Thumb Code 156 main.o(i.ps2mouse_update)
ps2mouse_wait_for_idle 0x08003fc1 Thumb Code 64 ps2mouse.o(i.ps2mouse_wait_for_idle)
ps2mouse_write 0x08004001 Thumb Code 26 ps2mouse.o(i.ps2mouse_write)
ps2mouse_write_delay_start 0x0800401b Thumb Code 34 ps2mouse.o(i.ps2mouse_write_delay_start)
ps2mouse_write_nowait 0x0800403d Thumb Code 286 ps2mouse.o(i.ps2mouse_write_nowait)
spi_error_dump_reboot 0x08004161 Thumb Code 72 main.o(i.spi_error_dump_reboot)
wait_for_clk_high 0x080041d9 Thumb Code 44 xt_kb.o(i.wait_for_clk_high)
xtkb_check_for_softreset 0x08004209 Thumb Code 60 xt_kb.o(i.xtkb_check_for_softreset)
xtkb_enable 0x08004249 Thumb Code 16 xt_kb.o(i.xtkb_enable)
xtkb_init 0x0800425d Thumb Code 14 xt_kb.o(i.xtkb_init)
xtkb_press_key 0x08004271 Thumb Code 116 xt_kb.o(i.xtkb_press_key)
xtkb_release_lines 0x080042e9 Thumb Code 26 xt_kb.o(i.xtkb_release_lines)
xtkb_reset_bus 0x08004309 Thumb Code 26 xt_kb.o(i.xtkb_reset_bus)
xtkb_update 0x08004329 Thumb Code 52 main.o(i.xtkb_update)
xtkb_write 0x08004365 Thumb Code 186 xt_kb.o(i.xtkb_write)
linux_keycode_to_ps3_scancode_lookup_codeset3 0x08004424 Data 195 ps2kb.o(.constdata)
scancode_set3_default_status 0x080044e7 Data 142 ps2kb.o(.constdata)
linux_keycode_to_ps2_scancode_lookup_single_byte_codeset2 0x08004575 Data 89 ps2kb.o(.constdata)
linux_keycode_to_ps2_scancode_lookup_special_codeset2 0x080045ce Data 32 ps2kb.o(.constdata)
mcp4451_wiper_id_to_reg_addr_lookup 0x080045ee Data 4 mcp4451.o(.constdata)
boot_message 0x080045f2 Data 55 main.o(.constdata)
AHBPrescTable 0x08004629 Data 16 system_stm32f0xx.o(.constdata)
APBPrescTable 0x08004639 Data 8 system_stm32f0xx.o(.constdata)
Region$$Table$$Base 0x08004644 Number 0 anon$$obj.o(Region$$Table)
Region$$Table$$Limit 0x08004664 Number 0 anon$$obj.o(Region$$Table)
ps2mouse_update 0x08003f1d Thumb Code 184 main.o(i.ps2mouse_update)
ps2mouse_wait_for_idle 0x08003fe1 Thumb Code 64 ps2mouse.o(i.ps2mouse_wait_for_idle)
ps2mouse_write 0x08004021 Thumb Code 26 ps2mouse.o(i.ps2mouse_write)
ps2mouse_write_delay_start 0x0800403b Thumb Code 34 ps2mouse.o(i.ps2mouse_write_delay_start)
ps2mouse_write_nowait 0x0800405d Thumb Code 286 ps2mouse.o(i.ps2mouse_write_nowait)
spi_error_dump_reboot 0x08004181 Thumb Code 72 main.o(i.spi_error_dump_reboot)
wait_for_clk_high 0x080041f9 Thumb Code 44 xt_kb.o(i.wait_for_clk_high)
xtkb_check_for_softreset 0x08004229 Thumb Code 60 xt_kb.o(i.xtkb_check_for_softreset)
xtkb_enable 0x08004269 Thumb Code 16 xt_kb.o(i.xtkb_enable)
xtkb_init 0x0800427d Thumb Code 14 xt_kb.o(i.xtkb_init)
xtkb_press_key 0x08004291 Thumb Code 116 xt_kb.o(i.xtkb_press_key)
xtkb_release_lines 0x08004309 Thumb Code 26 xt_kb.o(i.xtkb_release_lines)
xtkb_reset_bus 0x08004329 Thumb Code 26 xt_kb.o(i.xtkb_reset_bus)
xtkb_update 0x08004349 Thumb Code 52 main.o(i.xtkb_update)
xtkb_write 0x08004385 Thumb Code 186 xt_kb.o(i.xtkb_write)
linux_keycode_to_ps3_scancode_lookup_codeset3 0x08004444 Data 195 ps2kb.o(.constdata)
scancode_set3_default_status 0x08004507 Data 142 ps2kb.o(.constdata)
linux_keycode_to_ps2_scancode_lookup_single_byte_codeset2 0x08004595 Data 89 ps2kb.o(.constdata)
linux_keycode_to_ps2_scancode_lookup_special_codeset2 0x080045ee Data 32 ps2kb.o(.constdata)
mcp4451_wiper_id_to_reg_addr_lookup 0x0800460e Data 4 mcp4451.o(.constdata)
boot_message 0x08004612 Data 55 main.o(.constdata)
AHBPrescTable 0x08004649 Data 16 system_stm32f0xx.o(.constdata)
APBPrescTable 0x08004659 Data 8 system_stm32f0xx.o(.constdata)
Region$$Table$$Base 0x08004664 Number 0 anon$$obj.o(Region$$Table)
Region$$Table$$Limit 0x08004684 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)
@@ -2426,33 +2427,34 @@ Image Symbol Table
flash_size 0x20000054 Data 2 main.o(.data)
microsoft_serial_mouse_output_buf 0x20000056 Data 3 main.o(.data)
ACT_LED_off_ts 0x2000005c Data 4 main.o(.data)
mousesystems_serial_mouse_output_buf 0x20000060 Data 5 main.o(.data)
my_mouse_buf 0x20000068 Data 8 main.o(.data)
my_gamepad_buf 0x20000070 Data 8 main.o(.data)
uwTick 0x20000078 Data 4 stm32f0xx_hal.o(.data)
SystemCoreClock 0x2000007c Data 4 system_stm32f0xx.o(.data)
__stdout 0x20000080 Data 4 stdout.o(.data)
__microlib_freelist 0x20000084 Data 4 mvars.o(.data)
__microlib_freelist_initialised 0x20000088 Data 4 mvars.o(.data)
scancode_set3_current_status 0x2000008c Data 142 ps2kb.o(.bss)
hi2c2 0x2000011c Data 76 main.o(.bss)
hiwdg 0x20000168 Data 16 main.o(.bss)
hspi1 0x20000178 Data 100 main.o(.bss)
htim2 0x200001dc Data 64 main.o(.bss)
huart1 0x2000021c Data 112 main.o(.bss)
huart3 0x2000028c Data 112 main.o(.bss)
spi_transmit_buf 0x200002fc Data 32 main.o(.bss)
backup_spi1_recv_buf 0x2000031c Data 32 main.o(.bss)
spi_recv_buf 0x2000033c Data 32 main.o(.bss)
my_kb_buf 0x2000035c Data 12 main.o(.bss)
latest_mouse_event 0x20000368 Data 16 main.o(.bss)
consolidated_mouse_event 0x20000378 Data 16 main.o(.bss)
latest_gamepad_event 0x20000388 Data 12 main.o(.bss)
my_ps2_outbuf 0x20000394 Data 9 main.o(.bss)
protocol_status_lookup 0x2000039d Data 16 main.o(.bss)
__heap_base 0x200003b0 Data 0 startup_stm32f072xb.o(HEAP)
__heap_limit 0x200005b0 Data 0 startup_stm32f072xb.o(HEAP)
__initial_sp 0x200009b0 Data 0 startup_stm32f072xb.o(STACK)
last_mouse_movement 0x20000060 Data 4 main.o(.data)
mousesystems_serial_mouse_output_buf 0x20000064 Data 5 main.o(.data)
my_mouse_buf 0x2000006c Data 8 main.o(.data)
my_gamepad_buf 0x20000074 Data 8 main.o(.data)
uwTick 0x2000007c Data 4 stm32f0xx_hal.o(.data)
SystemCoreClock 0x20000080 Data 4 system_stm32f0xx.o(.data)
__stdout 0x20000084 Data 4 stdout.o(.data)
__microlib_freelist 0x20000088 Data 4 mvars.o(.data)
__microlib_freelist_initialised 0x2000008c Data 4 mvars.o(.data)
scancode_set3_current_status 0x20000090 Data 142 ps2kb.o(.bss)
hi2c2 0x20000120 Data 76 main.o(.bss)
hiwdg 0x2000016c Data 16 main.o(.bss)
hspi1 0x2000017c Data 100 main.o(.bss)
htim2 0x200001e0 Data 64 main.o(.bss)
huart1 0x20000220 Data 112 main.o(.bss)
huart3 0x20000290 Data 112 main.o(.bss)
spi_transmit_buf 0x20000300 Data 32 main.o(.bss)
backup_spi1_recv_buf 0x20000320 Data 32 main.o(.bss)
spi_recv_buf 0x20000340 Data 32 main.o(.bss)
my_kb_buf 0x20000360 Data 12 main.o(.bss)
latest_mouse_event 0x2000036c Data 16 main.o(.bss)
consolidated_mouse_event 0x2000037c Data 16 main.o(.bss)
latest_gamepad_event 0x2000038c Data 12 main.o(.bss)
my_ps2_outbuf 0x20000398 Data 9 main.o(.bss)
protocol_status_lookup 0x200003a1 Data 16 main.o(.bss)
__heap_base 0x200003b8 Data 0 startup_stm32f072xb.o(HEAP)
__heap_limit 0x200005b8 Data 0 startup_stm32f072xb.o(HEAP)
__initial_sp 0x200009b8 Data 0 startup_stm32f072xb.o(STACK)
@@ -2462,9 +2464,9 @@ Memory Map of the image
Image Entry point : 0x080000c1
Load Region LR_IROM1 (Base: 0x08000000, Size: 0x000046f0, Max: 0x00010000, ABSOLUTE)
Load Region LR_IROM1 (Base: 0x08000000, Size: 0x00004714, Max: 0x00010000, ABSOLUTE)
Execution Region ER_IROM1 (Exec base: 0x08000000, Load base: 0x08000000, Size: 0x00004664, Max: 0x00010000, ABSOLUTE)
Execution Region ER_IROM1 (Exec base: 0x08000000, Load base: 0x08000000, Size: 0x00004684, Max: 0x00010000, ABSOLUTE)
Exec Addr Load Addr Size Type Attr Idx E Section Name Object
@@ -2669,50 +2671,50 @@ Memory Map of the image
0x08003edc 0x08003edc 0x0000001c Code RO 408 i.ps2mouse_restore_defaults ps2mouse.o
0x08003ef8 0x08003ef8 0x00000022 Code RO 410 i.ps2mouse_send_update ps2mouse.o
0x08003f1a 0x08003f1a 0x00000002 PAD
0x08003f1c 0x08003f1c 0x000000a4 Code RO 635 i.ps2mouse_update main.o
0x08003fc0 0x08003fc0 0x00000040 Code RO 411 i.ps2mouse_wait_for_idle ps2mouse.o
0x08004000 0x08004000 0x0000001a Code RO 412 i.ps2mouse_write ps2mouse.o
0x0800401a 0x0800401a 0x00000022 Code RO 413 i.ps2mouse_write_delay_start ps2mouse.o
0x0800403c 0x0800403c 0x00000124 Code RO 414 i.ps2mouse_write_nowait ps2mouse.o
0x08004160 0x08004160 0x00000078 Code RO 636 i.spi_error_dump_reboot main.o
0x080041d8 0x080041d8 0x00000030 Code RO 542 i.wait_for_clk_high xt_kb.o
0x08004208 0x08004208 0x00000040 Code RO 543 i.xtkb_check_for_softreset xt_kb.o
0x08004248 0x08004248 0x00000014 Code RO 544 i.xtkb_enable xt_kb.o
0x0800425c 0x0800425c 0x00000014 Code RO 545 i.xtkb_init xt_kb.o
0x08004270 0x08004270 0x00000078 Code RO 546 i.xtkb_press_key xt_kb.o
0x080042e8 0x080042e8 0x00000020 Code RO 547 i.xtkb_release_lines xt_kb.o
0x08004308 0x08004308 0x00000020 Code RO 548 i.xtkb_reset_bus xt_kb.o
0x08004328 0x08004328 0x0000003c Code RO 637 i.xtkb_update main.o
0x08004364 0x08004364 0x000000c0 Code RO 549 i.xtkb_write xt_kb.o
0x08004424 0x08004424 0x000001ca Data RO 314 .constdata ps2kb.o
0x080045ee 0x080045ee 0x00000004 Data RO 507 .constdata mcp4451.o
0x080045f2 0x080045f2 0x00000037 Data RO 643 .constdata main.o
0x08004629 0x08004629 0x00000010 Data RO 3961 .constdata system_stm32f0xx.o
0x08004639 0x08004639 0x00000008 Data RO 3962 .constdata system_stm32f0xx.o
0x08004641 0x08004641 0x00000003 PAD
0x08004644 0x08004644 0x00000020 Data RO 4333 Region$$Table anon$$obj.o
0x08003f1c 0x08003f1c 0x000000c4 Code RO 635 i.ps2mouse_update main.o
0x08003fe0 0x08003fe0 0x00000040 Code RO 411 i.ps2mouse_wait_for_idle ps2mouse.o
0x08004020 0x08004020 0x0000001a Code RO 412 i.ps2mouse_write ps2mouse.o
0x0800403a 0x0800403a 0x00000022 Code RO 413 i.ps2mouse_write_delay_start ps2mouse.o
0x0800405c 0x0800405c 0x00000124 Code RO 414 i.ps2mouse_write_nowait ps2mouse.o
0x08004180 0x08004180 0x00000078 Code RO 636 i.spi_error_dump_reboot main.o
0x080041f8 0x080041f8 0x00000030 Code RO 542 i.wait_for_clk_high xt_kb.o
0x08004228 0x08004228 0x00000040 Code RO 543 i.xtkb_check_for_softreset xt_kb.o
0x08004268 0x08004268 0x00000014 Code RO 544 i.xtkb_enable xt_kb.o
0x0800427c 0x0800427c 0x00000014 Code RO 545 i.xtkb_init xt_kb.o
0x08004290 0x08004290 0x00000078 Code RO 546 i.xtkb_press_key xt_kb.o
0x08004308 0x08004308 0x00000020 Code RO 547 i.xtkb_release_lines xt_kb.o
0x08004328 0x08004328 0x00000020 Code RO 548 i.xtkb_reset_bus xt_kb.o
0x08004348 0x08004348 0x0000003c Code RO 637 i.xtkb_update main.o
0x08004384 0x08004384 0x000000c0 Code RO 549 i.xtkb_write xt_kb.o
0x08004444 0x08004444 0x000001ca Data RO 314 .constdata ps2kb.o
0x0800460e 0x0800460e 0x00000004 Data RO 507 .constdata mcp4451.o
0x08004612 0x08004612 0x00000037 Data RO 643 .constdata main.o
0x08004649 0x08004649 0x00000010 Data RO 3961 .constdata system_stm32f0xx.o
0x08004659 0x08004659 0x00000008 Data RO 3962 .constdata system_stm32f0xx.o
0x08004661 0x08004661 0x00000003 PAD
0x08004664 0x08004664 0x00000020 Data RO 4333 Region$$Table anon$$obj.o
Execution Region RW_IRAM1 (Exec base: 0x20000000, Load base: 0x08004664, Size: 0x000009b0, Max: 0x00004000, ABSOLUTE)
Execution Region RW_IRAM1 (Exec base: 0x20000000, Load base: 0x08004684, Size: 0x000009b8, Max: 0x00004000, ABSOLUTE)
Exec Addr Load Addr Size Type Attr Idx E Section Name Object
0x20000000 0x08004664 0x00000004 Data RW 15 .data delay_us.o
0x20000004 0x08004668 0x00000014 Data RW 315 .data ps2kb.o
0x20000018 0x0800467c 0x0000001c Data RW 415 .data ps2mouse.o
0x20000034 0x08004698 0x00000014 Data RW 550 .data xt_kb.o
0x20000048 0x080046ac 0x00000030 Data RW 644 .data main.o
0x20000078 0x080046dc 0x00000004 Data RW 1607 .data stm32f0xx_hal.o
0x2000007c 0x080046e0 0x00000004 Data RW 3963 .data system_stm32f0xx.o
0x20000080 0x080046e4 0x00000004 Data RW 4307 .data mc_p.l(stdout.o)
0x20000084 0x080046e8 0x00000004 Data RW 4310 .data mc_p.l(mvars.o)
0x20000088 0x080046ec 0x00000004 Data RW 4311 .data mc_p.l(mvars.o)
0x2000008c - 0x0000008e Zero RW 313 .bss ps2kb.o
0x2000011a 0x080046f0 0x00000002 PAD
0x2000011c - 0x00000291 Zero RW 638 .bss main.o
0x200003ad 0x080046f0 0x00000003 PAD
0x200003b0 - 0x00000200 Zero RW 2 HEAP startup_stm32f072xb.o
0x200005b0 - 0x00000400 Zero RW 1 STACK startup_stm32f072xb.o
0x20000000 0x08004684 0x00000004 Data RW 15 .data delay_us.o
0x20000004 0x08004688 0x00000014 Data RW 315 .data ps2kb.o
0x20000018 0x0800469c 0x0000001c Data RW 415 .data ps2mouse.o
0x20000034 0x080046b8 0x00000014 Data RW 550 .data xt_kb.o
0x20000048 0x080046cc 0x00000034 Data RW 644 .data main.o
0x2000007c 0x08004700 0x00000004 Data RW 1607 .data stm32f0xx_hal.o
0x20000080 0x08004704 0x00000004 Data RW 3963 .data system_stm32f0xx.o
0x20000084 0x08004708 0x00000004 Data RW 4307 .data mc_p.l(stdout.o)
0x20000088 0x0800470c 0x00000004 Data RW 4310 .data mc_p.l(mvars.o)
0x2000008c 0x08004710 0x00000004 Data RW 4311 .data mc_p.l(mvars.o)
0x20000090 - 0x0000008e Zero RW 313 .bss ps2kb.o
0x2000011e 0x08004714 0x00000002 PAD
0x20000120 - 0x00000291 Zero RW 638 .bss main.o
0x200003b1 0x08004714 0x00000007 PAD
0x200003b8 - 0x00000200 Zero RW 2 HEAP startup_stm32f072xb.o
0x200005b8 - 0x00000400 Zero RW 1 STACK startup_stm32f072xb.o
==============================================================================
@@ -2724,7 +2726,7 @@ Image component sizes
52 10 0 4 0 506967 delay_us.o
466 0 0 0 0 11760 helpers.o
3344 380 55 48 657 25316 main.o
3376 380 55 52 657 25392 main.o
136 22 4 0 0 2311 mcp4451.o
1874 108 458 20 142 12207 ps2kb.o
1506 66 0 28 0 10908 ps2mouse.o
@@ -2749,9 +2751,9 @@ Image component sizes
528 52 0 20 0 5878 xt_kb.o
----------------------------------------------------------------------
16450 1060 768 128 2340 655062 Object Totals
16482 1060 768 132 2344 655138 Object Totals
0 0 32 0 0 0 (incl. Generated)
34 0 3 0 5 0 (incl. Padding)
34 0 3 0 9 0 (incl. Padding)
----------------------------------------------------------------------
@@ -2795,15 +2797,15 @@ Image component sizes
Code (inc. data) RO Data RW Data ZI Data Debug
17252 1104 768 140 2340 647970 Grand Totals
17252 1104 768 140 2340 647970 ELF Image Totals
17252 1104 768 140 0 0 ROM Totals
17284 1104 768 144 2344 648046 Grand Totals
17284 1104 768 144 2344 648046 ELF Image Totals
17284 1104 768 144 0 0 ROM Totals
==============================================================================
Total RO Size (Code + RO Data) 18020 ( 17.60kB)
Total RW Size (RW Data + ZI Data) 2480 ( 2.42kB)
Total ROM Size (Code + RO Data + RW Data) 18160 ( 17.73kB)
Total RO Size (Code + RO Data) 18052 ( 17.63kB)
Total RW Size (RW Data + ZI Data) 2488 ( 2.43kB)
Total ROM Size (Code + RO Data + RW Data) 18196 ( 17.77kB)
==============================================================================

View File

@@ -240,7 +240,7 @@ I (../Inc/shared.h)(0x61B61A00)
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_ex.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)
I (../Drivers/STM32F0xx_HAL_Driver/Inc/stm32f0xx_hal_cortex.h)(0x5DFA0893)

View File

Binary file not shown.

View File

Binary file not shown.

View File

@@ -66,10 +66,18 @@ UART_HandleTypeDef huart3;
/* USER CODE BEGIN PV */
/* Private variables ---------------------------------------------------------*/
/*
0.5.6
2023 04 30
Capped PS/2 mouse rate at 200Hz
*/
const uint8_t board_id = 1;
const uint8_t version_major = 0;
const uint8_t version_minor = 5;
const uint8_t version_patch = 5;
const uint8_t version_patch = 6;
uint8_t hw_revision;
uint8_t spi_transmit_buf[SPI_BUF_SIZE];
@@ -363,6 +371,7 @@ void get_consolidated_mouse_event(mouse_buf* mbuf, mouse_event* cme_result)
cap_to_127(&cme_result->movement_y);
}
uint32_t last_mouse_movement;
void ps2mouse_update(void)
{
ps2mouse_bus_status = ps2mouse_get_bus_status();
@@ -380,6 +389,10 @@ void ps2mouse_update(void)
return;
}
// 5ms, PS/2 tops out at 200Hz
if(micros() - last_mouse_movement <= 5000)
return;
if(mouse_buf_peek(&my_mouse_buf) == NULL)
return;
@@ -399,6 +412,7 @@ void ps2mouse_update(void)
break;
}
}
last_mouse_movement = micros();
PCARD_BUSY_LOW();
}
@@ -685,7 +699,6 @@ int main(void)
while (1)
{
// HAL_GPIO_TogglePin(PCARD_BUSY_GPIO_Port, PCARD_BUSY_Pin);
HAL_IWDG_Refresh(&hiwdg);
if(micros() > ACT_LED_off_ts)
HAL_GPIO_WritePin(ACT_LED_GPIO_Port, ACT_LED_Pin, GPIO_PIN_RESET);

View File

Binary file not shown.

View File

File diff suppressed because it is too large Load Diff

View File

@@ -835,7 +835,7 @@ def raw_input_event_worker():
pass
# send spi mouse message if there is moment, or the button is not typematic
elif (max(this_mouse_msg[13:18]) != 2 or sum(this_mouse_msg[4:10]) != 0) and (this_mouse_msg[4:] != last_mouse_msg[4:] or sum(this_mouse_msg[4:]) != 0):
xfer_when_not_busy(list(this_mouse_msg), drop=True)
xfer_when_not_busy(list(this_mouse_msg))
next_gamepad_hold_check = now + gamepad_hold_check_interval
clear_mouse_movement(mouse_status_dict)
last_mouse_msg = list(this_mouse_msg)