From 65f9982ba6992e62960d20bb690cf29ef60e835c Mon Sep 17 00:00:00 2001 From: UnavailableDev Date: Wed, 8 Mar 2023 15:37:25 +0100 Subject: spelling correction --- src/stm32/TODO/hh_entity.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/stm32/TODO/hh_entity.h b/src/stm32/TODO/hh_entity.h index 82d75c5..768b2e6 100644 --- a/src/stm32/TODO/hh_entity.h +++ b/src/stm32/TODO/hh_entity.h @@ -7,10 +7,10 @@ typedef struct hh_entity //armor/block? }; -/// @brief detect for collision enity and eviroment +/// @brief detect for collision entity and environment /// @param environment position of tile to be checked /// @param entity position entity -/// @return true if collision between enity and environment +/// @return true if collision between entity and environment bool hh_collision(const vec2& environment, const vec2& entity); /// @brief solve collisions -- cgit v1.2.3 From 0ce1adac6d80bf69e3a03891879d9445698300bc Mon Sep 17 00:00:00 2001 From: UnavailableDev Date: Fri, 10 Mar 2023 11:55:46 +0100 Subject: nope --- src/stm32/TODO/hh_entity.c | 6 ++++++ src/stm32/TODO/maths.c | 12 ++++++++++++ 2 files changed, 18 insertions(+) create mode 100644 src/stm32/TODO/hh_entity.c create mode 100644 src/stm32/TODO/maths.c diff --git a/src/stm32/TODO/hh_entity.c b/src/stm32/TODO/hh_entity.c new file mode 100644 index 0000000..492ca67 --- /dev/null +++ b/src/stm32/TODO/hh_entity.c @@ -0,0 +1,6 @@ +#include "maths.h" +#include "hh_entity.h" + +bool hh_collision(const vec2& environment, const vec2& entity){ + +} \ No newline at end of file diff --git a/src/stm32/TODO/maths.c b/src/stm32/TODO/maths.c new file mode 100644 index 0000000..ef3698b --- /dev/null +++ b/src/stm32/TODO/maths.c @@ -0,0 +1,12 @@ +#include "maths.h" + +#include + +float clamp( float x, float min, float max ){ + if (x > max) + return max; + else if (x < min) + return min; + else + return x; +} -- cgit v1.2.3 From e3e0feb56340a72545b6fd38f22e134cf2e3509a Mon Sep 17 00:00:00 2001 From: UnavailableDev Date: Fri, 10 Mar 2023 14:23:05 +0100 Subject: fixed code styles --- .editorconfig | 4 ++-- src/engine/TODO/combat.h | 9 +++++++++ src/engine/TODO/draw_screen.h | 1 + src/engine/TODO/entity.c | 41 ++++++++++++++++++++++++++++++++++++++++ src/engine/TODO/entity.h | 24 +++++++++++++++++++++++ src/engine/TODO/hh_combat.h | 9 --------- src/engine/TODO/hh_draw_screen.h | 1 - src/engine/TODO/hh_entity.c | 41 ---------------------------------------- src/engine/TODO/hh_entity.h | 24 ----------------------- src/engine/TODO/hh_level.h | 1 - src/engine/TODO/hh_rand.h | 1 - src/engine/TODO/level.h | 4 ++++ src/engine/TODO/maths.c | 1 - src/engine/TODO/maths.h | 3 ++- src/entity.h | 1 - src/input.h | 1 - src/ppu/ppu.h | 3 --- src/ppusim/sim.c | 5 +++++ src/ppusim/sim.h | 3 +++ src/stm32/main.c | 3 +++ 20 files changed, 94 insertions(+), 86 deletions(-) create mode 100644 src/engine/TODO/combat.h create mode 100644 src/engine/TODO/draw_screen.h create mode 100644 src/engine/TODO/entity.c create mode 100644 src/engine/TODO/entity.h delete mode 100644 src/engine/TODO/hh_combat.h delete mode 100644 src/engine/TODO/hh_draw_screen.h delete mode 100644 src/engine/TODO/hh_entity.c delete mode 100644 src/engine/TODO/hh_entity.h delete mode 100644 src/engine/TODO/hh_level.h delete mode 100644 src/engine/TODO/hh_rand.h create mode 100644 src/engine/TODO/level.h delete mode 100644 src/engine/TODO/maths.c diff --git a/.editorconfig b/.editorconfig index fece754..1f4a360 100644 --- a/.editorconfig +++ b/.editorconfig @@ -2,10 +2,10 @@ root = true [*] indent_style = tab -indent_size = 2 +indent_size = 3 end_of_line = lf insert_final_newline = true [*.md] indent_style = space -indent_size = 2 +indent_size = 3 diff --git a/src/engine/TODO/combat.h b/src/engine/TODO/combat.h new file mode 100644 index 0000000..16c41f5 --- /dev/null +++ b/src/engine/TODO/combat.h @@ -0,0 +1,9 @@ +#include "hh_entity.h" + + +// attacktypes: + +/// @brief basic attack +/// @param dmg damage number +/// @param target entity under attack (damage changes this hp value) +void hh_attack_basic( int8_t dmg, hh_entity* target ); diff --git a/src/engine/TODO/draw_screen.h b/src/engine/TODO/draw_screen.h new file mode 100644 index 0000000..f5d7507 --- /dev/null +++ b/src/engine/TODO/draw_screen.h @@ -0,0 +1 @@ +// every function call for drawing the screen goes here. diff --git a/src/engine/TODO/entity.c b/src/engine/TODO/entity.c new file mode 100644 index 0000000..fa550d5 --- /dev/null +++ b/src/engine/TODO/entity.c @@ -0,0 +1,41 @@ +#include + +#include "hh_entity.h" +#include "maths.h" + +/* + PLAYER: (pos on X) + ,___, + | | + | X | + |___| + +*/ + +bool hh_collision(vec2* pos1, vec2* pos2){ + if (pos2->x == CLAMP(pos2->x,pos1->x,pos1->x+1.0f)){// hit x + return true; + } + + if (pos2->y == CLAMP(pos2->y,pos1->y,pos1->y+0.99f)){// hit y + return true; + } + return false; +} + +void hh_solve_collision(vec2* pos_environment, hh_entity* entity){ + if (entity->vec.x > 0.0f){ + entity->pos.x = MIN(entity->pos.x,pos_environment->x-1.0f); + entity->vec.x = 0.0f; + } else if (entity->vec.x < 0.0f){ + entity->pos.x = MAX(entity->pos.x,pos_environment->x+1.0f); + entity->vec.x = 0.0f; + } else if (entity->vec.y > 0.0f){ + entity->pos.x = MIN(entity->pos.x,pos_environment->x-1.0f); + entity->vec.x = 0.0f; + } else if (entity->vec.y < 0.0f){ + entity->pos.x = MAX(entity->pos.x,pos_environment->x+1.0f); + entity->vec.x = 0.0f; + } +} + diff --git a/src/engine/TODO/entity.h b/src/engine/TODO/entity.h new file mode 100644 index 0000000..fdbeb8a --- /dev/null +++ b/src/engine/TODO/entity.h @@ -0,0 +1,24 @@ +#pragma once + +#include + +#include "maths.h" + +typedef struct { + vec2 pos, vec; + bool is_grounded; + int8_t hp; + //armor/block? +}hh_entity; + +/// @brief detect for collision enity and eviroment +/// @param pos1 position of environment tile to be checked +/// @param pos2 position entity +/// @return true if collision between enity and environment +bool hh_collision(vec2* pos1, vec2* pos2); + +/// @brief solve collisions +/// @param environment position +/// @param entity position +/// @return solved new entity position +void hh_solve_collision(vec2* pos_environment, hh_entity* entity); diff --git a/src/engine/TODO/hh_combat.h b/src/engine/TODO/hh_combat.h deleted file mode 100644 index 16c41f5..0000000 --- a/src/engine/TODO/hh_combat.h +++ /dev/null @@ -1,9 +0,0 @@ -#include "hh_entity.h" - - -// attacktypes: - -/// @brief basic attack -/// @param dmg damage number -/// @param target entity under attack (damage changes this hp value) -void hh_attack_basic( int8_t dmg, hh_entity* target ); diff --git a/src/engine/TODO/hh_draw_screen.h b/src/engine/TODO/hh_draw_screen.h deleted file mode 100644 index f5d7507..0000000 --- a/src/engine/TODO/hh_draw_screen.h +++ /dev/null @@ -1 +0,0 @@ -// every function call for drawing the screen goes here. diff --git a/src/engine/TODO/hh_entity.c b/src/engine/TODO/hh_entity.c deleted file mode 100644 index fa550d5..0000000 --- a/src/engine/TODO/hh_entity.c +++ /dev/null @@ -1,41 +0,0 @@ -#include - -#include "hh_entity.h" -#include "maths.h" - -/* - PLAYER: (pos on X) - ,___, - | | - | X | - |___| - -*/ - -bool hh_collision(vec2* pos1, vec2* pos2){ - if (pos2->x == CLAMP(pos2->x,pos1->x,pos1->x+1.0f)){// hit x - return true; - } - - if (pos2->y == CLAMP(pos2->y,pos1->y,pos1->y+0.99f)){// hit y - return true; - } - return false; -} - -void hh_solve_collision(vec2* pos_environment, hh_entity* entity){ - if (entity->vec.x > 0.0f){ - entity->pos.x = MIN(entity->pos.x,pos_environment->x-1.0f); - entity->vec.x = 0.0f; - } else if (entity->vec.x < 0.0f){ - entity->pos.x = MAX(entity->pos.x,pos_environment->x+1.0f); - entity->vec.x = 0.0f; - } else if (entity->vec.y > 0.0f){ - entity->pos.x = MIN(entity->pos.x,pos_environment->x-1.0f); - entity->vec.x = 0.0f; - } else if (entity->vec.y < 0.0f){ - entity->pos.x = MAX(entity->pos.x,pos_environment->x+1.0f); - entity->vec.x = 0.0f; - } -} - diff --git a/src/engine/TODO/hh_entity.h b/src/engine/TODO/hh_entity.h deleted file mode 100644 index fdbeb8a..0000000 --- a/src/engine/TODO/hh_entity.h +++ /dev/null @@ -1,24 +0,0 @@ -#pragma once - -#include - -#include "maths.h" - -typedef struct { - vec2 pos, vec; - bool is_grounded; - int8_t hp; - //armor/block? -}hh_entity; - -/// @brief detect for collision enity and eviroment -/// @param pos1 position of environment tile to be checked -/// @param pos2 position entity -/// @return true if collision between enity and environment -bool hh_collision(vec2* pos1, vec2* pos2); - -/// @brief solve collisions -/// @param environment position -/// @param entity position -/// @return solved new entity position -void hh_solve_collision(vec2* pos_environment, hh_entity* entity); diff --git a/src/engine/TODO/hh_level.h b/src/engine/TODO/hh_level.h deleted file mode 100644 index 43b19a3..0000000 --- a/src/engine/TODO/hh_level.h +++ /dev/null @@ -1 +0,0 @@ -//deal with loading/saving the correct level diff --git a/src/engine/TODO/hh_rand.h b/src/engine/TODO/hh_rand.h deleted file mode 100644 index ea7c1d4..0000000 --- a/src/engine/TODO/hh_rand.h +++ /dev/null @@ -1 +0,0 @@ -// deal with Pseudo random number generation here. diff --git a/src/engine/TODO/level.h b/src/engine/TODO/level.h new file mode 100644 index 0000000..09f77e7 --- /dev/null +++ b/src/engine/TODO/level.h @@ -0,0 +1,4 @@ +//deal with loading/saving the correct level + +/** @brief */ +void hh_map_load(); diff --git a/src/engine/TODO/maths.c b/src/engine/TODO/maths.c deleted file mode 100644 index d1bb089..0000000 --- a/src/engine/TODO/maths.c +++ /dev/null @@ -1 +0,0 @@ -#include "maths.h" diff --git a/src/engine/TODO/maths.h b/src/engine/TODO/maths.h index 032e56d..c7f1b44 100644 --- a/src/engine/TODO/maths.h +++ b/src/engine/TODO/maths.h @@ -9,7 +9,8 @@ typedef struct { typedef vec2 vec_cen;//centered typedef vec2 vec_cor;//left upper corner -#define HH_MATH_FIXED_POINT 7 //fixed point at decimal 7lsb (world positions in pixels (with fixed decimal point)) +//fixed point at decimal 7lsb (world positions in pixels (with fixed decimal point)) +#define HH_MATH_FIXED_POINT 7 #define MIN(a,b) (((a)<(b))?(a):(b)) #define MAX(a,b) (((a)>(b))?(a):(b)) diff --git a/src/entity.h b/src/entity.h index 20cbf42..181182b 100644 --- a/src/entity.h +++ b/src/entity.h @@ -12,4 +12,3 @@ typedef struct { int8_t speed; //10 default L/R MODifier bool in_air; } hh_s_entity_player; - diff --git a/src/input.h b/src/input.h index adacba2..90f0c61 100644 --- a/src/input.h +++ b/src/input.h @@ -19,4 +19,3 @@ extern hh_s_gamepad g_hh_controller_p2; /** @brief update g_hh_controller_p1 and 2 by reading buttons */ void hh_input_read(); - diff --git a/src/ppu/ppu.h b/src/ppu/ppu.h index 18b58a2..75d97c1 100644 --- a/src/ppu/ppu.h +++ b/src/ppu/ppu.h @@ -9,9 +9,6 @@ void hh_ppu_init(); /** @brief deinitialize ppu interface */ void hh_ppu_deinit(); -/** @brief */ -void hh_ppu_load_tilemap(); - /** @brief update single foreground sprite */ void hh_ppu_update_foreground(unsigned index, hh_s_ppu_loc_fam_entry e); /** @brief update single background sprite */ diff --git a/src/ppusim/sim.c b/src/ppusim/sim.c index 449b78d..7d56d2d 100644 --- a/src/ppusim/sim.c +++ b/src/ppusim/sim.c @@ -22,6 +22,11 @@ void hh_ppu_init() { g_hh_ppusim_vram = malloc(sizeof(hh_ppu_data_t) * 0xffff); memset(g_hh_ppusim_vram, 0x0000, 0xffff); + hh_ppu_load_tilemap(); +} + +void hh_ppu_load_tilemap() { + } void hh_ppu_deinit() { diff --git a/src/ppusim/sim.h b/src/ppusim/sim.h index 73f4b23..4d1d718 100644 --- a/src/ppusim/sim.h +++ b/src/ppusim/sim.h @@ -4,3 +4,6 @@ #define HH_PPUSIM_UPSCALE_FACTOR 3 /** @brief max framerate for PPUSIM */ #define HH_PPUSIM_FRAMERATE 60 + +/** @brief pump tilemap from rom to ppu ram */ +void hh_ppu_load_tilemap(); //ppu sim? diff --git a/src/stm32/main.c b/src/stm32/main.c index 735b378..d381d35 100644 --- a/src/stm32/main.c +++ b/src/stm32/main.c @@ -1,4 +1,7 @@ #include "main.h" +#include "ppu/ppu.h" + +void hh_ppu_load_tilemap() {} void hh_loop() { while(g_hh_run); -- cgit v1.2.3 From 8670e4bb2bdaf46399830d9c4d413705ae01dc40 Mon Sep 17 00:00:00 2001 From: UnavailableDev Date: Fri, 10 Mar 2023 16:32:50 +0100 Subject: ppusim read sprites from file and put into vram --- src/ppusim/sim.c | 25 +++++++++++++++++++++++- test/bin/test_file_read.c | 48 +++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 72 insertions(+), 1 deletion(-) create mode 100644 test/bin/test_file_read.c diff --git a/src/ppusim/sim.c b/src/ppusim/sim.c index 7d56d2d..1fceb82 100644 --- a/src/ppusim/sim.c +++ b/src/ppusim/sim.c @@ -1,9 +1,12 @@ #include #include #include +#include #include "main.h" #include "ppu/ppu.h" +#include "ppu/consts.h" +#include "ppu/internals.h" #include "ppusim/mem.h" #include "ppusim/sim.h" #include "ppusim/work.h" @@ -26,7 +29,27 @@ void hh_ppu_init() { } void hh_ppu_load_tilemap() { - + char* filename = "tiles.bin"; + FILE* fp = fopen(filename,"rb"); + if (!fp){ + return;//error + } + + fseek(fp, 0, SEEK_END);//goto EOF + int _size = ftell(fp)/HH_PPU_VRAM_TMM_SPRITE_SIZE; + fseek(fp, 0, 0);//goto start of file + + for (int i = 0; i < _size; i++) { + uint8_t data[HH_PPU_VRAM_TMM_SPRITE_SIZE]; + + fread(data,HH_PPU_VRAM_TMM_SPRITE_SIZE,1,fp); + + hh_s_ppu_vram_data sprite = hh_ppu_2nat_sprite(data); + sprite.offset = i*HH_PPU_VRAM_TMM_SPRITE_SIZE; + hh_ppu_vram_write(sprite); + free(sprite.data); + } + fclose(fp); } void hh_ppu_deinit() { diff --git a/test/bin/test_file_read.c b/test/bin/test_file_read.c new file mode 100644 index 0000000..6357feb --- /dev/null +++ b/test/bin/test_file_read.c @@ -0,0 +1,48 @@ + +#include +#include +#include + + +#define HH_PPU_VRAM_TMM_SPRITE_SIZE 52 + + +void printData(uint8_t* in) { + for (int i = 0; i < HH_PPU_VRAM_TMM_SPRITE_SIZE; i++) + { + printf("%02x ",in[i]); + } + printf("\n"); +} + +void hh_ppu_load_tilemap() { + + //TODO: lees bestand in mem + char* filename = "tiles.bin"; + FILE* fp = fopen(filename,"rb"); + if (!fp){ + return;//error + } + + fseek(fp, 0, SEEK_END); + int _size = ftell(fp)/HH_PPU_VRAM_TMM_SPRITE_SIZE; + fseek(fp, 0, 0); + // printf("%i",_size); + for (int i = 0; i < _size; i++) { + uint8_t data[HH_PPU_VRAM_TMM_SPRITE_SIZE]; + // for (int i = 0; i < 255; i++) { + // buffer[i] = 0; //TODO: vullen + fread(data,HH_PPU_VRAM_TMM_SPRITE_SIZE,1,fp); + // } + + printData(data); + } + fclose(fp); + +} + + +int main(){ +hh_ppu_load_tilemap(); + return 0; +} -- cgit v1.2.3 From 148db0e330e158381bf2b5b39e139d75c55088b2 Mon Sep 17 00:00:00 2001 From: UnavailableDev <69792062+UnavailableDev@users.noreply.github.com> Date: Fri, 10 Mar 2023 16:36:21 +0100 Subject: Delete c_cpp_properties.json --- src/.vscode/c_cpp_properties.json | 16 ---------------- 1 file changed, 16 deletions(-) delete mode 100644 src/.vscode/c_cpp_properties.json diff --git a/src/.vscode/c_cpp_properties.json b/src/.vscode/c_cpp_properties.json deleted file mode 100644 index 359928d..0000000 --- a/src/.vscode/c_cpp_properties.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "configurations": [ - { - "name": "Linux", - "includePath": [ - "${workspaceFolder}/**" - ], - "defines": [], - "compilerPath": "/usr/bin/gcc", - "cStandard": "c17", - "cppStandard": "c++14", - "intelliSenseMode": "linux-gcc-x64" - } - ], - "version": 4 -} \ No newline at end of file -- cgit v1.2.3 From 233b2e7a0743935db145f921dd49756248aaee58 Mon Sep 17 00:00:00 2001 From: UnavailableDev <69792062+UnavailableDev@users.noreply.github.com> Date: Fri, 10 Mar 2023 16:36:38 +0100 Subject: Delete settings.json --- src/.vscode/settings.json | 6 ------ 1 file changed, 6 deletions(-) delete mode 100644 src/.vscode/settings.json diff --git a/src/.vscode/settings.json b/src/.vscode/settings.json deleted file mode 100644 index d485e2c..0000000 --- a/src/.vscode/settings.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "files.associations": { - "hh_entity.h": "c", - "maths.h": "c" - } -} \ No newline at end of file -- cgit v1.2.3 From a52a405cd9932abbc51713d75d3b91884820b081 Mon Sep 17 00:00:00 2001 From: UnavailableDev <69792062+UnavailableDev@users.noreply.github.com> Date: Fri, 10 Mar 2023 16:42:04 +0100 Subject: Delete tiles.bs --- test/bin/tiles.bs | 544 ------------------------------------------------------ 1 file changed, 544 deletions(-) delete mode 100644 test/bin/tiles.bs diff --git a/test/bin/tiles.bs b/test/bin/tiles.bs deleted file mode 100644 index 4452c2a..0000000 --- a/test/bin/tiles.bs +++ /dev/null @@ -1,544 +0,0 @@ -0000: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 -0010: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 -0020: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 -0030: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 -0040: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 -0050: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 -0060: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 -0070: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 -0080: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 -0090: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 -00a0: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 -00b0: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 -00c0: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 -00d0: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 -00e0: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 -00f0: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 -0100: 29 29 29 29 29 28 29 29 29 29 29 28 29 29 29 29 -0110: 29 28 28 28 28 26 28 28 28 28 28 26 28 28 28 28 -0120: 29 28 27 27 27 26 28 28 28 28 28 26 28 28 28 28 -0130: 29 27 27 27 27 25 25 25 25 25 25 25 25 25 25 25 -0140: 29 27 27 27 27 25 25 26 26 26 26 26 26 25 26 26 -0150: 28 27 27 27 27 25 26 26 26 26 26 26 26 25 26 26 -0160: 28 27 27 27 27 25 26 26 26 26 26 26 26 25 26 26 -0170: 26 26 26 26 26 25 25 25 25 25 25 25 25 25 25 25 -0180: 29 29 27 27 27 27 27 25 25 25 26 26 26 26 25 25 -0190: 28 27 27 27 27 27 27 25 26 26 26 26 26 26 26 25 -01a0: 28 27 27 27 27 27 27 25 25 26 26 26 26 26 26 25 -01b0: 28 26 26 26 26 26 25 25 25 25 25 25 25 25 25 25 -01c0: 01 28 27 27 27 27 27 27 25 25 26 26 26 26 26 26 -01d0: 01 28 27 27 27 27 27 27 25 26 26 26 26 26 26 26 -01e0: 01 28 27 27 27 27 27 27 25 26 26 26 26 26 26 26 -01f0: 29 29 29 28 28 28 25 25 25 25 25 25 25 25 25 25 -0200: 29 29 29 28 29 29 29 29 29 29 29 28 29 29 29 29 -0210: 28 28 28 26 28 28 28 28 28 28 28 26 28 28 28 28 -0220: 28 28 28 26 28 28 28 28 28 28 28 26 28 28 28 28 -0230: 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 -0240: 26 26 26 26 26 25 26 26 26 26 26 26 26 25 26 26 -0250: 26 26 26 26 26 25 26 26 26 26 26 26 26 25 26 26 -0260: 26 26 26 26 25 25 26 26 26 26 26 26 26 25 26 26 -0270: 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 -0280: 25 26 26 26 26 26 26 25 26 26 26 26 26 26 26 25 -0290: 26 26 26 26 26 26 26 25 26 26 26 26 26 26 26 25 -02a0: 26 26 26 26 26 26 26 25 26 26 26 26 26 26 26 25 -02b0: 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 -02c0: 26 25 26 26 26 26 26 26 26 25 26 26 26 26 26 26 -02d0: 26 25 26 26 26 26 26 26 26 25 26 26 26 26 26 26 -02e0: 25 25 26 26 26 26 26 26 26 25 26 26 26 26 26 26 -02f0: 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 -0300: 29 29 29 28 29 29 29 29 29 29 28 29 29 29 29 29 -0310: 28 28 28 26 28 28 28 28 28 28 26 28 28 28 28 29 -0320: 28 28 28 26 28 28 28 28 28 28 26 27 27 28 28 29 -0330: 25 25 25 25 25 25 25 25 25 25 25 27 27 27 27 29 -0340: 26 26 26 26 26 25 26 26 26 26 25 27 27 27 27 29 -0350: 26 26 26 26 26 25 26 26 26 26 25 27 27 27 27 28 -0360: 26 26 26 26 26 25 26 26 26 26 25 27 27 27 27 28 -0370: 25 25 25 25 25 25 25 25 25 25 25 26 26 26 26 28 -0380: 26 26 26 26 26 26 26 25 27 27 27 27 27 28 28 01 -0390: 26 26 26 26 26 26 26 25 27 27 27 27 27 27 28 01 -03a0: 26 26 26 26 26 26 26 25 27 27 27 27 27 27 28 01 -03b0: 25 25 25 25 25 25 25 25 25 25 25 28 28 29 29 29 -03c0: 26 25 26 26 26 26 26 26 26 25 27 27 27 27 27 29 -03d0: 26 25 26 26 26 26 26 26 26 25 27 27 27 27 27 29 -03e0: 26 25 26 26 26 26 26 26 26 25 27 27 27 27 27 28 -03f0: 25 25 25 25 25 25 25 25 25 25 25 25 26 26 26 28 -0400: 29 27 27 27 27 27 27 25 26 26 26 26 26 26 26 25 -0410: 28 27 27 27 27 27 27 25 26 26 26 26 26 26 26 25 -0420: 28 27 27 27 27 27 27 25 25 26 26 26 26 26 25 25 -0430: 28 26 26 26 26 26 25 25 25 25 25 25 25 25 25 25 -0440: 01 28 27 27 27 26 25 26 26 26 26 26 26 25 26 26 -0450: 01 28 27 27 27 25 26 26 26 26 26 26 26 25 26 26 -0460: 01 27 27 27 27 25 26 26 26 26 26 25 25 25 25 26 -0470: 29 29 28 28 25 25 25 25 25 25 25 25 25 25 25 25 -0480: 29 27 27 27 27 27 27 25 26 26 26 26 26 26 26 25 -0490: 28 27 27 27 27 27 27 25 26 26 26 26 26 26 26 25 -04a0: 28 27 27 27 27 27 27 25 25 26 26 26 26 26 26 25 -04b0: 28 26 26 26 26 26 25 25 25 25 25 25 25 25 25 25 -04c0: 01 28 28 27 27 27 27 26 25 26 26 26 26 26 26 26 -04d0: 01 28 27 27 27 27 27 27 25 25 26 26 26 26 26 26 -04e0: 01 28 27 27 27 27 27 27 25 25 26 26 26 26 26 26 -04f0: 01 28 26 26 26 26 26 25 25 25 25 25 25 25 25 25 -0500: 26 26 25 25 25 26 26 26 26 26 26 25 25 26 26 26 -0510: 26 26 26 25 26 26 26 26 26 26 26 25 26 26 26 26 -0520: 26 26 26 25 26 26 26 26 26 26 25 25 25 26 26 26 -0530: 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 -0540: 26 26 26 26 25 25 26 26 26 26 26 26 26 25 26 26 -0550: 26 26 26 26 26 25 26 26 26 26 26 26 26 25 26 26 -0560: 26 26 26 26 26 25 26 26 26 26 26 26 25 25 25 26 -0570: 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 -0580: 25 26 26 26 26 26 26 25 26 26 26 26 26 26 25 25 -0590: 26 26 26 26 26 26 26 25 26 26 26 26 26 26 26 25 -05a0: 26 26 26 26 26 26 25 25 25 25 26 26 26 26 26 25 -05b0: 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 -05c0: 25 25 25 26 26 26 26 26 26 25 26 26 26 26 26 26 -05d0: 26 25 26 26 26 26 26 26 26 25 26 26 26 26 26 26 -05e0: 26 25 26 26 26 26 26 26 25 25 25 26 26 26 26 26 -05f0: 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 -0600: 26 26 26 25 26 26 26 26 26 26 26 25 27 27 28 01 -0610: 26 26 26 25 26 26 26 26 26 26 26 25 27 27 28 01 -0620: 26 26 25 25 26 26 26 26 26 26 26 25 27 27 27 01 -0630: 25 25 25 25 25 25 25 25 25 25 25 25 25 29 29 29 -0640: 26 26 26 26 26 25 26 26 26 25 27 27 27 27 27 29 -0650: 26 26 26 26 26 25 26 26 26 25 27 27 27 27 27 28 -0660: 26 26 26 26 26 25 26 26 26 25 27 27 27 27 27 28 -0670: 25 25 25 25 25 25 25 25 25 25 25 26 26 26 26 28 -0680: 26 26 26 26 26 26 26 25 27 27 27 27 27 28 28 01 -0690: 26 26 26 26 26 26 26 25 27 27 27 27 27 27 28 01 -06a0: 26 26 26 26 26 26 26 25 27 27 27 27 27 27 28 01 -06b0: 25 25 25 25 25 25 25 25 25 25 25 26 26 29 29 29 -06c0: 26 25 26 26 26 26 26 26 26 25 27 27 27 27 27 29 -06d0: 26 25 26 26 26 26 26 26 26 25 27 27 27 27 27 28 -06e0: 26 25 26 26 26 26 26 26 26 25 27 27 27 27 27 28 -06f0: 25 25 25 25 25 25 25 25 25 25 25 25 26 26 26 28 -0700: 29 27 27 27 27 27 27 25 26 26 26 26 26 26 26 25 -0710: 28 27 27 27 27 27 27 25 26 26 26 26 26 26 26 25 -0720: 28 27 27 27 27 27 27 25 25 26 26 26 26 26 25 25 -0730: 28 26 26 26 26 26 25 25 25 25 25 25 25 25 25 25 -0740: 01 28 27 27 27 26 25 26 26 26 26 26 26 25 26 26 -0750: 01 28 27 27 27 25 26 26 26 26 26 26 26 25 26 26 -0760: 01 27 27 27 27 25 26 26 26 26 26 25 25 25 25 26 -0770: 29 29 28 28 25 25 25 25 25 25 25 25 25 25 25 25 -0780: 29 27 27 27 27 27 27 25 26 26 26 26 26 26 26 25 -0790: 28 27 27 27 27 27 27 25 26 26 26 26 26 26 26 25 -07a0: 28 27 27 27 27 27 27 25 25 26 26 26 26 26 26 25 -07b0: 28 26 26 26 26 26 25 25 25 25 25 25 25 25 25 25 -07c0: 01 28 28 27 27 27 27 27 27 27 27 25 25 25 25 27 -07d0: 01 28 28 27 27 27 27 27 27 27 27 27 25 27 27 27 -07e0: 01 29 28 28 28 27 27 27 27 27 27 27 26 27 27 27 -07f0: 01 29 29 29 28 28 28 28 28 28 28 28 26 28 28 28 -0800: 26 26 25 25 25 26 26 26 26 26 26 25 25 26 26 26 -0810: 26 26 26 25 26 26 26 26 26 26 26 25 26 26 26 26 -0820: 26 26 26 25 26 26 26 26 26 26 25 25 25 26 26 26 -0830: 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 -0840: 26 26 26 26 25 25 26 26 26 26 26 26 26 25 26 26 -0850: 26 26 26 26 26 25 26 26 26 26 26 26 26 25 26 26 -0860: 26 26 26 26 26 25 26 26 26 26 26 26 25 25 25 26 -0870: 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 -0880: 25 26 26 26 26 26 26 25 26 26 26 26 26 26 25 25 -0890: 26 26 26 26 26 26 26 25 26 26 26 26 26 26 26 25 -08a0: 26 26 26 26 26 26 25 25 25 25 26 26 26 26 26 25 -08b0: 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 -08c0: 27 27 27 27 27 27 27 27 26 26 26 27 27 27 27 27 -08d0: 27 27 27 27 27 27 27 27 27 26 26 27 27 27 27 27 -08e0: 27 27 27 27 27 27 27 27 27 26 27 27 27 27 27 27 -08f0: 28 28 28 28 28 28 28 28 28 26 28 28 28 28 28 28 -0900: 26 26 26 25 26 26 26 26 26 26 26 25 27 27 28 01 -0910: 26 26 26 25 26 26 26 26 26 26 26 25 27 27 28 01 -0920: 26 26 25 25 26 26 26 26 26 26 26 25 27 27 27 01 -0930: 25 25 25 25 25 25 25 25 25 25 25 25 25 29 29 29 -0940: 26 26 26 26 26 25 26 26 26 25 27 27 27 27 27 29 -0950: 26 26 26 26 26 25 26 26 26 25 27 27 27 27 27 28 -0960: 26 26 26 26 26 25 26 26 26 25 27 27 27 27 27 28 -0970: 25 25 25 25 25 25 25 25 25 25 25 26 26 26 26 28 -0980: 26 26 26 26 26 26 26 25 27 27 27 27 27 28 28 01 -0990: 26 26 26 26 26 26 26 25 27 27 27 27 27 27 28 01 -09a0: 26 26 26 26 26 26 26 25 27 27 27 27 27 27 28 01 -09b0: 25 25 25 25 25 25 26 26 26 26 26 26 26 29 29 29 -09c0: 27 27 26 26 26 27 27 27 27 27 27 27 27 27 28 29 -09d0: 27 27 27 26 26 27 27 27 27 27 27 27 27 28 28 28 -09e0: 27 27 27 26 27 27 27 27 27 27 27 28 28 28 28 29 -09f0: 28 28 28 26 28 28 28 28 28 28 28 28 28 29 29 29 -0a00: 29 29 29 29 29 28 29 29 29 29 29 28 29 29 29 29 -0a10: 29 28 28 28 28 26 28 28 28 28 28 26 28 28 28 28 -0a20: 29 28 27 27 27 26 28 28 28 28 28 26 28 28 28 28 -0a30: 29 27 27 27 27 25 25 25 25 25 25 25 25 25 25 25 -0a40: 29 27 27 27 27 25 25 26 26 26 26 26 26 25 26 26 -0a50: 28 27 27 27 27 25 26 26 26 26 26 26 26 25 26 26 -0a60: 28 27 27 27 27 25 26 26 26 26 26 26 26 25 26 26 -0a70: 26 26 26 26 26 25 25 25 25 25 25 25 25 25 25 25 -0a80: 29 27 27 27 27 27 27 25 26 26 26 26 26 26 26 25 -0a90: 28 27 27 27 27 27 27 25 26 26 26 26 26 26 26 25 -0aa0: 28 27 27 27 27 27 27 25 25 26 26 26 26 26 26 25 -0ab0: 28 26 26 26 26 26 25 25 25 25 25 25 25 25 25 25 -0ac0: 01 28 28 27 27 27 27 27 27 27 27 25 25 25 25 27 -0ad0: 01 28 28 27 27 27 27 27 27 27 27 27 25 27 27 27 -0ae0: 01 29 28 28 28 27 27 27 27 27 27 27 26 27 27 27 -0af0: 01 29 29 29 28 28 28 28 28 28 28 28 26 28 28 28 -0b00: 29 29 29 28 29 29 29 29 29 29 29 28 29 29 29 29 -0b10: 28 28 28 26 28 28 28 28 28 28 28 26 28 28 28 28 -0b20: 28 28 28 26 28 28 28 28 28 28 28 26 28 28 28 28 -0b30: 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 -0b40: 26 26 26 26 26 25 26 26 26 26 26 26 26 25 26 26 -0b50: 26 26 26 26 26 25 26 26 26 26 26 26 26 25 26 26 -0b60: 26 26 26 26 25 25 26 26 26 26 26 26 26 25 26 26 -0b70: 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 -0b80: 25 26 26 26 26 26 26 25 26 26 26 26 26 26 25 25 -0b90: 26 26 26 26 26 26 26 25 26 26 26 26 26 26 26 25 -0ba0: 26 26 26 26 26 26 25 25 25 25 26 26 26 26 26 25 -0bb0: 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 -0bc0: 27 27 27 27 27 27 27 27 26 26 26 27 27 27 27 27 -0bd0: 27 27 27 27 27 27 27 27 27 26 26 27 27 27 27 27 -0be0: 27 27 27 27 27 27 27 27 27 26 27 27 27 27 27 27 -0bf0: 28 28 28 28 28 28 28 28 28 26 28 28 28 28 28 28 -0c00: 29 29 29 28 29 29 29 29 29 29 28 29 29 29 29 29 -0c10: 28 28 28 26 28 28 28 28 28 28 26 28 28 28 28 29 -0c20: 28 28 28 26 28 28 28 28 28 28 26 27 27 28 28 29 -0c30: 25 25 25 25 25 25 25 25 25 25 25 27 27 27 27 29 -0c40: 26 26 26 26 26 25 26 26 26 26 25 27 27 27 27 29 -0c50: 26 26 26 26 26 25 26 26 26 26 25 27 27 27 27 28 -0c60: 26 26 26 26 26 25 26 26 26 26 25 27 27 27 27 28 -0c70: 25 25 25 25 25 25 25 25 25 25 25 26 26 26 26 28 -0c80: 26 26 26 26 26 26 26 25 27 27 27 27 27 28 28 01 -0c90: 26 26 26 26 26 26 26 25 27 27 27 27 27 27 28 01 -0ca0: 26 26 26 26 26 26 26 25 27 27 27 27 27 27 28 01 -0cb0: 25 25 25 25 25 25 26 26 26 26 26 26 26 29 29 29 -0cc0: 27 27 26 26 26 27 27 27 27 27 27 27 27 27 28 29 -0cd0: 27 27 27 26 26 27 27 27 27 27 27 27 27 28 28 28 -0ce0: 27 27 27 26 27 27 27 27 27 27 27 28 28 28 28 29 -0cf0: 28 28 28 26 28 28 28 28 28 28 28 28 28 29 29 29 -0d00: 29 29 29 29 29 28 29 29 29 29 28 29 29 29 29 29 -0d10: 29 28 28 28 28 26 28 28 28 28 26 28 28 28 28 29 -0d20: 29 28 27 27 27 26 28 28 28 28 26 27 27 28 28 29 -0d30: 29 27 27 27 27 25 25 25 25 25 25 27 27 27 27 29 -0d40: 29 27 27 27 27 25 25 26 26 26 25 27 27 27 27 29 -0d50: 28 27 27 27 27 25 26 26 26 26 25 27 27 27 27 28 -0d60: 28 27 27 27 27 25 26 26 26 26 25 27 27 27 27 28 -0d70: 26 26 26 26 26 25 25 25 25 25 25 26 26 26 26 28 -0d80: 29 29 27 27 27 27 27 25 27 27 27 27 27 28 28 01 -0d90: 28 27 27 27 27 27 27 25 27 27 27 27 27 27 28 01 -0da0: 28 27 27 27 27 27 27 25 27 27 27 27 27 27 28 01 -0db0: 28 26 26 26 26 26 25 25 25 25 25 28 28 29 29 29 -0dc0: 01 28 27 27 27 27 27 27 26 25 27 27 27 27 27 29 -0dd0: 01 28 27 27 27 27 27 27 26 25 27 27 27 27 27 29 -0de0: 01 28 27 27 27 27 27 27 26 25 27 27 27 27 27 28 -0df0: 29 29 29 28 28 28 25 25 25 25 25 25 26 26 26 28 -0e00: 29 27 27 27 27 27 27 25 26 26 26 25 27 27 28 01 -0e10: 28 27 27 27 27 27 27 25 26 26 26 25 27 27 28 01 -0e20: 28 27 27 27 27 27 27 25 26 26 26 25 27 27 27 01 -0e30: 28 26 26 26 26 26 25 25 25 25 25 25 25 29 29 29 -0e40: 01 28 27 27 27 26 25 26 26 25 27 27 27 27 27 29 -0e50: 01 28 27 27 27 25 26 26 26 25 27 27 27 27 27 28 -0e60: 01 27 27 27 27 25 26 26 26 25 26 27 27 27 27 28 -0e70: 29 29 28 28 25 25 25 25 25 25 25 26 26 26 26 28 -0e80: 29 27 27 27 27 27 27 25 27 27 27 27 27 28 28 01 -0e90: 28 27 27 27 27 27 27 25 27 27 27 27 27 27 28 01 -0ea0: 28 27 27 27 27 27 27 25 27 27 27 27 27 27 28 01 -0eb0: 28 26 26 26 26 26 25 25 25 25 25 26 26 29 29 29 -0ec0: 01 28 28 27 27 27 26 26 26 26 26 27 27 27 27 29 -0ed0: 01 28 27 27 27 27 26 26 26 26 27 27 27 27 27 28 -0ee0: 01 28 27 27 27 26 26 26 26 26 27 27 27 27 27 28 -0ef0: 01 28 26 26 26 26 26 25 25 25 25 25 26 26 26 28 -0f00: 29 27 27 27 27 27 27 25 26 26 26 25 27 27 28 01 -0f10: 28 27 27 27 27 27 27 25 26 26 26 25 27 27 28 01 -0f20: 28 27 27 27 27 27 27 25 26 26 26 25 27 27 27 01 -0f30: 28 26 26 26 26 26 25 25 25 25 25 25 25 29 29 29 -0f40: 01 28 27 27 27 26 25 26 26 25 27 27 27 27 27 29 -0f50: 01 28 27 27 27 25 26 26 26 25 27 27 27 27 27 28 -0f60: 01 27 27 27 27 25 26 26 26 25 27 27 27 27 27 28 -0f70: 29 29 28 28 25 25 25 25 25 25 25 26 26 26 26 28 -0f80: 29 27 27 27 27 27 27 25 27 27 27 27 27 28 28 01 -0f90: 28 27 27 27 27 27 27 25 27 27 27 27 27 27 28 01 -0fa0: 28 27 27 27 27 27 27 25 27 27 27 27 27 27 28 01 -0fb0: 28 26 26 26 26 26 25 25 26 26 26 26 26 29 29 29 -0fc0: 01 28 28 27 27 27 27 27 27 27 27 27 27 27 28 29 -0fd0: 01 28 28 27 27 27 27 27 27 27 27 27 27 28 28 28 -0fe0: 01 29 28 28 28 27 27 27 27 27 27 28 28 28 28 29 -0ff0: 01 29 29 29 28 28 28 28 28 28 28 28 28 29 29 29 -1000: 26 26 25 25 25 26 26 26 26 26 26 25 25 26 26 26 -1010: 26 26 26 25 26 26 26 26 26 26 26 25 26 26 26 26 -1020: 26 26 26 25 26 26 26 26 26 26 25 25 25 26 26 26 -1030: 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 -1040: 26 26 26 26 25 25 26 26 26 26 26 26 26 25 26 26 -1050: 26 26 26 26 26 25 26 26 26 26 26 26 26 25 26 26 -1060: 26 26 26 26 26 25 26 26 26 26 26 26 25 25 25 26 -1070: 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 -1080: 25 26 26 26 26 26 26 25 26 26 26 26 26 26 25 25 -1090: 26 26 26 26 26 26 26 25 26 26 26 26 26 26 26 25 -10a0: 26 26 26 26 26 26 25 25 25 25 26 26 26 26 26 25 -10b0: 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 -10c0: 25 25 25 26 26 26 26 26 26 25 26 26 26 27 27 27 -10d0: 26 25 26 26 26 26 26 26 26 25 26 26 27 27 27 27 -10e0: 26 25 26 26 26 26 26 26 25 25 25 26 27 27 27 27 -10f0: 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 -1100: 26 26 25 25 25 26 26 26 26 26 26 25 25 26 26 26 -1110: 26 26 26 25 26 26 26 26 26 26 26 25 26 26 26 26 -1120: 26 26 26 25 26 26 26 26 26 26 25 25 25 26 26 26 -1130: 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 -1140: 26 26 26 26 25 25 26 26 26 26 26 26 26 25 26 26 -1150: 26 26 26 26 26 25 26 26 26 26 26 26 26 25 26 26 -1160: 26 26 26 26 26 25 26 26 26 26 26 26 25 25 25 26 -1170: 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 -1180: 25 26 26 26 26 26 26 25 26 26 26 26 26 26 25 25 -1190: 26 26 26 26 26 26 26 25 26 26 26 26 26 26 26 25 -11a0: 26 26 26 26 26 26 25 25 25 25 26 26 26 26 26 25 -11b0: 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 -11c0: 25 25 25 26 26 26 26 26 26 25 26 26 26 26 26 26 -11d0: 27 25 27 27 26 26 26 26 26 25 26 26 26 26 26 26 -11e0: 27 25 27 27 26 26 26 26 25 25 25 26 26 26 26 26 -11f0: 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 -1200: 26 26 25 25 25 26 26 26 26 26 26 25 25 28 28 28 -1210: 26 26 26 25 26 26 26 26 26 26 26 25 26 28 28 28 -1220: 26 26 26 25 26 26 26 26 26 26 25 25 25 26 28 28 -1230: 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 -1240: 26 26 26 26 25 25 26 26 26 26 26 26 26 25 26 26 -1250: 26 26 26 26 26 25 26 26 26 26 26 26 26 25 26 26 -1260: 26 26 26 26 26 25 26 26 26 26 26 26 25 25 25 26 -1270: 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 -1280: 25 26 26 26 26 26 26 25 26 26 26 26 26 26 25 25 -1290: 26 26 26 26 26 26 26 25 26 26 26 26 26 26 26 25 -12a0: 26 26 26 26 26 26 25 25 25 25 26 26 26 26 26 25 -12b0: 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 -12c0: 25 25 25 26 26 26 26 26 26 25 26 26 26 26 26 26 -12d0: 26 25 26 26 26 26 26 26 26 25 26 26 26 26 26 26 -12e0: 26 25 26 26 26 26 26 26 25 25 25 26 26 26 26 26 -12f0: 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 -1300: 28 28 25 25 25 26 26 26 26 26 26 25 25 26 26 26 -1310: 28 28 28 25 26 26 26 26 26 26 26 25 26 26 26 26 -1320: 28 28 26 25 26 26 26 26 26 26 25 25 25 26 26 26 -1330: 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 -1340: 26 26 26 26 25 25 26 26 26 26 26 26 26 25 26 26 -1350: 26 26 26 26 26 25 26 26 26 26 26 26 26 25 26 26 -1360: 26 26 26 26 26 25 26 26 26 26 26 26 25 25 25 26 -1370: 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 -1380: 25 26 26 26 26 26 26 25 26 26 26 26 26 26 25 25 -1390: 26 26 26 26 26 26 26 25 26 26 26 26 26 26 26 25 -13a0: 26 26 26 26 26 26 25 25 25 25 26 26 26 26 26 25 -13b0: 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 -13c0: 25 25 25 26 26 26 26 26 26 25 26 26 26 26 26 26 -13d0: 26 25 26 26 26 26 26 26 26 25 26 26 26 26 26 26 -13e0: 26 25 26 26 26 26 26 26 25 25 25 26 26 26 26 26 -13f0: 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 -1400: 26 26 25 25 24 25 25 25 25 25 24 24 24 24 24 24 -1410: 26 26 26 24 25 25 25 25 25 25 24 24 24 24 24 24 -1420: 26 26 25 24 25 25 25 25 25 25 24 24 24 24 24 24 -1430: 25 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 -1440: 25 25 25 25 24 24 25 25 25 25 24 24 24 24 24 24 -1450: 25 25 25 25 25 24 25 25 25 25 24 24 24 24 24 24 -1460: 25 25 25 25 25 24 25 25 25 25 24 24 24 24 24 24 -1470: 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 -1480: 24 25 25 25 25 25 25 24 24 24 24 24 24 24 24 24 -1490: 25 25 25 25 25 25 25 24 24 24 24 24 24 24 24 24 -14a0: 25 25 25 25 25 25 24 24 24 24 24 24 24 24 24 24 -14b0: 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 -14c0: 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 -14d0: 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 -14e0: 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 -14f0: 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 -1500: 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 -1510: 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 -1520: 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 -1530: 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 -1540: 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 -1550: 24 24 24 24 24 24 24 24 25 25 25 25 25 24 25 25 -1560: 24 24 24 24 24 24 24 25 25 25 25 25 24 24 24 25 -1570: 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 -1580: 24 24 24 24 24 24 24 24 25 25 25 25 25 25 24 24 -1590: 24 24 24 24 24 24 24 24 25 25 25 25 25 25 25 24 -15a0: 24 24 24 24 24 24 24 24 24 24 25 25 25 25 25 24 -15b0: 24 24 24 24 24 24 24 24 24 24 24 24 24 24 25 25 -15c0: 24 24 24 24 24 25 25 25 25 24 25 25 25 26 26 26 -15d0: 24 24 24 24 25 25 25 25 25 24 25 25 26 26 26 26 -15e0: 24 24 24 24 25 25 25 25 24 24 24 26 26 26 26 26 -15f0: 24 24 24 24 24 24 24 24 24 24 25 25 25 25 25 25 -1600: 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 -1610: 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 -1620: 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 -1630: 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 -1640: 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 -1650: 25 25 25 25 25 24 25 25 25 25 24 24 24 24 24 24 -1660: 25 25 25 25 25 24 25 25 25 25 25 24 24 24 24 25 -1670: 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 -1680: 24 25 25 25 25 25 25 24 25 25 25 25 25 25 24 24 -1690: 25 25 25 25 25 25 25 24 25 25 25 25 25 25 25 24 -16a0: 25 25 25 25 25 25 24 24 24 24 25 25 25 25 25 24 -16b0: 25 25 25 25 24 24 24 24 24 24 24 24 24 24 24 24 -16c0: 25 25 25 26 26 25 25 25 25 24 25 25 26 26 26 26 -16d0: 26 25 26 26 26 26 26 26 26 25 26 26 26 26 26 26 -16e0: 26 25 26 26 26 26 26 26 25 25 25 26 26 26 26 26 -16f0: 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 -1700: 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 -1710: 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 -1720: 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 -1730: 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 -1740: 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 -1750: 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 -1760: 25 25 25 25 25 24 24 24 24 24 24 24 24 24 24 24 -1770: 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 -1780: 24 25 25 25 25 25 25 24 25 25 24 24 24 24 24 24 -1790: 25 25 25 25 25 25 25 24 25 25 24 24 24 24 24 24 -17a0: 25 25 25 25 25 25 24 24 24 24 24 24 24 24 24 24 -17b0: 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 -17c0: 25 24 24 25 25 25 25 25 25 24 24 24 24 24 24 24 -17d0: 26 25 25 25 25 25 25 25 25 24 24 24 24 24 24 24 -17e0: 26 25 26 25 25 25 25 25 24 24 24 24 24 24 24 24 -17f0: 25 25 25 25 24 24 24 24 24 24 24 24 24 24 24 24 -1800: 24 24 24 24 24 25 25 25 25 25 26 25 25 26 26 26 -1810: 24 24 24 24 25 25 25 25 25 25 26 25 26 26 26 26 -1820: 24 24 24 24 25 25 25 25 25 25 25 25 25 26 26 26 -1830: 24 24 24 24 24 24 24 24 24 24 25 25 25 25 25 25 -1840: 24 24 24 24 24 24 25 25 25 25 26 26 26 25 26 26 -1850: 24 24 24 24 24 24 25 25 25 25 26 26 26 25 26 26 -1860: 24 24 24 24 24 24 25 25 25 25 26 26 25 25 25 26 -1870: 24 24 24 24 24 24 24 24 24 24 25 25 25 25 25 25 -1880: 24 24 24 24 25 25 25 24 25 25 26 26 26 26 25 25 -1890: 24 24 24 25 25 25 25 24 25 25 25 26 26 26 26 25 -18a0: 24 24 24 25 25 25 24 24 24 24 25 25 26 26 26 25 -18b0: 24 24 24 24 24 24 24 24 24 24 24 25 25 25 25 25 -18c0: 24 24 24 25 25 25 25 25 25 24 26 26 26 26 26 26 -18d0: 24 24 24 24 25 25 25 25 25 24 26 26 26 26 26 26 -18e0: 24 24 24 24 25 25 25 25 24 24 25 26 26 26 26 26 -18f0: 24 24 24 24 24 24 24 24 24 24 25 25 25 25 25 25 -1900: 26 26 25 25 25 25 25 25 25 24 24 24 24 24 24 24 -1910: 26 26 26 25 26 25 25 25 25 24 24 24 24 24 24 24 -1920: 26 26 26 25 26 25 25 25 25 24 24 24 24 24 24 24 -1930: 25 25 25 25 25 24 24 24 24 24 24 24 24 24 24 24 -1940: 26 26 26 26 25 24 25 25 25 24 24 24 24 24 24 24 -1950: 26 26 26 26 26 24 25 25 25 24 24 24 24 24 24 24 -1960: 26 26 26 26 26 24 25 25 24 24 24 24 24 24 24 24 -1970: 25 25 25 25 24 24 24 24 24 24 24 24 24 24 24 24 -1980: 25 26 26 26 25 25 25 24 24 24 24 24 24 24 24 24 -1990: 26 26 26 26 25 25 25 24 24 24 24 24 24 24 24 24 -19a0: 26 26 26 26 26 25 24 24 24 24 24 24 24 24 24 24 -19b0: 25 25 25 25 25 24 24 24 24 24 24 24 24 24 24 24 -19c0: 25 25 25 26 26 25 25 25 25 24 24 24 24 24 24 24 -19d0: 26 25 26 26 26 25 25 25 25 24 24 24 24 24 24 24 -19e0: 26 25 26 26 26 25 25 25 24 24 24 24 24 24 24 24 -19f0: 25 25 25 25 25 24 24 24 24 24 24 24 24 24 24 24 -1a00: 24 24 24 24 24 25 25 25 25 25 26 25 25 26 26 26 -1a10: 24 24 24 24 25 25 25 25 25 25 25 25 26 26 26 26 -1a20: 24 24 24 24 25 25 25 25 25 25 24 24 25 26 26 26 -1a30: 24 24 24 24 24 24 24 24 24 24 24 24 24 25 25 25 -1a40: 24 24 24 24 24 24 25 25 25 25 25 25 25 24 26 26 -1a50: 24 24 24 24 24 24 24 25 25 25 25 25 25 24 25 25 -1a60: 24 24 24 24 24 24 24 25 25 25 25 25 24 24 24 25 -1a70: 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 -1a80: 24 24 24 24 24 24 24 24 25 25 25 25 25 25 24 24 -1a90: 24 24 24 24 24 24 24 24 25 25 25 25 25 25 25 24 -1aa0: 24 24 24 24 24 24 24 24 24 24 25 25 25 25 25 24 -1ab0: 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 -1ac0: 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 -1ad0: 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 -1ae0: 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 -1af0: 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 -1b00: 26 26 25 25 25 26 26 26 26 26 26 25 25 26 26 26 -1b10: 26 26 26 25 26 26 26 26 26 26 26 25 26 26 26 26 -1b20: 26 26 26 25 26 26 26 26 26 26 25 25 25 26 26 26 -1b30: 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 -1b40: 26 26 26 26 25 25 26 26 26 26 26 26 26 25 26 25 -1b50: 25 25 25 25 25 24 25 25 25 25 25 25 25 24 25 25 -1b60: 25 25 25 25 25 24 25 25 25 25 25 25 24 24 24 25 -1b70: 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 -1b80: 24 25 25 25 25 25 25 24 25 25 25 25 25 25 24 24 -1b90: 25 25 25 25 25 25 25 24 25 25 25 25 25 25 25 24 -1ba0: 25 25 25 25 25 25 24 24 24 24 25 25 25 25 25 24 -1bb0: 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 -1bc0: 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 -1bd0: 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 -1be0: 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 -1bf0: 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 -1c00: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 -1c10: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 -1c20: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 -1c30: 01 01 01 01 01 1b 1b 1b 1b 1b 1b 01 01 01 01 01 -1c40: 01 01 01 01 01 1b 01 01 01 01 1b 01 01 01 01 01 -1c50: 01 01 01 01 01 01 01 01 01 01 1b 01 01 01 01 01 -1c60: 01 01 01 01 01 01 01 01 01 01 1b 01 01 01 01 01 -1c70: 01 01 01 01 01 01 01 01 01 1b 1b 01 01 01 01 01 -1c80: 01 01 01 01 01 01 01 01 1b 1b 01 01 01 01 01 01 -1c90: 01 01 01 01 01 01 01 1b 1b 01 01 01 01 01 01 01 -1ca0: 01 01 01 01 01 01 01 1b 01 01 01 01 01 01 01 01 -1cb0: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 -1cc0: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 -1cd0: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 -1ce0: 01 01 01 01 01 01 01 1b 01 01 01 01 01 01 01 01 -1cf0: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 -1d00: 01 01 01 01 01 01 01 1b 1b 1b 01 01 01 01 01 01 -1d10: 01 01 01 01 01 01 1b 1b 1b 1b 1b 01 01 01 01 01 -1d20: 01 01 01 01 01 1b 1b 1b 1b 1b 1b 1b 01 01 01 01 -1d30: 01 01 01 01 01 1b 1b 1b 1b 1b 1b 1b 01 01 01 01 -1d40: 01 01 01 01 01 1b 1b 1b 1b 1b 1b 1b 01 01 01 01 -1d50: 01 01 01 01 01 1b 1b 1b 1b 1b 1b 1b 01 01 01 01 -1d60: 01 01 01 01 01 1b 1b 1b 1b 1b 1b 1b 01 01 01 01 -1d70: 01 01 01 01 01 01 1b 1b 1b 1b 1b 01 01 01 01 01 -1d80: 01 01 01 01 01 01 1b 1b 1b 1b 1b 01 01 01 01 01 -1d90: 01 01 01 01 01 01 01 1b 1b 1b 01 01 01 01 01 01 -1da0: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 -1db0: 01 01 01 01 01 01 01 1b 1b 1b 01 01 01 01 01 01 -1dc0: 01 01 01 01 01 01 1b 1b 1b 1b 1b 01 01 01 01 01 -1dd0: 01 01 01 01 01 01 1b 1b 1b 1b 1b 01 01 01 01 01 -1de0: 01 01 01 01 01 01 1b 1b 1b 1b 1b 01 01 01 01 01 -1df0: 01 01 01 01 01 01 01 1b 1b 1b 01 01 01 01 01 01 -1e00: 09 09 09 08 08 09 09 09 09 09 09 09 08 08 09 09 -1e10: 09 08 08 08 09 09 08 08 07 09 09 08 08 07 07 07 -1e20: 09 08 07 07 09 08 08 07 07 06 09 08 08 07 07 09 -1e30: 08 08 07 06 08 08 08 07 07 06 09 08 07 07 08 09 -1e40: 07 06 06 08 06 06 07 07 07 06 06 08 07 08 08 08 -1e50: 06 08 08 08 08 06 06 07 06 06 08 06 08 08 08 07 -1e60: 08 07 07 08 08 08 06 06 06 08 08 07 06 07 07 07 -1e70: 06 06 07 07 07 08 08 06 08 08 07 07 06 06 06 06 -1e80: 24 24 06 07 07 07 06 07 07 07 07 06 06 24 24 24 -1e90: 24 24 24 06 06 06 06 06 07 06 06 24 24 24 24 24 -1ea0: 24 24 24 24 24 24 24 24 06 24 24 24 24 24 24 24 -1eb0: 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 -1ec0: 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 -1ed0: 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 -1ee0: 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 -1ef0: 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 -1f00: 0e 0e 0e 0e 0e 0e 0e 0e 0e 0e 0e 0e 0e 0e 0e 0e -1f10: 0d 0e 0e 0e 0e 0e 0e 0e 0e 0e 0e 0e 0e 0e 0e 0d -1f20: 0d 0d 0d 0e 12 12 12 12 12 12 12 12 0e 0d 0d 0d -1f30: 0d 0d 13 0d 0e 12 12 12 12 12 12 0e 0d 13 0d 0d -1f40: 0d 0d 12 13 0d 0e 12 12 12 12 0e 0d 13 12 0d 0d -1f50: 0d 0d 12 12 13 0d 0e 12 12 0e 0d 13 12 12 0d 0d -1f60: 0d 0d 12 12 12 13 0d 0e 0e 0d 13 12 12 12 0d 0d -1f70: 0d 0d 12 12 12 12 13 0d 0d 13 12 12 12 12 0d 0d -1f80: 0d 0d 12 12 12 12 0e 0d 0d 0e 12 12 12 12 0d 0d -1f90: 0d 0d 12 12 12 0e 0d 13 13 0d 0e 12 12 12 0d 0d -1fa0: 0d 0d 12 12 0e 0d 13 12 12 13 0d 0e 12 12 0d 0d -1fb0: 0d 0d 12 0e 0d 13 12 12 12 12 13 0d 0e 12 0d 0d -1fc0: 0d 0d 0e 0d 13 12 12 12 12 12 12 13 0d 0e 0d 0d -1fd0: 0d 0d 0d 13 12 12 12 12 12 12 12 12 13 0d 0d 0d -1fe0: 0d 13 13 13 13 13 13 13 13 13 13 13 13 13 13 0d -1ff0: 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 -2000: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 -2010: 01 01 2d 2d 2d 2d 2d 01 01 01 2d 2d 2d 01 01 01 -2020: 01 01 01 01 2d 01 01 01 01 2d 01 01 01 2d 01 01 -2030: 01 01 01 01 2d 01 01 01 01 2d 01 01 01 2d 01 01 -2040: 01 01 01 01 2d 01 01 01 01 2d 01 01 01 2d 01 01 -2050: 01 01 01 01 2d 01 01 01 01 2d 01 01 01 2d 01 01 -2060: 01 01 01 01 2d 01 01 01 01 01 2d 2d 2d 01 01 01 -2070: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 -2080: 01 01 2d 2d 2d 2d 01 01 01 01 2d 2d 2d 01 01 01 -2090: 01 01 2d 01 01 01 2d 01 01 2d 01 01 01 2d 01 01 -20a0: 01 01 2d 01 01 01 2d 01 01 2d 01 01 01 2d 01 01 -20b0: 01 01 2d 01 01 01 2d 01 01 2d 01 01 01 2d 01 01 -20c0: 01 01 2d 01 01 01 2d 01 01 2d 01 01 01 2d 01 01 -20d0: 01 01 2d 2d 2d 2d 01 01 01 01 2d 2d 2d 01 01 01 -20e0: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 -20f0: 01 01 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 01 -2100: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 -2110: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 -2120: 01 01 01 01 01 01 17 17 17 17 01 01 01 01 01 01 -2130: 01 01 01 01 17 17 17 17 17 17 17 17 01 01 01 01 -2140: 01 01 01 17 17 17 16 17 16 17 17 17 17 01 01 01 -2150: 01 01 01 17 17 17 15 15 15 15 17 17 17 01 01 01 -2160: 01 01 17 17 17 15 16 17 16 17 17 17 17 17 01 01 -2170: 01 01 17 17 17 15 16 17 16 17 17 17 17 17 01 01 -2180: 01 01 17 17 17 15 16 17 16 17 17 17 17 17 01 01 -2190: 01 01 17 17 17 15 16 17 16 17 17 17 17 17 01 01 -21a0: 01 01 01 17 17 17 15 15 15 15 17 17 17 01 01 01 -21b0: 01 01 01 17 17 17 16 17 16 17 17 17 17 01 01 01 -21c0: 01 01 01 01 17 17 17 17 17 17 17 17 01 01 01 01 -21d0: 01 01 01 01 01 01 17 17 17 17 01 01 01 01 01 01 -21e0: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 -21f0: 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 -- cgit v1.2.3 From 635f67120132f840c825b9f9b5f4fdf2a6f250ef Mon Sep 17 00:00:00 2001 From: UnavailableDev <69792062+UnavailableDev@users.noreply.github.com> Date: Fri, 10 Mar 2023 16:42:33 +0100 Subject: removed TODO --- test/bin/test_file_read.c | 2 -- 1 file changed, 2 deletions(-) diff --git a/test/bin/test_file_read.c b/test/bin/test_file_read.c index 6357feb..e9ece4d 100644 --- a/test/bin/test_file_read.c +++ b/test/bin/test_file_read.c @@ -16,8 +16,6 @@ void printData(uint8_t* in) { } void hh_ppu_load_tilemap() { - - //TODO: lees bestand in mem char* filename = "tiles.bin"; FILE* fp = fopen(filename,"rb"); if (!fp){ -- cgit v1.2.3 From 877ac831461f35d00e0e0ab7d6afbe93768fc7c6 Mon Sep 17 00:00:00 2001 From: UnavailableDev <69792062+UnavailableDev@users.noreply.github.com> Date: Fri, 10 Mar 2023 16:42:59 +0100 Subject: Update test_file_read.c --- test/bin/test_file_read.c | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/test/bin/test_file_read.c b/test/bin/test_file_read.c index e9ece4d..b3357ce 100644 --- a/test/bin/test_file_read.c +++ b/test/bin/test_file_read.c @@ -28,10 +28,7 @@ void hh_ppu_load_tilemap() { // printf("%i",_size); for (int i = 0; i < _size; i++) { uint8_t data[HH_PPU_VRAM_TMM_SPRITE_SIZE]; - // for (int i = 0; i < 255; i++) { - // buffer[i] = 0; //TODO: vullen - fread(data,HH_PPU_VRAM_TMM_SPRITE_SIZE,1,fp); - // } + fread(data,HH_PPU_VRAM_TMM_SPRITE_SIZE,1,fp); printData(data); } -- cgit v1.2.3