S-OSについて

S-OSとは全機種共通システム(または全機種共通モニタ)の名称です。S-OSは、それほど機種やメーカー間でパソコンの互換性が確保されていなかった時代、その垣根を越えて共通のプログラム・共通のデータが使うことを可能にするシステムソフトウェアとして開発されました。

S-OSにはまた、エディタ・アセンブラ・高級言語のインタープリタやコンパイラ・ゲームやその他ちょっと変わったものまで、豊富なアプリケーションソフトが発表されました。雑誌掲載作品と侮るなかれ、市販してもおかしくないようなレベルのソフトが目白押しです。

最初はソフトバンク刊のOh!MZおよびOh!Xという、いち雑誌の企画でした。休刊までの9年半にわたる連載は、雑誌の枠すら越え、実に広大な世界を生み出しました。それゆえ、今でも根強いファンが存在しています。

8bitパソコンという箱庭を楽しむのに最適なソフトウェアと言えるのではないでしょうか。

今でこそ、Windowsさえ動いていればどんなメーカーのどんな機種のパソコンでも、同じソフトを動かせますし、データを自由にコピーや移動したりできます。しかしパソコン黎明期の1980年代はそうではありませんでした。発展途上のパソコンは毎月のように新機能をひっさげて新機種が登場するし、まだまだ高価だったパソコンをなんとか手にしてもらおうと機能や性能を削った廉価機種を発売していました。もちろんメーカーとしてもユーザー獲得のための独自機能を搭載したり…当然そんなことをしたら、同じメーカーの製品であっても過去から最新機種まで100%の互換性を保証することは難しくなります。新製品が発売される毎に、互換性の乏しい機種が増える。旧機種との互換性の高さが新機種の宣伝文句になる、そんな時代です。

しかし、互換性がないのが当たり前の時代でも、当時のパソコンの多くがザイログが開発したZ80というCPUを採用しており、動作周波数の違いはあれど同じプログラムが動く可能性を秘めていました。違っていたのはI/Oの部分だったのです。

そこでS-OSでは、機能呼び出しルールを統一するために各機種のBIOSに相当するマシン語モニタに対してラッパーをかませました。さらに共通文字コードを定義したり、ワークエリアの使い方も揃えることで失われていた互換性を確保することに成功しました。テープとディスクのフォーマットも共通仕様の物を定めることで、異機種間のデータの融通をも可能にしました。

別にこれは、それまでもデジタルリサーチが開発したCP/MというOSによって実現していたことでした。しかしCP/Mはそれ自体が高価で、さらにアプリケーションソフトも同じくらい高価であったがゆえによほどの上級者でもない限り普及しているとは言い難い状況でした。S-OSは雑誌の連載記事として掲載されたので、数百円出してOh!MZやOh!Xを買えば手に入れることができました(もちろんがんばってダンプリストを入力しないといけませんが)。MZ-700やMZ-1500にはCP/Mが移植されていませんでしたから、そういった機種のユーザーにとってはCP/M以上の価値があったとも言えるでしょう。

S-OSを使えばCP/Mがなくてもアセンブラやエディタ、それにLispやPrologといったちょっと変わった高級言語をも動かすことができる。そんなところに魅力を感じた読者は少なくなく、S-OSのユーザーとなった人が多数集まるようになりました。人が集まればそれだけアイデアの数も増えます。そうやって生まれ投稿されたソフトウェアがさらに人を呼ぶ…そんな好循環が生まれたのです。

そして、その魅力的なソフトウェア群がメーカーや機種を越えてどれでも同じように動くのです。異機種ユーザーが仲間になる…なんと痛快なシチュエーションでしょう。そういった、環境(S-OSが移植されていること)とアプリの相互作用が、S-OSのいいところだと思います。

「S-OS」という名前ではありますが、"MACE"および"SWORD"の発表時にはS-OSのことを「全機種共通モニタ」のように呼び、OSやオペレーティングシステムという言い表し方はしませんでした。その後の様々な記事においても、基本的にはS-OSについてマシン語モニタであるという扱いは変わらなかったように思います。これは、そもそも各機種のマシン語モニタを前提に動作するアプリケーションを共通化するために拡張したという経緯から来るものなのでしょう。

しかしOh!MZ 1986年8月号の特集「オペレーティングシステム」を読んでみると、当時すでに編集部やライターの認識としてS-OSをOSとして捉えている節が伺えます。「OSの現状と問題点」という記事ではOSの定義はあいまいでUNIXとマシン語モニタはどちらもOSであると言えるとし、本来OSの意義としてソフトウェア・バスの役割があると指摘します。この号の時点でPC-8801用とSMC-777用を発表しているS-OSは十分ソフトウェア・バスの機能を持っており、この記事に則ればS-OSもまた立派なOSと言えるでしょう。だからなのか、この記事の冒頭でも、また後のページのコラムでも、S-OSをOSとして扱うような書きっぷりが見られます。

