Right now, only a few examples of some registers are here. I have a lot to gather, and it take a lot of time. I expect to type up some paper notes i have all over my room, regarding the GPU.
今ちょうど、いくつかのレジスタの少数の例だけがここにあります。 私は非常に集まらなければなりません、そしてそれ、多くの時間をとる。 私はある程度の論文をタイプするつもりです、iに注意する、GPUに関して、私の部屋の至る所で持っている。

I don't have the faintest idea of what these do.
私はこれらが何を行うかというfaintest考えを持っていません。
        0x1f801014 - spu_delay (???)
        0x1f801018 - dv5_delay (???)
        0x1f801020 - com_delay (Common Delay) (???)
--------
0x1f801040 - sio - シリアル入出力 - メモリカード

	0x1f801040 - unsigned char data;
	0x1f801044 - unsigned short status;
	0x1f80104a - unsigned short cntl;
	0x1f80104e - unsigned short baud;

0x1f801050 - sio - シリアル入出力

These are related to the Serial Interface. I didn't bother figuring how to work with them, since i don't have a serial cable that could help testing, nor it's important to me right now.
これらはシリアルインターフェースと関係があります。 私は、わざわざそれらで働く方法を図に表わしませんでした、i以来、持っていない、1つの、連続する、それが試験を支援するかもしれないと打電する、および、それは、私にとって今ちょうど重要です。

--------
0x1f801060 - RAMサイズ. 通常0xb88を設定
--------
0x1f801070 - i_reg
0x1f801074 - i_mask

Interrupt mask & interrupt pending state. Source code to understand this will follow soon.
割込みマスクと割込み保留状態。 これを理解するソース・コードはすぐに続くでしょう。

--------
DMAチャンネル:
        - 全てのDMAチャンネルのレジスタは同じ構造を持っています。
                ベースアドレス + 0x00 = メモリアドレス
                ベースアドレス + 0x04 = サイズ/チャンネル依存
                ベースアドレス + 0x08 = 制御レジスタ
        - 各チャンネルはd_pcrレジスタに予約ビットがあります。
        - あるチャンネルのDMA転送の終了を待つ/検出するには、下記を行います:
                while (*dX_chcr & 0x01000000) ; Xはチャンネル番号

いくつかのソースコードはすぐに続きます。
----
DMAチャンネル0 - ベース 0x1f801080

0x1f801080 - d0_madr - MDEC in - DMAメモリアドレス
0x1f801084 - d0_bcr  - MDEC in - DMAブロック(?)制御(?)レジスタ(サイズ)
0x1f801088 - d0_chcr - MDEC in - DMAチャンネル制御レジスタ

このDMAチャンネルはMDECエンジンに圧縮データを与えるために使用されます。
----
DMAチャンネル1 - ベース 0x1f801090

0x1f801090 - d1_madr - MDEC out - DMAメモリアドレス
0x1f801094 - d1_bcr  - MDEC out - DMAブロック(?)制御(?)レジスタ(サイズ)
0x1f801098 - d1_chcr - MDEC out - DMAチャンネル制御レジスタ

このDMAチャンネルはMDECエンジンから展開データを得るために使用されます。
----
DMAチャンネル2 - ベース 0x1f8010a0

0x1f8010a0 - d2_madr - GPU - DMAメモリアドレス
0x1f8010a4 - d2_bcr  - GPU - DMAブロック(?)制御(?)レジスタ(サイズ)
0x1f8010a8 - d2_chcr - GPU - DMAチャンネル制御レジスタ

このDMAチャンネルは、VRAMへの画像データのアップロード/ダウンロードと、コマンドバッファを送るのに使用されます。最初にVRAMの領域を設定する必要があります。

        *gp1 = 0x04000002/MEM2VRAM 0x04000003/VRAM2MEM
        *d2_madr = メモリアドレス
        *d2_bcr = ((size) << 16) | 16 サイズは16の倍数でなければならない
        *d2_chcr=0x01000201/MEM2VRAM 0x01000200/VRAM2MEM 転送開始

プリミティブのリンクリストを送る:
        *gp1=0x04000002;
        *d2_madr=mem addr
        *d2_bcr=0
        *d2_chcr=0x01000401

----
DMAチャンネル3 - ベース 0x1f8010b0

