JP1のジャンパ設定により、システム使用の目的や用途により、システムのハードウェア構成を選択・変更することができます。
選択可能な構成を「JP1ハードウェア構成」に示します。
ジャンパー | 構成 | オープン | ショート |
SEL0 | MPUクロック | 2MHz | 4MHz |
SEL1 | ボーレート | 9,600 | 38,400 |
SEL2 | アドレスマップ | SEL3による | ROM構成 |
SEL3 | アドレスマップ | STD構成 | RAM構成 |
アドレスマップの詳細については、\ref{sec:address-map}節をご参照ください。
- SEL0の設定で、クロックを4MHzに設定することができますが、MPUと特にACIAの定格周波数を超えるため動作保証はしていません。
- SEL3の選択は、SEL2がオープンのときのみ有効になります。
アドレスマップの詳細
6502-COREでは、アドレスマップは目的に応じて下記の3種類から選択して利用することができます。
選択は、\ref{sec:sysconf}節に示す様に、JP1のSEL3, SEL4で行います。
標準的にはSTD構成を使用し、連続したRAM領域が56KBに増加するRAM構成と、ROMが12KBに増加するROM構成から、用途や目的に応じて選択して利用することができます。
アドレス構成 | 構成 | 対応モニタ |
STD構成 | 48K RAM/4K IO/8K RAM/4K ROM | Universal Monitor (IO-C) |
RAM構成 | 56K RAM/4K IO/4K ROM | Universal Monitor (IO-E) |
ROM構成 | 48K RAM/4K IO/12K ROM | Universal Monitor (IO-C) |
STD構成
STD構成のアドレスマップを「STDモードアドレスマップ」に示します。
Universal Monitor はIO-C用を選択して使用します。
STD構成の特徴は、I/O領域のさらに上位アドレスに8KBのRAMの移植領域が配置されていることです。
STD構成は、以下のような理由で、古き日の魅力的なアプリケーションの数々を移植する目的に大変適しています。
- 8KBの容量があるので、8K BASICなどのある程度の容量が必要な移植プログラムも配置することができる。
- ROMで提供されていたアプリケーションは、6502ではアドレスの上位に配置されていることが多く、そのアドレス構成に合致あるいは近いのでアプリケーションの移植を行いやすい。
- 例えば、OSI BASIC などは、起動時にRAMの空き領域を自動的に確認することができるが、
- RAM領域が連続しているアドレスマッピングでBASICインタプリタ自身を本来の高位アドレスに配置すると、メモリの空き領域調査で、BASICインタプリタの格納場所も空き領域と認識されてしまい、プログラムを実行するとプログラムがそれ自身によって破壊されることになる。
- STD構成では、移植用RAM領域がI/O領域で分離されているため、このようなRAM領域の自動確認処理でも対象外となり、プログラムがそれ自身によって破壊されることはない。
アドレス領域 | 占有領域 | 選択対象・用途 |
$0000-$BFFF | $0000-$00FF $0100-$01FF | 48KB RAM ダイレクトページ スタック領域 |
$C000-$CFFF | $CC00-$CC01 $CC02-$CFFF | 4KB I/O ACIA ACIAゴースト |
$D000-$EFFF | $D000-$EFFF | 8KB RAM 移植領域 |
$F000-$FFFF | $FF80-$FFEF $FFF0-$FFFF | 4KB ROM モニタサブルーチンエントリ ベクタ |
RAM構成
RAM構成のアドレスマップを「RAMモードアドレスマップ」に示します。
Universal Monitor はIO-E用を選択して使用します。
RAM構成の特徴は、56KBの連続した大きなRAM領域が配置されていることです。
できるだけ大きなRAM領域を確保したいアプリケーションを使用する際に最適な構成になります。
アドレス領域 | 占有領域 | 選択対象・用途 |
$0000-$DFFF | $0000-$00FF $0100-$01FF | 56KB RAM ダイレクトページ スタック領域 |
$E000-$EFFF | $EC00-$EC01 $EC02-$EFFF | 4KB I/O ACIA ACIAゴースト |
$F000-$FFFF | $FF80-$FFEF $FFF0-$FFFF | 4KB ROM モニタサブルーチンエントリ ベクタ |
ROM構成
ROM構成のアドレスマップを「ROMモードアドレスマップ」に示します。
Universal Monitor はIO-C用を選択して使用します。
ROM構成の特徴は、12KBのROM領域が配置されていることです。
12KB未満のアプリケーションをROMに書き込んで使用する場合に最適な構成になります。
ROM構成でアプリケーションをROMに書き込んだ場合には、システムの起動とともにアプリケーションが立ち上がり、すぐに利用できるように構成することができます。
ご自身でROMにプログラム等を書き込む場合には、\ref{sec:romconf}節をご参照ください。
アドレス領域 | 占有領域 | 選択対象・用途 |
$0000-$BFFF | $0000-$00FF $0100-$01FF | 48KB RAM ダイレクトページ スタック領域 |
$C000-$CFFF | $CC00-$CC01 $CC02-$CFFF | 4KB I/O ACIA ACIAゴースト |
$E000-$FFFF | $FF80-$FFEF $FFF0-$FFFF | 12KB ROM モニタサブルーチンエントリ ベクタ |