任天堂 Wiki
Advertisement

ファミリーベーシックとは、任天堂ファミリーコンピュータ周辺機器の一つ。BASIC言語を組み込んだロムカセットと、ファミコン本体のエキスパンドコネクタに接続するキーボードの2点がセットになっている。

概要[]

仕様[]

前述の2点をファミコン本体に接続することにより、BASICの文法に基づいた簡単なゲームプログラムを自作することができるようになる。組み込まれているプログラミング言語の固有称は、ハドソン開発のHu-BASICを元に、任天堂シャープとの3社共同開発だったことから頭文字を付け、「NS-Hu BASIC」とした。ただし、最終的にはファミコンに大幅に特化したため、パソコン用のHu-BASICとは大きく異なる[2]

プログラム実行のために使えるメモリ容量は1,982バイト、バージョンアップ版の「ファミリーベーシックV3」では4,096バイトであり、カートリッジ内にSRAMで実装され、乾電池によってバックアップすることが可能になっている。

キーボードの配列は、アルファベットに関しては現在のパソコンやタイプライターと同様のいわゆる「QWERTY配列」だったが、カナ配列に関しては現在の一般的なキーボードと異なり五十音順に並んでいる。[3]

機能[]

ファイル:NintendoDataRecorderContents.png

専用データレコーダ

メインモードである“GAME BASICモード”でゲームプログラミングを行う。それ以外にも計算式入力による電卓機能の“カリキュレータボード”、音階入力による音楽制作機能の“ミュージックボード”、ワードプロセッサのような機能を持つ“メッセージボード”、バイオリズムに基づいた簡単な占いと生誕からの総経過日数の算出をする“占い”の4つの機能が内蔵された。

また、各モードに移行するイントロダクション画面もまるでコンピュータが話し掛けてくれるような親しみやすい画面に作られている。これはファミコンのユーザーが小学生中心だったことから、ベーシックに触れるにあたりいきなりハードルが高くなり過ぎないようにとの配慮と考えられる。

「ゲーム制作体験のためのBASIC」という方向性のためか、GAME BASICモードでは整数演算のみで小数点以下切り捨て、扱うことのできる整数の範囲も−32768~+32767、文字列の長さは31文字まで、ドット描画機能なしといった機能制限がある。その一方で、あらかじめ定義されているキャラクター群を自由に組み合わせることにより非常に簡単にスプライトキャラクターや背景画を作ることができ、煩雑で面倒になりがちな作業を一手に引き受ける簡易性がファミリーベーシックの大きな特徴となっている。ステートメントや関数など、必要となる標準的なBASIC言語命令も大方備わっている他、直線的な動きであれば簡単にスプライトキャラクターを定義し動かせる MOVE 命令など、独自の命令が多数備わっている。 反面キャラクタセットは、ROMにあらかじめ定義され変更できず、用意されたキャラクタの分割、反転などによってパーツ単位で再生成するなどの工夫を迫られた。

素直に記述したBASICのプログラムでは、遊べるゲームを作ることは大変困難ではあったが、コンシューマ機用のツールで削除されがちなPEEKPOKECALL などメモリに直接アクセス可能にする命令もあり、機械語を駆使してファミコンの機能を引き出したゲームも存在している。これに関しての詳細や応用の仕方はセット添付の取扱説明書や公式の解説書には書かれていないが、当時のファミコン雑誌やゲームプログラミング雑誌ではファミリーベーシック自作ゲーム投稿コーナー等でこれを用いた様々な応用法が紹介され、情報として流通しコアなユーザー層に知られていた。公式に利用可能なメモリは既述されているとおり、大変少なく、末期には、スタックエリアの一部、BASIC自身が使うワークエリアの一部、VRAMの一部まで活用された。プログラム自体も可読性よりも密度を重視したものが多く作られ、省略可能なセパレータ、スペース、命令、コメント、同一変数の使いまわしなど、削れるものは削り、バイナリデータのベタ書きなど、処理を押し込む工夫が見られた。

ハードウェア的に改造を行い、メインメモリであるSRAMを大きな容量の物と交換する試みもユーザによって行われた。 BASIC自体から純正品と同じように利用できる空間はワークエリアの書き換えにより4KBまで可能になり、残りのエリアもバスに接続されていれば、CPUからは認識することが可能で、電池によってバックアップもされる。

データの保存(SAVE)及び保存したデータの読み込み(LOAD)にはカセットテープを使用する。テープへの読み書きには別売りの専用データレコーダもしくはモノラル録音再生のテープレコーダが必要。この機能は市販ゲームプレイ時にキーボードとデータレコーダを接続することで、自作ステージデータ、セーブデータの保存用ツールとして応用された。

データレコーダ対応ソフト

また、ROMカセットに一時的にバックアップをする機能も備わっている。

後継機種[]

