#ifdef HAVE_LCD_BITMAP

/* Brickmania */
#ifdef HAVE_LCD_COLOR
brickmania_gameover.112x54x16.bmp

#if LCD_WIDTH >= 640 /* M:Robe 500 */
brickmania_ball.15x15x16.bmp
brickmania_bricks.640x480x16.bmp
brickmania_pads.640x480x16.bmp
brickmania_short_pads.640x480x16.bmp
brickmania_long_pads.640x480x16.bmp
brickmania_break.640x480x16.bmp
brickmania_powerups.640x480x16.bmp

#elif LCD_WIDTH >= 480 /* M:Robe 500 */
brickmania_ball.11x11x16.bmp
brickmania_bricks.480x640x16.bmp
brickmania_pads.480x640x16.bmp
brickmania_short_pads.480x640x16.bmp
brickmania_long_pads.480x640x16.bmp
brickmania_break.480x640x16.bmp
brickmania_powerups.480x640x16.bmp

#elif LCD_WIDTH >= 320 /* Ipod Video */
brickmania_ball.5x5x16.bmp
brickmania_bricks.320x240x16.bmp
brickmania_pads.320x240x16.bmp
brickmania_short_pads.320x240x16.bmp
brickmania_long_pads.320x240x16.bmp
brickmania_break.320x240x16.bmp
brickmania_powerups.320x240x16.bmp

#elif (LCD_WIDTH == 240) && (LCD_HEIGHT == 320) /* Gigabeat F/X/S */
brickmania_ball.7x7x16.bmp
brickmania_bricks.240x320x16.bmp
brickmania_break.240x320x16.bmp
brickmania_pads.240x320x16.bmp
brickmania_short_pads.240x320x16.bmp
brickmania_long_pads.240x320x16.bmp
brickmania_powerups.240x320x16.bmp

#elif LCD_WIDTH >= 220
brickmania_ball.5x5x16.bmp
brickmania_bricks.220x176x16.bmp
brickmania_pads.220x176x16.bmp
brickmania_short_pads.220x176x16.bmp
brickmania_long_pads.220x176x16.bmp
brickmania_break.220x176x16.bmp
brickmania_powerups.220x176x16.bmp

#elif LCD_WIDTH >= 176
brickmania_ball.5x5x16.bmp
brickmania_bricks.176x132x16.bmp
brickmania_pads.176x132x16.bmp
brickmania_short_pads.176x132x16.bmp
brickmania_long_pads.176x132x16.bmp
brickmania_powerups.176x132x16.bmp
brickmania_break.176x132x16.bmp

#elif LCD_WIDTH >= 160
brickmania_ball.5x5x16.bmp
brickmania_bricks.160x128x16.bmp
brickmania_pads.160x128x16.bmp
brickmania_short_pads.160x128x16.bmp
brickmania_long_pads.160x128x16.bmp
brickmania_powerups.160x128x16.bmp
brickmania_break.160x128x16.bmp

#elif LCD_WIDTH >= 132
brickmania_ball.4x4x16.bmp
brickmania_bricks.132x80x16.bmp
brickmania_pads.132x80x16.bmp
brickmania_short_pads.132x80x16.bmp
brickmania_long_pads.132x80x16.bmp
brickmania_powerups.132x80x16.bmp
brickmania_break.132x80x16.bmp

#elif LCD_WIDTH >= 128
brickmania_ball.4x4x16.bmp
brickmania_bricks.128x128x16.bmp
brickmania_pads.132x80x16.bmp
brickmania_short_pads.132x80x16.bmp
brickmania_long_pads.132x80x16.bmp
brickmania_powerups.132x80x16.bmp
brickmania_break.132x80x16.bmp
#endif /* different colour displays */

#elif LCD_DEPTH > 1
brickmania_gameover.86x43x2.bmp
brickmania_pads.160x128x2.bmp
brickmania_short_pads.160x128x2.bmp
brickmania_long_pads.160x128x2.bmp
brickmania_powerups.160x128x2.bmp
#if (LCD_WIDTH >= 160)
brickmania_ball.5x5x2.bmp
brickmania_bricks.160x128x2.bmp
#elif LCD_WIDTH >= 138
brickmania_ball.5x5x2.bmp
brickmania_bricks.138x110x2.bmp
#else /* M3, HD200  */
brickmania_ball.4x4x2.bmp
brickmania_bricks.128x96x2.bmp
#endif
#else /* mono */
brickmania_gameover.59x30x1.bmp
brickmania_bricks.112x64x1.bmp
brickmania_ball.3x3x1.bmp
brickmania_pads.112x64x1.bmp
brickmania_short_pads.112x64x1.bmp
brickmania_long_pads.112x64x1.bmp
brickmania_powerups.112x64x1.bmp
#endif

/* Jackpot */
jackpot_slots.30x420x1.bmp

/* Bubbles */
#ifdef HAVE_LCD_COLOR
#if ((LCD_WIDTH >= 640) && (LCD_HEIGHT >= 480)) || \
    ((LCD_WIDTH >= 480) && (LCD_HEIGHT >= 640))
