Working with cards and vblanking
This commit is contained in:
@@ -186,8 +186,8 @@ void main() {
|
||||
pokerInit();
|
||||
|
||||
// Fill screen white
|
||||
for(j = 0; j < GB_BACKGROUND_COLUMNS * GB_BACKGROUND_ROWS; j++) filled[j] = TILESET_WHITE;
|
||||
set_bkg_tiles(0x00, 0x00, GB_BACKGROUND_COLUMNS, GB_BACKGROUND_ROWS, filled);
|
||||
for(j = 0; j < GB_BACKGROUND_COLUMNS * GB_BACKGROUND_ROWS; j++) filled[j] = SPRITE_TILESET_BLACK_LOW;
|
||||
spriteBufferBackgroundLow(0x00, 0x00, GB_BACKGROUND_COLUMNS, GB_BACKGROUND_ROWS, filled);
|
||||
SCX_REG = 0x00;
|
||||
SCY_REG = 0x00;
|
||||
|
||||
@@ -198,7 +198,7 @@ void main() {
|
||||
cardTiles,
|
||||
CARD_HEARTS_TWO
|
||||
);
|
||||
set_bkg_tiles(0x00, 0x00, 4, 6, cardTiles);
|
||||
// set_bkg_tiles(0x00, 0x00, 4, 6, cardTiles);
|
||||
|
||||
// Now turn the screen on
|
||||
DISPLAY_ON;
|
||||
@@ -206,13 +206,15 @@ void main() {
|
||||
wait_vbl_done();
|
||||
|
||||
// Begin game
|
||||
conversationQueueNext();
|
||||
// conversationQueueNext();
|
||||
|
||||
// Begin the loop
|
||||
while(1) {
|
||||
// Perform non-graphical code updates
|
||||
wait_vbl_done();
|
||||
|
||||
continue;
|
||||
|
||||
// Update the input state
|
||||
INPUT_LAST = INPUT_STATE;
|
||||
INPUT_STATE = joypad();
|
||||
|
Binary file not shown.
Before Width: | Height: | Size: 832 B After Width: | Height: | Size: 4.2 KiB |
Binary file not shown.
Binary file not shown.
@@ -8,7 +8,8 @@
|
||||
"scripts": {
|
||||
"clean": "node ./scripts/clean",
|
||||
"build": "npm run clean && node ./scripts/build",
|
||||
"start": "npm run build && wine ./bgb/bgb64.exe ./build/Penny.gb"
|
||||
"bgb": "wine ./bgb/bgb64.exe ./build/Penny.gb",
|
||||
"start": "npm run build && npm run bgb"
|
||||
},
|
||||
"dependencies": {
|
||||
"pngjs": "^6.0.0",
|
||||
|
@@ -10,8 +10,8 @@ const {
|
||||
|
||||
const getPixelValue = (pixel) => {
|
||||
if(pixel.g === 188) return 0;
|
||||
if(pixel.g === 172) return 1;
|
||||
if(pixel.g === 98 || pixel.g === 145) return 2;
|
||||
if(pixel.g === 172 || pixel.g === 145) return 1;
|
||||
if(pixel.g === 98) return 2;
|
||||
if(pixel.g === 56) return 3;
|
||||
if(pixel.a === 0) return 0;
|
||||
throw new Error();
|
||||
|
@@ -44,7 +44,7 @@ void questionBoxSetOptions(char *title, char **options, uint8_t count) {
|
||||
|
||||
// Repurpose old array and draw arrow
|
||||
spaces[0] = spriteFontTileFromChar(QUESTION_BOX_CURSOR);
|
||||
set_bkg_tiles(0x01, TEXTBOX_WIN_Y + 0x02, 1, 1, spaces);
|
||||
spriteBufferBackgroundHigh(0x01, TEXTBOX_WIN_Y + 0x02, 1, 1, spaces);
|
||||
}
|
||||
|
||||
inline void questionBoxUpdate() {
|
||||
@@ -76,7 +76,7 @@ inline void questionBoxUpdate() {
|
||||
} else {
|
||||
tiles[0] = spriteFontTileFromChar(' ');
|
||||
}
|
||||
set_bkg_tiles(
|
||||
spriteBufferBackgroundHigh(
|
||||
0x01 + ((i % 0x02) * QUESTION_BOX_QUESTION_SPACES),
|
||||
TEXTBOX_WIN_Y + 0x02 + (i / 0x02),
|
||||
1, 1,
|
||||
|
@@ -83,10 +83,10 @@ inline void textboxFillBlank() {
|
||||
uint8_t tiles[TEXTBOX_WIDTH_IN_TILES * TEXTBOX_HEIGHT_IN_TILES];
|
||||
|
||||
spriteBorderBufferEdges(
|
||||
tiles, TEXTBOX_WIDTH_IN_TILES, TEXTBOX_HEIGHT_IN_TILES, SPRITE_TILESET_WHITE
|
||||
tiles, TEXTBOX_WIDTH_IN_TILES, TEXTBOX_HEIGHT_IN_TILES, SPRITE_TILESET_WHITE_HIGH
|
||||
);
|
||||
|
||||
set_bkg_tiles(
|
||||
spriteBufferBackgroundHigh(
|
||||
0x00, TEXTBOX_WIN_Y,
|
||||
TEXTBOX_WIDTH_IN_TILES, TEXTBOX_HEIGHT_IN_TILES,
|
||||
tiles
|
||||
@@ -129,7 +129,7 @@ inline void conversationTextboxUpdate() {
|
||||
} else {
|
||||
tile = spriteFontTileFromChar(c);
|
||||
|
||||
set_bkg_tiles(
|
||||
spriteBufferBackgroundHigh(
|
||||
0x01 + (TEXTBOX_SCROLL % TEXTBOX_CHARS_PER_ROW),
|
||||
TEXTBOX_WIN_Y + 0x01 + (TEXTBOX_SCROLL / TEXTBOX_CHARS_PER_ROW),
|
||||
1, 1,
|
||||
|
@@ -13,3 +13,6 @@
|
||||
#include <stdbool.h>
|
||||
#include <rand.h>
|
||||
#include <string.h>
|
||||
|
||||
#define TILE_WIDTH 8
|
||||
#define TILE_HEIGHT 8
|
30
src/main.c
30
src/main.c
@@ -7,14 +7,36 @@
|
||||
|
||||
#include "main.h"
|
||||
|
||||
#define TEXTBOX_INTERRUPT_Y ((TEXTBOX_WIN_Y * TILE_HEIGHT) - 1)
|
||||
|
||||
// TODO: cleanup
|
||||
void scanline_isr() {
|
||||
if(LYC_REG == 0) {
|
||||
LYC_REG = TEXTBOX_INTERRUPT_Y;
|
||||
LCDC_REG |= LCDCF_BG8000;
|
||||
} else if(LYC_REG == TEXTBOX_INTERRUPT_Y) {
|
||||
LYC_REG = 0;
|
||||
LCDC_REG &= ~LCDCF_BG8000;
|
||||
}
|
||||
}
|
||||
|
||||
void main() {
|
||||
int16_t j;
|
||||
uint8_t filled[GB_BACKGROUND_COLUMNS*GB_BACKGROUND_ROWS];
|
||||
|
||||
// Set up the GAMEBOY's registers.
|
||||
disable_interrupts();
|
||||
|
||||
// Create a critical section
|
||||
CRITICAL {
|
||||
DISPLAY_OFF;
|
||||
LCDC_REG = LCDCF_OFF | LCDCF_BG8000 | LCDCF_BG9800 | LCDCF_BGON;
|
||||
STAT_REG |= STATF_LYC;
|
||||
LYC_REG = 0;
|
||||
|
||||
add_LCD(scanline_isr);
|
||||
}
|
||||
set_interrupts(VBL_IFLAG | LCD_IFLAG);
|
||||
|
||||
// Set the background color palette register
|
||||
BGP_REG = OBP0_REG = OBP1_REG = 0xE4U;
|
||||
@@ -24,9 +46,9 @@ void main() {
|
||||
|
||||
// Init things
|
||||
spriteTilesetBuffer();
|
||||
spriteCardsBuffer();
|
||||
spriteFontBuffer();
|
||||
spriteBorderBuffer();
|
||||
spriteCardsBuffer();
|
||||
|
||||
conversationTextboxInit();
|
||||
conversationQueueInit();
|
||||
@@ -34,16 +56,16 @@ void main() {
|
||||
|
||||
// Fill screen white
|
||||
for(j = 0; j < GB_BACKGROUND_COLUMNS * GB_BACKGROUND_ROWS; j++) {
|
||||
filled[j] = SPRITE_TILESET_WHITE;
|
||||
filled[j] = SPRITE_TILESET_WHITE_LOW;
|
||||
}
|
||||
set_bkg_tiles(0x00, 0x00, GB_BACKGROUND_COLUMNS, GB_BACKGROUND_ROWS, filled);
|
||||
spriteBufferBackgroundLow(0x00, 0x00, GB_BACKGROUND_COLUMNS, GB_BACKGROUND_ROWS, filled);
|
||||
SCX_REG = 0x00;
|
||||
SCY_REG = 0x00;
|
||||
|
||||
// Card Test
|
||||
uint8_t cardTiles[SPRITE_CARD_TILE_COUNT];
|
||||
spriteCardBufferTiles(cardTiles, CARD_HEARTS_TWO);
|
||||
set_bkg_tiles(0x00, 0x00, SPRITE_CARD_WIDTH, SPRITE_CARD_HEIGHT, cardTiles);
|
||||
spriteBufferBackgroundLow(0x00, 0x00, SPRITE_CARD_WIDTH, SPRITE_CARD_HEIGHT, cardTiles);
|
||||
|
||||
// Now turn the screen on
|
||||
DISPLAY_ON;
|
||||
|
@@ -8,7 +8,7 @@
|
||||
#include "spriteborder.h"
|
||||
|
||||
inline void spriteBorderBuffer() {
|
||||
spriteBuffer(SPRITE_BORDER_VRAM_START, BORDER_IMAGE_TILES, BORDER_IMAGE);
|
||||
spriteBufferHigh(SPRITE_BORDER_VRAM_START, BORDER_IMAGE_TILES, BORDER_IMAGE);
|
||||
}
|
||||
|
||||
inline void spriteBorderBufferEdges(
|
||||
|
@@ -9,9 +9,9 @@
|
||||
#include "../libs.h"
|
||||
#include "sprites.h"
|
||||
#include "BORDER.h"
|
||||
#include "spritefont.h"
|
||||
#include "spritetileset.h"
|
||||
|
||||
#define SPRITE_BORDER_VRAM_START SPRITE_FONT_VRAM_END
|
||||
#define SPRITE_BORDER_VRAM_START SPRITE_TILESET_VRAM_END_HIGH
|
||||
#define SPRITE_BORDER_VRAM_END SPRITE_BORDER_VRAM_START + BORDER_IMAGE_TILES
|
||||
|
||||
#define SPRITE_BORDER_TOP_LEFT 0x00
|
||||
|
@@ -10,22 +10,374 @@
|
||||
const uint8_t SPRITE_HEARTS_ACE[SPRITE_CARD_TILE_COUNT] = {
|
||||
SPRITE_CARD_ACE_TOP, SPRITE_CARD_TOP, SPRITE_CARD_TOP, SPRITE_CARD_TOP_RIGHT,
|
||||
SPRITE_CARD_LEFT, SPRITE_CARD_BLANK, SPRITE_CARD_BLANK, SPRITE_CARD_RIGHT,
|
||||
SPRITE_CARD_LEFT, SPRITE_CARD_HEART_BIG_TOP_LEFT, SPRITE_CARD_HEART_BIG_TOP_RIGHT, SPRITE_CARD_RIGHT,
|
||||
SPRITE_CARD_LEFT, SPRITE_CARD_HEART_BIG_BOTTOM_LEFT, SPRITE_CARD_HEART_BIG_BOTTOM_RIGHT, SPRITE_CARD_RIGHT,
|
||||
SPRITE_CARD_LEFT, SPRITE_CARD_HEARTS_BIG_TOP_LEFT, SPRITE_CARD_HEARTS_BIG_TOP_RIGHT, SPRITE_CARD_RIGHT,
|
||||
SPRITE_CARD_LEFT, SPRITE_CARD_HEARTS_BIG_BOTTOM_LEFT, SPRITE_CARD_HEARTS_BIG_BOTTOM_RIGHT, SPRITE_CARD_RIGHT,
|
||||
SPRITE_CARD_LEFT, SPRITE_CARD_BLANK, SPRITE_CARD_BLANK, SPRITE_CARD_RIGHT,
|
||||
SPRITE_CARD_BOTTOM_LEFT, SPRITE_CARD_BOTTOM, SPRITE_CARD_BOTTOM, SPRITE_CARD_BOTTOM_RIGHT
|
||||
SPRITE_CARD_BOTTOM_LEFT, SPRITE_CARD_BOTTOM, SPRITE_CARD_BOTTOM, SPRITE_CARD_ACE_BOTTOM
|
||||
};
|
||||
|
||||
const uint8_t SPRITE_HEARTS_TWO[SPRITE_CARD_TILE_COUNT] = {
|
||||
SPRITE_CARD_TWO_TOP, SPRITE_CARD_TOP, SPRITE_CARD_TOP, SPRITE_CARD_TOP_RIGHT,
|
||||
SPRITE_CARD_LEFT, SPRITE_CARD_HEARTS_BIG_TOP_LEFT, SPRITE_CARD_HEARTS_BIG_TOP_RIGHT, SPRITE_CARD_RIGHT,
|
||||
SPRITE_CARD_LEFT, SPRITE_CARD_HEARTS_BIG_BOTTOM_LEFT, SPRITE_CARD_HEARTS_BIG_BOTTOM_RIGHT, SPRITE_CARD_RIGHT,
|
||||
SPRITE_CARD_LEFT, SPRITE_CARD_HEARTS_BIG_TOP_LEFT, SPRITE_CARD_HEARTS_BIG_TOP_RIGHT, SPRITE_CARD_RIGHT,
|
||||
SPRITE_CARD_LEFT, SPRITE_CARD_HEARTS_BIG_BOTTOM_LEFT, SPRITE_CARD_HEARTS_BIG_BOTTOM_RIGHT, SPRITE_CARD_RIGHT,
|
||||
SPRITE_CARD_BOTTOM_LEFT, SPRITE_CARD_BOTTOM, SPRITE_CARD_BOTTOM, SPRITE_CARD_TWO_BOTTOM
|
||||
};
|
||||
|
||||
const uint8_t SPRITE_HEARTS_THREE[SPRITE_CARD_TILE_COUNT] = {
|
||||
SPRITE_CARD_THREE_TOP, SPRITE_CARD_TOP, SPRITE_CARD_TOP, SPRITE_CARD_TOP_RIGHT,
|
||||
SPRITE_CARD_LEFT, SPRITE_CARD_HEARTS_MED_LEFT, SPRITE_CARD_HEARTS_MED_RIGHT, SPRITE_CARD_RIGHT,
|
||||
SPRITE_CARD_LEFT, SPRITE_CARD_HEARTS_BIG_TOP_LEFT, SPRITE_CARD_HEARTS_BIG_TOP_RIGHT, SPRITE_CARD_RIGHT,
|
||||
SPRITE_CARD_LEFT, SPRITE_CARD_HEARTS_BIG_BOTTOM_LEFT, SPRITE_CARD_HEARTS_BIG_BOTTOM_RIGHT, SPRITE_CARD_RIGHT,
|
||||
SPRITE_CARD_LEFT, SPRITE_CARD_HEARTS_MED_LEFT, SPRITE_CARD_HEARTS_MED_RIGHT, SPRITE_CARD_RIGHT,
|
||||
SPRITE_CARD_BOTTOM_LEFT, SPRITE_CARD_BOTTOM, SPRITE_CARD_BOTTOM, SPRITE_CARD_THREE_BOTTOM
|
||||
};
|
||||
|
||||
const uint8_t SPRITE_HEARTS_FOUR[SPRITE_CARD_TILE_COUNT] = {
|
||||
SPRITE_CARD_FOUR_TOP, SPRITE_CARD_TOP, SPRITE_CARD_TOP, SPRITE_CARD_TOP_RIGHT,
|
||||
SPRITE_CARD_HEARTS_EDGE_LEFT_LEFT, SPRITE_CARD_HEARTS_EDGE_LEFT_RIGHT, SPRITE_CARD_HEARTS_EDGE_RIGHT_LEFT, SPRITE_CARD_HEARTS_EDGE_RIGHT_RIGHT,
|
||||
SPRITE_CARD_LEFT, SPRITE_CARD_BLANK, SPRITE_CARD_BLANK, SPRITE_CARD_RIGHT,
|
||||
SPRITE_CARD_LEFT, SPRITE_CARD_BLANK, SPRITE_CARD_BLANK, SPRITE_CARD_RIGHT,
|
||||
SPRITE_CARD_HEARTS_EDGE_LEFT_LEFT, SPRITE_CARD_HEARTS_EDGE_LEFT_RIGHT, SPRITE_CARD_HEARTS_EDGE_RIGHT_LEFT, SPRITE_CARD_HEARTS_EDGE_RIGHT_RIGHT,
|
||||
SPRITE_CARD_BOTTOM_LEFT, SPRITE_CARD_BOTTOM, SPRITE_CARD_BOTTOM, SPRITE_CARD_FOUR_BOTTOM
|
||||
};
|
||||
|
||||
const uint8_t SPRITE_HEARTS_FIVE[SPRITE_CARD_TILE_COUNT] = {
|
||||
SPRITE_CARD_FIVE_TOP, SPRITE_CARD_TOP, SPRITE_CARD_TOP, SPRITE_CARD_TOP_RIGHT,
|
||||
SPRITE_CARD_HEARTS_EDGE_LEFT_LEFT, SPRITE_CARD_HEARTS_EDGE_LEFT_RIGHT, SPRITE_CARD_HEARTS_EDGE_RIGHT_LEFT, SPRITE_CARD_HEARTS_EDGE_RIGHT_RIGHT,
|
||||
SPRITE_CARD_LEFT, SPRITE_CARD_HEARTS_BIG_TOP_LEFT, SPRITE_CARD_HEARTS_BIG_TOP_RIGHT, SPRITE_CARD_RIGHT,
|
||||
SPRITE_CARD_LEFT, SPRITE_CARD_HEARTS_BIG_BOTTOM_LEFT, SPRITE_CARD_HEARTS_BIG_BOTTOM_RIGHT, SPRITE_CARD_RIGHT,
|
||||
SPRITE_CARD_HEARTS_EDGE_LEFT_LEFT, SPRITE_CARD_HEARTS_EDGE_LEFT_RIGHT, SPRITE_CARD_HEARTS_EDGE_RIGHT_LEFT, SPRITE_CARD_HEARTS_EDGE_RIGHT_RIGHT,
|
||||
SPRITE_CARD_BOTTOM_LEFT, SPRITE_CARD_BOTTOM, SPRITE_CARD_BOTTOM, SPRITE_CARD_FIVE_BOTTOM
|
||||
};
|
||||
|
||||
const uint8_t SPRITE_HEARTS_SIX[SPRITE_CARD_TILE_COUNT] = {
|
||||
SPRITE_CARD_SIX_TOP, SPRITE_CARD_TOP, SPRITE_CARD_TOP, SPRITE_CARD_TOP_RIGHT,
|
||||
SPRITE_CARD_HEARTS_EDGE_LEFT_LEFT, SPRITE_CARD_HEARTS_EDGE_LEFT_RIGHT, SPRITE_CARD_HEARTS_EDGE_RIGHT_LEFT, SPRITE_CARD_HEARTS_EDGE_RIGHT_RIGHT,
|
||||
SPRITE_CARD_LEFT, SPRITE_CARD_HEARTS_MED_LEFT, SPRITE_CARD_HEARTS_MED_RIGHT, SPRITE_CARD_RIGHT,
|
||||
SPRITE_CARD_LEFT, SPRITE_CARD_HEARTS_MED_LEFT, SPRITE_CARD_HEARTS_MED_RIGHT, SPRITE_CARD_RIGHT,
|
||||
SPRITE_CARD_HEARTS_EDGE_LEFT_LEFT, SPRITE_CARD_HEARTS_EDGE_LEFT_RIGHT, SPRITE_CARD_HEARTS_EDGE_RIGHT_LEFT, SPRITE_CARD_HEARTS_EDGE_RIGHT_RIGHT,
|
||||
SPRITE_CARD_BOTTOM_LEFT, SPRITE_CARD_BOTTOM, SPRITE_CARD_BOTTOM, SPRITE_CARD_SIX_BOTTOM
|
||||
};
|
||||
|
||||
const uint8_t SPRITE_HEARTS_SEVEN[SPRITE_CARD_TILE_COUNT] = {
|
||||
SPRITE_CARD_SEVEN_TOP, SPRITE_CARD_TOP, SPRITE_CARD_TOP, SPRITE_CARD_TOP_RIGHT,
|
||||
SPRITE_CARD_HEARTS_EDGE_LEFT_LEFT, SPRITE_CARD_HEARTS_MIDDLE_TOP_LEFT, SPRITE_CARD_HEARTS_MIDDLE_TOP_RIGHT, SPRITE_CARD_HEARTS_EDGE_RIGHT_RIGHT,
|
||||
SPRITE_CARD_LEFT, SPRITE_CARD_HEARTS_BIG_BOTTOM_LEFT, SPRITE_CARD_HEARTS_BIG_BOTTOM_RIGHT, SPRITE_CARD_RIGHT,
|
||||
SPRITE_CARD_HEARTS_EDGE_LEFT_LEFT, SPRITE_CARD_HEARTS_EDGE_LEFT_RIGHT, SPRITE_CARD_HEARTS_EDGE_RIGHT_LEFT, SPRITE_CARD_HEARTS_EDGE_RIGHT_RIGHT,
|
||||
SPRITE_CARD_HEARTS_EDGE_LEFT_LEFT, SPRITE_CARD_HEARTS_EDGE_LEFT_RIGHT, SPRITE_CARD_HEARTS_EDGE_RIGHT_LEFT, SPRITE_CARD_HEARTS_EDGE_RIGHT_RIGHT,
|
||||
SPRITE_CARD_BOTTOM_LEFT, SPRITE_CARD_BOTTOM, SPRITE_CARD_BOTTOM, SPRITE_CARD_SEVEN_BOTTOM
|
||||
};
|
||||
|
||||
const uint8_t SPRITE_HEARTS_EIGHT[SPRITE_CARD_TILE_COUNT] = {
|
||||
SPRITE_CARD_EIGHT_TOP, SPRITE_CARD_TOP, SPRITE_CARD_TOP, SPRITE_CARD_TOP_RIGHT,
|
||||
SPRITE_CARD_HEARTS_EDGE_LEFT_LEFT, SPRITE_CARD_HEARTS_EDGE_LEFT_RIGHT, SPRITE_CARD_HEARTS_EDGE_RIGHT_LEFT, SPRITE_CARD_HEARTS_EDGE_RIGHT_RIGHT,
|
||||
SPRITE_CARD_HEARTS_EDGE_LEFT_LEFT, SPRITE_CARD_HEARTS_EDGE_LEFT_RIGHT, SPRITE_CARD_HEARTS_EDGE_RIGHT_LEFT, SPRITE_CARD_HEARTS_EDGE_RIGHT_RIGHT,
|
||||
SPRITE_CARD_HEARTS_EDGE_LEFT_LEFT, SPRITE_CARD_HEARTS_EDGE_LEFT_RIGHT, SPRITE_CARD_HEARTS_EDGE_RIGHT_LEFT, SPRITE_CARD_HEARTS_EDGE_RIGHT_RIGHT,
|
||||
SPRITE_CARD_HEARTS_EDGE_LEFT_LEFT, SPRITE_CARD_HEARTS_EDGE_LEFT_RIGHT, SPRITE_CARD_HEARTS_EDGE_RIGHT_LEFT, SPRITE_CARD_HEARTS_EDGE_RIGHT_RIGHT,
|
||||
SPRITE_CARD_BOTTOM_LEFT, SPRITE_CARD_BOTTOM, SPRITE_CARD_BOTTOM, SPRITE_CARD_EIGHT_BOTTOM
|
||||
};
|
||||
|
||||
const uint8_t SPRITE_HEARTS_NINE[SPRITE_CARD_TILE_COUNT] = {
|
||||
SPRITE_CARD_NINE_TOP, SPRITE_CARD_TOP, SPRITE_CARD_TOP, SPRITE_CARD_TOP_RIGHT,
|
||||
SPRITE_CARD_HEARTS_EDGE_LEFT_LEFT, SPRITE_CARD_HEARTS_EDGE_LEFT_RIGHT, SPRITE_CARD_HEARTS_EDGE_RIGHT_LEFT, SPRITE_CARD_HEARTS_EDGE_RIGHT_RIGHT,
|
||||
SPRITE_CARD_HEARTS_EDGE_LEFT_LEFT, SPRITE_CARD_HEARTS_MIDDLE_TOP_LEFT, SPRITE_CARD_HEARTS_MIDDLE_TOP_RIGHT, SPRITE_CARD_HEARTS_EDGE_RIGHT_RIGHT,
|
||||
SPRITE_CARD_HEARTS_EDGE_LEFT_LEFT, SPRITE_CARD_HEARTS_MIDDLE_BOTTOM_LEFT, SPRITE_CARD_HEARTS_MIDDLE_BOTTOM_RIGHT, SPRITE_CARD_HEARTS_EDGE_RIGHT_RIGHT,
|
||||
SPRITE_CARD_HEARTS_EDGE_LEFT_LEFT, SPRITE_CARD_HEARTS_EDGE_LEFT_RIGHT, SPRITE_CARD_HEARTS_EDGE_RIGHT_LEFT, SPRITE_CARD_HEARTS_EDGE_RIGHT_RIGHT,
|
||||
SPRITE_CARD_BOTTOM_LEFT, SPRITE_CARD_BOTTOM, SPRITE_CARD_BOTTOM, SPRITE_CARD_NINE_BOTTOM
|
||||
};
|
||||
|
||||
const uint8_t SPRITE_HEARTS_TEN[SPRITE_CARD_TILE_COUNT] = {
|
||||
SPRITE_CARD_TEN_TOP, SPRITE_CARD_TOP, SPRITE_CARD_TOP, SPRITE_CARD_TOP_RIGHT,
|
||||
SPRITE_CARD_HEARTS_EDGE_LEFT_LEFT, SPRITE_CARD_HEARTS_MIDDLE_TOP_LEFT, SPRITE_CARD_HEARTS_MIDDLE_TOP_RIGHT, SPRITE_CARD_HEARTS_EDGE_RIGHT_RIGHT,
|
||||
SPRITE_CARD_HEARTS_EDGE_LEFT_LEFT, SPRITE_CARD_HEARTS_MIDDLE_BOTTOM_LEFT, SPRITE_CARD_HEARTS_MIDDLE_BOTTOM_RIGHT, SPRITE_CARD_HEARTS_EDGE_RIGHT_RIGHT,
|
||||
SPRITE_CARD_HEARTS_EDGE_LEFT_LEFT, SPRITE_CARD_HEARTS_MIDDLE_TOP_LEFT, SPRITE_CARD_HEARTS_MIDDLE_TOP_RIGHT, SPRITE_CARD_HEARTS_EDGE_RIGHT_RIGHT,
|
||||
SPRITE_CARD_HEARTS_EDGE_LEFT_LEFT, SPRITE_CARD_HEARTS_MIDDLE_BOTTOM_LEFT, SPRITE_CARD_HEARTS_MIDDLE_BOTTOM_RIGHT, SPRITE_CARD_HEARTS_EDGE_RIGHT_RIGHT,
|
||||
SPRITE_CARD_BOTTOM_LEFT, SPRITE_CARD_BOTTOM, SPRITE_CARD_BOTTOM, SPRITE_CARD_TEN_BOTTOM
|
||||
};
|
||||
|
||||
|
||||
const uint8_t SPRITE_DIAMONDS_ACE[SPRITE_CARD_TILE_COUNT] = {
|
||||
SPRITE_CARD_ACE_TOP, SPRITE_CARD_TOP, SPRITE_CARD_TOP, SPRITE_CARD_TOP_RIGHT,
|
||||
SPRITE_CARD_LEFT, SPRITE_CARD_BLANK, SPRITE_CARD_BLANK, SPRITE_CARD_RIGHT,
|
||||
SPRITE_CARD_LEFT, SPRITE_CARD_DIAMONDS_BIG_TOP_LEFT, SPRITE_CARD_DIAMONDS_BIG_TOP_RIGHT, SPRITE_CARD_RIGHT,
|
||||
SPRITE_CARD_LEFT, SPRITE_CARD_DIAMONDS_BIG_BOTTOM_LEFT, SPRITE_CARD_DIAMONDS_BIG_BOTTOM_RIGHT, SPRITE_CARD_RIGHT,
|
||||
SPRITE_CARD_LEFT, SPRITE_CARD_BLANK, SPRITE_CARD_BLANK, SPRITE_CARD_RIGHT,
|
||||
SPRITE_CARD_BOTTOM_LEFT, SPRITE_CARD_BOTTOM, SPRITE_CARD_BOTTOM, SPRITE_CARD_ACE_BOTTOM
|
||||
};
|
||||
|
||||
const uint8_t SPRITE_DIAMONDS_TWO[SPRITE_CARD_TILE_COUNT] = {
|
||||
SPRITE_CARD_TWO_TOP, SPRITE_CARD_TOP, SPRITE_CARD_TOP, SPRITE_CARD_TOP_RIGHT,
|
||||
SPRITE_CARD_LEFT, SPRITE_CARD_DIAMONDS_BIG_TOP_LEFT, SPRITE_CARD_DIAMONDS_BIG_TOP_RIGHT, SPRITE_CARD_RIGHT,
|
||||
SPRITE_CARD_LEFT, SPRITE_CARD_DIAMONDS_BIG_BOTTOM_LEFT, SPRITE_CARD_DIAMONDS_BIG_BOTTOM_RIGHT, SPRITE_CARD_RIGHT,
|
||||
SPRITE_CARD_LEFT, SPRITE_CARD_DIAMONDS_BIG_TOP_LEFT, SPRITE_CARD_DIAMONDS_BIG_TOP_RIGHT, SPRITE_CARD_RIGHT,
|
||||
SPRITE_CARD_LEFT, SPRITE_CARD_DIAMONDS_BIG_BOTTOM_LEFT, SPRITE_CARD_DIAMONDS_BIG_BOTTOM_RIGHT, SPRITE_CARD_RIGHT,
|
||||
SPRITE_CARD_BOTTOM_LEFT, SPRITE_CARD_BOTTOM, SPRITE_CARD_BOTTOM, SPRITE_CARD_TWO_BOTTOM
|
||||
};
|
||||
|
||||
const uint8_t SPRITE_DIAMONDS_THREE[SPRITE_CARD_TILE_COUNT] = {
|
||||
SPRITE_CARD_THREE_TOP, SPRITE_CARD_TOP, SPRITE_CARD_TOP, SPRITE_CARD_TOP_RIGHT,
|
||||
SPRITE_CARD_LEFT, SPRITE_CARD_DIAMONDS_MED_LEFT, SPRITE_CARD_DIAMONDS_MED_RIGHT, SPRITE_CARD_RIGHT,
|
||||
SPRITE_CARD_LEFT, SPRITE_CARD_DIAMONDS_BIG_TOP_LEFT, SPRITE_CARD_DIAMONDS_BIG_TOP_RIGHT, SPRITE_CARD_RIGHT,
|
||||
SPRITE_CARD_LEFT, SPRITE_CARD_DIAMONDS_BIG_BOTTOM_LEFT, SPRITE_CARD_DIAMONDS_BIG_BOTTOM_RIGHT, SPRITE_CARD_RIGHT,
|
||||
SPRITE_CARD_LEFT, SPRITE_CARD_DIAMONDS_MED_LEFT, SPRITE_CARD_DIAMONDS_MED_RIGHT, SPRITE_CARD_RIGHT,
|
||||
SPRITE_CARD_BOTTOM_LEFT, SPRITE_CARD_BOTTOM, SPRITE_CARD_BOTTOM, SPRITE_CARD_THREE_BOTTOM
|
||||
};
|
||||
|
||||
const uint8_t SPRITE_DIAMONDS_FOUR[SPRITE_CARD_TILE_COUNT] = {
|
||||
SPRITE_CARD_FOUR_TOP, SPRITE_CARD_TOP, SPRITE_CARD_TOP, SPRITE_CARD_TOP_RIGHT,
|
||||
SPRITE_CARD_DIAMONDS_EDGE_LEFT_LEFT, SPRITE_CARD_DIAMONDS_EDGE_LEFT_RIGHT, SPRITE_CARD_DIAMONDS_EDGE_RIGHT_LEFT, SPRITE_CARD_DIAMONDS_EDGE_RIGHT_RIGHT,
|
||||
SPRITE_CARD_LEFT, SPRITE_CARD_BLANK, SPRITE_CARD_BLANK, SPRITE_CARD_RIGHT,
|
||||
SPRITE_CARD_LEFT, SPRITE_CARD_BLANK, SPRITE_CARD_BLANK, SPRITE_CARD_RIGHT,
|
||||
SPRITE_CARD_DIAMONDS_EDGE_LEFT_LEFT, SPRITE_CARD_DIAMONDS_EDGE_LEFT_RIGHT, SPRITE_CARD_DIAMONDS_EDGE_RIGHT_LEFT, SPRITE_CARD_DIAMONDS_EDGE_RIGHT_RIGHT,
|
||||
SPRITE_CARD_BOTTOM_LEFT, SPRITE_CARD_BOTTOM, SPRITE_CARD_BOTTOM, SPRITE_CARD_FOUR_BOTTOM
|
||||
};
|
||||
|
||||
const uint8_t SPRITE_DIAMONDS_FIVE[SPRITE_CARD_TILE_COUNT] = {
|
||||
SPRITE_CARD_FIVE_TOP, SPRITE_CARD_TOP, SPRITE_CARD_TOP, SPRITE_CARD_TOP_RIGHT,
|
||||
SPRITE_CARD_DIAMONDS_EDGE_LEFT_LEFT, SPRITE_CARD_DIAMONDS_EDGE_LEFT_RIGHT, SPRITE_CARD_DIAMONDS_EDGE_RIGHT_LEFT, SPRITE_CARD_DIAMONDS_EDGE_RIGHT_RIGHT,
|
||||
SPRITE_CARD_LEFT, SPRITE_CARD_DIAMONDS_BIG_TOP_LEFT, SPRITE_CARD_DIAMONDS_BIG_TOP_RIGHT, SPRITE_CARD_RIGHT,
|
||||
SPRITE_CARD_LEFT, SPRITE_CARD_DIAMONDS_BIG_BOTTOM_LEFT, SPRITE_CARD_DIAMONDS_BIG_BOTTOM_RIGHT, SPRITE_CARD_RIGHT,
|
||||
SPRITE_CARD_DIAMONDS_EDGE_LEFT_LEFT, SPRITE_CARD_DIAMONDS_EDGE_LEFT_RIGHT, SPRITE_CARD_DIAMONDS_EDGE_RIGHT_LEFT, SPRITE_CARD_DIAMONDS_EDGE_RIGHT_RIGHT,
|
||||
SPRITE_CARD_BOTTOM_LEFT, SPRITE_CARD_BOTTOM, SPRITE_CARD_BOTTOM, SPRITE_CARD_FIVE_BOTTOM
|
||||
};
|
||||
|
||||
const uint8_t SPRITE_DIAMONDS_SIX[SPRITE_CARD_TILE_COUNT] = {
|
||||
SPRITE_CARD_SIX_TOP, SPRITE_CARD_TOP, SPRITE_CARD_TOP, SPRITE_CARD_TOP_RIGHT,
|
||||
SPRITE_CARD_DIAMONDS_EDGE_LEFT_LEFT, SPRITE_CARD_DIAMONDS_EDGE_LEFT_RIGHT, SPRITE_CARD_DIAMONDS_EDGE_RIGHT_LEFT, SPRITE_CARD_DIAMONDS_EDGE_RIGHT_RIGHT,
|
||||
SPRITE_CARD_LEFT, SPRITE_CARD_DIAMONDS_MED_LEFT, SPRITE_CARD_DIAMONDS_MED_RIGHT, SPRITE_CARD_RIGHT,
|
||||
SPRITE_CARD_LEFT, SPRITE_CARD_DIAMONDS_MED_LEFT, SPRITE_CARD_DIAMONDS_MED_RIGHT, SPRITE_CARD_RIGHT,
|
||||
SPRITE_CARD_DIAMONDS_EDGE_LEFT_LEFT, SPRITE_CARD_DIAMONDS_EDGE_LEFT_RIGHT, SPRITE_CARD_DIAMONDS_EDGE_RIGHT_LEFT, SPRITE_CARD_DIAMONDS_EDGE_RIGHT_RIGHT,
|
||||
SPRITE_CARD_BOTTOM_LEFT, SPRITE_CARD_BOTTOM, SPRITE_CARD_BOTTOM, SPRITE_CARD_SIX_BOTTOM
|
||||
};
|
||||
|
||||
const uint8_t SPRITE_DIAMONDS_SEVEN[SPRITE_CARD_TILE_COUNT] = {
|
||||
SPRITE_CARD_SEVEN_TOP, SPRITE_CARD_TOP, SPRITE_CARD_TOP, SPRITE_CARD_TOP_RIGHT,
|
||||
SPRITE_CARD_DIAMONDS_EDGE_LEFT_LEFT, SPRITE_CARD_DIAMONDS_MIDDLE_TOP_LEFT, SPRITE_CARD_DIAMONDS_MIDDLE_TOP_RIGHT, SPRITE_CARD_DIAMONDS_EDGE_RIGHT_RIGHT,
|
||||
SPRITE_CARD_LEFT, SPRITE_CARD_DIAMONDS_BIG_BOTTOM_LEFT, SPRITE_CARD_DIAMONDS_BIG_BOTTOM_RIGHT, SPRITE_CARD_RIGHT,
|
||||
SPRITE_CARD_DIAMONDS_EDGE_LEFT_LEFT, SPRITE_CARD_DIAMONDS_EDGE_LEFT_RIGHT, SPRITE_CARD_DIAMONDS_EDGE_RIGHT_LEFT, SPRITE_CARD_DIAMONDS_EDGE_RIGHT_RIGHT,
|
||||
SPRITE_CARD_DIAMONDS_EDGE_LEFT_LEFT, SPRITE_CARD_DIAMONDS_EDGE_LEFT_RIGHT, SPRITE_CARD_DIAMONDS_EDGE_RIGHT_LEFT, SPRITE_CARD_DIAMONDS_EDGE_RIGHT_RIGHT,
|
||||
SPRITE_CARD_BOTTOM_LEFT, SPRITE_CARD_BOTTOM, SPRITE_CARD_BOTTOM, SPRITE_CARD_SEVEN_BOTTOM
|
||||
};
|
||||
|
||||
const uint8_t SPRITE_DIAMONDS_EIGHT[SPRITE_CARD_TILE_COUNT] = {
|
||||
SPRITE_CARD_EIGHT_TOP, SPRITE_CARD_TOP, SPRITE_CARD_TOP, SPRITE_CARD_TOP_RIGHT,
|
||||
SPRITE_CARD_DIAMONDS_EDGE_LEFT_LEFT, SPRITE_CARD_DIAMONDS_EDGE_LEFT_RIGHT, SPRITE_CARD_DIAMONDS_EDGE_RIGHT_LEFT, SPRITE_CARD_DIAMONDS_EDGE_RIGHT_RIGHT,
|
||||
SPRITE_CARD_DIAMONDS_EDGE_LEFT_LEFT, SPRITE_CARD_DIAMONDS_EDGE_LEFT_RIGHT, SPRITE_CARD_DIAMONDS_EDGE_RIGHT_LEFT, SPRITE_CARD_DIAMONDS_EDGE_RIGHT_RIGHT,
|
||||
SPRITE_CARD_DIAMONDS_EDGE_LEFT_LEFT, SPRITE_CARD_DIAMONDS_EDGE_LEFT_RIGHT, SPRITE_CARD_DIAMONDS_EDGE_RIGHT_LEFT, SPRITE_CARD_DIAMONDS_EDGE_RIGHT_RIGHT,
|
||||
SPRITE_CARD_DIAMONDS_EDGE_LEFT_LEFT, SPRITE_CARD_DIAMONDS_EDGE_LEFT_RIGHT, SPRITE_CARD_DIAMONDS_EDGE_RIGHT_LEFT, SPRITE_CARD_DIAMONDS_EDGE_RIGHT_RIGHT,
|
||||
SPRITE_CARD_BOTTOM_LEFT, SPRITE_CARD_BOTTOM, SPRITE_CARD_BOTTOM, SPRITE_CARD_EIGHT_BOTTOM
|
||||
};
|
||||
|
||||
const uint8_t SPRITE_DIAMONDS_NINE[SPRITE_CARD_TILE_COUNT] = {
|
||||
SPRITE_CARD_NINE_TOP, SPRITE_CARD_TOP, SPRITE_CARD_TOP, SPRITE_CARD_TOP_RIGHT,
|
||||
SPRITE_CARD_DIAMONDS_EDGE_LEFT_LEFT, SPRITE_CARD_DIAMONDS_EDGE_LEFT_RIGHT, SPRITE_CARD_DIAMONDS_EDGE_RIGHT_LEFT, SPRITE_CARD_DIAMONDS_EDGE_RIGHT_RIGHT,
|
||||
SPRITE_CARD_DIAMONDS_EDGE_LEFT_LEFT, SPRITE_CARD_DIAMONDS_MIDDLE_TOP_LEFT, SPRITE_CARD_DIAMONDS_MIDDLE_TOP_RIGHT, SPRITE_CARD_DIAMONDS_EDGE_RIGHT_RIGHT,
|
||||
SPRITE_CARD_DIAMONDS_EDGE_LEFT_LEFT, SPRITE_CARD_DIAMONDS_MIDDLE_BOTTOM_LEFT, SPRITE_CARD_DIAMONDS_MIDDLE_BOTTOM_RIGHT, SPRITE_CARD_DIAMONDS_EDGE_RIGHT_RIGHT,
|
||||
SPRITE_CARD_DIAMONDS_EDGE_LEFT_LEFT, SPRITE_CARD_DIAMONDS_EDGE_LEFT_RIGHT, SPRITE_CARD_DIAMONDS_EDGE_RIGHT_LEFT, SPRITE_CARD_DIAMONDS_EDGE_RIGHT_RIGHT,
|
||||
SPRITE_CARD_BOTTOM_LEFT, SPRITE_CARD_BOTTOM, SPRITE_CARD_BOTTOM, SPRITE_CARD_NINE_BOTTOM
|
||||
};
|
||||
|
||||
const uint8_t SPRITE_DIAMONDS_TEN[SPRITE_CARD_TILE_COUNT] = {
|
||||
SPRITE_CARD_TEN_TOP, SPRITE_CARD_TOP, SPRITE_CARD_TOP, SPRITE_CARD_TOP_RIGHT,
|
||||
SPRITE_CARD_DIAMONDS_EDGE_LEFT_LEFT, SPRITE_CARD_DIAMONDS_MIDDLE_TOP_LEFT, SPRITE_CARD_DIAMONDS_MIDDLE_TOP_RIGHT, SPRITE_CARD_DIAMONDS_EDGE_RIGHT_RIGHT,
|
||||
SPRITE_CARD_DIAMONDS_EDGE_LEFT_LEFT, SPRITE_CARD_DIAMONDS_MIDDLE_BOTTOM_LEFT, SPRITE_CARD_DIAMONDS_MIDDLE_BOTTOM_RIGHT, SPRITE_CARD_DIAMONDS_EDGE_RIGHT_RIGHT,
|
||||
SPRITE_CARD_DIAMONDS_EDGE_LEFT_LEFT, SPRITE_CARD_DIAMONDS_MIDDLE_TOP_LEFT, SPRITE_CARD_DIAMONDS_MIDDLE_TOP_RIGHT, SPRITE_CARD_DIAMONDS_EDGE_RIGHT_RIGHT,
|
||||
SPRITE_CARD_DIAMONDS_EDGE_LEFT_LEFT, SPRITE_CARD_DIAMONDS_MIDDLE_BOTTOM_LEFT, SPRITE_CARD_DIAMONDS_MIDDLE_BOTTOM_RIGHT, SPRITE_CARD_DIAMONDS_EDGE_RIGHT_RIGHT,
|
||||
SPRITE_CARD_BOTTOM_LEFT, SPRITE_CARD_BOTTOM, SPRITE_CARD_BOTTOM, SPRITE_CARD_TEN_BOTTOM
|
||||
};
|
||||
|
||||
|
||||
const uint8_t SPRITE_SPADES_ACE[SPRITE_CARD_TILE_COUNT] = {
|
||||
SPRITE_CARD_ACE_TOP, SPRITE_CARD_TOP, SPRITE_CARD_TOP, SPRITE_CARD_TOP_RIGHT,
|
||||
SPRITE_CARD_LEFT, SPRITE_CARD_BLANK, SPRITE_CARD_BLANK, SPRITE_CARD_RIGHT,
|
||||
SPRITE_CARD_LEFT, SPRITE_CARD_SPADES_BIG_TOP_LEFT, SPRITE_CARD_SPADES_BIG_TOP_RIGHT, SPRITE_CARD_RIGHT,
|
||||
SPRITE_CARD_LEFT, SPRITE_CARD_SPADES_BIG_BOTTOM_LEFT, SPRITE_CARD_SPADES_BIG_BOTTOM_RIGHT, SPRITE_CARD_RIGHT,
|
||||
SPRITE_CARD_LEFT, SPRITE_CARD_BLANK, SPRITE_CARD_BLANK, SPRITE_CARD_RIGHT,
|
||||
SPRITE_CARD_BOTTOM_LEFT, SPRITE_CARD_BOTTOM, SPRITE_CARD_BOTTOM, SPRITE_CARD_ACE_BOTTOM
|
||||
};
|
||||
|
||||
const uint8_t SPRITE_SPADES_TWO[SPRITE_CARD_TILE_COUNT] = {
|
||||
SPRITE_CARD_TWO_TOP, SPRITE_CARD_TOP, SPRITE_CARD_TOP, SPRITE_CARD_TOP_RIGHT,
|
||||
SPRITE_CARD_LEFT, SPRITE_CARD_SPADES_BIG_TOP_LEFT, SPRITE_CARD_SPADES_BIG_TOP_RIGHT, SPRITE_CARD_RIGHT,
|
||||
SPRITE_CARD_LEFT, SPRITE_CARD_SPADES_BIG_BOTTOM_LEFT, SPRITE_CARD_SPADES_BIG_BOTTOM_RIGHT, SPRITE_CARD_RIGHT,
|
||||
SPRITE_CARD_LEFT, SPRITE_CARD_SPADES_BIG_TOP_LEFT, SPRITE_CARD_SPADES_BIG_TOP_RIGHT, SPRITE_CARD_RIGHT,
|
||||
SPRITE_CARD_LEFT, SPRITE_CARD_SPADES_BIG_BOTTOM_LEFT, SPRITE_CARD_SPADES_BIG_BOTTOM_RIGHT, SPRITE_CARD_RIGHT,
|
||||
SPRITE_CARD_BOTTOM_LEFT, SPRITE_CARD_BOTTOM, SPRITE_CARD_BOTTOM, SPRITE_CARD_TWO_BOTTOM
|
||||
};
|
||||
|
||||
const uint8_t SPRITE_SPADES_THREE[SPRITE_CARD_TILE_COUNT] = {
|
||||
SPRITE_CARD_THREE_TOP, SPRITE_CARD_TOP, SPRITE_CARD_TOP, SPRITE_CARD_TOP_RIGHT,
|
||||
SPRITE_CARD_LEFT, SPRITE_CARD_SPADES_MED_LEFT, SPRITE_CARD_SPADES_MED_RIGHT, SPRITE_CARD_RIGHT,
|
||||
SPRITE_CARD_LEFT, SPRITE_CARD_SPADES_BIG_TOP_LEFT, SPRITE_CARD_SPADES_BIG_TOP_RIGHT, SPRITE_CARD_RIGHT,
|
||||
SPRITE_CARD_LEFT, SPRITE_CARD_SPADES_BIG_BOTTOM_LEFT, SPRITE_CARD_SPADES_BIG_BOTTOM_RIGHT, SPRITE_CARD_RIGHT,
|
||||
SPRITE_CARD_LEFT, SPRITE_CARD_SPADES_MED_LEFT, SPRITE_CARD_SPADES_MED_RIGHT, SPRITE_CARD_RIGHT,
|
||||
SPRITE_CARD_BOTTOM_LEFT, SPRITE_CARD_BOTTOM, SPRITE_CARD_BOTTOM, SPRITE_CARD_THREE_BOTTOM
|
||||
};
|
||||
|
||||
const uint8_t SPRITE_SPADES_FOUR[SPRITE_CARD_TILE_COUNT] = {
|
||||
SPRITE_CARD_FOUR_TOP, SPRITE_CARD_TOP, SPRITE_CARD_TOP, SPRITE_CARD_TOP_RIGHT,
|
||||
SPRITE_CARD_SPADES_EDGE_LEFT_LEFT, SPRITE_CARD_SPADES_EDGE_LEFT_RIGHT, SPRITE_CARD_SPADES_EDGE_RIGHT_LEFT, SPRITE_CARD_SPADES_EDGE_RIGHT_RIGHT,
|
||||
SPRITE_CARD_LEFT, SPRITE_CARD_BLANK, SPRITE_CARD_BLANK, SPRITE_CARD_RIGHT,
|
||||
SPRITE_CARD_LEFT, SPRITE_CARD_BLANK, SPRITE_CARD_BLANK, SPRITE_CARD_RIGHT,
|
||||
SPRITE_CARD_SPADES_EDGE_LEFT_LEFT, SPRITE_CARD_SPADES_EDGE_LEFT_RIGHT, SPRITE_CARD_SPADES_EDGE_RIGHT_LEFT, SPRITE_CARD_SPADES_EDGE_RIGHT_RIGHT,
|
||||
SPRITE_CARD_BOTTOM_LEFT, SPRITE_CARD_BOTTOM, SPRITE_CARD_BOTTOM, SPRITE_CARD_FOUR_BOTTOM
|
||||
};
|
||||
|
||||
const uint8_t SPRITE_SPADES_FIVE[SPRITE_CARD_TILE_COUNT] = {
|
||||
SPRITE_CARD_FIVE_TOP, SPRITE_CARD_TOP, SPRITE_CARD_TOP, SPRITE_CARD_TOP_RIGHT,
|
||||
SPRITE_CARD_SPADES_EDGE_LEFT_LEFT, SPRITE_CARD_SPADES_EDGE_LEFT_RIGHT, SPRITE_CARD_SPADES_EDGE_RIGHT_LEFT, SPRITE_CARD_SPADES_EDGE_RIGHT_RIGHT,
|
||||
SPRITE_CARD_LEFT, SPRITE_CARD_SPADES_BIG_TOP_LEFT, SPRITE_CARD_SPADES_BIG_TOP_RIGHT, SPRITE_CARD_RIGHT,
|
||||
SPRITE_CARD_LEFT, SPRITE_CARD_SPADES_BIG_BOTTOM_LEFT, SPRITE_CARD_SPADES_BIG_BOTTOM_RIGHT, SPRITE_CARD_RIGHT,
|
||||
SPRITE_CARD_SPADES_EDGE_LEFT_LEFT, SPRITE_CARD_SPADES_EDGE_LEFT_RIGHT, SPRITE_CARD_SPADES_EDGE_RIGHT_LEFT, SPRITE_CARD_SPADES_EDGE_RIGHT_RIGHT,
|
||||
SPRITE_CARD_BOTTOM_LEFT, SPRITE_CARD_BOTTOM, SPRITE_CARD_BOTTOM, SPRITE_CARD_FIVE_BOTTOM
|
||||
};
|
||||
|
||||
const uint8_t SPRITE_SPADES_SIX[SPRITE_CARD_TILE_COUNT] = {
|
||||
SPRITE_CARD_SIX_TOP, SPRITE_CARD_TOP, SPRITE_CARD_TOP, SPRITE_CARD_TOP_RIGHT,
|
||||
SPRITE_CARD_SPADES_EDGE_LEFT_LEFT, SPRITE_CARD_SPADES_EDGE_LEFT_RIGHT, SPRITE_CARD_SPADES_EDGE_RIGHT_LEFT, SPRITE_CARD_SPADES_EDGE_RIGHT_RIGHT,
|
||||
SPRITE_CARD_LEFT, SPRITE_CARD_SPADES_MED_LEFT, SPRITE_CARD_SPADES_MED_RIGHT, SPRITE_CARD_RIGHT,
|
||||
SPRITE_CARD_LEFT, SPRITE_CARD_SPADES_MED_LEFT, SPRITE_CARD_SPADES_MED_RIGHT, SPRITE_CARD_RIGHT,
|
||||
SPRITE_CARD_SPADES_EDGE_LEFT_LEFT, SPRITE_CARD_SPADES_EDGE_LEFT_RIGHT, SPRITE_CARD_SPADES_EDGE_RIGHT_LEFT, SPRITE_CARD_SPADES_EDGE_RIGHT_RIGHT,
|
||||
SPRITE_CARD_BOTTOM_LEFT, SPRITE_CARD_BOTTOM, SPRITE_CARD_BOTTOM, SPRITE_CARD_SIX_BOTTOM
|
||||
};
|
||||
|
||||
const uint8_t SPRITE_SPADES_SEVEN[SPRITE_CARD_TILE_COUNT] = {
|
||||
SPRITE_CARD_SEVEN_TOP, SPRITE_CARD_TOP, SPRITE_CARD_TOP, SPRITE_CARD_TOP_RIGHT,
|
||||
SPRITE_CARD_SPADES_EDGE_LEFT_LEFT, SPRITE_CARD_SPADES_MIDDLE_TOP_LEFT, SPRITE_CARD_SPADES_MIDDLE_TOP_RIGHT, SPRITE_CARD_SPADES_EDGE_RIGHT_RIGHT,
|
||||
SPRITE_CARD_LEFT, SPRITE_CARD_SPADES_BIG_BOTTOM_LEFT, SPRITE_CARD_SPADES_BIG_BOTTOM_RIGHT, SPRITE_CARD_RIGHT,
|
||||
SPRITE_CARD_SPADES_EDGE_LEFT_LEFT, SPRITE_CARD_SPADES_EDGE_LEFT_RIGHT, SPRITE_CARD_SPADES_EDGE_RIGHT_LEFT, SPRITE_CARD_SPADES_EDGE_RIGHT_RIGHT,
|
||||
SPRITE_CARD_SPADES_EDGE_LEFT_LEFT, SPRITE_CARD_SPADES_EDGE_LEFT_RIGHT, SPRITE_CARD_SPADES_EDGE_RIGHT_LEFT, SPRITE_CARD_SPADES_EDGE_RIGHT_RIGHT,
|
||||
SPRITE_CARD_BOTTOM_LEFT, SPRITE_CARD_BOTTOM, SPRITE_CARD_BOTTOM, SPRITE_CARD_SEVEN_BOTTOM
|
||||
};
|
||||
|
||||
const uint8_t SPRITE_SPADES_EIGHT[SPRITE_CARD_TILE_COUNT] = {
|
||||
SPRITE_CARD_EIGHT_TOP, SPRITE_CARD_TOP, SPRITE_CARD_TOP, SPRITE_CARD_TOP_RIGHT,
|
||||
SPRITE_CARD_SPADES_EDGE_LEFT_LEFT, SPRITE_CARD_SPADES_EDGE_LEFT_RIGHT, SPRITE_CARD_SPADES_EDGE_RIGHT_LEFT, SPRITE_CARD_SPADES_EDGE_RIGHT_RIGHT,
|
||||
SPRITE_CARD_SPADES_EDGE_LEFT_LEFT, SPRITE_CARD_SPADES_EDGE_LEFT_RIGHT, SPRITE_CARD_SPADES_EDGE_RIGHT_LEFT, SPRITE_CARD_SPADES_EDGE_RIGHT_RIGHT,
|
||||
SPRITE_CARD_SPADES_EDGE_LEFT_LEFT, SPRITE_CARD_SPADES_EDGE_LEFT_RIGHT, SPRITE_CARD_SPADES_EDGE_RIGHT_LEFT, SPRITE_CARD_SPADES_EDGE_RIGHT_RIGHT,
|
||||
SPRITE_CARD_SPADES_EDGE_LEFT_LEFT, SPRITE_CARD_SPADES_EDGE_LEFT_RIGHT, SPRITE_CARD_SPADES_EDGE_RIGHT_LEFT, SPRITE_CARD_SPADES_EDGE_RIGHT_RIGHT,
|
||||
SPRITE_CARD_BOTTOM_LEFT, SPRITE_CARD_BOTTOM, SPRITE_CARD_BOTTOM, SPRITE_CARD_EIGHT_BOTTOM
|
||||
};
|
||||
|
||||
const uint8_t SPRITE_SPADES_NINE[SPRITE_CARD_TILE_COUNT] = {
|
||||
SPRITE_CARD_NINE_TOP, SPRITE_CARD_TOP, SPRITE_CARD_TOP, SPRITE_CARD_TOP_RIGHT,
|
||||
SPRITE_CARD_SPADES_EDGE_LEFT_LEFT, SPRITE_CARD_SPADES_EDGE_LEFT_RIGHT, SPRITE_CARD_SPADES_EDGE_RIGHT_LEFT, SPRITE_CARD_SPADES_EDGE_RIGHT_RIGHT,
|
||||
SPRITE_CARD_SPADES_EDGE_LEFT_LEFT, SPRITE_CARD_SPADES_MIDDLE_TOP_LEFT, SPRITE_CARD_SPADES_MIDDLE_TOP_RIGHT, SPRITE_CARD_SPADES_EDGE_RIGHT_RIGHT,
|
||||
SPRITE_CARD_SPADES_EDGE_LEFT_LEFT, SPRITE_CARD_SPADES_MIDDLE_BOTTOM_LEFT, SPRITE_CARD_SPADES_MIDDLE_BOTTOM_RIGHT, SPRITE_CARD_SPADES_EDGE_RIGHT_RIGHT,
|
||||
SPRITE_CARD_SPADES_EDGE_LEFT_LEFT, SPRITE_CARD_SPADES_EDGE_LEFT_RIGHT, SPRITE_CARD_SPADES_EDGE_RIGHT_LEFT, SPRITE_CARD_SPADES_EDGE_RIGHT_RIGHT,
|
||||
SPRITE_CARD_BOTTOM_LEFT, SPRITE_CARD_BOTTOM, SPRITE_CARD_BOTTOM, SPRITE_CARD_NINE_BOTTOM
|
||||
};
|
||||
|
||||
const uint8_t SPRITE_SPADES_TEN[SPRITE_CARD_TILE_COUNT] = {
|
||||
SPRITE_CARD_TEN_TOP, SPRITE_CARD_TOP, SPRITE_CARD_TOP, SPRITE_CARD_TOP_RIGHT,
|
||||
SPRITE_CARD_SPADES_EDGE_LEFT_LEFT, SPRITE_CARD_SPADES_MIDDLE_TOP_LEFT, SPRITE_CARD_SPADES_MIDDLE_TOP_RIGHT, SPRITE_CARD_SPADES_EDGE_RIGHT_RIGHT,
|
||||
SPRITE_CARD_SPADES_EDGE_LEFT_LEFT, SPRITE_CARD_SPADES_MIDDLE_BOTTOM_LEFT, SPRITE_CARD_SPADES_MIDDLE_BOTTOM_RIGHT, SPRITE_CARD_SPADES_EDGE_RIGHT_RIGHT,
|
||||
SPRITE_CARD_SPADES_EDGE_LEFT_LEFT, SPRITE_CARD_SPADES_MIDDLE_TOP_LEFT, SPRITE_CARD_SPADES_MIDDLE_TOP_RIGHT, SPRITE_CARD_SPADES_EDGE_RIGHT_RIGHT,
|
||||
SPRITE_CARD_SPADES_EDGE_LEFT_LEFT, SPRITE_CARD_SPADES_MIDDLE_BOTTOM_LEFT, SPRITE_CARD_SPADES_MIDDLE_BOTTOM_RIGHT, SPRITE_CARD_SPADES_EDGE_RIGHT_RIGHT,
|
||||
SPRITE_CARD_BOTTOM_LEFT, SPRITE_CARD_BOTTOM, SPRITE_CARD_BOTTOM, SPRITE_CARD_TEN_BOTTOM
|
||||
};
|
||||
|
||||
|
||||
|
||||
const uint8_t SPRITE_CLUBS_ACE[SPRITE_CARD_TILE_COUNT] = {
|
||||
SPRITE_CARD_ACE_TOP, SPRITE_CARD_TOP, SPRITE_CARD_TOP, SPRITE_CARD_TOP_RIGHT,
|
||||
SPRITE_CARD_LEFT, SPRITE_CARD_BLANK, SPRITE_CARD_BLANK, SPRITE_CARD_RIGHT,
|
||||
SPRITE_CARD_LEFT, SPRITE_CARD_CLUBS_BIG_TOP_LEFT, SPRITE_CARD_CLUBS_BIG_TOP_RIGHT, SPRITE_CARD_RIGHT,
|
||||
SPRITE_CARD_LEFT, SPRITE_CARD_CLUBS_BIG_BOTTOM_LEFT, SPRITE_CARD_CLUBS_BIG_BOTTOM_RIGHT, SPRITE_CARD_RIGHT,
|
||||
SPRITE_CARD_LEFT, SPRITE_CARD_BLANK, SPRITE_CARD_BLANK, SPRITE_CARD_RIGHT,
|
||||
SPRITE_CARD_BOTTOM_LEFT, SPRITE_CARD_BOTTOM, SPRITE_CARD_BOTTOM, SPRITE_CARD_ACE_BOTTOM
|
||||
};
|
||||
|
||||
const uint8_t SPRITE_CLUBS_TWO[SPRITE_CARD_TILE_COUNT] = {
|
||||
SPRITE_CARD_TWO_TOP, SPRITE_CARD_TOP, SPRITE_CARD_TOP, SPRITE_CARD_TOP_RIGHT,
|
||||
SPRITE_CARD_LEFT, SPRITE_CARD_CLUBS_BIG_TOP_LEFT, SPRITE_CARD_CLUBS_BIG_TOP_RIGHT, SPRITE_CARD_RIGHT,
|
||||
SPRITE_CARD_LEFT, SPRITE_CARD_CLUBS_BIG_BOTTOM_LEFT, SPRITE_CARD_CLUBS_BIG_BOTTOM_RIGHT, SPRITE_CARD_RIGHT,
|
||||
SPRITE_CARD_LEFT, SPRITE_CARD_CLUBS_BIG_TOP_LEFT, SPRITE_CARD_CLUBS_BIG_TOP_RIGHT, SPRITE_CARD_RIGHT,
|
||||
SPRITE_CARD_LEFT, SPRITE_CARD_CLUBS_BIG_BOTTOM_LEFT, SPRITE_CARD_CLUBS_BIG_BOTTOM_RIGHT, SPRITE_CARD_RIGHT,
|
||||
SPRITE_CARD_BOTTOM_LEFT, SPRITE_CARD_BOTTOM, SPRITE_CARD_BOTTOM, SPRITE_CARD_TWO_BOTTOM
|
||||
};
|
||||
|
||||
const uint8_t SPRITE_CLUBS_THREE[SPRITE_CARD_TILE_COUNT] = {
|
||||
SPRITE_CARD_THREE_TOP, SPRITE_CARD_TOP, SPRITE_CARD_TOP, SPRITE_CARD_TOP_RIGHT,
|
||||
SPRITE_CARD_LEFT, SPRITE_CARD_CLUBS_MED_LEFT, SPRITE_CARD_CLUBS_MED_RIGHT, SPRITE_CARD_RIGHT,
|
||||
SPRITE_CARD_LEFT, SPRITE_CARD_CLUBS_BIG_TOP_LEFT, SPRITE_CARD_CLUBS_BIG_TOP_RIGHT, SPRITE_CARD_RIGHT,
|
||||
SPRITE_CARD_LEFT, SPRITE_CARD_CLUBS_BIG_BOTTOM_LEFT, SPRITE_CARD_CLUBS_BIG_BOTTOM_RIGHT, SPRITE_CARD_RIGHT,
|
||||
SPRITE_CARD_LEFT, SPRITE_CARD_CLUBS_MED_LEFT, SPRITE_CARD_CLUBS_MED_RIGHT, SPRITE_CARD_RIGHT,
|
||||
SPRITE_CARD_BOTTOM_LEFT, SPRITE_CARD_BOTTOM, SPRITE_CARD_BOTTOM, SPRITE_CARD_THREE_BOTTOM
|
||||
};
|
||||
|
||||
const uint8_t SPRITE_CLUBS_FOUR[SPRITE_CARD_TILE_COUNT] = {
|
||||
SPRITE_CARD_FOUR_TOP, SPRITE_CARD_TOP, SPRITE_CARD_TOP, SPRITE_CARD_TOP_RIGHT,
|
||||
SPRITE_CARD_CLUBS_EDGE_LEFT_LEFT, SPRITE_CARD_CLUBS_EDGE_LEFT_RIGHT, SPRITE_CARD_CLUBS_EDGE_RIGHT_LEFT, SPRITE_CARD_CLUBS_EDGE_RIGHT_RIGHT,
|
||||
SPRITE_CARD_LEFT, SPRITE_CARD_BLANK, SPRITE_CARD_BLANK, SPRITE_CARD_RIGHT,
|
||||
SPRITE_CARD_LEFT, SPRITE_CARD_BLANK, SPRITE_CARD_BLANK, SPRITE_CARD_RIGHT,
|
||||
SPRITE_CARD_CLUBS_EDGE_LEFT_LEFT, SPRITE_CARD_CLUBS_EDGE_LEFT_RIGHT, SPRITE_CARD_CLUBS_EDGE_RIGHT_LEFT, SPRITE_CARD_CLUBS_EDGE_RIGHT_RIGHT,
|
||||
SPRITE_CARD_BOTTOM_LEFT, SPRITE_CARD_BOTTOM, SPRITE_CARD_BOTTOM, SPRITE_CARD_FOUR_BOTTOM
|
||||
};
|
||||
|
||||
const uint8_t SPRITE_CLUBS_FIVE[SPRITE_CARD_TILE_COUNT] = {
|
||||
SPRITE_CARD_FIVE_TOP, SPRITE_CARD_TOP, SPRITE_CARD_TOP, SPRITE_CARD_TOP_RIGHT,
|
||||
SPRITE_CARD_CLUBS_EDGE_LEFT_LEFT, SPRITE_CARD_CLUBS_EDGE_LEFT_RIGHT, SPRITE_CARD_CLUBS_EDGE_RIGHT_LEFT, SPRITE_CARD_CLUBS_EDGE_RIGHT_RIGHT,
|
||||
SPRITE_CARD_LEFT, SPRITE_CARD_CLUBS_BIG_TOP_LEFT, SPRITE_CARD_CLUBS_BIG_TOP_RIGHT, SPRITE_CARD_RIGHT,
|
||||
SPRITE_CARD_LEFT, SPRITE_CARD_CLUBS_BIG_BOTTOM_LEFT, SPRITE_CARD_CLUBS_BIG_BOTTOM_RIGHT, SPRITE_CARD_RIGHT,
|
||||
SPRITE_CARD_CLUBS_EDGE_LEFT_LEFT, SPRITE_CARD_CLUBS_EDGE_LEFT_RIGHT, SPRITE_CARD_CLUBS_EDGE_RIGHT_LEFT, SPRITE_CARD_CLUBS_EDGE_RIGHT_RIGHT,
|
||||
SPRITE_CARD_BOTTOM_LEFT, SPRITE_CARD_BOTTOM, SPRITE_CARD_BOTTOM, SPRITE_CARD_FIVE_BOTTOM
|
||||
};
|
||||
|
||||
const uint8_t SPRITE_CLUBS_SIX[SPRITE_CARD_TILE_COUNT] = {
|
||||
SPRITE_CARD_SIX_TOP, SPRITE_CARD_TOP, SPRITE_CARD_TOP, SPRITE_CARD_TOP_RIGHT,
|
||||
SPRITE_CARD_CLUBS_EDGE_LEFT_LEFT, SPRITE_CARD_CLUBS_EDGE_LEFT_RIGHT, SPRITE_CARD_CLUBS_EDGE_RIGHT_LEFT, SPRITE_CARD_CLUBS_EDGE_RIGHT_RIGHT,
|
||||
SPRITE_CARD_LEFT, SPRITE_CARD_CLUBS_MED_LEFT, SPRITE_CARD_CLUBS_MED_RIGHT, SPRITE_CARD_RIGHT,
|
||||
SPRITE_CARD_LEFT, SPRITE_CARD_CLUBS_MED_LEFT, SPRITE_CARD_CLUBS_MED_RIGHT, SPRITE_CARD_RIGHT,
|
||||
SPRITE_CARD_CLUBS_EDGE_LEFT_LEFT, SPRITE_CARD_CLUBS_EDGE_LEFT_RIGHT, SPRITE_CARD_CLUBS_EDGE_RIGHT_LEFT, SPRITE_CARD_CLUBS_EDGE_RIGHT_RIGHT,
|
||||
SPRITE_CARD_BOTTOM_LEFT, SPRITE_CARD_BOTTOM, SPRITE_CARD_BOTTOM, SPRITE_CARD_SIX_BOTTOM
|
||||
};
|
||||
|
||||
const uint8_t SPRITE_CLUBS_SEVEN[SPRITE_CARD_TILE_COUNT] = {
|
||||
SPRITE_CARD_SEVEN_TOP, SPRITE_CARD_TOP, SPRITE_CARD_TOP, SPRITE_CARD_TOP_RIGHT,
|
||||
SPRITE_CARD_CLUBS_EDGE_LEFT_LEFT, SPRITE_CARD_CLUBS_MIDDLE_TOP_LEFT, SPRITE_CARD_CLUBS_MIDDLE_TOP_RIGHT, SPRITE_CARD_CLUBS_EDGE_RIGHT_RIGHT,
|
||||
SPRITE_CARD_LEFT, SPRITE_CARD_CLUBS_BIG_BOTTOM_LEFT, SPRITE_CARD_CLUBS_BIG_BOTTOM_RIGHT, SPRITE_CARD_RIGHT,
|
||||
SPRITE_CARD_CLUBS_EDGE_LEFT_LEFT, SPRITE_CARD_CLUBS_EDGE_LEFT_RIGHT, SPRITE_CARD_CLUBS_EDGE_RIGHT_LEFT, SPRITE_CARD_CLUBS_EDGE_RIGHT_RIGHT,
|
||||
SPRITE_CARD_CLUBS_EDGE_LEFT_LEFT, SPRITE_CARD_CLUBS_EDGE_LEFT_RIGHT, SPRITE_CARD_CLUBS_EDGE_RIGHT_LEFT, SPRITE_CARD_CLUBS_EDGE_RIGHT_RIGHT,
|
||||
SPRITE_CARD_BOTTOM_LEFT, SPRITE_CARD_BOTTOM, SPRITE_CARD_BOTTOM, SPRITE_CARD_SEVEN_BOTTOM
|
||||
};
|
||||
|
||||
const uint8_t SPRITE_CLUBS_EIGHT[SPRITE_CARD_TILE_COUNT] = {
|
||||
SPRITE_CARD_EIGHT_TOP, SPRITE_CARD_TOP, SPRITE_CARD_TOP, SPRITE_CARD_TOP_RIGHT,
|
||||
SPRITE_CARD_CLUBS_EDGE_LEFT_LEFT, SPRITE_CARD_CLUBS_EDGE_LEFT_RIGHT, SPRITE_CARD_CLUBS_EDGE_RIGHT_LEFT, SPRITE_CARD_CLUBS_EDGE_RIGHT_RIGHT,
|
||||
SPRITE_CARD_CLUBS_EDGE_LEFT_LEFT, SPRITE_CARD_CLUBS_EDGE_LEFT_RIGHT, SPRITE_CARD_CLUBS_EDGE_RIGHT_LEFT, SPRITE_CARD_CLUBS_EDGE_RIGHT_RIGHT,
|
||||
SPRITE_CARD_CLUBS_EDGE_LEFT_LEFT, SPRITE_CARD_CLUBS_EDGE_LEFT_RIGHT, SPRITE_CARD_CLUBS_EDGE_RIGHT_LEFT, SPRITE_CARD_CLUBS_EDGE_RIGHT_RIGHT,
|
||||
SPRITE_CARD_CLUBS_EDGE_LEFT_LEFT, SPRITE_CARD_CLUBS_EDGE_LEFT_RIGHT, SPRITE_CARD_CLUBS_EDGE_RIGHT_LEFT, SPRITE_CARD_CLUBS_EDGE_RIGHT_RIGHT,
|
||||
SPRITE_CARD_BOTTOM_LEFT, SPRITE_CARD_BOTTOM, SPRITE_CARD_BOTTOM, SPRITE_CARD_EIGHT_BOTTOM
|
||||
};
|
||||
|
||||
const uint8_t SPRITE_CLUBS_NINE[SPRITE_CARD_TILE_COUNT] = {
|
||||
SPRITE_CARD_NINE_TOP, SPRITE_CARD_TOP, SPRITE_CARD_TOP, SPRITE_CARD_TOP_RIGHT,
|
||||
SPRITE_CARD_CLUBS_EDGE_LEFT_LEFT, SPRITE_CARD_CLUBS_EDGE_LEFT_RIGHT, SPRITE_CARD_CLUBS_EDGE_RIGHT_LEFT, SPRITE_CARD_CLUBS_EDGE_RIGHT_RIGHT,
|
||||
SPRITE_CARD_CLUBS_EDGE_LEFT_LEFT, SPRITE_CARD_CLUBS_MIDDLE_TOP_LEFT, SPRITE_CARD_CLUBS_MIDDLE_TOP_RIGHT, SPRITE_CARD_CLUBS_EDGE_RIGHT_RIGHT,
|
||||
SPRITE_CARD_CLUBS_EDGE_LEFT_LEFT, SPRITE_CARD_CLUBS_MIDDLE_BOTTOM_LEFT, SPRITE_CARD_CLUBS_MIDDLE_BOTTOM_RIGHT, SPRITE_CARD_CLUBS_EDGE_RIGHT_RIGHT,
|
||||
SPRITE_CARD_CLUBS_EDGE_LEFT_LEFT, SPRITE_CARD_CLUBS_EDGE_LEFT_RIGHT, SPRITE_CARD_CLUBS_EDGE_RIGHT_LEFT, SPRITE_CARD_CLUBS_EDGE_RIGHT_RIGHT,
|
||||
SPRITE_CARD_BOTTOM_LEFT, SPRITE_CARD_BOTTOM, SPRITE_CARD_BOTTOM, SPRITE_CARD_NINE_BOTTOM
|
||||
};
|
||||
|
||||
const uint8_t SPRITE_CLUBS_TEN[SPRITE_CARD_TILE_COUNT] = {
|
||||
SPRITE_CARD_TEN_TOP, SPRITE_CARD_TOP, SPRITE_CARD_TOP, SPRITE_CARD_TOP_RIGHT,
|
||||
SPRITE_CARD_CLUBS_EDGE_LEFT_LEFT, SPRITE_CARD_CLUBS_MIDDLE_TOP_LEFT, SPRITE_CARD_CLUBS_MIDDLE_TOP_RIGHT, SPRITE_CARD_CLUBS_EDGE_RIGHT_RIGHT,
|
||||
SPRITE_CARD_CLUBS_EDGE_LEFT_LEFT, SPRITE_CARD_CLUBS_MIDDLE_BOTTOM_LEFT, SPRITE_CARD_CLUBS_MIDDLE_BOTTOM_RIGHT, SPRITE_CARD_CLUBS_EDGE_RIGHT_RIGHT,
|
||||
SPRITE_CARD_CLUBS_EDGE_LEFT_LEFT, SPRITE_CARD_CLUBS_MIDDLE_TOP_LEFT, SPRITE_CARD_CLUBS_MIDDLE_TOP_RIGHT, SPRITE_CARD_CLUBS_EDGE_RIGHT_RIGHT,
|
||||
SPRITE_CARD_CLUBS_EDGE_LEFT_LEFT, SPRITE_CARD_CLUBS_MIDDLE_BOTTOM_LEFT, SPRITE_CARD_CLUBS_MIDDLE_BOTTOM_RIGHT, SPRITE_CARD_CLUBS_EDGE_RIGHT_RIGHT,
|
||||
SPRITE_CARD_BOTTOM_LEFT, SPRITE_CARD_BOTTOM, SPRITE_CARD_BOTTOM, SPRITE_CARD_TEN_BOTTOM
|
||||
};
|
||||
|
||||
// const uint8_t *SPRITE_CARD_LIST[] = {
|
||||
// SPRITE_HEARTS_ACE
|
||||
// };
|
||||
|
||||
inline void spriteCardsBuffer() {
|
||||
spriteBuffer(SPRITE_CARD_VRAM_START, CARDS_TILES_IMAGE_TILES, CARDS_TILES_IMAGE);
|
||||
spriteBufferLow(SPRITE_CARD_VRAM_START, CARDS_TILES_IMAGE_TILES, CARDS_TILES_IMAGE);
|
||||
}
|
||||
|
||||
inline uint8_t * spriteCardsForCard(uint8_t card) {
|
||||
return SPRITE_HEARTS_ACE;
|
||||
return SPRITE_CLUBS_ACE;
|
||||
}
|
||||
|
||||
inline void spriteCardBufferTiles(uint8_t *buffer, uint8_t card) {
|
||||
|
@@ -11,55 +11,179 @@
|
||||
#include "../poker/card.h"
|
||||
#include "spritetileset.h"
|
||||
#include "sprites.h"
|
||||
#include "spriteborder.h"
|
||||
|
||||
#define SPRITE_CARD_VRAM_START SPRITE_BORDER_VRAM_END
|
||||
#define SPRITE_CARD_VRAM_START SPRITE_TILESET_VRAM_END_LOW
|
||||
|
||||
#define SPRITE_CARD_BLANK SPRITE_TILESET_WHITE
|
||||
#define SPRITE_CARD_BLANK SPRITE_TILESET_WHITE_LOW
|
||||
|
||||
// Numbers (normal)
|
||||
#define SPRITE_CARD_ACE_TOP SPRITE_CARD_VRAM_START + 0
|
||||
#define SPRITE_CARD_ACE_BOTTOM SPRITE_CARD_ACE_TOP/* ref */
|
||||
#define SPRITE_CARD_TWO_TOP SPRITE_CARD_VRAM_START + 1
|
||||
#define SPRITE_CARD_TWO_BOTTOM SPRITE_CARD_TWO_TOP/* ref */
|
||||
#define SPRITE_CARD_THREE_TOP SPRITE_CARD_VRAM_START + 2
|
||||
#define SPRITE_CARD_THREE_BOTTOM SPRITE_CARD_THREE_TOP/* ref */
|
||||
#define SPRITE_CARD_FOUR_TOP SPRITE_CARD_VRAM_START + 3
|
||||
#define SPRITE_CARD_FOUR_BOTTOM SPRITE_CARD_THREE_TOP/* ref */
|
||||
#define SPRITE_CARD_FIVE_TOP SPRITE_CARD_VRAM_START + 4
|
||||
#define SPRITE_CARD_FIVE_BOTTOM SPRITE_CARD_FIVE_TOP/* ref */
|
||||
#define SPRITE_CARD_SIX_TOP SPRITE_CARD_VRAM_START + 5
|
||||
#define SPRITE_CARD_SIX_BOTTOM SPRITE_CARD_SIX_TOP/* ref */
|
||||
#define SPRITE_CARD_SEVEN_TOP SPRITE_CARD_VRAM_START + 6
|
||||
#define SPRITE_CARD_SEVEN_BOTTOM SPRITE_CARD_SEVEN_TOP/* ref */
|
||||
#define SPRITE_CARD_EIGHT_TOP SPRITE_CARD_VRAM_START + 7
|
||||
#define SPRITE_CARD_EIGHT_BOTTOM SPRITE_CARD_EIGHT_TOP/* ref */
|
||||
#define SPRITE_CARD_NINE_TOP SPRITE_CARD_VRAM_START + 8
|
||||
#define SPRITE_CARD_NINE_BOTTOM SPRITE_CARD_NINE_TOP/* ref */
|
||||
#define SPRITE_CARD_TEN_TOP SPRITE_CARD_VRAM_START + 9
|
||||
#define SPRITE_CARD_TEN_BOTTOM/* ref */
|
||||
#define SPRITE_CARD_TWO_TOP SPRITE_CARD_ACE_TOP + 1
|
||||
#define SPRITE_CARD_THREE_TOP SPRITE_CARD_ACE_TOP + 2
|
||||
#define SPRITE_CARD_FOUR_TOP SPRITE_CARD_ACE_TOP + 3
|
||||
#define SPRITE_CARD_FIVE_TOP SPRITE_CARD_ACE_TOP + 4
|
||||
#define SPRITE_CARD_SIX_TOP SPRITE_CARD_ACE_TOP + 5
|
||||
#define SPRITE_CARD_SEVEN_TOP SPRITE_CARD_ACE_TOP + 6
|
||||
#define SPRITE_CARD_EIGHT_TOP SPRITE_CARD_ACE_TOP + 7
|
||||
#define SPRITE_CARD_NINE_TOP SPRITE_CARD_ACE_TOP + 8
|
||||
#define SPRITE_CARD_TEN_TOP SPRITE_CARD_ACE_TOP + 9
|
||||
|
||||
#define SPRITE_CARD_TOP SPRITE_CARD_VRAM_START + 11
|
||||
#define SPRITE_CARD_TOP_RIGHT SPRITE_CARD_VRAM_START + 10
|
||||
#define SPRITE_CARD_LEFT SPRITE_CARD_TOP/* ref */
|
||||
#define SPRITE_CARD_RIGHT SPRITE_CARD_TOP/* ref */
|
||||
#define SPRITE_CARD_BOTTOM_LEFT SPRITE_CARD_TOP_RIGHT/* ref */
|
||||
#define SPRITE_CARD_BOTTOM_RIGHT SPRITE_CARD_TOP_RIGHT/* ref */
|
||||
#define SPRITE_CARD_BOTTOM SPRITE_CARD_TOP/* ref */
|
||||
// Numbers (flipped)
|
||||
#define SPRITE_CARD_ACE_BOTTOM SPRITE_CARD_VRAM_START + 16
|
||||
#define SPRITE_CARD_TWO_BOTTOM SPRITE_CARD_ACE_BOTTOM + 1
|
||||
#define SPRITE_CARD_THREE_BOTTOM SPRITE_CARD_ACE_BOTTOM + 2
|
||||
#define SPRITE_CARD_FOUR_BOTTOM SPRITE_CARD_ACE_BOTTOM + 3
|
||||
#define SPRITE_CARD_FIVE_BOTTOM SPRITE_CARD_ACE_BOTTOM + 4
|
||||
#define SPRITE_CARD_SIX_BOTTOM SPRITE_CARD_ACE_BOTTOM + 5
|
||||
#define SPRITE_CARD_SEVEN_BOTTOM SPRITE_CARD_ACE_BOTTOM + 6
|
||||
#define SPRITE_CARD_EIGHT_BOTTOM SPRITE_CARD_ACE_BOTTOM + 7
|
||||
#define SPRITE_CARD_NINE_BOTTOM SPRITE_CARD_ACE_BOTTOM + 8
|
||||
#define SPRITE_CARD_TEN_BOTTOM SPRITE_CARD_ACE_BOTTOM + 9
|
||||
|
||||
#define SPRITE_CARD_DIAMOND_BIG_TOP_LEFT SPRITE_CARD_VRAM_START + 12
|
||||
#define SPRITE_CARD_DIAMOND_BIG_TOP_RIGHT SPRITE_CARD_DIAMOND_BIG_TOP_LEFT/* ref */
|
||||
#define SPRITE_CARD_DIAMOND_BIG_BOTTOM_LEFT SPRITE_CARD_DIAMOND_BIG_TOP_LEFT/* ref */
|
||||
#define SPRITE_CARD_DIAMOND_BIG_BOTTOM_RIGHT SPRITE_CARD_DIAMOND_BIG_TOP_LEFT/* ref */
|
||||
#define SPRITE_CARD_HEART_BIG_TOP_LEFT SPRITE_CARD_VRAM_START + 13
|
||||
#define SPRITE_CARD_HEART_BIG_TOP_RIGHT SPRITE_CARD_HEART_BIG_TOP_LEFT/* ref */
|
||||
#define SPRITE_CARD_HEART_BIG_BOTTOM_LEFT SPRITE_CARD_DIAMOND_BIG_BOTTOM_LEFT
|
||||
#define SPRITE_CARD_HEART_BIG_BOTTOM_RIGHT SPRITE_CARD_DIAMOND_BIG_BOTTOM_RIGHT
|
||||
// Edges
|
||||
#define SPRITE_CARD_TOP SPRITE_CARD_VRAM_START + 10
|
||||
#define SPRITE_CARD_BOTTOM SPRITE_CARD_TOP + 1
|
||||
#define SPRITE_CARD_RIGHT SPRITE_CARD_BOTTOM + 1
|
||||
#define SPRITE_CARD_LEFT SPRITE_CARD_RIGHT + 1
|
||||
|
||||
// Corners (no numbers)
|
||||
#define SPRITE_CARD_TOP_RIGHT SPRITE_CARD_VRAM_START + 14
|
||||
#define SPRITE_CARD_BOTTOM_LEFT SPRITE_CARD_TOP_RIGHT + 1
|
||||
|
||||
|
||||
// Jacks
|
||||
#define SPRITE_CARD_JACKS_TOP_LEFT SPRITE_CARD_VRAM_START + 112
|
||||
|
||||
|
||||
// Large Suits (Ace/Two)
|
||||
#define SPRITE_CARD_DIAMONDS_BIG_TOP_LEFT SPRITE_CARD_VRAM_START + 32
|
||||
#define SPRITE_CARD_DIAMONDS_BIG_TOP_RIGHT SPRITE_CARD_DIAMONDS_BIG_TOP_LEFT + 1
|
||||
#define SPRITE_CARD_DIAMONDS_BIG_BOTTOM_LEFT SPRITE_CARD_VRAM_START + 40
|
||||
#define SPRITE_CARD_DIAMONDS_BIG_BOTTOM_RIGHT SPRITE_CARD_DIAMONDS_BIG_BOTTOM_LEFT + 1
|
||||
|
||||
#define SPRITE_CARD_HEARTS_BIG_TOP_LEFT SPRITE_CARD_VRAM_START + 34
|
||||
#define SPRITE_CARD_HEARTS_BIG_TOP_RIGHT SPRITE_CARD_HEARTS_BIG_TOP_LEFT + 1
|
||||
#define SPRITE_CARD_HEARTS_BIG_BOTTOM_LEFT SPRITE_CARD_VRAM_START + 42
|
||||
#define SPRITE_CARD_HEARTS_BIG_BOTTOM_RIGHT SPRITE_CARD_HEARTS_BIG_BOTTOM_LEFT + 1
|
||||
|
||||
#define SPRITE_CARD_SPADES_BIG_TOP_LEFT SPRITE_CARD_VRAM_START + 36
|
||||
#define SPRITE_CARD_SPADES_BIG_TOP_RIGHT SPRITE_CARD_SPADES_BIG_TOP_LEFT + 1
|
||||
#define SPRITE_CARD_SPADES_BIG_BOTTOM_LEFT SPRITE_CARD_VRAM_START + 44
|
||||
#define SPRITE_CARD_SPADES_BIG_BOTTOM_RIGHT SPRITE_CARD_SPADES_BIG_BOTTOM_LEFT + 1
|
||||
|
||||
#define SPRITE_CARD_CLUBS_BIG_TOP_LEFT SPRITE_CARD_VRAM_START + 38
|
||||
#define SPRITE_CARD_CLUBS_BIG_TOP_RIGHT SPRITE_CARD_CLUBS_BIG_TOP_LEFT + 1
|
||||
#define SPRITE_CARD_CLUBS_BIG_BOTTOM_LEFT SPRITE_CARD_VRAM_START + 46
|
||||
#define SPRITE_CARD_CLUBS_BIG_BOTTOM_RIGHT SPRITE_CARD_CLUBS_BIG_BOTTOM_LEFT + 1
|
||||
|
||||
|
||||
// Medium Suits (Three)
|
||||
#define SPRITE_CARD_DIAMONDS_MED_LEFT SPRITE_CARD_VRAM_START + 48
|
||||
#define SPRITE_CARD_DIAMONDS_MED_RIGHT SPRITE_CARD_DIAMONDS_MED_LEFT + 1
|
||||
|
||||
#define SPRITE_CARD_HEARTS_MED_LEFT SPRITE_CARD_VRAM_START + 50
|
||||
#define SPRITE_CARD_HEARTS_MED_RIGHT SPRITE_CARD_HEARTS_MED_LEFT + 1
|
||||
|
||||
#define SPRITE_CARD_SPADES_MED_LEFT SPRITE_CARD_VRAM_START + 52
|
||||
#define SPRITE_CARD_SPADES_MED_RIGHT SPRITE_CARD_SPADES_MED_LEFT + 1
|
||||
|
||||
#define SPRITE_CARD_CLUBS_MED_LEFT SPRITE_CARD_VRAM_START + 54
|
||||
#define SPRITE_CARD_CLUBS_MED_RIGHT SPRITE_CARD_CLUBS_MED_LEFT + 1
|
||||
|
||||
|
||||
// Edge Suits (Four, Five, Six, Seven, Eight, Nine, Ten)
|
||||
#define SPRITE_CARD_DIAMONDS_EDGE_LEFT_LEFT SPRITE_CARD_VRAM_START + 56
|
||||
#define SPRITE_CARD_DIAMONDS_EDGE_LEFT_RIGHT SPRITE_CARD_DIAMONDS_EDGE_LEFT_LEFT + 1
|
||||
#define SPRITE_CARD_DIAMONDS_EDGE_RIGHT_LEFT SPRITE_CARD_VRAM_START + 64
|
||||
#define SPRITE_CARD_DIAMONDS_EDGE_RIGHT_RIGHT SPRITE_CARD_DIAMONDS_EDGE_RIGHT_LEFT + 1
|
||||
|
||||
#define SPRITE_CARD_HEARTS_EDGE_LEFT_LEFT SPRITE_CARD_VRAM_START + 58
|
||||
#define SPRITE_CARD_HEARTS_EDGE_LEFT_RIGHT SPRITE_CARD_HEARTS_EDGE_LEFT_LEFT + 1
|
||||
#define SPRITE_CARD_HEARTS_EDGE_RIGHT_LEFT SPRITE_CARD_VRAM_START + 66
|
||||
#define SPRITE_CARD_HEARTS_EDGE_RIGHT_RIGHT SPRITE_CARD_HEARTS_EDGE_RIGHT_LEFT + 1
|
||||
|
||||
#define SPRITE_CARD_SPADES_EDGE_LEFT_LEFT SPRITE_CARD_VRAM_START + 60
|
||||
#define SPRITE_CARD_SPADES_EDGE_LEFT_RIGHT SPRITE_CARD_SPADES_EDGE_LEFT_LEFT + 1
|
||||
#define SPRITE_CARD_SPADES_EDGE_RIGHT_LEFT SPRITE_CARD_VRAM_START + 68
|
||||
#define SPRITE_CARD_SPADES_EDGE_RIGHT_RIGHT SPRITE_CARD_SPADES_EDGE_RIGHT_LEFT + 1
|
||||
|
||||
#define SPRITE_CARD_CLUBS_EDGE_LEFT_LEFT SPRITE_CARD_VRAM_START + 62
|
||||
#define SPRITE_CARD_CLUBS_EDGE_LEFT_RIGHT SPRITE_CARD_CLUBS_EDGE_LEFT_LEFT + 1
|
||||
#define SPRITE_CARD_CLUBS_EDGE_RIGHT_LEFT SPRITE_CARD_VRAM_START + 70
|
||||
#define SPRITE_CARD_CLUBS_EDGE_RIGHT_RIGHT SPRITE_CARD_CLUBS_EDGE_RIGHT_LEFT + 1
|
||||
|
||||
|
||||
// Edge Suits With Middle (Seven, Eight, Nine, Ten)
|
||||
#define SPRITE_CARD_DIAMONDS_MIDDLE_TOP_LEFT SPRITE_CARD_VRAM_START + 72
|
||||
#define SPRITE_CARD_DIAMONDS_MIDDLE_TOP_RIGHT SPRITE_CARD_DIAMONDS_MIDDLE_TOP_LEFT + 1
|
||||
#define SPRITE_CARD_DIAMONDS_MIDDLE_BOTTOM_LEFT SPRITE_CARD_VRAM_START + 80
|
||||
#define SPRITE_CARD_DIAMONDS_MIDDLE_BOTTOM_RIGHT SPRITE_CARD_DIAMONDS_MIDDLE_BOTTOM_LEFT + 1
|
||||
|
||||
#define SPRITE_CARD_HEARTS_MIDDLE_TOP_LEFT SPRITE_CARD_VRAM_START + 74
|
||||
#define SPRITE_CARD_HEARTS_MIDDLE_TOP_RIGHT SPRITE_CARD_HEARTS_MIDDLE_TOP_LEFT + 1
|
||||
#define SPRITE_CARD_HEARTS_MIDDLE_BOTTOM_LEFT SPRITE_CARD_VRAM_START + 82
|
||||
#define SPRITE_CARD_HEARTS_MIDDLE_BOTTOM_RIGHT SPRITE_CARD_HEARTS_MIDDLE_BOTTOM_LEFT + 1
|
||||
|
||||
#define SPRITE_CARD_SPADES_MIDDLE_TOP_LEFT SPRITE_CARD_VRAM_START + 76
|
||||
#define SPRITE_CARD_SPADES_MIDDLE_TOP_RIGHT SPRITE_CARD_SPADES_MIDDLE_TOP_LEFT + 1
|
||||
#define SPRITE_CARD_SPADES_MIDDLE_BOTTOM_LEFT SPRITE_CARD_VRAM_START + 84
|
||||
#define SPRITE_CARD_SPADES_MIDDLE_BOTTOM_RIGHT SPRITE_CARD_SPADES_MIDDLE_BOTTOM_LEFT + 1
|
||||
|
||||
#define SPRITE_CARD_CLUBS_MIDDLE_TOP_LEFT SPRITE_CARD_VRAM_START + 78
|
||||
#define SPRITE_CARD_CLUBS_MIDDLE_TOP_RIGHT SPRITE_CARD_CLUBS_MIDDLE_TOP_LEFT + 1
|
||||
#define SPRITE_CARD_CLUBS_MIDDLE_BOTTOM_LEFT SPRITE_CARD_VRAM_START + 86
|
||||
#define SPRITE_CARD_CLUBS_MIDDLE_BOTTOM_RIGHT SPRITE_CARD_CLUBS_MIDDLE_BOTTOM_LEFT + 1
|
||||
|
||||
|
||||
// Information about the card as a tilemap
|
||||
#define SPRITE_CARD_WIDTH 4
|
||||
#define SPRITE_CARD_HEIGHT 6
|
||||
#define SPRITE_CARD_TILE_COUNT (SPRITE_CARD_WIDTH * SPRITE_CARD_HEIGHT)
|
||||
|
||||
|
||||
extern const uint8_t SPRITE_HEARTS_ACE[];
|
||||
extern const uint8_t SPRITE_HEARTS_TWO[];
|
||||
extern const uint8_t SPRITE_HEARTS_THREE[];
|
||||
extern const uint8_t SPRITE_HEARTS_FOUR[];
|
||||
extern const uint8_t SPRITE_HEARTS_FIVE[];
|
||||
extern const uint8_t SPRITE_HEARTS_SIX[];
|
||||
extern const uint8_t SPRITE_HEARTS_SEVEN[];
|
||||
extern const uint8_t SPRITE_HEARTS_EIGHT[];
|
||||
extern const uint8_t SPRITE_HEARTS_NINE[];
|
||||
extern const uint8_t SPRITE_HEARTS_TEN[];
|
||||
|
||||
extern const uint8_t SPRITE_DIAMONDS_ACE[];
|
||||
extern const uint8_t SPRITE_DIAMONDS_TWO[];
|
||||
extern const uint8_t SPRITE_DIAMONDS_THREE[];
|
||||
extern const uint8_t SPRITE_DIAMONDS_FOUR[];
|
||||
extern const uint8_t SPRITE_DIAMONDS_FIVE[];
|
||||
extern const uint8_t SPRITE_DIAMONDS_SIX[];
|
||||
extern const uint8_t SPRITE_DIAMONDS_SEVEN[];
|
||||
extern const uint8_t SPRITE_DIAMONDS_EIGHT[];
|
||||
extern const uint8_t SPRITE_DIAMONDS_NINE[];
|
||||
extern const uint8_t SPRITE_DIAMONDS_TEN[];
|
||||
|
||||
extern const uint8_t SPRITE_SPADES_ACE[];
|
||||
extern const uint8_t SPRITE_SPADES_TWO[];
|
||||
extern const uint8_t SPRITE_SPADES_THREE[];
|
||||
extern const uint8_t SPRITE_SPADES_FOUR[];
|
||||
extern const uint8_t SPRITE_SPADES_FIVE[];
|
||||
extern const uint8_t SPRITE_SPADES_SIX[];
|
||||
extern const uint8_t SPRITE_SPADES_SEVEN[];
|
||||
extern const uint8_t SPRITE_SPADES_EIGHT[];
|
||||
extern const uint8_t SPRITE_SPADES_NINE[];
|
||||
extern const uint8_t SPRITE_SPADES_TEN[];
|
||||
|
||||
extern const uint8_t SPRITE_CLUBS_ACE[];
|
||||
extern const uint8_t SPRITE_CLUBS_TWO[];
|
||||
extern const uint8_t SPRITE_CLUBS_THREE[];
|
||||
extern const uint8_t SPRITE_CLUBS_FOUR[];
|
||||
extern const uint8_t SPRITE_CLUBS_FIVE[];
|
||||
extern const uint8_t SPRITE_CLUBS_SIX[];
|
||||
extern const uint8_t SPRITE_CLUBS_SEVEN[];
|
||||
extern const uint8_t SPRITE_CLUBS_EIGHT[];
|
||||
extern const uint8_t SPRITE_CLUBS_NINE[];
|
||||
extern const uint8_t SPRITE_CLUBS_TEN[];
|
||||
|
||||
inline void spriteCardsBuffer();
|
||||
|
||||
|
@@ -8,7 +8,7 @@
|
||||
#include "spritefont.h"
|
||||
|
||||
inline void spriteFontBuffer() {
|
||||
spriteBuffer(SPRITE_FONT_VRAM_START, FONT_IMAGE_TILES, FONT_IMAGE);
|
||||
spriteBufferHigh(SPRITE_FONT_VRAM_START, FONT_IMAGE_TILES, FONT_IMAGE);
|
||||
}
|
||||
|
||||
inline uint8_t spriteFontTileFromChar(char character) {
|
||||
|
@@ -10,10 +10,11 @@
|
||||
#include "FONT.h"
|
||||
#include "sprites.h"
|
||||
#include "spritetileset.h"
|
||||
#include "spriteborder.h"
|
||||
|
||||
#define SPRITE_FONT_FIRST_CHARACTER 33
|
||||
|
||||
#define SPRITE_FONT_VRAM_START SPRITE_TILESET_VRAM_END
|
||||
#define SPRITE_FONT_VRAM_START SPRITE_BORDER_VRAM_END
|
||||
#define SPRITE_FONT_VRAM_END SPRITE_FONT_VRAM_START + FONT_IMAGE_TILES
|
||||
|
||||
/**
|
||||
|
@@ -7,6 +7,41 @@
|
||||
|
||||
#include "sprites.h"
|
||||
|
||||
inline void spriteBuffer(uint8_t position, uint8_t length, uint8_t *tiles) {
|
||||
set_bkg_data(position, length, tiles);
|
||||
inline void spriteBufferLow(uint8_t position, uint8_t length, uint8_t *tiles) {
|
||||
uint16_t vramPosition = SPRITE_VRAM_LOW;
|
||||
vramPosition += position * SPRITE_VRAM_SIZE_PER_TILE;
|
||||
vmemcpy(vramPosition, tiles, SPRITE_VRAM_SIZE_PER_TILE * length);
|
||||
}
|
||||
|
||||
inline void spriteBufferHigh(uint8_t position, uint8_t length, uint8_t *tiles) {
|
||||
uint16_t vramPosition = SPRITE_VRAM_HIGH;
|
||||
vramPosition += position * SPRITE_VRAM_SIZE_PER_TILE;
|
||||
vramPosition += SPRITE_VRAM_DISTANCE_BETWEEN_LOW_AND_HIGH;
|
||||
vmemcpy(vramPosition, tiles, SPRITE_VRAM_SIZE_PER_TILE * length);
|
||||
}
|
||||
|
||||
inline void spriteBufferBackgroundLow(
|
||||
uint8_t x, uint8_t y,
|
||||
uint8_t width, uint8_t height,
|
||||
uint8_t *tiles
|
||||
) {
|
||||
set_tiles(
|
||||
x, y,
|
||||
height, width,// Bug?
|
||||
SPRITE_VRAM_TILEMAP_LOW,
|
||||
tiles
|
||||
);
|
||||
}
|
||||
|
||||
inline void spriteBufferBackgroundHigh(
|
||||
uint8_t x, uint8_t y,
|
||||
uint8_t width, uint8_t height,
|
||||
uint8_t *tiles
|
||||
) {
|
||||
set_tiles(
|
||||
x, y,
|
||||
height, width,// Bug?
|
||||
SPRITE_VRAM_TILEMAP_LOW,
|
||||
tiles
|
||||
);
|
||||
}
|
@@ -8,11 +8,38 @@
|
||||
#pragma once
|
||||
#include "../libs.h"
|
||||
|
||||
#define SPRITE_VRAM_LOW 0x8000
|
||||
#define SPRITE_VRAM_HIGH 0x8800
|
||||
#define SPRITE_VRAM_DISTANCE_BETWEEN_LOW_AND_HIGH 0x0800
|
||||
#define SPRITE_VRAM_SIZE_PER_TILE 0x10
|
||||
#define SPRITE_VRAM_TILEMAP_LOW 0x9800
|
||||
|
||||
/**
|
||||
* Buffer tiles data into VRAM
|
||||
* Buffer tiles data into VRAM in the HIGH space (The upper bounds of VRAM)
|
||||
*
|
||||
* @param position Position in VRAM to buffer in to.
|
||||
* @param length Length of the data being buffered (count of tiles).
|
||||
* @param tiles Pointer to array of tiles to be bufffered.
|
||||
*/
|
||||
inline void spriteBuffer(uint8_t position, uint8_t length, uint8_t *tiles);
|
||||
inline void spriteBufferHigh(uint8_t position, uint8_t length, uint8_t *tiles);
|
||||
|
||||
/**
|
||||
* Buffer tiles data into VRAM in the LOW space (The start of VRAM)
|
||||
*
|
||||
* @param position Position in VRAM to buffer in to.
|
||||
* @param length Length of the data being buffered (count of tiles).
|
||||
* @param tiles Pointer to array of tiles to be bufffered.
|
||||
*/
|
||||
inline void spriteBufferLow(uint8_t position, uint8_t length, uint8_t *tiles);
|
||||
|
||||
inline void spriteBufferBackgroundLow(
|
||||
uint8_t x, uint8_t y,
|
||||
uint8_t width, uint8_t height,
|
||||
uint8_t *tiles
|
||||
);
|
||||
|
||||
inline void spriteBufferBackgroundHigh(
|
||||
uint8_t x, uint8_t y,
|
||||
uint8_t width, uint8_t height,
|
||||
uint8_t *tiles
|
||||
);
|
@@ -8,5 +8,6 @@
|
||||
#include "spritetileset.h"
|
||||
|
||||
void spriteTilesetBuffer() {
|
||||
spriteBuffer(SPRITE_TILESET_VRAM_START, TILESET_IMAGE_TILES, TILESET_IMAGE);
|
||||
spriteBufferLow(SPRITE_TILESET_VRAM_START_LOW, TILESET_IMAGE_TILES, TILESET_IMAGE);
|
||||
spriteBufferHigh(SPRITE_TILESET_VRAM_START_HIGH, TILESET_IMAGE_TILES, TILESET_IMAGE);
|
||||
}
|
@@ -10,18 +10,31 @@
|
||||
#include "TILESET.h"
|
||||
#include "sprites.h"
|
||||
|
||||
#define SPRITE_TILESET_VRAM_START 0x00
|
||||
#define SPRITE_TILESET_VRAM_END SPRITE_TILESET_VRAM_START + TILESET_IMAGE_TILES
|
||||
#define SPRITE_TILESET_VRAM_START_LOW 0x00
|
||||
#define SPRITE_TILESET_VRAM_END_LOW SPRITE_TILESET_VRAM_START_LOW + TILESET_IMAGE_TILES
|
||||
|
||||
#define SPRITE_TILESET_TILE_0 SPRITE_TILESET_VRAM_START + 0x00
|
||||
#define SPRITE_TILESET_TILE_1 SPRITE_TILESET_VRAM_START + 0x01
|
||||
#define SPRITE_TILESET_TILE_2 SPRITE_TILESET_VRAM_START + 0x02
|
||||
#define SPRITE_TILESET_TILE_3 SPRITE_TILESET_VRAM_START + 0x03
|
||||
#define SPRITE_TILESET_VRAM_START_HIGH 0x00
|
||||
#define SPRITE_TILESET_VRAM_END_HIGH SPRITE_TILESET_VRAM_START_HIGH + TILESET_IMAGE_TILES
|
||||
|
||||
#define SPRITE_TILESET_WHITE SPRITE_TILESET_TILE_0
|
||||
#define SPRITE_TILESET_BLACK SPRITE_TILESET_TILE_3
|
||||
#define SPRITE_TILESET_LIGHT SPRITE_TILESET_TILE_1
|
||||
#define SPRITE_TILESET_DARK SPRITE_TILESET_TILE_2
|
||||
#define SPRITE_TILESET_TILE_0_LOW SPRITE_TILESET_VRAM_START_LOW + 0x00
|
||||
#define SPRITE_TILESET_TILE_1_LOW SPRITE_TILESET_VRAM_START_LOW + 0x01
|
||||
#define SPRITE_TILESET_TILE_2_LOW SPRITE_TILESET_VRAM_START_LOW + 0x02
|
||||
#define SPRITE_TILESET_TILE_3_LOW SPRITE_TILESET_VRAM_START_LOW + 0x03
|
||||
|
||||
#define SPRITE_TILESET_TILE_0_HIGH SPRITE_TILESET_VRAM_START_HIGH + 0x00
|
||||
#define SPRITE_TILESET_TILE_1_HIGH SPRITE_TILESET_VRAM_START_HIGH + 0x01
|
||||
#define SPRITE_TILESET_TILE_2_HIGH SPRITE_TILESET_VRAM_START_HIGH + 0x02
|
||||
#define SPRITE_TILESET_TILE_3_HIGH SPRITE_TILESET_VRAM_START_HIGH + 0x03
|
||||
|
||||
#define SPRITE_TILESET_WHITE_LOW SPRITE_TILESET_TILE_0_LOW
|
||||
#define SPRITE_TILESET_BLACK_LOW SPRITE_TILESET_TILE_3_LOW
|
||||
#define SPRITE_TILESET_LIGHT_LOW SPRITE_TILESET_TILE_1_LOW
|
||||
#define SPRITE_TILESET_DARK_LOW SPRITE_TILESET_TILE_2_LOW
|
||||
|
||||
#define SPRITE_TILESET_WHITE_HIGH SPRITE_TILESET_TILE_0_HIGH
|
||||
#define SPRITE_TILESET_BLACK_HIGH SPRITE_TILESET_TILE_3_HIGH
|
||||
#define SPRITE_TILESET_LIGHT_HIGH SPRITE_TILESET_TILE_1_HIGH
|
||||
#define SPRITE_TILESET_DARK_HIGH SPRITE_TILESET_TILE_2_HIGH
|
||||
|
||||
|
||||
// Shades are mapped where each set of 4 colors is mapped to two bits that will
|
||||
|
Reference in New Issue
Block a user