GAME BASICモードに特化したアップバージョン版『ファミリーベーシックV3』が1985年2月21日、9,800円で発売。プログラム実行メモリ容量は4,096バイト。ファミリーベーシック専用カセットとして、カセットのみの単体売りという形で、キーボードは下位のセット売りバージョンから流用する。

その他[]

  • 頻繁な抜き差しによってファミコン本体のROMカセット接続部が緩んでいる場合、ベーシック用ROMカセットに指が触れた途端にフリーズしデータが失なわれるという「事故」も日常茶飯事だった。また、ベーシック用ROMカセットは一般的なゲームカセットに比べ約2倍という背の高さで、加えてバックアップ用の電池ケース部位がカセット上方にあり、乾電池を入れている場合重心が非常に高くなるということや、バックアップ用のスイッチが手動で、これを操作するためにはカセットに触れる必要があることなどもデータ損失の「事故」が起こる要因と考えられる。また、当時はロムカセット用の接点復活剤が普及していなかった。
  • プログラム実行のために使えるメモリ容量がかなり限られていたため、非常に簡素なゲームプログラミングしかできなかった。4つのその他機能を排してゲームプログラミング用にメモリ容量を確保したV3に至っても機能的には十分とは言えず、売上げとしては不振のままに終わった。しかしその一方で、制限のある中で創意工夫し、いかにクオリティの高いものを目指すかということに果敢に挑戦する者たちは多かった。前述したゲーム雑誌各誌のプログラム投稿コーナーもプログラマー少年たちが努力の成果を公に向け発表する場として機能し、毎回賑わいを見せていた。
  • 一部の企業からは非ライセンス商品として、ディスクシステムから起動するBASICが発売されていた。
  • 北米向けにはキーボード内蔵の『Advanced Video System』が試作されたが、結局発売されず、代わりに『Nintendo Entertainment System』が発売された。
  • ファミコンテレビC1用に、『PLAYBOX BASIC』というほぼ同機能のカートリッジソフトと、専用のキーボードがある。これにはメッセージボードが無く、代わりにバイオリズムが追加されている。
  • MSXをはじめとするホビーパソコンでは、キーボード自体をゲーム用コントローラーとして使用できたが、ファミリーベーシック用のキーボードはゲーム用コントローラーの代用として使用することが出来ず、またキーボード対応のゲームが発売されなかったのが売り上げ不振の原因のひとつにもなっている。

バージョン[]

4つのバージョンが存在することが確認されている。V1.0 のバージョンアップ版である V2.0A 及び V2.1A はカセットのみの単体売りはされていなかった模様。また、ROMカセットの色は黒が基本だが、V3.0 のみワインレッド色の外装で成型されている。

V1.0[]

最初に発売されたバージョン。

V2.0A[]

SCR$関数が追加。

V2.1A[]

V2.0Aのバグが除かれたものとされる。

V3.0[]

1985年2月21日、9,800円で発売された。カリキュレータボードや占いなどの機能を排し、GAME BASICモード向けにメモリ容量を拡張。CRASHAUTOON ERROR GOTO 等多数の新規命令が追加。サンプルプログラムも4つのゲームが収録されており、BASICの命令によりRAMに呼び出すことができる。しかし実行のために使えるメモリ容量が相変わらず小さいため(4キロバイト)、中途半端なプログラムしか作れないことが多く、さらにゲームデータの誤消去が発生し易いため機能的には十分とは言えず、これも不振のまま終わった。

ファミリーベーシックと同様、ハドソンSHARPの共同開発。

サンプルプログラムとして収録されたのは、以下の4つである。GAME 1 と GAME 2 は、BG グラフィックをエディタで編集することで、簡単にステージを改造できる。

GAME 0
ハート(コントローラIIのマイクに息または声を入力し、画面上のハートマークを塗りつぶして完成させるゲーム)
GAME 1
ペンペン迷路(ペンギンを操作し、カニさんを避けながら、格子状の道に配置された数字を順番に拾っていく)
GAME 2
マリオワールド(マリオを左右移動・ジャンプ・はしごの昇降で操作して、ニタニタに触れないように落ちているリンゴと数字を拾う。数字は順番に拾わないと得点にならない)
GAME 3
スターキラー(自機を8方向に移動させて操作するシューティングゲーム。2人同時プレイも可能。スクロールはしないが、画面の上下左右がつながっている)

脚注[]

  1. 小島郁夫『風雲ゲーム業界戦国時代―任天堂、セガの2強時代は続くのか? 切り崩しを図る第3勢力とハイテク・メーカーの陣地争い』オーエス出版、1994年、74頁。ISBN 4-87190-391-5
  2. ニコニコ動画内「ゲッチャ」高橋名人世代、2011年1月5日放送分の8分40秒頃から
  3. 同様のカナ配列はMSXにもみられる。

関連項目[]

  • データレコーダ
  • マイコンBASICマガジン
  • ファミリーコンピュータMagazine

fi:Famicom BASIC

Advertisement