bubbles_emblem.640x480x16.bmp
bubbles_background.640x480x16.bmp
#elif (LCD_WIDTH >= 320) && (LCD_HEIGHT >= 240)
bubbles_emblem.320x240x16.bmp
bubbles_background.320x240x16.bmp
#elif (LCD_WIDTH >= 240) && (LCD_HEIGHT >= 320)
bubbles_emblem.320x240x16.bmp
bubbles_background.240x320x16.bmp
#elif (LCD_WIDTH >= 220) && (LCD_HEIGHT >= 176)
bubbles_emblem.220x176x16.bmp
bubbles_background.220x176x16.bmp
#elif (LCD_WIDTH >= 176) && (LCD_HEIGHT >= 220)
bubbles_emblem.220x176x16.bmp
bubbles_background.176x220x16.bmp
#elif (LCD_WIDTH >= 176) && (LCD_HEIGHT >= 132)
bubbles_emblem.160x128x16.bmp
bubbles_background.176x132x16.bmp
#elif (LCD_WIDTH >= 160) && (LCD_HEIGHT >= 128)
bubbles_emblem.160x128x16.bmp
bubbles_background.160x128x16.bmp
#elif (LCD_WIDTH >= 128) && (LCD_HEIGHT >= 160)
bubbles_emblem.160x128x16.bmp
bubbles_background.128x160x16.bmp
#elif (LCD_WIDTH >= 128) && (LCD_HEIGHT >= 128)
bubbles_emblem.160x128x16.bmp
bubbles_background.128x128x16.bmp
#elif (LCD_WIDTH >= 132) && (LCD_HEIGHT >= 80)
bubbles_emblem.132x80x16.bmp
bubbles_background.132x80x16.bmp
#elif (LCD_WIDTH >= 128) && (LCD_HEIGHT >= 96)
bubbles_emblem.132x80x16.bmp
bubbles_background.128x96x16.bmp
#endif
#elif LCD_DEPTH <= 2 /* greyscale, mono */
#if (LCD_WIDTH >= 160) && (LCD_HEIGHT >= 128)
bubbles_emblem.160x128x2.bmp
#elif (LCD_WIDTH >= 138) && (LCD_HEIGHT >= 110)
bubbles_emblem.138x110x2.bmp
#elif (LCD_WIDTH >= 128) && (LCD_HEIGHT >= 96)
bubbles_emblem.128x96x2.bmp
#elif (LCD_WIDTH >= 128) && (LCD_HEIGHT >= 64)
bubbles_emblem.112x64x1.bmp /* use the same emblems than Archos */
#elif (LCD_WIDTH >= 112) && (LCD_HEIGHT >= 64)
bubbles_emblem.112x64x1.bmp
#endif
#endif

/* ChessBox */
#if (LCD_WIDTH >= 480)
chessbox_pieces.480x480x16.bmp
#elif (LCD_WIDTH >= 240) && (LCD_HEIGHT >= 240) && (LCD_DEPTH >= 16)
chessbox_pieces.240x240x16.bmp
#elif (LCD_WIDTH >= 176) && (LCD_HEIGHT >= 176) && (LCD_DEPTH >= 16)
chessbox_pieces.176x176x16.bmp
#elif (LCD_WIDTH >= 128) && (LCD_HEIGHT >= 128) && (LCD_DEPTH > 1)
chessbox_pieces.128x128x2.bmp
#elif (LCD_WIDTH >= 128) && (LCD_HEIGHT >= 128) && (LCD_DEPTH == 1)
chessbox_pieces.128x128x1.bmp
#elif (LCD_WIDTH >= 104) && (LCD_HEIGHT >= 104) && (LCD_DEPTH > 1)
chessbox_pieces.104x104x2.bmp
#elif (LCD_WIDTH >= 96) && (LCD_HEIGHT >= 96) && (LCD_DEPTH > 1)
chessbox_pieces.96x96x2.bmp
#elif (LCD_WIDTH >= 80) && (LCD_HEIGHT >= 80) && (LCD_DEPTH > 1)
chessbox_pieces.80x80x16.bmp
#elif (LCD_WIDTH == 112) && (LCD_HEIGHT == 64) && (LCD_DEPTH == 1)
chessbox_pieces.80x64x1.bmp
#elif (LCD_WIDTH >= 64) && (LCD_HEIGHT >= 64)
chessbox_pieces.64x64x1.bmp
#endif

