Permalink
Browse files

Add firmware loader for the GIMX adapter #457

  • Loading branch information...
matlo committed Jun 13, 2017
1 parent 5c8c751 commit 435e43392d2f3bf565e7b67e129ea229ec4db839
View
@@ -1,4 +1,4 @@
-DIRS = shared utils core config launcher fpsconfig
+DIRS = shared utils core config launcher fpsconfig loader
ifneq ($(OS),Windows_NT)
DIRS+= po
@@ -37,6 +37,7 @@ install: all
cp -u -f config/gimx-config setup/gimx-config.exe
cp -u -f launcher/gimx-launcher setup/gimx-launcher.exe
cp -u -f fpsconfig/gimx-fpsconfig setup/gimx-fpsconfig.exe
+ cp -u -f loader/gimx-loader setup/gimx-loader.exe
cp -u -f shared/gasync/src/input/windows/gamecontrollerdb.txt setup
mkdir -p setup/share/locale
for translation in po/*.po; \
View
@@ -25,4 +25,10 @@
#define BT_DIR "bluetooth/"
#define LOG_DIR "log/"
+#ifndef WIN32
+#define FIRMWARE_DIR "/usr/share/gimx/firmware"
+#else
+#define FIRMWARE_DIR "firmware"
+#endif
+
#endif /* DIRECTORIES_H_ */
View
@@ -0,0 +1 @@
+/loader.layout
View
@@ -0,0 +1,45 @@
+include ../Makedefs
+
+ifneq ($(OS),Windows_NT)
+prefix=$(DESTDIR)/usr
+bindir=$(prefix)/bin
+fwdir=$(prefix)/share/gimx/firmware
+endif
+
+NAME=$(shell basename $(shell pwd))
+
+CPPFLAGS += `wx-config --cflags` -Winvalid-pch -include wx_pch.h -DWX_PRECOMP -Wno-unused-local-typedefs
+LDLIBS += `wx-config --libs` -lstdc++
+
+OBJECTS := $(patsubst %.cpp,%.o,$(wildcard *.cpp))
+
+OUT = gimx-$(NAME)
+
+BINS = $(OUT)
+
+all: $(OUT)
+
+$(OUT): $(OBJECTS)
+
+clean:
+ $(RM) $(OBJECTS) $(OUT)
+
+.PHONY: clean
+
+ifneq ($(OS),Windows_NT)
+install: all
+ mkdir -p $(prefix)
+ mkdir -p $(bindir)
+ for i in $(BINS); do cp $$i $(bindir)/; done
+ mkdir -p $(fwdir)
+ for i in firmware/*; do cp $$i $(fwdir); done
+
+uninstall:
+ -$(RM) $(fwdir)/*
+ -rmdir $(fwdir)
+ -for i in $(BINS); do $(RM) $(bindir)/$$i; done
+ -rmdir $(bindir)
+ -rmdir $(prefix)
+
+really-clean: clean uninstall
+endif
View
@@ -0,0 +1,279 @@
+:1000000040C1000059C1000057C1000055C10000A7
+:1000100053C1000051C100004FC100004DC100009C
+:100020004BC1000049C1000030C6000045C10000BE
+:1000300043C1000041C100003FC100003DC10000BC
+:100040003BC1000039C1000037C1000035C10000CC
+:1000500033C1000031C100002FC100002DC10000DC
+:100060002BC1000037C1000027C1000025C10000DE
+:1000700023C1000021C100001FC100001DC10000FC
+:100080001BC1000019C1000017C1000015C100000C
+:1000900013C1000011C100000FC100000DC100001C
+:1000A0000BC1000009C1000007C10000320754075E
+:1000B0003808540738089607B80738080A081C0893
+:1000C00010033100300030003800330036003600B5
+:1000D0000000160343006F006E00740072006F0092
+:1000E0006C006C006500720000001E034D0069008A
+:1000F000630072006F0073006F00660074002000E0
+:1001000049006E0063002E0000000403090412037E
+:100110004D00530046005400310030003000900084
+:100120000000B203580062006F0078002000530006
+:10013000650063007500720069007400790020009A
+:100140004D006500740068006F00640020003300FB
+:100150002C002000560065007200730069006F00DB
+:100160006E00200031002E00300030002C002000F6
+:10017000A9002000320030003000350020004D0082
+:100180006900630072006F0073006F006600740006
+:10019000200043006F00720070006F007200610069
+:1001A000740069006F006E002E00200041006C009A
+:1001B0006C00200072006900670068007400730022
+:1001C0002000720065007300650072007600650013
+:1001D00064002E00000009029900040100A0FA0941
+:1001E00004000002FF5D01001121100101258114AE
+:1001F000030303041302080303070581032000011E
+:10020000070502032000080904010004FF5D030044
+:100210001B2100010101834001042016850000001C
+:100220000000001605000000000000070583032001
+:100230000002070504032000040705850320004091
+:10024000070505032000100904020001FF5D0200FC
+:1002500009210001012286070007058603200010FE
+:100260000904030000FFFD1304064100010103120D
+:10027000010002FFFFFF085E048E0210010102036D
+:10028000010011241FBECFEFDAE0DEBFCDBF11E0C9
+:10029000A0E0B1E0EAE0F1E102C005900D92AA34DD
+:1002A000B107D9F711E0AAE4B1E001C01D92A33E65
+:1002B000B107E1F72ED227C7A3CEF89428E088E152
+:1002C00090E00FB6F894A895809360000FBE20933D
+:1002D0006000FFCF1F920F920FB60F9211242F9341
+:1002E0003F934F935F936F937F938F939F93AF93BE
+:1002F000BF93EF93FF938091CE008093CF018091C5
+:10030000C80087FFFCCF8091CE008093CE01809102
+:10031000CF018F3F19F482E291E002C08BE891E0B7
+:100320009093D4018093D3018091D3019091D40113
+:100330002091D2013091CE01231778F431E0320FB1
+:100340003093D201FC01E20FF11D2091C80027FF7C
+:10035000FCCF2091CE002083EBCF1092D201809170
+:10036000CF01833309F442C028F48131A1F08232F5
+:1003700031F15AC0853509F453C08F3F09F451C09B
+:10038000843409F051C081E08093CD018091CE0189
+:100390008093CC0149C08091C80085FFFCCF81E1EA
+:1003A0008093CE008091C80085FFFCCF81E08093D0
+:1003B000CE008091C80085FFFCCF81E014C0809101
+:1003C000C80085FFFCCF82E28093CE008091C800F8
+:1003D00085FFFCCF81E08093CE008091CB0190918E
+:1003E000C80095FFFCCF8093CE001EC08091C8004E
+:1003F00085FFFCCF83E38093CE008091C80085FF0A
+:10040000FCCF81E08093CE008091CB019091C80019
+:1004100095FFFCCF8093CE0081E08093D00104C093
+:100420004CDF81E08093D101FF91EF91BF91AF91BB
+:100430009F918F917F916F915F914F913F912F91FC
+:100440000F900FBE0F901F90189581E090E0909351
+:10045000CD008093CC0086E08093CA001092C80043
+:10046000E9ECF0E088E18083539A5A9A80818068B1
+:100470008083089514BE88E10FB6F89480936000DD
+:10048000109260000FBE90E080E80FB6F894809361
+:100490006100909361000FBED8DF78948091D00105
+:1004A0008823E1F3D5C30895089542E261EC81E029
+:1004B00009D342E260EC82E005C3CF93DF93CDB76E
+:1004C000DEB764970FB6F894DEBF0FBECDBF809144
+:1004D000DB0186FFB9C09091CB01911169C087FD06
+:1004E00011C08091E800877F8093E8006091E1016E
+:1004F0007091E2018AE491E043D28091E8008E7726
+:100500008093E8001092CD018091C80085FFFCCF58
+:1005100084E48093CE008091DB0187FF06C0809148
+:10052000C80085FFFCCF88E007C08091E101885FAB
+:100530009091C80095FFFCCF8093CE0068E070E0FA
+:100540008BED91E0CAD58091DB0187FF29C08091B6
+:10055000CD018823E1F38091E800877F8093E80054
+:100560006091CC0170E08BE891E0A9D18091E80026
+:100570008B778093E8008091DD019091DE018031DE
+:100580009C4509F061C080918A01882329F081E0AF
+:100590008093CB018093D50181E080938A0154C080
+:1005A0006091E1017091E2018AE491E096D54CC03E
+:1005B00087FF39C08091DD019091DE0187319B4535
+:1005C00009F47BDE8091E800877F8093E8008091CA
+:1005D000DC018130C9F49091DB0190FF0CC084E113
+:1005E000E6E3F1E0DE01119601900D928A95E1F7C4
+:1005F00064E170E011C089831A8283E88B8386E608
+:100600008C8364E070E008C0813A49F481E089831A
+:1006100082E08A8362E070E0CE01019650D1809141
+:10062000E8008B770FC08091E800877F8093E80017
+:100630006091E1017091E2018AE491E0A1D18091A1
+:10064000E8008E778093E80064960FB6F894DEBFDA
+:100650000FBECDBFDF91CF91089581E08093E90077
+:100660008091D5018823B1F08091D101882391F048
+:100670008091E80080FFFCCF40E050E064E170E052
+:1006800082E291E08CD01092D1018091E8008E77C7
+:100690008093E8000895CF93DF9300D0CDB7DEB705
+:1006A0001A82198282E08093E9008091E80082FF3B
+:1006B00024C08091E80085FF0EC0AE014F5F5F4F00
+:1006C00060E270E082E091E0B2D0811104C080E28B
+:1006D00090E09A8389838091E8008B778093E8008B
+:1006E00069817A816115710541F060930101772775
+:1006F0006E5F7F4F80E091E0F0D40F900F90DF911C
+:10070000CF9108958091DA01843011F4A6DFC3CF30
+:100710000895B0DEF7DFC5D4FDCF292F332722306F
+:10072000310559F02330310569F02130310579F573
+:1007300082E190E02FE632E02EC089E990E026EDDC
+:1007400031E029C0992782309105A9F03CF4009747
+:1007500079F00197E1F4EAEEF0E015C084309105FC
+:1007600081F064F08E3E910591F4EEE0F1E00BC073
+:10077000EAE0F1E008C0E2EDF0E005C0E0ECF0E016
+:1007800002C0E2E2F1E0849190E09F0104C080E0C9
+:1007900090E020E030E0FA01318320830895CF9289
+:1007A000DF92EF92FF920F931F93CF93DF937C0121
+:1007B0008B01EA01DDD1811131C0209731F08881B0
+:1007C0009981081B190BE80EF91EC12CD12C0115BB
+:1007D000110519F18091E80085FD14C08091E800B1
+:1007E0008E778093E8005DD4209741F088819981CD
+:1007F0008C0D9D1D9983888385E010C0B9D1882315
+:1008000031F30CC0F70181917F018093F100015019
+:100810001109FFEFCF1ADF0ADACF80E0DF91CF9125
+:100820001F910F91FF90EF90DF90CF900895CF929E
+:10083000DF92EF92FF920F931F93CF93DF937C0190
+:100840008B01EA0195D1811131C0209731F0888167
+:100850009981081B190BE80EF91EC12CD12C01152A
+:10086000110519F18091E80085FD14C08091E80020
+:100870008B778093E80015D4209741F08881998187
+:100880008C0D9D1D9983888385E010C071D18823CC
+:1008900031F30CC08091F100F70181937F01015089
+:1008A0001109FFEFCF1ADF0ADACF80E0DF91CF9195
+:1008B0001F910F91FF90EF90DF90CF9008952091BE
+:1008C000E1013091E2012617370748F06115710503
+:1008D00039F42091E8002E772093E80001C0B90197
+:1008E000FC0120E061157105B9F18091DA018823DE
+:1008F00009F440C0853009F43FC08091E80083FDD1
+:100900003DC08091E80082FF06C08091E80082FF30
+:1009100026C080E008958091E80080FFE3CF209119
+:10092000F3008091F20090E0922B6115710551F077
+:100930008830910538F421912093F10061507109BC
+:100940000196F3CF21E0089709F020E08091E800BC
+:100950008E778093E800C6CF2111C7CFD6CF809184
+:10096000DA01882339F0853039F08091E80083FF7F
+:10097000CCCF04C082E0089583E0089581E008951B
+:100980006115710529F42091E8002B772093E80088
+:100990006115710541F12091DA01222369F12530B9
+:1009A00069F12091E80023FD23C02091E80022FF97
+:1009B000F2CFFC01CF014091F3002091F20030E032
+:1009C000342B232B01F38091F1008193CF016150EF
+:1009D00071096115710571F7D6CF8091DA0188230D
+:1009E00059F0853059F08091E80080FFF6CF02C0C1
+:1009F00081E0089580E0089582E0089583E00895FD
+:100A00002091E1013091E2012617370748F0611586
+:100A1000710539F42091E8002E772093E80001C099
+:100A2000B901FC0120E061157105C1F18091DA0185
+:100A3000882309F441C0853009F440C08091E80062
+:100A400083FD3EC08091E80082FF06C08091E800EF
+:100A500082FF27C080E008958091E80080FFE3CF07
+:100A60002091F3008091F20090E0922B61157105C6
+:100A700059F08830910540F424912093F10031968B
+:100A8000615071090196F2CF21E0089709F020E04A
+:100A90008091E8008E778093E800C5CF2111C6CF02
+:100AA000D5CF8091DA01882339F0853039F08091F3
+:100AB000E80083FFCBCF04C082E0089583E008956F
+:100AC00081E00895982F973058F59093E900981792
+:100AD00039F07091EC002091ED005091F00003C0CE
+:100AE000242F762F50E021FF19C03091EB003E7F7C
+:100AF0003093EB003091ED003D7F3093ED0030916D
+:100B0000EB0031603093EB007093EC002093ED002C
+:100B10005093F0002091EE0027FF07C09F5FD3CFD6
+:100B20008F708093E90081E0089580E008958091BE
+:100B3000DB0187FD05C08091E80080FF0EC012C078
+:100B40008091E80082FD05C08091DA018111F8CF23
+:100B500008958091E8008B7708C08091DA018111B7
+:100B6000EACF08958091E8008E778093E800089599
+:100B70008091E4009091E50045E62091EC0020FF93
+:100B800021C02091E80020FD21C02091DA0122231C
+:100B900089F0253089F02091EB0025FD0FC02091D0
+:100BA000E4003091E5002817390739F3415041F04E
+:100BB000C901E3CF82E0089583E0089581E00895BC
+:100BC00084E008952091E80022FFDFCF80E00895BF
+:100BD0000F931F93CF93DF934BD052D0C8EDD0E04B
+:100BE00088818F77888388818068888388818F7DDA
+:100BF000888319BC1092DA011092D6011092D801A4
+:100C00001092D70100EE10E0F80180818B7F808385
+:100C100088818160888342E060E080E053DFE1EE1C
+:100C2000F0E080818E7F8083E2EEF0E08081816061
+:100C30008083808188608083F80180818E7F8083BB
+:100C4000888180618883DF91CF911F910F910895F2
+:100C5000E8EDF0E080818F7E8083E7EDF0E0808139
+:100C60008160808384E082BF81E08093D901B0CF2E
+:100C7000E8EDF0E080818E7F80831092E20008959D
+:100C80001092DA001092E10008951F920F920FB6B1
+:100C90000F9211242F933F934F935F936F937F9302
+:100CA0008F939F93AF93BF93EF93FF938091E10056
+:100CB00082FF0AC08091E20082FF06C08091E100BD
+:100CC0008B7F8093E100ECD18091DA0080FF1DC022
+:100CD0008091D80080FF19C08091DA008E7F8093C8
+:100CE000DA008091D90080FF0CC080E189BD82E1EB
+:100CF00089BD09B400FEFDCF81E08093DA01D3DB2A
+:100D000004C019BC1092DA01CFDB8091E10080FFB2
+:100D100018C08091E20080FF14C08091E2008E7FB5
+:100D20008093E2008091E20080618093E2008091F4
+:100D3000D80080628093D80019BC85E08093DA01E6
+:100D4000AFD18091E10084FF2FC08091E20084FF49
+:100D50002BC080E189BD82E189BD09B400FEFDCFD1
+:100D60008091D8008F7D8093D8008091E1008F7EA4
+:100D70008093E1008091E2008F7E8093E200809179
+:100D8000E20081608093E2008091D601882311F017
+:100D900084E007C08091E30087FF02C083E001C0C8
+:100DA00081E08093DA017CD18091E10083FF22C051
+:100DB0008091E20083FF1EC08091E100877F8093D5
+:100DC000E10082E08093DA011092D6018091E10087
+:100DD0008E7F8093E1008091E2008E7F8093E2001D
+:100DE0008091E20080618093E20042E060E080E078
+:100DF00069DE56D1FF91EF91BF91AF919F918F9195
+:100E00007F916F915F914F913F912F910F900FBE06
+:100E10000F901F9018951F93CF93DF93CDB7DEB738
+:100E2000AA970FB6F894DEBF0FBECDBFEBEDF1E091
+:100E30008091F100819321E0E33EF207C9F73DDBA9
+:100E40008091E80083FF14C12091DB013091DC0127
+:100E5000832F90E08A30910508F00AC1FC01EA5A1C
+:100E6000FF4F4BC1203881F0223809F001C1809139
+:100E7000DF018F708093E9008091EB0085FB88276C
+:100E800080F91092E90006C08091D7019091D801B5
+:100E9000911182609091E800977F9093E800809391
+:100EA000F1001092F100C1C0822F8D7F09F0E0C0E7
+:100EB000222319F0223061F0DBC08091DD01813006
+:100EC00009F0D6C0333009F080E08093D80128C003
+:100ED0008091DD01811124C02091DF012F7009F480
+:100EE000C7C02093E9008091EB0080FF19C080917A
+:100EF000EB00333011F4806211C080618093EB000D
+:100F000081E090E0022E01C0880F0A94EAF78093F6
+:100F1000EA001092EA008091EB0088608093EB0079
+:100F20001092E9008091E800877F82C02111A0C063
+:100F30001091DD011F778091E3008078812B8093F1
+:100F4000E3008091E800877F8093E800F0DD8091E6
+:100F5000E80080FFFCCF8091E30080688093E3008D
+:100F6000112311F083E001C082E08093DA0180C098
+:100F70002058223008F07CC08091DD019091DE0184
+:100F80008C3D23E0920771F583E08A838AE28983AE
+:100F90004FB7F894DE01139620E03EE051E2E32FD4
+:100FA000F0E050935700E49120FF03C0E295EF700A
+:100FB0003F5FEF708E2F90E0EA3010F0C79601C0CF
+:100FC000C0968D939D932F5F243149F74FBF809139
+:100FD000E800877F8093E8006AE270E0CE01019626
+:100FE0006EDC12C0AE014F5F5F4F6091DF0195DB99
+:100FF000009709F43DC02091E800277F2093E80086
+:10100000BC0189819A81FCDC8091E8008B77809318
+:10101000E8002EC0203861F58091E800877F80933A
+:10102000E8008091D6018093F1008091E8008E77EE
+:101030008093E8007CDD1CC021111AC09091DD0175
+:101040009230B0F48091E800877F8093E80090931D
+:10105000D6016DDD8091D601811104C08091E3003D
+:1010600087FF02C084E001C081E08093DA011DDACD
+:101070008091E80083FF0AC08091E800877F809319
+:10108000E8008091EB0080628093EB00AA960FB697
+:10109000F894DEBF0FBECDBFDF91CF911F910895B1
+:1010A0000895CF938091DA018823A9F08091E90017
+:1010B0008F709091EC0090FF02C090E801C090E02A
+:1010C000C92FC82B1092E9008091E80083FDA3DEB0
+:1010D000CF70C093E900CF910895680F791F8617EC
+:1010E000970751F0FC012191CF013091C80035FFE5
+:1010F000FCCF2093CE00F3CF0895EE0FFF1F059095
+:0A110000F491E02D0994F894FFCF5C
+:10110A00EE000000000000000000000000000000E7
+:10111A0000000000000000000000000000000000C5
+:10112A0000000014000000000000000000000000A1
+:10113A000000000000000014FFF7FFFFC0FFC0FF1F
+:0A114A00C0FFC0FF0000000000001D
+:00000001FF
Oops, something went wrong.

0 comments on commit 435e433

Please sign in to comment.