VDP2 questions

GO TO ADMIN PANEL > ADD-ONS AND INSTALL VERTIFORO SIDEBAR TO SEE FORUMS AND SIDEBAR

paul_met

New Member
Joined
Aug 28, 2014
Messages
110
Points
18
Age
36
Location
Belarus
Website
meduza-team.ucoz.net
When setting Color Ram Mode = 0, the palette read address for layers NBG1 and NBG3 changes from 0x05F00420 to 0x05F0C20. How do I return the read address 0x05F00420?
 

fafling

New Member
Joined
Aug 11, 2019
Messages
20
Points
3
Age
44
How did you get those addresses ? I would expect them to change the other way when changing CRAM type from 1 to 0, since there's only 2048 bytes of content in color RAM mode 0, versus 4096 in mode 1. On p. 216 of VDP2 manual : "When the color RAM mode is 0 or 2, the color RAM address MSB is ignored.", so CRAM addresses should become smaller, not bigger.
 

paul_met

New Member
Joined
Aug 28, 2014
Messages
110
Points
18
Age
36
Location
Belarus
Website
meduza-team.ucoz.net
How did you get those addresses ? I would expect them to change the other way when changing CRAM type from 1 to 0, since there's only 2048 bytes of content in color RAM mode 0, versus 4096 in mode 1. On p. 216 of VDP2 manual : "When the color RAM mode is 0 or 2, the color RAM address MSB is ignored.", so CRAM addresses should become smaller, not bigger.
First, I found a palette for layers NBG1 and NBG3 (it is located at 0x05F00420). When I change CRM = 0, the image for the NBG1 and NBG3 layers deteriorates (see the first image from post #22). I found out that in this case the reading address of the palette for the above layers changes and the count begins from 0x05F0C20. Why this happens I do not know. Changing parameters at addresses (180032-180036) and 1800E4 does not give the desired result. Since changing the CRM parameter does not affect the display of the NBG0 and NBG2 layers, it seems to me that the whole point is that these layers use different VRAM bank partitions (18000E). Changing the values of 8 and 9 bits at this address affects the display of all layers.
 

fafling

New Member
Joined
Aug 11, 2019
Messages
20
Points
3
Age
44
What you describe looks like an emulator bug : I would expect references to relative address 0x420 of color RAM to stay the same when mode is switched to 0, and references to relative address 0xC20 to become 0x420.

Bank partitioning corrupts or cancels layers display if you don't set the required cycle patterns for access to the VRAM areas where the layers are located. Emulators tend to be more permissive than the console regarding cycle patterns.
However, partitioning should not impact the color RAM addresses used by a layer, and if it does, that's again an emulator bug.
 
Top