#68 Article 1038 Posted at 1992/10/19 22:25:35 by HIROKI-O (MAP2860) [6809]
Subject: Re:*5 ざべ /1037 ... /1028 /1025
>1MBのアドレス空間がある、というのは絶対に大嘘ではないかと。 これは微妙な点ではないかと(^_^; 確かに6809のアドレスは16ビットなんですが、理論上のメモリ空間は こんな感じです。 バンク0 64KB BASIC及びシステム用ワーク・I/O領域 バンク1 64KB : : バンクF 64KB 合計1MB BASICでもマシン語(あ、なつかしい響き)でもアクセス出来るのはバンク0のみ なんですがI/Oポートと蹴っとばすとバンク0の8KB単位の任意の位置に バンク0~Fのやはり8KB単位の任意の空間を捕まえて使う事が出来ます。 つまり6809単独ではなくてS1のファームウェアがあって初めて1MBの空間を 使用出来るのです。(ほとんどI/Oバンク方式) これの弱点は 1.メモリを捕まえるアドレスを間違えて自分の空間に出現させて暴走させる事が できる。 2.メモリを捕まえるアドレスを間違えてI/Oアドレス(09のI/Oポートは Z80や86系と違い、メモリと同一の扱いを受ける)領域に出現させて すべてのI/Oポートを殺す事が出来る。 3.よほどうまくプログラミングしないと相対アドレスジャンプ(及び参照)が 使えない。特にアセンブラの人にはむずかしい。 があります。 あとメモリの取扱いですが、メモリボードがつながっていてもメモリはどの空間にも 属していません。(もちろん亜空間でもない(^_^;) I/Oポートを蹴とばして特定バンクの特定アドレスを呼び出そうとしてはじめて S1本体から該当位置にメモリが割り当てられます。 >P.S.S1ってそんなにひどいですか? んなわけでハードの設計思想に限って言えばそんなに悪い機種ではありません。 ただし、ソフトの開発者から見ると 1.メモリ容量の問題 全体で32KBのメモリはすべて8KB単位で確保されてしまうので BASICのプログラムなんかを組むと スタック及び数値変数で8KB 文字変数領域で8KB でプログラムエリア(マシン語領域を含む)が16KBしか無い。 2.開発用ソフト(特にアセンブラ関係)が全く無い 3.2Dモデルに2HDドライブはつかない。また、2HDモデルにも2Dドライブ はつかない。そのため、2HDの開発(アセンブラ)は以下の手順しかなかった。 ・FM-7のアブソリュートアセンブラでマシン語を作る。 ・自作のファイルコンバータで5”2Dto2Dのファイルコンバートを 行う ・S1の2Dモデルで一度読み込み、カセットにセーブ ・S1の2HDモデルでカセットから読み込む ・2HDのFDにセーブ 4.これだけの手間をかけて2D、2HD、カセット版を作っても総出荷数は 雀の涙程度。 だった訳です。 唯一の開発のメリットは 「一作出すとハイソフトがお金(開発補助金名目で数百万)をくれる」 だけでした。これって売れても売れなくても当時の弱小ソフトハウス(年商3億程度) にとっては確実に見込める売上でしたからねぇ・・・ ずいぶんひどいいいぐさですが、ゲームソフト業界から足を洗ったから書けるんだろう としみじみと感じてしまいました。 「喉元過ぎれば熱さ忘れる」 HIROKI-O(MAP2860) PS.どんなソフトを移植したか? オープニングタイトルで馬が左から右へかけぬけるK社のアレだったりして(^_^;