add title screen graphics

Signed-off-by: Jessie Williams <quorawings@gmail.com>
This commit is contained in:
Jessie Williams 2022-03-07 08:59:13 -05:00
parent fe7570a43a
commit 8f1dd78acd
9 changed files with 167 additions and 33 deletions

Binary file not shown.

BIN
sprites/Title.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 607 B

BIN
sprites/copyright.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 366 B

BIN
sprites/imperative.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 241 B

BIN
sprites/subtitle.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 390 B

View File

@ -1,3 +1,5 @@
#![allow(dead_code, unused_imports)]
#[cfg(feature = "buddy-alloc")] #[cfg(feature = "buddy-alloc")]
mod alloc; mod alloc;
mod sh0rk; mod sh0rk;
@ -17,7 +19,6 @@ struct Game {
frame_count: u32, frame_count: u32,
prev_gamepad: u8, prev_gamepad: u8,
rng: Option<Rng>, rng: Option<Rng>,
mai_position: Point,
mara_position: Point, mara_position: Point,
mara_frame: u32, mara_frame: u32,
mara_dir: Direction, mara_dir: Direction,
@ -26,7 +27,7 @@ struct Game {
gate_count: u8, gate_count: u8,
gate_pos: Point, gate_pos: Point,
song: Song<48>, // song: Song<48>,
} }
impl Game { impl Game {
@ -35,15 +36,15 @@ impl Game {
frame_count: 0, frame_count: 0,
prev_gamepad: 0, prev_gamepad: 0,
rng: None, rng: None,
mai_position: Point { x: 76, y: 32 }, mara_position: Point { x: 16, y: 96 },
mara_position: Point { x: 32, y: 90 },
mara_frame: 0, mara_frame: 0,
mara_dir: Right, mara_dir: Right,
mara_speed: 0, mara_speed: 0,
bonk_timer: None, bonk_timer: None,
gate_count: 4, gate_count: 4,
gate_pos: Point { x: 40, y: 64 }, gate_pos: Point { x: 40, y: 80 },
song: Song::new(sh0rk::CHOPSTICKS),
// song: Song::new(sh0rk::CHOPSTICKS),
} }
} }
@ -81,9 +82,9 @@ impl Game {
self.mara_position.x = 0; self.mara_position.x = 0;
self.bonk(); self.bonk();
} }
if self.mara_dir == Up && self.mara_position.y <= 64 { if self.mara_dir == Up && self.mara_position.y <= 80 {
self.mara_speed = 0; self.mara_speed = 0;
self.mara_position.y = 64; self.mara_position.y = 80;
self.bonk(); self.bonk();
} }
@ -98,7 +99,7 @@ impl Game {
fn update(&mut self) { fn update(&mut self) {
self.frame_count += 1; self.frame_count += 1;
self.song.update(); // self.song.update();
if let Some(rem) = self.bonk_timer { if let Some(rem) = self.bonk_timer {
if rem == 0 { if rem == 0 {
@ -111,12 +112,11 @@ impl Game {
self.mara_speed = 0; self.mara_speed = 0;
let gamepad = unsafe { *GAMEPAD1 }; let gamepad = unsafe { *GAMEPAD1 };
let just_pressed = gamepad & (gamepad ^ self.prev_gamepad);
let speed = if just_pressed & BUTTON_2 != 0 { 4 } else { 2 }; let speed = if gamepad & BUTTON_2 != 0 { 4 } else { 2 };
if just_pressed & BUTTON_1 != 0 { // if just_pressed & BUTTON_1 != 0 {
self.song.pause(); // self.song.pause();
} // }
if gamepad & BUTTON_UP != 0 { if gamepad & BUTTON_UP != 0 {
self.mara_dir = Up; self.mara_dir = Up;
@ -163,6 +163,9 @@ impl Game {
} }
// draw // draw
sprites::TITLE.draw((0,-8).into(), 0);
sprites::SUBTITLE.draw((0,52).into(), 0);
for i in 0..self.gate_count { for i in 0..self.gate_count {
let mut gate = self.gate_pos.clone(); let mut gate = self.gate_pos.clone();
gate.y = gate.y + (sprites::GATE.height * i as u32) as i32; gate.y = gate.y + (sprites::GATE.height * i as u32) as i32;
@ -176,12 +179,9 @@ impl Game {
self.gate_pos.y - 1, self.gate_pos.y - 1,
); );
palette::set_draw_color(2);
text("Mara: Sh0rk of\nJustice 2", 10, 10);
palette::set_draw_color(4); palette::set_draw_color(4);
text("From Within, 2022", 10, 144); text("From Within, 2022", 10, 144);
sprites::MAI.draw(self.mai_position, 0);
sprites::MARA.draw(self.mara_dir, self.mara_frame, self.mara_position, 0); sprites::MARA.draw(self.mara_dir, self.mara_frame, self.mara_position, 0);
} }
} }
@ -190,6 +190,7 @@ impl Game {
unsafe fn start() { unsafe fn start() {
palette::en4(); palette::en4();
GAME.rng = Some(Rng::with_seed(420)); GAME.rng = Some(Rng::with_seed(420));
// GAME.song.pause();
} }
#[no_mangle] #[no_mangle]

View File

@ -1,8 +1,8 @@
pub mod palette; pub mod palette;
pub mod sys; pub mod sys;
mod music; pub mod music;
pub use music::*; pub use music::{Note, Song};
#[derive(Clone, Copy, PartialEq, Eq, Default)] #[derive(Clone, Copy, PartialEq, Eq, Default)]
pub struct Point { pub struct Point {

View File

@ -10,14 +10,6 @@ pub fn set_palette(palette: [u32; 4]) {
} }
} }
pub fn warmlight() {
set_palette([0xffd191, 0x66605c, 0x211e20, 0xff924f]);
}
pub fn moonlight() {
set_palette([0xf3eaab, 0x86a0b7, 0x3d476a, 0x19152a]);
}
pub fn en4() { pub fn en4() {
set_palette([0xfbf7f3, 0xe5b083, 0x426e5d, 0x20283d]); set_palette([0xfbf7f3, 0xe5b083, 0x426e5d, 0x20283d]);
} }
@ -30,6 +22,18 @@ pub fn cafe_nouveau() {
set_palette([0xf8e6d0, 0xc08e70, 0x683a34, 0x200816]); set_palette([0xf8e6d0, 0xc08e70, 0x683a34, 0x200816]);
} }
/*pub fn coldfire() { pub fn coldfire() {
set_palette([0x46425e, 0x5b768d, 0xd17c7c, 0xf6c6a8]); set_palette([0x46425e, 0x5b768d, 0xd17c7c, 0xf6c6a8]);
}*/ }
pub fn warmlight() {
set_palette([0xffd191, 0x66605c, 0x211e20, 0xff924f]);
}
pub fn moonlight() {
set_palette([0xf3eaab, 0x86a0b7, 0x3d476a, 0x19152a]);
}
pub fn t_lollipop() {
set_palette([0xe6f2ef, 0xf783b0, 0x3f6d9e, 0x151640]);
}

View File

@ -1,10 +1,13 @@
use crate::sh0rk::{Sprite, SpriteAtlas}; use crate::sh0rk::{
sys::{BLIT_1BPP, BLIT_2BPP},
Sprite, SpriteAtlas,
};
pub const GATE: Sprite<12> = Sprite { pub const GATE: Sprite<12> = Sprite {
palette: 0x4210, palette: 0x4210,
width: 12, width: 12,
height: 4, height: 4,
flags: 1, flags: BLIT_2BPP,
sprite: [ sprite: [
0xfd, 0x5a, 0xa7, 0xf5, 0xaa, 0x57, 0xd6, 0xa5, 0x6b, 0x3f, 0xff, 0xfc, 0xfd, 0x5a, 0xa7, 0xf5, 0xaa, 0x57, 0xd6, 0xa5, 0x6b, 0x3f, 0xff, 0xfc,
], ],
@ -14,7 +17,7 @@ pub const MAI: Sprite<64> = Sprite {
palette: 0x1420, palette: 0x1420,
width: 16, width: 16,
height: 16, height: 16,
flags: 1, flags: BLIT_2BPP,
sprite: [ sprite: [
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf7, 0xff, 0xff, 0xdf, 0xf5, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf7, 0xff, 0xff, 0xdf, 0xf5, 0xff, 0xff,
0x5f, 0xf6, 0x75, 0x9d, 0x9f, 0xf6, 0x59, 0x55, 0x9f, 0xf6, 0x95, 0x96, 0x9f, 0xfd, 0x41, 0x5f, 0xf6, 0x75, 0x9d, 0x9f, 0xf6, 0x59, 0x55, 0x9f, 0xf6, 0x95, 0x96, 0x9f, 0xfd, 0x41,
@ -29,7 +32,7 @@ pub const MARA: SpriteAtlas<384> = SpriteAtlas {
palette: 0x3210, palette: 0x3210,
width: 96, width: 96,
height: 16, height: 16,
flags: 1, flags: BLIT_2BPP,
sprite: [ sprite: [
0x3f, 0x00, 0x00, 0xfc, 0x3f, 0x00, 0x00, 0xfc, 0x3f, 0x00, 0x00, 0xfc, 0x3f, 0x00, 0x3f, 0x00, 0x00, 0xfc, 0x3f, 0x00, 0x00, 0xfc, 0x3f, 0x00, 0x00, 0xfc, 0x3f, 0x00,
0x00, 0xfc, 0x00, 0x00, 0xf0, 0x00, 0x00, 0x00, 0xf0, 0x00, 0x36, 0xff, 0xc3, 0x9c, 0x00, 0xfc, 0x00, 0x00, 0xf0, 0x00, 0x00, 0x00, 0xf0, 0x00, 0x36, 0xff, 0xc3, 0x9c,
@ -65,3 +68,129 @@ pub const MARA: SpriteAtlas<384> = SpriteAtlas {
width: 16, width: 16,
animated: true, animated: true,
}; };
pub const SUBTITLE: Sprite<320> = Sprite {
palette: 0x31,
width: 160,
height: 16,
flags: BLIT_1BPP,
sprite: [
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xf1, 0x86, 0x3c, 0x3f,
0x18, 0x00, 0x07, 0x87, 0x80, 0x00, 0x19, 0x87, 0x7c, 0x07, 0x98, 0xf9, 0xe0, 0x00, 0x00,
0x03, 0xf9, 0x87, 0x7e, 0x3f, 0x98, 0x80, 0x0f, 0xc7, 0xf8, 0x00, 0x1d, 0x87, 0xfe, 0x7f,
0xdb, 0xfd, 0xfe, 0x07, 0x80, 0x06, 0x1d, 0x87, 0xc6, 0x31, 0x99, 0xc0, 0x18, 0xc6, 0x38,
0x00, 0x1d, 0x87, 0x87, 0x7c, 0x1b, 0x0d, 0x8e, 0x1f, 0xe0, 0x06, 0x01, 0x87, 0x83, 0x71,
0x9b, 0xc0, 0x30, 0x66, 0x00, 0x00, 0x0f, 0x87, 0x80, 0x0c, 0x1e, 0x01, 0x80, 0x18, 0x60,
0x07, 0xe1, 0x87, 0x83, 0x63, 0x9f, 0x00, 0x30, 0x66, 0x00, 0x00, 0x0f, 0x87, 0xf8, 0x0c,
0x3e, 0x01, 0x80, 0x00, 0x60, 0x03, 0xfb, 0xff, 0x83, 0x7f, 0x1e, 0x00, 0x30, 0x67, 0xe0,
0x00, 0x0f, 0x07, 0xfe, 0x0c, 0x3e, 0x01, 0xf8, 0x00, 0xc0, 0x00, 0xff, 0x0f, 0x83, 0x7e,
0x3c, 0x00, 0x30, 0x67, 0xe0, 0x00, 0x0f, 0x07, 0x3f, 0x0c, 0x3e, 0x01, 0xf0, 0x03, 0x80,
0x00, 0x0f, 0x07, 0x83, 0xf8, 0x3e, 0x00, 0x30, 0x66, 0x00, 0x00, 0x0f, 0x07, 0x03, 0x1c,
0x36, 0x0f, 0x00, 0x0e, 0x00, 0x00, 0x0f, 0x07, 0x86, 0xfe, 0x37, 0x00, 0x30, 0xcc, 0x00,
0x06, 0x0f, 0x07, 0x03, 0x18, 0x37, 0x1f, 0x00, 0x0c, 0x40, 0x07, 0x0f, 0x06, 0xce, 0xef,
0x33, 0xc0, 0x19, 0xcc, 0x00, 0x07, 0x1b, 0x8f, 0xc3, 0x18, 0x33, 0xff, 0x3c, 0x19, 0xe0,
0x03, 0xfb, 0x06, 0xfc, 0xc7, 0xb1, 0xe0, 0x1f, 0x8c, 0x00, 0x03, 0xf9, 0xfe, 0xfe, 0x18,
0x33, 0xfb, 0xfc, 0x1f, 0xe0, 0x01, 0xf3, 0x02, 0x78, 0x43, 0x30, 0xc0, 0x0f, 0x0c, 0x00,
0x01, 0xf0, 0xf8, 0x7c, 0x18, 0x11, 0xf1, 0xf8, 0x1e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00,
],
};
pub const TITLE: Sprite<1280> = Sprite {
palette: 0x41,
width: 160,
height: 64,
flags: BLIT_1BPP,
sprite: [
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0e, 0x00, 0x00, 0x00, 0x01, 0xff, 0xf8, 0x00,
0x00, 0x01, 0xc0, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x60, 0x00, 0x0f, 0x00, 0x00,
0x00, 0x1f, 0xff, 0xfe, 0x00, 0x00, 0x01, 0xe0, 0x00, 0x00, 0x00, 0x38, 0x00, 0x00, 0x00,
0xe0, 0x00, 0x0f, 0xc0, 0x00, 0x00, 0x3f, 0xff, 0xff, 0x00, 0x00, 0x01, 0xf8, 0x00, 0x00,
0x00, 0x38, 0x00, 0x00, 0x01, 0xe0, 0x00, 0x1f, 0xf0, 0x00, 0x00, 0x7f, 0xff, 0xff, 0x80,
0x00, 0x03, 0xfe, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x00, 0x03, 0xe0, 0x00, 0x1f, 0xf0, 0x00,
0x00, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x03, 0xfe, 0x00, 0x00, 0x00, 0x3e, 0x00, 0x00, 0x07,
0xe0, 0x00, 0x3f, 0xf8, 0x00, 0x00, 0xff, 0xff, 0xff, 0xe0, 0x00, 0x07, 0xff, 0x00, 0x00,
0x00, 0x3f, 0x00, 0x00, 0x0f, 0xe0, 0x00, 0x3f, 0xf8, 0x00, 0x00, 0xff, 0xff, 0xff, 0xe0,
0x00, 0x07, 0xff, 0x00, 0x00, 0x00, 0x3f, 0x00, 0x00, 0x1f, 0xe0, 0x00, 0x7f, 0xf8, 0x00,
0x00, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x0f, 0xff, 0x00, 0x00, 0x00, 0x3f, 0x80, 0x00, 0x3f,
0xe0, 0x00, 0x7f, 0xfc, 0x00, 0x01, 0xff, 0x80, 0x3f, 0xf0, 0x00, 0x0f, 0xff, 0x80, 0x00,
0x00, 0x3f, 0xc0, 0x00, 0x7f, 0xe0, 0x00, 0x7f, 0xfc, 0x00, 0x01, 0xff, 0x00, 0x0f, 0xf0,
0x00, 0x0f, 0xff, 0x80, 0x00, 0x00, 0x3f, 0xe0, 0x00, 0xff, 0xc0, 0x00, 0xff, 0xfc, 0x00,
0x01, 0xff, 0x00, 0x0f, 0xf8, 0x00, 0x1f, 0xff, 0x80, 0x00, 0x00, 0x7f, 0xe0, 0x01, 0xff,
0xc0, 0x00, 0xfe, 0xfc, 0x00, 0x01, 0xff, 0x00, 0x07, 0xf8, 0x00, 0x1f, 0xdf, 0x80, 0x00,
0x00, 0x7f, 0xf0, 0x03, 0xff, 0xc0, 0x01, 0xfc, 0xfe, 0x00, 0x01, 0xff, 0x00, 0x07, 0xf8,
0x00, 0x3f, 0x9f, 0xc0, 0x00, 0x00, 0x7f, 0xf8, 0x07, 0xff, 0xc0, 0x01, 0xfc, 0xfe, 0x00,
0x03, 0xfe, 0x00, 0x07, 0xf8, 0x00, 0x3f, 0x9f, 0xc0, 0x00, 0x00, 0x7f, 0xfc, 0x0f, 0xff,
0xc0, 0x01, 0xfc, 0xfe, 0x00, 0x03, 0xfe, 0x00, 0x07, 0xf8, 0x00, 0x3f, 0x9f, 0xc0, 0x00,
0x00, 0x7f, 0xfc, 0x1f, 0xff, 0xc0, 0x03, 0xf8, 0x7f, 0x00, 0x03, 0xfe, 0x00, 0x07, 0xf8,
0x00, 0x7f, 0x0f, 0xe0, 0x00, 0x00, 0x7f, 0xfe, 0x3f, 0xff, 0xc0, 0x03, 0xf8, 0x7f, 0x00,
0x03, 0xfe, 0x00, 0x0f, 0xf8, 0x00, 0x7f, 0x0f, 0xe0, 0x00, 0x00, 0x7f, 0xff, 0x7f, 0xff,
0xc0, 0x07, 0xf8, 0x7f, 0x00, 0x03, 0xfe, 0x00, 0x1f, 0xf8, 0x00, 0xff, 0x0f, 0xe0, 0x00,
0x00, 0x7f, 0xff, 0xff, 0xff, 0xc0, 0x07, 0xf0, 0x7f, 0x00, 0x07, 0xfe, 0x00, 0x3f, 0xf8,
0x00, 0xfe, 0x0f, 0xe0, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, 0xc0, 0x07, 0xf0, 0x7f, 0x80,
0x07, 0xfe, 0x00, 0x7f, 0xf0, 0x00, 0xfe, 0x0f, 0xf0, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff,
0xc0, 0x0f, 0xe0, 0x7f, 0x80, 0x07, 0xfe, 0x03, 0xff, 0xf0, 0x01, 0xfc, 0x0f, 0xf0, 0x00,
0x00, 0x7f, 0xff, 0xff, 0xff, 0xc0, 0x0f, 0xe0, 0x7f, 0x80, 0x07, 0xff, 0xff, 0xff, 0xe0,
0x01, 0xfc, 0x0f, 0xf0, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xc0, 0x1f, 0xe0, 0x7f, 0xc0,
0x07, 0xff, 0xff, 0xff, 0xe0, 0x03, 0xfc, 0x0f, 0xf8, 0x00, 0x00, 0xff, 0x7f, 0xff, 0x3f,
0xc0, 0x1f, 0xc0, 0x7f, 0xc0, 0x0f, 0xff, 0xff, 0xff, 0xc0, 0x03, 0xf8, 0x0f, 0xf8, 0x00,
0x00, 0xff, 0x3f, 0xfe, 0x3f, 0xc0, 0x3f, 0xc0, 0x7f, 0xc0, 0x0f, 0xff, 0xff, 0xff, 0x80,
0x07, 0xf8, 0x0f, 0xf8, 0x00, 0x00, 0xff, 0x1f, 0xfc, 0x3f, 0xc0, 0x3f, 0xc3, 0xff, 0xc0,
0x0f, 0xff, 0xff, 0xff, 0x00, 0x07, 0xf8, 0x7f, 0xf8, 0x00, 0x00, 0xff, 0x0f, 0xf0, 0x3f,
0x80, 0x3f, 0xff, 0xff, 0xe0, 0x0f, 0xff, 0xff, 0xfe, 0x00, 0x07, 0xff, 0xff, 0xfc, 0x00,
0x00, 0xff, 0x07, 0xe0, 0x7f, 0x80, 0x7f, 0xff, 0xff, 0xe0, 0x0f, 0xff, 0xff, 0xf8, 0x00,
0x0f, 0xff, 0xff, 0xfc, 0x00, 0x00, 0xff, 0x07, 0xc0, 0x7f, 0x80, 0x7f, 0xff, 0xff, 0xe0,
0x1f, 0xff, 0xff, 0xe0, 0x00, 0x0f, 0xff, 0xff, 0xfc, 0x00, 0x00, 0xff, 0x03, 0x00, 0x7f,
0x80, 0xff, 0xff, 0xff, 0xf0, 0x1f, 0xff, 0xfe, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xfe, 0x00,
0x00, 0xff, 0x00, 0x00, 0x7f, 0x80, 0xff, 0xff, 0xff, 0xf0, 0x1f, 0xff, 0xe0, 0x00, 0x00,
0x1f, 0xff, 0xff, 0xfe, 0x00, 0x00, 0xff, 0x00, 0x00, 0x7f, 0x80, 0xff, 0xff, 0xff, 0xf0,
0x1f, 0xff, 0xf8, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xfe, 0x00, 0x00, 0xff, 0x00, 0x00, 0xff,
0x81, 0xff, 0xf0, 0x3f, 0xf0, 0x1f, 0xff, 0xfc, 0x00, 0x00, 0x3f, 0xfe, 0x07, 0xfe, 0x00,
0x01, 0xff, 0x00, 0x00, 0xff, 0x81, 0xff, 0x00, 0x1f, 0xf8, 0x3f, 0xff, 0xff, 0x00, 0x00,
0x3f, 0xe0, 0x03, 0xff, 0x00, 0x01, 0xff, 0x00, 0x00, 0xff, 0x83, 0xfc, 0x00, 0x1f, 0xf8,
0x3f, 0xff, 0xff, 0xc0, 0x00, 0x7f, 0x80, 0x03, 0xff, 0x00, 0x01, 0xff, 0x00, 0x00, 0xff,
0x83, 0xfc, 0x00, 0x1f, 0xf8, 0x3f, 0xff, 0xff, 0xe0, 0x00, 0x7f, 0x80, 0x03, 0xff, 0x00,
0x01, 0xff, 0x00, 0x00, 0xff, 0x83, 0xf8, 0x00, 0x1f, 0xfc, 0x3f, 0xf3, 0xff, 0xf8, 0x00,
0x7f, 0x00, 0x03, 0xff, 0x80, 0x01, 0xff, 0x00, 0x01, 0xff, 0x87, 0xf8, 0x00, 0x1f, 0xfc,
0x3f, 0xe1, 0xff, 0xfe, 0x00, 0xff, 0x00, 0x03, 0xff, 0x80, 0x01, 0xff, 0x00, 0x01, 0xff,
0x87, 0xf8, 0x00, 0x1f, 0xfc, 0x7f, 0xe0, 0xff, 0xff, 0x00, 0xff, 0x00, 0x03, 0xff, 0x80,
0x01, 0xff, 0x00, 0x01, 0xff, 0x8f, 0xf0, 0x00, 0x0f, 0xfc, 0x7f, 0xe0, 0x7f, 0xff, 0xc1,
0xfe, 0x00, 0x01, 0xff, 0x80, 0x01, 0xff, 0x00, 0x01, 0xff, 0x8f, 0xf0, 0x00, 0x0f, 0xfc,
0x7f, 0xe0, 0x1f, 0xff, 0xf1, 0xfe, 0x00, 0x01, 0xff, 0x80, 0x01, 0xff, 0x00, 0x01, 0xff,
0x1f, 0xf0, 0x00, 0x0f, 0xfc, 0x7f, 0xe0, 0x0f, 0xff, 0xf3, 0xfe, 0x00, 0x01, 0xff, 0x80,
0x01, 0xff, 0x00, 0x03, 0xff, 0x1f, 0xf0, 0x00, 0x0f, 0xfc, 0x7f, 0xc0, 0x07, 0xff, 0xf3,
0xfe, 0x00, 0x01, 0xff, 0x80, 0x01, 0xff, 0x00, 0x03, 0xff, 0x1f, 0xe0, 0x00, 0x0f, 0xfc,
0xff, 0xc0, 0x03, 0xff, 0xe3, 0xfc, 0x00, 0x01, 0xff, 0x80, 0x01, 0xff, 0x00, 0x03, 0xff,
0x1f, 0xe0, 0x00, 0x0f, 0xf8, 0xff, 0xc0, 0x00, 0xff, 0xc3, 0xfc, 0x00, 0x01, 0xff, 0x00,
0x01, 0xff, 0x00, 0x03, 0xff, 0x0f, 0xe0, 0x00, 0x0f, 0xe0, 0x7f, 0xc0, 0x00, 0x7f, 0x81,
0xfc, 0x00, 0x01, 0xfc, 0x00, 0x01, 0xff, 0x00, 0x01, 0xff, 0x07, 0xc0, 0x00, 0x0f, 0xc0,
0x1f, 0xc0, 0x00, 0x3f, 0x00, 0xf8, 0x00, 0x01, 0xf8, 0x00, 0x00, 0x3f, 0x00, 0x00, 0x7f,
0x03, 0xc0, 0x00, 0x07, 0x00, 0x07, 0xc0, 0x00, 0x1e, 0x00, 0x78, 0x00, 0x00, 0xe0, 0x00,
0x00, 0x07, 0x00, 0x00, 0x0f, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x00, 0x04, 0x00,
0x00, 0x00, 0x00, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00,
],
};