福野泰介の一日一創 - create every day

NHK BS1で放送された1970年代から続くパソコン競争を辿る「スティーブ・ジョブズ vs ビル・ゲイツ」
証言で蘇る人間ドラマと、当時の映像・写真が良かったです。
スティーブ・ジョブズ vs. ビル・ゲイツ | BS世界のドキュメンタリー | NHK BS1

中でも目を引いたのがこちら、ビル・ゲイツ氏の持っていた紙に書かれたMSXの文字!

「MSX International version (USA & Europe) charcterset」 with Mr. Bill Gates

MSXの先頭二文字はマイクロソフトのMS。MSXというパソコンに出会ってこそのIchigoJam。先日NHKさんに取材いただき、 海外向けのNHK WORLD「great gear」にて放送予定となりました!
(海外での放送時間、6/18(木) 0:30-0:58, 6:30-6:58, 12:30-12:58, 18:30-18:58(日本時間))
(日本での放送時間、6/27(土) 03:00-03:28 ※スポーツ中継で変更可能性あり)

MSXの影響強い、こどもパソコンIchigoJamのキャラクターセットはこちら


こういうプログラムを書くと、キャラクター一覧を表示できます。


キャラクターコードを表示するには、余りを算出する演算子"%"を使って、このように。 (15行を追加、30行にPRINT追加、40行ジャンプ先変更)


数字の不揃いを整えるには、GOSUB/RETURNを使って、このように。
(15行をGOSUBに、100行からNの数を揃うように表示してRETURNするプログラムを追加)

多くの子供達で賑わった、IchigoJamプログラミングスクール初日、楽しそうでした!
ジョブズ氏が思考の自転車と呼んだパソコン、プログラミングができるとできないでは大違いです。

さて、ジョブズ対ゲイツ、勝負の行方は!?

久々のBASICプログラムの写経スタイル。N88互換BASICへの移植に触発され、IchigoJam BASICで書かれたプログラムをMSX BASICに移植。使ったパソコンは中古ショップで見つけて保護した、SONYのMSX2「HITBIT HB-F1XD」。プリインされている MSX BASIC version 2.0 は、マイクロソフト製!


「止まったらOUT」 by くぼゆきおさん(@tentenV3) の MSX-BASIC移植版
くぼさん、3/21、日本橋ストリートフェスタ エリアE「こども工作広場 日本橋小学校体育館」にて、IchigoJamとベーマガを展示されるとのこと!!(Twitter)

移植のポイント
120行-180行 画面の大きさに合わせて数値を変更(IchigoJamは36x27)
210行 生きながらえた時間がスコアになるので、TIME=0 で初期化(IchigoJamではCLTコマンドを追加するといいです)
300行 MSXのINKEY$は文字列が返るので、受け取ったらASC()命令でキーコードに変換(IchigoJamでは文字列変数が使えないので、INKEY()でキーコードが返ります、キーバッファが空の時は0)
420行-430行 BEEPの音色違いはPLAY文に置換(IchigoJamのBEEPは高さと長さを指定できます BEEP 5,30)
520行 VPEEKで画面表示で使っているメモリを取得します。アドレスを調べたらSCREEN1では0x1800(16進数)から32文字刻みでした(IchigoJamでは、LOCATEした位置をVPEEK()だけで取得や、VPEEK(x,y)でコードが取得できます)
530行 何もない場所、MSXでは32(=スペースのコード)に変更(IchigoJamではCLSで全部0になります)

いつもの小さなディスプレイ、相性がどうも悪く色がでず、IchigoJam風味なモノクロMSXとなっています。

- プレスリリース | jig.jpがこどもパソコン『IchigoJam』のライセンス販売スタート ~1,500円コンピュータでプログラミング教育の支援を目指す~
- BASICが動作する“こどもパソコン”「IchigoJam」のライセンスが150円で販売 - PC Watch
- IchigoJam 公式サイト
- IchigoJam BASIC リファレンス
- ベーマガ01(電子工作マガジンNo.26)掲載「止まったらOUT」について | トライアングル エレクトロニクス

