diff --git a/Changes.txt b/Changes.txt index 4e001d9e3..056572a76 100644 --- a/Changes.txt +++ b/Changes.txt @@ -119,9 +119,10 @@ * Added option to change pitch of Pitfall II music. - * ROM Info Launcher can now display multiple lines per property and - bank switching type. Related to this, added fractional (25% increments) - snapshot zooms. + * ROM Info Viewer size is not limited to fixed zoom steps anymore. + + * ROM Info Viewer can now display multiple lines per property and the + bank switching type. * In file listings, you can now select directories by holding 'Shift' on the first character entered. Entering characters in lowercase still diff --git a/docs/graphics/options_ui.png b/docs/graphics/options_ui.png index 14a6e33af..322527cb3 100644 Binary files a/docs/graphics/options_ui.png and b/docs/graphics/options_ui.png differ diff --git a/docs/index.html b/docs/index.html index 6d54cb181..93779088a 100644 --- a/docs/index.html +++ b/docs/index.html @@ -2371,7 +2371,7 @@ -
-launcherfont <small|medium|large>
+
-launcherfont <small|small medium|medium|large>
Set the size of the font in the ROM launcher. @@ -2382,9 +2382,10 @@ -
-romviewer <0|1|2>
- Hide ROM Info Viewer in ROM launcher mode (0), or use the - given zoom level (1 or 2). +
-romviewer <float>
+ Hide ROM Info Viewer in ROM launcher mode (0) or use the + given zoom level.
+ Note: The zoom level is converted into a percentage in the UI. @@ -3079,8 +3080,8 @@ launcher and fonts, as well as the 'ROM Info Viewer' can be changed in UI Settings - Launcher dialog, as shown below:

-

Most of the options are self-explanatory, except for the 'ROM Info - viewer', which is described below.

+

Most of the options are self-explanatory, except for the 'ROM info + width', which is described below.

ROM Info Viewer

@@ -3092,27 +3093,21 @@ for each new release of Stella. Note that the snapshots can be any size generated by Stella; they will be resized accordingly.

-

Currently, there are several restrictions for this feature:

-
    -
  1. The ROM Info Viewer can be shown in 1x or 2x mode only.
  2. -
  3. To view snapshots in 1x mode, the ROM launcher window must be sized at - least 640x480. If the launcher isn't large enough, the functionality - will be disabled.
  4. -
  5. To view snapshots in 2x mode, the ROM launcher window must be sized at - least 1000x720. If the launcher isn't large enough, an attempt will - be made to use 1x mode.
  6. -
+ The ROM Info Viewer's width can be defined between 0% (off) and 100%. The + value is relative to the launcher width. For too small or too large values, + Stella will automatically correct the width at runtime so that the ROM names + and the current ROM's information always have enough space.

The following snapshots illustrate the various font sizes and rom info - zoom levels:

+ widths:

-

ROM Info Viewer in 1x mode, UI sized 800x480, small launcher font:

+

ROM Info Viewer width at 40%, UI sized 800x480, small launcher font:

-

ROM Info Viewer in 1x mode, UI sized 1000x720, medium launcher font:

+

ROM Info Viewer width at 32%, UI sized 1000x720, medium launcher font:

-

ROM Info Viewer in 2x mode, UI sized 1280x900, large launcher font:

+

ROM Info Viewer width at 50% , UI sized 1280x900, large launcher font:

The text box in the upper right corner can be used to narrow down the diff --git a/src/emucore/FrameBuffer.cxx b/src/emucore/FrameBuffer.cxx index 769fa6798..c3789f0ed 100644 --- a/src/emucore/FrameBuffer.cxx +++ b/src/emucore/FrameBuffer.cxx @@ -36,9 +36,11 @@ #ifdef GUI_SUPPORT #include "Font.hxx" #include "StellaFont.hxx" + #include "ConsoleMediumBFont.hxx" #include "StellaMediumFont.hxx" #include "StellaLargeFont.hxx" #include "ConsoleFont.hxx" + #include "ConsoleBFont.hxx" #include "Launcher.hxx" #include "Menu.hxx" #include "CommandMenu.hxx" @@ -106,7 +108,7 @@ bool FrameBuffer::initialize() // This font is used in a variety of situations when a really small // font is needed; we let the specific widget/dialog decide when to // use it - mySmallFont = make_unique(GUI::stellaDesc); + mySmallFont = make_unique(GUI::stellaDesc); // 6x10 // The general font used in all UI elements // This is determined by the size of the framebuffer @@ -117,16 +119,18 @@ bool FrameBuffer::initialize() // The info font used in all UI elements // This is determined by the size of the framebuffer - myInfoFont = make_unique(GUI::consoleDesc); + myInfoFont = make_unique(GUI::consoleDesc); // 8x13 // The font used by the ROM launcher const string& lf = myOSystem.settings().getString("launcherfont"); if(lf == "small") - myLauncherFont = make_unique(GUI::consoleDesc); + myLauncherFont = make_unique(GUI::consoleBDesc); // 8x13 + else if(lf == "small medium") + myLauncherFont = make_unique(GUI::consoleMediumBDesc); // 9x15 else if(lf == "medium") - myLauncherFont = make_unique(GUI::stellaMediumDesc); + myLauncherFont = make_unique(GUI::stellaMediumDesc); // 9x18 else - myLauncherFont = make_unique(GUI::stellaLargeDesc); + myLauncherFont = make_unique(GUI::stellaLargeDesc); // 10x20 #endif // Determine possible TIA windowed zoom levels diff --git a/src/emucore/Settings.cxx b/src/emucore/Settings.cxx index 1ad12575c..00bb983fd 100644 --- a/src/emucore/Settings.cxx +++ b/src/emucore/Settings.cxx @@ -342,7 +342,7 @@ void Settings::validate() setValue("palette", "standard"); s = getString("launcherfont"); - if(s != "small" && s != "medium" && s != "large") + if(s != "small" && s != "small medium" && s != "medium" && s != "large") setValue("launcherfont", "medium"); s = getString("dbg.fontsize"); @@ -478,10 +478,10 @@ void Settings::usage() const << " -exitlauncher <1|0> On exiting a ROM, go back to the ROM launcher\n" << " -launcherres The resolution to use in ROM launcher mode\n" << " -launcherfont \n" + << " small medium|large>\n" << " -launcherroms <1|0> Show only ROMs in the launcher (vs. all files)\n" - << " -romviewer <0|1|2> Show ROM info viewer at given zoom level in ROM\n" - << " launcher (0 for off)\n" + << " -romviewer Show ROM info viewer at given zoom level in ROM\n" + << " launcher (use 0 for off)\n" << " -lastrom Last played ROM, automatically selected in launcher\n" << " -romloadcount Number of ROM to load next from multicard\n" << " -uipalette