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
thanks_super-famicom.pdf
Search
sapi_kawahara
April 29, 2019
Education
0
410
thanks_super-famicom.pdf
sapi_kawahara
April 29, 2019
Tweet
Share
More Decks by sapi_kawahara
See All by sapi_kawahara
コマンドラインを見直そう(1995年からタイムリープ)
sapi_kawahara
0
630
今から始める8bits CPU アセンブラ言語
sapi_kawahara
0
950
執筆テーマの決め方
sapi_kawahara
1
380
LTの禁じ手
sapi_kawahara
1
1.2k
||とorの違いは登壇して解決した
sapi_kawahara
0
370
Macintosh talk / Macintoshの話
sapi_kawahara
0
220
混合接種してみた / Mixed inoculation
sapi_kawahara
0
160
安くて美味い日本酒 / Great wholesale market
sapi_kawahara
0
420
オフラインもし逢えたなら素敵だね / It would be nice to meet you offline.
sapi_kawahara
0
470
Other Decks in Education
See All in Education
仏教の源流からの奈良県中南和_奈良まほろば館‗飛鳥・藤原DAO/asuka-fujiwara_Saraswati
tkimura12
0
170
中央教育審議会 教育課程企画特別部会 情報・技術ワーキンググループに向けた提言 ー次期学習指導要領での情報活用能力の抜本的向上に向けてー
codeforeveryone
0
480
Web 2.0 Patterns and Technologies - Lecture 8 - Web Technologies (1019888BNR)
signer
PRO
0
3k
焦りと不安を、技術力に変える方法 - 新卒iOSエンジニアの失敗談と成長のフレームワーク
hypebeans
1
620
Introduction - Lecture 1 - Human-Computer Interaction (1023841ANR)
signer
PRO
0
2.7k
卒論の書き方 / Happy Writing
kaityo256
PRO
51
27k
QR-koodit opetuksessa
matleenalaakso
0
1.8k
国際卓越研究大学計画|Science Tokyo(東京科学大学)
sciencetokyo
PRO
0
41k
【dip】「なりたい自分」に近づくための、「自分と向き合う」小さな振り返り
dip_tech
PRO
0
200
Réaliser un diagnostic externe
martine
0
840
Introduction - Lecture 1 - Web Technologies (1019888BNR)
signer
PRO
0
5.8k
HCI and Interaction Design - Lecture 2 - Human-Computer Interaction (1023841ANR)
signer
PRO
0
1.4k
Featured
See All Featured
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
231
22k
Lessons Learnt from Crawling 1000+ Websites
charlesmeaden
PRO
0
970
Why Your Marketing Sucks and What You Can Do About It - Sophie Logan
marketingsoph
0
48
Making the Leap to Tech Lead
cromwellryan
135
9.7k
30 Presentation Tips
portentint
PRO
1
180
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
122
21k
How to build a perfect <img>
jonoalderson
0
4.8k
Deep Space Network (abreviated)
tonyrice
0
22
The #1 spot is gone: here's how to win anyway
tamaranovitovic
1
870
Jamie Indigo - Trashchat’s Guide to Black Boxes: Technical SEO Tactics for LLMs
techseoconnect
PRO
0
32
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.5k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
17k
Transcript
新元号決定!平成最後のLT大会&PARTY #engineers_lt 平成31年4月30日〜令和元年5月1日 スーファミに感謝 1
新元号決定!平成最後のLT大会&PARTY #engineers_lt 平成31年4月30日〜令和元年5月1日 自己紹介 • さっぴー川原 @sapi_kawahara • 埼玉県川越市在住、五反田の中小企業で働いてます。 •
エンジニア暦:30年目、コンシューマーゲーム機のゲー ム開発 (ファミコンからプレイステーション2まで)、 のちにLAMPでの開発にジョブチェンジ、開発言語にこだ わらない性格、最近はPythonをメインでやってます。 2
新元号決定!平成最後のLT大会&PARTY #engineers_lt 平成31年4月30日〜令和元年5月1日 スーファミとは? • スーパーファミコンのことです。 • 平成2年の1990年11月21日に任天堂が発売したファミ リーコンピューター(以降ファミコンと略)の後継機で す。
• CPUは16ビットの65C816、ファミコンに比べて画面と 音楽関連を大幅にパワーアップしたゲーム機です。 3
新元号決定!平成最後のLT大会&PARTY #engineers_lt 平成31年4月30日〜令和元年5月1日 ファミコンよりこれだけパワーアップ! 4 ファミコン スーファミ メモリ 4KB 128KB
ビデオメモリ 4KB 64KB 色 52色 32,768色から最大256色 スプライト 8x8,16x16最大64枚 8x8,16x16,32x32,64x64最大128枚 スプライト横制限 4枚 32枚 BG 縦または横2画面 1024x1024 画面エフェクト なし BG拡大縮小回転、半透明、モザイク、 ラスタースクロール、ウインドウ サウンド 矩形波(3和音モノラル)+ 三角波 16ビットPCM(8和音ステレオ)+ DSP(エコー、ディレイ、リバーブ、ピッチベンド)
新元号決定!平成最後のLT大会&PARTY #engineers_lt 平成31年4月30日〜令和元年5月1日 平成のはじまりにふさわしいスペック 5
新元号決定!平成最後のLT大会&PARTY #engineers_lt 平成31年4月30日〜令和元年5月1日 ここがつらいよスーファミ • 画面と音楽以外は、あんまりパワーアップしてない。 • CPUが遅いです本気で遅いです悲しいぐらい遅いです。 ◦ DMA動作時3.58MHz、カセットのプログラム実行時
は2.68MHz。 ◦ コントローラを読む時はファミコンと同じ1.79MHz。 • 画面モードが沢山あるけど、使えるモードは3つぐらい。 • 拡大回転が使えるモード7が意外と使えないです。 ◦ ちなみに回転の計算は固定小数点です。 6
新元号決定!平成最後のLT大会&PARTY #engineers_lt 平成31年4月30日〜令和元年5月1日 ここがつらいよスーファミ(予算的な話) • 容量の大きなカセットを使う。(詳細は後のスライドに て話します) • カセットにDSPを搭載する。 •
カセットに高速なCPUを搭載する。 ◦ マリオRPGなどです。 • カセットに高速な演算チップを搭載する。 ◦ スターフォックスのことです。 7
新元号決定!平成最後のLT大会&PARTY #engineers_lt 平成31年4月30日〜令和元年5月1日 つらいけど頑張る子でした! 8
新元号決定!平成最後のLT大会&PARTY #engineers_lt 平成31年4月30日〜令和元年5月1日 スーファミは技術を磨くには最適なゲーム機 • 65C816は65系の伝統を受け継ぐCPUです。 • アドレッシングモードも引き継いでおり、ダイレクトモード、アドレスイン デックスモード、インデックスX間接モード、間接インデックスYモードなど もパワーアップして使えるため、20超えるアドレッシングモードが使えま
す。 • この辺りは話すと長いですが、ダイレクトモードは高速なゼロページアドレ スにアクセスできます、命令コードも1バイト減ります。 • アドレッシングモードを活用すると、命令コードから即値を減らすことがで き、しかも配列のような使い方ができます。 • この辺りは人間オプティマイザーとして日々研究してました。 9
新元号決定!平成最後のLT大会&PARTY #engineers_lt 平成31年4月30日〜令和元年5月1日 スーファミは技術を磨くには最適なゲーム機 • モード7の使い方は日々進化してます。 • F-ZEROは2Dマップを倒しただけです。 • ファイナルファンタジー4の飛空艇シーンは、奥行きを出
すために地平線に向かって少しづつ縮めてます。 • ファイナルファンタジー5の飛空艇シーンは、地平線近く にフィルターを乗せて、さらに丸みを帯びるような変形 を追加してます。 • 新しい使い方が出るたびに解析してました。 10
新元号決定!平成最後のLT大会&PARTY #engineers_lt 平成31年4月30日〜令和元年5月1日 スーファミは技術を磨くには最適なゲーム機 • 格闘ゲームはキャラクターが大きく、1ステージで使用す るスプライト数が、最大定義数の128個を簡単に超えま す。 • 同時表示しないなら、裏でスプライト定義すればよい、
幸いにもDMA(ダイレクトメモリーアクセス)に命令を 出せば勝手にやってくれる! • この技術は、のちにRPGでも派手なエフェクトのために 使うことが多くなります。 11
新元号決定!平成最後のLT大会&PARTY #engineers_lt 平成31年4月30日〜令和元年5月1日 プログラミングが楽しかったです 12
新元号決定!平成最後のLT大会&PARTY #engineers_lt 平成31年4月30日〜令和元年5月1日 本当に楽しかったです 13
新元号決定!平成最後のLT大会&PARTY #engineers_lt 平成31年4月30日〜令和元年5月1日 そんな平成を代表するゲーム機 スーファミに感謝! 14