3-4 RAM空間 |
LCD表示用XRAMの198バイト、作業用RAM用VTRBFの512バイトを含む1222バイトのRAMを内蔵しています。 また、特殊機能レジスタ(SFR)がRAMの上位にあたる100H〜1FFH番地に存在しています。
メモリ | 容量 |
RAMサイズ | 1222バイト |
XRAM | バンク0 180H - 1FBH (96バイト) |
バンク1 180H - 1FBH (96バイト) | |
バンク2 180H - 185H (6バイト) | |
メインRAM | バンク0 000H - 0FFH (256バイト) |
バンク1 000H - 0FFH (256バイト) | |
VTRBF | 166H (256バイト×2バンク) |
RAMの00H〜0FHまでの16バイトの領域は、4バンクからなる間接アドレスレジスタです。
この間接アドレスレジスタは、下位アドレスから順に@R0、@R1(RAM用)、@R2、@R3(SFR用)で構成されています。 アドレッシングに使用する間接アドレスレジスタのバンクは、プログラムステータスワード(PSW)のビット3、4(間接アドレスレジスタバンクフラグ:IRBK0、1)により指定します。また、この16バイトの領域は通常のRAMとしても使用可能です。
![]() 間接アドレスレジスタのバンクを切り替えて使用する場合、以下の場合は実行する前に必ずバンク設定を0に戻して下さい。
・フラッシュメモリアクセス用サブルーチンをCALLする場合 |
間接アドレスレジスタとRAMの関係は、次の表に示します。
間接アドレスレジスタ名 | 機能 | バンク0(IRBK1=0)(IRBK0=0) | バンク1(IRBK1=0)(IRBK0=1) | バンク2(IRBK1=1)(IRBK0=0) | バンク3(IRBK1=1)(IRBK0=1) |
@R0 | RAMアクセス | RAM 00H | RAM 04H | RAM 08H | RAM 0CH |
@R1 | RAMアクセス | RAM 01H | RAM 05H | RAM 09H | RAM 0DH |
@R2 | SFRアクセス | RAM 02H | RAM 06H | RAM 0AH | RAM 0EH |
@R3 | SFRアクセス | RAM 03H | RAM 07H | RAM 0BH | RAM 0FH |
RAM,SFRの一覧を表6に示します。SFR内の各種レジスタの内容は、各項目を参照してください。
![]() 初期値は、リセット後BIOSが初期化したあとの値です。 |
s R=READ X=不定
s W=WRITE H=存在しない
シンボル | アドレス | R/W | 名称 | 初期値 |
RAM(バンク0) | 000H-0FFH | R/W | データメモリ | XXXXXXXX (リセット時は保持) |
RAM(バンク1) | 000H-0FFH | R/W | データメモリ | XXXXXXXX (リセット時は保持) |
ACC | 100H | R/W | アキュムレーター | 00000000 |
PSW | 101H | R/W | プログラムステータスワード | 00000000 |
B | 102H | R/W | Bレジスタ | 00000000 |
C | 103H | R/W | Cレジスタ | 00000000 |
TRL | 104H | R/W | テーブル参照レジスタ下位バイト | 00000000 |
TRH | 105H | R/W | テーブル参照レジスタ上位バイト | 00000000 |
SP | 106H | R/W | スタックポインタ | XXXXXXXX |
PCON | 107H | R/W | パワー制御レジスタ | HHHHHH00 |
IE | 108H | R/W | マスター割り込み許可制御レジスタ | 0HHHHH00 |
IP | 109H | R/W | 割り込み優先順位制御レジスタ | 00000000 |
EXT | 10DH | R/W | 外部メモリ制御レジスタ | HHHH0000 |
OCR | 10EH | R/W | 発進制御レジスタ | 0H00HH00 |
T0CNT T0PRR |
110H 111H |
R/W R/W |
タイマー0制御レジスタ タイマー0プリスケーラデータ |
00000000 00000000 |
T0L | 112H | R | タイマー0下位 | 00000000 |
T0LR | 113H | R/W | タイマー0下位リロードデータ | 00000000 |
T0H | 114H | R | タイマー0上位 | 00000000 |
T0HR | 115H | R/W | タイマー0上位リロードデータ | 00000000 |
T1CNT | 118H | R/W | タイマー1制御レジスタ | 00000000 |
T1LC | 11AH | R/W | タイマー1下位比較データ | 00000000 |
T1L | 11BH | R | タイマー1下位 | 00000000 |
T1LR | 11CH | W | タイマー1下位リロードデータ | 00000000 |
T1HC | R/W | タイマー1上位比較データ | 00000000 | |
T1H | 11DH | R | タイマー1上位 | 00000000 |
T1HR | W | タイマー1上位リロードデータ | 00000000 | |
MCR | 120H | W | モード制御レジスタ | 00000000 |
STAD | 122H | R/W | スタートアドレスレジスタ | 00000000 |
CNR | 123H | W | 文字数レジスタ | H0000000 |
TDR | 124H | W | 時分割レジスタ | HH000000 |
XBNK | 125H | R/W | バンクアドレスレジスタ | HHHHHH00 |
VCCR | 127H | W | 液晶コントラスト制御レジスタ | 00000000 |
SCON0 | 130H | R/W | SI00制御レジスタ | 00H00000 |
SBUF0 | 131H | R/W | SI00バッファ | 00000000 |
SBR | 132H | R/W | SI0ポーレートジェネレータ | 00000000 |
SCON1 | 134H | R/W | SI01制御レジスタ | H0H00000 |
SBUF1 | 135H | R/W | SI01バッファ | 00000000 |
シンボル | アドレス | R/W | 名称 | 初期値 | 掲載ページ |
SCON1 | 134H | R/W | SI01制御レジスタ | 00000000 | 111 |
SBUF1 | 135H | R/W | SI01バッファ | 00000000 | 113 |
P1 | 144H | R/W | ポート1ラッチ | 00000000 | 58 |
P1DDR | 145H | W | ポート1データディレクションレジスタ | 00000000 | 58 |
P1FCR | 146H | W | ポート1機能制御レジスタ | 10111111 | 59 |
P3DDR | 14DH | W | ポート3データディレクションレジスタ | 00000000 | 62 |
P3INT | 14EH | R/W | ポート3割り込み機能制御レジスタ | 11111101 | 62 |
P7 | 15CH | R | ポート7ラッチ | HHHHXXXX | 64 |
I01CR | 15DH | R/W | 外部割り込み0,1制御 | 00000000 | 135 |
I23CR | 15EH | R/W | 外部割り込み2,3制御 | 00000000 | 137 |
ISL | 15FH | R/W | 入力信号選択 | 11000000 | 138 |
VSEL | 163H | R/W | 制御レジスタ | 11111100 | 143 |
VRMAD1 | 164H | R/W | システム用アドレスレジスタ1 | 00000000 | 144 |
VRMAD2 | 165H | R/W | システム用アドレスレジスタ2 | HHHHHHH0 | 144 |
VTRBF | 166H | R/W | 送受信バッファ | XXXXXXXX | 144 |
BTCR | 17FH | R/W | ベースタイマ制御 | 01000001 | 101 |
RAM(XRAM) (バンク0) |
180H-1FBH | R/W | 液晶表示メモリ | XXXXXXXX (リセット時は保持) |
126 |
RAM(XRAM) (バンク1) |
180H-1FBH | R/W | |||
RAM(XRAM) (バンク2) |
180H-185H | R/W |
[←] | [INDEX] | [→] |
(C)SEGA ENTERPRISES, LTD., 1999