diff --git a/groups/231.native_packages_etc.group b/groups/231.native_packages_etc.group
index ac3e462..e02dbff 100644
--- a/groups/231.native_packages_etc.group
+++ b/groups/231.native_packages_etc.group
@@ -8,7 +8,7 @@ dosbox doomgeneric emacs enscript expat ffmpeg file gdbm geoip gettext_tiny ghos
 giflib gnuchess graphicsmagick gzip hastyhex hexcurse hexer htop icoutils imagemagick infounzip infozip
 john lbreakout2 lcms2 less libmetalink lolcode ltris minizip mintty mlogin musl_compat musl_fts ncdu
 ncurses ncursestw ncursesw npth openjazz openjpeg p7zip pcre pcre2 php popt potrace procps_ng qemu
-qpdf qrencode rpm rw shared_mime_info slang sqlite3 tcl tdnf texinfo
+qpdf qrencode rpm rw sdlquake shared_mime_info slang sqlite3 tcl tdnf texinfo
 tiff tmux tzdb utf8proc util_linux vim vorbis_tools w32api w32lib xorriso xpdf xz yabasic
 zstd")";
 : ${PKG_ALSA_LIB_SHA256SUM:=3cdc3a93a6427a26d8efab4ada2152e64dd89140d981f6ffa003e85be707aedf};
