Swap VDP2 layers

paul_met

Established Member
Does anyone know how to swap layers of vdp2? For example, we have a title screen, where NBG2 layer is responsible for the background image, and NBG1 layer is responsible for the logo. I want to do opposite - NBG2 layer a became a logo and NBG1 layer became background image. How do the images are relating for certain layers of VDP2 generally? I do not find anything similar information in VDP2 documentation.
 
I know about this, but the priority in my case is not suitable. Swapping layers required in order to do that I needed a scalable layer.
 
then you must swap nbg config and modify cycle patterns, also depending on lyers you can't do the same thing, nbg0 & nbg1 support more stuff.

on sbl it looks like this :

Uint16 CycleTb[]={
0x1f56, 0xffff, //A0
0xffff, 0xffff, //A1
0xf5f2,0x4eff, //B0
0xffff, 0xffff //B1
// 0x4eff, 0x1fff, //B1
};
SclConfig scfg;

// 3 nbg
scfg.dispenbl = ON;
scfg.charsize = SCL_CHAR_SIZE_1X1;//OK du 1*1 surtout pas toucher
scfg.pnamesize = SCL_PN2WORD; //2word
scfg.platesize = SCL_PL_SIZE_1X1; // ou 2X2 ?
scfg.coltype = SCL_COL_TYPE_16;//SCL_COL_TYPE_256;
scfg.datatype = SCL_CELL;
scfg.flip = SCL_PN_10BIT; // on force à 0
scfg.plate_addr[0] = (Uint32)SS_MAP2;
scfg.plate_addr[1] = 0x00;
SCL_SetConfig(SCL_NBG1, &scfg);
// 3 nbg
scfg.platesize = SCL_PL_SIZE_2X2; // ou 2X2 ?
scfg.plate_addr[0] = (Uint32)SS_MAP;
scfg.plate_addr[1] = (Uint32)SS_MAP;
scfg.plate_addr[2] = (Uint32)SS_MAP;
scfg.plate_addr[3] = (Uint32)SS_MAP;

SCL_SetConfig(SCL_NBG2, &scfg);
 
Back
Top