幼少期を過ごした名古屋、「JAIPA Topics » ISP&クラウド事業者の集いin名古屋」にてオープンデータ講演。なんと6回目の共演となる静岡県庁の杉本さんと、5つ星オープンデータを広める同志、横浜市役所の関口さんも一緒!

はじめてのパソコンMSXを買ったと思われる「名古屋栄のど真ん中安さ一番、トップカメラ」を何度も乗った地下鉄東山線を使って寄ってみた。名古屋のテレビ塔は日本一古いらしい。本場で食べる味噌煮込みうどんも懐かしい。


「乗降チェッカー(名古屋市地下鉄東山線)」
名古屋市交通局のオープンデータを使って、乗降位置を事前に確認できます。時刻表データもあって楽しく開発できそうです。名古屋市在住の方、ぜひいろいろ改造してください!


シークレットゲスト、名古屋市、河村たかし市長!東京以外で最も稼ぐまち、名古屋市は日本で唯一市民税を減税、その原資は市長給与を始め、市役所職員の給料減額によって生まれた170億円。ひとりあたり年間1.1万円がもらえている計算になるらしい。

市長の給料2,300万から800万にした上に、4年任期毎にあった4,000万退職金も廃止。その効果は4年でなんと1億2,000万円。市民の判断でまちは変えられる。ふるさとのひとつ、名古屋自慢がひとつ増えました。誇れる名古屋のデータ、ぜひオープンデータにしてください!


名古屋といえば、えびふりゃー。大きい!(比較用、こどもパソコンIchigoJam

名古屋アプリ
- 乗降チェッカー (名古屋市地下鉄東山線)
- PM2.5時計(名古屋編) 市内PM2.5オープンデータから最大値を表示
- 名古屋市オープンデータを使った名古屋城パズルアプリ

ハードオフでのMSX1との25年ぶりの再開、30周年を機に修理したMSXturboRBASICを見直し創ったIchigoJamタケベ無線店内に飾られたMZ-2000、思い出と創造がつながり、タケベ無線さんのご協力を得て、晴れて6/8(日)に開催することになった、新旧パソコン三つ巴体験会です。


「新旧パソコン三つ巴 MZ-2000 vs IchigoJam vs MSX」
- 協力:タケベ無線

MZ-2000を囲んで、みんなでパソコンという未知に挑戦した電気屋さんの中の熱気は、コンピューターが溢れる現代で再現することはできませんが、親子で楽しめ、Google Glassや、インターネットにつながる小型コンピューター(IoT/アイオーティー)へ思いを馳せつつ、プログラミングを体験することで、何かのきっかけにつなげることができれば幸いです。


IchigoJamで昆虫ロボ、プログラミングで動かせます。(動画)


2つで200円で買えるモーター制御用のICTA7291Pを使って、2つのモーターをIchigoJamの汎用出力につないでコントロール。モーター用に単3電池4つを使っています。


町内のこどもに体験してもらいました。ロボが動くと男の子の反応がいい。女の子にはLEDチカチカから入るのが良さそう。

安価な子供向けPC「IchigoJam」を発表する。

子供向けとして有名な Raspberry Pi は、セットアップが難しく、インターネットに接続し、フィルターなしのインターネットにも接続してしまうため安易に小学校の低学年の子供に与えられなかった。


左)IchigoJam 右)Raspberry Pi

IchigoJam は、テレビとキーボードと電源をつなぐだけのシンプル構造。インターネットにはつながらない。危険なWebサイトの閲覧はもちろん、動画サイトを延々と見続けるようなこともできない。

できることは、BASICでプログラミングをするのみ。電源を入れるとメッセージと共に主人による指令、つまりプログラミングを待つのみ。プログラミングに集中できる設計となっている。


