ファミリーベーシックファミリーベーシックとは、任天堂が1984年(昭和59年)6月21日に発売したファミリーコンピュータの周辺機器の1つ。BASIC言語を組み込んだロムカセットと、ファミコン本体のエキスパンドコネクタに接続するキーボードの2点がセットになっている。2点をファミコン本体に接続することにより、BASICの文法に基づいた簡単なゲームプログラムを自作することができるようになる[2]。最終的にはファミコンに大幅に特化したため、パソコン用のHu-BASICとは大きく異なる[3]。プログラム実行のために使えるメモリ容量は1,982バイト、バージョンアップ版の「ファミリーベーシックV3」では4,086バイトであり、カートリッジ内にSRAMで実装され、乾電池によってバックアップすることが可能になっている。HVC-007キーボードの配列は、アルファベットに関しては現在のパソコンやタイプライターと同様のいわゆる「QWERTY配列」だったが、カナ配列に関しては現在のパソコンで主流のJISキーボードと異なり、五十音順に並んでいる[4]。BASICモード”でゲームプログラミングを行う。それ以外にも計算式入力による電卓機能の“カリキュレータボード”、音階入力による音楽制作機能の“ミュージックボード”、ワードプロセッサのような機能を持つ“メッセージボード”、バイオリズムに基づいた簡単な占いと生誕からの総経過日数の算出をする“占い”の4つの機能が内蔵された。各モードに移行するイントロダクション画面もまるでコンピュータが話しかけてくれるような親しみやすい画面に作られている。「ゲーム制作体験のためのBASIC」という方向性とそのハードウェア仕様によって、一般的なBASICとは異なる部分を多く含む。BASICモードでは整数演算のみで小数点以下切り捨て、扱うことのできる整数の範囲も-32768から+32767まで、文字列の長さは31文字まで、ドット描画機能なしといった機能制限がある。その一方で、あらかじめ定義されているキャラクター群を自由に組み合わせることにより非常に簡単にスプライトキャラクターや背景画を作ることができ、煩雑で面倒になりがちな作業を一手に引き受ける簡易性がファミリーベーシックの大きな特徴となっている。命令など、独自の命令が多数備わっている。キャラクタセットはROMにあらかじめ定義され変更できず、用意されたキャラクタの分割、反転などによってパーツ単位で再生成するなどの工夫を迫られ、ピクセル単位での描画機能はグラフィックスプレーンを持たずBGプレーンしかないファミコンの仕様と、そのパターンが前述のとおりROMに定義されている仕様から不可能であった。多くをROM上に置く設計であったため、本体側の主記憶も少なくカートリッジ上の物を足しても実際にプログラムを書き込める容量が非常に少ないこともまた、特徴的な制限のひとつである。メモリに直接アクセス可能にする命令もあり、機械語を駆使してファミコンの機能を引き出したゲームも存在している。これに関しての詳細や応用の仕方はセット添付の取扱説明書や公式の解説書には書かれていないが、当時のファミコン雑誌やゲームプログラミング雑誌ではファミリーベーシック自作ゲーム投稿コーナーなどでこれを用いた様々な応用法が紹介された。それら媒体や活用例の流布がコアなユーザーへ情報として伝わった。公式に利用可能なメモリは既述されているとおり大変少なく、末期にはスタックエリアの一部、BASIC自身が使うワークエリアの一部、VRAMの一部まで活用された。プログラム自体も可読性よりも密度を重視したものが多く作られ、省略可能なセパレータ、スペース、命令、コメント、同一変数の使いまわしなど、削れるものは削りバイナリデータのベタ書きなど、処理を押し込む工夫が見られた。ハードウェア的に改造を行い、メインメモリであるSRAMを大きな容量のものと交換する試みもユーザによって行われた[6]。ワークエリアの書き換えによりBASICからも純正品と同じように4KiB弱まで利用でき、残りのエリアもバスに接続されていればCPUからは認識することが可能で、電池によってバックアップもされる。プログラム自体はROMカートリッジに一時的に記録できる他、データの保存(SAVE)および保存したデータの読み込み(LOAD)にはカセットテープを使用する。テープへの読み書きには別売りの専用データレコーダもしくはモノラル録音再生のテープレコーダが必要。この機能は市販ゲームプレイ時にキーボードとデータレコーダを接続することで、自作ステージデータ、セーブデータの保存用ツールとして応用された。BASICモードに特化したアップバージョン版『ファミリーベーシックV3』が発売された。プログラム実行メモリ容量は4,086バイト。ファミリーベーシック専用カセットとして、カセットのみの単体売りという形で、キーボードは下位のセット売りバージョンから流用する。背の高い専用カセットに電池をセットしなければならず、非常に不安定である。頻繁な抜き差しによってファミコン本体のROMカセット接続部が緩んでいる場合、ベーシック用ROMカセットに指が触れた途端にフリーズしデータが失なわれるという「事故」も頻発した。ベーシック用ROMカセットは一般的なゲームカセットに比べ約2倍という背の高さで、加えてバックアップ用の電池ケース部位がカセット上方にあり乾電池を入れている場合重心が非常に高くなるということや、バックアップ用のスイッチが手動でこれを操作するためにはカセットに触れる必要があることなどもデータ損失の「事故」が起こる要因と考えられる。当時はロムカセット用の接点復活剤が普及していなかった。プログラム実行のために使えるメモリ容量がかなり限られていたため、非常に簡素なゲームプログラミングしかできなかった[2]。4つのその他機能を排してゲームプログラミング用にメモリ容量を確保したV3に至っても機能的には十分とはいえず、売上げとしては不振のままに終わった。その一方で制限のある中で創意工夫し、いかにクオリティの高いものを目指すかということに果敢に挑戦する者たちは多かった。前述したゲーム雑誌各誌のプログラム投稿コーナーもプログラマー少年たちが努力の成果を公に向け発表する場として機能し、毎回賑わいを見せていた。一部の企業からは非ライセンス商品として、ディスクシステムから起動するBASICが発売されていた。System』が発売された。BASIC』というほぼ同機能のカートリッジソフトと、専用のキーボードがある。これにはメッセージボードがなく、代わりにバイオリズムが追加されている。雑誌「マイコンBASICマガジン」ではプログラムリストが掲載されていたが、ファミリーベーシック用のプリンターは存在しないため、最初の頃は画面写真を繋いだものが掲載されていた(同誌OFコーナーより)。その後、パソコンにテープを読み込ませてデコードしプリントアウトするシステムを利用するようになり、掲載プログラムの可読性が向上した。バージョン編集4つのバージョンが存在することが確認されている。カセットのみの単体売りはされていなかった模様。ワインレッド色の外装で成型されている。最初に発売されたバージョン。V2.1A編集V2.0Aのバグが除かれたものとされる。V3.0編集1985年(昭和60年)2月21日発売。BASICモード向けにメモリ容量を拡張。多数の新規命令が追加。サンプルプログラムも4つのゲームが収録されており、BASICの命令によりRAMに呼び出すことができる。実行のために使えるメモリ容量が相変わらず小さいため(4キロバイト)、中途半端なプログラムしか作れないことが多く、さらにゲームデータの誤消去が発生しやすいため機能的には十分とは言えず、これも不振のまま終わった。ファミリーベーシックと同様、ハドソンとSHARPの共同開発。サンプルプログラムとして収録されたのは、以下の4つである。2は、BGグラフィックをエディタで編集することで、簡単にステージを改造できる。2マリオワールド(マリオを左右移動・ジャンプ・はしごの昇降で操作して、ニタニタに触れないように落ちているリンゴと数字を拾う。3スターキラー(自機を8方向に移動させて操作するシューティングゲーム。2人同時プレイも可能。切り崩しを図る第3勢力とハイテク・メーカーの陣地争い』オーエス出版、1994年、74頁。この配列は入門機、低価格帯で見られ、MSXではワークエリアの設定により選択、MZ-700や、MZ-1500等もこの配列となっている。3.0のもとで利用可能です。プライバシーデスクトップ。