Commit Graph

2302 Commits

Author SHA1 Message Date
Jesse Talavera-Greenberg
79dfb8dc8f
Introduce Platform::Log (#1640)
* Add Platform::Log and Platform::LogLevel

* Replace most printf calls with Platform::Log calls

* Move a brace down

* Move some log entries to one Log call

- Some implementations of Log may assume a full line

* Log the MAC address as LogLevel::Info
2023-03-23 18:04:38 +01:00
Gloria
19280cff2d
BIOS/NAND UI changes (#1587)
* Remember the last folder for BIOS files
Add .mmc to the list of NAND filename extensions

* Add .sd file extension for SD images

* Fix UI code according to the review

---------

Co-authored-by: yeah-its-serena <32610623+yeah-its-serena@users.noreply.github.com>
2023-03-20 16:56:14 +01:00
RSDuck
4ba7a2c5e6 tiny refactoring around the input config dialog 2023-03-02 14:41:46 +01:00
RSDuck
ca221381e9 gotta blow harder 2023-03-02 08:36:03 +01:00
Nadia Holmquist Pedersen
382155e6fe Add hotkey to toggle screen emphasis
Toggles which screen is emphasized when the screen sizing is set to
emphasize top or bottom. (Closes issue #1565)
2023-02-17 04:33:26 +01:00
UltraHDR
00edeb3c3c Set LSApplicationCategoryType to games
https://developer.apple.com/documentation/bundleresources/information_property_list/lsapplicationcategorytype
Adds it to the games folder in the macOS Launchpad
2023-01-20 12:17:41 +01:00
patata
35f4e504f1
Increase savestate major version (#1567) 2023-01-19 15:11:42 +01:00
patata
105af5cf1a
Update CI badges in readme (#1602)
- See https://github.com/badges/shields/issues/8671
- Change Azure Pipelines macOS badges to the current GitHub Actions
2023-01-19 15:10:27 +01:00
Janfel
3e02d3ff76
Rebase: Make archive detection more robust and add it to the CLI (#1560)
* Rebase/recreate my changes and add MIME support

This commit recreates the changes proposed in #1394 on top of the
current master (b069a2acf1).
This also adds support for determining filetypes using the MIME database
provided by `QMimeDatabase`.

* Move member syntax warning to a more appropriate place

* Deduplicate member syntax warning

* Change warning from "vertical bars" to "|"

* Conform brace placement to coding style

* Fix QFileDialog filter when ArchiveExtensions is empty

* Final cleanup and fixes

- Changes the NDS and GBA ROM MIME-Type constants to QStrings.
- Removes a leftover warning message.
- Uses Type() syntax instead of Type{} syntax for temporaries.

* Explain the origin of the supported archive list

Co-authored-by: Jan Felix Langenbach <insert-penguin@protonmail.com>
2023-01-18 00:49:18 +01:00
RSDuck
d83172e595 fix window aspect ratio 2023-01-17 20:00:21 +01:00
RSDuck
8ec8a6ce09 ehhh got that one wrong, now it should be right 2023-01-06 20:17:04 +01:00
RSDuck
eadfeec7ab hopefully correct overflow flag for ADC and SBC
also use inline functions instead of macros to make things more neat
2023-01-06 20:11:11 +01:00
RSDuck
86d2e60df7 fix #1593 2023-01-03 18:50:03 +01:00
Rupert Carmichael
bd9c614ceb
Wifi: -Wformat warning caused by missing printf argument (#1532) 2022-12-30 21:13:39 +01:00
RSDuck
43d091361e fix #1551 2022-11-25 23:47:36 +01:00
RSDuck
3111431a3f fix #1556 2022-11-14 18:29:44 +01:00
pepper-jelly
5488e0bf3d
prevent screensaver (#1485) 2022-11-11 23:18:28 +01:00
mariomadproductions
88c1371a96
Added LEGO Batman 2 - DC Super Heroes (Canada) (En,Fr) [B6FL] to ROMList (#1422) 2022-11-11 23:08:55 +01:00
Quinn Painter
2256b64fcd
Fix nocash Char Out debug register (#1500)
To match no$gba, this register should output any ASCII character written to it, not print the number as it currently does.
2022-11-11 23:03:17 +01:00
Nadia Holmquist Pedersen
b069a2acf1 Clean Windows build instructions
* CMake in MSYS2 now depends on Ninja and uses it by default, use it
  instead of Make as it has much easier to read output when doing
  parallel builds and doesn't need an extra program
* Ninja uses the maximum number of cores by default, so we don't have to
  run nproc --all
* We don't need mesa for its headers anymore
2022-11-09 19:54:35 +01:00
Nadia Holmquist Pedersen
726fde4e8d Explicitly include the build/res directory so windres will find it when
using the CMake Makefile generator
2022-11-09 19:44:07 +01:00
Nadia Holmquist Pedersen
9587d35d1d For some reason this didn't get renamed 2022-11-09 19:02:53 +01:00
Pk11
31a0d7ecd2
Allow import/export of .pub/.prv/.bnr saves (#1558) 2022-11-07 16:03:00 +01:00
Nadia Holmquist Pedersen
ca19ea1ce8 Windows resource/manifest fixes
* Report correct Windows architecture for the build in the manifest
* Output processed .rc/.manifest in the CMake binary dir to prevent
  potential issues with the files conflicting if cross compiling melonDS
  on the same Windows machine
* Make the original file name actually make sense
2022-11-06 02:53:51 +01:00
Nadia Holmquist Pedersen
659b7214c7 Use WGL for GL context creation on Windows ARM64 as well.
This may not work, as I'm not sure why the code originally did as it
did. But this at least lets it compile, we'll need someone with a real
Windows ARM device to test this as I only have a VM with no GPU
acceleration.
2022-11-05 22:38:23 +01:00
Nadia Holmquist Pedersen
9a5e884913 JIT: Add bits for Windows ARM64 support 2022-11-05 22:37:27 +01:00
Nadia Holmquist Pedersen
c387fb1819 mainWindow may be nullptr when audioMute() is called.
Fixes potential crash on launch when multiplayer audio output is set to only the current window.
2022-11-05 16:57:28 +01:00
Arisotura
430de6b270 BAHAHAHAHAHAJSKASLASJISFS--+|*~+-. 2022-11-03 20:35:21 +01:00
Arisotura
019120ebb8 fix a tidbit with GXFIFO NDMA, I think 2022-11-03 20:22:46 +01:00
Arisotura
4ef2e1f4cc fix up DSi direct boot 2022-10-28 21:31:51 +02:00
patata
561781b954
CLI 2.0: Electric Boogaloo (#1546)
* CLI: begin QT reimplementation

* Add first batch of parameters
* ROM loading (no archives yet)
* --fullscreen
* --boot (non-functional???)

* fix --boot

* archives!

* Add disclaimer that a.zip|b.nds is kind of fucky

* remove shit7 debugging

* Apply requested changes
2022-10-28 12:27:55 +02:00
Arisotura
936011964c comment out semaphore shit in teakra 2022-10-25 00:09:43 +02:00
Nadia Holmquist Pedersen
9e449d902d Make clang shut up about -Wno-error=maybe-uninitialized in teakra 2022-10-23 16:52:18 +02:00
orbea
b5017caa33 fatfs: Fix -Wstrict-prototypes + -Wimplicit-function-declaration warnings
This will be required for upcoming gcc and clang versions.

Reference: https://archives.gentoo.org/gentoo-dev/message/dd9f2d3082b8b6f8dfbccb0639e6e240
2022-10-23 16:33:29 +02:00
Arisotura
dd74e936ed force-align all read/write accesses. fixes #1540 (unaligned DMA address) 2022-10-22 13:11:57 +02:00
Nadia Holmquist Pedersen
b6776bd826 getWindowInfo: handle if the Wayland window handle is null 2022-10-19 00:03:28 +02:00
RSDuck
ac3118cbc5
No more context mess (#1531)
* WIP: use Duckstation's context code to directly render into QT Widget from separate thread without two OpenGL contexts

currently only works on Windows

* reenable gay OSD

* add back vsync

* make it atleast a little more thread safe

* linux support

* don't segfault on closing

* reorganise and cleanup build system
it's still not good, but better than before

* macos?

* try to get it working on Ubuntu CI
also update instructions

* let's try this

* ok how about this

* try creating an OGL 4.3 context first
(https://i.kym-cdn.com/photos/images/original/001/264/842/220.png)

* fix Ubuntu

* hm

* try again for Windows

* let's try this

* make the OpenGL renderer work again
that was stupid

* do OGL surface resizing from the mainthread

* Fix small mistake in GL context creation on macOS causing version 3.2 to
be considered invalid

* C stupidness

* cleanup

* don't let the emuthread deinit OGL if there's no OGL

* reset lastScreenWidth/Height when deiniting OpenGL

* disable stencil test while drawing framebuffers

* macOS: Link Cocoa framework explicitly when not building with Qt6

Seems to be needed for the classes used by DuckStation's GL context
code.

* Set ScreenPanelGL's minimum size immediately

Fixes GL context creation for OpenGL display on macOS using the wrong
size as the underlying window was not resized to the correct size by Qt
yet.

* don't emit window updates when OGL display is used

* stuff Arisotura said

Co-authored-by: Nadia Holmquist Pedersen <nadia@nhp.sh>
2022-10-17 22:55:11 +02:00
Arisotura
31ba585d39 more fun DSP fixes
* aac.a thinks it is funny to start DMA by writing to 8184 directly
* implement retd (gross hack!!)
* remove another unimplemented exception (wat)
2022-10-17 20:16:19 +02:00
Arisotura
243a02767a I don't think NWRAMMask is relevant here 2022-10-14 00:22:39 +02:00
Arisotura
cdd05c10b4 more DSP unfucking: make Teakra directly use melonDS's NWRAM banks instead of trying to translate to a flat buffer, fixes bugs with the way the memory banks are ordered etc 2022-10-14 00:02:54 +02:00
Arisotura
a8fba8cc34 Merge branch 'master' of github.com:Arisotura/melonDS 2022-10-13 23:54:49 +02:00
Nadia Holmquist Pedersen
349316a078 Work around a really strange issue when building teakra with -O0 on Windows 2022-10-12 20:49:15 +02:00
Arisotura
a83fbb6555 revert half of the change to build flags. it makes Teakra linking shit itself in a pretty bad and weird way.
sorry Nadia
2022-10-12 20:22:39 +02:00
Arisotura
b33f0434a6 unfuck the DSP enough that it will actually run code
(don't get your hopes up, it's still pretty much a trainwreck)
2022-10-11 00:26:42 +02:00
Nadia Holmquist Pedersen
9a85bc7453
Merge pull request #1528 from Phosphorus-M/patch-1
Update the README.md to add the missing dependency on qt5-multimedia needed by the camera support.
2022-10-10 18:53:46 +02:00
Nadia Holmquist Pedersen
338b8b5bfe
Change Qt dependencies for Windows dynamic builds as well
no reason to install the full huge Qt framework when there are individual packages.
2022-10-10 18:51:16 +02:00
Phosphorus Moscu
5e74fecb87
Update README.md
Add the missing dependencies to solve the errors when you run cmake
2022-10-09 22:24:16 -03:00
Arisotura
b76e5adc1d unfuck the DSP code some
(still doesn't work)
2022-10-10 00:22:46 +02:00
Nadia Holmquist Pedersen
c177fae51f Clean up optimization flags
* The way -O3 was set for release builds was accidentally removing
  -DNDEBUG
* -Og seems to mess with debugging with lldb, even though the GCC manual
  page says to use it for debug builds, so remove it
2022-10-09 20:14:27 +02:00
Nadia Holmquist Pedersen
5b867eb7a7 macOS: Add NSPrincipalClass value to the Info.plist
According to the Qt documentation we should have this for proper
high-DPI support on macOS. Whether or not it's still relevant I'm not
sure, but if it isn't it might at least help on older macOS or Qt.
2022-10-08 19:10:50 +02:00