エレクトロニカBKシリーズ は、非営利団体の科学センターによってエレクトロニカブランドとして開発された16ビットのPDP-11 互換のソヴィエト連邦 のホームコンピュータ のシリーズである。
より強力なUKNC とDVK microsの前身でもあった。
最初に発売されたのは1984年(1983年に開発された)であった。BKシリーズはК1801ВМ1 (ソヴィエトのLSI-11 互換CPU) を搭載しており、大量生産向けに設計された唯一の「公式」[ 注釈 1] なソヴィエトのホームコンピュータであった。
BKシリーズは約600 - 650ルーブル で販売された。
高価[ 注釈 2] であったが、わずかに手頃な価格でもあった。そのため、BKシリーズは、多くの問題を抱えているにもかかわらず、ソビエト連邦 の最も人気のあるホームコンピュータの1つになった。
1990年代後半、強力なCPU 、簡単な操作、容易にプログラミングできる設計がBKシリーズをデモ機 として人気があるものにした[ 1] 。
BK (БК ) は、"бытовой компьютер" のロシア語 の頭字語 であり、「家庭内(あるいはホーム)コンピュータ」という意味である。
このコンピュータは、キャッシュレジスター として短期間使われたこともあった。例えば、グム百貨店 で使用された。
BK-0010は低価格なソヴィエトのPCの1つであり、速度、メモリ、グラフィックスなどは単純な8ビット機と大差なかったが、世界初の完全な16ビットホームコンピュータの1つであった(16ビットコンピュータTI-99/4A はRAMと周辺機器を8ビットバスで接続していた。それと対照的にBK-0010は、16ビット幅のデータバスを持つコントローラーチップを搭載していた)。
インテレビジョン はBK-0010とよく似た完全な16ビットCPUであるGeneral Instrument CP1600 を搭載しており、キーボードコンポーネントとECS (英語版 ) 拡張を接続すれば、完全な16ビットホームコンピュータになった。
IBM PC とIBM PCjr は、8ビットと16ビットが混在したコンピュータであった。それらに使用された8088 CPUが8ビット外部バスと16ビット内部バスを搭載していたからである。
ソフトウェア
BK-0010.01で動作するVilnius BASIC
BKシリーズは、本質的に周辺機器や開発ツールの付属しないベアボーンマシン(最小構成のマシン)であった。
ROM ファームウェア を除けば、最初から使えるソフトウェアは、付属磁気テープ に入っているいくつかのプログラミング例(BASIC あるいはFOCAL (英語版 ) の例)といくつかのテストプログラムだけであった。
ROMファームウェアは、機械語を入力する単純なプログラム、そしてBASICあるいはFOCALのインタープリターを搭載していた。
BKシリーズはより大きくてより高価なDVK プロフェッショナルモデルやSM EVM シリーズのような産業用ミニコンピュータ と多少の互換性があった。その一方でより強力なマシンのためのソフトウェアの直接的な使用は通常除外されていた。
初期のBKシリーズは、32KiB のメモリを搭載しており、プログラマーは通常16KiBだけを使うことができた(拡張メモリモード時は、28KiBを利用可能である。しかし、ビデオ出力は画面の1/4に制限される)。
DVK は、BKシリーズ用ソフトウェアの一般的な開発環境になった。そして、BKシリーズのメモリが後に128KiBに拡張されたとき、ほとんどのDVKのソフトウェアは最小限の変更で直接使用することができた。
自作ソフト開発者たちは、DVK とUKNC からいくつかの開発ツールを移植したので、自作ソフトというニッチな需要をすぐに満たした。
このことが自作ソフトの爆発的増加を牽引した。自作ソフトは、テキストエディタ とデータベース からOS とビデオゲーム までに至った。
ほとんどのBKシリーズの所有者は、内蔵RAMを少なくとも64KiB まで拡張していた。このことはより進化したシステムからソフトウェアを移植することを容易にするだけではなかった。拡張に伴ってフロッピーディスク ドライブコントローラーも拡張することが多かったので、自分の自身のディスクオペレーティングシステム を作成することがBKシリーズの競争的な娯楽になった。
BKシリーズの弱々しいグラフィックスは強力なCPUによって補完されたので、ゲームとデモシーン のコミュニティも繁栄した。
公式には、RT-11 を改造したOS BK-11と一緒にBKシリーズは出荷されたが、オペレーティングシステム としてMS-DOS とファイルフォーマットに互換性のあるANDOS (英語版 ) も使われた。
ハードウェア
BKシリーズは、当時としては強力な16ビット単一チップのK1801VM1 (英語版 ) を搭載していた。クロックは通常3MHzであった[ 注釈 3] 。
K1801VM1は、PDP-11拡張命令セット(EIS)とさらに進化した拡張命令セットを欠いていたが、ディジタル・イクイップメント・コーポレーション のLSI-11シリーズとほぼ完全な互換性があった。
製造元は、PDP-11の内部アーキテクチャを綿密にコピーした。
各モデルは、Q-bus と電気的な互換性はあるが、機械的な互換性はないカードスロットを一つ搭載していた。
最初のバージョンは、32KiB のDRAM を基板上に搭載していたが、その半分の16KiBはビデオメモリ として使われた。
後期のモデルは128KiBに拡張されるとともにビデオメモリを16KiB×2ページへ拡張した。
BKシリーズのビデオ出力は、かなり簡素なチップであるK1801VP1-037 ビデオディスプレイコントローラ によって提供された。
事実、ビデオディスプレイコントローラとして配線をプログラムされたわずか600ゲートのゲートアレイ であり、2つのグラフィックスビデオモードを可能にする。高解像度(512×256画素。白黒)、低解像度(256×256画素。4色)、そしてハードウェアによる垂直スクロール を支援していた。
後期のモデルは、ハードウェアで実現された64色中4色のカラーパレット を16個持つことができた。
テキストモードはなかったが、BIOS によって2つのテキストモード32×25文字と64×25文字をシミュレートした。
ANDOSのようないくつかのオペレーティングシステムは、より高密度に文字を配置することによって、IBM PC から取り込んだテキストを表示するとき80×25文字のテキスト出力を実現した。
ビデオ出力は、白黒TVあるいはカラーTV/カラーモニターのために2つに分かれた5ピンのDINコネクタ を通して出力される。
最初、全モデルの音声は、基板上のピエゾ素子 スピーカー(圧電スピーカー)に接続された単純なプログラマブルカウンターを通して出力していた。
その後、ゼネラル・インスツルメンツ AY-3-8910 がアフターマーケット(商品販売後に生じる市場)における人気のある追加ハードウェアになった。
全モデルは、周辺機器を接続するための入出力バスが分かれている16ビット汎用パラレルポート を搭載していた。このポートで接続する周辺機器は、プリンター (東側諸国 のプリンターは、一般的なセントロニクス社のIEEE 1284 ポートの代わりに互換性のないIFSP (ИРПР) (英語版 ) インターフェースを使っていた。そのため、IEEE 1284のプリンターは変換アダプタを必要とした)、マウス あるいは音声出力のためのCovox (英語版 ) のDAC 、そしてデータストレージのためのテープレコーダーポートであった。
後期のモデルは、製造元によって提供されたフロッピーディスク ドライブコントローラー(Q-bus カードスロットに接続する)が最初から付属していた。
そのフロッピーディスクドライブコントローラーは、初期のモデルでも利用可能だった。
しかし、自作のフロッピーディスクドライブコントローラー(最初のBKシリーズの貧弱なメモリを拡張することもできる)がより一般的であった。
そのような周辺機器や改造のための家庭内産業が繁栄した。
バージョン
BK0010-01のシステム基板
エレクトロニカBK-0010
Электроника БК-0010 は、最初のモデル(1983年に最初に発表された。連続生産は1984年の中頃から)。
このモデルは擬似メンブレンキーボード (キーキャップなしの機械式マイクロスイッチの配列の上に柔軟なオーバーレイを被せていた)、32KiB RAM、BIOS内蔵の8KiB ROM(K1801RE2-017チップ)、FOCAL (英語版 ) インタプリタ を搭載した8KiB ROM (K1801RE2-018チップ)、デバッガを内蔵した8KiB ROM (K1801RE2-019)、そして空きのROMスロットを搭載していた。そして、CPUクロックは3MHzであった。
テープレコーダー は、工場出荷時設定においてデータストレージとして使用された。
このモデルは使いにくいキーボードが批判された。本来はメカニカルなのにキーキャップがないので、押した時の反応に満足がいかないという事態を起こしてしまった。このようなキーボードは完全に密閉することが容易にできるが、家庭や教育で使用されたときに容認できるものではないように思われた。そのため、このバージョンは産業用コントローラとして広く使用されることになった。
批判されたその他の点は、出荷時に提供される旧態依然としたFOCALプログラミング言語、そして周辺機器とソフトウェアが完全に欠落していることであった。
説明書は全てのハードウェアについてよく書かれており、扱いも容易であった。その一方、プログラミングツールなしで出荷された。
エレクトロニカBK-0010.01
次のバージョンのБК-0010.01 (時々、-0010-01と書かれる)は、本質的に同じものであったが、従来型のフルトラベル・キーボード(押されたキーが深く沈むキーボード)を搭載、Vilnius BASIC (英語版 ) pコード コンパイラをROMに内蔵し、前機種の最も弱い点を修正していた。
使用されたBASICの方言(Vilnius BASIC)は、かなり強力でよく最適化されていた(実際はMSX-BASIC を幾分か縮小したクローンであった)。その一方、キーボードは微妙なものであった。
そのキーボードは、より快適に扱えたが、期待されたほどのものではなかった。押されたキーが突き刺さったまま戻ってこないことが多く、チャタリング が激しく、すぐに磨耗した。後により改良されたキーボードが付属するようになった。
FOCALインタプリタ は廃止されなかったが、その代わりとしてQ-bus スロットに挿入することができる外部ROMカートリッジに搭載されることになった。
エレクトロニカBK-0010Sh
Электроника БК-0010Ш は、学校での使用に特化することを狙ったモデルであった。
BK-0010とBK-0010.01のどちらでもこのモデルになることができたが、Q-bus スロットに挿入することができる19200bps の特別なカレント・ループ方式のネットワークアダプタが付属していた。
そのアダプタは、ゲートアレイ チップK1801VP1-035(後にK1801VP1-065)を搭載しており、DEC DL-11とKL-11シリアルインターフェースとの互換性があったが、モデム制御ビットはなかった。
このモデルは、モニター(通常は仕様変更されたYunost' compact TV)も同梱されていた。学校環境で使用するので、家庭用TVと接続することは想定していなかった。
エレクトロニカBK-0011
BK-0011 は1989年に発売された。
1ページ16KiBのページ単位に分かれた128KiBのRAMを搭載しており、CPUは工場出荷時に4.6MHzのクロックを供給されていた。
ROMに新しいバージョンのBASICを搭載しており、16個の選択可能なカラーパレット を搭載していた。
このカラーパレットは、奇妙な色の組み合わせをするためユーザーによってほとんど普遍的に批判されていた。
フロッピーディスク ドライブコントローラーを搭載していたが、ドライブは未だに別売りだった。
エレクトロニカBK-0011M
BK-0011M
BK-0011にいくつかの変更を行った。それらの変更はマイナーであるが、初期の-0010モデルとの非互換性を作ってしまった。
特にカセットテープから-0010のプログラムをロードすることができなくなった。
プログラムをロードできたとしても音声のような極めて重要なサブシステムは非互換であった。
公衆はそれを批判し、製造元に再設計を強制したので、初期モデルとの互換性は復活した。
その結果できたモデルであるBK-0011Mは、すぐに生産に入った。そして、BK-0011シリーズのほとんどは実のところBK-0011Mであった。
変更はマイナーだったので、市場に出た少数の-0011モデルのほとんどが愛好家によって-0011Mモデルへ更新された。
改造
使用しているBKシリーズをより便利にするために1つあるいは2つのメカニカルスイッチを取り付けることは、所有者の間では珍しいことではなかった。一般的な改造の一部を以下に示す。
リセット ボタン 。プログラムはしばしばハングする。いくつかのゲームは終了機能をきちんと実装していなかった。このボタンがないと、電源ボタンの入切によってコンピューターのリセットを行う必要があった。このことは、外部電源の電源スイッチをやがて磨耗してしまうことに繋がった。リセット割込みは、オペレーティングシステムによって捕捉することができる。そのため、そのようなOS(例えば、ANDOS (英語版 ) 、MK-DOS (英語版 ) )の場合、リセットボタンを押すことによって、OSのファイルマネージャーへ脱出することができる。
ポーズスイッチ 。このスイッチは、プロセッサの命令実行をハードウェアによって一時停止する機能を有効にする。ポーズスイッチは、ゲームを一時停止するために便利だった。ほとんどのゲームは一時停止機能を持っていなかった。しかしながら、少数のゲームは、一時停止から戻った後で正常に動作しなかった。なぜなら、プロセッサに組み込まれたプログラマブルハードウェアタイマーは、命令実行が一時停止されている間でも動作しているからであった。BKシリーズはソフトウェアによってポーズをするためのキーの組み合わせも持ち合わせていたが、このような改造が必要とされるということはあまり役に立たなかったのであろう。
クロック速度スイッチ ("ターボ "スイッチ)。プロセッサのクロック速度を変更する。BK-0010シリーズの場合、標準の3MHzから4MHzあるいは6MHzへ変更できる。BK-0011シリーズの場合、標準の4MHzから3MHzあるいは6MHzへ変更できる。全てのプロセッサの個体が6MHzで安定して動作する訳ではなかった。このようなオーバークロック が可能かどうかは、各個体毎に実験を行なって確認しなければならない。クロック速度を切り替えることによって、活動的なゲームのペースを変更することができた。ターボスイッチは、通常、ポーズスイッチと一緒に取り付ける必要があった。なぜなら、クロック速度を切り替える最も単純な回路は、メカニカルスイッチが切り替えられたときにチャタリング が原因でクロック信号の中に歪んだ形状の信号を生成してしまう。そのため、プロセッサが一時停止状態になっていないと、ソフトウェアがハングするリスクが生じてしまうからである。
音声ON/OFFスイッチ あるいは音声ボリュームノブ 。音声ボリュームノブは、可変抵抗器(ポテンショメーター)を使って内部のピエゾ素子 スピーカー(圧電スピーカー)の音量を調整する。これを追加するのと同時に改造者はより音の大きいスピーカーと交換することもあった。
これらの改造は比較的単純であり、はんだごて を扱えるユーザーによって実践することができた。プログラムを販売する家庭内産業で働くほとんどの人々は、少額の料金で改造を請け負うこともあった。愛好家はBKシリーズコンピュータにより進化したデバイスをなんとか接続した。愛好家はハードディスク コントローラーを開発し、2.5インチHDDをBKシリーズで使用することに成功した。それ以外の一般的な機能拡張は、AY-3-8912 音声チップとCovox Speech Thing (英語版 ) (プリンタポートに接続するDAC であり、音声出力に使われた)であった。
エミュレータ
現代のIBM PC 互換機のために様々なソフトウェアエミュレータ が存在する。あるエミュレータはオリジナルのBKシリーズよりもより高速に動作させることができる。
MiSTのようにFPGA でBKシリーズをほぼ完全に再実装したものもある[ 2] 。
デモの例
BKシリーズで実行されるデモ の例。
注釈
^ ソビエト連邦政府は、経済計画の一環として承認し、説明した。
^ 当時のソヴィエトの平均賃金は、毎月約150ルーブルであった。
^ CPUのオーバークロックは比較的容易である。しかし、低速度のDRAM をオーバークロックするのは困難であった。ほとんどの一般的な「ターボ」速度は6MHzである。
出典
関連項目
外部リンク