/* Clock */
#if (LCD_WIDTH >= 320) && (LCD_HEIGHT >= 240) && (LCD_DEPTH >= 16)
clock_binary.320x240x16.bmp
clock_digits.320x240x16.bmp
clock_smalldigits.320x240x16.bmp
clock_segments.320x240x16.bmp
clock_smallsegments.320x240x16.bmp
clock_logo.320x240x16.bmp
clock_messages.320x240x16.bmp
#elif (LCD_WIDTH >= 220) && (LCD_HEIGHT >= 176) && (LCD_DEPTH >= 16)
clock_binary.220x176x16.bmp
clock_digits.220x176x16.bmp
clock_smalldigits.220x176x16.bmp
clock_segments.220x176x16.bmp
clock_smallsegments.220x176x16.bmp
clock_logo.220x176x16.bmp
clock_messages.220x176x16.bmp
#elif (LCD_WIDTH >= 176) && (LCD_HEIGHT >= 132) && (LCD_DEPTH >= 16)
clock_binary.160x128x16.bmp
clock_digits.160x128x16.bmp
clock_smalldigits.160x128x16.bmp
clock_segments.160x128x16.bmp
clock_smallsegments.160x128x16.bmp
clock_logo.176x132x16.bmp
clock_messages.176x132x16.bmp
#elif (LCD_WIDTH >= 160) && (LCD_HEIGHT >= 128) && (LCD_DEPTH >= 16)
clock_binary.160x128x16.bmp
clock_digits.160x128x16.bmp
clock_smalldigits.160x128x16.bmp
clock_segments.160x128x16.bmp
clock_smallsegments.160x128x16.bmp
clock_logo.160x128x16.bmp
clock_messages.160x128x16.bmp
#elif (LCD_WIDTH >= 128) && (LCD_HEIGHT >= 128) && (LCD_DEPTH >= 16)
clock_binary.128x128x16.bmp
clock_digits.128x128x16.bmp
clock_smalldigits.128x128x16.bmp
clock_segments.128x128x16.bmp
clock_smallsegments.128x128x16.bmp
clock_logo.128x128x16.bmp
clock_messages.128x128x16.bmp
#elif (LCD_WIDTH >= 160) && (LCD_HEIGHT >= 128) && (LCD_DEPTH >= 2)
clock_binary.160x128x2.bmp
clock_digits.160x128x2.bmp
clock_smalldigits.160x128x2.bmp
clock_segments.160x128x2.bmp
clock_smallsegments.160x128x2.bmp
clock_logo.160x128x2.bmp
clock_messages.160x128x2.bmp
#elif (LCD_WIDTH >= 138) && (LCD_HEIGHT >= 110) && (LCD_DEPTH >= 2)
clock_binary.138x110x2.bmp
clock_digits.138x110x2.bmp
clock_smalldigits.160x128x2.bmp
clock_segments.138x110x2.bmp
clock_smallsegments.160x128x2.bmp
clock_logo.138x110x2.bmp
clock_messages.138x110x2.bmp
#elif (LCD_WIDTH >= 132) && (LCD_HEIGHT >= 80) && (LCD_DEPTH >= 16)
clock_binary.132x80x16.bmp
clock_digits.132x80x16.bmp
clock_smalldigits.132x80x16.bmp
clock_segments.132x80x16.bmp
clock_smallsegments.132x80x16.bmp
clock_logo.132x80x16.bmp
clock_messages.132x80x16.bmp
#elif (LCD_WIDTH >= 128) && (LCD_HEIGHT >= 128) && (LCD_DEPTH >= 2)
clock_binary.128x128x2.bmp
clock_digits.128x128x2.bmp
clock_smalldigits.128x128x2.bmp
clock_segments.128x128x2.bmp
clock_smallsegments.128x128x2.bmp
clock_logo.128x128x2.bmp
clock_messages.128x128x2.bmp
#elif (LCD_WIDTH >= 112) && (LCD_HEIGHT >= 64) && (LCD_DEPTH >= 1)
clock_binary.112x64x1.bmp
clock_digits.112x64x1.bmp
clock_smalldigits.112x64x1.bmp
clock_segments.112x64x1.bmp
clock_smallsegments.112x64x1.bmp
clock_logo.112x64x1.bmp
clock_messages.112x64x1.bmp
#endif

/* FFT only needs a bitmap with colors mapping to amplitude */
#ifdef HAVE_LCD_COLOR 
fft_colors.16.bmp
#endif

/* Flipit */
#ifdef HAVE_LCD_COLOR
#if LCD_WIDTH >= 480
flipit_cursor.112x112x16.bmp
flipit_tokens.112x224x16.bmp
#elif LCD_WIDTH >= 280 && LCD_HEIGHT >= 234
flipit_cursor.56x56x16.bmp
flipit_tokens.56x112x16.bmp
#elif LCD_WIDTH >= 200 && LCD_HEIGHT >= 170
flipit_cursor.40x40x16.bmp
flipit_tokens.40x80x16.bmp
#elif LCD_WIDTH >= 140 && LCD_HEIGHT >= 122
flipit_cursor.28x28x16.bmp
flipit_tokens.28x56x16.bmp
#elif LCD_WIDTH >= 125 && LCD_HEIGHT >= 110
flipit_cursor.25x25x16.bmp
flipit_tokens.25x50x16.bmp
#elif LCD_WIDTH >= 85 && LCD_HEIGHT >= 78
flipit_cursor.17x17x16.bmp
flipit_tokens.17x34x16.bmp
#endif
#elif LCD_DEPTH > 1 /* greyscale */
#if LCD_WIDTH >= 140 && LCD_HEIGHT >= 122
flipit_tokens.28x56x2.bmp
#elif LCD_WIDTH >= 125 && LCD_HEIGHT >= 110
flipit_tokens.25x50x2.bmp
#elif LCD_WIDTH >= 105 && LCD_HEIGHT >= 96
flipit_tokens.21x42x2.bmp
#endif
#else /* monochrome */
#if LCD_WIDTH >= 140 && LCD_HEIGHT >= 122
flipit_tokens.28x56x1.bmp
#elif LCD_WIDTH >= 80 && LCD_HEIGHT >= 62
flipit_tokens.16x26x1.bmp
#endif
#endif

/* Invadrox */
#if defined HAVE_LCD_COLOR
#if LCD_WIDTH >= 640
invadrox_alien_explode.37x20x16.bmp
invadrox_aliens.68x68x16.bmp
invadrox_ships.46x69x16.bmp
invadrox_bombs.27x126x16.bmp
invadrox_shield.64x47x16.bmp
invadrox_ufo.46x20x16.bmp
invadrox_ufo_explode.61x23x16.bmp
invadrox_numbers.140x19x16.bmp
#if LCD_WIDTH == 480
invadrox_background.480x640x16.bmp
#elif LCD_WIDTH == 640
invadrox_background.640x480x16.bmp
#endif

#elif LCD_WIDTH >= 220
invadrox_aliens.24x24x16.bmp
invadrox_alien_explode.13x7x16.bmp
invadrox_ships.16x24x16.bmp
invadrox_bombs.9x42x16.bmp
invadrox_shield.22x16x16.bmp
invadrox_ufo.16x7x16.bmp
invadrox_ufo_explode.21x8x16.bmp
invadrox_numbers.50x7x16.bmp
#if LCD_WIDTH == 320
invadrox_background.320x240x16.bmp
#elif LCD_WIDTH == 240
invadrox_background.240x320x16.bmp
#elif LCD_WIDTH == 220
invadrox_background.220x176x16.bmp
#endif

