Render cards in standard manner
This commit is contained in:
13
src/main.c
13
src/main.c
@@ -20,7 +20,9 @@ void main() {
|
|||||||
DISPLAY_OFF;
|
DISPLAY_OFF;
|
||||||
LCDC_REG = LCDCF_OFF | LCDCF_BG8000 | LCDCF_BG9800 | LCDCF_BGON;
|
LCDC_REG = LCDCF_OFF | LCDCF_BG8000 | LCDCF_BG9800 | LCDCF_BGON;
|
||||||
STAT_REG |= STATF_LYC;
|
STAT_REG |= STATF_LYC;
|
||||||
LYC_REG = 0;
|
LYC_REG = 0x00;
|
||||||
|
SCX_REG = 0x00;
|
||||||
|
SCY_REG = 0x00;
|
||||||
add_LCD(interruptOnScanline);
|
add_LCD(interruptOnScanline);
|
||||||
}
|
}
|
||||||
set_interrupts(VBL_IFLAG | LCD_IFLAG);
|
set_interrupts(VBL_IFLAG | LCD_IFLAG);
|
||||||
@@ -46,13 +48,14 @@ void main() {
|
|||||||
filled[j] = SPRITE_TILESET_WHITE_LOW;
|
filled[j] = SPRITE_TILESET_WHITE_LOW;
|
||||||
}
|
}
|
||||||
spriteBufferBackgroundLow(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
|
// Card Test
|
||||||
|
uint8_t i;
|
||||||
|
for(i = 0; i < 0x03; i++) {
|
||||||
uint8_t cardTiles[SPRITE_CARD_TILE_COUNT];
|
uint8_t cardTiles[SPRITE_CARD_TILE_COUNT];
|
||||||
spriteCardBufferTiles(cardTiles, CARD_HEARTS_TWO);
|
spriteCardBufferTiles(cardTiles, i);
|
||||||
spriteBufferBackgroundLow(0x00, 0x00, SPRITE_CARD_WIDTH, SPRITE_CARD_HEIGHT, cardTiles);
|
spriteBufferBackgroundLow(i * SPRITE_CARD_WIDTH, 0x00, SPRITE_CARD_WIDTH, SPRITE_CARD_HEIGHT, cardTiles);
|
||||||
|
}
|
||||||
|
|
||||||
// Now turn the screen on
|
// Now turn the screen on
|
||||||
DISPLAY_ON;
|
DISPLAY_ON;
|
||||||
|
@@ -371,13 +371,70 @@ const uint8_t SPRITE_CLUBS_TEN[SPRITE_CARD_TILE_COUNT] = {
|
|||||||
SPRITE_CARD_BOTTOM_LEFT, SPRITE_CARD_BOTTOM, SPRITE_CARD_BOTTOM, SPRITE_CARD_TEN_BOTTOM
|
SPRITE_CARD_BOTTOM_LEFT, SPRITE_CARD_BOTTOM, SPRITE_CARD_BOTTOM, SPRITE_CARD_TEN_BOTTOM
|
||||||
};
|
};
|
||||||
|
|
||||||
|
const uint8_t *SPRITE_CARDS[] = {
|
||||||
|
SPRITE_CLUBS_TWO,
|
||||||
|
SPRITE_CLUBS_THREE,
|
||||||
|
SPRITE_CLUBS_FOUR,
|
||||||
|
SPRITE_CLUBS_FIVE,
|
||||||
|
SPRITE_CLUBS_SIX,
|
||||||
|
SPRITE_CLUBS_SEVEN,
|
||||||
|
SPRITE_CLUBS_EIGHT,
|
||||||
|
SPRITE_CLUBS_NINE,
|
||||||
|
SPRITE_CLUBS_TEN,
|
||||||
|
NULL,
|
||||||
|
NULL,
|
||||||
|
NULL,
|
||||||
|
SPRITE_CLUBS_ACE,
|
||||||
|
|
||||||
|
SPRITE_DIAMONDS_TWO,
|
||||||
|
SPRITE_DIAMONDS_THREE,
|
||||||
|
SPRITE_DIAMONDS_FOUR,
|
||||||
|
SPRITE_DIAMONDS_FIVE,
|
||||||
|
SPRITE_DIAMONDS_SIX,
|
||||||
|
SPRITE_DIAMONDS_SEVEN,
|
||||||
|
SPRITE_DIAMONDS_EIGHT,
|
||||||
|
SPRITE_DIAMONDS_NINE,
|
||||||
|
SPRITE_DIAMONDS_TEN,
|
||||||
|
NULL,
|
||||||
|
NULL,
|
||||||
|
NULL,
|
||||||
|
SPRITE_DIAMONDS_ACE,
|
||||||
|
|
||||||
|
SPRITE_HEARTS_TWO,
|
||||||
|
SPRITE_HEARTS_THREE,
|
||||||
|
SPRITE_HEARTS_FOUR,
|
||||||
|
SPRITE_HEARTS_FIVE,
|
||||||
|
SPRITE_HEARTS_SIX,
|
||||||
|
SPRITE_HEARTS_SEVEN,
|
||||||
|
SPRITE_HEARTS_EIGHT,
|
||||||
|
SPRITE_HEARTS_NINE,
|
||||||
|
SPRITE_HEARTS_TEN,
|
||||||
|
NULL,
|
||||||
|
NULL,
|
||||||
|
NULL,
|
||||||
|
SPRITE_HEARTS_ACE,
|
||||||
|
|
||||||
|
SPRITE_SPADES_TWO,
|
||||||
|
SPRITE_SPADES_THREE,
|
||||||
|
SPRITE_SPADES_FOUR,
|
||||||
|
SPRITE_SPADES_FIVE,
|
||||||
|
SPRITE_SPADES_SIX,
|
||||||
|
SPRITE_SPADES_SEVEN,
|
||||||
|
SPRITE_SPADES_EIGHT,
|
||||||
|
SPRITE_SPADES_NINE,
|
||||||
|
SPRITE_SPADES_TEN,
|
||||||
|
NULL,
|
||||||
|
NULL,
|
||||||
|
NULL,
|
||||||
|
SPRITE_SPADES_ACE
|
||||||
|
};
|
||||||
|
|
||||||
inline void spriteCardsBuffer() {
|
inline void spriteCardsBuffer() {
|
||||||
spriteBufferLow(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) {
|
inline uint8_t * spriteCardsForCard(uint8_t card) {
|
||||||
return SPRITE_CLUBS_ACE;
|
return SPRITE_CARDS[card];
|
||||||
}
|
}
|
||||||
|
|
||||||
inline void spriteCardBufferTiles(uint8_t *buffer, uint8_t card) {
|
inline void spriteCardBufferTiles(uint8_t *buffer, uint8_t card) {
|
||||||
|
@@ -185,6 +185,8 @@ extern const uint8_t SPRITE_CLUBS_EIGHT[];
|
|||||||
extern const uint8_t SPRITE_CLUBS_NINE[];
|
extern const uint8_t SPRITE_CLUBS_NINE[];
|
||||||
extern const uint8_t SPRITE_CLUBS_TEN[];
|
extern const uint8_t SPRITE_CLUBS_TEN[];
|
||||||
|
|
||||||
|
extern const uint8_t *SPRITE_CARDS[];
|
||||||
|
|
||||||
inline void spriteCardsBuffer();
|
inline void spriteCardsBuffer();
|
||||||
|
|
||||||
inline uint8_t * spriteCardsForCard(uint8_t card);
|
inline uint8_t * spriteCardsForCard(uint8_t card);
|
||||||
|
8
test.sh
Normal file → Executable file
8
test.sh
Normal file → Executable file
@@ -1,8 +1,2 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
# Send over latest build
|
scp ./build/Penny.gb root@ywbud3.local:/storage/roms/gb/Penny.gb
|
||||||
scp ./build/Penny.gb root@ywbud3:/storage/roms/gb/Penny.gb
|
|
||||||
|
|
||||||
systemctl stop emustation.service
|
|
||||||
killall emulationstation
|
|
||||||
retroarch -L /lib/libretro/gambatte_libretro.so "/storage/roms/gb/Penny.gb"
|
|
||||||
systemctl start emustation.service
|
|
Reference in New Issue
Block a user