当時S-OSをOSとして認めがたい理由としては、ファイルなどへの1文字入出力がOSレベルでサポートされていないなど、OSならばあってほしい機能が備わっていなかったことが挙げられます。そしてどうやら"SWORD"からのバージョンアップとしてそういった機能のサポートが度々検討されていたようです。

結局のところ、1文字入出力はテープデバイスのことを考えると一般的な形での実装は難しく、必要ならアプリに組み込めばいいじゃないかという意見が勝ってみたり、タイムスタンプのサポートがない代わりに別の形で同等の機能を実現してみたりと、ここまで機能強化されれば文句なくOSと呼べるなどというようなアップデートがなされないままになってしまいました。それもまた、「S-OSはOSなのか」と問いたくなる背景と言えるでしょう。

8bit時代末期においては、高価でわざわざ使いたいアプリが限定的にしか存在しなかったCP/Mがそれほど普及しなかった(MSX-DOSを除く)のに対して、S-OSはそれを凌ぐユーザー数を獲得していたと考えられていることからしても、OSと呼んで差し支えないのではないかと思います。OSとはとても呼べないものにOSが負けた…みたいな話は情けないですしね…。

「S-OS」に続くダブルクォーテーションに囲まれた単語は、バージョンを表します。MacOS Xが動物や山の名前をバージョンとして名付けているのに似ていますが、S-OSでは数値をバージョンとして全く呼称していません(注:システムコールにて数値でバージョンを知ることは可能)。

Oh!MZ誌1985年6月号にて最初に発表されたものは「S-OS"MACE"」と名付けられていました。以後、

"AXE"
"SWORD"
"LONG SWORD"

と発展していくはずでした。

このバージョン名は、RPGで主人公が使う武器から取られています。MACEとは「闘棍」のことで、武器として攻撃力が少ない=S-OSとしてまだできることが少ないことを意味して採用されたようです。そしてAXE、SWORD…とどんなふうになるかはわからないけど成長していってほしい、という願いを込めてこういう名前になったそうです。

そのように想定されたバージョン名ですが、実際には"AXE"は登場せず、ひとつ飛ばして"SWORD"と名付けられました。元々は1985年8月号にてディスク対応バージョンが発表される予定だったのですが、反響と要望の多さにより延期してさらに多くの改良を加えた結果、"AXE"が欠番ということになったそうです。

また、"SWORD"以降のバージョンアップも行われることはありませんでした。1987年5月号の「変身セット」を取り込んでバージョンアップとしても良かったのではないかと思いますが、読者投稿扱いに留まりました。

もし、"SWORD"の次があったらどうなっていたでしょうか。もっと立派なOSとして備えていてほしかった機能なんかもいろいろあったりするでしょう。でも2FFFhまでのエリアには潤沢と言えるほどの空き領域はありません。ユーザーエリアを侵食するのは避けたいですしね。互換性を維持しながら新機能を増やすのはきっと大変だったでしょうね…。

なお、「S-OS」の方の由来は明らかになっていません。MZとX1用に発表されたOSなのでシャープOSだとか、救難信号のSOSをもじったとか、いろいろな説はありますが公式にコメントされないまま今に至ります。

S-OSを開発したのはOh!MZ編集部とライター陣です。

S-OSには前日譚があります。
Oh!MZ 1985年1月号に、EDASMというエディタ・アセンブラが特集記事として発表されました。対応機種はMZ-80K/C/1200、MZ-700/1500、MZ-80B/2000、X1とシャープの8bitパソコンのほとんどをカバーしており、同じソースをアセンブルできるだけでなく、共通フォーマットのテープを読み書きできて、異機種間のデータの交換が可能になっていました。

この実現のため、エディタ・アセンブラのハード依存部を分離して各機種ごとに開発し、共通部と組み合わせてそれぞれ用のEDASMを作るという手法を採っていました。おそらくこの過程で共通モニタというものに対して実現性を確信し、企画が立ち上がったのだと思われます。EDASMには後に特殊ワークエリアと呼ばれる機能も実装されており、確かにS-OSのベースになったのだと確信させてくれます。

EDASMの特集の扉ページにて、編集部はCommon I/O System (CIOS、共通I/Oシステム)の企画を予告し賛同を募りました。これこそがS-OSであり、大きな反響を得て1985年6月号の"MACE"掲載へと至るのです。