#elif LCD_WIDTH >= 160
invadrox_aliens.16x15x16.bmp
invadrox_alien_explode.10x5x16.bmp
invadrox_ships.10x15x16.bmp
invadrox_bombs.9x30x16.bmp
invadrox_shield.15x10x16.bmp
invadrox_ufo.11x5x16.bmp
invadrox_ufo_explode.14x5x16.bmp
invadrox_numbers.40x5x16.bmp
#if LCD_WIDTH == 176 && LCD_HEIGHT == 220
invadrox_background.176x220x16.bmp
#elif LCD_WIDTH == 176 && LCD_HEIGHT == 132
invadrox_background.176x132x16.bmp
#elif LCD_WIDTH == 160 && LCD_HEIGHT == 128
invadrox_background.160x128x16.bmp
#endif
#endif /* LCD_WIDTH */
#elif LCD_DEPTH == 2 /* Greyscale */
invadrox_aliens.16x15x16.bmp
invadrox_alien_explode.10x5x16.bmp
invadrox_ships.10x15x2.bmp
invadrox_bombs.9x30x16.bmp
invadrox_shield.15x10x2.bmp
invadrox_ufo.11x5x2.bmp
invadrox_ufo_explode.14x5x2.bmp
invadrox_numbers.40x5x16.bmp
invadrox_background.160x128x16.bmp
#endif /* colour depth */

/* Jewels */
#if (LCD_WIDTH == 112) && (LCD_HEIGHT == 64)
jewels.112x64x1.bmp
#elif (LCD_WIDTH == 128) && (LCD_HEIGHT == 64)
jewels.112x64x1.bmp
#elif (LCD_WIDTH == 128) && (LCD_HEIGHT == 128)
jewels.128x128x16.bmp
#elif (LCD_WIDTH == 128) && (LCD_HEIGHT == 160)
jewels.128x128x16.bmp
#elif (LCD_WIDTH == 132) && (LCD_HEIGHT == 80)
jewels.132x80x16.bmp
#elif (LCD_WIDTH == 128) && (LCD_HEIGHT == 96)
jewels.128x96x2.bmp
#elif (LCD_WIDTH == 138) && (LCD_HEIGHT == 110)
jewels.138x110x2.bmp
#elif (LCD_WIDTH == 160) && (LCD_HEIGHT == 128) && !defined(HAVE_LCD_COLOR)
jewels.160x128x2.bmp
#elif (LCD_WIDTH == 160) && (LCD_HEIGHT == 128) && defined(HAVE_LCD_COLOR)
jewels.160x128x16.bmp
#elif (LCD_WIDTH == 176) && (LCD_HEIGHT == 132)
jewels.160x128x16.bmp
#elif (LCD_WIDTH == 220) && (LCD_HEIGHT == 176)
jewels.220x176x16.bmp
#elif (LCD_WIDTH == 176) && (LCD_HEIGHT == 220)
jewels.220x176x16.bmp
#elif (LCD_WIDTH == 240) && (LCD_HEIGHT >= 320)
jewels.320x240x16.bmp
#elif (LCD_WIDTH == 320) && (LCD_HEIGHT == 240)
jewels.320x240x16.bmp
#elif   ((LCD_WIDTH == 640) && (LCD_HEIGHT == 480)) || \
        ((LCD_WIDTH == 480) && (LCD_HEIGHT == 640))
jewels.640x480x16.bmp
#endif

/* Minesweeper */
#ifdef HAVE_LCD_COLOR
#if ( LCD_HEIGHT * LCD_WIDTH ) / ( 16 * 16 ) >= 130
minesweeper_tiles.16x16x24.bmp
#elif ( LCD_HEIGHT * LCD_WIDTH ) / ( 12 * 12 ) >= 130
minesweeper_tiles.12x12x24.bmp
#else
minesweeper_tiles.10x10x24.bmp
#endif
#elif LCD_DEPTH > 1
minesweeper_tiles.12x12x2.bmp
#else
minesweeper_tiles.8x8x1.bmp
#endif

/* PegBox */
#ifdef HAVE_LCD_COLOR
/* currently only LCD_WIDTH is important, e.g. Nano and e200 use the same set */
#if LCD_WIDTH >= 640
pegbox_pieces.48x48x16.bmp
pegbox_header.640x80x16.bmp
#elif LCD_WIDTH >= 320
pegbox_pieces.24x24x16.bmp
pegbox_header.320x40x16.bmp
#elif LCD_WIDTH >= 240
pegbox_pieces.16x16x16.bmp
pegbox_header.240x40x16.bmp
#elif LCD_WIDTH >= 220
pegbox_pieces.16x16x16.bmp
pegbox_header.220x40x16.bmp
#elif LCD_WIDTH >= 176
pegbox_pieces.12x12x16.bmp
pegbox_header.176x28x16.bmp
#elif LCD_WIDTH >= 160
pegbox_pieces.12x12x16.bmp
pegbox_header.160x24x16.bmp
#elif LCD_WIDTH >= 132
pegbox_pieces.9x9x16.bmp
pegbox_header.22x80x16.bmp
#elif LCD_WIDTH >= 128
pegbox_pieces.10x10x16.bmp
pegbox_header.128x42x16.bmp
#endif /* different colour displays */
#elif LCD_DEPTH > 1
#if LCD_WIDTH >= 160
pegbox_pieces.12x12x2.bmp
pegbox_header.160x24x2.bmp
#elif LCD_WIDTH >= 138
pegbox_pieces.10x10x2.bmp
pegbox_header.138x26x2.bmp
#elif LCD_WIDTH >= 128
pegbox_pieces.10x10x2.bmp
pegbox_header.128x16x2.bmp
#endif /* different greyscale displays */
#else /* mono */
#if LCD_WIDTH >= 160
pegbox_pieces.12x12x1.bmp
pegbox_header.160x24x1.bmp
#elif LCD_WIDTH >= 128
pegbox_header.20x64x1.bmp
pegbox_pieces.9x7x1.bmp
#elif LCD_WIDTH >= 112
pegbox_header.112x8x1.bmp
pegbox_pieces.9x7x1.bmp
#endif
#endif


