Was it sort of a write-once, run everywhere thing? So they can reuse the game code on various platforms?
Was it sort of a write-once, run everywhere thing? So they can reuse the game code on various platforms?
Or, worse, writing every bit of your game in assembly. (Worse in the sense of time consumed. In the sense of fun had, the VM approach takes some of that away ;)
I previously reversed another game engine called Comprehend (for 1980s text/graphical adventure games) which also had a VM. I ended up talking with one of the original developers, who said that portability was a major reason. Their company wrote the original Apple 2 implementation, and then contracted development for the other platforms out, so they just provided specs for the VM. The Lost Vikings development may have been similar.
In the Lost Vikings the VM implementation was almost certainly written in assembler. There are various tricks used in the binary which I don't think compilers of the day were capable of. The other parts of the game also appear to have probably been written in assembler, which I think is interesting since it was developed quite late in the DOS era.
Wikipedia mentions is was available on the following platforms: Amiga, Amiga CD32, Game Boy Advance, MS-DOS, Mega Drive/Genesis, Super NES, PlayStation