i'm assuming this is somewhat correct: Code: | | | /* -*- mode: c; tab-width: 4; -*- */ #include "misc.h" #include "nbg2.h" #include "regs.h" #include "sclf.h" #include "vdp2.h" #define NBG2_CEL (VDP2_VRAM_A0 + 0x40000) #define NBG2_MAP VDP2_VRAM_A0 #define NBG2_COL VDP2_CRAM int ss(void) { struct vdp2_t *vdp2 = (struct vdp2_t *)VDP2; vdp2->reg[TVMD] = 0x0000; sclf_cel_vram(gpad_cel,(void *)NBG2_CEL,31808); sclf_map_vram(gpad_map,(void *)NBG2_MAP,32,24,0,256); sclf_pal_cram(gpad_pal,(void *)NBG2_COL,256); vdp2->reg[PRINB] = N2PRIN; vdp2->reg[BGON] = BIT(2); vdp2->reg[CHCTLB] = BIT(1); vdp2->reg[PLSZ] = 0x0000; vdp2->reg[PNCN2] = BIT(14) | BIT(15); vdp2->reg[MPABN2] = 0x0000; /* VDP2_MAP(NBG2_MAP,NBG2_MAP); */ vdp2->reg[MPCDN2] = 0x0000; /* VDP2_MAP(NBG2_MAP,NBG2_MAP); */ vdp2->reg[RAMCTL] = BIT(8) | BIT(9); vdp2->reg[CYCA0U] = 0x0FFF; vdp2->reg[CYCA0L] = 0xFFFF; vdp2->reg[CYCA1U] = 0xCFFF; vdp2->reg[CYCA1L] = 0xFFFF; vdp2->reg[CYCB0U] = 0x44FF; vdp2->reg[CYCB0L] = 0xFFFF; vdp2->reg[TVMD] = BIT(15); while(1) { vdp2_vblank(vdp2); } return 0; } /* EOF */ |
okay, i changed it to: Code: | | | vdp2->reg[CYCA0U] = 0x1FFF; vdp2->reg[CYCA0L] = 0xFFFF; vdp2->reg[CYCA1U] = 0xFFFF; vdp2->reg[CYCA1L] = 0xFFFF; vdp2->reg[CYCB0U] = 0x66FF; vdp2->reg[CYCB0L] = 0xFFFF; |
|