/* Rockblox */
#if LCD_DEPTH == 16 /* colour versions*/
#if   (LCD_WIDTH == 640) && (LCD_HEIGHT == 480)
rockblox_background.640x480x16.bmp
#elif   (LCD_WIDTH >= 320) && (LCD_HEIGHT >= 240)
rockblox_background.320x240x16.bmp
#elif (LCD_WIDTH == 240) && (LCD_HEIGHT >= 320)
rockblox_background.240x320x16.bmp
#elif (LCD_WIDTH == 220) && (LCD_HEIGHT == 176)
rockblox_background.220x176x16.bmp
#elif (LCD_WIDTH == 176) && (LCD_HEIGHT == 220)
rockblox_background.176x220x16.bmp
#elif (LCD_WIDTH == 176) && (LCD_HEIGHT == 132)
rockblox_background.176x132x16.bmp
#elif (LCD_WIDTH == 160) && (LCD_HEIGHT == 128)
rockblox_background.160x128x16.bmp
#elif (LCD_WIDTH == 128) && (LCD_HEIGHT == 160)
rockblox_background.128x160x16.bmp
#elif (LCD_WIDTH == 128) && (LCD_HEIGHT >= 128)
rockblox_background.128x128x16.bmp
#elif (LCD_WIDTH == 132) && (LCD_HEIGHT == 80)
rockblox_background.132x80x16.bmp
#elif (LCD_WIDTH == 128) && (LCD_HEIGHT == 96)
rockblox_background.128x96x2.bmp
#endif
#elif LCD_DEPTH == 2 /* greyscale versions */
#if   (LCD_WIDTH == 160) && (LCD_HEIGHT == 128)
rockblox_background.160x128x2.bmp
#elif (LCD_WIDTH == 138) && (LCD_HEIGHT == 110)
rockblox_background.138x110x2.bmp
#elif (LCD_WIDTH == 128) && (LCD_HEIGHT == 128)
rockblox_background.128x128x2.bmp
#elif (LCD_WIDTH == 128) && (LCD_HEIGHT == 96)
rockblox_background.128x96x2.bmp
#endif
#elif LCD_DEPTH == 1 /* monochrome versions */
#if   (LCD_WIDTH == 160) && (LCD_HEIGHT == 128)
rockblox_background.160x128x1.bmp
#elif (LCD_WIDTH == 128) && (LCD_HEIGHT == 64)
rockblox_background.128x64x1.bmp
#elif (LCD_WIDTH == 112) && (LCD_HEIGHT == 64)
rockblox_background.112x64x1.bmp
#endif
#endif /* LCD_DEPTH */


/* Rockpaint */
#ifdef HAVE_LCD_COLOR
rockpaint.8x8x24.bmp
rockpaint_hsvrgb.8x10x24.bmp
#endif

/* Snake2 */
#if (LCD_WIDTH >= 640) && (LCD_HEIGHT >= 480) && (LCD_DEPTH >= 16)
snake2_header1.640x480x16.bmp
snake2_header2.640x480x16.bmp
snake2_left.640x480x16.bmp
snake2_right.640x480x16.bmp
snake2_bottom.640x480x16.bmp
#elif (LCD_WIDTH >= 320) && (LCD_HEIGHT >= 240) && (LCD_DEPTH >= 16)
snake2_header1.320x240x16.bmp
snake2_header2.320x240x16.bmp
snake2_left.320x240x16.bmp
snake2_right.320x240x16.bmp
snake2_bottom.320x240x16.bmp
#elif (LCD_WIDTH >= 240) && (LCD_HEIGHT >= 192) && (LCD_DEPTH >= 16)
snake2_header1.240x320x16.bmp
snake2_header2.240x320x16.bmp
snake2_left.240x320x16.bmp
snake2_right.240x320x16.bmp
snake2_bottom.240x320x16.bmp
#elif (LCD_WIDTH >= 220) && (LCD_HEIGHT >= 176) && (LCD_DEPTH >= 16)
snake2_header1.220x176x16.bmp
snake2_header2.220x176x16.bmp
snake2_left.220x176x16.bmp
snake2_right.220x176x16.bmp
snake2_bottom.220x176x16.bmp
#elif (LCD_WIDTH >= 176) && (LCD_HEIGHT >= 132) && (LCD_DEPTH >= 16)
snake2_header1.176x132x16.bmp
snake2_header2.176x132x16.bmp
snake2_left.176x132x16.bmp
snake2_right.176x132x16.bmp
snake2_bottom.176x132x16.bmp
#elif (LCD_WIDTH >= 160) && (LCD_HEIGHT >= 128) && (LCD_DEPTH >= 16)
snake2_header1.160x128x16.bmp
snake2_header2.160x128x16.bmp
snake2_left.160x128x16.bmp
snake2_right.160x128x16.bmp
snake2_bottom.160x128x16.bmp
#elif (LCD_WIDTH >= 160) && (LCD_HEIGHT >= 128) && (LCD_DEPTH >= 1)
snake2_header1.160x128x2.bmp
snake2_header2.160x128x2.bmp
snake2_left.160x128x2.bmp
snake2_right.160x128x2.bmp
snake2_bottom.160x128x2.bmp
#endif

