|
GBDK 2020 Docs
4.4.0
API Documentation for GBDK 2020
|
#include <types.h>Go to the source code of this file.
Functions | |
| __REG (0x2000) PPUCTRL | |
| __REG (0x2001) PPUMASK | |
| __REG (0x2002) PPUSTATUS | |
| __REG (0x2003) OAMADDR | |
| __REG (0x2004) OAMDATA | |
| __REG (0x2005) PPUSCROLL | |
| __REG (0x2006) PPUADDR | |
| __REG (0x2007) PPUDATA | |
| __REG (0x4014) OAMDMA | |
Variables | |
| __SHADOW_REG | shadow_PPUCTRL |
| __SHADOW_REG | shadow_PPUMASK |
| __SHADOW_REG | bkg_scroll_x |
| __SHADOW_REG | bkg_scroll_y |
| __SHADOW_REG | _lcd_scanline |
| volatile UBYTE | TIMA_REG |
| volatile UBYTE | TMA_REG |
| volatile UBYTE | TAC_REG |
Defines that let the NES hardware registers be accessed from C.
| #define __SHADOW_REG extern volatile uint8_t |
| #define __REG | ( | addr | ) | volatile __at (addr) uint8_t |
| #define PPUCTRL_NMI 0b10000000 |
| #define PPUCTRL_SPR_8X8 0b00000000 |
| #define PPUCTRL_SPR_8X16 0b00100000 |
| #define PPUCTRL_BG_CHR 0b00010000 |
| #define PPUCTRL_SPR_CHR 0b00001000 |
| #define PPUCTRL_INC32 0b00000100 |
| #define PPUMASK_BLUE 0b10000000 |
| #define PPUMASK_RED 0b01000000 |
| #define PPUMASK_GREEN 0b00100000 |
| #define PPUMASK_SHOW_SPR 0b00010000 |
| #define PPUMASK_SHOW_BG 0b00001000 |
| #define PPUMASK_SHOW_SPR_LC 0b00000100 |
| #define PPUMASK_SHOW_BG_LC 0b00000010 |
| #define PPUMASK_MONOCHROME 0b00000001 |
| #define DEVICE_SCREEN_X_OFFSET 0 |
| #define DEVICE_SCREEN_Y_OFFSET 0 |
| #define DEVICE_SCREEN_WIDTH 32 |
| #define DEVICE_SCREEN_HEIGHT 30 |
| #define DEVICE_SCREEN_BUFFER_WIDTH 32 |
| #define DEVICE_SCREEN_BUFFER_HEIGHT 30 |
| #define DEVICE_SCREEN_MAP_ENTRY_SIZE 1 |
| #define DEVICE_SPRITE_PX_OFFSET_X 0 |
| #define DEVICE_SPRITE_PX_OFFSET_Y -1 |
| #define DEVICE_WINDOW_PX_OFFSET_X 0 |
| #define DEVICE_WINDOW_PX_OFFSET_Y 0 |
| #define DEVICE_SCREEN_PX_WIDTH (DEVICE_SCREEN_WIDTH * 8) |
| #define DEVICE_SCREEN_PX_HEIGHT (DEVICE_SCREEN_HEIGHT * 8) |
| #define SCY_REG bkg_scroll_y |
Scroll Y
| #define rSCY SCY_REG |
| #define SCX_REG bkg_scroll_x |
Scroll X
| #define rSCX SCX_REG |
| #define LY_REG _lcd_scanline |
LCDC Y-coordinate
| #define rLY LY_REG |
| #define LYC_REG _lcd_scanline |
LY compare
| #define rLYC LYC_REG |
| __REG | ( | 0x2000 | ) |
| __REG | ( | 0x2001 | ) |
| __REG | ( | 0x2002 | ) |
| __REG | ( | 0x2003 | ) |
| __REG | ( | 0x2004 | ) |
| __REG | ( | 0x2005 | ) |
| __REG | ( | 0x2006 | ) |
| __REG | ( | 0x2007 | ) |
| __REG | ( | 0x4014 | ) |
| __SHADOW_REG shadow_PPUCTRL |
| __SHADOW_REG shadow_PPUMASK |
| __SHADOW_REG bkg_scroll_x |
| __SHADOW_REG bkg_scroll_y |
| __SHADOW_REG _lcd_scanline |
|
extern |
Timer counter
|
extern |
Timer modulo
|
extern |
Timer control