Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
コンシューマーゲームを操作するプログラマブルコントローラーの作成
Search
yuki-yano
May 25, 2018
210
0
Share
コンシューマーゲームを操作するプログラマブルコントローラーの作成
yuki-yano
May 25, 2018
More Decks by yuki-yano
See All by yuki-yano
Neovimのリモートプラグインとはなんなのか、あるいはTypeScriptでのNeovimプラグイン実装について / Developing Remote Plugin in TypeScript
yuki_ycino
1
1.9k
docker-machineで簡単にデモ環境を構築する、あるいはローカルのリソースを消費しない開発環境について / Easily build an environment with docker-machine
yuki_ycino
0
150
RPA実行環境のFargateへの移行 / Migrating RPA Infrastructure to Fargate
yuki_ycino
0
6.7k
Featured
See All Featured
Ruling the World: When Life Gets Gamed
codingconduct
0
240
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
659
62k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
287
14k
Unsuck your backbone
ammeep
672
58k
Navigating Weather and Climate Data
rabernat
0
200
Design in an AI World
tapps
1
220
Bootstrapping a Software Product
garrettdimon
PRO
307
120k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
17k
Avoiding the “Bad Training, Faster” Trap in the Age of AI
tmiket
0
160
Building an army of robots
kneath
306
46k
Stop Working from a Prison Cell
hatefulcrawdad
274
21k
Transcript
4MBDL͔ΒήʔϜػ 14 Λૢ࡞͢Δ ϓϩάϥϚϒϧίϯτϩʔϥʔΛ࡞ͬͨ ZVLJZDJOP
Γ͍ͨ͜ͱ w 14ͷϓϩάϥϚϒϧίϯτϩʔϥʔ ʢίϚίϯʣ͕ཉ͍͠ w 1$͔Β੍ޚ͍ͨ͠ w ؾܰʹૢ࡞Λॻ͖͍͑ͨ "SEVJOPܦ༝Ͱૢ࡞͢ΔΑ͏ʹͨ͠
ίϚίϯ w ϑϨʔϜ୯ҐͰͷૢ࡞Λ͢ΔϚΫϩΛొՄೳͳίϯτϩʔϥʔ ʢඵϑϨʔϜʣ w 14Ҏ߱·ͱͳΛ͋·Γݟͨ͜ͱ͕ͳ͍ w 6*͕ਏ͍ w มثΛט·ͨ͠14ͰϑϨʔϜϨʔτ͕όάΔ
͜Ε·ͰͷਪҠ w 684$ͰΩʔϘʔυϚΫϩʢ1$ήʔϜʣ w ࢢൢίϚίϯΛߪೖʢ1414ʣ w $Ͱ%JSFDU*OQVUΛ༻͍࣮ͯʢ1$ήʔ Ϝʣ w "SEVJOPͰ࣮ʢ14ʣˡ/FX
"SVDPO "SEVJOP$POUSPMMFS w طଘͷίϯτϩʔϥʔΛͬऔͬͨ w ͬͨͷ w ७ਖ਼ίϯτϩʔϥʔʢࢮɾԁڧʣ w վ͍͢͠Β͍͠)03*ͷίϯτϩʔϥʔʢԁڧʣ
w "SEVJOPʢԁڧʣ w ిࢠ࡞༻ͷ৭ʑʢԁ͘Β͍ʁʣ 1$ ʢ3VCZʣ "SEVJOP ͬऔͬͨ ίϯτϩʔϥʔ γϦΞϧϙʔτ௨৴ 14 ϑΥτΧϓϥ
None
3VCZ"SEVJOP w 3VCZͰ$47ΛಡΜͰม w ϏοτྻͬΆ͍จࣈྻʹมͯ͠ ߦͣͭ"SEVJOPʹૹΔ w "SEVJOPͰಡΈࠐΜͰߏମͷ Ϗοτྻʹ frame,
lever, button 2, 2, 2, 3, 2, 6, P 2,000001000000000 2,000011000000000 2,000110000000000 struct Step { short frame; byte mainButton; byte subButton; byte last; };
3VCZ"SEVJOP w "SEVJOPͷγϦΞϧϙʔτͷόοϑΝ͕ όΠτͷͨΊҰؾʹड͚औΔͷແཧ w վߦ·ͰಡΜͩΒ࣍ͷೖྗΛૹͬͯ͏ w ϝϞϦ͕LCͳͷͰϏοτྻʹมͯ֨͠ೲ w ඦεςοϓఔอଘͰ͖ΔΑ͏ʹ͔ͨͬͨ͠
4MBDL#PU w 3VCZ͔Β$47͕ಡΊͨΒ*0ͳΜͰ͍͍ w 4JOBUSBͰ1045ͨ͠༰Λ͏Α͏ʹͨ͠ w )VCPU͔Β)551ϦΫΤετඈ͢Α͏ʹ )VCPU 4JOBUSB 3FTRVF
ʢ3FEJTʣ 8PSLFS ʢ3VCZʣ "SEVJOP
4MBDL#PU w 3VCZ͔Β$47͕ಡΊͨΒ*0ͳΜͰ͍͍ w 4JOBUSBͰ1045ͨ͠༰Λ͏Α͏ʹͨ͠ w )VCPU͔Β)551ϦΫΤετඈ͢Α͏ʹ )VCPU 4JOBUSB 3FTRVF
ʢ3FEJTʣ 8PSLFS ʢ3VCZʣ "SEVJOP
4MBDL#PU w ਖ਼نදݱͰઌ಄͔Β࠶ؼతʹૢ࡞ͬΆ͍ͷΛ ൈ͖ग़ͯ͠$47ʹม w "SEVJOPͷଆͷ࣮ͷ߹Ͱεςοϓ·Ͱ ͔͠ड͚͚ΒΕͳ͍ͷͰॏෳΛҰԠѹॖͨ͠ @arucon_bot 22336655 frame,
lever, button 4, 2, 4, 3, 4, 6, 4, 5, @arucon_bot 236P6P frame, lever, button 2, 2, 2, 3, 4, 6, P
"SEVJOPͷਏΈ w QSJOUMO͕γϦΞϧϙʔτ௨৴ͯ͠Δ3VCZʹ৯ΘΕΔ w ߽తʹͬͨΒଈࢮͨ͠ w ܨ͍Ͱ͔ΒඵͭΈ͍ͨͳײ͡ͷ͜ͱ ͠ͳ͍ͱ͍͚ͳͯ͘ϋϚͬͨ w λΠϚʔͷਫ਼͕͍ͬΆͯ݁͘ߏͳසͰͣΕΔ
·ͱΊ w 1$͔Β14Λૢ࡞Ͱ͖ΔΠϯλʔϑΣΠεΛ࡞ͬͨ w ਫ਼͕ଟগ͍Ҏ֎େମ্ख͘ಈ͍ͯΔ w ॴͰฉ͍ͨͱ͜ΖWTZODΛ͑ͱͷճ͕ w 4MBDL#PUܦ༝Ͱૢ࡞Ͱ͖ΔΑ͏ʹͨ͠ w
ిࢠ࡞෦͕ਏ͔ͬͨͷͰϋϯμ͚͘Β͍ ͏গ͠Ͱ͖ΔΑ͏ʹͳΓ͍ͨ