/* Sokoban*/
/* biggest tilesize: 20 columns x 16 rows + stat box need to fit (minimum)
*  allow clipping of up to 4 pixels in favour of using a bigger tilesize
*  stat box width of 32 in horizontal & height of 25 pixels in vertical layout
*  currently the horizontal layout fits best on all wider than high displays
 */

#if LCD_WIDTH > LCD_HEIGHT
#define SOKOBAN_TILESIZE ((LCD_WIDTH + 4 -32)/20)
#else
#define SOKOBAN_TILESIZE ((LCD_WIDTH + 4)/20)
#endif

#ifdef HAVE_LCD_COLOR
#if SOKOBAN_TILESIZE >= 28
sokoban_tiles.28x28x16.bmp
#elif SOKOBAN_TILESIZE >= 14
sokoban_tiles.14x14x16.bmp
#elif SOKOBAN_TILESIZE >= 12
sokoban_tiles.12x12x16.bmp
#elif SOKOBAN_TILESIZE >= 9
sokoban_tiles.9x9x16.bmp
#elif SOKOBAN_TILESIZE >= 7
sokoban_tiles.7x7x16.bmp
#elif SOKOBAN_TILESIZE >= 6
sokoban_tiles.6x6x16.bmp
#elif SOKOBAN_TILESIZE >= 5
sokoban_tiles.5x5x16.bmp
#endif /* tilesize */
#elif LCD_DEPTH > 1 /*greyscale */
#if SOKOBAN_TILESIZE >= 6
sokoban_tiles.6x6x2.bmp
#elif SOKOBAN_TILESIZE >= 5
sokoban_tiles.5x5x2.bmp
#endif /* tilesize */
#else /* mono */
#if SOKOBAN_TILESIZE >= 6
sokoban_tiles.6x6x1.bmp
#elif SOKOBAN_TILESIZE >= 4
sokoban_tiles.4x4x1.bmp
#endif /* tilesize */
#endif /* HAVE_COLOR */

/* Solitaire and Blackjack */
#ifdef HAVE_LCD_COLOR
#if LCD_WIDTH >= 640
card_back.74x98x16.bmp
card_deck.962x392x16.bmp
solitaire_suitsi.74x392x16.bmp

#elif LCD_WIDTH >= 480
card_back.55x73x16.bmp
card_deck.715x291x16.bmp
solitaire_suitsi.55x291x16.bmp

#elif LCD_WIDTH >= 320
card_back.37x49x16.bmp
card_deck.481x196x16.bmp
solitaire_suitsi.37x196x16.bmp
#elif LCD_WIDTH >= 220
card_back.26x33x16.bmp
card_deck.338x132x16.bmp
solitaire_suitsi.26x132x16.bmp
#elif LCD_WIDTH >= 160
card_back.18x23x16.bmp
card_deck.234x92x16.bmp
solitaire_suitsi.18x92x16.bmp
#elif LCD_WIDTH >= 128
card_back.15x20x16.bmp
card_deck.195x80x16.bmp
solitaire_suitsi.15x80x16.bmp
#endif
#elif LCD_DEPTH > 1 /* greyscale */
#if LCD_WIDTH >= 160
card_back.18x23x2.bmp
card_deck.234x92x2.bmp
solitaire_suitsi.18x92x2.bmp
#elif LCD_WIDTH >= 128
card_back.15x20x2.bmp
card_deck.195x80x2.bmp
solitaire_suitsi.15x80x2.bmp
#endif
#else /* monochrome */
#if LCD_WIDTH >= 160
card_back.18x23x1.bmp
card_deck.234x92x1.bmp
solitaire_suitsi.18x92x1.bmp
#elif LCD_WIDTH >= 112
card_back.13x13x1.bmp
card_deck.169x52x1.bmp
solitaire_suitsi.13x52x1.bmp
#endif
#endif

#if (LCD_HEIGHT/10) < (LCD_WIDTH/16)
#define STAR_TILESIZE (LCD_HEIGHT/10)
#else
#define STAR_TILESIZE (LCD_WIDTH/16)
#endif

/* Star */
#ifdef HAVE_LCD_COLOR
#if     (STAR_TILESIZE >= 40)
star_tiles.40x40.bmp
#elif   (STAR_TILESIZE >= 20)
star_tiles.20x20.bmp
#elif   (STAR_TILESIZE >= 15)
star_tiles.15x15.bmp
#elif   (STAR_TILESIZE >= 13)
star_tiles.13x13.bmp
#elif   (STAR_TILESIZE >= 11)
star_tiles.11x11.bmp
#elif   (STAR_TILESIZE >= 10)
star_tiles.10x10.bmp
#elif   (STAR_TILESIZE >= 8)
star_tiles.8x8.bmp
#endif
#elif LCD_DEPTH > 1 /* grey */
#if LCD_WIDTH >= 160 && LCD_HEIGHT >= 98
star_tiles.10x10x2.bmp
#elif LCD_WIDTH >= 128 && LCD_HEIGHT >= 80
star_tiles.8x8x2.bmp
#endif
#else /* monochrome */
#if LCD_WIDTH >= 112 && LCD_HEIGHT >= 62
star_tiles.6x7x1.bmp
#endif
#endif

