Commit Graph

3072 Commits

Author SHA1 Message Date
Squall Leonhart f7633ca274
move the SDL block to the top
so that people don't waste their time filling out the form only to find out we don't take sdl related controller issues.
2022-03-08 00:39:17 +11:00
Squall Leonhart 03d962dfea clarification on filter, and capital letter.
some more small cleanup
2022-03-08 00:20:51 +11:00
Squall Leonhart c1c4daf5e3 further template changes
just cleaning up
2022-03-08 00:20:51 +11:00
Squall Leonhart a9e594a38a add some missing tidbits
from the present issue template
2022-03-08 00:20:51 +11:00
Squall Leonhart 18a84e5cad Update feature.md 2022-03-08 00:20:51 +11:00
Squall Leonhart bd1adc87e0 Update feature.md 2022-03-08 00:20:51 +11:00
Squall Leonhart 2d6457c0f4 Update feature.md 2022-03-08 00:20:51 +11:00
Squall Leonhart 85e991a0e8 Update feature.md 2022-03-08 00:20:51 +11:00
Squall Leonhart 265342135d Update bug_report.yml 2022-03-08 00:20:51 +11:00
Squall Leonhart d729ac3ff2 Update bug_report.yml 2022-03-08 00:20:50 +11:00
Squall Leonhart 8688d9f8e7 Update feature.md 2022-03-08 00:20:50 +11:00
Squall Leonhart 256008dffc Create config.yml 2022-03-08 00:20:50 +11:00
Squall Leonhart a1f2ac8caf Delete ISSUE_TEMPLATE.md 2022-03-08 00:20:50 +11:00
Squall Leonhart 32503fd03a Create feature.md 2022-03-08 00:20:50 +11:00
Squall Leonhart fd3029c858 Update bug_report.yml 2022-03-08 00:20:50 +11:00
Squall Leonhart 27213d9626 Update bug_report.yml 2022-03-08 00:20:50 +11:00
Squall Leonhart b198c6b549 Update bug_report.yml 2022-03-08 00:20:50 +11:00
Squall Leonhart 5961c1480b Update bug_report.yml 2022-03-08 00:20:50 +11:00
Squall Leonhart 961b27f21d Update bug_report.yml 2022-03-08 00:20:50 +11:00
Squall Leonhart 738b6406b8 Update bug_report.yml 2022-03-08 00:20:50 +11:00
Squall Leonhart 5583effa89 Update bug_report.yml 2022-03-08 00:20:50 +11:00
Squall Leonhart ef8efd3187 Update and rename bug_report.md to bug_report.yml 2022-03-08 00:20:50 +11:00
Squall Leonhart 6c9c53a119 Update issue templates 2022-03-08 00:20:50 +11:00
Squall Leonhart 12ec072b25 add colorization hack support to Wx
Revert "add colorization hack support to Wx"

This reverts commit c676333c7157698657b774bdf8e068824e0fc43e.
2022-03-08 00:20:49 +11:00
Rafael Kitover cdeb1027cc
Transifex pull.
Signed-off-by: Rafael Kitover <rkitover@gmail.com>
2022-02-07 12:19:59 +00:00
Rafael Kitover 796dfe78f9
Fix Wx OpenGL and ABI checks for MSYS2 CLANG64.
Probably fixes this in other environments as well, or breaks it.

Move the wxWidgets_LIBRARIES paths conversion to the already existing
normalize_wx_paths() function that was using a different method that no
longer works. This converts the variable to the right format before the
tests run, fixing the Wx OpenGL test.

For the ABI checks, wrap the function pointers for the minhook
trampoline API in reinterpret_cast<LPVOID>(&fp), why this is necessary I
don't know, and it may break on other compilers. The trampoline is used
to catch message boxes opened by Wx for fatal errors.

Signed-off-by: Rafael Kitover <rkitover@gmail.com>
2022-02-05 01:00:25 +00:00
Rafael Kitover 87e41300f1
Speedup wx-config search on MSYS2.
Search for wx-config-static for static builds first, and wx-config
otherwise, before trying any config and version suffixes.

