gbdk-2020 | GameBoy Development Kit |
| download: https://git.y1.nz/archives/gbdk.tar.gz | |
| README | Files | Log | Refs | LICENSE |
gbdk-lib/examples/gb/colorbar/colorbar.c
1 #include <gb/gb.h>
2 #include <gb/cgb.h>
3 #include <stdint.h>
4
5 #include "bar_c.h"
6 #include "bar_c.c"
7 #include "bar_m.c"
8
9 const uint16_t bar_p[] =
10 {
11 bar_cCGBPal0c0,bar_cCGBPal0c1,bar_cCGBPal0c2,bar_cCGBPal0c3,
12 bar_cCGBPal1c0,bar_cCGBPal1c1,bar_cCGBPal1c2,bar_cCGBPal1c3,
13 bar_cCGBPal2c0,bar_cCGBPal2c1,bar_cCGBPal2c2,bar_cCGBPal2c3,
14 bar_cCGBPal3c0,bar_cCGBPal3c1,bar_cCGBPal3c2,bar_cCGBPal3c3,
15 bar_cCGBPal4c0,bar_cCGBPal4c1,bar_cCGBPal4c2,bar_cCGBPal4c3,
16 bar_cCGBPal5c0,bar_cCGBPal5c1,bar_cCGBPal5c2,bar_cCGBPal5c3,
17 bar_cCGBPal6c0,bar_cCGBPal6c1,bar_cCGBPal6c2,bar_cCGBPal6c3,
18 bar_cCGBPal7c0,bar_cCGBPal7c1,bar_cCGBPal7c2,bar_cCGBPal7c3
19 };
20
21 const unsigned char bar_a[] =
22 {
23 7,7,4,4,4,6,6,6,2,2,2,5,5,5,1,1,1,3,3,3,
24 7,7,4,4,4,6,6,6,2,2,2,5,5,5,1,1,1,3,3,3,
25 7,7,4,4,4,6,6,6,2,2,2,5,5,5,1,1,1,3,3,3,
26 7,7,4,4,4,6,6,6,2,2,2,5,5,5,1,1,1,3,3,3,
27 7,7,4,4,4,6,6,6,2,2,2,5,5,5,1,1,1,3,3,3,
28 7,7,4,4,4,6,6,6,2,2,2,5,5,5,1,1,1,3,3,3,
29 7,7,4,4,4,6,6,6,2,2,2,5,5,5,1,1,1,3,3,3,
30 7,7,4,4,4,6,6,6,2,2,2,5,5,5,1,1,1,3,3,3,
31 7,7,4,4,4,6,6,6,2,2,2,5,5,5,1,1,1,3,3,3,
32 7,7,4,4,4,6,6,6,2,2,2,5,5,5,1,1,1,3,3,3,
33 7,7,4,4,4,6,6,6,2,2,2,5,5,5,1,1,1,3,3,3,
34 7,7,4,4,4,6,6,6,2,2,2,5,5,5,1,1,1,3,3,3,
35 7,7,4,4,4,6,6,6,2,2,2,5,5,5,1,1,1,3,3,3,
36 7,7,4,4,4,6,6,6,2,2,2,5,5,5,1,1,1,3,3,3,
37 3,3,0,0,0,5,5,5,0,0,0,6,6,6,0,0,0,7,7,7,
38 3,3,3,3,0,0,0,0,5,5,5,5,0,0,0,0,0,0,0,0,
39 3,3,3,3,0,0,0,0,5,5,5,5,0,0,0,0,0,0,0,0,
40 3,3,3,3,0,0,0,0,5,5,5,5,0,0,0,0,0,0,0,0
41 };
42
43 int main(void)
44 {
45 /* Transfer color palettes */
46 set_bkg_palette( BKGF_CGB_PAL7, 1, &bar_p[0] );
47 set_bkg_palette( BKGF_CGB_PAL6, 1, &bar_p[4] );
48 set_bkg_palette( BKGF_CGB_PAL5, 1, &bar_p[8] );
49 set_bkg_palette( BKGF_CGB_PAL4, 1, &bar_p[12] );
50 set_bkg_palette( BKGF_CGB_PAL3, 1, &bar_p[16] );
51 set_bkg_palette( BKGF_CGB_PAL2, 1, &bar_p[20] );
52 set_bkg_palette( BKGF_CGB_PAL1, 1, &bar_p[24] );
53 set_bkg_palette( BKGF_CGB_PAL0, 1, &bar_p[28] );
54
55 /* CHR code transfer */
56 set_bkg_data( 0x0, 32, bar_c );
57
58 /* Select VRAM bank 1 */
59 VBK_REG = VBK_ATTRIBUTES;
60 /* Set attributes */
61 set_bkg_tiles( 0, 0, bar_mWidth, bar_mHeight, bar_a );
62
63 /* Select VRAM bank 0 */
64 VBK_REG = VBK_TILES;
65 /* Set data */
66 set_bkg_tiles( 0, 0, bar_mWidth, bar_mHeight, bar_m );
67
68 SHOW_BKG;
69 enable_interrupts();
70 DISPLAY_ON;
71
72 return 0;
73 }
This webpage is intended to be an accessible preview of this repository. To get a fuller picture, clone it and use the git CLI.