/* Sudoku */
#if LCD_WIDTH >= LCD_HEIGHT
#if (LCD_WIDTH == 112 || LCD_WIDTH == 128) && (LCD_HEIGHT == 64) && (LCD_DEPTH == 1)
sudoku_start.112x64x1.bmp
sudoku_normal.112x64x1.bmp
sudoku_inverse.112x64x1.bmp
#elif (LCD_WIDTH == 128) && (LCD_HEIGHT == 96) && (LCD_DEPTH >= 2)
sudoku_start.128x96x2.bmp
sudoku_normal.128x96x2.bmp
sudoku_inverse.128x96x2.bmp
#elif (LCD_WIDTH == 128) && (LCD_HEIGHT == 128) && (LCD_DEPTH == 2)
sudoku_start.128x128x2.bmp
sudoku_normal.128x128x2.bmp
sudoku_inverse.128x128x2.bmp
#elif (LCD_WIDTH == 138) && (LCD_HEIGHT == 110) && (LCD_DEPTH >= 2)
sudoku_start.138x110x2.bmp
sudoku_normal.138x110x2.bmp
sudoku_inverse.138x110x2.bmp
#elif (LCD_WIDTH == 132) && (LCD_HEIGHT == 80) && (LCD_DEPTH >= 16)
sudoku_start.132x80x16.bmp
sudoku_normal.132x80x16.bmp
sudoku_inverse.132x80x16.bmp
#elif (LCD_WIDTH == 128) && (LCD_HEIGHT == 128) && (LCD_DEPTH == 16)
sudoku_start.128x128x16.bmp
sudoku_normal.128x128x16.bmp
sudoku_inverse.128x128x16.bmp
#elif ((LCD_WIDTH == 160) && (LCD_HEIGHT == 128) && (LCD_DEPTH == 16)) || \
      ((LCD_WIDTH == 176) && (LCD_HEIGHT == 132) && (LCD_DEPTH == 16))
sudoku_start.160x128x16.bmp
sudoku_normal.160x128x16.bmp
sudoku_inverse.160x128x16.bmp
#elif (LCD_WIDTH == 160) && (LCD_HEIGHT == 128) && (LCD_DEPTH >= 2)
sudoku_start.160x128x2.bmp
sudoku_normal.160x128x2.bmp
sudoku_inverse.160x128x2.bmp
#elif (LCD_WIDTH == 160) && (LCD_HEIGHT == 128) && (LCD_DEPTH == 1)
sudoku_start.160x128x1.bmp
sudoku_normal.160x128x1.bmp
sudoku_inverse.160x128x1.bmp
#elif (LCD_WIDTH == 220) && (LCD_HEIGHT == 176) && (LCD_DEPTH == 16)
sudoku_start.220x176x16.bmp
sudoku_normal.220x176x16.bmp
sudoku_inverse.220x176x16.bmp
#elif (LCD_WIDTH >= 320) && (LCD_HEIGHT >= 240) && (LCD_DEPTH == 2)
/* Temporary bitmaps for Archos AV300 */
sudoku_start.320x240x16.bmp
sudoku_normal.320x240x16.bmp
sudoku_inverse.320x240x16.bmp
#elif (LCD_WIDTH == 320) && (LCD_HEIGHT == 240) && (LCD_DEPTH == 16)
sudoku_start.320x240x16.bmp
sudoku_normal.320x240x16.bmp
sudoku_inverse.320x240x16.bmp
#elif (LCD_WIDTH == 640) && (LCD_HEIGHT == 480) && (LCD_DEPTH == 16)
sudoku_start.640x480x16.bmp
sudoku_normal.640x480x16.bmp
sudoku_inverse.640x480x16.bmp
#endif
#else /* LCD_WIDTH < LCD_HEIGHT */
#if ((LCD_WIDTH == 128) && (LCD_HEIGHT == 160) && (LCD_DEPTH == 16))
sudoku_start.128x128x16.bmp
sudoku_normal.128x128x16.bmp
sudoku_inverse.128x128x16.bmp
#elif ((LCD_WIDTH == 176) && (LCD_HEIGHT == 220) && (LCD_DEPTH == 16))
sudoku_start.220x176x16.bmp
sudoku_normal.220x176x16.bmp
sudoku_inverse.220x176x16.bmp
#elif (LCD_WIDTH >= 240) && (LCD_HEIGHT >= 320) && (LCD_DEPTH == 16)
sudoku_start.320x240x16.bmp
sudoku_normal.320x240x16.bmp
sudoku_inverse.320x240x16.bmp
#endif
#endif

/* Superdom */
#if LCD_DEPTH == 16
#if ((LCD_WIDTH == 220) && (LCD_HEIGHT == 176))
superdom_boarditems.220x176x16.bmp
#elif ((LCD_WIDTH == 176) && (LCD_HEIGHT == 132)) || \
      ((LCD_WIDTH == 160) && (LCD_HEIGHT == 128)) || \
      ((LCD_WIDTH == 176) && (LCD_HEIGHT == 220))
superdom_boarditems.176x132x16.bmp
#elif (LCD_WIDTH == 320 && LCD_HEIGHT == 240)
superdom_boarditems.320x240x16.bmp
#elif ((LCD_WIDTH == 240) && (LCD_HEIGHT == 320)) || \
      ((LCD_WIDTH == 240) && (LCD_HEIGHT == 400))