動作イメージ(家庭の大画面液晶テレビに接続し、リビングでもOK)

スペックは以下の通り

CPULPC1114 Cortex-M0 48MHz
RAM4KB
FlashRAM32KB (SYSTEM 12KB)
解像度296x216px(37x27文字)
色数2色 (白 or 黒)
出力NTSC (ビデオ出力)
入力PS/2キーボード
電源microUSB


IchigoJam - $15を目指す、イチゴーと他の組み合わせてジャムセッションのように楽しむの意

こどもパソコンIchigoJam
IchigoJamに関する本ブログ記事

※2016.2.18追記、現在の仕様は下記のように更新されています。
296x216px(37x27文字) → 288x216px (36x27文字) → 256x192px (32x24文字)
SYSTEM 12KB → 24KB
links
- 2014年 目指すはMSX! Raspberry Pi より安価な IchigoJam 発表!
- 2015年 創る人を創ろう! Pepper より安価な こどもロボットPaprika 発表!(Kids Robot paprika)
- 2016年 MSXになりたい「こどもパソコンIchigoJam」あの起動ロゴを搭載!(boot logo)
- 2017年 IchigoJam Zero the World's Lightest PC 0g 150yen for IchigoJam Things!
- 2018年 盲聾のこどもたちにもプログラミングを! 体で感じる体表点字、IchigoBrailleでブラインドプログラミング、IchigoJam 4th Birthday!

MSXの楽しさを教えてくれた雑誌「MSX-FAN」、見つけてから欠かさず購入してました。一番好きだったのは読者投稿のゲームが掲載された「ファンダム」というコーナー。編集さんによる審査を通過した作品が毎月十数作品掲載されていました。おもしろそうなゲームを見つけては、雑誌に書いてあるプログラムを自分のMSXにがんばって打ち込みます。

一見無意味な作業のようにみえるこの「打ち込み」は、現代でも「写経」といって、プログラミングの非常に有効な勉強法だったりします。「写経」がそうであるように、先人の書いた道をなぞることによって、その作法が自然と刷り込まれます。

1991年10月からは、720KBのフロッピーディスクが付録としてつくようになり、楽にはなりましたが、どれを遊ぼうかと打ち込むプログラミングの長さも踏まえて吟味する楽しみは減ってしまったかもしれません。ただ、その代わり、マシン語を操るためのアセンブラ入門や、C言語入門など、新たな楽しみへと進んでいくきっかけにもなりました。

ひさびさに開けてみたMSX-FANの付録ディスク全33回分。1995年8月に休刊となるまでのすべてを保存してあります。22年も経っていますが、無事読み込めました。

こちらシフトアップしてライバルより速く走る1キーゲーム。非常にシンプルです。1画面部門といって、MSXのちょうど1画面、40文字x24行にプログラムを納めるという俳句的な部門が、打ち込みも楽で好きでした。惜しくも最終ステージで負け。

コンティニューは1面からですが、面倒なので、プログラムを修正していきなり最終ステージになるように改造し、見事クリア画面を見ることができました。ゲームを自分好みに改造するのが、ファンダムならではの楽しみ方です。親切なプログラムの解説や、打ち込み間違い防止用のチェックサムなんかもついている読者を育てようとする意気込みに、頭が下がります。

現代の子供でも楽しんでもらえそうなネタが豊富なので、付録ディスクをひと通りバックアップすることにしました。読み取りエラーが出た1枚を除き、ほとんどがコピーできました。全部圧縮しても22.3MBしかありませんが、MSXに対する思いが詰まった密度の濃さはどんなデータにも負けないかも。


「MSX BASIC VIEWER」

せっかくなので、コピーしながら、MSX BASICで作られたプログラムファイルをパソコンで見られるようなツールを作っておこうと思いたち、なんとなく動くようにまでなった「MSX BASIC VIEWER」です。手持ちのプログラムを上記ツールを開いて、ブラウザにドロップすると、BASICの中間コードを可読テキストに変換します。

