diff options
| author | Xavier Del Campo Romero <xavi.dcr@tutanota.com> | 2022-09-27 17:03:06 +0200 |
|---|---|---|
| committer | Xavier Del Campo Romero <xavi.dcr@tutanota.com> | 2022-11-01 16:26:16 +0100 |
| commit | 980858186149651df5543b6fc99a4f7db0cdd089 (patch) | |
| tree | d347200b0a562d84df505097651ad0642f207fdd /src/gfx | |
| parent | 39f50e601d395bbd2d78d0147ac530b756da2fff (diff) | |
| download | jancity-980858186149651df5543b6fc99a4f7db0cdd089.tar.gz | |
WIP
Diffstat (limited to 'src/gfx')
| -rw-r--r-- | src/gfx/inc/gfx.h | 4 | ||||
| -rw-r--r-- | src/gfx/ps1/src/env.c | 15 | ||||
| -rw-r--r-- | src/gfx/sdl-1.2/src/env.c | 17 | ||||
| -rw-r--r-- | src/gfx/sdl-1.2/src/sprite.c | 1 |
4 files changed, 30 insertions, 7 deletions
diff --git a/src/gfx/inc/gfx.h b/src/gfx/inc/gfx.h index 9c4eccd..a6a16bc 100644 --- a/src/gfx/inc/gfx.h +++ b/src/gfx/inc/gfx.h @@ -13,8 +13,10 @@ extern "C" int gfx_init(void); int gfx_draw(void); int gfx_toggle_fullscreen(void); -bool gfx_toggle_fullscreen_available(void); +int gfx_set_fullscreen(short w, short h); +bool gfx_fullscreen_available(void); bool gfx_fullscreen(void); +int gfx_display_size(short *w, short *h); void sprite_sort(struct sprite *s); int sprite_clone(const struct sprite *src, struct sprite *dst); void rect_init(struct rect *r); diff --git a/src/gfx/ps1/src/env.c b/src/gfx/ps1/src/env.c index 41f490e..a373b9c 100644 --- a/src/gfx/ps1/src/env.c +++ b/src/gfx/ps1/src/env.c @@ -38,7 +38,13 @@ int gfx_toggle_fullscreen(void) return -1; } -bool gfx_toggle_fullscreen_available(void) +int gfx_set_fullscreen(const short w, const short h) +{ + /* Not supported. */ + return -1; +} + +bool gfx_fullscreen_available(void) { return false; } @@ -48,6 +54,13 @@ bool gfx_fullscreen(void) return true; } +int gfx_display_size(short *const w, short *const h) +{ + *w = SCREEN_W; + *h = SCREEN_H; + return 0; +} + bool gfx_inside_drawenv(const short x, const short y, const short w, const short h) { diff --git a/src/gfx/sdl-1.2/src/env.c b/src/gfx/sdl-1.2/src/env.c index 27ed55d..4bd174a 100644 --- a/src/gfx/sdl-1.2/src/env.c +++ b/src/gfx/sdl-1.2/src/env.c @@ -102,6 +102,13 @@ SDL_Surface *gfx_screen(void) return screen; } +int gfx_display_size(short *const w, short *const h) +{ + *w = display.w; + *h = display.h; + return 0; +} + int gfx_init(void) { if (SDL_InitSubSystem(SDL_INIT_VIDEO)) @@ -157,13 +164,15 @@ int gfx_toggle_fullscreen(void) const int w = fullscreen ? display.w : windowed.w; const int h = fullscreen ? display.h : windowed.h; - if ((resize_screen(w, h, fullscreen))) - return -1; + return resize_screen(w, h, fullscreen); +} - return 0; +int gfx_set_fullscreen(const short w, const short h) +{ + return resize_screen(display.w = w, display.h = h, fullscreen = true); } -bool gfx_toggle_fullscreen_available(void) +bool gfx_fullscreen_available(void) { return true; } diff --git a/src/gfx/sdl-1.2/src/sprite.c b/src/gfx/sdl-1.2/src/sprite.c index 4c1ecbc..011b2ec 100644 --- a/src/gfx/sdl-1.2/src/sprite.c +++ b/src/gfx/sdl-1.2/src/sprite.c @@ -37,7 +37,6 @@ int sprite_screen_resize_ev(struct sprite *const s) int ret = -1; SDL_Surface *const old = s->s, *const old_x = s->s_x; - /* Magenta as transparent. */ if (s->transparent && (set_transparent(old) || set_transparent(old_x))) goto end; else if (!(s->s = SDL_DisplayFormat(old))) |
