Skip to content

Commit

Permalink
enhancement: Improved Help text in GUI->Display panel (fixes #1153)
Browse files Browse the repository at this point in the history
  • Loading branch information
midwan committed Nov 11, 2023
1 parent c79e42d commit 341493a
Showing 1 changed file with 78 additions and 16 deletions.
94 changes: 78 additions & 16 deletions src/osdep/gui/PanelDisplay.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -889,32 +889,94 @@ void RefreshPanelDisplay()
bool HelpPanelDisplay(std::vector<std::string>& helptext)
{
helptext.clear();
helptext.emplace_back("Select the required width and height of the Amiga screen.");
helptext.emplace_back("You can select the screen mode to be used as well:");
helptext.emplace_back("Select the required width, height and other options of displayed the Amiga screen.");
helptext.emplace_back(" ");
helptext.emplace_back("Here you can select the screen mode to be used as well:");
helptext.emplace_back(" ");
helptext.emplace_back("- Windowed: the Amiga screen will be shown in a Window on your desktop");
helptext.emplace_back("- Fullscreen: the monitor resolution will change to the selected one.");
helptext.emplace_back("- Full-window: the Amiga screen will be scaled to the current resolution.");
helptext.emplace_back("The Auto-Crop option will have the emulator try to detect the width/height automatically,");
helptext.emplace_back(" ");
helptext.emplace_back("The \"Auto-Crop\" option will try to detect the width/height automatically,");
helptext.emplace_back("and scale it up to the full area of the screen, eliminating any black borders.");
helptext.emplace_back("When this option is disabled, the \"Centering\" options become active, and allow");
helptext.emplace_back("you to enable automatic centering, for Horizontal and Vertical axes individually.");
helptext.emplace_back("This can be useful but keep in mind that especially the vertical centering might");
helptext.emplace_back("cause issues in some games/demos. If that happens, try disabling it and adjust");
helptext.emplace_back("the Width/Height (in combination with H/V offset if you want), instead.");
helptext.emplace_back(" ");
helptext.emplace_back("You can use the Horizontal/Vertical centering options to center the image automatically.");
helptext.emplace_back("\"Borderless\" is only useful in a graphical environment (ie; not when running in");
helptext.emplace_back("console). This will make the Amiberry window appear borderless, with no window");
helptext.emplace_back("controls/decorations around it.");
helptext.emplace_back(" ");
helptext.emplace_back("You can also manually shift the image horizontally or vertically, with the Offset options.");
helptext.emplace_back("\"VSync\" - enabling VSync will use the refresh rate of your monitor to do screen");
helptext.emplace_back("updates. This might reduce tearing, but requires that your monitor supports the same");
helptext.emplace_back("refresh rate that's being emulated (e.g. 50Hz for PAL).");
helptext.emplace_back(" ");
helptext.emplace_back("The Aspect Ratio option allows you to choose if you want the correct Aspect Ratio");
helptext.emplace_back("to be kept always (default), or have the image stretched to fill the screen instead.");
helptext.emplace_back("Also, you can use the \"Offset\" options, to manually shift the image horizontally");
helptext.emplace_back("or vertically, to fine tune the image position.");
helptext.emplace_back(" ");
helptext.emplace_back("You can select the scaling method for the Amiga screen. The default option \"Auto\", ");
helptext.emplace_back("will try to find the best looking scaling method depending on your monitor's resolution. ");
helptext.emplace_back("\"Nearest Neighbor\" will give you a more pixelated and crisp image, but it may come with ");
helptext.emplace_back("You can select the \"Scaling method\" used for the displayed Amiga screen.");
helptext.emplace_back(" ");
helptext.emplace_back(" - Auto: will try to find the best looking scaling method depending on your");
helptext.emplace_back("monitor resolution. This is the default option.");
helptext.emplace_back(" ");
helptext.emplace_back(" - Pixelated: will give you a more pixelated and crisp image, but it may cause");
helptext.emplace_back("some distortion if your resolution is not an exact multiple of what is displayed.");
helptext.emplace_back("\"Linear\" will give you a smoother scaling but some people might find it a bit blurry.");
helptext.emplace_back(" ");
helptext.emplace_back("Activate line doubling to remove flicker in interlace modes, or Scanlines for the CRT effect.");
helptext.emplace_back("You can additionally use the Remove interlace artifacts option, to enable the flicker-fixer feature.");
helptext.emplace_back(" - Linear: will give you a smoother scaling but some people might find it a bit");
helptext.emplace_back("blurry depending on the Amiga software being used.");
helptext.emplace_back(" ");
helptext.emplace_back(" ");
helptext.emplace_back("\"Blacker than black\" - when enabled, boosts the gamma for the black areas, which");
helptext.emplace_back("makes the border around them look darker.");
helptext.emplace_back(" ");
helptext.emplace_back("\"Filtered Low Res\" - This option enables filtering when LowRes is selected in the");
helptext.emplace_back("Resolution option above. It will make the output look smoother instead of pixelated");
helptext.emplace_back("when using the LowRes option.");
helptext.emplace_back(" ");
helptext.emplace_back("The \"Correct Aspect Ratio\" - This allows you to choose if you want the correct");
helptext.emplace_back("aspect ratio to be the default display method, or have the image stretched to fill");
helptext.emplace_back("the screen instead.");
helptext.emplace_back(" ");
helptext.emplace_back("The \"Remove interlace artifacts\" option enables a special feature internally, to");
helptext.emplace_back("eliminate the artifacts produced by Interlace modes. It might cause issues in some");
helptext.emplace_back("applications, so keep that in mind.");
helptext.emplace_back(" ");
helptext.emplace_back("\"Refresh\" - If this option is enabled, it allows you to modify the refresh rate of");
helptext.emplace_back("the emulation, from the full frame rate that it's normally running at. When this");
helptext.emplace_back("option is disabled, the value will be set to 1, which represents that every 1 frame");
helptext.emplace_back("will be drawn/shown. If you enable the option, the value will be changed to 2, which");
helptext.emplace_back("means that 1 out of every 2 frames will be drawn (essentially what is known as being");
helptext.emplace_back("'frame-skip'). Increasing this value further, will increase the frame-skipping to");
helptext.emplace_back("draw one frame out of X (where X = the value you set it to). This can be useful in");
helptext.emplace_back("situations where you are doing high computational work (like 3D-rendering) and you");
helptext.emplace_back("don't care about the redraw on the screen. This option can also be useful to get");
helptext.emplace_back("to get some more games playable.");
helptext.emplace_back(" ");
helptext.emplace_back("\"Brightness\" - Allows adjustment of the output image brightness, from -200 to 200.");
helptext.emplace_back(" ");
helptext.emplace_back(" ");
helptext.emplace_back("\"Line Mode\" - These options define how the Amiga screen is drawn.");
helptext.emplace_back(" ");
helptext.emplace_back(" - Single: This will draw single lines only, which will be stretched vertically to");
helptext.emplace_back("fill the screen when necessary (ie; showing a 640x256 resolution in a 640x512 window)");
helptext.emplace_back(" ");
helptext.emplace_back(" - Double: This option will draw every line twice, which will take up a little more");
helptext.emplace_back("resources, but looks better since they don't have to be stretched vertically. It also");
helptext.emplace_back("enables the options for the Interlace line mode, below.");
helptext.emplace_back(" ");
helptext.emplace_back(" - Scanlines: This option will also draw double the lines, but try to replicate the");
helptext.emplace_back("scanlines effect shown in CRT monitors. Please note that this is not a shader, so the");
helptext.emplace_back("the screen output might not be perfect in all resolutions.");
helptext.emplace_back(" ");
helptext.emplace_back(" ");
helptext.emplace_back("\"Interlaced line mode\" - These options further define how the Amiga screen is drawn");
helptext.emplace_back("when using interlaced screenmodes.");
helptext.emplace_back(" ");
helptext.emplace_back(" - Single: Draw single lines, interlace modes will flicker like the real hardware");
helptext.emplace_back(" ");
helptext.emplace_back(" - Double, frames/fields/fields+: These options are only useful in Interlace modes.");
helptext.emplace_back(" ");
helptext.emplace_back("When you activate \"Frameskip\", only every second frame is drawn.");
helptext.emplace_back("You can use the slider to further fine-tune how many frames are skipped.");
helptext.emplace_back("This will improve performance and some more games are playable.");
return true;
}

0 comments on commit 341493a

Please sign in to comment.