git.y1.nz

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.