マリオ２５６Ｗ

## スーパーマリオ２５６ワールドの原理について

#### ●はじめに．．．

マリオの最大の謎とも言える、２５６Ｗの存在．．．。この２５６Ｗに関しては、当時様々な議論が有りました。ひとつには、マリオ２５６ワールドがバグかどうかという話がありますが、これはバグではありません。通常のプレーでは行けないのですから．．．では、２５６ワールドは作者が前もって用意した物か？．．．というのも違います。２５６ワールドはマリオのシステムが生み出した、別次元の世界のような物です。以後、何故２５６ワールドが存在するのか、について書きますが、（なるべく解りやすく書くつもりですが．．）きっと理解しにくい文章になるとは思います。でも、辛抱して付き合って下さいネ．．．。

#### ●わかりやすく言うと．．．

ｉｎｔｅｌのＣＰＵである、Ｃｅｌｅｒｏｎ　３００Ａが、内部クロックを上げて、４５０ＭＨｚで動いたとしましょう。これはメーカー保証外ですが、動けば儲け物。元々Ｃｅｌｅｒｏｎ　３００Ａは４５０ＭＨｚで動く潜在能力を持っていた訳です。しかし、メーカーがＰentium２との兼ね合いで、わざと能力を制限して出荷したのです。これと同じ事がスーパーマリオ１にも言えます。元々ワールドには２５６個（８ビット処理）の入れ物が有りますが、出荷時には８個の入れ物しか使用できない様に制限を加えました。しかし、この制限をなんらかの方法でかいくぐると、２５６ワールドに行ってしまうのです。

#### ●制限を越えて、新しい禁断の世界が広がり．．．

その制限は、「ワールド８をクリアしたらワールド１に戻る」というわずか２バイトの命令です。通常はワールド１からしかゲームは始められないのですから、これで完璧な筈なのですが．．．実際にこの命令をエディターで取り除くと、自由に２５６ワールドに旅立つ事が出来ます。そこはまさしく禁断の世界。全く作者の意図していない面が繰り広げられます。時には、ワールド１から８には出現しないキャラクターまで出てきたりします。（スーパーマリオブラザーズオリジナルマップ作成講座のコマンドの説明参照）

#### ●これらの世界の生い立ちは．．．

ではこれらのマップはどの部分をデータとして読みに行き、表示されているのでしょうか？オリジナルマップ作成講座の面データの開始位置の指定方法にある通り、面データの指定は、パラメーターで３重指定方式になっています。面を作った後で、面のつながりや順番を容易に変更出来る様にするためです。（実際はここを変更しただけでは、ワールドの変更は上手く行かないのだが．．．）　ここの８つ分の正規のワールドとして割り当てられた、８バイトのパラメータの後に続く別の領域が、９〜２５６ワールドとして認識されています。つまり、ワールド９はその次の１バイトに割り当てられますから、実際には１番目のエリアデータ（原本ではワールド１のエリア１の始まりのルームＮｏ指定領域）が有る部分が認識されている訳です。つまり、全く別の部分がワールドの始まり部分の指定に使われている訳ですから、デタラメな面が出来て当然なのです。

#### ●　−１面で説明すると．．．

カセット版−１面は７−２面の水中ステージと同じですが、何故同じ内容になっているのでしょうか？−１面はマイナス１面と呼ばれていますが、実際にはスペース（空白）−１面で、このスペースというのは、マリオ１の場合、３６番目（１０進数）に割り当てられたコードです。ファミコンの場合、いわゆるパソコンのようにアスキーコードでは無く、任天堂コードという独自のコード体系が使われています。これは、最初の１０個は０からから９までの数字が使われており、以下はゲームによってグラフイックに使うパターンなどが割り当てられています。マリオ１では、０から９の次はＡ〜Ｚのアルファベットが使われており、その次のパターンが空白になっています。即ち、−１面は３６−１面の事です。スーパーマリオブラザーズオリジナルマップ作成講座の面データの場所指定方法の項にある、（１）の各ワールドが何番目のエリアから始まるかを指定する部分には、８ワールド分しか領域を取っていませんが、９ワ−ルド以降は、順次その下位の番地を参照してゆきます。即ち。ワールド３６の指定部分は、（１）の領域の始まり部分を１バイト目とすると、３６バイト目に有るという事になります。３６バイト目は３３（１６進数）となっていますので、「ワールド３６は３３番目（１６進数）のエリアから始まる」という意味になります。次に（２）の各エリアがどのルームＮｏ．から始まるかを指定する部分の３３バイト（１６進数・エリア番号は００から数える）目は、０１となっています。即ちこれは、「３３番目（１６進数）のエリアはルームＮｏ．０１から始まる」という意味になります。ところで、ルームＮｏ．０１はこの３３番目のエリア以前にも２回使われており、丁度０７番目のエリア（２−２の指定部分）と１Ｄ番目のエリア（７−２の指定部分）に使われています。なお、−１面の敵データが、７−２の方になる理由は、マリオ工作員さん達のページのスーパーマリオブラザーズ解析結果報告を参照して下さい。

