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
380
thanks_super-famicom.pdf
sapi_kawahara
April 29, 2019
Tweet
Share
More Decks by sapi_kawahara
See All by sapi_kawahara
今から始める8bits CPU アセンブラ言語
sapi_kawahara
0
480
執筆テーマの決め方
sapi_kawahara
1
350
LTの禁じ手
sapi_kawahara
1
1.2k
||とorの違いは登壇して解決した
sapi_kawahara
0
340
Macintosh talk / Macintoshの話
sapi_kawahara
0
190
混合接種してみた / Mixed inoculation
sapi_kawahara
0
140
安くて美味い日本酒 / Great wholesale market
sapi_kawahara
0
390
オフラインもし逢えたなら素敵だね / It would be nice to meet you offline.
sapi_kawahara
0
440
カジュアル面談本の裏側を語る / Casual Information Book Inside story
sapi_kawahara
0
450
Other Decks in Education
See All in Education
社外コミュニティと「学び」を考える
alchemy1115
2
170
Gamified Interventions for Composting Behavior: A Case Study Using the Gamiflow Framework in a Workplace Setting
ezefranca
1
130
日本の教育の未来 を考える テクノロジーは教育をどのように変えるのか
kzkmaeda
1
210
プレゼンテーション実践
takenawa
0
5.8k
諸外国の理科カリキュラムにおけるビッグアイデアの構造比較
arumakan
0
320
予習動画
takenawa
0
6.3k
JOAI2025講評 / joai2025-review
upura
0
160
AIの時代こそ、考える知的学習術
yum3
2
170
JPCERTから始まる草の根活動~セキュリティ文化醸成のためのアクション~
masakiokuda
0
180
OpenSourceSummitJapanを運営してみた話
kujiraitakahiro
0
710
ThingLink
matleenalaakso
28
4.1k
IMU-00 Pi
kanaya
0
370
Featured
See All Featured
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
45
7.5k
Git: the NoSQL Database
bkeepers
PRO
430
65k
Thoughts on Productivity
jonyablonski
69
4.7k
Raft: Consensus for Rubyists
vanstee
140
7k
Six Lessons from altMBA
skipperchong
28
3.9k
Rebuilding a faster, lazier Slack
samanthasiow
82
9.1k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
107
19k
Scaling GitHub
holman
459
140k
How GitHub (no longer) Works
holman
314
140k
Docker and Python
trallard
44
3.5k
Designing for Performance
lara
609
69k
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