mirror of
https://github.com/dekuNukem/USB4VC.git
synced 2025-10-31 11:26:46 -07:00
single byte mapping working
This commit is contained in:
@@ -13,6 +13,12 @@
|
||||
#define M0110A_TIMEOUT 3
|
||||
|
||||
#define M0110A_KB_TO_PC_CMD_BUF_SIZE 4
|
||||
#define LINUX_KEYCODE_TO_M0110A_SCANCODE_SIZE 128
|
||||
|
||||
#define CODE_UNUSED 0
|
||||
#define CODE_HANDLE_SEPARATELY 0xff
|
||||
|
||||
extern const uint8_t linux_keycode_to_m0110a_scancode_lookup[LINUX_KEYCODE_TO_M0110A_SCANCODE_SIZE];
|
||||
|
||||
typedef struct
|
||||
{
|
||||
|
||||
File diff suppressed because one or more lines are too long
Binary file not shown.
@@ -27,10 +27,9 @@ Project File Date: 06/24/2022
|
||||
<h2>Output:</h2>
|
||||
*** Using Compiler 'V5.06 update 6 (build 750)', folder: 'C:\Keil_v5\ARM\ARMCC\Bin'
|
||||
Build target 'apple_all'
|
||||
compiling m0110a.c...
|
||||
compiling main.c...
|
||||
linking...
|
||||
Program Size: Code=10624 RO-data=392 RW-data=68 ZI-data=2164
|
||||
Program Size: Code=10632 RO-data=520 RW-data=68 ZI-data=2164
|
||||
FromELF: creating hex file...
|
||||
"apple_all\apple_all.axf" - 0 Error(s), 0 Warning(s).
|
||||
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
:10009000E70000080D1B00081D1B0008E700000812
|
||||
:1000A000E700000835170008E7000008E70000082F
|
||||
:1000B000E7000008E7000008E7000008E700000884
|
||||
:1000C0000348854600F090F8004800475126000894
|
||||
:1000C0000348854600F090F800480047592600088C
|
||||
:1000D000B80800200448804704480047FEE7FEE7D0
|
||||
:1000E000FEE7FEE7FEE7FEE7A11A0008C1000008F0
|
||||
:1000F00030B50B46014600202022012409E00D46C0
|
||||
@@ -31,7 +31,7 @@
|
||||
:1001D00000902046641E0028DFDC019B0098294621
|
||||
:1001E000324607B0F0BD0000064C0125064E05E082
|
||||
:1001F000E36807CC2B430C3C98471034B442F7D348
|
||||
:10020000FFF762FFE82A0008082B000810B5202A33
|
||||
:10020000FFF762FF702B0008902B000810B5202A22
|
||||
:1002100004DB0146203A9140002010BD914020238C
|
||||
:100220009C1A0346E3401943904010BD70B500246A
|
||||
:10023000014620314A78022A03D004218163012437
|
||||
@@ -114,10 +114,10 @@
|
||||
:1007000009028843E9680843606000F02DF86168D9
|
||||
:10071000084A0906090F515CC840074908600020D3
|
||||
:10072000FFF790FE0020F8BD0020024000100240BC
|
||||
:1007300088130000CF2A0008340000200148006818
|
||||
:1007300088130000572B000834000020014800688F
|
||||
:1007400070470000340000200448054900684968EB
|
||||
:10075000044A4905490F515CC840704734000020E5
|
||||
:1007600000100240DF2A000830B516A30FCB89B075
|
||||
:1007600000100240672B000830B516A30FCB89B0EC
|
||||
:100770006C460FC417A30FCB0FC41A494A680C204C
|
||||
:10078000144604401848042C05D0184B082C04D0FB
|
||||
:100790000C2C00D1184609B030BD9402240F6D46D0
|
||||
@@ -233,7 +233,7 @@
|
||||
:100E70002846F0BD45170008D91700087B17000861
|
||||
:100E80000D18000870B501220926D503F60629467B
|
||||
:100E90003046FFF7B2FA0F4C2078DE2802D00E4918
|
||||
:100EA0000120C8700B4801F0EDFCA078032805D1A3
|
||||
:100EA0000120C8700B4801F0F1FCA078032805D19F
|
||||
:100EB0000121002249030948FFF79FFA054A202330
|
||||
:100EC000D11A0748FFF774FF002229463046FFF782
|
||||
:100ED00094FA70BD70020020140000200008004841
|
||||
@@ -300,9 +300,9 @@
|
||||
:1012A0000169C943890609D4C168C943890605D4BF
|
||||
:1012B0002021C94301612046FFF73FFE70BD704702
|
||||
:1012C00070470000F8B5344C07462068334E87421B
|
||||
:1012D00045D1E06801F0B9FA05002ED00021695E21
|
||||
:1012D00045D1E06801F0BDFA05002ED00021695E1D
|
||||
:1012E000304600F0B1FF02213046695E1C3000F04C
|
||||
:1012F000ABFFE06801F0B4FA284800F0E5FFB06108
|
||||
:1012F000ABFFE06801F0B8FA284800F0E5FFB06104
|
||||
:1013000026481C3000F0E0FF244A1C329061B0698E
|
||||
:1013100000F0ACFF61680968C862906900F0A6FF40
|
||||
:10132000A1680968C862002D19D0AA79FF21092097
|
||||
@@ -310,9 +310,9 @@
|
||||
:1013400083FF164800211C3000F07EFFD4E72A7A84
|
||||
:10135000002A01D0002200E00122FFF74EF8606869
|
||||
:10136000874209D1B069002806D00C4802DD01F09F
|
||||
:10137000F2FA01E001F0E6FAA068874208D10748D6
|
||||
:101380001C308069002803D0054802DD01F0E3FA33
|
||||
:10139000F8BD01F0D7FAF8BD040000204400002099
|
||||
:10137000F6FA01E001F0EAFAA068874208D10748CE
|
||||
:101380001C308069002803D0054802DD01F0E7FA2F
|
||||
:10139000F8BD01F0DBFAF8BD040000204400002095
|
||||
:1013A00060000020704770B5040005D02546603508
|
||||
:1013B000687A002802D006E0012070BD0020287263
|
||||
:1013C000204600F027F82420687220680168490848
|
||||
@@ -551,8 +551,8 @@
|
||||
:10225000017D491CC9B20175022901D30021017514
|
||||
:1022600070470902014308B270470000002800DAF5
|
||||
:102270004042002801DD282802DBFF20F5307047AE
|
||||
:1022800001494000085A7047442A000800B5014639
|
||||
:1022900000F0A6FA411800F0A3FA8842FBD300BD73
|
||||
:1022800001494000085A70474C2A000800B5014631
|
||||
:1022900000F0AAFA411800F0A7FA8842FBD300BD6B
|
||||
:1022A00010B502490860FEF7D5FE10BD0000002001
|
||||
:1022B00013B50A23012269460248FFF7D1F80098B6
|
||||
:1022C0001CBD0000E001002010B500210A465300AB
|
||||
@@ -560,137 +560,146 @@
|
||||
:1022E0004018401010BD10B50C46034600F01FF812
|
||||
:1022F000002801D0012010BD19785868445419787D
|
||||
:10230000986842541878401C4007400F187000200D
|
||||
:1023100010BD10B50446082000F02CFA60600820BB
|
||||
:1023200000F028FAA060204600F025F810BD4178A2
|
||||
:1023100010BD10B50446082000F030FA60600820B7
|
||||
:1023200000F02CFAA060204600F025F810BD41789E
|
||||
:102330000078401C4007400F814201D101207047C6
|
||||
:102340000020704710B543780478A34201D10120E2
|
||||
:1023500010BD4468E35C0B7081684078085C1070C5
|
||||
:10236000002010BD41780278914203D0491C4907F2
|
||||
:10237000490F4170704710B504460020207060700E
|
||||
:1023800008216068FDF7F4FE0821A068FDF7F0FE63
|
||||
:1023900010BD000070B5264C2079002834D0FEF71F
|
||||
:1023900010BD000070B5224C2079002838D0FEF71F
|
||||
:1023A00033F8A1680025401AFA2803D97B2000F0F1
|
||||
:1023B00013F928E02079002826D01D480C3000F0C1
|
||||
:1023C00058F800281DD0207900281DD0184A194837
|
||||
:1023D000921D511EFFF7B6FF002815D114480C308E
|
||||
:1023E00000F06EF8A07900280FD0114871210C3050
|
||||
:1023F00000F022F80E4879210C3000F01DF80D2174
|
||||
:102400000EE000F00FF9257170BD0948F1210C3084
|
||||
:1024100000F012F8064879210C3000F00DF88D21FB
|
||||
:1024200003480C3000F008F80248FFF79BFFE8E78C
|
||||
:10243000140000209002002000B50B46024600F078
|
||||
:1024400020F8002801D0012000BD117850684354C5
|
||||
:102450001078401C8007800F1070002000BD10B560
|
||||
:102460000446042000F086F96060204600F028F859
|
||||
:1024700010BD41780078814201D1012070470020D1
|
||||
:10248000704741780078401C8007800F814201D15D
|
||||
:102490000120704700207047427803789A4201D1AA
|
||||
:1024A000012070474068805C0870002070474178C8
|
||||
:1024B0000278914203D0491C8907890F4170704707
|
||||
:1024C00010B500210170417040680421FDF750FEF5
|
||||
:1024D00010BD000070B5FDF797FF0446084D07E0FA
|
||||
:1024E00002212846FDF780FF002801D0012070BDA1
|
||||
:1024F000FDF78AFF001B0A28F2D3022070BD0000FE
|
||||
:1025000000040048F8B50025114E0746802400223B
|
||||
:1025100001213046FDF771FFB420FFF7B7FE01221D
|
||||
:1025200011463046FDF769FF5020FFF7AFFE02214C
|
||||
:102530003046FDF759FF012800D1254364088C205F
|
||||
:10254000FFF7A4FE002CE2D13D700020F8BD000092
|
||||
:102550000004004870B50C460546FFF7BBFF012894
|
||||
:1025600005D02846FFF7CEFF204600F051FA70BD97
|
||||
:1025700010B54B21C9001648FFF7ECFF144C641E40
|
||||
:10258000A070002823D16078102806D014280AD023
|
||||
:10259000162813D0362813D015E001202071FDF73E
|
||||
:1025A00033FFA0600FE00A480B30FFF762FF0028FE
|
||||
:1025B00001D07B2005E000F035F804E00B2000E0BE
|
||||
:1025C0007D2000F009F8617802A0FFF7AFFC10BD94
|
||||
:1025D0001500002061257800F8B50724104E074645
|
||||
:1025E00001252846A040384201D0012200E0002207
|
||||
:1025F00002213046FDF701FF002201213046FDF7A0
|
||||
:10260000FCFEA020FFF742FE012211463046FDF7F6
|
||||
:10261000F4FEAA20FFF73AFE641EE2D50020F8BDC2
|
||||
:102620000004004808B569460748FFF735FF06482B
|
||||
:10263000FFF73DFF68460078FFF7CEFF6846017858
|
||||
:1026400002A0FFF773FC08BD20000020622578007F
|
||||
:102650001CB5FDF7E7FEFFF7EDF9FEF767FFFEF7A4
|
||||
:10266000DFFFFFF725F8FEF7F9FF34480024344E6A
|
||||
:1026700084603149C6602F25046122C080270C3058
|
||||
:1026800090C01C38FEF77EFC002800D0FEE72B48E7
|
||||
:102690002C494030846022C08460C4602A490461AF
|
||||
:1026A00041600838FEF76EFC002800D0FEE72348A2
|
||||
:1026B0002649403884608761C660046122C00838BA
|
||||
:1026C000FEF760FC002800D0FEE701200094019096
|
||||
:1026D0001F4C002322781F491FA0FFF727FC174833
|
||||
:1026E0008038FFF7DDFD20460C30FFF7B8FE1F48AD
|
||||
:1026F000FFF70FFE2046143000F092F81B4820210F
|
||||
:102700004038FDF735FD194A0C482023203AD11AEC
|
||||
:10271000E438FEF74DFB164DE078002801D000F0BC
|
||||
:102720003BF901212846FDF75FFE0028F4D0FFF7B2
|
||||
:102730001FFFFFF72FFEEFE700440140600100207C
|
||||
:10274000FFFF00000048014010270000002000406B
|
||||
:1027500014000020942A000825730A726576256407
|
||||
:10276000207625642E25642E25640A009002002020
|
||||
:1027700000040048F0B50B30C108C900144F002612
|
||||
:10278000144A0FE003688B420BD38B4205D95C1AC5
|
||||
:102790004318456830C3083B00E04368136002C03B
|
||||
:1027A00004E0021D10680028ECD13046002803D157
|
||||
:1027B0003868002801D00020F0BD064A06481060A5
|
||||
:1027C000064A121AD208D20044C001203860D7E766
|
||||
:1027D000400000203C000020BC020020B804002083
|
||||
:1027E000024800680068406A70470000000000204E
|
||||
:1027F00010B50B46044600F01DF8002801D001205A
|
||||
:1028000010BD20780C226168504308181946FDF766
|
||||
:1028100096FC2078401C0007000F2070002010BD9F
|
||||
:1028200010B50446C020FFF7A5FF6060204600F009
|
||||
:1028300020F810BD41780078401C0007000F81424D
|
||||
:1028400001D1012070470020704741780278914201
|
||||
:1028500001D10020704740680C2251434018704756
|
||||
:1028600041780278914203D0491C0907090F417051
|
||||
:10287000704710B50021017041704068C021FDF71C
|
||||
:1028800077FC10BD70B504468078092824D008284C
|
||||
:1028900042D001283FD120212848FDF769FC274874
|
||||
:1028A000CD21017061784170802585700321C17050
|
||||
:1028B00023490822097801710021417181710121A8
|
||||
:1028C000C171002104465834635C002B32D0022BC6
|
||||
:1028D00029D0012B29D02BE061792079FFF7C1FCA9
|
||||
:1028E000164A4C321080E179A079FFF7BAFC50808B
|
||||
:1028F000207A124940429080607B9071A07B1072D8
|
||||
:10290000E07BD071207C5072607C90720C484C311E
|
||||
:102910001430FFF76DFF70BD0848A279217940306F
|
||||
:10292000FFF7E1FC70BD815402E00B462B4383545A
|
||||
:10293000521CD2B2491C1029C6DB70BD50020020C7
|
||||
:102940001400002010B5817B491E8907890F81730F
|
||||
:1029500000F00AF810BD10B5817B491C8907890F6A
|
||||
:10296000817300F001F810BD70B50446807B094901
|
||||
:102970000D5CA1882068EA0700D00122FDF73DFD2B
|
||||
:10298000A807A189A06801D5012200E00022FDF777
|
||||
:1029900034FD70BD402A000811A0FFF7C7FA134D9F
|
||||
:1029A0000024295D12A0FFF7C1FA641C202CF8DB7B
|
||||
:1029B00010A0FFF7BBFA134D002408212846FDF7AD
|
||||
:1029C00018FD6420FDF756FC641C642CF5DBBFF396
|
||||
:1029D0004F8F0E490C48C860BFF34F8F00BFFDE713
|
||||
:1029E000535049204552524F520A000070020020B5
|
||||
:1029F000256420000A7265626F6F74696E672E2EFF
|
||||
:102A00002E0A0000000400480400FA0500ED00E072
|
||||
:102A100070B50546FDF7F8FC0446084EFDF7F4FCDA
|
||||
:102A2000001BA84201D9032070BD02213046FDF7EA
|
||||
:102A3000DBFC0128F2D1002070BD0000000400483A
|
||||
:102A400000010302F401D4300528DE22361F601C89
|
||||
:102A50000F1A1A186716E81492135B1240113C10F3
|
||||
:102A60004B0F6B0E990DD30C1A0C6A0BC30A240A78
|
||||
:102A70008D09FC087208ED076D07F3067C060A064F
|
||||
:102A80009C053105CA0466040504A6034B03F20243
|
||||
:102A90009B0246025553423456432050726F746F66
|
||||
:102AA000636F6C20426F6172640A4170706C6520C4
|
||||
:102AB0004C6973612C204D61632026204144420AF9
|
||||
:102AC00064656B754E756B656D2032303232000077
|
||||
:102AD00000000000000000010203040607080900CE
|
||||
:102AE0000000000102030400082B00080000002081
|
||||
:102AF000440000004C1F00084C2B0008440000203C
|
||||
:102B0000740800005C1F00080000000000000000C6
|
||||
:102B100000000000000000000000000000000000B5
|
||||
:102B200000000000000000000000000000000000A5
|
||||
:102B300000000000000000000000000000127A0009
|
||||
:0C2B400000000000000000000000000089
|
||||
:1023B0000DF930E0207900282AD019480C3000F0BF
|
||||
:1023C00052F8002825D02079002821D0144A154839
|
||||
:1023D000921D511EFFF7B6FF002819D110480C308E
|
||||
:1023E00000F068F8607980280FD20F49095C002955
|
||||
:1023F0000BD0FF2909D0A07900280ED008480C3056
|
||||
:1024000000F014F800F012F925710648FFF7AAFF52
|
||||
:1024100070BD00F00BF9257170BD80200143EDE720
|
||||
:102420001400002090020020D72A000800B50B46B7
|
||||
:10243000024600F020F8002801D0012000BD1178EC
|
||||
:10244000506843541078401C8007800F10700020A3
|
||||
:1024500000BD10B50446042000F090F960602046ED
|
||||
:1024600000F028F810BD41780078814201D10120A8
|
||||
:1024700070470020704741780078401C8007800F2B
|
||||
:10248000814201D1012070470020704742780378D3
|
||||
:102490009A4201D1012070474068805C087000209A
|
||||
:1024A000704741780278914203D0491C8907890F0F
|
||||
:1024B0004170704710B500210170417040680421DF
|
||||
:1024C000FDF756FE10BD000070B5FDF79DFF0446F8
|
||||
:1024D000084D07E002212846FDF786FF002801D0BD
|
||||
:1024E000012070BDFDF790FF001B0A28F2D30220E7
|
||||
:1024F00070BD000000040048F8B50025114E0746E5
|
||||
:102500008024002201213046FDF777FFB420FFF739
|
||||
:10251000BDFE012211463046FDF76FFF5020FFF748
|
||||
:10252000B5FE02213046FDF75FFF012800D12543AB
|
||||
:1025300064088C20FFF7AAFE002CE2D13D70002039
|
||||
:10254000F8BD00000004004870B50C460546FFF7D2
|
||||
:10255000BBFF012805D02846FFF7CEFF204600F03C
|
||||
:102560005BFA70BD10B54B21C9001648FFF7ECFFB0
|
||||
:10257000144C641EA070002823D16078102806D067
|
||||
:1025800014280AD0162813D0362813D015E00120BD
|
||||
:102590002071FDF739FFA0600FE00A480B30FFF70C
|
||||
:1025A00062FF002801D07B2005E000F03FF804E046
|
||||
:1025B0000B2000E07D2000F009F8617802A0FFF711
|
||||
:1025C000B5FC10BD1500002072257800F8B5164E38
|
||||
:1025D0000746012211463046FDF70FFFC82000F0E4
|
||||
:1025E0001BFA03281FD0072401252846A0403842A3
|
||||
:1025F00001D0012200E0002202213046FDF7FDFE5D
|
||||
:10260000002201213046FDF7F8FEA020FFF73EFE34
|
||||
:10261000012211463046FDF7F0FEAA20FFF736FEF4
|
||||
:10262000641EE2D50020F8BD0004004808B56946E4
|
||||
:102630000748FFF72BFF0648FFF733FF684600788F
|
||||
:10264000FFF7C4FF6846017802A0FFF76FFC08BDE2
|
||||
:1026500020000020772578001CB5FDF7E3FEFFF78A
|
||||
:10266000E9F9FEF763FFFEF7DBFFFFF721F8FEF75E
|
||||
:10267000F5FF34480024344E84603149C6602F256C
|
||||
:10268000046122C080270C3090C01C38FEF77AFC11
|
||||
:10269000002800D0FEE72B482C494030846022C03F
|
||||
:1026A0008460C4602A49046141600838FEF76AFC0E
|
||||
:1026B000002800D0FEE7234826494038846087611F
|
||||
:1026C000C660046122C00838FEF75CFC002800D018
|
||||
:1026D000FEE70120009401901F4C002322781F493F
|
||||
:1026E0001FA0FFF723FC17488038FFF7D9FD2046CD
|
||||
:1026F0000C30FFF7AEFE1F48FFF70BFE20461430EC
|
||||
:1027000000F092F81B4820214038FDF731FD194AAE
|
||||
:102710000C482023203AD11AE438FEF749FB164D25
|
||||
:10272000E078002801D000F03BF901212846FDF7B0
|
||||
:102730005BFE0028F4D0FFF715FFFFF72BFEEFE755
|
||||
:102740000044014060010020FFFF000000480140FC
|
||||
:102750001027000000200040140000209C2A0008E0
|
||||
:1027600025730A7265762564207625642E25642EED
|
||||
:1027700025640A009002002000040048F0B50B30E8
|
||||
:10278000C108C900144F0026144A0FE003688B42A9
|
||||
:102790000BD38B4205D95C1A4318456830C3083BFC
|
||||
:1027A00000E04368136002C004E0021D10680028C6
|
||||
:1027B000ECD13046002803D13868002801D0002031
|
||||
:1027C000F0BD064A06481060064A121AD208D20026
|
||||
:1027D00044C001203860D7E7400000203C000020C2
|
||||
:1027E000BC020020B8040020024800680068406A6B
|
||||
:1027F000704700000000002010B50B46044600F0B2
|
||||
:102800001DF8002801D0012010BD20780C2261683D
|
||||
:10281000504308181946FDF792FC2078401C000729
|
||||
:10282000000F2070002010BD10B50446C020FFF737
|
||||
:10283000A5FF6060204600F020F810BD41780078C8
|
||||
:10284000401C0007000F814201D101207047002089
|
||||
:10285000704741780278914201D10020704740686A
|
||||
:102860000C2251434018704741780278914203D0BE
|
||||
:10287000491C0907090F4170704710B5002101700C
|
||||
:1028800041704068C021FDF773FC10BD70B504466F
|
||||
:102890008078092824D0082842D001283FD120215F
|
||||
:1028A0002848FDF765FC2748CD210170617841700B
|
||||
:1028B000802585700321C1702349082209780171A0
|
||||
:1028C0000021417181710121C171002104465834F8
|
||||
:1028D000635C002B32D0022B29D0012B29D02BE0B6
|
||||
:1028E00061792079FFF7BDFC164A4C321080E179FE
|
||||
:1028F000A079FFF7B6FC5080207A124940429080C0
|
||||
:10290000607B9071A07B1072E07BD071207C507254
|
||||
:10291000607C90720C484C311430FFF76DFF70BD35
|
||||
:102920000848A27921794030FFF7DDFC70BD815461
|
||||
:1029300002E00B462B438354521CD2B2491C10298F
|
||||
:10294000C6DB70BD500200201400002010B5817B52
|
||||
:10295000491E8907890F817300F00AF810BD10B570
|
||||
:10296000817B491C8907890F817300F001F810BD34
|
||||
:1029700070B50446807B09490D5CA1882068EA0790
|
||||
:1029800000D00122FDF739FDA807A189A06801D573
|
||||
:10299000012200E00022FDF730FD70BD482A00084A
|
||||
:1029A00011A0FFF7C3FA134D0024295D12A0FFF711
|
||||
:1029B000BDFA641C202CF8DB10A0FFF7B7FA134D0A
|
||||
:1029C000002408212846FDF714FD6420FDF752FC81
|
||||
:1029D000641C642CF5DBBFF34F8F0E490C48C860B4
|
||||
:1029E000BFF34F8F00BFFDE7535049204552524F70
|
||||
:1029F000520A000070020020256420000A726562FD
|
||||
:102A00006F6F74696E672E2E2E0A00000004004856
|
||||
:102A10000400FA0500ED00E070B50546FDF7F4FC92
|
||||
:102A20000446084EFDF7F0FC001BA84201D9032024
|
||||
:102A300070BD02213046FDF7D7FC0128F2D10020FD
|
||||
:102A400070BD00000004004800010302F401D4300E
|
||||
:102A50000528DE22361F601C0F1A1A186716E814A4
|
||||
:102A600092135B1240113C104B0F6B0E990DD30C5F
|
||||
:102A70001A0C6A0BC30A240A8D09FC087208ED07B8
|
||||
:102A80006D07F3067C060A069C053105CA04660438
|
||||
:102A90000504A6034B03F2029B024602555342343F
|
||||
:102AA00056432050726F746F636F6C20426F617277
|
||||
:102AB000640A4170706C65204C6973612C204D6113
|
||||
:102AC000632026204144420A64656B754E756B6530
|
||||
:102AD0006D20323032320000002527292B2F2D3572
|
||||
:102AE00039333B37316761191B1D1F232141453F96
|
||||
:102AF00047433D4975010305070B094D514B534FA2
|
||||
:102B00006571550D0F1113175B5D575F5971FF6F9D
|
||||
:102B100063FF00000000000000000000FF00FFFF56
|
||||
:102B2000FFFFFFFFFFFFFFFFFFFFFF0000000000B0
|
||||
:102B300000000000000000FF75FF006F0000FF00B4
|
||||
:102B4000FFFF00FF00000000000000000000000088
|
||||
:102B5000000000006F6F6F00000000000000000127
|
||||
:102B60000203040607080900000000010203040034
|
||||
:102B7000902B000800000020440000004C1F0008BB
|
||||
:102B8000D42B000844000020740800005C1F0008DB
|
||||
:102B90000000000000000000000000000000000035
|
||||
:102BA0000000000000000000000000000000000025
|
||||
:102BB0000000000000000000000000000000000015
|
||||
:102BC0000000000000127A00000000000000000079
|
||||
:042BD0000000000001
|
||||
:04000005080000C12E
|
||||
:00000001FF
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
<title>Static Call Graph - [apple_all\apple_all.axf]</title></head>
|
||||
<body><HR>
|
||||
<H1>Static Call Graph for image apple_all\apple_all.axf</H1><HR>
|
||||
<BR><P>#<CALLGRAPH># ARM Linker, 5060750: Last Updated: Sun Jun 26 23:16:28 2022
|
||||
<BR><P>#<CALLGRAPH># ARM Linker, 5060750: Last Updated: Mon Jun 27 14:28:58 2022
|
||||
<BR><P>
|
||||
<H3>Maximum Stack Usage = 212 bytes + Unknown(Cycles, Untraceable Function Pointers)</H3><H3>
|
||||
Call chain for Maximum Stack Depth:</H3>
|
||||
@@ -831,8 +831,8 @@ Global Symbols
|
||||
<BR>[Called By]<UL><LI><a href="#[87]">>></a> kb_buf_init
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[8a]"></a>m0100a_handle_inquiry</STRONG> (Thumb, 156 bytes, Stack size 16 bytes, main.o(i.m0100a_handle_inquiry))
|
||||
<BR><BR>[Stack]<UL><LI>Max Depth = 52<LI>Call Chain = m0100a_handle_inquiry ⇒ m0110a_write_1b_from_buf ⇒ m0110a_write ⇒ delay_us
|
||||
<P><STRONG><a name="[8a]"></a>m0100a_handle_inquiry</STRONG> (Thumb, 140 bytes, Stack size 16 bytes, main.o(i.m0100a_handle_inquiry))
|
||||
<BR><BR>[Stack]<UL><LI>Max Depth = 64<LI>Call Chain = m0100a_handle_inquiry ⇒ m0110a_write_1b_from_buf ⇒ m0110a_write ⇒ wait_for_data_idle
|
||||
</UL>
|
||||
<BR>[Calls]<UL><LI><a href="#[8b]">>></a> m0110a_write
|
||||
<LI><a href="#[8e]">>></a> m0110a_cmd_buf_reset
|
||||
@@ -919,7 +919,7 @@ Global Symbols
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[99]"></a>m0110a_update</STRONG> (Thumb, 96 bytes, Stack size 8 bytes, main.o(i.m0110a_update))
|
||||
<BR><BR>[Stack]<UL><LI>Max Depth = 52<LI>Call Chain = m0110a_update ⇒ m0110a_read_host_cmd ⇒ m0110a_read ⇒ delay_us
|
||||
<BR><BR>[Stack]<UL><LI>Max Depth = 56<LI>Call Chain = m0110a_update ⇒ m0110a_write_1b_from_buf ⇒ m0110a_write ⇒ wait_for_data_idle
|
||||
</UL>
|
||||
<BR>[Calls]<UL><LI><a href="#[8b]">>></a> m0110a_write
|
||||
<LI><a href="#[97]">>></a> m0110a_read_host_cmd
|
||||
@@ -931,10 +931,11 @@ Global Symbols
|
||||
<BR>[Called By]<UL><LI><a href="#[26]">>></a> main
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[8b]"></a>m0110a_write</STRONG> (Thumb, 72 bytes, Stack size 24 bytes, m0110a.o(i.m0110a_write))
|
||||
<BR><BR>[Stack]<UL><LI>Max Depth = 28<LI>Call Chain = m0110a_write ⇒ delay_us
|
||||
<P><STRONG><a name="[8b]"></a>m0110a_write</STRONG> (Thumb, 92 bytes, Stack size 24 bytes, m0110a.o(i.m0110a_write))
|
||||
<BR><BR>[Stack]<UL><LI>Max Depth = 40<LI>Call Chain = m0110a_write ⇒ wait_for_data_idle
|
||||
</UL>
|
||||
<BR>[Calls]<UL><LI><a href="#[4e]">>></a> HAL_GPIO_WritePin
|
||||
<BR>[Calls]<UL><LI><a href="#[98]">>></a> wait_for_data_idle
|
||||
<LI><a href="#[4e]">>></a> HAL_GPIO_WritePin
|
||||
<LI><a href="#[81]">>></a> delay_us
|
||||
</UL>
|
||||
<BR>[Called By]<UL><LI><a href="#[90]">>></a> m0110a_write_1b_from_buf
|
||||
@@ -943,7 +944,7 @@ Global Symbols
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[90]"></a>m0110a_write_1b_from_buf</STRONG> (Thumb, 36 bytes, Stack size 8 bytes, main.o(i.m0110a_write_1b_from_buf))
|
||||
<BR><BR>[Stack]<UL><LI>Max Depth = 36<LI>Call Chain = m0110a_write_1b_from_buf ⇒ m0110a_write ⇒ delay_us
|
||||
<BR><BR>[Stack]<UL><LI>Max Depth = 48<LI>Call Chain = m0110a_write_1b_from_buf ⇒ m0110a_write ⇒ wait_for_data_idle
|
||||
</UL>
|
||||
<BR>[Calls]<UL><LI><a href="#[8b]">>></a> m0110a_write
|
||||
<LI><a href="#[9c]">>></a> m0110a_cmd_buf_pop
|
||||
@@ -1080,7 +1081,8 @@ Global Symbols
|
||||
<BR>[Calls]<UL><LI><a href="#[39]">>></a> HAL_GetTick
|
||||
<LI><a href="#[95]">>></a> HAL_GPIO_ReadPin
|
||||
</UL>
|
||||
<BR>[Called By]<UL><LI><a href="#[97]">>></a> m0110a_read_host_cmd
|
||||
<BR>[Called By]<UL><LI><a href="#[8b]">>></a> m0110a_write
|
||||
<LI><a href="#[97]">>></a> m0110a_read_host_cmd
|
||||
</UL>
|
||||
<P>
|
||||
<H3>
|
||||
|
||||
@@ -85,6 +85,7 @@ Section Cross References
|
||||
main.o(i.m0100a_handle_inquiry) refers to helpers.o(i.kb_buf_pop) for kb_buf_pop
|
||||
main.o(i.m0100a_handle_inquiry) refers to main.o(.data) for .data
|
||||
main.o(i.m0100a_handle_inquiry) refers to main.o(.bss) for .bss
|
||||
main.o(i.m0100a_handle_inquiry) refers to m0110a.o(.constdata) for linux_keycode_to_m0110a_scancode_lookup
|
||||
main.o(i.m0110a_update) refers to m0110a.o(i.m0110a_read_host_cmd) for m0110a_read_host_cmd
|
||||
main.o(i.m0110a_update) refers to stm32f0xx_hal.o(i.HAL_GetTick) for HAL_GetTick
|
||||
main.o(i.m0110a_update) refers to m0110a.o(i.m0110a_cmd_buf_is_empty) for m0110a_cmd_buf_is_empty
|
||||
@@ -162,6 +163,7 @@ Section Cross References
|
||||
m0110a.o(i.m0110a_read_host_cmd) refers to m0110a.o(i.m0110a_read) for m0110a_read
|
||||
m0110a.o(i.m0110a_read_host_cmd) refers to m0110a.o(i.wait_for_data_idle) for wait_for_data_idle
|
||||
m0110a.o(i.m0110a_write) refers to stm32f0xx_hal_gpio.o(i.HAL_GPIO_WritePin) for HAL_GPIO_WritePin
|
||||
m0110a.o(i.m0110a_write) refers to m0110a.o(i.wait_for_data_idle) for wait_for_data_idle
|
||||
m0110a.o(i.m0110a_write) refers to delay_us.o(i.delay_us) for delay_us
|
||||
m0110a.o(i.wait_for_data_idle) refers to stm32f0xx_hal.o(i.HAL_GetTick) for HAL_GetTick
|
||||
m0110a.o(i.wait_for_data_idle) refers to stm32f0xx_hal_gpio.o(i.HAL_GPIO_ReadPin) for HAL_GPIO_ReadPin
|
||||
@@ -1612,44 +1614,44 @@ Image Symbol Table
|
||||
../Src/main.c 0x00000000 Number 0 main.o ABSOLUTE
|
||||
../Src/stm32f0xx_hal_msp.c 0x00000000 Number 0 stm32f0xx_hal_msp.o ABSOLUTE
|
||||
../Src/stm32f0xx_it.c 0x00000000 Number 0 stm32f0xx_it.o ABSOLUTE
|
||||
../clib/microlib/division.c 0x00000000 Number 0 uldiv.o ABSOLUTE
|
||||
../clib/microlib/division.c 0x00000000 Number 0 uidiv.o ABSOLUTE
|
||||
../clib/microlib/division.c 0x00000000 Number 0 uldiv.o ABSOLUTE
|
||||
../clib/microlib/init/entry.s 0x00000000 Number 0 entry10a.o ABSOLUTE
|
||||
../clib/microlib/init/entry.s 0x00000000 Number 0 entry9a.o ABSOLUTE
|
||||
../clib/microlib/init/entry.s 0x00000000 Number 0 entry9b.o ABSOLUTE
|
||||
../clib/microlib/init/entry.s 0x00000000 Number 0 entry10b.o ABSOLUTE
|
||||
../clib/microlib/init/entry.s 0x00000000 Number 0 entry.o ABSOLUTE
|
||||
../clib/microlib/init/entry.s 0x00000000 Number 0 entry11a.o ABSOLUTE
|
||||
../clib/microlib/init/entry.s 0x00000000 Number 0 entry8b.o ABSOLUTE
|
||||
../clib/microlib/init/entry.s 0x00000000 Number 0 entry8a.o ABSOLUTE
|
||||
../clib/microlib/init/entry.s 0x00000000 Number 0 entry7b.o ABSOLUTE
|
||||
../clib/microlib/init/entry.s 0x00000000 Number 0 entry7a.o ABSOLUTE
|
||||
../clib/microlib/init/entry.s 0x00000000 Number 0 entry10a.o ABSOLUTE
|
||||
../clib/microlib/init/entry.s 0x00000000 Number 0 entry5.o ABSOLUTE
|
||||
../clib/microlib/init/entry.s 0x00000000 Number 0 entry10b.o ABSOLUTE
|
||||
../clib/microlib/init/entry.s 0x00000000 Number 0 entry.o ABSOLUTE
|
||||
../clib/microlib/init/entry.s 0x00000000 Number 0 entry11a.o ABSOLUTE
|
||||
../clib/microlib/init/entry.s 0x00000000 Number 0 entry11b.o ABSOLUTE
|
||||
../clib/microlib/init/entry.s 0x00000000 Number 0 entry2.o ABSOLUTE
|
||||
../clib/microlib/longlong.c 0x00000000 Number 0 llshl.o ABSOLUTE
|
||||
../clib/microlib/longlong.c 0x00000000 Number 0 llushr.o ABSOLUTE
|
||||
../clib/microlib/init/entry.s 0x00000000 Number 0 entry9b.o ABSOLUTE
|
||||
../clib/microlib/longlong.c 0x00000000 Number 0 llsshr.o ABSOLUTE
|
||||
../clib/microlib/longlong.c 0x00000000 Number 0 llushr.o ABSOLUTE
|
||||
../clib/microlib/longlong.c 0x00000000 Number 0 llshl.o ABSOLUTE
|
||||
../clib/microlib/malloc/malloc.c 0x00000000 Number 0 mallocra.o ABSOLUTE
|
||||
../clib/microlib/malloc/malloc.c 0x00000000 Number 0 malloca.o ABSOLUTE
|
||||
../clib/microlib/malloc/malloc.c 0x00000000 Number 0 mallocr.o ABSOLUTE
|
||||
../clib/microlib/malloc/malloc.c 0x00000000 Number 0 malloc.o ABSOLUTE
|
||||
../clib/microlib/malloc/mvars.c 0x00000000 Number 0 mvars.o ABSOLUTE
|
||||
../clib/microlib/printf/printf.c 0x00000000 Number 0 printf0.o ABSOLUTE
|
||||
../clib/microlib/printf/printf.c 0x00000000 Number 0 printfa.o ABSOLUTE
|
||||
../clib/microlib/printf/printf.c 0x00000000 Number 0 printf8.o ABSOLUTE
|
||||
../clib/microlib/printf/printf.c 0x00000000 Number 0 printf7.o ABSOLUTE
|
||||
../clib/microlib/printf/printf.c 0x00000000 Number 0 printf6.o ABSOLUTE
|
||||
../clib/microlib/printf/printf.c 0x00000000 Number 0 printf5.o ABSOLUTE
|
||||
../clib/microlib/printf/printf.c 0x00000000 Number 0 printf4.o ABSOLUTE
|
||||
../clib/microlib/printf/printf.c 0x00000000 Number 0 printfb.o ABSOLUTE
|
||||
../clib/microlib/printf/printf.c 0x00000000 Number 0 printf5.o ABSOLUTE
|
||||
../clib/microlib/printf/printf.c 0x00000000 Number 0 printf3.o ABSOLUTE
|
||||
../clib/microlib/printf/printf.c 0x00000000 Number 0 printf2.o ABSOLUTE
|
||||
../clib/microlib/printf/printf.c 0x00000000 Number 0 printf1.o ABSOLUTE
|
||||
../clib/microlib/printf/printf.c 0x00000000 Number 0 printf0.o ABSOLUTE
|
||||
../clib/microlib/printf/printf.c 0x00000000 Number 0 printfb.o ABSOLUTE
|
||||
../clib/microlib/printf/printf.c 0x00000000 Number 0 printfa.o ABSOLUTE
|
||||
../clib/microlib/printf/stubs.s 0x00000000 Number 0 stubs.o ABSOLUTE
|
||||
../clib/microlib/stdio/streams.c 0x00000000 Number 0 stdout.o ABSOLUTE
|
||||
../clib/microlib/string/memcpy.c 0x00000000 Number 0 memcpya.o ABSOLUTE
|
||||
../clib/microlib/string/memcpy.c 0x00000000 Number 0 memcpyb.o ABSOLUTE
|
||||
../clib/microlib/string/memcpy.c 0x00000000 Number 0 memcpya.o ABSOLUTE
|
||||
../clib/microlib/string/memset.c 0x00000000 Number 0 memseta.o ABSOLUTE
|
||||
../clib/microlib/stubs.s 0x00000000 Number 0 iusefp.o ABSOLUTE
|
||||
../fplib/microlib/fpadd.c 0x00000000 Number 0 dadd.o ABSOLUTE
|
||||
@@ -1828,38 +1830,39 @@ Image Symbol Table
|
||||
i.kb_buf_pop 0x08002364 Section 0 helpers.o(i.kb_buf_pop)
|
||||
i.kb_buf_reset 0x08002376 Section 0 helpers.o(i.kb_buf_reset)
|
||||
i.m0100a_handle_inquiry 0x08002394 Section 0 main.o(i.m0100a_handle_inquiry)
|
||||
i.m0110a_cmd_buf_add 0x08002438 Section 0 m0110a.o(i.m0110a_cmd_buf_add)
|
||||
i.m0110a_cmd_buf_init 0x0800245e Section 0 m0110a.o(i.m0110a_cmd_buf_init)
|
||||
i.m0110a_cmd_buf_is_empty 0x08002472 Section 0 m0110a.o(i.m0110a_cmd_buf_is_empty)
|
||||
i.m0110a_cmd_buf_is_full 0x08002482 Section 0 m0110a.o(i.m0110a_cmd_buf_is_full)
|
||||
i.m0110a_cmd_buf_peek 0x08002498 Section 0 m0110a.o(i.m0110a_cmd_buf_peek)
|
||||
i.m0110a_cmd_buf_pop 0x080024ae Section 0 m0110a.o(i.m0110a_cmd_buf_pop)
|
||||
i.m0110a_cmd_buf_reset 0x080024c0 Section 0 m0110a.o(i.m0110a_cmd_buf_reset)
|
||||
i.m0110a_get_line_status 0x080024d4 Section 0 m0110a.o(i.m0110a_get_line_status)
|
||||
i.m0110a_read 0x08002504 Section 0 m0110a.o(i.m0110a_read)
|
||||
i.m0110a_read_host_cmd 0x08002554 Section 0 m0110a.o(i.m0110a_read_host_cmd)
|
||||
i.m0110a_update 0x08002570 Section 0 main.o(i.m0110a_update)
|
||||
i.m0110a_write 0x080025d8 Section 0 m0110a.o(i.m0110a_write)
|
||||
i.m0110a_write_1b_from_buf 0x08002624 Section 0 main.o(i.m0110a_write_1b_from_buf)
|
||||
i.main 0x08002650 Section 0 main.o(i.main)
|
||||
i.malloc 0x08002774 Section 0 malloc.o(i.malloc)
|
||||
i.micros 0x080027e0 Section 0 delay_us.o(i.micros)
|
||||
i.mouse_buf_add 0x080027f0 Section 0 helpers.o(i.mouse_buf_add)
|
||||
i.mouse_buf_init 0x08002820 Section 0 helpers.o(i.mouse_buf_init)
|
||||
i.mouse_buf_is_full 0x08002834 Section 0 helpers.o(i.mouse_buf_is_full)
|
||||
i.mouse_buf_peek 0x0800284a Section 0 helpers.o(i.mouse_buf_peek)
|
||||
i.mouse_buf_pop 0x08002860 Section 0 helpers.o(i.mouse_buf_pop)
|
||||
i.mouse_buf_reset 0x08002872 Section 0 helpers.o(i.mouse_buf_reset)
|
||||
i.parse_spi_buf 0x08002884 Section 0 main.o(i.parse_spi_buf)
|
||||
i.quad_decrement 0x08002944 Section 0 quad_encoder.o(i.quad_decrement)
|
||||
i.quad_increment 0x08002956 Section 0 quad_encoder.o(i.quad_increment)
|
||||
i.quad_write 0x08002968 Section 0 quad_encoder.o(i.quad_write)
|
||||
i.spi_error_dump_reboot 0x08002998 Section 0 main.o(i.spi_error_dump_reboot)
|
||||
i.wait_for_data_idle 0x08002a10 Section 0 m0110a.o(i.wait_for_data_idle)
|
||||
.constdata 0x08002a40 Section 84 quad_encoder.o(.constdata)
|
||||
.constdata 0x08002a94 Section 59 main.o(.constdata)
|
||||
.constdata 0x08002acf Section 16 system_stm32f0xx.o(.constdata)
|
||||
.constdata 0x08002adf Section 8 system_stm32f0xx.o(.constdata)
|
||||
i.m0110a_cmd_buf_add 0x0800242c Section 0 m0110a.o(i.m0110a_cmd_buf_add)
|
||||
i.m0110a_cmd_buf_init 0x08002452 Section 0 m0110a.o(i.m0110a_cmd_buf_init)
|
||||
i.m0110a_cmd_buf_is_empty 0x08002466 Section 0 m0110a.o(i.m0110a_cmd_buf_is_empty)
|
||||
i.m0110a_cmd_buf_is_full 0x08002476 Section 0 m0110a.o(i.m0110a_cmd_buf_is_full)
|
||||
i.m0110a_cmd_buf_peek 0x0800248c Section 0 m0110a.o(i.m0110a_cmd_buf_peek)
|
||||
i.m0110a_cmd_buf_pop 0x080024a2 Section 0 m0110a.o(i.m0110a_cmd_buf_pop)
|
||||
i.m0110a_cmd_buf_reset 0x080024b4 Section 0 m0110a.o(i.m0110a_cmd_buf_reset)
|
||||
i.m0110a_get_line_status 0x080024c8 Section 0 m0110a.o(i.m0110a_get_line_status)
|
||||
i.m0110a_read 0x080024f8 Section 0 m0110a.o(i.m0110a_read)
|
||||
i.m0110a_read_host_cmd 0x08002548 Section 0 m0110a.o(i.m0110a_read_host_cmd)
|
||||
i.m0110a_update 0x08002564 Section 0 main.o(i.m0110a_update)
|
||||
i.m0110a_write 0x080025cc Section 0 m0110a.o(i.m0110a_write)
|
||||
i.m0110a_write_1b_from_buf 0x0800262c Section 0 main.o(i.m0110a_write_1b_from_buf)
|
||||
i.main 0x08002658 Section 0 main.o(i.main)
|
||||
i.malloc 0x0800277c Section 0 malloc.o(i.malloc)
|
||||
i.micros 0x080027e8 Section 0 delay_us.o(i.micros)
|
||||
i.mouse_buf_add 0x080027f8 Section 0 helpers.o(i.mouse_buf_add)
|
||||
i.mouse_buf_init 0x08002828 Section 0 helpers.o(i.mouse_buf_init)
|
||||
i.mouse_buf_is_full 0x0800283c Section 0 helpers.o(i.mouse_buf_is_full)
|
||||
i.mouse_buf_peek 0x08002852 Section 0 helpers.o(i.mouse_buf_peek)
|
||||
i.mouse_buf_pop 0x08002868 Section 0 helpers.o(i.mouse_buf_pop)
|
||||
i.mouse_buf_reset 0x0800287a Section 0 helpers.o(i.mouse_buf_reset)
|
||||
i.parse_spi_buf 0x0800288c Section 0 main.o(i.parse_spi_buf)
|
||||
i.quad_decrement 0x0800294c Section 0 quad_encoder.o(i.quad_decrement)
|
||||
i.quad_increment 0x0800295e Section 0 quad_encoder.o(i.quad_increment)
|
||||
i.quad_write 0x08002970 Section 0 quad_encoder.o(i.quad_write)
|
||||
i.spi_error_dump_reboot 0x080029a0 Section 0 main.o(i.spi_error_dump_reboot)
|
||||
i.wait_for_data_idle 0x08002a18 Section 0 m0110a.o(i.wait_for_data_idle)
|
||||
.constdata 0x08002a48 Section 84 quad_encoder.o(.constdata)
|
||||
.constdata 0x08002a9c Section 59 main.o(.constdata)
|
||||
.constdata 0x08002ad7 Section 128 m0110a.o(.constdata)
|
||||
.constdata 0x08002b57 Section 16 system_stm32f0xx.o(.constdata)
|
||||
.constdata 0x08002b67 Section 8 system_stm32f0xx.o(.constdata)
|
||||
.data 0x20000000 Section 4 delay_us.o(.data)
|
||||
.data 0x20000004 Section 16 quad_encoder.o(.data)
|
||||
.data 0x20000014 Section 28 main.o(.data)
|
||||
@@ -2069,42 +2072,43 @@ Image Symbol Table
|
||||
kb_buf_peek 0x08002345 Thumb Code 32 helpers.o(i.kb_buf_peek)
|
||||
kb_buf_pop 0x08002365 Thumb Code 18 helpers.o(i.kb_buf_pop)
|
||||
kb_buf_reset 0x08002377 Thumb Code 28 helpers.o(i.kb_buf_reset)
|
||||
m0100a_handle_inquiry 0x08002395 Thumb Code 156 main.o(i.m0100a_handle_inquiry)
|
||||
m0110a_cmd_buf_add 0x08002439 Thumb Code 38 m0110a.o(i.m0110a_cmd_buf_add)
|
||||
m0110a_cmd_buf_init 0x0800245f Thumb Code 20 m0110a.o(i.m0110a_cmd_buf_init)
|
||||
m0110a_cmd_buf_is_empty 0x08002473 Thumb Code 16 m0110a.o(i.m0110a_cmd_buf_is_empty)
|
||||
m0110a_cmd_buf_is_full 0x08002483 Thumb Code 22 m0110a.o(i.m0110a_cmd_buf_is_full)
|
||||
m0110a_cmd_buf_peek 0x08002499 Thumb Code 22 m0110a.o(i.m0110a_cmd_buf_peek)
|
||||
m0110a_cmd_buf_pop 0x080024af Thumb Code 18 m0110a.o(i.m0110a_cmd_buf_pop)
|
||||
m0110a_cmd_buf_reset 0x080024c1 Thumb Code 18 m0110a.o(i.m0110a_cmd_buf_reset)
|
||||
m0110a_get_line_status 0x080024d5 Thumb Code 42 m0110a.o(i.m0110a_get_line_status)
|
||||
m0110a_read 0x08002505 Thumb Code 74 m0110a.o(i.m0110a_read)
|
||||
m0110a_read_host_cmd 0x08002555 Thumb Code 28 m0110a.o(i.m0110a_read_host_cmd)
|
||||
m0110a_update 0x08002571 Thumb Code 96 main.o(i.m0110a_update)
|
||||
m0110a_write 0x080025d9 Thumb Code 72 m0110a.o(i.m0110a_write)
|
||||
m0110a_write_1b_from_buf 0x08002625 Thumb Code 36 main.o(i.m0110a_write_1b_from_buf)
|
||||
main 0x08002651 Thumb Code 232 main.o(i.main)
|
||||
malloc 0x08002775 Thumb Code 92 malloc.o(i.malloc)
|
||||
micros 0x080027e1 Thumb Code 10 delay_us.o(i.micros)
|
||||
mouse_buf_add 0x080027f1 Thumb Code 48 helpers.o(i.mouse_buf_add)
|
||||
mouse_buf_init 0x08002821 Thumb Code 20 helpers.o(i.mouse_buf_init)
|
||||
mouse_buf_is_full 0x08002835 Thumb Code 22 helpers.o(i.mouse_buf_is_full)
|
||||
mouse_buf_peek 0x0800284b Thumb Code 22 helpers.o(i.mouse_buf_peek)
|
||||
mouse_buf_pop 0x08002861 Thumb Code 18 helpers.o(i.mouse_buf_pop)
|
||||
mouse_buf_reset 0x08002873 Thumb Code 18 helpers.o(i.mouse_buf_reset)
|
||||
parse_spi_buf 0x08002885 Thumb Code 184 main.o(i.parse_spi_buf)
|
||||
quad_decrement 0x08002945 Thumb Code 18 quad_encoder.o(i.quad_decrement)
|
||||
quad_increment 0x08002957 Thumb Code 18 quad_encoder.o(i.quad_increment)
|
||||
quad_write 0x08002969 Thumb Code 44 quad_encoder.o(i.quad_write)
|
||||
spi_error_dump_reboot 0x08002999 Thumb Code 72 main.o(i.spi_error_dump_reboot)
|
||||
wait_for_data_idle 0x08002a11 Thumb Code 42 m0110a.o(i.wait_for_data_idle)
|
||||
grey_code_lookup 0x08002a40 Data 4 quad_encoder.o(.constdata)
|
||||
arr_lookup 0x08002a44 Data 80 quad_encoder.o(.constdata)
|
||||
boot_message 0x08002a94 Data 59 main.o(.constdata)
|
||||
AHBPrescTable 0x08002acf Data 16 system_stm32f0xx.o(.constdata)
|
||||
APBPrescTable 0x08002adf Data 8 system_stm32f0xx.o(.constdata)
|
||||
Region$$Table$$Base 0x08002ae8 Number 0 anon$$obj.o(Region$$Table)
|
||||
Region$$Table$$Limit 0x08002b08 Number 0 anon$$obj.o(Region$$Table)
|
||||
m0100a_handle_inquiry 0x08002395 Thumb Code 140 main.o(i.m0100a_handle_inquiry)
|
||||
m0110a_cmd_buf_add 0x0800242d Thumb Code 38 m0110a.o(i.m0110a_cmd_buf_add)
|
||||
m0110a_cmd_buf_init 0x08002453 Thumb Code 20 m0110a.o(i.m0110a_cmd_buf_init)
|
||||
m0110a_cmd_buf_is_empty 0x08002467 Thumb Code 16 m0110a.o(i.m0110a_cmd_buf_is_empty)
|
||||
m0110a_cmd_buf_is_full 0x08002477 Thumb Code 22 m0110a.o(i.m0110a_cmd_buf_is_full)
|
||||
m0110a_cmd_buf_peek 0x0800248d Thumb Code 22 m0110a.o(i.m0110a_cmd_buf_peek)
|
||||
m0110a_cmd_buf_pop 0x080024a3 Thumb Code 18 m0110a.o(i.m0110a_cmd_buf_pop)
|
||||
m0110a_cmd_buf_reset 0x080024b5 Thumb Code 18 m0110a.o(i.m0110a_cmd_buf_reset)
|
||||
m0110a_get_line_status 0x080024c9 Thumb Code 42 m0110a.o(i.m0110a_get_line_status)
|
||||
m0110a_read 0x080024f9 Thumb Code 74 m0110a.o(i.m0110a_read)
|
||||
m0110a_read_host_cmd 0x08002549 Thumb Code 28 m0110a.o(i.m0110a_read_host_cmd)
|
||||
m0110a_update 0x08002565 Thumb Code 96 main.o(i.m0110a_update)
|
||||
m0110a_write 0x080025cd Thumb Code 92 m0110a.o(i.m0110a_write)
|
||||
m0110a_write_1b_from_buf 0x0800262d Thumb Code 36 main.o(i.m0110a_write_1b_from_buf)
|
||||
main 0x08002659 Thumb Code 232 main.o(i.main)
|
||||
malloc 0x0800277d Thumb Code 92 malloc.o(i.malloc)
|
||||
micros 0x080027e9 Thumb Code 10 delay_us.o(i.micros)
|
||||
mouse_buf_add 0x080027f9 Thumb Code 48 helpers.o(i.mouse_buf_add)
|
||||
mouse_buf_init 0x08002829 Thumb Code 20 helpers.o(i.mouse_buf_init)
|
||||
mouse_buf_is_full 0x0800283d Thumb Code 22 helpers.o(i.mouse_buf_is_full)
|
||||
mouse_buf_peek 0x08002853 Thumb Code 22 helpers.o(i.mouse_buf_peek)
|
||||
mouse_buf_pop 0x08002869 Thumb Code 18 helpers.o(i.mouse_buf_pop)
|
||||
mouse_buf_reset 0x0800287b Thumb Code 18 helpers.o(i.mouse_buf_reset)
|
||||
parse_spi_buf 0x0800288d Thumb Code 184 main.o(i.parse_spi_buf)
|
||||
quad_decrement 0x0800294d Thumb Code 18 quad_encoder.o(i.quad_decrement)
|
||||
quad_increment 0x0800295f Thumb Code 18 quad_encoder.o(i.quad_increment)
|
||||
quad_write 0x08002971 Thumb Code 44 quad_encoder.o(i.quad_write)
|
||||
spi_error_dump_reboot 0x080029a1 Thumb Code 72 main.o(i.spi_error_dump_reboot)
|
||||
wait_for_data_idle 0x08002a19 Thumb Code 42 m0110a.o(i.wait_for_data_idle)
|
||||
grey_code_lookup 0x08002a48 Data 4 quad_encoder.o(.constdata)
|
||||
arr_lookup 0x08002a4c Data 80 quad_encoder.o(.constdata)
|
||||
boot_message 0x08002a9c Data 59 main.o(.constdata)
|
||||
linux_keycode_to_m0110a_scancode_lookup 0x08002ad7 Data 128 m0110a.o(.constdata)
|
||||
AHBPrescTable 0x08002b57 Data 16 system_stm32f0xx.o(.constdata)
|
||||
APBPrescTable 0x08002b67 Data 8 system_stm32f0xx.o(.constdata)
|
||||
Region$$Table$$Base 0x08002b70 Number 0 anon$$obj.o(Region$$Table)
|
||||
Region$$Table$$Limit 0x08002b90 Number 0 anon$$obj.o(Region$$Table)
|
||||
us_timer 0x20000000 Data 4 delay_us.o(.data)
|
||||
avg_timer 0x20000004 Data 4 quad_encoder.o(.data)
|
||||
arr_timer_x 0x20000008 Data 4 quad_encoder.o(.data)
|
||||
@@ -2148,129 +2152,129 @@ Memory Map of the image
|
||||
|
||||
Image Entry point : 0x080000c1
|
||||
|
||||
Load Region LR_IROM1 (Base: 0x08000000, Size: 0x00002b4c, Max: 0x00010000, ABSOLUTE)
|
||||
Load Region LR_IROM1 (Base: 0x08000000, Size: 0x00002bd4, Max: 0x00010000, ABSOLUTE)
|
||||
|
||||
Execution Region ER_IROM1 (Exec base: 0x08000000, Load base: 0x08000000, Size: 0x00002b08, Max: 0x00010000, ABSOLUTE)
|
||||
Execution Region ER_IROM1 (Exec base: 0x08000000, Load base: 0x08000000, Size: 0x00002b90, Max: 0x00010000, ABSOLUTE)
|
||||
|
||||
Exec Addr Load Addr Size Type Attr Idx E Section Name Object
|
||||
|
||||
0x08000000 0x08000000 0x000000c0 Data RO 3 RESET startup_stm32f072xb.o
|
||||
0x080000c0 0x080000c0 0x00000000 Code RO 3687 * .ARM.Collect$$$$00000000 mc_p.l(entry.o)
|
||||
0x080000c0 0x080000c0 0x00000004 Code RO 3989 .ARM.Collect$$$$00000001 mc_p.l(entry2.o)
|
||||
0x080000c4 0x080000c4 0x00000004 Code RO 3992 .ARM.Collect$$$$00000004 mc_p.l(entry5.o)
|
||||
0x080000c8 0x080000c8 0x00000000 Code RO 3994 .ARM.Collect$$$$00000008 mc_p.l(entry7b.o)
|
||||
0x080000c8 0x080000c8 0x00000000 Code RO 3996 .ARM.Collect$$$$0000000A mc_p.l(entry8b.o)
|
||||
0x080000c8 0x080000c8 0x00000008 Code RO 3997 .ARM.Collect$$$$0000000B mc_p.l(entry9a.o)
|
||||
0x080000d0 0x080000d0 0x00000000 Code RO 3999 .ARM.Collect$$$$0000000D mc_p.l(entry10a.o)
|
||||
0x080000d0 0x080000d0 0x00000000 Code RO 4001 .ARM.Collect$$$$0000000F mc_p.l(entry11a.o)
|
||||
0x080000d0 0x080000d0 0x00000004 Code RO 3990 .ARM.Collect$$$$00002712 mc_p.l(entry2.o)
|
||||
0x080000c0 0x080000c0 0x00000000 Code RO 3694 * .ARM.Collect$$$$00000000 mc_p.l(entry.o)
|
||||
0x080000c0 0x080000c0 0x00000004 Code RO 3996 .ARM.Collect$$$$00000001 mc_p.l(entry2.o)
|
||||
0x080000c4 0x080000c4 0x00000004 Code RO 3999 .ARM.Collect$$$$00000004 mc_p.l(entry5.o)
|
||||
0x080000c8 0x080000c8 0x00000000 Code RO 4001 .ARM.Collect$$$$00000008 mc_p.l(entry7b.o)
|
||||
0x080000c8 0x080000c8 0x00000000 Code RO 4003 .ARM.Collect$$$$0000000A mc_p.l(entry8b.o)
|
||||
0x080000c8 0x080000c8 0x00000008 Code RO 4004 .ARM.Collect$$$$0000000B mc_p.l(entry9a.o)
|
||||
0x080000d0 0x080000d0 0x00000000 Code RO 4006 .ARM.Collect$$$$0000000D mc_p.l(entry10a.o)
|
||||
0x080000d0 0x080000d0 0x00000000 Code RO 4008 .ARM.Collect$$$$0000000F mc_p.l(entry11a.o)
|
||||
0x080000d0 0x080000d0 0x00000004 Code RO 3997 .ARM.Collect$$$$00002712 mc_p.l(entry2.o)
|
||||
0x080000d4 0x080000d4 0x0000001c Code RO 4 .text startup_stm32f072xb.o
|
||||
0x080000f0 0x080000f0 0x0000002c Code RO 3690 .text mc_p.l(uidiv.o)
|
||||
0x0800011c 0x0800011c 0x00000022 Code RO 3692 .text mc_p.l(llushr.o)
|
||||
0x0800013e 0x0800013e 0x00000024 Code RO 3694 .text mc_p.l(memcpya.o)
|
||||
0x08000162 0x08000162 0x00000024 Code RO 3696 .text mc_p.l(memseta.o)
|
||||
0x08000186 0x08000186 0x00000060 Code RO 4004 .text mc_p.l(uldiv.o)
|
||||
0x080000f0 0x080000f0 0x0000002c Code RO 3697 .text mc_p.l(uidiv.o)
|
||||
0x0800011c 0x0800011c 0x00000022 Code RO 3699 .text mc_p.l(llushr.o)
|
||||
0x0800013e 0x0800013e 0x00000024 Code RO 3701 .text mc_p.l(memcpya.o)
|
||||
0x08000162 0x08000162 0x00000024 Code RO 3703 .text mc_p.l(memseta.o)
|
||||
0x08000186 0x08000186 0x00000060 Code RO 4011 .text mc_p.l(uldiv.o)
|
||||
0x080001e6 0x080001e6 0x00000002 PAD
|
||||
0x080001e8 0x080001e8 0x00000024 Code RO 4019 .text mc_p.l(init.o)
|
||||
0x0800020c 0x0800020c 0x00000020 Code RO 4021 .text mc_p.l(llshl.o)
|
||||
0x0800022c 0x0800022c 0x00000048 Code RO 3134 i.HAL_DMA_Abort_IT stm32f0xx_hal_dma.o
|
||||
0x08000274 0x08000274 0x0000001c Code RO 2463 i.HAL_Delay stm32f0xx_hal.o
|
||||
0x08000290 0x08000290 0x00000158 Code RO 3072 i.HAL_GPIO_Init stm32f0xx_hal_gpio.o
|
||||
0x080003e8 0x080003e8 0x0000000a Code RO 3074 i.HAL_GPIO_ReadPin stm32f0xx_hal_gpio.o
|
||||
0x080003f2 0x080003f2 0x00000008 Code RO 3075 i.HAL_GPIO_TogglePin stm32f0xx_hal_gpio.o
|
||||
0x080003fa 0x080003fa 0x0000000c Code RO 3076 i.HAL_GPIO_WritePin stm32f0xx_hal_gpio.o
|
||||
0x080001e8 0x080001e8 0x00000024 Code RO 4026 .text mc_p.l(init.o)
|
||||
0x0800020c 0x0800020c 0x00000020 Code RO 4028 .text mc_p.l(llshl.o)
|
||||
0x0800022c 0x0800022c 0x00000048 Code RO 3141 i.HAL_DMA_Abort_IT stm32f0xx_hal_dma.o
|
||||
0x08000274 0x08000274 0x0000001c Code RO 2470 i.HAL_Delay stm32f0xx_hal.o
|
||||
0x08000290 0x08000290 0x00000158 Code RO 3079 i.HAL_GPIO_Init stm32f0xx_hal_gpio.o
|
||||
0x080003e8 0x080003e8 0x0000000a Code RO 3081 i.HAL_GPIO_ReadPin stm32f0xx_hal_gpio.o
|
||||
0x080003f2 0x080003f2 0x00000008 Code RO 3082 i.HAL_GPIO_TogglePin stm32f0xx_hal_gpio.o
|
||||
0x080003fa 0x080003fa 0x0000000c Code RO 3083 i.HAL_GPIO_WritePin stm32f0xx_hal_gpio.o
|
||||
0x08000406 0x08000406 0x00000002 PAD
|
||||
0x08000408 0x08000408 0x0000000c Code RO 2467 i.HAL_GetTick stm32f0xx_hal.o
|
||||
0x08000414 0x08000414 0x00000010 Code RO 2471 i.HAL_IncTick stm32f0xx_hal.o
|
||||
0x08000424 0x08000424 0x00000020 Code RO 2472 i.HAL_Init stm32f0xx_hal.o
|
||||
0x08000444 0x08000444 0x00000022 Code RO 2473 i.HAL_InitTick stm32f0xx_hal.o
|
||||
0x08000408 0x08000408 0x0000000c Code RO 2474 i.HAL_GetTick stm32f0xx_hal.o
|
||||
0x08000414 0x08000414 0x00000010 Code RO 2478 i.HAL_IncTick stm32f0xx_hal.o
|
||||
0x08000424 0x08000424 0x00000020 Code RO 2479 i.HAL_Init stm32f0xx_hal.o
|
||||
0x08000444 0x08000444 0x00000022 Code RO 2480 i.HAL_InitTick stm32f0xx_hal.o
|
||||
0x08000466 0x08000466 0x00000002 PAD
|
||||
0x08000468 0x08000468 0x00000044 Code RO 516 i.HAL_MspInit stm32f0xx_hal_msp.o
|
||||
0x080004ac 0x080004ac 0x00000014 Code RO 3229 i.HAL_NVIC_EnableIRQ stm32f0xx_hal_cortex.o
|
||||
0x080004c0 0x080004c0 0x00000008 Code RO 3233 i.HAL_NVIC_SetPriority stm32f0xx_hal_cortex.o
|
||||
0x080004c8 0x080004c8 0x00000120 Code RO 2383 i.HAL_RCCEx_PeriphCLKConfig stm32f0xx_hal_rcc_ex.o
|
||||
0x080005e8 0x080005e8 0x00000154 Code RO 2281 i.HAL_RCC_ClockConfig stm32f0xx_hal_rcc.o
|
||||
0x0800073c 0x0800073c 0x0000000c Code RO 2286 i.HAL_RCC_GetHCLKFreq stm32f0xx_hal_rcc.o
|
||||
0x08000748 0x08000748 0x00000020 Code RO 2288 i.HAL_RCC_GetPCLK1Freq stm32f0xx_hal_rcc.o
|
||||
0x08000768 0x08000768 0x00000088 Code RO 2289 i.HAL_RCC_GetSysClockFreq stm32f0xx_hal_rcc.o
|
||||
0x080007f0 0x080007f0 0x000003d8 Code RO 2292 i.HAL_RCC_OscConfig stm32f0xx_hal_rcc.o
|
||||
0x08000bc8 0x08000bc8 0x00000002 Code RO 662 i.HAL_SPI_ErrorCallback stm32f0xx_hal_spi.o
|
||||
0x08000468 0x08000468 0x00000044 Code RO 517 i.HAL_MspInit stm32f0xx_hal_msp.o
|
||||
0x080004ac 0x080004ac 0x00000014 Code RO 3236 i.HAL_NVIC_EnableIRQ stm32f0xx_hal_cortex.o
|
||||
0x080004c0 0x080004c0 0x00000008 Code RO 3240 i.HAL_NVIC_SetPriority stm32f0xx_hal_cortex.o
|
||||
0x080004c8 0x080004c8 0x00000120 Code RO 2390 i.HAL_RCCEx_PeriphCLKConfig stm32f0xx_hal_rcc_ex.o
|
||||
0x080005e8 0x080005e8 0x00000154 Code RO 2288 i.HAL_RCC_ClockConfig stm32f0xx_hal_rcc.o
|
||||
0x0800073c 0x0800073c 0x0000000c Code RO 2293 i.HAL_RCC_GetHCLKFreq stm32f0xx_hal_rcc.o
|
||||
0x08000748 0x08000748 0x00000020 Code RO 2295 i.HAL_RCC_GetPCLK1Freq stm32f0xx_hal_rcc.o
|
||||
0x08000768 0x08000768 0x00000088 Code RO 2296 i.HAL_RCC_GetSysClockFreq stm32f0xx_hal_rcc.o
|
||||
0x080007f0 0x080007f0 0x000003d8 Code RO 2299 i.HAL_RCC_OscConfig stm32f0xx_hal_rcc.o
|
||||
0x08000bc8 0x08000bc8 0x00000002 Code RO 669 i.HAL_SPI_ErrorCallback stm32f0xx_hal_spi.o
|
||||
0x08000bca 0x08000bca 0x00000002 PAD
|
||||
0x08000bcc 0x08000bcc 0x000000d4 Code RO 665 i.HAL_SPI_IRQHandler stm32f0xx_hal_spi.o
|
||||
0x08000ca0 0x08000ca0 0x000000b8 Code RO 666 i.HAL_SPI_Init stm32f0xx_hal_spi.o
|
||||
0x08000d58 0x08000d58 0x00000054 Code RO 518 i.HAL_SPI_MspInit stm32f0xx_hal_msp.o
|
||||
0x08000dac 0x08000dac 0x00000002 Code RO 672 i.HAL_SPI_RxCpltCallback stm32f0xx_hal_spi.o
|
||||
0x08000bcc 0x08000bcc 0x000000d4 Code RO 672 i.HAL_SPI_IRQHandler stm32f0xx_hal_spi.o
|
||||
0x08000ca0 0x08000ca0 0x000000b8 Code RO 673 i.HAL_SPI_Init stm32f0xx_hal_spi.o
|
||||
0x08000d58 0x08000d58 0x00000054 Code RO 519 i.HAL_SPI_MspInit stm32f0xx_hal_msp.o
|
||||
0x08000dac 0x08000dac 0x00000002 Code RO 679 i.HAL_SPI_RxCpltCallback stm32f0xx_hal_spi.o
|
||||
0x08000dae 0x08000dae 0x00000002 PAD
|
||||
0x08000db0 0x08000db0 0x000000d4 Code RO 677 i.HAL_SPI_TransmitReceive_IT stm32f0xx_hal_spi.o
|
||||
0x08000db0 0x08000db0 0x000000d4 Code RO 684 i.HAL_SPI_TransmitReceive_IT stm32f0xx_hal_spi.o
|
||||
0x08000e84 0x08000e84 0x00000060 Code RO 328 i.HAL_SPI_TxRxCpltCallback main.o
|
||||
0x08000ee4 0x08000ee4 0x00000018 Code RO 3235 i.HAL_SYSTICK_CLKSourceConfig stm32f0xx_hal_cortex.o
|
||||
0x08000efc 0x08000efc 0x00000002 Code RO 3236 i.HAL_SYSTICK_Callback stm32f0xx_hal_cortex.o
|
||||
0x08000ee4 0x08000ee4 0x00000018 Code RO 3242 i.HAL_SYSTICK_CLKSourceConfig stm32f0xx_hal_cortex.o
|
||||
0x08000efc 0x08000efc 0x00000002 Code RO 3243 i.HAL_SYSTICK_Callback stm32f0xx_hal_cortex.o
|
||||
0x08000efe 0x08000efe 0x00000002 PAD
|
||||
0x08000f00 0x08000f00 0x00000030 Code RO 3237 i.HAL_SYSTICK_Config stm32f0xx_hal_cortex.o
|
||||
0x08000f30 0x08000f30 0x00000008 Code RO 3238 i.HAL_SYSTICK_IRQHandler stm32f0xx_hal_cortex.o
|
||||
0x08000f38 0x08000f38 0x00000002 Code RO 1639 i.HAL_TIMEx_BreakCallback stm32f0xx_hal_tim_ex.o
|
||||
0x08000f3a 0x08000f3a 0x00000002 Code RO 1640 i.HAL_TIMEx_CommutationCallback stm32f0xx_hal_tim_ex.o
|
||||
0x08000f3c 0x08000f3c 0x00000048 Code RO 1656 i.HAL_TIMEx_MasterConfigSynchronization stm32f0xx_hal_tim_ex.o
|
||||
0x08000f84 0x08000f84 0x00000034 Code RO 1000 i.HAL_TIM_Base_Init stm32f0xx_hal_tim.o
|
||||
0x08000fb8 0x08000fb8 0x0000009c Code RO 520 i.HAL_TIM_Base_MspInit stm32f0xx_hal_msp.o
|
||||
0x08001054 0x08001054 0x00000018 Code RO 1003 i.HAL_TIM_Base_Start stm32f0xx_hal_tim.o
|
||||
0x0800106c 0x0800106c 0x000000ee Code RO 1009 i.HAL_TIM_ConfigClockSource stm32f0xx_hal_tim.o
|
||||
0x0800115a 0x0800115a 0x00000002 Code RO 1031 i.HAL_TIM_IC_CaptureCallback stm32f0xx_hal_tim.o
|
||||
0x0800115c 0x0800115c 0x00000162 Code RO 1044 i.HAL_TIM_IRQHandler stm32f0xx_hal_tim.o
|
||||
0x080012be 0x080012be 0x00000002 Code RO 1047 i.HAL_TIM_OC_DelayElapsedCallback stm32f0xx_hal_tim.o
|
||||
0x080012c0 0x080012c0 0x00000002 Code RO 1074 i.HAL_TIM_PWM_PulseFinishedCallback stm32f0xx_hal_tim.o
|
||||
0x08000f00 0x08000f00 0x00000030 Code RO 3244 i.HAL_SYSTICK_Config stm32f0xx_hal_cortex.o
|
||||
0x08000f30 0x08000f30 0x00000008 Code RO 3245 i.HAL_SYSTICK_IRQHandler stm32f0xx_hal_cortex.o
|
||||
0x08000f38 0x08000f38 0x00000002 Code RO 1646 i.HAL_TIMEx_BreakCallback stm32f0xx_hal_tim_ex.o
|
||||
0x08000f3a 0x08000f3a 0x00000002 Code RO 1647 i.HAL_TIMEx_CommutationCallback stm32f0xx_hal_tim_ex.o
|
||||
0x08000f3c 0x08000f3c 0x00000048 Code RO 1663 i.HAL_TIMEx_MasterConfigSynchronization stm32f0xx_hal_tim_ex.o
|
||||
0x08000f84 0x08000f84 0x00000034 Code RO 1007 i.HAL_TIM_Base_Init stm32f0xx_hal_tim.o
|
||||
0x08000fb8 0x08000fb8 0x0000009c Code RO 521 i.HAL_TIM_Base_MspInit stm32f0xx_hal_msp.o
|
||||
0x08001054 0x08001054 0x00000018 Code RO 1010 i.HAL_TIM_Base_Start stm32f0xx_hal_tim.o
|
||||
0x0800106c 0x0800106c 0x000000ee Code RO 1016 i.HAL_TIM_ConfigClockSource stm32f0xx_hal_tim.o
|
||||
0x0800115a 0x0800115a 0x00000002 Code RO 1038 i.HAL_TIM_IC_CaptureCallback stm32f0xx_hal_tim.o
|
||||
0x0800115c 0x0800115c 0x00000162 Code RO 1051 i.HAL_TIM_IRQHandler stm32f0xx_hal_tim.o
|
||||
0x080012be 0x080012be 0x00000002 Code RO 1054 i.HAL_TIM_OC_DelayElapsedCallback stm32f0xx_hal_tim.o
|
||||
0x080012c0 0x080012c0 0x00000002 Code RO 1081 i.HAL_TIM_PWM_PulseFinishedCallback stm32f0xx_hal_tim.o
|
||||
0x080012c2 0x080012c2 0x00000002 PAD
|
||||
0x080012c4 0x080012c4 0x000000e0 Code RO 149 i.HAL_TIM_PeriodElapsedCallback quad_encoder.o
|
||||
0x080013a4 0x080013a4 0x00000002 Code RO 1085 i.HAL_TIM_TriggerCallback stm32f0xx_hal_tim.o
|
||||
0x080013a6 0x080013a6 0x0000006c Code RO 1904 i.HAL_UART_Init stm32f0xx_hal_uart.o
|
||||
0x080013a4 0x080013a4 0x00000002 Code RO 1092 i.HAL_TIM_TriggerCallback stm32f0xx_hal_tim.o
|
||||
0x080013a6 0x080013a6 0x0000006c Code RO 1911 i.HAL_UART_Init stm32f0xx_hal_uart.o
|
||||
0x08001412 0x08001412 0x00000002 PAD
|
||||
0x08001414 0x08001414 0x0000004c Code RO 522 i.HAL_UART_MspInit stm32f0xx_hal_msp.o
|
||||
0x08001460 0x08001460 0x000000c8 Code RO 1912 i.HAL_UART_Transmit stm32f0xx_hal_uart.o
|
||||
0x08001528 0x08001528 0x00000002 Code RO 444 i.HardFault_Handler stm32f0xx_it.o
|
||||
0x08001414 0x08001414 0x0000004c Code RO 523 i.HAL_UART_MspInit stm32f0xx_hal_msp.o
|
||||
0x08001460 0x08001460 0x000000c8 Code RO 1919 i.HAL_UART_Transmit stm32f0xx_hal_uart.o
|
||||
0x08001528 0x08001528 0x00000002 Code RO 445 i.HardFault_Handler stm32f0xx_it.o
|
||||
0x0800152a 0x0800152a 0x00000002 PAD
|
||||
0x0800152c 0x0800152c 0x000000f4 Code RO 329 i.MX_GPIO_Init main.o
|
||||
0x08001620 0x08001620 0x0000003c Code RO 330 i.MX_SPI1_Init main.o
|
||||
0x0800165c 0x0800165c 0x00000054 Code RO 331 i.MX_TIM2_Init main.o
|
||||
0x080016b0 0x080016b0 0x00000038 Code RO 332 i.MX_USART1_UART_Init main.o
|
||||
0x080016e8 0x080016e8 0x00000002 Code RO 445 i.NMI_Handler stm32f0xx_it.o
|
||||
0x080016e8 0x080016e8 0x00000002 Code RO 446 i.NMI_Handler stm32f0xx_it.o
|
||||
0x080016ea 0x080016ea 0x00000002 PAD
|
||||
0x080016ec 0x080016ec 0x00000044 Code RO 3239 i.NVIC_SetPriority stm32f0xx_hal_cortex.o
|
||||
0x08001730 0x08001730 0x00000002 Code RO 446 i.PendSV_Handler stm32f0xx_it.o
|
||||
0x080016ec 0x080016ec 0x00000044 Code RO 3246 i.NVIC_SetPriority stm32f0xx_hal_cortex.o
|
||||
0x08001730 0x08001730 0x00000002 Code RO 447 i.PendSV_Handler stm32f0xx_it.o
|
||||
0x08001732 0x08001732 0x00000002 PAD
|
||||
0x08001734 0x08001734 0x00000010 Code RO 447 i.SPI1_IRQHandler stm32f0xx_it.o
|
||||
0x08001744 0x08001744 0x00000036 Code RO 684 i.SPI_2linesRxISR_16BIT stm32f0xx_hal_spi.o
|
||||
0x0800177a 0x0800177a 0x0000005e Code RO 685 i.SPI_2linesRxISR_8BIT stm32f0xx_hal_spi.o
|
||||
0x080017d8 0x080017d8 0x00000034 Code RO 686 i.SPI_2linesTxISR_16BIT stm32f0xx_hal_spi.o
|
||||
0x0800180c 0x0800180c 0x00000048 Code RO 687 i.SPI_2linesTxISR_8BIT stm32f0xx_hal_spi.o
|
||||
0x08001854 0x08001854 0x00000052 Code RO 690 i.SPI_CloseRxTx_ISR stm32f0xx_hal_spi.o
|
||||
0x080018a6 0x080018a6 0x00000012 Code RO 693 i.SPI_DMAAbortOnError stm32f0xx_hal_spi.o
|
||||
0x080018b8 0x080018b8 0x0000004c Code RO 704 i.SPI_EndRxTxTransaction stm32f0xx_hal_spi.o
|
||||
0x08001904 0x08001904 0x00000096 Code RO 709 i.SPI_WaitFifoStateUntilTimeout stm32f0xx_hal_spi.o
|
||||
0x0800199a 0x0800199a 0x0000008c Code RO 710 i.SPI_WaitFlagStateUntilTimeout stm32f0xx_hal_spi.o
|
||||
0x08001a26 0x08001a26 0x00000002 Code RO 448 i.SVC_Handler stm32f0xx_it.o
|
||||
0x08001a28 0x08001a28 0x0000000c Code RO 449 i.SysTick_Handler stm32f0xx_it.o
|
||||
0x08001734 0x08001734 0x00000010 Code RO 448 i.SPI1_IRQHandler stm32f0xx_it.o
|
||||
0x08001744 0x08001744 0x00000036 Code RO 691 i.SPI_2linesRxISR_16BIT stm32f0xx_hal_spi.o
|
||||
0x0800177a 0x0800177a 0x0000005e Code RO 692 i.SPI_2linesRxISR_8BIT stm32f0xx_hal_spi.o
|
||||
0x080017d8 0x080017d8 0x00000034 Code RO 693 i.SPI_2linesTxISR_16BIT stm32f0xx_hal_spi.o
|
||||
0x0800180c 0x0800180c 0x00000048 Code RO 694 i.SPI_2linesTxISR_8BIT stm32f0xx_hal_spi.o
|
||||
0x08001854 0x08001854 0x00000052 Code RO 697 i.SPI_CloseRxTx_ISR stm32f0xx_hal_spi.o
|
||||
0x080018a6 0x080018a6 0x00000012 Code RO 700 i.SPI_DMAAbortOnError stm32f0xx_hal_spi.o
|
||||
0x080018b8 0x080018b8 0x0000004c Code RO 711 i.SPI_EndRxTxTransaction stm32f0xx_hal_spi.o
|
||||
0x08001904 0x08001904 0x00000096 Code RO 716 i.SPI_WaitFifoStateUntilTimeout stm32f0xx_hal_spi.o
|
||||
0x0800199a 0x0800199a 0x0000008c Code RO 717 i.SPI_WaitFlagStateUntilTimeout stm32f0xx_hal_spi.o
|
||||
0x08001a26 0x08001a26 0x00000002 Code RO 449 i.SVC_Handler stm32f0xx_it.o
|
||||
0x08001a28 0x08001a28 0x0000000c Code RO 450 i.SysTick_Handler stm32f0xx_it.o
|
||||
0x08001a34 0x08001a34 0x0000006a Code RO 333 i.SystemClock_Config main.o
|
||||
0x08001a9e 0x08001a9e 0x00000002 PAD
|
||||
0x08001aa0 0x08001aa0 0x0000005c Code RO 3656 i.SystemInit system_stm32f0xx.o
|
||||
0x08001afc 0x08001afc 0x00000010 Code RO 450 i.TIM14_IRQHandler stm32f0xx_it.o
|
||||
0x08001b0c 0x08001b0c 0x00000010 Code RO 451 i.TIM16_IRQHandler stm32f0xx_it.o
|
||||
0x08001b1c 0x08001b1c 0x00000010 Code RO 452 i.TIM17_IRQHandler stm32f0xx_it.o
|
||||
0x08001b2c 0x08001b2c 0x00000094 Code RO 1086 i.TIM_Base_SetConfig stm32f0xx_hal_tim.o
|
||||
0x08001bc0 0x08001bc0 0x00000016 Code RO 1093 i.TIM_ETR_SetConfig stm32f0xx_hal_tim.o
|
||||
0x08001bd6 0x08001bd6 0x00000010 Code RO 1094 i.TIM_ITRx_SetConfig stm32f0xx_hal_tim.o
|
||||
0x08001be6 0x08001be6 0x00000022 Code RO 1100 i.TIM_TI1_ConfigInputStage stm32f0xx_hal_tim.o
|
||||
0x08001c08 0x08001c08 0x00000026 Code RO 1102 i.TIM_TI2_ConfigInputStage stm32f0xx_hal_tim.o
|
||||
0x08001c2e 0x08001c2e 0x000000ca Code RO 1917 i.UART_AdvFeatureConfig stm32f0xx_hal_uart.o
|
||||
0x08001cf8 0x08001cf8 0x00000074 Code RO 1918 i.UART_CheckIdleState stm32f0xx_hal_uart.o
|
||||
0x08001d6c 0x08001d6c 0x0000015c Code RO 1933 i.UART_SetConfig stm32f0xx_hal_uart.o
|
||||
0x08001ec8 0x08001ec8 0x00000062 Code RO 1935 i.UART_WaitOnFlagUntilTimeout stm32f0xx_hal_uart.o
|
||||
0x08001aa0 0x08001aa0 0x0000005c Code RO 3663 i.SystemInit system_stm32f0xx.o
|
||||
0x08001afc 0x08001afc 0x00000010 Code RO 451 i.TIM14_IRQHandler stm32f0xx_it.o
|
||||
0x08001b0c 0x08001b0c 0x00000010 Code RO 452 i.TIM16_IRQHandler stm32f0xx_it.o
|
||||
0x08001b1c 0x08001b1c 0x00000010 Code RO 453 i.TIM17_IRQHandler stm32f0xx_it.o
|
||||
0x08001b2c 0x08001b2c 0x00000094 Code RO 1093 i.TIM_Base_SetConfig stm32f0xx_hal_tim.o
|
||||
0x08001bc0 0x08001bc0 0x00000016 Code RO 1100 i.TIM_ETR_SetConfig stm32f0xx_hal_tim.o
|
||||
0x08001bd6 0x08001bd6 0x00000010 Code RO 1101 i.TIM_ITRx_SetConfig stm32f0xx_hal_tim.o
|
||||
0x08001be6 0x08001be6 0x00000022 Code RO 1107 i.TIM_TI1_ConfigInputStage stm32f0xx_hal_tim.o
|
||||
0x08001c08 0x08001c08 0x00000026 Code RO 1109 i.TIM_TI2_ConfigInputStage stm32f0xx_hal_tim.o
|
||||
0x08001c2e 0x08001c2e 0x000000ca Code RO 1924 i.UART_AdvFeatureConfig stm32f0xx_hal_uart.o
|
||||
0x08001cf8 0x08001cf8 0x00000074 Code RO 1925 i.UART_CheckIdleState stm32f0xx_hal_uart.o
|
||||
0x08001d6c 0x08001d6c 0x0000015c Code RO 1940 i.UART_SetConfig stm32f0xx_hal_uart.o
|
||||
0x08001ec8 0x08001ec8 0x00000062 Code RO 1942 i.UART_WaitOnFlagUntilTimeout stm32f0xx_hal_uart.o
|
||||
0x08001f2a 0x08001f2a 0x00000002 PAD
|
||||
0x08001f2c 0x08001f2c 0x00000020 Code RO 3833 i.__0printf$5 mc_p.l(printf5.o)
|
||||
0x08001f4c 0x08001f4c 0x0000000e Code RO 4031 i.__scatterload_copy mc_p.l(handlers.o)
|
||||
0x08001f5a 0x08001f5a 0x00000002 Code RO 4032 i.__scatterload_null mc_p.l(handlers.o)
|
||||
0x08001f5c 0x08001f5c 0x0000000e Code RO 4033 i.__scatterload_zeroinit mc_p.l(handlers.o)
|
||||
0x08001f2c 0x08001f2c 0x00000020 Code RO 3840 i.__0printf$5 mc_p.l(printf5.o)
|
||||
0x08001f4c 0x08001f4c 0x0000000e Code RO 4038 i.__scatterload_copy mc_p.l(handlers.o)
|
||||
0x08001f5a 0x08001f5a 0x00000002 Code RO 4039 i.__scatterload_null mc_p.l(handlers.o)
|
||||
0x08001f5c 0x08001f5c 0x0000000e Code RO 4040 i.__scatterload_zeroinit mc_p.l(handlers.o)
|
||||
0x08001f6a 0x08001f6a 0x00000002 PAD
|
||||
0x08001f6c 0x08001f6c 0x000002dc Code RO 3840 i._printf_core mc_p.l(printf5.o)
|
||||
0x08001f6c 0x08001f6c 0x000002dc Code RO 3847 i._printf_core mc_p.l(printf5.o)
|
||||
0x08002248 0x08002248 0x0000001a Code RO 150 i.avg_buf_add quad_encoder.o
|
||||
0x08002262 0x08002262 0x00000008 Code RO 335 i.byte_to_int16_t main.o
|
||||
0x0800226a 0x0800226a 0x00000002 PAD
|
||||
@@ -2286,56 +2290,57 @@ Memory Map of the image
|
||||
0x08002364 0x08002364 0x00000012 Code RO 238 i.kb_buf_pop helpers.o
|
||||
0x08002376 0x08002376 0x0000001c Code RO 239 i.kb_buf_reset helpers.o
|
||||
0x08002392 0x08002392 0x00000002 PAD
|
||||
0x08002394 0x08002394 0x000000a4 Code RO 337 i.m0100a_handle_inquiry main.o
|
||||
0x08002438 0x08002438 0x00000026 Code RO 572 i.m0110a_cmd_buf_add m0110a.o
|
||||
0x0800245e 0x0800245e 0x00000014 Code RO 573 i.m0110a_cmd_buf_init m0110a.o
|
||||
0x08002472 0x08002472 0x00000010 Code RO 574 i.m0110a_cmd_buf_is_empty m0110a.o
|
||||
0x08002482 0x08002482 0x00000016 Code RO 575 i.m0110a_cmd_buf_is_full m0110a.o
|
||||
0x08002498 0x08002498 0x00000016 Code RO 576 i.m0110a_cmd_buf_peek m0110a.o
|
||||
0x080024ae 0x080024ae 0x00000012 Code RO 577 i.m0110a_cmd_buf_pop m0110a.o
|
||||
0x080024c0 0x080024c0 0x00000012 Code RO 578 i.m0110a_cmd_buf_reset m0110a.o
|
||||
0x080024d2 0x080024d2 0x00000002 PAD
|
||||
0x080024d4 0x080024d4 0x00000030 Code RO 579 i.m0110a_get_line_status m0110a.o
|
||||
0x08002504 0x08002504 0x00000050 Code RO 580 i.m0110a_read m0110a.o
|
||||
0x08002554 0x08002554 0x0000001c Code RO 581 i.m0110a_read_host_cmd m0110a.o
|
||||
0x08002570 0x08002570 0x00000068 Code RO 338 i.m0110a_update main.o
|
||||
0x080025d8 0x080025d8 0x0000004c Code RO 582 i.m0110a_write m0110a.o
|
||||
0x08002624 0x08002624 0x0000002c Code RO 339 i.m0110a_write_1b_from_buf main.o
|
||||
0x08002650 0x08002650 0x00000124 Code RO 340 i.main main.o
|
||||
0x08002774 0x08002774 0x0000006c Code RO 3962 i.malloc mc_p.l(malloc.o)
|
||||
0x080027e0 0x080027e0 0x00000010 Code RO 14 i.micros delay_us.o
|
||||
0x080027f0 0x080027f0 0x00000030 Code RO 240 i.mouse_buf_add helpers.o
|
||||
0x08002820 0x08002820 0x00000014 Code RO 241 i.mouse_buf_init helpers.o
|
||||
0x08002834 0x08002834 0x00000016 Code RO 243 i.mouse_buf_is_full helpers.o
|
||||
0x0800284a 0x0800284a 0x00000016 Code RO 244 i.mouse_buf_peek helpers.o
|
||||
0x08002860 0x08002860 0x00000012 Code RO 245 i.mouse_buf_pop helpers.o
|
||||
0x08002872 0x08002872 0x00000012 Code RO 246 i.mouse_buf_reset helpers.o
|
||||
0x08002884 0x08002884 0x000000c0 Code RO 341 i.parse_spi_buf main.o
|
||||
0x08002944 0x08002944 0x00000012 Code RO 153 i.quad_decrement quad_encoder.o
|
||||
0x08002956 0x08002956 0x00000012 Code RO 154 i.quad_increment quad_encoder.o
|
||||
0x08002968 0x08002968 0x00000030 Code RO 157 i.quad_write quad_encoder.o
|
||||
0x08002998 0x08002998 0x00000078 Code RO 342 i.spi_error_dump_reboot main.o
|
||||
0x08002a10 0x08002a10 0x00000030 Code RO 583 i.wait_for_data_idle m0110a.o
|
||||
0x08002a40 0x08002a40 0x00000054 Data RO 159 .constdata quad_encoder.o
|
||||
0x08002a94 0x08002a94 0x0000003b Data RO 348 .constdata main.o
|
||||
0x08002acf 0x08002acf 0x00000010 Data RO 3657 .constdata system_stm32f0xx.o
|
||||
0x08002adf 0x08002adf 0x00000008 Data RO 3658 .constdata system_stm32f0xx.o
|
||||
0x08002ae7 0x08002ae7 0x00000001 PAD
|
||||
0x08002ae8 0x08002ae8 0x00000020 Data RO 4029 Region$$Table anon$$obj.o
|
||||
0x08002394 0x08002394 0x00000098 Code RO 337 i.m0100a_handle_inquiry main.o
|
||||
0x0800242c 0x0800242c 0x00000026 Code RO 573 i.m0110a_cmd_buf_add m0110a.o
|
||||
0x08002452 0x08002452 0x00000014 Code RO 574 i.m0110a_cmd_buf_init m0110a.o
|
||||
0x08002466 0x08002466 0x00000010 Code RO 575 i.m0110a_cmd_buf_is_empty m0110a.o
|
||||
0x08002476 0x08002476 0x00000016 Code RO 576 i.m0110a_cmd_buf_is_full m0110a.o
|
||||
0x0800248c 0x0800248c 0x00000016 Code RO 577 i.m0110a_cmd_buf_peek m0110a.o
|
||||
0x080024a2 0x080024a2 0x00000012 Code RO 578 i.m0110a_cmd_buf_pop m0110a.o
|
||||
0x080024b4 0x080024b4 0x00000012 Code RO 579 i.m0110a_cmd_buf_reset m0110a.o
|
||||
0x080024c6 0x080024c6 0x00000002 PAD
|
||||
0x080024c8 0x080024c8 0x00000030 Code RO 580 i.m0110a_get_line_status m0110a.o
|
||||
0x080024f8 0x080024f8 0x00000050 Code RO 581 i.m0110a_read m0110a.o
|
||||
0x08002548 0x08002548 0x0000001c Code RO 582 i.m0110a_read_host_cmd m0110a.o
|
||||
0x08002564 0x08002564 0x00000068 Code RO 338 i.m0110a_update main.o
|
||||
0x080025cc 0x080025cc 0x00000060 Code RO 583 i.m0110a_write m0110a.o
|
||||
0x0800262c 0x0800262c 0x0000002c Code RO 339 i.m0110a_write_1b_from_buf main.o
|
||||
0x08002658 0x08002658 0x00000124 Code RO 340 i.main main.o
|
||||
0x0800277c 0x0800277c 0x0000006c Code RO 3969 i.malloc mc_p.l(malloc.o)
|
||||
0x080027e8 0x080027e8 0x00000010 Code RO 14 i.micros delay_us.o
|
||||
0x080027f8 0x080027f8 0x00000030 Code RO 240 i.mouse_buf_add helpers.o
|
||||
0x08002828 0x08002828 0x00000014 Code RO 241 i.mouse_buf_init helpers.o
|
||||
0x0800283c 0x0800283c 0x00000016 Code RO 243 i.mouse_buf_is_full helpers.o
|
||||
0x08002852 0x08002852 0x00000016 Code RO 244 i.mouse_buf_peek helpers.o
|
||||
0x08002868 0x08002868 0x00000012 Code RO 245 i.mouse_buf_pop helpers.o
|
||||
0x0800287a 0x0800287a 0x00000012 Code RO 246 i.mouse_buf_reset helpers.o
|
||||
0x0800288c 0x0800288c 0x000000c0 Code RO 341 i.parse_spi_buf main.o
|
||||
0x0800294c 0x0800294c 0x00000012 Code RO 153 i.quad_decrement quad_encoder.o
|
||||
0x0800295e 0x0800295e 0x00000012 Code RO 154 i.quad_increment quad_encoder.o
|
||||
0x08002970 0x08002970 0x00000030 Code RO 157 i.quad_write quad_encoder.o
|
||||
0x080029a0 0x080029a0 0x00000078 Code RO 342 i.spi_error_dump_reboot main.o
|
||||
0x08002a18 0x08002a18 0x00000030 Code RO 584 i.wait_for_data_idle m0110a.o
|
||||
0x08002a48 0x08002a48 0x00000054 Data RO 159 .constdata quad_encoder.o
|
||||
0x08002a9c 0x08002a9c 0x0000003b Data RO 348 .constdata main.o
|
||||
0x08002ad7 0x08002ad7 0x00000080 Data RO 585 .constdata m0110a.o
|
||||
0x08002b57 0x08002b57 0x00000010 Data RO 3664 .constdata system_stm32f0xx.o
|
||||
0x08002b67 0x08002b67 0x00000008 Data RO 3665 .constdata system_stm32f0xx.o
|
||||
0x08002b6f 0x08002b6f 0x00000001 PAD
|
||||
0x08002b70 0x08002b70 0x00000020 Data RO 4036 Region$$Table anon$$obj.o
|
||||
|
||||
|
||||
Execution Region RW_IRAM1 (Exec base: 0x20000000, Load base: 0x08002b08, Size: 0x000008b8, Max: 0x00004000, ABSOLUTE)
|
||||
Execution Region RW_IRAM1 (Exec base: 0x20000000, Load base: 0x08002b90, Size: 0x000008b8, Max: 0x00004000, ABSOLUTE)
|
||||
|
||||
Exec Addr Load Addr Size Type Attr Idx E Section Name Object
|
||||
|
||||
0x20000000 0x08002b08 0x00000004 Data RW 15 .data delay_us.o
|
||||
0x20000004 0x08002b0c 0x00000010 Data RW 160 .data quad_encoder.o
|
||||
0x20000014 0x08002b1c 0x0000001c Data RW 349 .data main.o
|
||||
0x20000030 0x08002b38 0x00000004 Data RW 2478 .data stm32f0xx_hal.o
|
||||
0x20000034 0x08002b3c 0x00000004 Data RW 3659 .data system_stm32f0xx.o
|
||||
0x20000038 0x08002b40 0x00000004 Data RW 4003 .data mc_p.l(stdout.o)
|
||||
0x2000003c 0x08002b44 0x00000004 Data RW 4006 .data mc_p.l(mvars.o)
|
||||
0x20000040 0x08002b48 0x00000004 Data RW 4007 .data mc_p.l(mvars.o)
|
||||
0x20000000 0x08002b90 0x00000004 Data RW 15 .data delay_us.o
|
||||
0x20000004 0x08002b94 0x00000010 Data RW 160 .data quad_encoder.o
|
||||
0x20000014 0x08002ba4 0x0000001c Data RW 349 .data main.o
|
||||
0x20000030 0x08002bc0 0x00000004 Data RW 2485 .data stm32f0xx_hal.o
|
||||
0x20000034 0x08002bc4 0x00000004 Data RW 3666 .data system_stm32f0xx.o
|
||||
0x20000038 0x08002bc8 0x00000004 Data RW 4010 .data mc_p.l(stdout.o)
|
||||
0x2000003c 0x08002bcc 0x00000004 Data RW 4013 .data mc_p.l(mvars.o)
|
||||
0x20000040 0x08002bd0 0x00000004 Data RW 4014 .data mc_p.l(mvars.o)
|
||||
0x20000044 - 0x00000038 Zero RW 158 .bss quad_encoder.o
|
||||
0x2000007c - 0x0000023c Zero RW 343 .bss main.o
|
||||
0x200002b8 - 0x00000200 Zero RW 2 HEAP startup_stm32f072xb.o
|
||||
@@ -2351,8 +2356,8 @@ Image component sizes
|
||||
|
||||
52 10 0 4 0 491683 delay_us.o
|
||||
320 0 0 0 0 6564 helpers.o
|
||||
434 22 0 0 0 7712 m0110a.o
|
||||
1594 200 59 28 572 17173 main.o
|
||||
454 22 128 0 0 8606 m0110a.o
|
||||
1582 204 59 28 572 17455 main.o
|
||||
396 20 84 16 56 7140 quad_encoder.o
|
||||
28 8 192 0 1536 632 startup_stm32f072xb.o
|
||||
122 18 0 4 0 3631 stm32f0xx_hal.o
|
||||
@@ -2370,7 +2375,7 @@ Image component sizes
|
||||
92 16 24 4 0 1143 system_stm32f0xx.o
|
||||
|
||||
----------------------------------------------------------------------
|
||||
9384 620 392 56 2164 592462 Object Totals
|
||||
9392 624 520 56 2164 593638 Object Totals
|
||||
0 0 32 0 0 0 (incl. Generated)
|
||||
30 0 1 0 0 0 (incl. Padding)
|
||||
|
||||
@@ -2419,15 +2424,15 @@ Image component sizes
|
||||
|
||||
Code (inc. data) RO Data RW Data ZI Data Debug
|
||||
|
||||
10624 704 392 68 2164 587966 Grand Totals
|
||||
10624 704 392 68 2164 587966 ELF Image Totals
|
||||
10624 704 392 68 0 0 ROM Totals
|
||||
10632 708 520 68 2164 589142 Grand Totals
|
||||
10632 708 520 68 2164 589142 ELF Image Totals
|
||||
10632 708 520 68 0 0 ROM Totals
|
||||
|
||||
==============================================================================
|
||||
|
||||
Total RO Size (Code + RO Data) 11016 ( 10.76kB)
|
||||
Total RO Size (Code + RO Data) 11152 ( 10.89kB)
|
||||
Total RW Size (RW Data + ZI Data) 2232 ( 2.18kB)
|
||||
Total ROM Size (Code + RO Data + RW Data) 11084 ( 10.82kB)
|
||||
Total ROM Size (Code + RO Data + RW Data) 11220 ( 10.96kB)
|
||||
|
||||
==============================================================================
|
||||
|
||||
|
||||
@@ -114,7 +114,7 @@ I (../Drivers/STM32F0xx_HAL_Driver/Inc/stm32f0xx_hal_tim_ex.h)(0x5DFA0893)
|
||||
-IC:\Users\allen\AppData\Local\Arm\Packs\ARM\CMSIS\5.6.0\CMSIS\Core\Include
|
||||
|
||||
-IC:\Users\allen\AppData\Local\Arm\Packs\Keil\STM32F0xx_DFP\2.0.0\Drivers\CMSIS\Device\ST\STM32F0xx\Include
|
||||
|
||||
|
||||
-D__UVISION_VERSION="529" -D_RTE_ -DSTM32F072xB -DUSE_HAL_DRIVER -DSTM32F072xB
|
||||
|
||||
-o apple_all\helpers.o --omf_browse apple_all\helpers.crf --depend apple_all\helpers.d)
|
||||
@@ -153,7 +153,7 @@ I (../Inc/delay_us.h)(0x617487C7)
|
||||
I (../Drivers/STM32F0xx_HAL_Driver/Inc/stm32f0xx_hal_tim_ex.h)(0x5DFA0893)
|
||||
I (../Drivers/STM32F0xx_HAL_Driver/Inc/stm32f0xx_hal_uart.h)(0x5DFA0893)
|
||||
I (../Drivers/STM32F0xx_HAL_Driver/Inc/stm32f0xx_hal_uart_ex.h)(0x5DFA0893)
|
||||
I (../Inc/shared.h)(0x617487BD)
|
||||
I (../Inc/shared.h)(0x617487BD)
|
||||
F (../Src/main.c)(0x62B9B093)(--c99 -c --cpu Cortex-M0 -D__MICROLIB -g -O3 --apcs=interwork --split_sections -I ../Inc -I ../Drivers/STM32F0xx_HAL_Driver/Inc -I ../Drivers/STM32F0xx_HAL_Driver/Inc/Legacy -I ../Drivers/CMSIS/Device/ST/STM32F0xx/Include -I ../Drivers/CMSIS/Include
|
||||
|
||||
-I.\RTE\_apple_all
|
||||
@@ -221,7 +221,7 @@ I (../Drivers/STM32F0xx_HAL_Driver/Inc/stm32f0xx_hal_tim.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)
|
||||
I (../Drivers/CMSIS/Device/ST/STM32F0xx/Include/stm32f072xb.h)(0x5DFA0880)
|
||||
I (../Drivers/CMSIS/Include/core_cm0.h)(0x5DFA0892)
|
||||
I (C:\Keil_v5\ARM\ARMCC\include\stdint.h)(0x5D9B4298)
|
||||
I (../Drivers/CMSIS/Include/core_cmInstr.h)(0x5DFA0892)
|
||||
@@ -258,7 +258,7 @@ I (../Drivers/STM32F0xx_HAL_Driver/Inc/stm32f0xx_hal_tim_ex.h)(0x5DFA0893)
|
||||
|
||||
-D__UVISION_VERSION="529" -D_RTE_ -DSTM32F072xB -DUSE_HAL_DRIVER -DSTM32F072xB
|
||||
|
||||
-o apple_all\stm32f0xx_hal_msp.o --omf_browse apple_all\stm32f0xx_hal_msp.crf --depend apple_all\stm32f0xx_hal_msp.d)
|
||||
-o apple_all\stm32f0xx_hal_msp.o --omf_browse apple_all\stm32f0xx_hal_msp.crf --depend apple_all\stm32f0xx_hal_msp.d)
|
||||
I (../Drivers/STM32F0xx_HAL_Driver/Inc/stm32f0xx_hal.h)(0x5DFA0893)
|
||||
I (../Inc/stm32f0xx_hal_conf.h)(0x626D7BBD)
|
||||
I (../Inc/main.h)(0x626D7BBE)
|
||||
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -23,6 +23,138 @@
|
||||
#define M0110A_READ_CLK_PIN() HAL_GPIO_ReadPin(MAC_KB_CLK_GPIO_Port, MAC_KB_CLK_Pin)
|
||||
|
||||
|
||||
const uint8_t linux_keycode_to_m0110a_scancode_lookup[LINUX_KEYCODE_TO_M0110A_SCANCODE_SIZE] =
|
||||
{
|
||||
CODE_UNUSED, // KEY_RESERVED 0
|
||||
CODE_UNUSED, // KEY_ESC 1
|
||||
0x25, // KEY_1 2
|
||||
0x27, // KEY_2 3
|
||||
0x29, // KEY_3 4
|
||||
0x2b, // KEY_4 5
|
||||
0x2f, // KEY_5 6
|
||||
0x2d, // KEY_6 7
|
||||
0x35, // KEY_7 8
|
||||
0x39, // KEY_8 9
|
||||
0x33, // KEY_9 10
|
||||
0x3b, // KEY_0 11
|
||||
0x37, // KEY_MINUS 12
|
||||
0x31, // KEY_EQUAL 13
|
||||
0x67, // KEY_BACKSPACE 14
|
||||
0x61, // KEY_TAB 15
|
||||
0x19, // KEY_Q 16
|
||||
0x1b, // KEY_W 17
|
||||
0x1d, // KEY_E 18
|
||||
0x1f, // KEY_R 19
|
||||
0x23, // KEY_T 20
|
||||
0x21, // KEY_Y 21
|
||||
0x41, // KEY_U 22
|
||||
0x45, // KEY_I 23
|
||||
0x3f, // KEY_O 24
|
||||
0x47, // KEY_P 25
|
||||
0x43, // KEY_LEFTBRACE 26
|
||||
0x3d, // KEY_RIGHTBRACE 27
|
||||
0x49, // KEY_ENTER 28
|
||||
0x75, // KEY_LEFTCTRL 29 !!!!! MAPPED TO LEFT OPTION
|
||||
0x1, // KEY_A 30
|
||||
0x3, // KEY_S 31
|
||||
0x5, // KEY_D 32
|
||||
0x7, // KEY_F 33
|
||||
0xb, // KEY_G 34
|
||||
0x9, // KEY_H 35
|
||||
0x4d, // KEY_J 36
|
||||
0x51, // KEY_K 37
|
||||
0x4b, // KEY_L 38
|
||||
0x53, // KEY_SEMICOLON 39
|
||||
0x4f, // KEY_APOSTROPHE 40
|
||||
0x65, // KEY_GRAVE 41
|
||||
0x71, // KEY_LEFTSHIFT 42
|
||||
0x55, // KEY_BACKSLASH 43
|
||||
0xd, // KEY_Z 44
|
||||
0xf, // KEY_X 45
|
||||
0x11, // KEY_C 46
|
||||
0x13, // KEY_V 47
|
||||
0x17, // KEY_B 48
|
||||
0x5b, // KEY_N 49
|
||||
0x5d, // KEY_M 50
|
||||
0x57, // KEY_COMMA 51
|
||||
0x5f, // KEY_DOT 52
|
||||
0x59, // KEY_SLASH 53
|
||||
0x71, // KEY_RIGHTSHIFT 54
|
||||
CODE_HANDLE_SEPARATELY, // KEY_KPASTERISK 55
|
||||
0x6f, // KEY_LEFTALT 56 !!!!! MAPPED TO LEFT COMMAND
|
||||
0x63, // KEY_SPACE 57
|
||||
CODE_HANDLE_SEPARATELY, // KEY_CAPSLOCK 58
|
||||
CODE_UNUSED, // KEY_F1 59
|
||||
CODE_UNUSED, // KEY_F2 60
|
||||
CODE_UNUSED, // KEY_F3 61
|
||||
CODE_UNUSED, // KEY_F4 62
|
||||
CODE_UNUSED, // KEY_F5 63
|
||||
CODE_UNUSED, // KEY_F6 64
|
||||
CODE_UNUSED, // KEY_F7 65
|
||||
CODE_UNUSED, // KEY_F8 66
|
||||
CODE_UNUSED, // KEY_F9 67
|
||||
CODE_UNUSED, // KEY_F10 68
|
||||
CODE_HANDLE_SEPARATELY, // KEY_NUMLOCK 69 !!!!! MAPPED TO CLEAR
|
||||
CODE_UNUSED, // KEY_SCROLLLOCK 70
|
||||
CODE_HANDLE_SEPARATELY, // KEY_KP7 71
|
||||
CODE_HANDLE_SEPARATELY, // KEY_KP8 72
|
||||
CODE_HANDLE_SEPARATELY, // KEY_KP9 73
|
||||
CODE_HANDLE_SEPARATELY, // KEY_KPMINUS 74
|
||||
CODE_HANDLE_SEPARATELY, // KEY_KP4 75
|
||||
CODE_HANDLE_SEPARATELY, // KEY_KP5 76
|
||||
CODE_HANDLE_SEPARATELY, // KEY_KP6 77
|
||||
CODE_HANDLE_SEPARATELY, // KEY_KPPLUS 78
|
||||
CODE_HANDLE_SEPARATELY, // KEY_KP1 79
|
||||
CODE_HANDLE_SEPARATELY, // KEY_KP2 80
|
||||
CODE_HANDLE_SEPARATELY, // KEY_KP3 81
|
||||
CODE_HANDLE_SEPARATELY, // KEY_KP0 82
|
||||
CODE_HANDLE_SEPARATELY, // KEY_KPDOT 83
|
||||
CODE_UNUSED, // KEY_UNUSED 84
|
||||
CODE_UNUSED, // KEY_ZENKAKUHANKAKU 85
|
||||
CODE_UNUSED, // KEY_102ND 86
|
||||
CODE_UNUSED, // KEY_F11 87
|
||||
CODE_UNUSED, // KEY_F12 88
|
||||
CODE_UNUSED, // KEY_RO 89
|
||||
CODE_UNUSED, // KEY_KATAKANA 90
|
||||
CODE_UNUSED, // KEY_HIRAGANA 91
|
||||
CODE_UNUSED, // KEY_HENKAN 92
|
||||
CODE_UNUSED, // KEY_KATAKANAHIRAGANA 93
|
||||
CODE_UNUSED, // KEY_MUHENKAN 94
|
||||
CODE_UNUSED, // KEY_KPJPCOMMA 95
|
||||
CODE_HANDLE_SEPARATELY, // KEY_KPENTER 96
|
||||
0x75, // KEY_RIGHTCTRL 97 !!!!! MAPPED TO LEFT OPTION
|
||||
CODE_HANDLE_SEPARATELY, // KEY_KPSLASH 98
|
||||
CODE_UNUSED, // KEY_SYSRQ 99
|
||||
0x6f, // KEY_RIGHTALT 100 !!!!! MAPPED TO LEFT COMMAND
|
||||
CODE_UNUSED, // KEY_LINEFEED 101
|
||||
CODE_UNUSED, // KEY_HOME 102
|
||||
CODE_HANDLE_SEPARATELY, // KEY_UP 103
|
||||
CODE_UNUSED, // KEY_PAGEUP 104
|
||||
CODE_HANDLE_SEPARATELY, // KEY_LEFT 105
|
||||
CODE_HANDLE_SEPARATELY, // KEY_RIGHT 106
|
||||
CODE_UNUSED, // KEY_END 107
|
||||
CODE_HANDLE_SEPARATELY, // KEY_DOWN 108
|
||||
CODE_UNUSED, // KEY_PAGEDOWN 109
|
||||
CODE_UNUSED, // KEY_INSERT 110
|
||||
CODE_UNUSED, // KEY_DELETE 111
|
||||
CODE_UNUSED, // KEY_MACRO 112
|
||||
CODE_UNUSED, // KEY_MUTE 113
|
||||
CODE_UNUSED, // KEY_VOLUMEDOWN 114
|
||||
CODE_UNUSED, // KEY_VOLUMEUP 115
|
||||
CODE_UNUSED, // KEY_POWER 116
|
||||
CODE_UNUSED, // KEY_KPEQUAL 117
|
||||
CODE_UNUSED, // KEY_KPPLUSMINUS 118
|
||||
CODE_UNUSED, // KEY_PAUSE 119
|
||||
CODE_UNUSED, // KEY_SCALE 120
|
||||
CODE_UNUSED, // KEY_KPCOMMA 121
|
||||
CODE_UNUSED, // KEY_HANGEUL 122
|
||||
CODE_UNUSED, // KEY_HANJA 123
|
||||
CODE_UNUSED, // KEY_YEN 124
|
||||
0x6f, // KEY_LEFTMETA 125 !!!!! MAPPED TO LEFT COMMAND
|
||||
0x6f, // KEY_RIGHTMETA 126 !!!!! MAPPED TO LEFT COMMAND
|
||||
0x6f, // KEY_COMPOSE 127 !!!!! MAPPED TO LEFT COMMAND
|
||||
};
|
||||
|
||||
uint8_t m0110a_get_line_status(void)
|
||||
{
|
||||
uint32_t entry_time = HAL_GetTick();
|
||||
@@ -71,14 +203,15 @@ uint8_t m0110a_read_host_cmd(uint8_t* result, uint16_t timeout_ms)
|
||||
{
|
||||
if(m0110a_get_line_status() == M0110A_LINE_IDLE)
|
||||
return M0110A_LINE_IDLE;
|
||||
|
||||
m0110a_read(result);
|
||||
|
||||
return wait_for_data_idle(timeout_ms);
|
||||
}
|
||||
|
||||
uint8_t m0110a_write(uint8_t data)
|
||||
{
|
||||
M0110A_CLK_HI();
|
||||
if(wait_for_data_idle(200) == M0110A_TIMEOUT)
|
||||
return M0110A_TIMEOUT;
|
||||
// clk is high at the start
|
||||
for(int i=7; i>=0; i--)
|
||||
{
|
||||
|
||||
@@ -213,7 +213,7 @@ void m0110a_write_1b_from_buf(void)
|
||||
m0110a_cmd_buf_peek(&my_m0110a_buf, &m0100a_byte);
|
||||
m0110a_cmd_buf_pop(&my_m0110a_buf);
|
||||
m0110a_write(m0100a_byte);
|
||||
printf("b%x", m0100a_byte);
|
||||
printf("w%x", m0100a_byte);
|
||||
}
|
||||
|
||||
void m0110a_update(void)
|
||||
@@ -241,12 +241,12 @@ void m0110a_update(void)
|
||||
else if(m0110a_host_cmd == 0x36) // test
|
||||
m0110a_write(0x7d);
|
||||
|
||||
printf("a%x", m0110a_host_cmd);
|
||||
printf("r%x", m0110a_host_cmd);
|
||||
}
|
||||
|
||||
void m0100a_handle_inquiry(void)
|
||||
{
|
||||
// "If no key transition has occurred after 0.25 second
|
||||
// "If no key transition has occurred after 0.25 seconds
|
||||
// the keyboard sends back a Null response to let the computer know it's still there"
|
||||
if(m0110a_inquiry_active && HAL_GetTick() - m0110a_last_inquiry > 250)
|
||||
{
|
||||
@@ -261,21 +261,26 @@ void m0100a_handle_inquiry(void)
|
||||
else if(m0110a_inquiry_active && kb_buf_peek(&my_kb_buf, &buffered_code, &buffered_value) == 0)
|
||||
{
|
||||
m0110a_cmd_buf_reset(&my_m0110a_buf);
|
||||
|
||||
uint8_t lookup_result = CODE_UNUSED;
|
||||
if(buffered_code < LINUX_KEYCODE_TO_M0110A_SCANCODE_SIZE)
|
||||
lookup_result = linux_keycode_to_m0110a_scancode_lookup[buffered_code];
|
||||
if(lookup_result == CODE_UNUSED || lookup_result == CODE_HANDLE_SEPARATELY)
|
||||
goto m0110a_kb_write_end;
|
||||
|
||||
if(buffered_value)
|
||||
{
|
||||
m0110a_cmd_buf_add(&my_m0110a_buf, 0x71);
|
||||
m0110a_cmd_buf_add(&my_m0110a_buf, 0x79);
|
||||
m0110a_cmd_buf_add(&my_m0110a_buf, 0x0d);
|
||||
m0110a_cmd_buf_add(&my_m0110a_buf, lookup_result);
|
||||
}
|
||||
else
|
||||
{
|
||||
m0110a_cmd_buf_add(&my_m0110a_buf, 0xf1);
|
||||
m0110a_cmd_buf_add(&my_m0110a_buf, 0x79);
|
||||
m0110a_cmd_buf_add(&my_m0110a_buf, 0x8d);
|
||||
m0110a_cmd_buf_add(&my_m0110a_buf, lookup_result | 0x80);
|
||||
}
|
||||
kb_buf_pop(&my_kb_buf);
|
||||
m0110a_write_1b_from_buf();
|
||||
m0110a_inquiry_active = 0;
|
||||
|
||||
m0110a_kb_write_end:
|
||||
kb_buf_pop(&my_kb_buf);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -9,7 +9,18 @@
|
||||
|
||||
// return (uint16_t)(-190*speed_val + 12690); // 1, 12500 | 64, 500
|
||||
int32_t result = -307*speed_val + 12807; // 1, 12500, 40, 500
|
||||
|
||||
if(buffered_value)
|
||||
{
|
||||
m0110a_cmd_buf_add(&my_m0110a_buf, 0x71);
|
||||
m0110a_cmd_buf_add(&my_m0110a_buf, 0x79);
|
||||
m0110a_cmd_buf_add(&my_m0110a_buf, 0x0d);
|
||||
}
|
||||
else
|
||||
{
|
||||
m0110a_cmd_buf_add(&my_m0110a_buf, 0xf1);
|
||||
m0110a_cmd_buf_add(&my_m0110a_buf, 0x79);
|
||||
m0110a_cmd_buf_add(&my_m0110a_buf, 0x8d);
|
||||
}
|
||||
|
||||
uint16_t calc_arr(int32_t speed_val)
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user