@@ -429,6 +429,11 @@ ac_cv_write_stdout=yes"};
 : ${PKG_RW_VERSION:=1.0};
 : ${PKG_RW_URL:=https://sortix.org/rw/release/rw-portable-${PKG_RW_VERSION}.tar.gz}
 : ${PKG_RW_BUILD_DIR:=rw-portable-${PKG_RW_VERSION}};
+: ${PKG_SDLQUAKE_DEPENDS:="sdl1"};
+: ${PKG_SDLQUAKE_SHA256SUM:=097882b4613c87303dd068c41c95e77675da790cab63c7b440e70643d1741035};
+: ${PKG_SDLQUAKE_VERSION:=1.0.9};
+: ${PKG_SDLQUAKE_URL:=http://www.libsdl.org/projects/quake/src/sdlquake-${PKG_SDLQUAKE_VERSION}.tar.gz};
+: ${PKG_SDLQUAKE_CONFIGURE_ARGS:="--host=${DEFAULT_TARGET} --target=${DEFAULT_TARGET} --with-sdl-prefix=${PREFIX_NATIVE}"};
 : ${PKG_SHARED_MIME_INFO_DEPENDS:="glib libxml2"};
 : ${PKG_SHARED_MIME_INFO_SHA256SUM:=2af55ef1a0319805b74ab40d331a3962c905477d76c086f49e34dc96363589e9};
 : ${PKG_SHARED_MIME_INFO_VERSION:=1.8};
diff --git a/patches/sdlquake-1.0.9.local.patch b/patches/sdlquake-1.0.9.local.patch
new file mode 100644
index 0000000..b3f223b
--- /dev/null
+++ b/patches/sdlquake-1.0.9.local.patch
@@ -0,0 +1,25 @@
+diff -ru sdlquake-1.0.9.orig/draw.c sdlquake-1.0.9/draw.c
+--- sdlquake-1.0.9.orig/draw.c	1999-12-22 00:53:24.000000000 +0100
++++ sdlquake-1.0.9/draw.c	2021-08-26 20:17:34.381572611 +0200
+@@ -557,6 +557,9 @@
+ #elif defined(__linux__)
+ 	sprintf (ver, "(Linux Quake %2.2f) %4.2f", (float)LINUX_VERSION, (float)VERSION);
+ 	dest = conback->data + 320*186 + 320 - 11 - 8*strlen(ver);
++#elif defined(__midipix__)
++	sprintf (ver, "(Midipix Quake) %4.2f", (float)VERSION);
++	dest = conback->data + 320*186 + 320 - 11 -8*strlen(ver);
+ #else
+ 	dest = conback->data + 320 - 43 + 320*186;
+ 	sprintf (ver, "%4.2f", VERSION);
+diff -ru sdlquake-1.0.9.orig/net.h sdlquake-1.0.9/net.h
+--- sdlquake-1.0.9.orig/net.h	1999-12-22 00:54:20.000000000 +0100
++++ sdlquake-1.0.9/net.h	2021-08-26 20:15:24.072736300 +0200
+@@ -238,7 +238,7 @@
+ extern int hostCacheCount;
+ extern hostcache_t hostcache[HOSTCACHESIZE];
+ 
+-#if !defined(_WIN32 ) && !defined (__linux__) && !defined (__sun__)
++#if !defined(_WIN32 ) && !defined (__linux__) && !defined(__midipix__) && !defined (__sun__)
+ #ifndef htonl
+ extern unsigned long htonl (unsigned long hostlong);
+ #endif
diff --git a/patches/sdlquake-1.0.9_pre.local.patch b/patches/sdlquake-1.0.9_pre.local.patch
new file mode 100644
index 0000000..f00d3a5
--- /dev/null
+++ b/patches/sdlquake-1.0.9_pre.local.patch
@@ -0,0 +1,35 @@
+diff -ru sdlquake-1.0.9.orig/configure sdlquake-1.0.9/configure
+--- sdlquake-1.0.9.orig/configure       1999-12-28 19:54:25.000000000 +0100
++++ sdlquake-1.0.9/configure    2021-08-26 20:37:08.560929386 +0200
+@@ -1271,8 +1271,8 @@
+   if test "$SDL_CONFIG" = "no" ; then
+     no_sdl=yes
+   else
+-    SDL_CFLAGS=`$SDL_CONFIG $sdlconf_args --cflags`
+-    SDL_LIBS=`$SDL_CONFIG $sdlconf_args --libs`
++    SDL_CFLAGS=`$PKG_CONFIG --cflags sdl`
++    SDL_LIBS=`$PKG_CONFIG --libs sdl`
+
+     sdl_major_version=`$SDL_CONFIG $sdl_args --version | \
+            sed 's/\([0-9]*\).\([0-9]*\).\([0-9]*\)/\1/'`
+diff -ru sdlquake-1.0.9.orig/Makefile.in sdlquake-1.0.9/Makefile.in
+--- sdlquake-1.0.9.orig/Makefile.in	1999-12-28 20:16:53.000000000 +0100
++++ sdlquake-1.0.9/Makefile.in	2021-08-26 20:12:02.680734842 +0200
+@@ -74,7 +74,7 @@
+ 
+ sdlquake_LDADD = @MATHLIB@ @INETLIB@
+ 
+-sdlquake_SOURCES =  	adivtab.h			anorm_dots.h			anorms.h			asm_draw.h			asm_i386.h			block16.h			block8.h			bspfile.h			cd_sdl.c			cdaudio.h			chase.c				cl_demo.c			cl_input.c			cl_main.c			cl_parse.c			cl_tent.c			clean.bat			client.h			cmd.c				cmd.h				common.c			common.h			conproc.h			console.c			console.h			crc.c				crc.h				cvar.c				cvar.h				d_copy.S			d_edge.c			d_fill.c			d_iface.h			d_ifacea.h			d_init.c			d_local.h			d_modech.c			d_part.c			d_polyse.c			d_scan.c			d_sky.c				d_sprite.c			d_surf.c			d_zpoint.c			dosasm.S			dosisms.h			draw.c				draw.h				host.c				host_cmd.c			input.h				keys.c				keys.h				mathlib.c			mathlib.h			menu.c				menu.h				model.c				model.h				modelgen.h			mpdosock.h			net.h				net_bsd.c			net_bw.h			net_dgrm.c			net_dgrm.h			net_loop.c			net_loop.h			net_main.c			net_udp.c			net_udp.h			net_vcr.c			net_vcr.h			net_wso.c			pr_cmds.c			pr_comp.h			pr_edict.c			pr_exec.c			progdefs.h			progs.h				protocol.h			quakeasm.h			quakedef.h			r_aclip.c			r_alias.c			r_bsp.c				r_draw.c			r_edge.c			r_efrag.c			r_light.c			r_local.h			r_main.c			r_misc.c			r_part.c			r_shared.h			r_sky.c				r_sprite.c			r_surf.c			r_vars.c			r_varsa.S			render.h			resource.h			sbar.c				sbar.h				scitech				screen.c			screen.h			server.h			snd_dma.c			snd_mem.c			snd_mix.c			snd_sdl.c			sound.h				spritegn.h			sv_main.c			sv_move.c			sv_phys.c			sv_user.c			sys.h				sys_sdl.c			vgamodes.h			vid.h				vid_sdl.c			view.c				view.h				wad.c				wad.h				winquake.h			world.c				world.h				zone.c				zone.h				$(X86_SRCS) $(NONX86_SRCS)
++sdlquake_SOURCES =  	adivtab.h			anorm_dots.h			anorms.h			asm_draw.h			asm_i386.h			block16.h			block8.h			bspfile.h			cd_sdl.c			cdaudio.h			chase.c				cl_demo.c			cl_input.c			cl_main.c			cl_parse.c			cl_tent.c			clean.bat			client.h			cmd.c				cmd.h				common.c			common.h			conproc.h			console.c			console.h			crc.c				crc.h				cvar.c				cvar.h						d_edge.c			d_fill.c			d_iface.h			d_ifacea.h			d_init.c			d_local.h			d_modech.c			d_part.c			d_polyse.c			d_scan.c			d_sky.c				d_sprite.c			d_surf.c			d_zpoint.c			dosasm.S			dosisms.h			draw.c				draw.h				host.c				host_cmd.c			input.h				keys.c				keys.h				mathlib.c			mathlib.h			menu.c				menu.h				model.c				model.h				modelgen.h			mpdosock.h			net.h				net_bsd.c			net_bw.h			net_dgrm.c			net_dgrm.h			net_loop.c			net_loop.h			net_main.c			net_udp.c			net_udp.h			net_vcr.c			net_vcr.h			net_wso.c			pr_cmds.c			pr_comp.h			pr_edict.c			pr_exec.c			progdefs.h			progs.h				protocol.h			quakeasm.h			quakedef.h			r_aclip.c			r_alias.c			r_bsp.c				r_draw.c			r_edge.c			r_efrag.c			r_light.c			r_local.h			r_main.c			r_misc.c			r_part.c			r_shared.h			r_sky.c				r_sprite.c			r_surf.c			r_vars.c			r_varsa.S			render.h			resource.h			sbar.c				sbar.h				scitech				screen.c			screen.h			server.h			snd_dma.c			snd_mem.c			snd_mix.c			snd_sdl.c			sound.h				spritegn.h			sv_main.c			sv_move.c			sv_phys.c			sv_user.c			sys.h				sys_sdl.c			vgamodes.h			vid.h				vid_sdl.c			view.c				view.h				wad.c				wad.h				winquake.h			world.c				world.h				zone.c				zone.h				 $(NONX86_SRCS)
+ 
+ 
+ X86_SRCS =  	snd_mixa.S			sys_dosa.S			d_draw.S			d_draw16.S			d_parta.S			d_polysa.S			d_scana.S			d_spr8.S			d_varsa.S			math.S				r_aclipa.S			r_aliasa.S			r_drawa.S			r_edgea.S			surf16.S			surf8.S				worlda.S
+@@ -117,7 +117,7 @@
+ LDFLAGS = @LDFLAGS@
+ LIBS = @LIBS@
+ sdlquake_OBJECTS =  cd_sdl.o chase.o cl_demo.o cl_input.o cl_main.o \
+-cl_parse.o cl_tent.o cmd.o common.o console.o crc.o cvar.o d_copy.o \
++cl_parse.o cl_tent.o cmd.o common.o console.o crc.o cvar.o \
+ d_edge.o d_fill.o d_init.o d_modech.o d_part.o d_polyse.o d_scan.o \
+ d_sky.o d_sprite.o d_surf.o d_zpoint.o dosasm.o draw.o host.o \
+ host_cmd.o keys.o mathlib.o menu.o model.o net_bsd.o net_dgrm.o \