ちなみにデフォルトで書いてあるBASICのプログラムを実行するとこんな画面が出ます。MSX30周年の年が終わろうとしていますが、みなさまの何かを始めるきっかけになれば幸いです。

起動確認までできた20年前の愛機、MSXturboR(エムエスエックス・ターボアール)、調子の悪い電源回路を回避するため、ファミコンのようについているスロットを使って修理した記録。スロットの端子にある+12/-12/+5/GNDをAT電源から接続することで完動を確認!MSX BASICは今でも手軽に創って遊べるコンピューターとして通用しそうだ。


MSX用空スロットが売っていればよかったが、そんなものはなく、似ているものということで懐かしのISAバスがぴったり来るのではないかと思い、ヤフオクでISAバス接続のモデムのジャンクを購入。2.54mmピッチがぴったり!ただ、サイズが大きく、ちょっとはみ出る。


ということで、110円マイコンカットにも使った、ノコギリに登場してもらい、カット。


テスターで接点同士のつながりが無いことを確認。


電源からのピンをさせるようにピンソケットをはんだづけ。


スロットにぴったり刺さる。MSXスロットのピン配置は、「MSXカートリッジスロット端子表」を参考させてもらった。上段は右端から-12V/+12V、下段は右端から2か3番目に5V、4か5番目にGNDを接続する。(5VとGNDだけでも起動したが、音がでない)


AT電源側は、せっかくなので汎用的な電源として使うことも想定したピンを作成。適度な大きさの基板に使える電源線・信号線を集約。各信号線は色分けされていて分かりやすい、紫:待機用5V、黒:GND、緑:電源供給入力信号(GNDでON)、赤:5V、青:-12V、黄:+12V、オレンジ:3.3V、灰:電源安定化出力信号(5Vで安定)。とりあえず、緑と黒はジャンパでつないで、すぐに電源が入るようにしておく。


AT電源は出力が大きく、ショートさせてしまうと燃えたり、爆発したり危険なため、はんだづけ後のチェックを慎重に行い、ホットボンド(グルーガン)で固めておく。


すっきりした、AT電源とMSXとの接続。問題は、AT電源のファンの回る音がうるさいこと。もう少しコンパクトな電源を探してみよう。


無事動作。1,000回は見たであろうMSXturboRの起動画面。YouTubeで探してもなかったので記念にアップ。


タイピングの感覚を懐かしみながら、ひさびさにMSX BASICでプログラミングしてみました。こちら、四角いスプライトを定義して、カーソルで上下左右に動くようにした、ゲームの基本形。20年たってもプログラミングの基礎は一緒、今でも子供にMSXでプログラミング教室だってできそうだ。


その頃のデータが入っているフロッピーディスク。2DDという規格で720KBしか入らない。昔のまま、大量に残っている。ディスクドライブの調子が悪く、時々しか読み取ってくれないので、これもいずれなんとかしたいところ。

中学校3年生で福井に引っ越してきて、修学旅行が終わってしまっていたことの引き換えに買ってもらい、高専1年生の時、フル活用した思い出のコンピュータ、MSXturboR。20年経っても楽しさは色褪せてない。

2013年はファミコンもMSXも誕生してちょうど30年の記念の年。ハードウェア的一日一創も慣れてきたので、壊れて動かなくなってしまっていた中学3年生〜高専1年生の頃の愛機MSXturboR(Panasonic FS-A1GT)の修理に挑戦してみました。


こちらがMSX最高スペックを誇る、FS-A1GT、CPU:R800(Z80互換の16bitCPU)、RAM 0.5GB!

以前フロッピーディスクドライブのゴムの交換をしてもらったのですが、電源が入らず、どうも電源系の異常ありとのことで、そのままになってしまっていたもの。電源には、プラス12Vとマイナス12Vを使っているらしいことが分かったので、格安で買えそうなPCの電源を流用しようと、ハードオフへ。


