diff --git a/src/conio/sdl_con.c b/src/conio/sdl_con.c
index 6d4b6ee1c71daaf2ce0c899d21ddaa5e629b4fe8..3e921aec08bf451559b88ed04a5d72dcd136c6bb 100644
--- a/src/conio/sdl_con.c
+++ b/src/conio/sdl_con.c
@@ -258,8 +258,8 @@ static int sdl_user_func_ret(int func, ...)
 	while(1) {
 		switch(func) {
 			case SDL_USEREVENT_SETVIDMODE:
-				ev.user.data1 = NULL + va_arg(argptr, int);
-				ev.user.data2 = NULL + va_arg(argptr, int);
+				ev.user.data1 = (void *)va_arg(argptr, int);
+				ev.user.data2 = (void *)va_arg(argptr, int);
 				while(sdl.PeepEvents(&ev, 1, SDL_ADDEVENT, SDL_FIRSTEVENT, SDL_LASTEVENT)!=1)
 					YIELD();
 				break;