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
[WIP] SFC Controller Emulation
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
naari3
October 08, 2017
0
630
[WIP] SFC Controller Emulation
製作中のコントローラの話
naari3
October 08, 2017
Tweet
Share
Featured
See All Featured
It's Worth the Effort
3n
188
29k
Sam Torres - BigQuery for SEOs
techseoconnect
PRO
0
180
How to build an LLM SEO readiness audit: a practical framework
nmsamuel
1
640
Beyond borders and beyond the search box: How to win the global "messy middle" with AI-driven SEO
davidcarrasco
1
49
Unsuck your backbone
ammeep
671
58k
Building a A Zero-Code AI SEO Workflow
portentint
PRO
0
300
The Organizational Zoo: Understanding Human Behavior Agility Through Metaphoric Constructive Conversations (based on the works of Arthur Shelley, Ph.D)
kimpetersen
PRO
0
240
Java REST API Framework Comparison - PWX 2021
mraible
34
9.1k
Large-scale JavaScript Application Architecture
addyosmani
515
110k
Building AI with AI
inesmontani
PRO
1
690
Effective software design: The role of men in debugging patriarchy in IT @ Voxxed Days AMS
baasie
0
220
Navigating the moral maze — ethical principles for Al-driven product design
skipperchong
2
240
Transcript
[WIP] SFC Controller Emulation ٙࣅεʔϑΝϛίϯτϩʔϥʔͷ࡞ ͳ͋Γ
໊༗Γ • Twitter: @naari_ • Github: @naari3 • Pythonͱ͔Rubyͱ͔ •
Α͘രഁ͞ΕΔຊࣾΛ࣋ͭاۀʹ͍Δ
͋͐͡Μͩ • Ͳ͏͖ • ͭ͘ΔͷͷͤͭΊ͍ • Ή͍ͣ • ͓ΘΓʹ
ಈػ
ͳΜͰεʔϑΝϛʁ
͖͔ͩ͢Β
ͱ͜ΖͰ
TASͬͯͬͯ·͔͢
TASͱ • Tool-Assisted Speedrun • ࠷ΫϦΞΛࢦ͢ • ΤϛϡϨʔλͰ࡞ΒΕΔ • εϩʔͰϓϨΠ
• QS, QL, LuaʹΑΔBot… • ࠶ݱੑ͕͋Γɺཧ্࣮ݱՄೳ
TASͱ • Tool-Assisted Speedrun • ࠷ΫϦΞΛࢦ͢ • ΤϛϡϨʔλͰ࡞ΒΕΔ • εϩʔͰϓϨΠ
• QS, QL, LuaʹΑΔBot… • ࠶ݱੑ͕͋Γɺཧ্࣮ݱՄೳ
ཧ্࣮ݱՄೳ
ΕͰ͖Δ
Ͱ͖Δ
TASBOTͭ͘Γ͍ͨ • TASΛ࣮ػͰಈ͔͢ԿΒ͔ͷஔͷ૯শ • εʔϑΝϛͱͯ͠ • sramͷཧָ͕ͬΆͦ͏ ??????? (ະ֬ೝ) •
ٖࣅཚͷ੍ޚRTAͰߦΘΕ͍ͯΔ
੍࡞ରͷઆ໌
SFCίϯͷઆ໌
SFCίϯͷઆ໌ • Input to Controller • Ϙλϯ × 12 •
3ϐϯ from SFC • VCC 3.3V • LATCH ͍ • CLOCK ܹ͍ ↑LATCH CLOCK VCC↑ ↑
SFCίϯͷઆ໌ • Output from Controller • 1ϐϯ • DATA •
12+αͷೖྗ͕CMOS4021Λհ͠ 1ϐϯͷΈʹΑΓग़ྗ͞ΕΔ DATA↑
SFCίϯͷಈ͖ํ
SFCίϯͷಈ͖ํ 1. LATCH͕1fʹ1ճ RISING (LOW -> HIGH) 2. ࣍ͷLATCH RISING·ͰʹCLOCK͕ͨ͘͞Μ
RISING 3. CLOCK16ճ ϘλϯʹԠͯ͡DATAϐϯ͔Β HIGH or LOW 16ճҎ߱ͣͬͱLOW 4. 1ʹͲΔ
ͳΜͰ16ճͳͷʁ • B Y Se St ↑ ↓ ← →
A X L R 1 2 3 4 • 1, 2, 3, 4ࣝผූ • εʔύʔείʔϓ • Ϛε • ௨ৗίϯৗʹແೖྗ
ܗ ཧ
SFCίϯͱͯ͋͠Δ͖ܗ • SFCͷίϯτϩʔϥʔૠೖޱʹͯ͠ಈ࡞ • ԿΒ͔ͷೖྗʹରͯ͠Ԡ • (ཧ|Ծ)Ϙλϯ • γϦΞϧ௨৴ 2
* 4 (by tap) * 16 (by 1 controller) • 128 bit per frame (7680bps)
Ή͖͍ͣͯͭ͘
None
ଥڠ ʬ໊ɾεࣗʭओு͕ରཱ͍ͯ͠Δ߹ɺޓ͍ͷओுΛز ͔ͣͭৡΓ߹ͬͯɺҰͭͷ݁ɾऔܾΊΛಋ͖ग़͢͜ͱɻɹ ʮݱঢ়ͱʕ͢Δʯ
ࠓճ • ௨ৗίϯτϩʔϥͱͯ͠ಈ࡞͢Δ • 1234ແೖྗ • ݻఆͷΛग़ྗ͢Δ • LνΧͷSFC൛ •
ྫ) ελϯόΠঢ়ଶ, શԡ͠, ϑϨʔϜຖʹೖྗ͕ΓସΘΔ ↑1Pࣦഊঢ়ଶ
࡞ͬͨॴͷઆ໌
SFCͱܨ͛Δ෦
SFCͱܨ͛Δ෦ • ຊͷίϯτϩʔϥΛόϥ͢ • ϚϧνλοϓΛόϥ͢ • ԆέʔϒϧΛΔ
ຊͷίϯτϩʔϥʔΛόϥ͢ • Pros • ຊͷίϯτϩʔϥ έʔϒϧ৭͓ͳͬ͡Ά͍ • ͔Θ͍͍ • Cons
• ࢮ͵΄ͲԚ͍ • ωδͷαϏ͕͍
ϚϧνλοϓΛόϥ͢ • Pros • ܨ͛Δ෦1ͭ, ૠೖ෦4ͭʂʂʂʂʂ • ͔Θ͍͍ • Cons
• ߴ͍
ԆέʔϒϧΛΔ • Pros • ͍҆ • ೖग़ྗͲͬͪखʹೖΔ • Cons •
ِ
4021Λ͢
4021Λ͢ • Arduino uno • ͖ͯͱ͏ʹͬͦ͡͏ • attachInterrupt ʹґଘ͍ͯ͠Δ •
͖͍ͭ
Ͱ͖ͯΔͷ
None
None
None
ͬͯΉΓͦ͏ͩͬͨͷ
Raspberry pi • తʹͪΐͬͱ… • Python͕͓͍ͦ • C++Ͱͭͬͨ͘όΠφϦ͓͍ͦ • ͍ͯͳͦ͞͏
ͷ͍ͬͯ͜Δ
֤छϐϯͷଓ͕ෆ҆ఆ • ϓϦϯτج൘ͭ͘Γ͍ͨ • ͖ͪ͠ͳ͍ • ॳظࢿͦ͏ • ͪΌΜͱͨ͠ࢠΛ͚͍ͭͨͰ͢Ͷ
USBܨ͙ͱෆ҆ఆ • Կނ͔Θ͔͍ͬͯͳ͍ • όεύϫʔ͕ࡶڕʁ • SFC͔Βͷిݯͩͱ҆ఆ͢Δ • γϦΞϧ௨৴͕͍ͨ͠ͷͰ͕͢ʂʂʂʂ
૯ׅ
SFCArduinoܹ͍ • ेφϊඵͷੈք͜Θ͍ • ΫϩοΫઅΛҙࣝ͢Δίʔυ
ॿ͚स͕ग़ͤΔ૬ख͕ډͳ͍ • ք۾(?)ͷҧ͍ • ͻͱΓͰΈଓ͚Δͷͩ… • ͦͦجૅ͕͔ࣝͬ͠Γ͍ͯ͠ͳ͍͔Β? • ॿ͚ͯ
͓ΘΓ