こちらが電源ドナーとなるPC、ジャンク品、525円で購入。


ばらして電源を取り出す。他にも使えそうなパーツを集めたり、とりあえずばらしてみるのが楽しい。高専生2年生〜3年生頃はこうしてDOS/Vマシン組み立てやってたことを思い出し、懐かしくなる。


問題の回路、100Vをトランス通して12Vにしているらしいところは、テスターで見ても全く電圧がかからず。白と黄色2本の線が、GNDと12Vと-12Vなはずですが、どっちがどっちかわかりません・・・。Facebookで問いかけつつ、いちかばちかつないでみようかと思っていた所に、カートリッジに出ている電源ピンとの導通を見てはとナイスアドバイスをいただき、左からGND、12V、-12Vと判明しました!(その時の投稿、ちなみにアドバイスくれたShichiさんとは、黒プレステ開発キットねっとやろうぜ時代からの友人!)


ということで、PCの電源を接続し、スイッチオン・・・動かない。カートリッジの電源ピンを見たところ、5Vのはずのところが1.5V程度しかない様子。PC電源から5Vに一瞬つないでやると、なんと起動してくれました。最初は気が付かなかったのですが、二つ上の写真、コンデンサが1つ液漏れしちゃっているのが原因かもしれません。


まぁ、ひとまず動いたので記念にMSX BASIC!


そして、MSX界のWindows的OS、MSX VIEW!Macのハイパーカードみたいなソフトがついていて、絵本アプリを創ったり、Window表示するミニアプリを創ったりしてました。

完璧ではないものの、30周年記念の年に動く姿を再び見られたことがうれしいです。プログラミングの楽しさを教えてくれた、MSX。その精神を引き継ごうと決意を新たにしました。ありがとう、MSX!!

私のプログラミング人生は、MSXで始まりました。
(MSXはOSの一種で、MSX規格に沿ったパソコンがSONY、Panasonic、CANON、CASIOなどいろんなメーカーから販売されていました。)

名古屋に住んでいた小学3年生(1987年)の頃、男の子は誰もがファミコンに夢中でした。 隣のマンションに住む友達が持っていた、ファミコンのゲームが自分で作れるファミリーベーシックに衝撃を受け、親にねだる。 学校から帰ると、なんとそこにはMSX(CANON V-10)が! 名古屋の栄のど真ん中、安さ一番トップカメラの店員さんにこっちの方がいいよと勧められたとのこと。

欲しかったものとは違ったものの、テレビゲームを作ることができるらしいことが分かり、ついてきた説明書を見よう見まねで打ち込んでみる。 ランダムに決まった数字をキーボードで打ち込み当てる、シンプルな数当てゲームが確か最初に作ったゲームでした。 インベーダーゲーム風なものや、お絵かきするものなど、いまいち分からない部分がありながらも、打てば動くこと自体が楽しい。

図書館のMSXコーナーでいろんな本を借りてきては打ち込み、遊ぶ、ということをやっているうちに発見した"MSX FAN"、読者投稿プログラムがたくさん掲載されていました。 中でも、MSXのプログラミング入力画面、40文字x24行にぴったり収まる1画面部門というものが、短いプログラムで楽しめるお気に入りコーナーでした。 ところが、月が進むごとに自分の持っているMSXではスペック的に動かないものが増えていき、また、保存するすべがない(正確にはテープ保存はできたけど成功させられず)点が辛くなってきました。