カセット版マリオ1の面データ開始位置指定部分
（１）の領域 | ９ＣＢ４番地 | ００ | ０５ | ０Ａ | ０Ｅ | １３ | １７ | １Ｂ | ２０
（２）の領域 | ９ＣＢＣ番地 | ２５ | ２９ | Ｃ０ | ２６ | ６０ | ２８ | ２９ | ０１
２７ | ６２ | ２４ | ３５ | ２０ | ６３ | ２２ | ２９
４１ | ２Ｃ | ６１ | ２Ａ | ３１ | ２６ | ６２ | ２Ｅ
２３ | ２Ｄ | ６０ | ３３ | ２９ | ０１ | ２７ | ６４
３０ | ３２ | ２１ | ６５ | １Ｆ | ０６ | １Ｃ | ００
７０ | ９７ | Ｂ０ | ＤＦ | ０Ａ | １Ｆ | ５９ | ７Ｅ
９Ｂ | Ａ９ | Ｄ０ | ０１ | １Ｆ | ３Ｃ | ５１ | ７Ｂ

ワールド１の各エリアがどのルームＮｏ．から始まるか指定している領域
ワールド２の各エリアがどのルームＮｏ．から始まるか指定している領域
ワールド３の各エリアがどのルームＮｏ．から始まるか指定している領域
ワールド４の各エリアがどのルームＮｏ．から始まるか指定している領域
ワールド５の各エリアがどのルームＮｏ．から始まるか指定している領域
ワールド６の各エリアがどのルームＮｏ．から始まるか指定している領域
ワールド７の各エリアがどのルームＮｏ．から始まるか指定している領域
ワールド８の各エリアがどのルームＮｏ．から始まるか指定している領域

#### ●カセット版　−１面は何故クリア出来ないか？

では、２−２面や７−２面は、水中部分の土管に入ると、地上に出てゴールする事が出来ますが、カセット版−１面ではゴール出来ません。これは、土管などでの各ルームの移動命令にワールド指定が含まれているからです。（スーパーマリオブラザーズオリジナルマップ作成講座の第１バイト下位がＥの場合の敵キャラコマンドの項参照）何故このような処理を入れているかというと、情報量を節約するため同じ敵データを違うワールドで使ったとしても、ワールド２ではこのルームに移動し、ワールド３では別のルームに移動させる．．．というような事が出来るようにするためです。（特にボーナスステージを各ワールドで共有するために、この処理は絶対必要だった）ルームＮｏ．０１の敵データの移動命令をファミコンカセット版で探すと、Ａ１７３番地より、
２Ｅ　２５　２Ｂ
２Ｅ　２５　４Ｂ
４Ｅ　２５　ＣＢ
と３つの命令が見つかります。
これは上から、
ワ−ルド２において、（当ページの横位置２が画面右端から２キャラ先にスクロールアウトした以降は） 土管等に入ると、ルームＮｏ．２５の０Ｂページ目に移動させる
ワールド３において、（当ページの横位置２が画面右端から２キャラ先にスクロールアウトした以降は） 土管等に入ると、ルームＮｏ．２５の０Ｂページ目に移動させる
ワールド７において、（当ページの横位置４が画面右端から２キャラ先にスクロールアウトした以降は） 土管等に入ると、ルームＮｏ．２５の０Ｂページ目に移動させる
という意味です。（ワールド３の命令が残っているのは、かつてワールド３に水中面が有ったのかも知れない） 即ち、−１面では移動命令が無いため、同じルームの０ページ目に戻されるので、マリオはその場をさまよう事になるのです。

#### ●２５６ワールド分、楽しく遊べるマリオは作れるか？

２５６ワールド全てに対し、各４エリア作ったとして、合計約１，０００エリア作らなければなりません。しかし使えるルーム数は、トンカチマリオでも６４部屋×４種類ですので、（１の原本ではせいぜい３６部屋程度）２５６ワールドすべて違う面を作るのは難しいでしょう。９ワールド以降の一部の面を作り、ワープゾーンでワープさせるなどして、エキストラステージ的に使うのが良いと思います。

#### ●マリオ１（カセット版・ディスクシステム版）２５６ワールドのデータ集

面 | ルームＮｏ． | 面の種類 | 画面写真 | 内容
--- | --- | --- | --- | ---
カセット版 ９−１面 | Ｎｏ．０６ | 水中面 |  | 運よくフリーズしなければ、 ９−２まで遊べる （多分）
ディスク版 マイナス1面 （３６−１面） | Ｎｏ．０９ | 水中面 |  | ピーチ姫が２回登場、半クッパも、 このサービス精神の旺盛さは、 意図して作ったものかも？ −２、−３もプレイ出来る。

#### ●まとめ．．．

マリオ１は、バグ？が多いという一面が有り、開発者はそれを嫌う傾向にあります。そこで、マリオ２ではそのうちの幾つかのバグ？が起こらないように改造されています。しかし、マリオ１のバグは裏技とも言える楽しい物ばかりで、単にゲームをクリアするにとどまらず、無限の楽しみを私たちに与えてくれます。また、あまり知られていない裏技がまだ沢山隠されており、これらを「スーパー真理ブラザーズ」で明らかにする事が、私のライフワークのひとつになっています。このマリオ１の不完全さが、このゲームの大きな魅力のひとつで有り、私を含めた多数の人々がその魅力に取り付かれています。この様な色々な面での楽しさを与えてくれるゲームを私は他には知りません。改造を初めて１０年以上経つ今でも、新しい発見をする度に、このゲームの奥の深さを実感し、感動させてくれます。これからもマリオ１は私たちを不思議の世界に導き続けてくれる事でしょう．．．この２５６ワールドの様に．．．
Ｉ　ＬＯＶＥ　ＭＡＲＩＯ　１
これからも新たなる発見を目指し．．．
「スーパーマリオブラザーズのページトップ」へ
本文中の会社名または商品名は各社の商標または登録商標です。
ホームページへ