• Rise from your gwave!

2 Bg's and 2 Color Palletes

Discussion in 'Saturn Dev' started by TakaIsSilly, Sep 14, 2001.

  1. TakaIsSilly

    TakaIsSilly New Member

    Well, I rant into a funny problem. No matter what turns i give into the matter, I can't seem to set 2 palletes in 2 layers. Actually, I can't define a color offset at all!

    For example...

    Code:
    
    slPageNbg1((void *)NBG1_TILE_N1 ,0x00, PNB_1WORD|CN_12BIT);
    
    and i have these define's
    
    #define NBG1_CRAM ( VDP2_COLRAM + 0x00000 )
    
    #define NBG2_CRAM ( VDP2_COLRAM + 0x00200 )
    
    The second value of slPage is supposed to set the pallete location. Strangely, i tried various values (0x01, NBG1_CRAM, 0xFF, 0x200) and nothing really seems to work. It gives allways the same pattete, the one that starts at VDP2_COLRAM. 
    
    I could use direct VDP2 registry access, but as this is for the tutorials, so it would be nice to use SGL calls only.
    
    *Edit, stupid error*
    
    (Edited by TakaIsSilly at 9:48 pm on Sep. 14, 2001)
     
  2. ExCyber

    ExCyber Staff Member

    I wish I knew more about SGL :( ... the only questions I can think of after skimming the SGL docs are: what color RAM mode are you in, and what kind of calls are you making to the slCharNBG functions? Those seem like they're relevant anyway :).
     
  3. TakaIsSilly

    TakaIsSilly New Member

    Well, here's the whole init code :

    <tt>

    slInitSystem(TV_320x224, NULL, 1);

    slColRAMMode(CRM16_1024);

    slCharNbg1(COL_TYPE_256 , CHAR_SIZE_1x1);

    slCharNbg2(COL_TYPE_256 , CHAR_SIZE_1x1);

    slPageNbg1((void *)NBG1_TILE_N1 ,0x00, PNB_1WORD|CN_12BIT);

    slPageNbg2((void *)NBG2_TILE_N2 ,0x00, PNB_1WORD|CN_12BIT);

    slScrTransparent(NBG2ON);

    slPlaneNbg1(PL_SIZE_1x1);

    slPlaneNbg2(PL_SIZE_1x1);

    slMapNbg1((void *)NBG1_MAP_N1 , (void *)NBG1_MAP_N1 , (void *)NBG1_MAP_N1 , (void *)NBG1_MAP_N1);

    slMapNbg2((void *)NBG2_MAP_N2 , (void *)NBG2_MAP_N2 , (void *)NBG2_MAP_N2 , (void *)NBG2_MAP_N2);

    LoadFile("PIC2.BIN",(void*) LO_WRAM, 512);

    ReadScr((void*) LO_WRAM,(void*) NBG1_TILE_N1,(void*) NBG1_MAP_N1,(void*) NBG1_CRAM_N1);

    slPrint("File1 Loadeds", slLocate(5,1));

    LoadFile("PIC2.BIN",(void*) LO_WRAM, 512);

    ReadScr((void*) LO_WRAM,(void*) NBG2_TILE_N2,(void*) NBG2_MAP_N2,(void*) NBG1_CRAM_N1);

    slPrint("File1 Loaded", slLocate(5,2));

    slTVOn();

    </tt>

    (Edited by TakaIsSilly at 10:57 pm on Sep. 15, 2001)
     

Share This Page