行番号BASICの終焉


2017.1.6更新

プログラミング言語の初期のBASIC言語を仮に行番号BASICと呼ぶことにします。
行番号を付けないと記述できなかったからです。
MSXパソコンのMSX-BASIC、PC-9800シリーズのパソコンのN88-BASICなどが行番号BASICです。
後にBASICは行番号を取り払って進化し今ではマイクロソフトのVisual Basic.NETという言語が唯一、BASICの名残りを多く持つメジャーな言語として生き残っています。
超マイナーなBASICなら行番号BASICも含めて今でもたくさんあります。

なぜ行番号が必要だったのか?
それはBASICを作った人の勝手であって本当のことは分かりませんが推測してみます。
パソコンのROMにBASICが内蔵されていてディスク装置がなくても動作するようになってました。
テキストエディタでファイルを作って保存ということがディスク装置がなくてメモリが少ないシステムでは難しかったと思います。
(メモリが多ければRAMディスクは作れたと思います。)
上下にスクロールする普通のテキストエディタとそのためのファイルシステムを作るのは難易度が高いです。
初期の初期のコンピューターはメモリが限られていてBASIC言語を搭載するROM容量もワークエリアのRAM容量も限られていました。
速度や容量の問題からアセンブリ言語またはマシン語で作る必要がありました。
ビデオ性能も低く文字表示も遅かったと思います。
低機能パソコンでは上下にスクロールするような普通のテキストエディタをROMに内蔵するのは容量的に困難です。
Windowsで言うメモ帳とか、UNIXでいうviのようなスクリーンエディタは昔の行番号BASICのパソコン(マイコン)には付いていなかったのです。
行番号を使うことでしか文字を入力できないというテキストエディタ(というか入力方法)を行番号BASICは採用しました。
行番号を付けないと複数行のブログラムの入力ができないので行番号を付ける以外にしょうがありませんでした。
その代わり、ディスク装置がなくても動くという利点が当初はありました。
(MSXの場合、保存はラジカセつないで音楽用カセットテープにとか。)
高性能な32ビットパソコンになっても行番号を使うしかない行番号BASICが残っていたのは互換性をひきずったのと、MS-DOSというOSが普及していたのでもう行番号取って大改造加えるほどの価値がOSとしてのBASIC-ROMにはなかったから放置されたのだと思います。
ディスク装置が付いていて当たり前の時代になると、ディスク装置がなくても動作するのが利点の古典的環境のBASICの需要はなくなりました。

宿敵のライバル、MS-DOS
MS-DOSはOSですが、行番号BASICはOSを含んでいた言語と言えます。
一般的にはBASICがOS扱いされることは少ないですが。
ついでにBASICは行番号で書くという変なテキストエディタも含んでいました。
MS-DOSのフロッピーディスクを入れて電源を入れるとMS-DOSが起動して行番号BASICは使えない状況になります。
行番号BASICのライバルはMS-DOSでした。
簡単に言うと、行番号BASICは、パソコンのROMに内蔵されたOS兼テキストエディタ兼プログラミング言語で、MS-DOSはフロッピーディスクに書かれたOSでした。
フロッピーディスクのみで運用している時代にはフロッピーディスクを抜いて電源を入れると行番号BASICが起動するわけですし、フロッピーディスクドライブを買えない貧乏人とか、MS-DOSを買えない貧乏人も居なくはなかったのでまだ行番号BASICには存在感がありました。
マイクロソフトはMS-DOS上で動くQuickBASICという行番号無しBASICを販売していて、BASICファンには有料で行番号無しBASICに乗り換えるという選択肢がありました。
また、PC-9800シリーズのユーザーでBASICを使いたい人はN88-日本語BASIC(86)(MS-DOS版)を有料で買って使う方法もありました。

ハードディスクの普及で大ピンチ
フロッピーディスクのみで運用している時代にはフロッピーディスクを抜いて電源を入れると行番号BASICが起動しました。
しかし、ハードディスクにMS-DOSをインストールするとフロッピーディスクを抜いていもMS-DOSが起動します。
ハードディスクはフロッピーディスクのように頻繁に抜き差しすることはありません。
ハードディスクにMS-DOSをインストールするというのは世界標準的なこととなり(機種にもよるが)誰しもそうしていました。
これによりBASICがROMに内蔵されていることに気づきにくくなりました。
BASICが内蔵されていることを知っていても、わざわざMS-DOSを終了してまでBASICに切り替えたくなる場面はあまりありませんでした。
PC-9800シリーズではBASICのシステムディスクやBASICのマニュアルが(時代や機種にもよるが)添付されていたと思います。
例えば、1989年発売のPC-9801RX21には、
N88-日本語BASIC(86)(Ver6.1)ユーザーズマニュアル
N88-日本語BASIC(86)(Ver6.1)リファレンスマニュアル
N88-日本語BASIC(86)入門
N88-日本語BASIC(86)システムディスク
N88-日本語BASIC(86)辞書ディスク などが無料で付属品として付いて来ました。
この無料のN88-BASICはMS-DOSフォーマットのディスクを読めず、MS-DOS側からは逆にN88--BASICフォーマットのディスクを読めず、MS-DOSを使っている人にとってはとても使いにくいものでした。
PC-9800シリーズのユーザーでBASICを使いたい人はMS-DOSとの相互運用のためにN88-日本語BASIC(86)(MS-DOS版)を有料で買って使う方法もあるにはありました。
N88-日本語BASIC(86)(MS-DOS版)では、MS-DOSフォーマットされたハードディスクにインストールできてMS-DOSフォーマットのディスクの読み書きができたのです。
しかし無料で標準が利点のはずのBASICが有料で非標準となるとC言語のほうがいいんじゃないかという気がしました。
どうしてもBASICがいいと言う人もMS-DOS上で使うなら行番号無しに進化したマイクロソフトのQuickBASICのほうがはるかに使い勝手が良かったと思います。
行番号無しBASICは過去のBASIC資産を利用しにくく、マイナー言語なので他のOSでは使えず、C言語の台頭で将来も期待できる状態ではなかったですが。
実際に、BASIC系でメジャーな言語として現在まで残ったのはVisual Basic.NETだけでしかも行番号BASICと比べると名残りしか残っていません。

