Slide 1

Slide 1 text

WEBMSXを改造して遊ぼう 株式会社あくしゅ   代表取締役   山崎泰宏  

Slide 2

Slide 2 text

MSXとは •  1983年に米マイクロソフトとアスキーによって提唱された   8ビット・16ビットのパソコンの共通規格の名称   •  MSXとその後継規格であるMSX2(1985年)、MSX2+(1988年)、MSXturboR(1990年)の総称でもある。  

Slide 3

Slide 3 text

私とMSX •  ファミコンは買ってもらわなかったが、MSXは家にあった   •  それで小学校3年生の時に何気なくBASICを始めた   •  以来、ファミコンに勝ちたくてゲームを作り続け、友達に遊んでもらうも、   毎度クソゲーと呼ばれる結果に   •  どうしても面白い!すごい!と言われたくて、   ソースコードを印刷して小学校の休憩時間に読みながら改善ポイントなど書き込む   •  先生に没収され、親に連絡が行き、「息子さんが意味不明な暗号を眺めているのだが」と心配される  

Slide 4

Slide 4 text

MSX・FAN最終号に投稿したプログラム   クソゲーも数打てば当たる  

Slide 5

Slide 5 text

WEBMSXとは •  JavaScriptで書かれたMSXのエミュレータ   •  MSX2+相当の機能セットを持っている   •  CPUであるZ80MPUだけでなく、VDPや周辺装置との入出力も実装している  

Slide 6

Slide 6 text

そもそもMSXってどうやって動いているのか (図解Z80って本がとても参考になります)  

Slide 7

Slide 7 text

Z80MPUの構造 当日専用スライドなので割愛  

Slide 8

Slide 8 text

動作例 LD    A,  (HL)   ADD    A,  B   0100H  7E   0101H  80   0102H  

Slide 9

Slide 9 text

初期状態 当日専用スライドなので割愛  

Slide 10

Slide 10 text

”7E”実行後 当日専用スライドなので割愛  

Slide 11

Slide 11 text

MPUから周辺チップへのアクセス切り替え例 当日専用スライドなので割愛  

Slide 12

Slide 12 text

メモリ読み出しを例にしたタイミングチャートの見方 次に変化するまではアドレスが   保持されていることを示している   データが出力されていることを示す。   水平線はハイインピーダンス   当日専用スライドなので割愛  

Slide 13

Slide 13 text

データ準備が出来ていないことを   MPUへ知らせる信号   当日専用スライドなので割愛  

Slide 14

Slide 14 text

当日専用スライドなので割愛  

Slide 15

Slide 15 text

メモリとアクセス 当日専用スライドなので割愛  

Slide 16

Slide 16 text

そんなこんなで動作する LD    A,  (HL)   ADD    A,  B   0100H  7E   0101H  80   0102H   IN    A,  (8E)   0100H  DB   0101H  8E   0102H   メモリへのアクセス   I/Oデバイスへのアクセス  

Slide 17

Slide 17 text

抽象的に書くと Z80   MPU   RAM   I/O   Device   BUS   ここにHTTPアクセスモジュールを接続してみたい   ハードウェアでやろうとすると大変だが   エミュレータなら簡単