pouët.net

IDEA: DemoVM

category: general [glöplog]
 
I really loved the oldskool demos back in the pre-1995s. However they were "real" DOS demos were programmed in assembly/C and used EMS/XMS, etc.

I've tried running some demos under DOSBox and they worked. However they ran really slow, more like slide-shows. This is because DOSBox is emulating the hardware for a 486 and soundcards.

Am thinking whether it be possible to create/develop a Virtual Machine specifically to running old-skool PC demos. A virtual machine that can interpret the assembly/low-level-C-code and do some on-the-fly/just-in-time translation for "todays" PCs running under WinXP, etc.

PS: PC demos as in the scene.org demos (
ftp://hornet.madtracker.org/mirrors/hornet/demos/1995/s/solstice.zip
and it's patch update
ftp://hornet.madtracker.org/mirrors/hornet/demos/1996/s/solfix.zip
)
added on the 2005-03-31 09:35:55 by kevingpo kevingpo
Maybe tweaking Qemu might help not to start from scratch completely?

Anyways, getting yourself a Pentium with GUS and ET6000 on Ebay or from some friend would be quicker and less pointless.
added on the 2005-03-31 10:18:54 by dixan dixan
i believe a guy called 'malc' made something very close to your "DemoVM" about a year ago or so. only runs on linux though.

google gave me this and this.

(server seems down, so using google cached).
added on the 2005-03-31 11:07:35 by skrebbel skrebbel
I would agree for a OpenSource project like this, which can be compiled on a Mac platform. Since not all Demos run on VPC!
added on the 2005-04-01 02:47:18 by Exin Exin
2 things: 2 sceners got GUS cards from sceners not using them at Breakpoint. (Which RULED, thanks a million, can't wait to USE it.)

part 2:
I believe the TBL things like jizz and so on run in a virtual machine. At least if you go to the libsdl part, you can find the bit that allows it to run on modern OS's (like FreeBSD, which I ran them on a few years ago.)

Obviosuly that only works for TBL but.
Kevingpo, the speed is due to an interpreter for x86 emulation - which so far has been a good thing, since some people want to watch stuff on an Apple or some other weird piece of high-preformance metal.

Obviously, the DOSBox crew is wishing to improve the emulation speed, to be able to run more recent stuff. However, as i proposed to replace the interreter by a sort-of x86-specific partial recompiler - which would be quite simple, mostly needing to patch away incompatible instructions and adjust jump targets to fit - they objected on the grounds that they wanted to stay compatible to all major executing CPUs.

They had pointed my nose onto QEMU and said: "this is our future". So, have patience, or help them embedding QEMU, which would obviously provide for a performance orders of magnitude better.

Of course, by my arrogance and lack of time, I rather advocate the way that has been taken all along: get a faster computer, you can use the extra performance anyway.
added on the 2005-04-01 21:10:39 by eye eye

login