0x1f8010b0 - d3_madr - CDROM - DMAメモリアドレス
0x1f8010b4 - d3_bcr  - CDROM - DMAブロック(?)制御(?)レジスタ(サイズ)
0x1f8010b8 - d3_chcr - CDROM - DMAチャンネル制御レジスタ

このチャンネルを通してCD-ROMからデータを得ます。

----
DMAチャンネル4 - ベース 0x1f8010c0

0x1f8010c0 - d4_madr - SPU DMAメモリアドレス
0x1f8010c4 - d4_bcr  - SPU DMAブロック(?)制御(?)レジスタ(サイズ)
0x1f8010c8 - d4_chcr - SPU DMAチャンネル制御レジスタ

メモリとサウンドプロセッサユニット(SPU)間の転送

----
DMAチャンネル5 - ベース 0x1f8010d0

0x1f8010d0 - d5_madr - ??? - DMAメモリアドレス
0x1f8010d4 - d5_bcr  - ??? - DMAブロック(?)制御(?)レジスタ(サイズ)
0x1f8010d8 - d5_chcr - ??? - DMAチャンネル制御レジスタ

このチャンネルが何に使われているか私は知りません(たぶん覚えていない)。

----
DMAチャンネル6 - ベース 0x1f8010e0

0x1f8010e0 - d6_madr - OTC - DMAメモリアドレス
0x1f8010e4 - d6_bcr  - OTC - DMAブロック(?)制御(?)レジスタ(サイズ)
0x1f8010e8 - d6_chcr - OTC - DMAチャンネル制御レジスタ

このDMAチャンネルはオーダリングテーブルを逆順にクリアするために使用されます。ClearOTagRで使用されています。
        *d_pcr | = 0x08000000
        *d6_chcr = 0
        *d6_madr = 最後のot[]要素のアドレス
        *d6_bcr  = otの要素サイズ
        *d6_chcr = 0x11000002 , 転送開始

0x1f8010f0 d_pcr
0x1f8010f4 d_icr

These are DMA control registers. Allows to enable/disable, configure(?), get/set status, etc...This will deserve a seperate document as i have the Dma routines reversed in working C. Just a little sample, to enable/reset a DMA Channel, do the following:
これらはDMA制御レジスタです。 有効/無効、configure(?)、ステータスの取得/設定などを行います。 これはiとしてseperateドキュメントに相当するでしょう、C.をちょうど少し動かす際にDmaルーチンを逆にする、サンプル、可能にするために、/、DMAチャンネル(DMA Channel)をリセットし、下記を行います:

        *d_pcr |= (8 << channel_number << 4) 
--------
0x1f801100 - t0_count
0x1f801104 - t0_mode
0x1f801108 - t0_target
0x1f801110 - t1_count
0x1f801114 - t1_mode
0x1f801118 - t1_target
0x1f801120 - t2_count
0x1f801124 - t2_mode
0x1f801128 - t2_target

これらはルートカウンタのハードウェアレジスタです。
--------
0x1f801800 - reg0
0x1f801801 - reg1
0x1f801802 - reg2
0x1f801803 - reg3

これら4つはCD-ROMの制御に使用されます。
--------
0x1f801810 - gp0
0x1f801814 - gp1

These are used to control the GPU, send commands, set the environment, etc...
These deserve a complete document. Click here for a quick version.
これらはコマンド送信、環境の設定など、GPUを制御するために使用されます。
これらは完全なドキュメントに相当します。クイック版はここをクリックしてください。

--------
0x1f801820 - mdec0
0x1f801824 - mdec1

MDECエンジンの制御
---------
これらは間違っているかもしれません。

0x1f801c00 - spu_madr - SPU - DMAメモリアドレス (== spu == spi_RXX)
0x1f801c04 - spu_bcr  - SPU - DMAブロック(?)制御(?)レジスタ(サイズ)
0x1f801c08 - spu_chcr - SPU - DMAチャンネル制御レジスタ

SPU DMAチャンネル
--------
0x1f802030 - int_2000
0x1f802040 - Dipスイッチ (何のためか知らないが、ROM内で示されている)

Dont have the faintest idea...Dip switches might be related to the Development Boards.
faintest ideaはありません。Dipスイッチは開発ボードと関係あるかもしれません。

si17911@ci.uminho.pt
 1