モジュール詳細:マルコフのジュークボックス
マルコフに著作権の概念はありません。ご自由にお使いください。
このモジュールには2つのサイクルするディスプレーと、送信ボタン、鍵盤が含まれる。
モジュールを解除するには、正しいコード進行をディスプレーに入力して送信した後、鍵盤で正しいメロディを入力する。
間違ったコードを送信するか、間違ったメロディを入力すると、ミスが記録されモジュールがリセットする。
シード値の決定
- シリアルナンバーの英字を全てアルファベットでの位置(A=1、B=2、...、Z=26)を10で割ったあまりに変換し、6桁の数字を得る。バッテリーの個数+ポートの個数+シリアルナンバーの英字の数を計算し、これを10で割ったあまりを6桁の数字の最後に付け足して7桁の数字を得る。これをシード値と呼ぶ。
- 以下のステップで「シード値の次の値」を参照する場合、最後に利用した桁の数字の次の桁の数字を利用する。これが最初に参照された場合と、最後に利用した桁の数字がシード値の最下位である場合は、シード値の最上桁を参照する。
コード進行の決定
- コード進行は4つのコードからなる。
- 次ページのテーブルにおいて、列をシード値の次の値、段を一つ前に決定したコードを利用して次のコードを決定する。これが最初のコードである場合、「C」の段を利用する。
- 決定した4つのコードを逆順にモジュールに入力する。左のディスプレーをコードの最初の英字(これをコードのルート音とする)に合わせ、右のディスプレーをそれ以降の英数字(これをコードのクオリティーとする)に合わせる。送信ボタンを押すと、選択したコードが送信される。
メロディの決定
- メロディはそれぞれのコードにつき4ノート、合計16ノートで構成される。
- 送信した最後のコードのクオリティーを利用して、利用するテーブルを決定する。そのテーブルの列をシード値の次の値、段を一つ前に決定したノートを利用して次のノートを決定する。これが最初のノートである場合、「C」を表す段を利用する。
- 数字は現在利用しているコードのルート音との相対的な距離(単位は半音)を表している(例: ルート音がFの場合、「+2」のノートはGを表す)。対象の段が存在しない場合、次のノートはルート音となる。
- 4つのノートが決定したら、送信した順で前のコードを利用してこれを繰り返す。
- 決定したメロディーを鍵盤を利用して逆順にモジュールに入力する。ノートと鍵盤の関係は「鍵盤とノートの関係」を参照する