DOS/Vの登場と普及でさらにピンチ
国産パソコンは内蔵ROMにいつまでも行番号BASICを内蔵していました。
しかし海外仕様のパソコンは時代遅れの行番号BASICを内蔵しなくなりました。
海外仕様のパソコンが日本に入ってくるのを防いでいたものは漢字ROMの有無でした。
漢字を表示できないパソコンは日本ではゴミだったので漢字ROMのない海外パソコンはあまり使われてきませんでした。
しかし、DOS/VというMS-DOSの一種では漢字ROMがなくても漢字を表示することができるようになり、国産パソコンでなくてもいいじゃんという状況になりました。
DOS/Vは1990年に登場に徐々に普及していきました。
しかし、既に出回っている国産パソコン向けのソフトは海外パソコンでは動作しないものも多かったためまだ国産パソコンも戦える状況ではありました。
同じMS-DOSのソフトであってもグラフィックなどの機種固有の機能を使ったプログラムは別の機種では動かなかったのです。

最後まで行番号BASICが主流だったMSX
MSXというパソコンはハードディスク搭載機種が最後までなくフロッピーディスクドライブが付いていない機種までありました。
MSXにもMSX-DOSというMS-DOSのようなOSがありましたが、個人でプログラムを作る場合はBASICが最後までずっと主流でした。
しかし、大手メーカーがMSXの新機種を発売したのは1991年が最後。
MSXの雑誌のMSX magazineは雑誌としては1992年が最後。(かなり後にムックが三回)
行番号BASICを大きく取り扱うMSX雑誌のMSX・FANは1995年8月号が最後。
1995年ごろでMSXは終わった感じです。

Windows 95の登場でもはや終わりか
DOS/Vの攻勢にも耐えて生き残ってきた国産パソコンですが、Windows 95の登場で国産パソコンである必要がゼロになりました。
国産パソコンでは動くがDOS/V機では動かないというMS-DOSソフトはありましたが、海外仕様のパソコンで動かないWindows 95ソフトというものは基本的にはありません。
また、新しいOSの前には過去のソフト資産の優位性というものもなくなります。
富士通などの国内メーカーも海外仕様(世界標準仕様)に切り替えて行番号BASICのROMを削除しました。
それでもNECはまだ少しの間は国産パソコンにWindows 95を載せて頑張りました。
当時マイクロソフトはWindows用にVisual Basicという行番号無しBASICを販売していたので、BASICファンには有料で行番号無しBASICに乗り換えるという選択肢がありました。
Visual Basicは2001年のVisual Basic.NETへの変化の時に大きく仕様を変えました。

PC-9800シリーズの最後
1997年にNECもついに海外仕様(世界標準仕様)のPC98-NXシリーズを発売。
PC98-NXでは行番号BASICのROMは削除されました。
PC-9800シリーズ(PC-9821含む)も一応買えないこともない状況が続きましたが今までのように普通に買えるものではなくなり2003年に受注販売の受注を停止して終了しました。

マイコンBASICマガジン
MSX・FANのように読者が投稿した行番号BASICプログラムを載せる雑誌でした。
PC-9800シリーズのパソコンがメインだったと思います。
MSX・FAN無き後もPC-98NXが登場してからも販売し続け2003年五月号まで販売しました。
2003年が行番号BASICの最後と考えていいと思います。
最後辺りの号に行番号BASICの記事が載っていたかどうかは知りませんが。

今も残っている行番号BASIC
メジャーな環境からは消え去った行番号BASICですが、ものすごくマイナーな環境としては生き残っていますしこれからも残るでしょう。
MSXパソコンそのものを再現するMSXエミュレーターやその他、たくさんの行番号BASICインタプリタがあると思います。
MSX-BASICはエミュレーターで簡単に動かせるけども、N88-BASICを動かすのは難しいかも知れません。
N88-BASIC互換を謳うソフトは複数ありますがどの程度の互換や性能があるのか疑問があります。
ものすごくマイナーな環境になるので新規開発に使うのはおすすめできません。

Visual Basic.NET
現役の行番号を使わないBASIC系言語です。
一応はBASICの一種だとは思いますが行番号BASICとはかなり違うものだと思います。
2001年のVisual Basic 6から、Visual Basic.NETへの変化で仕様が変わりすぎてついていけなくなった人も多いのではないかと思います。
BASIC系言語では最もメジャーであってもプログラミング言語全般で言うとマイナーなほうです。
C++やC#などの他の言語を使うべきだと思います。


MSX (パソコン)


あーすブラウザ
オンライン鍋田辞書
鍋田辞書トップ