Commit Graph

6733 Commits

Author SHA1 Message Date
rogerman 28f12cf088 Colorspace Handler: Further optimize NEON code.
- Commit 9ccc791 was, more or less, a straight port of the SSE2 code, making it less than ideal. This updated version uses more NEON-only instructions to further improve performance.
2022-04-06 23:51:29 -07:00
rogerman 27a32d6262 Sigh... partially revert commit e8328ed to make Linux builds happy. 2022-04-06 10:34:26 -07:00
rogerman 42c59d9257 Minor correction related to commit e8328eda.
- If this doesn't fix Linux builds (it probably won't), then I will partially revert commit e8328eda to make it work.
2022-04-06 10:16:49 -07:00
rogerman e8328eda33 GPU: Clean up some old header stuff now that the SIMD code has been factored out. 2022-04-05 23:15:51 -07:00
rogerman c5c9e2d3a7 Colorspace Handler: Pad out some small arrays so that they can be useful for SIMD vector loads. Up to 512-bit vector loads are supported.
- For practical reasons, we shouldn't need to pad out any arrays past 64 bytes any time soon.
2022-04-05 22:28:43 -07:00
rogerman b1d49d14ec matrix.h: Fix compiling on AltiVec-enabled systems. (Regression from commit 8a9fec43.) 2022-04-05 22:12:05 -07:00
rogerman 74cdfeea32 Colorspace Handler: Fix some bugs with NEON.
- These changes shouldn't change existing functionality, but are more to document what the code should actually be doing. Regardless, these changes are truly correct.
2022-04-03 15:34:15 -07:00
rogerman 9ccc791e32 Colorspace Handler: Add support for NEON-A64.
Signed-off-by: rogerman <rogerman@users.noreply.github.com>
2022-04-02 23:47:21 -07:00
rogerman 8a9fec431a matrix.h: stream_copy_fast() for AltiVec and NEON now mirror their associated buffer_copy_fast() functions, replacing memcpy().
- Since stream_copy_fast() and buffer_copy_fast() are intended for small finite-sized buffers only, we shouldn't need a full memcpy() call with these.
2022-04-02 23:43:46 -07:00
rogerman 7e85253ebb Core: Add preliminary support for ARM NEON-A64. The generic memset and buffer_copy functions are now supported.
- Note that NEON support is assuming the A64 instruction set. But if there is enough user demand for running the A32 instruction set, and if it is feasible to backport the NEON code to A32, then this may be explored at a later date. But for now, we are sticking with A64.
2022-04-02 21:33:14 -07:00
Roger Manuel 03be21608e
Update build.yml for macOS nightlies (regression from commit e9b3998f) 2022-04-02 17:36:25 -07:00
rogerman 1f377be17b Core: Do some minor header cleanup. 2022-04-02 17:28:02 -07:00
rogerman a9706059e0 Cocoa Port: Fix AltiVec vec_perm() related bugs if building for ppc64.
- Apparently, vec_perm() on ppc32 assumes that vec_perm() will always use vectors with 8-bit elements. However, ppc64 vec_perm() can use elements of different sizes, and so we need to typecast every single case of this so that the correct vec_perm() is called on ppc64.
2022-04-02 15:57:38 -07:00
rogerman a677ffd168 videofilter.cpp: Silence a compiler warning by initializing the entire SSurface struct instead of just a part of it. 2022-04-02 15:53:03 -07:00
rogerman 8f20237c04 Cocoa Port: Fixes the use of macOS GUI sheets in Lion and Mountain Lion. (Regression from commit e9b3998f.) 2022-04-02 15:40:23 -07:00
rogerman e9b3998fe8 Cocoa Port: Add new build targets for Apple Silicon, and also clean up Release Build targets.
- Apple Silicon builds target macOS 11.0 SDK, so almost all deprecation warning associated with this have also been fixed. (The remaining deprecation warnings in preferencesWindowDelegate.mm still need to be fixed in some other way.)
- Intel 64-bit developer builds now require macOS 10.12 SDK (Xcode 8 or later). Of note, this produces faster SSE4.1 code by default, but also requires a Penryn-era Core2Duo CPU or later. (Note that Intel 64-bit non-Haswell in release builds still use SSSE3.)
- Improves overall stability when running DeSmuME on macOS 10.5 Leopard.
- In addition, release builds running Intel 64-bit non-Haswell no longer require macOS 10.7 Lion. They can run on Leopard again!
- Finally fix some GUI issues in the About box when running Dark Mode on macOS 10.14 Mojave or later.
2022-04-02 13:52:17 -07:00
rogerman 407931288a WiFi: Fix compiling for compilers not running C++11 language features. 2022-04-02 13:25:29 -07:00
Marco Köpcke b86a7748b1
Interface: Added a function to get/set the ARM9 next instruction (#517)
* Interface: Added a function to set the ARM9 next instruction

* Comment about potential JIT issues

* Interface: Made setting next instructions no-op with JIT
2022-03-31 18:06:37 -04:00
tech-ticks 1cec82613b
interface: Fix macOS build (#485)
* Compile macOS interface with clang

* Fix OpenGL dependency on macOS
2022-03-30 20:21:00 -04:00
zeromus 599c981481
Merge pull request #516 from SkyTemple/fix-register-read-write-hooks
Fix register read/write hooks (potentially) using wrong integers sizes
2022-03-15 13:33:39 -05:00
Parakoopa 61036472b5 Fix register read/write hooks (potentially) using wrong integers sizes 2022-03-15 17:48:47 +01:00
zeromus 96b1150558
Merge pull request #515 from SkyTemple/update-interface-build-instructions
Update build instructions for the DLL/SO
2022-03-12 15:33:11 -06:00
Marco Köpcke 666c1ef455 Update build instructions for the DLL/SO 2022-03-12 16:47:58 +01:00
zeromus 95c44e389c
Merge pull request #512 from SimonAfek/feature/fix_msbuild_warning
Fix build action warning + use 64-bit build tools
2022-03-01 16:27:05 -06:00
SimonAfek b143ed6544
Use setup-msbuild v1.1 2022-03-01 13:12:19 +01:00
zeromus 8fd322e817
Merge pull request #469 from TornaxO7/reference_fixes
Fixing urls
2022-02-12 17:45:09 -06:00
rofl0r bd9dcc558f CI: fix mac os interface build, to make everything green again
it's highly annoying to get the red X for any push or pull request
because mac os x interface build is broken since december.
fix it by installing glib which meson complains about.
2022-02-11 20:55:26 +00:00
zeromus 0e83bd5000
Merge pull request #505 from rofl0r/winbuild3
add github workflow to build win64 artifact
2022-02-11 13:06:28 -06:00
rofl0r 9e0aed2267 add github workflow to build win64 artifact
special thanks to @SimonAfek who figured out some nitty-gritty stuff
to make this work.
2022-02-11 18:57:28 +00:00
zeromus f52eed131a fix msvc-clang errors 2022-02-10 14:50:11 -05:00
zeromus 5e48c9c44a fix clang errors 2022-02-10 14:49:42 -05:00
zeromus b2c2e8f5ee try fixing clang compiling another way 2022-02-09 22:52:21 -05:00
zeromus 1770d0a232 try to fix xaudio compiling on clang 2022-02-09 18:37:43 -05:00
rofl0r 6f66e09d82 fix build with clang-cl
clang-cl is the MSVC's recent included clang compiler, which has some
different defaults regarding narrowing and preprocessor.
2022-02-09 21:00:22 +00:00
zeromus 7e787700e7
Merge pull request #502 from algoRhythm99/vs2022
Visual Studio 2022 build support
2022-02-01 21:58:45 -06:00
algoRhythm99 258adbcfca Visual Studio 2022 build support
Bare minimum changes to get it building out of the box in Visual Studio 2022 community
2022-01-31 21:47:37 -06:00
zeromus 747f369483 third unicode fix for issue #496. please go away. 2022-01-11 22:32:57 -05:00
zeromus af06cc4aca fix window title on non-english locales (probably, but not tested)
fixes #496 addendum
2022-01-11 20:29:05 -05:00
zeromus 81573818a9 Revert "WiFi: Fix compiling for Cocoa port by eliminating typed enums. (Regression from commit 43b00fb2, for which the regression was caused by commit 5f76ba8b.)"
This reverts commit 9f82cea20b.

If cocoa compiling is broken let's discuss it instead of reverting work
2022-01-11 19:12:37 -05:00
zeromus 8510948f6c fix game info text fields on non-english locales (probably, but not tested)
fixes #496
2022-01-11 19:09:34 -05:00
zeromus 3ba3821228
Merge pull request #495 from rinsuki/ci/macos-app
ci: Add macOS app Build
2021-12-14 15:26:28 -06:00
rinsuki e344b4ce2a ci: Add macOS app Build 2021-12-14 21:02:07 +00:00
Ingo Saitz b4080b2cae Linux: Call NDS_Init() early
Since NDS_Init takes no arguments, it should not hurt to call it early
in the gtk frontend, too.

This fixes the segfault in issue #415, although I could not get it to
run a r4 kernel in a quick test.
2021-11-19 16:52:44 +01:00
Ingo Saitz f827be2e0f Linux: Add pop-up menu back
This adds the view menu back as pop-up menu, which was disabled by the
gtk2 port.

This fixes issue #407.
2021-11-19 16:51:44 +01:00
Ingo Saitz 327dcd3d7b Linux: Fix recent entries with quote in filename
According to RFC 2396, the single quote character (') is allowed in uri
strings and is not escaped by gtk, so the action string constructed for
the recent files menu must be quoted with " instead of '.

This fixes issue #437
2021-11-19 16:49:36 +01:00
zeromus 629724d865
Merge pull request #489 from Salz/pullreq/openal-linux-01
Pullreq/openal linux 01
2021-11-18 12:47:28 -05:00
Ingo Saitz 6aa320aa0a [Linux] OpelAL: Initialize the Mic_Buffer with silence data 2021-11-18 13:38:01 +01:00
Ingo Saitz 9f19d681de [Linux] OpenAL: fix mic data
The data returned by Mic_ReadSample() must be transfered in 2 parts.
This must be done by every microphone driver.

I did test with Lunar: Dragon Song which values are considered loud,
since you can run away by screaming/blowing into the microphone. Values
from 33-223 don't trigger the escape, values from 0-32 and from 224-255
trigger an escape attempt. Thus 128 would be considered silence.
2021-11-18 13:15:52 +01:00
rogerman 0b4b58f3b4 GPU: Remove a now defunct check that could cause the window test buffer to fail to update. This fixes a graphical issue in Pokemon Black 2 when watching movies at the Pokestar Studios. (Regression from commit 7fc2e4b6. Fixes #486.) 2021-11-12 16:27:11 -08:00
rogerman 9f82cea20b WiFi: Fix compiling for Cocoa port by eliminating typed enums. (Regression from commit 43b00fb2, for which the regression was caused by commit 5f76ba8b.) 2021-11-12 16:16:37 -08:00