X-Git-Url: https://git.jsancho.org/?a=blobdiff_plain;f=src%2Fsdl.c;h=4fba1ff41ae828064bf39f64dccbfc75e73cd053;hb=2eee3eb546a25305d548fcb331769be84fd3a38f;hp=b46a5521d6b9d73ea6e441fe2e1c7e4bd80589a2;hpb=905abebe9a3b80a9ae2723024c6df8a728076157;p=gacela.git diff --git a/src/sdl.c b/src/sdl.c index b46a552..4fba1ff 100644 --- a/src/sdl.c +++ b/src/sdl.c @@ -176,6 +176,12 @@ gacela_SDL_WM_SetCaption (SCM title, SCM icon) return SCM_UNSPECIFIED; } +SCM +gacela_SDL_WM_ToggleFullScreen(SCM surface) +{ + return scm_from_int (SDL_WM_ToggleFullScreen (get_surface_address (surface))); +} + SCM gacela_SDL_Flip (SCM screen) { @@ -195,6 +201,12 @@ gacela_SDL_GetTicks (void) return scm_from_int (SDL_GetTicks ()); } +SCM +gacela_SDL_GetError (void) +{ + return scm_from_locale_string (SDL_GetError ()); +} + SCM gacela_SDL_DisplayFormat (SCM surface) { @@ -274,8 +286,8 @@ gacela_SDL_GetVideoInfo (void) info = SDL_GetVideoInfo (); vi = scm_list_n (SCM_UNDEFINED); - vi = scm_cons (scm_cons (scm_from_locale_symbol ("blit_hw"), scm_from_int (info->blit_hw)), vi); - vi = scm_cons (scm_cons (scm_from_locale_symbol ("hw_available"), scm_from_int (info->hw_available)), vi); + vi = scm_cons (scm_cons (scm_from_utf8_symbol ("blit_hw"), scm_from_int (info->blit_hw)), vi); + vi = scm_cons (scm_cons (scm_from_utf8_symbol ("hw_available"), scm_from_int (info->hw_available)), vi); return vi; } @@ -498,9 +510,11 @@ init_gacela_sdl (void *data) scm_c_define_gsubr ("SDL_SetVideoMode", 4, 0, 0, gacela_SDL_SetVideoMode); scm_c_define_gsubr ("SDL_FreeSurface", 1, 0, 0, gacela_SDL_FreeSurface); scm_c_define_gsubr ("SDL_WM_SetCaption", 2, 0, 0, gacela_SDL_WM_SetCaption); + scm_c_define_gsubr ("SDL_WM_ToggleFullScreen", 1, 0, 0, gacela_SDL_WM_ToggleFullScreen); scm_c_define_gsubr ("SDL_Flip", 1, 0, 0, gacela_SDL_Flip); scm_c_define_gsubr ("SDL_Delay", 1, 0, 0, gacela_SDL_Delay); scm_c_define_gsubr ("SDL_GetTicks", 0, 0, 0, gacela_SDL_GetTicks); + scm_c_define_gsubr ("SDL_GetError", 0, 0, 0, gacela_SDL_GetError); scm_c_define_gsubr ("SDL_DisplayFormat", 1, 0, 0, gacela_SDL_DisplayFormat); scm_c_define_gsubr ("SDL_DisplayFormatAlpha", 1, 0, 0, gacela_SDL_DisplayFormatAlpha); scm_c_define_gsubr ("SDL_MapRGB", 4, 0, 0, gacela_SDL_MapRGB);