そんな中登場したのが、MSX 2+(Panasonic FS-A1WSX)。 フロッピー(2DD)で保存できるだけでなく、メモリ量、グラフィック性能が大幅に向上していました。 ただ、値段も高く7万円という金額はとても小学5年生(1989年)のお小遣いでは手が出ません。 そこで、ワープロとしても使えることを親にアピールしつつ交渉し、ファミコンを手放すという条件付きがついたものの晴れて手に入れることができました。 保存ができるようになり、見よう見まねで打ち込むだけだったプログラムも自分で好きなように改造したり、少しずつ自分で作りたいものを作れるようになっていきました。 この頃の力作は、小学6年生の夏休みの自由研究のランダムドットステレオグラム作成ソフト。 一見じゃみじゃみ(福井弁でテレビの砂嵐のこと)の絵を視点を奥にずらすと立体模様が浮かび上がる"ランダムドットステレオグラム"が大好きでした。 パソコンを持っていくことなんてもちろんできず、プリンタもインクリボン式のモノクロだったので、画面をフィルムカメラで撮って、プリントした写真を貼った発表用の模造紙を持って行きました。

この頃のパソコン少年共通の憧れといえば、BASICでは遅すぎる処理を高速化する機械語(マシン語)でした。 MSX FANでのマシン語入門をきっかけに、Z80というMSXに搭載されたマイコンのニーモニック(命令群)に触れ、 手でプログラムからマシン語に変換するハンドアセンブルをノート上で行い、MSXに打ち込み動いた時の感動は今でも忘れません。

中3(1993年)で福井へ引越し、楽しみにしていた修学旅行が福井では中2ですでに終わってしまっていたことを引き換えに手に入れた、MSX製品史上最強のMSX turbo R(Panasonic FS-A1GT)。 MSX FANに掲載の予告がありながらも版権の関係で遊べなかったカードゲームUNOを、自作したのが、私のBASIC歴、最大で最後の作品となりました。 GUIがまだ一般的でない頃でしたがマウス対応、UNOの特殊カードは流暢な英語辞書の音声を借り、残り一枚の時に叫ぶ「ウノ!」は10歳下の妹の声と当時としてはなかなか豪華な作りでした。

中学校の担任の先生にプログラミングをやっているという話をしたら紹介された高専への進学を決め、電子情報工学科に入学。 入学時に全員購入となったポケコン(ポケットコンピュータ、SHARP G-805)が、MSXと同じZ80マイコンだったことと、 当時近所にあった古本屋さんで見つけたポケコンジャーナル(PJ)に掲載されていたMSXとの接続ケーブルの作り方でひらめき、MSXでポケコン用ソフトが作れるC言語の開発環境を作成(MacでiPhoneアプリを作るような感じ)。 ヘビゲームや、砦の攻防をポケコン用に作って、クラス内の友達に配って遊んでいたのが、今思うと現在のモバイルアプリ開発の原体験的でした。

アセンブラより格段に生産性の高いC言語をメイン言語としていく中、プログラムを実行するまでの時間(コンパイル時間)が、高専にあったPC98では一瞬、家のMSX turbo Rでは1分という圧倒的な速度差を訴え、 AT互換機(組み立てDOS/Vパソコン、Pentium90MHz)を買ってもらい、ついに、MSXの卒業となりました(1995年)。 こうして振り返ってみると、今の人生、MSXで決まったようなものですね。 名古屋で母親にMSXを薦めてくれた店員さんと、なんだかんだと4台ものパソコンを買ってくれた親に大感謝です。

今年(2013年)、鯖江のハードオフで見かけたMSX(CASIO PV-7)、中身は新品同様というか未使用品じゃないかと思われる超美品を900円という破格で保護しました。 折しも、MSXが誕生してちょうど30周年の年、改めて、MSXに、また、MSXを支えた多くの人に感謝です。 MSXで与えてもらった感動を、一人でも多くの子供に与えたいと思います。 MSX魂は永遠に不滅です!

Tweet
クリエイティブ・コモンズ・ライセンス
この作品は「Creative Commons — CC BY 4.0」の下に提供されています。
CC BY 福野泰介 - Taisuke Fukuno / @taisukef / アイコン画像 / プロフィール画像