サポート機種一覧のページをご覧ください。あなたがお持ちのパソコンがリストにあるか確認できます。Z80用のシステムでありながら、エミュレータ(シミュレータ)によってZ80以外のCPUを搭載したパソコンにも移植された例があるなど、意外な発見があるかもしれませんよ。

そもそも、ソフトバンクの雑誌「Oh!」シリーズは、メーカー/ブランドに特化した記事ばかりにすることで購買層を限定し、広告主からはターゲットが明確になるメリットを狙って創刊したと推測されます。つまり本来Oh!MZやOh!Xはシャープのパソコンのユーザーや予備軍だけが買う雑誌でした。

ところがS-OS"SWORD"が登場し、シャープ以外のパソコンに移植されたことでS-OSの記事を目当てに他メーカー製パソコンユーザーの読者が多数現れました。本来の狙いとは異なる現象です。他のOh!シリーズではそんなことは起こりませんでしたから、S-OSという企画がいかに特異かを物語っていると思います。

ただ個人的な経験としては、S-OSのおかげで「他機種の記事だから読む価値はない」という意識は薄くなりました。S-OSの記事目当てで購読するシャープ製以外のパソコンユーザーも、ハードの違いは脇に置いて参考にできることがあると気づいた人がいたんじゃないかと、勝手に想像しています。

まず、EDASMを発端とした企画であったこともあり、マシン語開発ツールが充実しています。手軽に使えるアブソリュートアセンブラだけでなく、リロケータブルオブジェクトを出力する本格的なアセンブラもあれば、掟破りの超多機能マクロアセンブラなんてのもあります。

プログラミング言語もバリエーション豊富です。Lisp、Prolog、Forth、そしてBASICはもちろんのこと、シンプルな記号言語、Algol系構造化言語、ついにはC言語まで開発・移植されました。

そして、ゲームも忘れてはいけません。表現力の問題から対話型ゲームばかりになるかと思いきや、アクションゲームも多数あります。共通のキャラクタでここまでできるのかと唸らされます。

9年半も続いた連載で毎号のように発表されたのですから、膨大な数のアプリを簡単に紹介することなど不可能です。ぜひ~にてどんなアプリケーションがあったか見てみてください。

S-OSの連載では、そのプログラムなどのダンプリスト(バイナリ値の羅列)の他に、ソースリストも掲載されることが常とされていました。当時の雑誌では、マシン語のプログラムはダンプリストのみの掲載になるのが普通だったところにソースリストを併載するのは異彩を放っていました。

もちろんほとんどの読者はダンプリストを入力するのみで、ソースリストまで入力している人はまれでした。だったらなぜソースリストを掲載していたのでしょうか?

それはズバリ、プログラミングの学習のためです。完成している誰かのプログラムを読んでみることが、プログラム習得には大きな力となります。プログラムを改造するにも、ソースリストは役に立ちますね。

オープンソースソフト(OSS)の定義や歴史を見ると、学習はOSSの目的のひとつに過ぎませんし、S-OSが歴史のピースのひとつになっていたりもしません。S-OSが始まったのは日本にOSSの概念がほとんど認知されていなかった時代ですし、そういう時代になってもS-OSをOSSであると正式に定義することもありませんでした。

ただ、あくまで学習目的であったとしても雑誌としては大きな使命のひとつであるわけで、このソース同時掲載の形式はOh!MZ/Oh!XにおいてS-OS以外の記事にも広がることになりました。

そういうことですので、S-OSはOSSの形態を取ってはいたものの、正確にはOSSではないということになります。

sentinelを辞書で引くと「歩哨」とか「哨兵」という意味が出てきます。そしてTHE SENTINELはS-OSの連載記事の扉ページのタイトルとして掲げられた言葉です。S-OSシステムの発展を監視する者、という意味があるようです。このサイトも、S-OSの行く末を見守るつもりでタイトルをいただきました。

パソコン雑誌を買っても所有する機種・買いたいと思う機種の記事しか読まなかったりしたあの当時、S-OSの企画は「パソコンの世界はもっと広いものだ」と気づかせてくれるものだったと思います。きっと同じような感想を抱いた人が他にもいると信じて、単に懐かしむだけでなく、実際に動かして楽しめる(もしかすると役に立つ)サイトとして設置しました。

今や8ビットパソコンは箱庭のようなものです。S-OSの世界に触れることで、あなたのパソコンライフがより充実したものになることを願っています。
(C)1998-2024 Oh!Ishi,Nibbles Lab.