Signed-off-by: Rafael Kitover <rkitover@gmail.com>
2022-02-04 04:45:07 +00:00
Rafael Kitover 7853718627
Add winmm to SDL2 libs for WIN32.
Signed-off-by: Rafael Kitover <rkitover@gmail.com>
2022-02-04 04:44:14 +00:00
Rafael Kitover a7eeb17645
Use gcc binutils for rc compiler on MSYS2 CLANG64.
Update installdeps and cmake to use windres from gcc binutils from
MINGW64 on MSYS2 CLANG64, because llvm-rc doesn't work sometimes.

Signed-off-by: Rafael Kitover <rkitover@gmail.com>
2022-02-04 04:18:36 +00:00
Rafael Kitover 347df44497
Add ccache to pkg list in installdeps for MSYS2.
Signed-off-by: Rafael Kitover <rkitover@gmail.com>
2022-02-04 04:16:26 +00:00
Rafael Kitover 8bd09c9012
Revert "Use MSVC intrinsic sqrt() on x86 for XBRZ"
This reverts commit 55a0a52a39.

Does not make any difference, the performance issue is elsewhere.
2022-02-03 07:57:51 +00:00
Rafael Kitover 55a0a52a39
Use MSVC intrinsic sqrt() on x86 for XBRZ too.
Instead of the inline asm fsqrt instruction.
Already being used on x64.

Signed-off-by: Rafael Kitover <rkitover@gmail.com>
2022-02-03 07:22:05 +00:00
Rafael Kitover 4af78f6482
Fix MSVC VCPKG build and Debug build type checks.
Use jpeg.lib instead of jpegd.lib for jpeg debug lib, it no longer has
the "d" suffix.

Fix all CMAKE_BUILD_TYPE checks for debug builds to either also check
for RelWithDebInfo or match "Debug" exactly.

Signed-off-by: Rafael Kitover <rkitover@gmail.com>
2022-02-03 00:18:08 +00:00
Rafael Kitover 7d454e054a
Fix MSVC compiler/linker flags.
Turn off ccache for vcpkg builds (this is only relevant to MSVC, where
ccache does not work yet.)

Throw an error if CMAKE_BUILD_TYPE is not valid or does not match case
exactly (to make comparisons simple.)

Add SetCompilerLinkerFlags.cmake lib with the functions:

add_compiler_flags()

For each flag passed in, add it to CMAKE_CXX_FLAGS and CMAKE_C_FLAGS if
not already present. Also clears all build-specific flag variables on
every call, if using this functions you must set build-specific flags
yourself.

add_linker_flags()

For each flag passed in, add it to
CMAKE_(EXE|SHARED|MODULE|STATIC)_LINKER_FLAGS if not already present.

Add remove_dupes() function to VbamFunctions.cmake from:

https://stackoverflow.com/a/41416298/262458

This is used to remove duplicate flags in SetCompilerLinkerFlags.cmake
described above.

Use the new functions to set compiler and linker flags for MSVC.

Signed-off-by: Rafael Kitover <rkitover@gmail.com>
2022-02-02 22:27:39 +00:00
Zach Bacon 5ed544aad3 [Workflow] Ensure checkout is autocrlf for github actions 2022-02-02 09:43:52 -05:00
Rafael Kitover 9ba5645964
Fix Win32 build regression in fa562426.
Move list of media libs ffmpeg depends on to the right cmake file.

Signed-off-by: Rafael Kitover <rkitover@gmail.com>
2022-02-02 00:44:41 +00:00
Rafael Kitover fa56242669
Add MSYS2 CLANG64/32 support.
Update installdeps to support CLANG64/CLANG32 MSYS2 targets.

cmake:

Set POLICY CMP0060 to NEW to not convert full lib paths, this is the
default.
Stop disabling ffmpeg on WIN32+i686.
On MSYS2+clang add windows import libs to CMAKE_PREFIX_PATH.
For static builds on MSYS2 append full paths for static libs for tiff,
jbig and lzma to FFMPEG_LIBRARIES.
Add -Wno-unused-command-line-argument to all CFLAGS/CXXFLAGS so that
clang does not warn about gcc-specific options.
Enable -march/-mtune optimizations by default instead of only for
UPSTREAM_RELEASE.
Update find_wx_util() to search suffixes for WIN32 and add the "static"
suffix for static builds.
Remove all linker flags from wxWidgets_LIBRARIES and translate all wx*
libs as well as jpeg, tiff, jbig lzma and expat to full .a paths for
static builds.
Disable strutil tests on MSYS2+clang, currently does not build.

