There is a progressing line of dots at the Doom 2 game start. I am curious of what it indicates actually. Are these tests?
-
1Can you include a screenshot?– Timmy Jim ♦Jun 12, 2017 at 23:59
-
4Does it honestly matter? It's a DOS progress bar. What else is it supposed to mean?– FrankJun 13, 2017 at 0:42
-
There is similar thing in python tests. I was wandering whether it is a historical feature or something.– Sashko LykhenkoJun 13, 2017 at 0:59
2 Answers
This is a bit of a speculation as I don't have the game on-hand to check it's code. But there's a number of things to take away from this screenshot:
The game (Doom and Doom2) were built to support DOS. As such, it's possible there's files that the game needs to unpack before loading.
Since the game is running in DOS, in theory there's not much else to identify if the program is loading without debugging tools. DOS programs cannot run in the background, but can live in memory as a Daemon. As such, all loading has to be done upfront, including adding daemons to memory. (Credit to antipattern for this better explanation.)
If we add this up, launching Doom 2 would be taxning to a usual MSDOS system at the time. From some of the comments I've seen (*) , it looks like this part of the process is related to graphics as the game loads a service for refreshing the screen. (Or keeping the refresh rate stable, I'm not 100% sure on this.)
Since this process is time consuming, it would be good UX to give the user some sort of sign that the system isn't frozen and still processing the information. As such, using dots as a loading/activity bar is useful. (Here's an example on how to make a loading bar, and a script that makes one similar to the one on the screenshot.)
Hopefully, someone else can take a deeper drive as to what's going on. I hope this at least provides some context to the origins of the design.
/*/ - Some of the forums I've found on this topic are still around, but not something I would want to link to directly. Searching for "doom 2 refresh daemon" got me the answers I was looking for.
-
1DOS was not a multitasking OS. It offered memory-resident programs but no "background programs". It was merely that a certain codebase was in-memory, ready to be called by whatever application is currently executing. Also it could be called by Interrupts, but that meant that the current application was paused inbetween. Jun 20, 2017 at 0:03
It's a progress bar - back then this part of loading the game took some time, and it's important to show some "movement" so that users don't think that the game has crashed.
IIRC on a 386 it took something like half a minute to start up? Hard to tell, that was a long time ago.