It is currently Thu Jul 20, 2017 11:49 am

All times are UTC - 7 hours





Post new topic Reply to topic  [ 5 posts ] 
Author Message
 Post subject: VRC6 nametable
PostPosted: Tue Oct 29, 2013 9:24 am 
Offline
User avatar

Joined: Mon Feb 09, 2009 9:10 am
Posts: 59
Location: リムルダール Rimuldar
「VRC VI VRAM,VROM バンク仕様について」をみて、わかったこととわからなかったことがありますので記載します。不明点は確認が必要ですが、現時点ではなにもしていません。(気が向いたら調査します)

[register global assignments]
CPU address $b003 の register bitfield が記載されていますが、下記と解釈した方が良さそうです。
Code:
bit7   backup RAM (0:disable, 1:enable) #global
bit5:2 depened on bit1:0 #global
bit1:0 VRAM, VROM bank mode #global


[mode 0]
Code:
bit5   must be set 1 (inactive register?)
bit4   must be set 0 (PPU 0x2000-0x2fff is RAM)
bit3:2 nametable A10 output select (0:PPU A10, 1:PPU A11, 2:0, 3:1)


bit4=1 にして nametable 領域から ROM データがでるか確認した方が良さそうです。

[mode 1]
Code:
bit5   charcter ROM capacity expansion bit (1:max 2Mbit, 0:max 4Mbit)
bit4   nametable memory select 0:chracter ROM, 1:cartridge VRAM or system VRAM?
bit3:2 inactive register


mode1,2,3 はカートリッジ内部の PPU 側の ROM (Charcter ROM) を charcter と nametable として兼用可能です。VRAM もバンク制御ができるようになっているようです。
RAM はファミコン本体の VRAM またはカートリッジ内部に増設した VRAM の片方を使用できると思います。VRC6 の pinout を見る限り、VRAM A10 専用の出力がないので、市販品のカートリッジでは 25pin の charcter A10 が VRAM A10 に配線されているものと思われます。(要確認)

カートリッジ内部に VRAM を増設した場合はファミコン内部 VRAM を無効にするので、カードエッジの VRAM CS# は +5V にするものと思われます。

VRAM バンクは bank0-bank7 までの記述がありますが、"外部VRAM 64K-SRAM 使用時"のときであって、 2Mbit まで搭載が可能できるかもしれません。

[mode 1-0, charcter memory max 2Mbit]
1-0 の 1 は bit1:0, 0 は bit5 を指します。

PPU memory map
Code:
0x0000-0x07ff CR0 / charcter ROM bank #0
0x0800-0x0fff CR1 / charcter ROM bank #1
0x1000-0x17ff CR2 / charcter ROM bank #2
0x1800-0x1fff CR3 / charcter ROM bank #3
0x2000-0x23ff CR4 / nametable ROM/RAM bank #0
0x2400-0x27ff CR5 / nametable ROM/RAM bank #1
0x2800-0x2bff CR6 / nametable ROM/RAM bank #2
0x2c00-0x2fff CR7 / nametable ROM/RAM bank #3


charcter ROM address assignment with CR0 to 3
Code:
A17:11 = CRx7:1
A10 = PPU A10 (CRx0 is discarded)
A9:0 = PPU A9:0


nametable ROM/RAM address assignment with CR4 to 7
Code:
A17:10 = CRx7:0
A9:0 = PPU A9:0


[mode 1-1, charcter memory max 4Mbit]
bit5 = 1 の場合の仕様が公式資料ではよくわからなくて、実際に動かさないとわかりません。

PPU memory map
Code:
0x0000-0x1fff mode 1-0 と同じらしい
0x2000-0x2fff よくわからない


charcter ROM address assignment with CR0 to 3
Code:
A18:11 = CRx7:0, (=Chracter A17:10)??
A10:0 = PPU A10:0??


No. 17/18 に (ハード的に外部で接続の変更が必要)と書かれているのは ROM への address bus は 1bit shift する必要があるからだと思われる。

sheet 18/18 の 「VROM バンクについて」の記述では name table ROM bank を 0x400 byte 単位で管理できるような記述があるが、私はうまく理解できない。

「VRAM について」は脱字があって、本来は「VRAM バンクについて」だと思われる。配線方法で定義が変えられると書いてあるので address bus を shift するか否かを基板設計者に任せているものと思われる。

[mode 2]
Code:
bit5   must be set 1 (inactive register?)
bit4   nametable memory select (0:ROM, 1:RAM)
bit3:2 nametable register select


PPU memory map (charcter area)
Code:
0x0000-0x03ff CR0 / charcter ROM bank #0
0x0400-0x07ff CR1 / charcter ROM bank #1
0x0800-0x0bff CR2 / charcter ROM bank #2
0x0c00-0x0fff CR3 / charcter ROM bank #3
0x1000-0x17ff CR4 / charcter ROM bank #4
0x1800-0x1fff CR5 / charcter ROM bank #5


charcter ROM address assignment with CR0 to 3
Code:
A17:10 = CRx7:0
A9:0 = PPU A9:0


charcter ROM address assignment with CR4 and 5
Code:
A17:11 = CRx7:1
A10 = PPU A10
A9:0 = PPU A9:0


