Hi Eero,
I finally recorded a demo against a sensible revision of the game code, using map15 from Doom2.
You can find the demo file here:
BadMood/autoprofile/wads/d2m15.lmp
To run the demo just use:
-timedemo d2m15
It's not great - I didn't finish the level. Partly because you can't cheat when recording demos

and partly because I forgot which key I bound for 'run' so I couldn't make a critical jump. Gave up after trying a couple of times heh!
I made some changes to the game code before making the recording. The original code stores 8-bit angles for demo replay, and is careful to record them then immediately replay them - while you play the game. This is because it quantizes the player angle quite a lot, and causes the view to snap quite badly. I didn't really notice this before with Doom but I think all old versions do it. IMO it looks awful and makes gameplay more difficult so I fixed it to record the full 16bits so its nice and smooth.
I also restored 8-bit bools, vs 32-bit. Don't know if it helps performance but it's unlikely to hurt.
I mention both of these things, because demo compatibility depends on them. Change them and the demos will stop working. I don't plan to change these again so hopefully demos recorded from now onwards will be ok.
[EDIT]
BTW for whatever reason, I saw *no* evidence of the slowdown thing happening while recording the demo. I did recently delete the BMC cache and start from scratch - not sure if that has something to do with it. Or it could be specific to the super-shotgun, which I tend to use when I cheat (and didn't find while recording).
I might have to find another level where the SS is easy to collect in case it is related.
The SS fires lots of pellets and makes lots of puff sprites on the target. Maybe these are involved - I don't know.
The demo recorded pretty smoothly and replays the same. :-z