1
0
Fork 0
mirror of https://github.com/dosbox-staging/dosbox-staging synced 2025-12-04 16:27:29 -05:00
1 Instant launch
John Novak edited this page 2023-03-29 20:51:47 +10:00
Table of contents (click to expand)

Introduction

Instant-launch takes place when DOSBox Staging is started with an executable (.bat, .com, or .exe) or directory-mount path provided on its command-line, which skips the introductory logos, banners, and other messages.

Motivations for instant-launch are to fall in-line with all other high-quality emulators that simply "get out of the way and start your game", such as those supported on RetroPie. Also to match the experience in real DOS. When you launch a game from the command prompt, Microsoft does not insert pre-popup fanfare before the game starts up 😉

This feature will eliminate visual redundancy. If the user launches multiple games in short succession, these screens act as unavoidable redundancy to the user's experience.


Usage

DOSBox Staging introduces the startup_verbosity= parameter which can be set from the dosbox-staging.conf file. It's designed to help users to chose a verbosity level.

#  Verbosity   | Splash | Welcome | Early stdout
#  high        |  yes   |   yes   |    yes
#  medium      |  no    |   yes   |    yes
#  low         |  no    |   no    |    yes
#  quiet       |  no    |   no    |    no
#  splash_only |  yes   |   no    |    no
#  auto        | 'low' if exec or dir is passed, otherwise 'high'

Graphically, this translates into:

Level Splash Window Welcome Banner pre-executable stdout Program Display
High Splash Window Welcome Banner pre-executable stdout Program Display
Medium Welcome Banner pre-executable stdout Program Display
Low pre-executable stdout Program Display
Quiet Program Display
Splash Only Splash Window Program Display

[Top]


Frequently asked questions

startup_verbosity=auto is the default value

Starting with DOSBox Staging 0.78 the startup_verbosity= parameter is now being set to auto by default. This value will be equivalent to the high setting if DOSBox Staging was not passed an executable, and to low if it was.

What is pre-executable stdout?

This is non-executable stdout constructed by DOSBox Staging prior to launching an executable or batch file (.bat). For example, even when you give DOSBox Staging a straight executable to launch, ie: dosbox duke1/dn1.exe, it still generates the following stdout which requires setting a graphical text mode window:

pre-executable stdout

Should the verbosity set to quiet, then this output is suppressed prior to the first executable.

How are batch files handled with quiet startup verbosity?

Any output generated by a batch file (.bat) will be shown.

As described above, DOSBox Staging's stdout is suppressed prior to the first executable statement, after which stdout is re-enabled. Batch files are executable, so it's up to the batch file whether it should generate output or not.

To make batch execution quiet, ensure the first line in a batch file is: @echo off, which instructs DOS not to print each line in the file.

Pro-tip: inside a batch file, you can similarly hide a program text output by redirecting it's output. For example, the following will silence any text output:

noisy\game.exe > NUL

I'm still getting pre-executable stdout even with quiet verbosity?

DOSBox Staging is unable to differentiate the startup phase from the run phase. Therefore, trying to silence all of the pre-executable stdout will come with side effects. For example, if a batch file enters a choice.com menu, then it was hidden too and the user sits at a black screen. One could also argue that quiet is pretty strong in that the prompt itself C:\> is also hidden during the block phase. So overall, this approach felt like it went too far, and there were many instances where the console was simply black. (Reference)

[Top]


References

[Top]