[mode 2-0 (2=bit1:0, 1=bit3:2)]
PPU memory map (nametable area)
Code:
0x2000-0x23ff CR6 / nametable RAM/ROM bank #0
0x2400-0x27ff CR7 / nametable RAM/ROM bank #1
0x2800-0x2bff CR6 / nametable RAM/ROM bank #2
0x2c00-0x2fff CR7 / nametable RAM/ROM bank #3


[mode 2-1]
PPU memory map (nametable area)
Code:
0x2000-0x23ff CR6 / nametable RAM/ROM bank #0
0x2400-0x27ff CR6 / nametable RAM/ROM bank #0
0x2800-0x2bff CR7 / nametable RAM/ROM bank #2
0x2c00-0x2fff CR7 / nametable RAM/ROM bank #3


nametable ROM/RAM address assignment with CR6 and 7
Code:
A17:10 = CRx7:0
A9:0 = PPU A9:0


[mode 2-2, 2-3]
未記載。2-2 では CR6, 2-3 では CR7 が nametable にが割り当てられているかもしれない?

[mode 3]
(消しました)


Top
 Profile  
 
 Post subject: Re: VRC6 nametable
PostPosted: Tue Oct 29, 2013 11:21 pm 
Offline
User avatar

Joined: Mon Feb 09, 2009 9:10 am
Posts: 59
Location: リムルダール Rimuldar
[mode 3]
モード2のキャラバンク、VRAMバンク、VROMバンクの機能と同様。ただし、画面構成が異なる。
Code:
bit5   must be set 1
bit4   nametable memory select (0:ROM, 1:RAM)
bit3:2 nametable register selection


PPU memory map (charcter area)
Code:
0x0000-0x1fff mode2 と同じ


[mode 3-0, 0 is bit3:2]
PPU memory map (name table area)
Code:
              even    odd
0x2000-0x23ff CR6   / CR6-1
0x2400-0x27ff CR7   / CR7-1
0x2800-0x2bff CR6+1 / CR6
0x2c00-0x2fff CR7+1 / CR7


[mode 3-1]
Code:
              even    odd
0x2000-0x23ff CR6   / CR6-1
0x2400-0x27ff CR6+1 / CR6
0x2800-0x2bff CR7   / CR7-1
0x2c00-0x2fff CR7+1 / CR7


[mode 3-2]
Code:
              even    odd
0x2000-0x23ff CR6+1 / CR6
0x2400-0x27ff CR7+1 / CR6
0x2800-0x2bff CR6+1 / CR7
0x2c00-0x2fff CR7+1 / CR7


[mode 3-3]
Code:
              even    odd
0x2000-0x23ff CR6   / CR6-1
0x2400-0x27ff CR6   / CR6-1
0x2800-0x2bff CR7   / CR7-1
0x2c00-0x2fff CR7   / CR7-1


[考察]
No.12/18 には「モード2のキャラバンク,VRAMバンク,VROM バンクの機能と同様。ただし画面構成が異なる。」とある。
No.13/18から16/18 のバンクデータが偶数/奇数の時の説明に、VRAM1からVRAM4とあるが VRAM0 から VRAM3 の誤記と判断した。左側は VRAM, VROM の物理アドレスで PPU のメモリアドレスではないと判断した。右側の VRAM BANK の名称が左側と重複するがこれは nametable (= PPU address) と判断した。
CR6 と CR7 のレジスタに書かれる値は加減算が発生しているが、bit0 を反転させるだけなのか、bit7:0 まで反映されるのかが不明なので要調査。

No.16/18 の末尾の文字がかすれている。
Quote:
VROM バンクについても VRAM バンクと同様、上Xの
計算方法で画面に出力されます。
又、内部 VRAM XXXXXX考えらXX


読めない文字は自信はないが下記だと思われる。

Quote:
VROM バンクについても VRAM バンクと同様、上記の
計算方法で画面に出力されます。
又、内部 VRAM についても同様に考えられます。


ここでの内部VRAMはファミコン内部VRAMの意味で、接頭辞がないVRAMはカートリッジ内部増設RAMだと思われる。


Top
 Profile  
 
 Post subject: Re: VRC6 nametable
PostPosted: Wed Oct 30, 2013 7:37 am 
Offline
User avatar

Joined: Mon Feb 09, 2009 9:10 am
Posts: 59
Location: リムルダール Rimuldar
mode 別 PPU memory map 一覧を作ってみました。
Attachment:
vrc6.png
vrc6.png [ 15.8 KiB | Viewed 2806 times ]


Top
 Profile  
 
 Post subject: Re: VRC6 nametable
PostPosted: Thu Aug 14, 2014 1:00 pm 
Offline
User avatar

Joined: Mon Feb 07, 2011 12:46 pm
Posts: 902
I do not understand what is being mapped at PPU $3000-$3FFF.

_________________
.


Top
 Profile  
 
 Post subject: Re: VRC6 nametable
PostPosted: Tue Aug 19, 2014 10:28 pm 
Offline
User avatar

Joined: Fri Nov 19, 2004 7:35 pm
Posts: 3901
I'm guessing nothing special mapped there, so mirrors of 2000-2FFF, except for the palette?

_________________
Here come the fortune cookies! Here come the fortune cookies! They're wearing paper hats!


Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 5 posts ] 

All times are UTC - 7 hours


Who is online

Users browsing this forum: No registered users and 1 guest


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB® Forum Software © phpBB Group