you will also need to duplicate data/gfx32/*.png to data/gfx16/ scaled down 50%, I used imagemagick convert to do this:
cd data/gfx32; for i in *.png; do echo $i; convert -resize 50% $i ../gfx16/$i; done
And then 320x240 will be playable, if not pretty. Some of the textual screens (credits, help) have not been resized yet, but that is inconsequential to gameplay. More importantly, and the reason I ask for help here, is that I cannot actually get the game to change into 320x240 mode. It works if I edit my ~/.enigmarc.xml and set my video modes to "-10-", but when I try to change to 320x240 from the options menu i end up back in 640x480. I got lost following all the sdl video mode validation code, so I hope someone here can point out where I went wrong.
PS: some of my methods for deciding when to scale down are inconsistent, because I did not want to use data not already available. I used vminfo.width in most places, but in some places that was lacking while tt/vtt was not.
PPS: I am quite open to suggestions on better ways to handle the conditional scaling.