Signed-off-by: Rafael Kitover <rkitover@gmail.com>
2022-01-31 03:26:52 +00:00
Rafael Kitover 65b5affe7d
Transifex pull.
Signed-off-by: Rafael Kitover <rkitover@gmail.com>
2022-01-30 02:39:02 +00:00
Rafael Kitover c4733bcf03
Fix x86 build, tweak MSVC opt flags.
Use:

/Ot /Oy /Ob3 /GF /Gy

, instead of /O2 for x86, this makes it not crash on ROM load for the
OpenGL renderer.

Supposedly /O2 is equivalent to:

/Og /Oi /Ot /Oy /Ob2 /GF /Gy

, but the documentation states that /Og is automatically enabled when
any other optimizations are enabled automatically. So this should make
absolutely no difference, yet it does.

For x64 use:

/O2 /Ob3

, this overrides /Ob2 from /O2 to use more aggressive inlining, VS 2019
is required for this.

Signed-off-by: Rafael Kitover <rkitover@gmail.com>
2022-01-18 03:01:13 +00:00
Rafael Kitover 73223445d6
MSVC opt /fp:fast /Oi, intrinsic sqrt() w/ XBRZ.
For MSVC, add the optimization flags:

/fp:fast /Oi

, to favor speed for floating point operations and use intrinsic
operations where possible.

For release builds also add:

/O2

. Use sqrt() instead of std::sqrt() in XBRZ for MSVC x64 just in case to
make sure it uses the intrinsic version.

Test build is reported to run much faster.

Signed-off-by: Rafael Kitover <rkitover@gmail.com>
2022-01-16 15:55:02 +00:00
Rafael Kitover 2eb45cd967
Transifex pull.
Signed-off-by: Rafael Kitover <rkitover@gmail.com>
2021-12-22 15:02:48 +00:00
Rafael Kitover a5b2d070dc
Add cmake TRANSLATIONS_ONLY for translations.zip.
Builds translations.zip and nothing else.

This is for the nightly builder when only translations are changed.

Signed-off-by: Rafael Kitover <rkitover@gmail.com>
2021-12-19 13:57:05 +00:00
Rafael Kitover ea9d95dfa0
Transifex pull.
Signed-off-by: Rafael Kitover <rkitover@gmail.com>
2021-12-19 12:26:39 +00:00
Rafael Kitover 21ccbcb120
Minor fix in builder script.
Delete build directories prior to build in build_project().

Signed-off-by: Rafael Kitover <rkitover@gmail.com>
2021-12-19 12:04:18 +00:00
Zach Bacon a33695cd55 Update the snapcraft yaml to core20
Signed-off-by: Zach Bacon <zachbacon@vba-m.com>
2021-12-16 07:51:37 -05:00
Rafael Kitover 94b4a7982c
Update nightly builds URL in README.md.
Signed-off-by: Rafael Kitover <rkitover@gmail.com>
2021-12-14 08:55:48 +00:00
Squall Leonhart 972f151310
Enable GB colorization hack support in GUI.
This is used by some hacked ROMs like Metroid II DX.

Add a config variable to enable the already existent core support for
this.

This conflicts with using a GB BIOS file, add checks and error dialogs
for this.

Also move including "ConfigManager.h" into "wxvbam.h".

Signed-off-by: Rafael Kitover <rkitover@gmail.com>
2021-11-24 21:30:37 +00:00
Rafael Kitover 89028de852
Regenerate dev guide TOC.
Signed-off-by: Rafael Kitover <rkitover@gmail.com>
2021-11-10 23:08:25 +00:00
Rafael Kitover b9fb76043e
Move Windows dev guide to its own repository.
It is now at:

https://github.com/rkitover/windows-dev-guide

Signed-off-by: Rafael Kitover <rkitover@gmail.com>
2021-11-10 22:37:15 +00:00
Rafael Kitover 35d4d44a9b
Update Windows Terminal settings in dev guide.
Signed-off-by: Rafael Kitover <rkitover@gmail.com>
2021-11-10 18:56:15 +00:00