superdom_boarditems.240x320x16.bmp
#elif (LCD_WIDTH == 480 && LCD_HEIGHT == 640) 
superdom_boarditems.480x640x16.bmp
#elif (LCD_WIDTH == 640 && LCD_HEIGHT == 480) 
superdom_boarditems.640x480x16.bmp
#endif
#endif

/* Matrix */
#if LCD_DEPTH > 1
matrix_bold.bmp
matrix_normal.bmp
#endif

/* Sliding puzzle */
#if (LCD_WIDTH != LCD_HEIGHT)
#define SMALLER_DIMENSION ((LCD_WIDTH < LCD_HEIGHT) ? LCD_WIDTH : LCD_HEIGHT)
#else /* 5/6GB H10 with square display */
#define SMALLER_DIMENSION (LCD_HEIGHT - 20)
#endif

#if defined HAVE_LCD_COLOR
#if SMALLER_DIMENSION <= 80
sliding_puzzle.80x80x16.bmp
#elif SMALLER_DIMENSION <= 108
sliding_puzzle.108x108x16.bmp
#elif SMALLER_DIMENSION <= 128
sliding_puzzle.128x128x16.bmp
#elif SMALLER_DIMENSION <= 132
sliding_puzzle.132x132x16.bmp
#elif SMALLER_DIMENSION <= 176
sliding_puzzle.176x176x16.bmp
#elif SMALLER_DIMENSION <= 240
sliding_puzzle.240x240x16.bmp
#elif SMALLER_DIMENSION <= 480
sliding_puzzle.480x480x16.bmp
#endif
#elif (LCD_DEPTH > 1)
#if SMALLER_DIMENSION <= 96
sliding_puzzle.96x96x2.bmp
#elif SMALLER_DIMENSION <= 110
sliding_puzzle.108x108x2.bmp
#elif SMALLER_DIMENSION <= 128
sliding_puzzle.128x128x2.bmp
#endif
#else /* mono targets, one size currently */
sliding_puzzle.80x64x1.bmp
#endif

/* Logo */
#if LCD_DEPTH == 16
#if (LCD_WIDTH >= 320)
rockboxlogo.220x68x16.bmp
#elif (LCD_WIDTH > 160)
rockboxlogo.128x40x16.bmp
#else
rockboxlogo.90x28x16.bmp
#endif

#elif LCD_DEPTH == 2
#if (LCD_WIDTH > 138)
rockboxlogo.138x46x2.bmp
#else
rockboxlogo.91x32x2.bmp
#endif

#elif LCD_DEPTH == 1
#if (LCD_WIDTH > 112)
    /* Such a screen isn't currently in any target */
rockboxlogo.112x30x1.bmp
#else
rockboxlogo.91x32x1.bmp
#endif
#endif

/* Pitch detector */
/* The following preprocessor condition must match the condition */
/* for pitch detector from plugins/SOURCES                       */
#if (CONFIG_CODEC == SWCODEC) && defined(HAVE_RECORDING) && \
    (defined(HAVE_LINE_IN) || defined(HAVE_MIC_IN))
#if (LCD_WIDTH >= 320) && (LCD_HEIGHT >= 240) && (LCD_DEPTH >= 16)
pitch_notes.320x240x16.bmp
#elif (LCD_WIDTH >= 220) && (LCD_HEIGHT >= 176) && (LCD_DEPTH >= 16)
pitch_notes.220x176x16.bmp
#elif (LCD_WIDTH >= 176) && (LCD_HEIGHT >= 132) && (LCD_DEPTH >= 16)
pitch_notes.176x132x16.bmp
#elif (LCD_WIDTH >= 160) && (LCD_HEIGHT >= 128) && (LCD_DEPTH >= 16)
pitch_notes.160x128x16.bmp
#elif (LCD_WIDTH >= 128) && (LCD_HEIGHT >= 128) && (LCD_DEPTH >= 16)
pitch_notes.128x128x16.bmp
#elif (LCD_WIDTH >= 160) && (LCD_HEIGHT >= 128) && (LCD_DEPTH >= 2)
pitch_notes.160x128x2.bmp
#elif (LCD_WIDTH >= 138) && (LCD_HEIGHT >= 110) && (LCD_DEPTH >= 2)
pitch_notes.160x128x2.bmp
#elif (LCD_WIDTH >= 132) && (LCD_HEIGHT >= 80) && (LCD_DEPTH >= 16)
pitch_notes.132x80x16.bmp
#elif (LCD_WIDTH >= 128) && (LCD_HEIGHT >= 128) && (LCD_DEPTH >= 2)
pitch_notes.128x128x2.bmp
#elif (LCD_WIDTH >= 128) && (LCD_HEIGHT >= 96) && (LCD_DEPTH >= 2)
pitch_notes.128x96x2.bmp
#elif (LCD_WIDTH >= 128) && (LCD_HEIGHT >= 64)
pitch_notes.128x64x1.bmp
#else
#error Pitch Detector: unsupported LCD
#endif
#endif /* Complex condition for pitch detector */

/* Resistor Calculator */
#if (LCD_WIDTH >= 320)
resistor.320x240x16.bmp
#elif (LCD_WIDTH >= 240)
resistor.240x400x16.bmp
#elif (LCD_WIDTH >= 220)
resistor.220x176x16.bmp
#elif (LCD_WIDTH >= 176)
resistor.176x220x16.bmp
#elif (LCD_WIDTH >= 160)
resistor.160x128x16.bmp
#elif (LCD_WIDTH >= 128) && (LCD_HEIGHT >= 96)
resistor.128x128x16.bmp
#else
resistor.68x20x16.bmp
#endif

#endif /* HAVE_LCD_BITMAP */
