From 16c4321a569bc442decfdf21c7b4eb5045c55c85 Mon Sep 17 00:00:00 2001 From: fanta Date: Thu, 15 May 2025 00:15:51 +0200 Subject: [PATCH] orden y concierto --- bocm | Bin 17008 -> 17152 bytes bocm.c | 66 +++------------------------------------------ functions.c | 76 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 79 insertions(+), 63 deletions(-) create mode 100644 functions.c diff --git a/bocm b/bocm index e2abc0182ade7a039aa16b29d8ebbeda7c765404..dcbf9924ffab37fc9ed2cf022027f31db56cb006 100755 GIT binary patch delta 1562 zcmZ8gZERCj7(VBAy{x55Z`by=!?2cQGB>)>LCZFkeUQPOSrkl`V4{Y_HVA8Wx6y@R zVm2+QG#zB~D1r&f5=|gR!*cym<-?6(gkNT8%n}v1ADAi_hd{FM;qg7^o@R|Fx$kq{ z^E~gzIp?0mLwF>O$Eu{3r^l!($3-kx?!8JEZ3<#z~hd)n% zn-8_j;9~wH96%oZ3ntD=9tXqKS7#7wR7>3|)l!#BXN+GxKil37T#mB~alp6xZ%R)A zjxADp1@IK$JmA!AN)H2``G?Xa!0UiM*wnT=lr{j~1l$D}x=ZO0;90=qfO)_i;8XV~ zog=p3I=q2|gDTFE4wz4o{-Em5LCpYY3gZcwjKX(@Oav?NMKTRmCJVue;Ve{bW3u+g zooQ+7WAZ`Aic)Y{gaa~s4t%PZm)_t4#;*t7$+|7(_2u|Z;H!XdE#`-o`2zyRN5lK1x&J7|2MowIod5)zHd-` z%h>RoV0Q_Yogy3atd^u8pV#yY_IKWoh0JbL{Z4qxte?GQCL0l=HH^jUxQ%k9;lJF+gKP@yPa2#wrX#$G#3?qz{;Lmi5WdUi%%I^cKNMuXBm;AWV?f-(g z(3&G)stU(?j@;g);w!x94HAr~kv~PzkHi*U7isT_^}oc0@t+AeY=Jh&q*T`JV>9SR z7K%?rWDwS!s2n+4#Daj3(D#WWC|pAWtSg}3A@qd{Xd#mk)&H_!wg0hkvJg>mKhxk5 zLy0!xvV`6pYwLckXU~8>*c;obC-ecMW3z%+#Nzvt1NuSoQp4$$eFO3R@!n*ozDFk$ zvXA&0J@x~8dt>^6PF?Ra);CULW3g%8f}VdWY7$)j&7&6dV`UAxFo$#i+l+^I(>9i?ftd1bjBGw z);V@6S?f!>DA^-vhB1d~`PNp4%NZW2TEble7Db$cwn{>dSK9dHK#&=*C6Md-R zro|SuAT2i}4qVkWfN{QC7i6AKNX-~W@&G4!D8jg)q5=DF{g5~45j27YA=#a|IVv{7 z@@)bAO>=7R3q4PG`i(};nUvj{~(bC5#1AiIe=h2}UD> z;3{EsSkH+-O$h^EiHAOg))J;niX6#BVs68`6kqD@1re2BX5GW94YkZP*@2cax>}Ff zdi3it1kI&Pxq;VMbkmV)*w>j^b;6^x2vu?rG%OoOboC^vE=eKI;4+bP>*|nDv9=@2 zP%WnEDtOBny{q>y0gYu$nKFC0Vsxs$@HikooV%3!3@twk%N zRBPY-F^TSi=ISE*($|Q&;c|5ktp{(g$mR4Jg_qEwH3vDB;xZfv1#G^6p&o>5p>o?m LrNPp{Tb212vgI!V diff --git a/bocm.c b/bocm.c index 48aae5f..b4a16b5 100644 --- a/bocm.c +++ b/bocm.c @@ -1,69 +1,9 @@ #include -#include - -SDL_Window* window; -SDL_Renderer* renderer; -SDL_Surface* surface; -SDL_Texture* texture; -SDL_Event event; -const int screenWidth = 800; -const int screenHeight = 600; - -int throw_sdl_err(const char* fmt) -{ - SDL_LogError( - SDL_LOG_CATEGORY_APPLICATION, - fmt, - SDL_GetError() - ); - return 3; -} - -int initWindow(void){ - if (SDL_Init(SDL_INIT_VIDEO) < 0) { - return throw_sdl_err("Could not init the SDL: %s"); - } - if (SDL_CreateWindowAndRenderer(screenWidth, screenHeight, SDL_WINDOW_OPENGL, &window, &renderer)) { - return throw_sdl_err("Could not create new window and renderer: %s"); - } - return 0; -} - -int loadLogo(void){ - surface = SDL_LoadBMP("imgs/bocm.bmp"); - if (!surface) { - return throw_sdl_err("Could not load BMP image: %s"); - } - texture = SDL_CreateTextureFromSurface(renderer, surface); - if (!texture) { - return throw_sdl_err("Could not create new texture from surface: %s"); - } - SDL_FreeSurface(surface); // free a RGB surface - return 0; -} +#include "functions.c" int main(int argc, char** argv) { - initWindow(); loadLogo(); - - while (1) { - SDL_PollEvent(&event); - if (event.type == SDL_QUIT) { - break; - } // break the loop - - SDL_SetRenderDrawColor(renderer, 255, 0, 0, 255); - SDL_RenderClear(renderer); - SDL_Rect rect = {10, 10, 100, 73}; - SDL_RenderCopy(renderer, texture, NULL, &rect); - SDL_RenderPresent(renderer); - } // window loop - - SDL_DestroyTexture(texture); - SDL_DestroyRenderer(renderer); - SDL_DestroyWindow(window); - - SDL_Quit(); - return 0; + windowLoop(); + destroy(); } diff --git a/functions.c b/functions.c new file mode 100644 index 0000000..6376031 --- /dev/null +++ b/functions.c @@ -0,0 +1,76 @@ +#include + +SDL_Window* window; +SDL_Renderer* renderer; +SDL_Surface* surface; +SDL_Texture* texture; +SDL_Event event; +const int screenWidth = 800; +const int screenHeight = 600; + +int throw_sdl_err(const char* fmt) +{ + SDL_LogError( + SDL_LOG_CATEGORY_APPLICATION, + fmt, + SDL_GetError() + ); + return 3; +} + +int initWindow(void){ + if (SDL_Init(SDL_INIT_VIDEO) < 0) { + return throw_sdl_err("Could not init the SDL: %s"); + } + if (SDL_CreateWindowAndRenderer(screenWidth, screenHeight, SDL_WINDOW_OPENGL, &window, &renderer)) { + return throw_sdl_err("Could not create new window and renderer: %s"); + } + return 0; +} + +int loadLogo(void){ + surface = SDL_LoadBMP("imgs/bocm.bmp"); + if (!surface) { + return throw_sdl_err("Could not load BMP image: %s"); + } + texture = SDL_CreateTextureFromSurface(renderer, surface); + if (!texture) { + return throw_sdl_err("Could not create new texture from surface: %s"); + } + SDL_FreeSurface(surface); + return 0; +} + +int loadBackgroundColor(void){ + SDL_SetRenderDrawColor(renderer, 255, 0, 0, 255); + SDL_RenderClear(renderer); + return 0; +} + +int presentLogo(void){ + SDL_Rect rect = {10, 10, 100, 73}; + SDL_RenderCopy(renderer, texture, NULL, &rect); + SDL_RenderPresent(renderer); + return 0; +} + +int windowLoop(void){ + while (1) { + SDL_PollEvent(&event); + if (event.type == SDL_QUIT) { + break; + } + + loadBackgroundColor(); + presentLogo(); + } + return 0; +} + +int destroy(void){ + SDL_DestroyTexture(texture); + SDL_DestroyRenderer(renderer); + SDL_DestroyWindow(window); + SDL_Quit(); + return 0; +}