Commit Graph

1879 Commits

Author SHA1 Message Date
Arisotura
879695070a make blending/fade accurate too (not quite sure about the 3D one) 2022-04-01 13:57:28 +02:00
Arisotura
1dfcf2010a Merge branch 'master' of github.com:Arisotura/melonDS 2022-04-01 12:54:58 +02:00
Arisotura
d296f2832c make display-capture blending accurate to hardware 2022-04-01 12:54:47 +02:00
Nadia Holmquist Pedersen
02b859ad9d Disable firmware overrides UI when override checkbox isn't checked 2022-03-28 00:55:18 +02:00
Arisotura
5ca8728cbf save WFC settings when using default firmware. fixes #1401, also fixes #1336 2022-03-22 23:21:45 +01:00
Arisotura
599deeb2b8 default firmware: in DSi mode, emulate more compatible DWM-W015 instead of DWM-W024 2022-03-20 18:13:32 +01:00
Arisotura
709a5980ed FreeBIOS: add VRAM-compliant LZ77 decompressor. fixes #1353 2022-03-14 19:42:30 +01:00
Arisotura
3756f3cb1f make invalid SPI memory commands return 0xFF. fixes #1366 (Dementium II checks the results of RDSR, RDID and cmd 00 to determine what kind of backup memory is present) 2022-03-14 18:08:29 +01:00
Arisotura
5415f8a746 what. 2022-03-14 11:51:10 +01:00
Arisotura
d8f87df2b7 DISPCAPCNT is writable at any time 2022-03-14 01:09:07 +01:00
Arisotura
fb7bea06f8 fix some gaps in the SPI/cart implementations 2022-03-14 00:27:03 +01:00
Arisotura
f7fa0dda50 * support patching multiple DLDI interfaces
* fix the DLDI size entry
fixes the Smash demo
2022-03-12 21:52:29 +01:00
Arisotura
cce9de5ee1 BLARG 2022-03-08 14:42:02 +01:00
Arisotura
fe96944fc0 insert wacky commit message 2022-03-08 12:03:16 +01:00
Arisotura
2eec033c72 save battery levels to config 2022-03-07 21:08:54 +01:00
Arisotura
532b1c967a fix up the power management dialog 2022-03-07 21:08:54 +01:00
Arisotura
9394dde67a fix copyright headers 2022-03-07 21:08:54 +01:00
Rayyan Ansari
2569c67a13 Add support for changing the DS and DSi battery level
The DS battery level is configured via the SPI Power Management Device,
and the DSi's is configured via the I2C BPTWL. Add support for changing
these registers and add the "Power Management" dialog in the UI.
2022-03-07 21:08:54 +01:00
Pk11
c3adf6f606
Improve DSiWare save creation (#1375) 2022-03-07 21:08:29 +01:00
2jun0
c66df57256
Implement MainRAM management dialog😁 (#1248)
* Implement MainRAM management dialog

* Modify RAMInfoDialog

- use emuThread to avoid a race condition.
- replace RAMUpdateThread to QTimer

Co-Authored-By: RSDuck <RSDuck@users.noreply.github.com>

* Update src/frontend/qt_sdl/RAMInfoDialog.cpp

small typo

Co-authored-by: Rayyan Ansari <68647953+RayyanAnsari@users.noreply.github.com>

* Update src/frontend/qt_sdl/RAMInfoDialog.h

small typo

Co-authored-by: Rayyan Ansari <68647953+RayyanAnsari@users.noreply.github.com>

* typo errors in RAMInfoDialog

Rrevious->Previous

* add new line to the end of the file

Co-authored-by: Rayyan Ansari <rayyan@ansari.sh>

* enable raminfo when cart is inserted

* Modify that only the 'value' item can be edited in RAMinfoDialog

* fix: function name incorrect error

* fix: function name incorrect error2

* fix: wrong way to get ram value

Co-authored-by: RSDuck <RSDuck@users.noreply.github.com>
Co-authored-by: Rayyan Ansari <68647953+RayyanAnsari@users.noreply.github.com>
Co-authored-by: Rayyan Ansari <rayyan@ansari.sh>
2022-03-06 22:33:11 +01:00
Nadia Holmquist Pedersen
088d49b9cb macOS: Use Qt 6 by default 2022-03-06 20:12:20 +01:00
Nadia Holmquist Pedersen
b1565ec87a macOS: Bump minimum version to 10.15 2022-03-06 20:06:11 +01:00
Arisotura
2af8e65f23 we prolly don't need to init SDL video, given we don't use it 2022-03-06 10:49:05 +01:00
Arisotura
ef7dfb8872 fix the GBA cart save shito, I guess 2022-03-04 20:54:45 +01:00
Rayyan Ansari
f4f6f6dfc5
InputConfig: change Group Box titles to Labels
On GNOME, the Group Box's titles don't align with the text in the buttons.
This commit removes the Group Box titles and instead uses Labels to fix this.
2022-03-04 17:52:49 +00:00
Brankale
2c21787f33
fix typo in enum for screen sizing (#1377) 2022-02-25 20:28:21 +01:00
RSDuck
550db94a87 Use enum for screen sizing 2022-02-25 16:35:21 +01:00
ZackWeinstein
e3ad78e84f
Allowing Swap screens hotkey to swap between displaying only top screen and only bottom screen. (#1283) 2022-02-25 15:58:31 +01:00
RSDuck
bb67e186df comment out debug printfs 2022-02-25 14:35:45 +01:00
RSDuck
0a1fb5ae50 Wifi power saving, hopefully enough! 2022-02-25 14:25:19 +01:00
RSDuck
03b5c48088 lower window update rate if rendering too fast 2022-02-14 00:27:00 +01:00
Arisotura
0761fe736f add support for zero-address in AR codes 3-A 2022-01-28 20:56:08 +01:00
Arisotura
915edd777e hopefully fix #1349 2022-01-24 12:16:39 +01:00
Nadia Holmquist Pedersen
2bda2f127b nifi: Set SO_REUSEPORT on BSD and macOS to prevent creation of socket failing 2022-01-12 20:40:39 +01:00
Arisotura
dff8980a27 Merge branch 'master' of github.com:Arisotura/melonDS 2022-01-09 02:16:03 +01:00
Arisotura
35cc79787d update copyright headers 2022-01-09 02:15:50 +01:00
Nadia Holmquist Pedersen
0a8f3c9344 Make the message when SDL2 fails to init more descriptive 2022-01-08 19:35:21 +01:00
Arisotura
10d7831917 can we, please, FINALLY, be done with this stupid issue 2022-01-08 12:53:06 +01:00
Arisotura
5c719a774f fdsfdfdgdfgfgdfg 2022-01-08 12:18:24 +01:00
Arisotura
80564ba947 explicitly eject the cart before a load with reset, preventing a spurious cart-eject IRQ on startup
also fix possible KEY1 issues when using internal BIOS
2022-01-08 11:20:21 +01:00
Arisotura
e665e25bd3
Custom path support (#1333)
also including:
* getting rid of shitty strings
* all new, cleaner ROM handling code
* base for DSi savestates
* GBA slot addons (for now, memory cart)
2022-01-07 14:00:43 +01:00
gal20
dfb2111a00 Fix screen scaling
The screen gap wasn't multiplied by the scaling factor, causing the result to be too low
Additionally, results of division should be rounded up
2022-01-05 21:03:13 +02:00
Charlene Campbell
c4cd9da674 don't link rt when oglrenderer disabled on apple 2021-12-29 18:28:27 +01:00
Nadia Holmquist Pedersen
f39eeeb9dd
title import: create all title/ subdirectories 2021-12-18 02:56:27 +01:00
Nadia Holmquist Pedersen
203cf5164b Create ticket subdirectory if missing during title import 2021-12-16 06:33:32 +01:00
Nadia Holmquist Pedersen
f1c9b42b45 ScreenPanelNative: Don't try to render the framebuffer if the emulator is not actually active.
This fixes an issue where the window draws with a gray background in macOS, and is see-through on Wayland-based desktops.
2021-12-09 01:57:02 +01:00
Nadia Holmquist Pedersen
14c6bba21f Manually center the window after setting its size on macOS
Qt's default window positioning is somewhat unreliable, and since we
don't currently remember the window position, let's at least make sure
that it's properly centered on open.
2021-12-09 01:21:06 +01:00
andrigamerita
151610eb6c
Treat SDL_INIT_JOYSTICK fail as non-critical (#1277)
Treating the fail of SDL_INIT_JOYSTICK as non-critical, because on some systems that SDL feature can for some reason fail. This leads to the emulator closing with a critical error, even though it would work perfectly fine with just a keyboard.
2021-12-01 13:52:58 +01:00
Arisotura
3300cc8f15 really, Arisotura? 2021-11-28 13:36:00 +01:00
Arisotura
44757a8323 SPU: block reads from ARM7 BIOS region. fixes #1267 (and prolly whatever other stupid game tries to play sound from NULL) 2021-11-25 16:49:43 +01:00
Arisotura
c04e43702c SPU: correctly read negative ADPCM initial values. fixes #1261 2021-11-23 18:47:54 +01:00
Arisotura
97e599f90f what. 2021-11-22 18:59:49 +01:00
Arisotura
e24a4e5e97 ensure shit doesn't asplode atleast until this code is redone 2021-11-21 16:12:07 +01:00
Arisotura
333b1247d9 remove remains of SDIOFile 2021-11-21 16:05:48 +01:00
Arisotura
73d7bada87 add valid wifi data to the default firmware 2021-11-20 13:22:20 +01:00
Arisotura
8100b6da6b ASGYHFDUHDIUIHSJODHSIJDHSIYGDHSJKDSDSDSDSD 2021-11-20 12:16:59 +01:00
Arisotura
7a0286a43d make firmware settings override also apply in DSi mode 2021-11-20 12:09:13 +01:00
Arisotura
593eb7c81c hopefully fix Qt6 2021-11-19 17:03:45 +01:00
Arisotura
1472a0ec4b move 'randomize MAC' setting to firmware settings, and add setting for changing the MAC.
make things overall betterer.
2021-11-19 13:31:14 +01:00
Arisotura
1fc775d964 better suited entry method for the firmware birthday 2021-11-18 20:24:37 +01:00
Arisotura
08eda46706 fix potential crash with firmware dialog (when closing dialog via X and opening it again) 2021-11-18 18:25:19 +01:00
Arisotura
f73df85d1c make external-BIOS toggle also explicitly control external firmware
make things a tad more consistent and explicit
2021-11-18 18:17:48 +01:00
Arisotura
19ddaee13b finally decouple Config from the core. baahhahahahah 2021-11-18 01:17:51 +01:00
Arisotura
65c2a844ac oops 2021-11-17 23:23:22 +01:00
Arisotura
e8bae0e146 what 2021-11-17 23:09:42 +01:00
RSDuck
3be26f456b prevent out of bounds write 2021-11-17 22:59:28 +01:00
Arisotura
d5b248bb86 decouple more config shit from the core. bahahah 2021-11-17 21:44:49 +01:00
Arisotura
13afaa0303 remove some more shitty strings 2021-11-17 20:57:30 +01:00
Arisotura
5bb8f4c922 * remove more Config dependencies from the core
* also use less shitty strings
2021-11-17 20:42:11 +01:00
Arisotura
69715043ca blfdlkgdfgdf 2021-11-17 18:41:59 +01:00
Arisotura
c1dcd585be decouple JIT from Config. bahahahahah 2021-11-17 18:15:50 +01:00
Arisotura
53dfcfb18a nicerer firmware color picker
also consistency aaaaaaaaaa
2021-11-17 14:53:46 +01:00
Arisotura
c6d1977448 UI consistency!!!! 2021-11-10 23:59:54 +01:00
Arisotura
3fad5dcbbb make the firmware dialog consistent with the rest of the UI 2021-11-08 20:57:26 +01:00
RSDuck
c233d99211 dtcm not dtcb 2021-10-29 12:09:00 +02:00
RSDuck
6c2ea93173 get rid of DTCMSize 2021-10-29 01:35:47 +02:00
Arisotura
635a47014f fix more bugs in the DLDI machine 2021-10-29 01:33:37 +02:00
Arisotura
cca5615748 add the PU checks. bahahahah 2021-10-29 00:36:55 +02:00
Arisotura
ead8d1b629 more UTF8 shenanigans huh 2021-10-28 23:51:25 +02:00
Arisotura
8b59c73c01 also don't try to save if there's no folder to sync to 2021-10-28 23:48:20 +02:00
Arisotura
d25102a9c8 don't explode if the folder-sync path points to a non-existing folder 2021-10-28 23:45:14 +02:00
Arisotura
c532059cd3 oops! 2021-10-28 22:45:23 +02:00
Arisotura
15a66b1be1 more accurate DTCM check 2021-10-28 22:41:42 +02:00
Arisotura
43daa1c7d2 blarg 2021-10-28 21:24:39 +02:00
Arisotura
e121953c9a more complete (and accurate) CP15 setup for direct boot 2021-10-28 21:15:12 +02:00
Arisotura
bfe50e41b4 MCR/MRC aren't available in user mode 2021-10-28 19:47:26 +02:00
Arisotura
9d82826cdb fix some gaps in CPU modes
* non-defined CPU modes are actually possible
* bit4 of all PSRs is forced to one (modes 00-0F aren't possible)
* modes 14/15/16 and 18/19/1A share a SPSR with modes 17 and 1B respectively (but they don't share the register banks)
* modes 10 and 1C/1D/1E don't have a SPSR (MRS returns the CPSR always)
2021-10-28 19:45:32 +02:00
Arisotura
ae489d9e03 zarg 2021-10-28 18:55:22 +02:00
Arisotura
ff3f661bb5
DLDI/SD folder-sync apparatus (#1251)
guess we can finally have DLDI that isn't obtuse
2021-10-28 18:47:13 +02:00
scurest
a8613af2bd
InputConfigDialog: more DRY (#1238) 2021-10-10 22:51:08 +02:00
Nadia Holmquist Pedersen
a9fc0adf96
Move resources to res/ directory (#1204)
* Move resources to res/ directory and update CMake scripts accordingly

Co-authored-by: Rayyan Ansari <68647953+RayyanAnsari@users.noreply.github.com>
2021-10-03 09:37:33 +00:00
Adrian Siekierka
d378b0252f
Generate a simple non-bootable firmware when not provided. (v2) (#1175)
* Generate a simple non-bootable firmware when not provided.

* Expose Username and Language into settings dialog.

* Add firmware overrides for more settings. Also make override optionals when a firmware is provided.

* Refactor firmware settings into separate dialog.

* use usernameLength instead of u16Username.length() (#3)

* Fix curly braces code-style.

* LoadUserSettingsFromConfig: convert from UTF-8 to UTF-16 via wstring_convert

* Fix firmware username capitalization.

* cleanup firmware backup logic

* Put brace where it should be

Co-authored-by: Rayyan Ansari <68647953+RayyanAnsari@users.noreply.github.com>

Co-authored-by: Filippo Scognamiglio <flscogna@gmail.com>
Co-authored-by: kyandora <71771686+kyandora@users.noreply.github.com>
Co-authored-by: Filippo Scognamiglio <filippo.scognamiglio@felgo.com>
Co-authored-by: RSDuck <RSDuck@users.noreply.github.com>
Co-authored-by: Rayyan Ansari <68647953+RayyanAnsari@users.noreply.github.com>
2021-10-02 20:16:27 +02:00
Nadia Holmquist Pedersen
b92622b765 Revert "Misc fixes for dsiwifi BMI stage (#1216)"
This reverts commit a54b076b06.
2021-10-02 13:57:52 +02:00
Adrian Siekierka
b7992cc084
Fallback to FreeBIOS when BIOS files are not found. (v2) (#1174)
* Fallback to FreeBIOS when BIOS files are not found.

* Add sources of drastic bios files.

* Move FreeBIOS/external BIOS choice to configuration option/checkbox.

* Fix indentation

Co-authored-by: Filippo Scognamiglio <flscogna@gmail.com>
Co-authored-by: Filippo Scognamiglio <filippo.scognamiglio@felgo.com>
2021-10-02 12:06:22 +02:00
Rayyan Ansari
796d603332
Redesign the Input dialog (#1226) 2021-09-30 17:23:25 +00:00
RSDuck
737171c906 implement margins for scheduler
hopefully this does not break anything
2021-09-27 03:30:15 +02:00
Nadia Holmquist Pedersen
1471c73ea6 buttonClicked workaround for old Qt 2021-09-17 18:36:07 +02:00
Arisotura
66a58f7478 misc. DSP fixoring
(still doesn't work)
2021-09-11 23:59:23 +02:00
Max Thomas
a54b076b06
Misc fixes for dsiwifi BMI stage (#1216) 2021-09-06 12:52:33 +02:00
Arisotura
9514efe4a0 BAHAHAHAHAHAHAAAAA-+*~+ 2021-09-02 00:16:36 +02:00
RSDuck
55ec724fee more fixes for literal invalidation 2021-08-31 08:13:22 +02:00
RSDuck
8d2746e517 fix #1187
how could this go on unnoticed for so long?
2021-08-31 04:53:25 +02:00
Arisotura
d20543c119
DMA timing renovation (#1207)
* make timers usable for measurement shito without being assfuckingly unreliable

* bürp

* Arisotura can you ever clean up your goddamn code

also regroup the timer code instead of having it split weirdly

* make the set-timing functions a tad less hacky

* congrats Arisotura you made an ass-enum

* add timing region tables, and separate timings for ARM9 DMA (exempt of 3c penalty)

* temp work on DMA timings, not finished

also, did you know? 'increment/reload' is also a thing for the source address

* begin work

* add some of the GBA slot/wifi timings

* complete it, I guess

* make some progress

* getting somewhere

* sdsdfs

* see, Arisotura, was it that hard? blarg.
2021-08-31 02:28:34 +02:00
Arisotura
e1f3fc75ea * add TSC shito
* fix possible modcrypt shittiness
2021-08-30 21:42:35 +02:00
Arisotura
e7f0923623 maybe don't leave in debug code, you derp 2021-08-30 20:28:51 +02:00
Arisotura
523552a92d actually make DSi-mode direct boot work to some extent 2021-08-30 20:26:49 +02:00
Arisotura
b84155e891 I'm a derp 2021-08-27 16:45:26 +02:00
WaluigiWare64
34af921322 ROM Info dialog - Only read 128 characters from each title
Titles should be zero-terminated, but this is for additional safety
2021-08-27 13:54:55 +01:00
Arisotura
36672a4089 use NDSHeader struct, and expand it with the DSi shit 2021-08-26 18:59:07 +02:00
Nadia Holmquist Pedersen
7395d6a6c0 Allow picking .dmg files as SD image 2021-08-26 18:55:49 +02:00
Arisotura
b40ff12a60 fix capitalization of DSiWare. heh 2021-08-25 12:31:20 +02:00
Arisotura
235da420c8
having fun with fatfs (#1189)
* patch TSC coords in DSi mode
* DSiware importer and shit
2021-08-24 17:46:20 +02:00
2jun0
346e8c0b87
Fix a touchless issue in hybrid layout (#1182)
In the previous commit, there was a touchless error on the hybrid screen.
This commit fix a touchless issue in hybrid layout.
2021-08-24 17:40:35 +02:00
Nadia Holmquist Pedersen
0d37a0a5fc Call emuPause before loading a ROM so we don't crash if one is already loaded 2021-08-23 10:45:18 +02:00
Nadia Holmquist Pedersen
6ad0e8d61a macOS: Allow opening ROMs with melonDS from Finder. 2021-08-23 10:27:03 +02:00
RSDuck
883fceb6ce use std::swap 🔃 2021-08-21 01:54:45 +02:00
Nadia Holmquist Pedersen
415ab22f3a fark 2021-08-17 01:01:15 +02:00
Nadia Holmquist Pedersen
2aeb452dfb SPU: Do clamping after applying SOUNDBIAS 2021-08-17 01:01:15 +02:00
Nadia Holmquist Pedersen
418b351986 SPU: Emulate SOUNDBIAS and 10-bit degrade 2021-08-17 01:01:15 +02:00
Arisotura
d5a20ad3c8 tidbits 2021-08-08 15:45:44 +02:00
Arisotura
c7325469c2 factor duplicate code in micLoadWav(). also add support for all sorts of WAV formats SDL can support. 2021-08-08 15:32:29 +02:00
Arisotura
bba14b2bb0 fix pissfucking touchscreen (again) 2021-08-08 14:45:16 +02:00
Arisotura
2df6b4fdc3
Audio interpolation (#1176)
add audio interpolation (emulation improvement)
2021-08-08 14:27:57 +02:00
RSDuck
b28a9e4d24 JIT: don't lengthen blocks on a skipped SVC
SVC would need special handling because of the bank switching
2021-08-04 14:58:41 +02:00
RSDuck
f900792dc0 addition to last commit 2021-08-04 14:35:54 +02:00
RSDuck
f792d3e6a1 handle changed VCount+threaded rasteriser more gracefully 2021-08-04 14:21:45 +02:00
Nadia Holmquist Pedersen
996bfe8436 Make limit framerate default instead of audio sync 2021-08-04 00:53:47 +02:00
DesperateProgrammer
85c2a76774
Fix for https://github.com/Arisotura/melonDS/issues/1169 (#1171)
* Fix for https://github.com/Arisotura/melonDS/issues/1169
LoadNAND was storing the stage 2 bootloader, while NWRAM access was disabled by Bit25 of SCFG_EXT putting the stage 2 into old shared WRAM, while executing it later with the bit enabled and fetching from an empty NWRAM.

* Fixed bug, where access to the NWRAM Bank A used the wrong page mask for write access

* Remove spaces before comma

Co-authored-by: Tim Seidel <t.seidel@kts-systeme.de>
Co-authored-by: RSDuck <RSDuck@users.noreply.github.com>
2021-08-02 22:15:33 +02:00
RSDuck
946eb7a834 fix pause when inactive 2021-08-02 20:41:43 +02:00
gal20
1bda85383f Fix for #1119 'Add "frame step" hotkey' 2021-07-30 18:16:26 +02:00
Arisotura
aaa97c9242 only open microphone when actually needed. fixes #1165 2021-07-29 01:19:03 +02:00
RSDuck
9ee2017443 don't add constant cycles if they're 0 2021-07-24 17:07:08 +02:00
RSDuck
6944fdbe78 add support for JIT profiling with VTune 2021-07-24 16:20:03 +02:00
RSDuck
c9b918d305 fix last commit for aarch64 2021-07-24 04:45:33 +02:00
RSDuck
c2152c8f74 JIT: fix ldm with writeback loading rn 2021-07-24 04:35:45 +02:00
WaluigiWare64
8513900892 ARM64 macOS JIT - fix warnings + some cleanup 2021-07-23 14:07:23 +01:00
DesperateProgrammer
b1c2665c39
NWRAM & Direct Boot (#1149)
* SCFG_BIOS now selects between NDS and DSi BIOS
Allowing experimental direct boot.

* - making NWRAM Priorities work as in the HW
- fixed loading DSi stage2 Bootloader when in direct boot (should not be loaded) and might interfere with the image loaded into the (N)WRAM previously

* NWRAM and SCFG Registers are now write-guarded by the corresponding SCFG_EXT7/9 Bits

* removed debugging remainder

* Moved NDSHeader dependent SCFG initialization into the new DSi::SetupDirectBoot function called from NDS::SetupDirectBoot when ConsoleType is DSi

* removed redundant SCFG_BIOS bit checks

* Set of changes from RSDuck's review

* removed a forgotten comment

* - removed the guarded debug outputs for NWRAM
- NWRAM writes to bank and window registers now apply their write masks.
- added comment on an existing TODO within the code describing, why this is OK
- fixed initial NWRAM bank reset just accessing set A

* NWRAM not mapped to 03... range if bit25 in SCFG_EXT is cleared

* removed NWRAM write block on cleared bit25 in SCFG_EXT

* changed type of iterator for MapNWRAM_x functions from s8 to int

* - reduced calculations/comparisons on NWRAM write operations
- changed u8 to unsigned int for an iterator MapNWRAM_x

Co-authored-by: Tim Seidel <t.seidel@kts-systeme.de>
2021-07-23 12:21:54 +02:00
Arisotura
cd4ef575ee NDSCart: correctly restrict reading the DSi region on DSi carts 2021-07-22 21:37:34 +02:00
Arisotura
ab48461dc5 Merge branch 'master' of https://github.com/Arisotura/melonDS 2021-07-20 19:30:47 +02:00
Arisotura
740071e427 oopsies 2021-07-20 19:30:29 +02:00
RSDuck
fdb6d226fd enable undo savestate load in the gui 2021-07-17 23:30:57 +02:00
Arisotura
98072d82bf shut up DSi-IO warnings 2021-07-17 18:26:56 +02:00
DesperateProgrammer
3a9e07c0b1
Fallback to backup DSi Footer in NAND Image (#1154)
* - added fallback to DSi footer copy at 000FF800h if reading footer at end of file failed. See https://problemkaputt.de/gbatek.htm#dsisdmmcimages
- changed output of ConsoleID to use PRIx64 to be consistent with all other tools working with the consoleID (readability/cosmetic improvement)

* Remove extra space

Co-authored-by: Tim Seidel <t.seidel@kts-systeme.de>
Co-authored-by: RSDuck <RSDuck@users.noreply.github.com>
2021-07-13 15:01:42 +02:00
WaluigiWare64
e5240a688c
Add ROM Header struct and ROM info dialog (#1095) 2021-07-02 16:42:54 +00:00
RSDuck
5a071c4c29 some tiny A64 optimisations 2021-06-30 00:41:04 +02:00
RSDuck
aa430608e7 support allocating more registers for aarch64 JIT
also some minor fixes for the x64 JIT as well
2021-06-29 22:25:43 +02:00
RSDuck
dd53b01f76 only recalculate GBA slot timing if necessary 2021-06-27 00:45:21 +02:00
Arisotura
dd2b86d026 add missing default return value. fixes #1105 2021-06-20 02:23:45 +02:00
Arisotura
5b9f972625 UI: detect and save when window is maximized, and restore it as such. fixes #1135 2021-06-20 02:21:48 +02:00
WaluigiWare64
f94b784c4d Use printf format macro here 2021-06-07 20:51:51 +01:00
RSDuck
1793abcfb4 don't printf from exception handler
it was handy for debugging, but it's dangerous
2021-06-07 19:02:09 +02:00
purringChaos
e3b4350f44
Add PoroCYon's DSP code. (#1123)
* Add PoroCYon's DSP code.

* Remove some teakra iles that we dont need.

* make some requested changes.

* move DataMemoryOffset into namespace.

* use deault param.

* ad the switch change

* <Generic> forget about the default parameter
2021-06-06 18:27:26 +02:00
cat
2494058a71
Add "frame step" hotkey and function (#1119) 2021-06-05 21:10:37 +02:00
Nadia Holmquist Pedersen
af36d10023 Explicitly set NoRole on the setup cheats option so Qt on mac will stop stealing it 2021-06-05 14:47:51 +02:00
RSDuck
21f5477450 PRIu64 requires inttypes.h to be included 2021-06-05 03:34:39 +02:00
Pedro
f74387a8c1
Implement NO$GBA debug registers. (#1110)
* Implement NO$GBA debug registers.

NO$GBA comes with 4 debug registers that allow a ROM to print text to
the emulator terminal and 2 other status registers, one with the name of the
emulator and the other with the clock cycles count. This commit
implements them for the ARMv5 processor.

Some small things to note:
 - `NocashPrint` was changed and now it takes an address to _the string_ instead of the flags before it (those
don't do anything anyways).
 - The "Emulation ID" register contains the string "melonDS " followed by version, _not_ "NO$GBA"

* Fix styling issue and improve comment regarding NO$GBA message flags
2021-05-27 12:15:16 +02:00
RSDuck
e48e45db76 frontend: handle tablet and touch events
fixes #654 and #548
2021-05-24 20:23:06 +02:00
RSDuck
9181ab19c7 GPU3D soft: prevent out of bounds read 2021-05-24 19:41:24 +02:00
RSDuck
f271bdf325 fix #906 2021-05-24 18:29:12 +02:00
WaluigiWare64
e02bbcb3ac Use printf macro for u64 2021-05-16 17:17:57 +01:00
Raphaël Zumer
4a39a84216
Propagate common ImportSRAM return value from NAND cartridge function (#1104) 2021-05-16 18:15:34 +02:00
Raphaël Zumer
eb7bedfc79
Remove outdated frontend solar sensor code (#1102) 2021-05-16 17:18:24 +02:00
RSDuck
509107fb59 set instead of or stencil buffer for left edges 2021-05-08 00:12:48 +02:00
Arisotura
6f91bcc39f use shitfucking stupid linebreaks so that our text files don't like stupid compact blobs in Notepad
(really, fuck Notepad)
2021-05-06 00:40:11 +02:00
Arisotura
d3c298bbe4 ASSFUCKING STUPID SHITPILE.
fixes #1044

(also add separator for cleaner menu)
2021-05-06 00:33:50 +02:00
Arisotura
50721719d2 GBACart: simulate open-bus decay roughly. fixes #1093 2021-05-04 12:58:59 +02:00
Arisotura
b7d5a7db75 don't attempt to parse lines that failed to fetch 2021-05-03 17:02:38 +02:00
Arisotura
41cd092a15 NDSCart: enforce WR bit.
Bad Apple demo will break, because its NitroFS driver is broken. it needs a DLDI argv structure to exist in order to use its DLDI driver instead.
2021-05-03 14:58:45 +02:00
WaluigiWare64
2ff065e5ea Fix some compiler warnings 2021-05-03 13:40:44 +01:00
Arisotura
cc36f55b8c Merge branch 'master' of https://github.com/Arisotura/melonDS 2021-05-02 21:19:12 +02:00
Arisotura
e2e7f65f9f revised DLDI driver that uses the hardware somewhat more correctly 2021-05-02 21:18:52 +02:00
Nadia Holmquist Pedersen
464897ea87 Explicitly include ${SDL2_PREFIX}/include
this only accidentally worked before
2021-05-02 16:42:04 +02:00
Nadia Holmquist Pedersen
d6036f9225 macOS-related CMake cleanups
* Remove useless explicitly specified link/include directories
* Don't pass -s or -pie to the linker as they aren't needed
2021-05-02 16:32:27 +02:00
Nadia Holmquist Pedersen
b0e97b229e Fix minimum Darwin version for targeting 10.15 2021-05-02 14:34:44 +02:00
Arisotura
03bfbd2be7 fix touchscreen code in non-hybrid layout mode, fixes #1087
(also what the fuck is that code)
2021-05-01 19:09:01 +02:00
Arisotura
33a1bd3ac3 er, oops 2021-05-01 15:06:08 +02:00
Arisotura
f219318292 Over the Hedge uses a tiny EEPROM, too.
fixes #899
2021-05-01 12:12:28 +02:00
Arisotura
18b1f79b44 Spider-Man 3 uses a tiny EEPROM, not a regular one 2021-04-30 22:59:50 +02:00
Arisotura
25ab02c650 fix another bad entry 2021-04-30 21:06:03 +02:00
Arisotura
414c608678 add ROMlist entry for Power Rangers Go-Busters (Korea) 2021-04-30 20:40:57 +02:00
Arisotura
da9024e2b7 er, all cart types might want to have teh B8 command 2021-04-30 17:34:41 +02:00
Arisotura
c2f37d44ce cart: ensure each set of commands can only be run in the correct command mode.
fixes #1083 (there was a chance an encrypted KEY1 command could be interpreted as something else and fuck things up)
2021-04-30 17:29:04 +02:00
Arisotura
5e648a8db3 fill most gaps in ROM list 2021-04-30 03:01:52 +02:00
Arisotura
8a5078abe3 support savemem for Face Training (NAND, atleast 32MB, likely 64MB) 2021-04-30 01:13:35 +02:00
Nadia Holmquist Pedersen
0a718adc77 Fix macOS right modifier detection.
Turns out my system was affected by a bug with modifier remapping in
macOS causing some of my left/right modifiers to be swapped. This commit
fixes them to be the correct values.
2021-04-29 19:45:41 +02:00
RSDuck
0a3a2ad009 fix aarch64 build with gcc 11 2021-04-29 15:15:16 +02:00
RSDuck
eae42fb9f8 request repaint instead of update after each frame 2021-04-29 15:13:53 +02:00
Nadia Holmquist Pedersen
cffffa887e macOS: Assign "Preferences..." to emu settings without also removing it from the config menu 2021-04-27 15:11:15 +02:00
Tatsh
5a9063089c
Savestate: use Platform::OpenLocalFile (#1026) 2021-04-26 23:21:58 +02:00
Arisotura
6691c6903b asfdasdas you'd better not give me shit now 2021-04-26 16:43:25 +02:00
Arisotura
a2c12f7e66 fix some more case sensitive shito 2021-04-26 15:50:02 +02:00
Arisotura
1afb8bfa46 that game is actually a tiny EEPROM 2021-04-26 15:30:00 +02:00
Arisotura
bf4052bc3d more of the same (actually fix the bug I was having) 2021-04-26 15:25:45 +02:00
Arisotura
4a5d5116a1 make extension checks case-insensitive 2021-04-26 15:20:28 +02:00
Arisotura
7ab19f157d add ROM entry for Clueless Fashion (#1050) 2021-04-26 13:23:29 +02:00
Arisotura
55a129e1a2 make sure to axe the GBA slot in DSi mode. (EXMEMCNT bit7 still applies to it, tho) 2021-04-25 13:13:16 +02:00
Arisotura
f8bb1aa98d 'aight 2021-04-25 11:54:08 +02:00
Arisotura
18497d396d add more Mac crap. hoping the weird characters made it through. 2021-04-25 11:53:29 +02:00
Arisotura
185c97f4ef try to cover right-mod keys under MacOS I guess 2021-04-25 11:34:56 +02:00
Arisotura
9d9865d256 hopefully remove shitty hack 2021-04-25 11:09:16 +02:00
Nadia Holmquist Pedersen
a860c5fbd3 Actually use the new script... 2021-04-25 03:55:01 +02:00
Nadia Holmquist Pedersen
bc4a156a4d More 10.14 fixes also make the version check in cmakelists actually work 2021-04-25 03:51:04 +02:00
Arisotura
1846a71265
Cart refactor (#1073)
complete cart-interface refactor, will make this code a lot easier to deal with
2021-04-25 00:48:02 +02:00
Nadia Holmquist Pedersen
0834fc1533
Add support for building with Qt6 (#865)
Co-authored-by: WaluigiWare64 <68647953+WaluigiWare64@users.noreply.github.com>
2021-04-24 13:30:10 +00:00
Nadia Holmquist Pedersen
796ef95862
Improve macOS bundling (#1067)
* Improve macOS bundling
* Bundle libs for macOS CI
* Add MACOS_BUILD_DMG CMake option and make the CI upload the DMG so we don't lose executable permissions.
* Manually copy plugins if macdeployqt doesn't
* Ad-hoc codesign the app
2021-04-21 23:50:32 +02:00
Nadia Holmquist Pedersen
06e2193c04 Fix up menu roles a bit 2021-04-19 09:18:50 +02:00
Arisotura
d5dbef2c22 make path inputs support drag/dropping files onto them to add the path quickly. fixes #1033 2021-03-29 01:08:22 +02:00
Arisotura
284a9b73b0 keep recent filenames from being absurdly long in the menu 2021-03-27 01:54:55 +01:00
WaluigiWare64
2c2e868de0 Disable JIT write-protect when de-initialising on ARM64 macOS 2021-03-22 20:14:21 +00:00
WaluigiWare64
ac49d8e25c Update copyright year and add missing GPL headers part 2
Looks like a lot of files were missed...
Closes #1036
2021-03-21 21:32:26 +00:00
WaluigiWare64
6b431a6664
Allow bundling libraries on macOS (#1013) 2021-03-21 15:32:23 +00:00
RSDuck
f060162dac attempt at fixing #1037 2021-03-17 16:44:54 +01:00
RSDuck
fbe691a673 fix read from unassigned variable for large BGs 2021-03-16 20:57:30 +01:00
RSDuck
436b3c4c1d update copyright year and add missing GPL headers 2021-03-12 20:07:40 +01:00
RSDuck
bc63531e00 avoid leaking threads in NDSCart_SRAMManager
also atomics
2021-03-11 16:54:43 +01:00
RSDuck
6a3aa551da remove direct reference to Switch frontend header 2021-03-03 00:43:56 +01:00
RSDuck
41dd448e28 call Renderer2D::VBlankEnd at vblank end
instead of vblank start
2021-03-01 04:06:11 +01:00
RSDuck
a046eb5038 separate GPU2D registers and renderer 2021-02-27 22:25:42 +01:00
WaluigiWare64
89051f63d4
Define CONTEXT_PC and use instead for much cleaner code (#1017)
* Define CONTEXT_PC and use instead for much cleaner code

Also include ways to get the Program Counter on ARM64 FreeBSD and NetBSD
2021-02-25 21:17:11 +00:00
WaluigiWare64
68da2ace58 Include winsock2.h before windows.h 2021-02-23 18:15:02 +00:00
SuuperW
94dcc9523e
SRAM things (#970)
* Allow SRAMManager to save to/load from a buffer.

* Don't delete what doesn't exist. Don't create a thread that will do absolutely nothing.

* Update SRAMManager's SecondaryBuffer when loading a savestate.
2021-02-23 02:46:02 +01:00
RSDuck
58dd1ec580 directly set VRAMDirty for VRAM BG/OAM writes 2021-02-23 02:09:18 +01:00
Nadia Holmquist Pedersen
97643586fa
Fix OpenGL display scaling on high DPI (#1011)
* Fix OpenGL display scaling on high DPI

* Scale the OSD too

* Fix indent
2021-02-22 18:17:48 +01:00
WaluigiWare64
532dc57025
Fix the JIT Code Memory on ARM64 Macs (#916) 2021-02-22 15:13:39 +00:00
RSDuck
0aa0ae6c69 fix #1010 2021-02-22 02:38:21 +01:00
wheremyfoodat
03b465c5e2
Fix edge case in the division engine, fix edge case in the CPU (#1003)
* Fixed division edge case: Div64/32 and Div64/64 set the remainder to 0 if dividend == INT64_MIN && divisor == -1

* Fixed CPU edge case where ARM9 ALU ops would switch to Thumb even when they shouldn't

* Only clear the lowest bit of the jump address in ALU ops with rd==15 (on recommendation of RSDuck)
2021-02-19 23:58:41 +01:00
WaluigiWare64
712919ec41
Remove unneeded OpenGL loading function code (#1006) 2021-02-17 20:53:07 +00:00
RSDuck
64c6654d94 use syncs instead of glFinish 2021-02-16 15:00:23 +01:00
RSDuck
295d60e4cb try to fix build when the compiler is stricter 2021-02-11 19:11:18 +01:00
RSDuck
f1e0816c1a detach and delete shaders directly after linking 2021-02-11 18:38:52 +01:00
RSDuck
f05bc50d40 use std::function in Thread_Create so we can revert back to using it 2021-02-11 16:00:36 +01:00
gal20
d63f7977f8
Remove code duplication in onChangeScreenSize (#968) 2021-02-09 23:42:31 +01:00
Wunk
a7029aebae
Allow for a more modular renderer backends (#990)
* Draft GPU3D renderer modularization

* Update sources C++ standard to C++17

The top-level `CMakeLists.txt` is already using the C++17 standard.

* Move GLCompositor into class type

Some other misc fixes to push towards better modularity

* Make renderer-implementation types move-only

These types are going to be holding onto handles
of GPU-side resources and shouldn't ever be copied around.

* Fix OSX: Remove 'register' storage class specifier

`register` has been removed in C++17...
But this keyword hasn't done anything in years anyways.

OSX builds consider this "warning" an error and it
stops the whole build.

* Add RestartFrame to Renderer3D interface

* Move Accelerated property to Renderer3D interface

There are points in the code base where we do:
`renderer != 0` to know if we are feeding
an openGL renderer. Rather than that we can instead just have this be
a property of the renderer itself.
With this pattern a renderer can just say how it wants its data to come
in rather than have everyone know that they're talking to an OpenGL
renderer.

* Remove Accelerated flag from GPU

* Move 2D_Soft interface in separate header

Also make the current 2D engine an "owned" unique_ptr.

* Update alignment attribute to standard alignas

Uses standardized `alignas` rather than compiler-specific
attributes.

https://en.cppreference.com/w/cpp/language/alignas

* Fix Clang: alignas specifier

Alignment must be specified before the array to align the entire array.

https://en.cppreference.com/w/cpp/language/alignas

* Converted Renderer3D Accelerated to variable

This flag is checked a lot during scanline rasterization. So rather
than having an expensive vtable-lookup call during mainline rendering
code, it is now a public constant bool type that is written to only once
during Renderer3D initialization.
2021-02-09 23:38:51 +01:00
RSDuck
891427c75c fix #994 2021-02-09 23:36:46 +01:00
RSDuck
e7ee3b7bc8 wild shot into the dark 2021-02-09 22:19:44 +01:00
RSDuck
6256a42e00 improve and fix NonStupidBitfield also get rid of some UB
fixes optimised lto clang build
2021-02-09 19:24:57 +01:00
WaluigiWare64
2502c8d212
Add NetBSD support (#985)
Note - This will require PaX MPROTECT to be disabled for melonDS by running:
paxctl +m melonDS
2021-02-03 16:14:53 +00:00
RSDuck
7b9b8418cb fix #978 2021-02-02 20:37:28 +01:00
RSDuck
2e999ae1b8 attempt at fixing #972 2021-02-02 16:29:23 +01:00
RSDuck
40aae154cf prevent race condition around framebuffers 2021-02-02 15:33:45 +01:00
WaluigiWare64
f9e701a719
Initialise cursor hiding timer before potential deletion of ScreenPanelGL 2021-01-29 16:05:51 +00:00
RSDuck
a3f4aaf503 call glFlush only once
that seems to atleast get rid of the flicker
the weird issue that clears don't work is still there
2021-01-29 12:38:31 +01:00
Nadia Holmquist Pedersen
b75b3f69b7
Don't save the window size to the config if in full screen (#933) 2021-01-27 00:14:24 +01:00
RSDuck
4a28068295 the rasteriser doesn't have to be done on line 144
thanks to the VRAM cache
2021-01-26 19:05:21 +01:00
RSDuck
aceabe92e6 fix recent regression in screen layout calculation 2021-01-26 18:19:25 +01:00
RSDuck
b78bc4cb66 fixes to the threadedness of the sw rasteriser
also fix #639 and fix #880
2021-01-26 16:42:27 +01:00
WaluigiWare64
ab222ab135
Use libepoxy to load in OpenGL functions (#960)
* Use libepoxy to load in OpenGL functions

Prevents having to load them in manually

* Install libepoxy in the CI

* Do not link OpenGL libraries, libepoxy opens them itself

* Add libepoxy to build instructions
2021-01-26 13:19:32 +00:00
gal20
54b1a752d4
Add hybrid layout (#772) 2021-01-25 19:47:54 +01:00
WaluigiWare64
43348210f9 Fix some compiler warnings 2021-01-25 14:12:13 +00:00
RSDuck
b9a56bc4e4 more screen modes
- add support for different aspect ratios
- add support for displaying only one screen at once
2021-01-24 22:32:13 +01:00
WaluigiWare64
536902d610 Fix crash if OpenGL version is lower than requirements 2021-01-24 15:44:05 +00:00
WaluigiWare64
9994d3a644
Add FreeBSD support (#939)
* Add FreeBSD support

* Fix indentation

* Fix Linux not finding OpenGL

* Link POSIX Realtime Extensions library

* Link POSIX Realtime Extensions when OpenGL is enabled too

* Fail if shm_open memory exists and also check for errors

* fix the last commit

* (try to) Setup FreeBSD CI

* Fix some issues with FreeBSD CI

* Make with all cores

* Remove FreeBSD CI 

It doesn't want to work for some reason
2021-01-22 19:20:32 +01:00
SuuperW
34da7f5cc3
minor code refactoring, to simplify BizHawk support (#958) 2021-01-22 19:05:07 +01:00
WaluigiWare64
f259fd9755 fix again 2021-01-22 17:40:56 +00:00
WaluigiWare64
5dd94f5ec1 fix last commit 2021-01-22 17:38:30 +00:00
WaluigiWare64
faf7cf752d Add option to pause emulation when focus is lost
Fixes #875
2021-01-22 17:35:13 +00:00
RSDuck
8a3a8b7c68 include polygon attr opaqueness for translucent polygons in render key 2021-01-22 12:19:51 +01:00
Madhav Kanbur
1e4c0c9d72
Polish up archive support (#930)
* Fix directory path when extracting from archive

* Don't create new dir in execution dir of melonds
* Create it beside the archive instead

Signed-off-by: Madhav Kanbur <abcdjdj@gmail.com>

* ArchiveUtil : Use QT functions for I/O

* Make it more platform independent, cleaner

* Fixes permission related crash on linux

Signed-off-by: Madhav Kanbur <abcdjdj@gmail.com>

* NDSCart : Abstract out common code in LoadROM()

Signed-off-by: Madhav Kanbur <abcdjdj@gmail.com>

* Extract nds roms to memory

* Some stuff is still broken in the frontend

Signed-off-by: Madhav Kanbur <abcdjdj@gmail.com>

* GBACart : Abstract out common code in LoadROM()

Signed-off-by: Madhav Kanbur <abcdjdj@gmail.com>

* Extract gba roms to memory

Signed-off-by: Madhav Kanbur <abcdjdj@gmail.com>

* Integrate archive support with recent files

Signed-off-by: Madhav Kanbur <abcdjdj@gmail.com>

* onClickRecentFile : Pause emu thread conditionally

* Don't pause at start of the function
* If user opens an archive and hits cancel, it won't pause

Signed-off-by: Madhav Kanbur <abcdjdj@gmail.com>

* Handle Resets when loading from archives

* Ask user to pick the rom(s) again (i.e. GBA & NDS)
when there are multiple files in the archive(s)

* Directly load if only 1 file

Signed-off-by: Madhav Kanbur <abcdjdj@gmail.com>

* Archive support for drag-n-drop

* Also recent files support for drag-n-drop

Signed-off-by: Madhav Kanbur <abcdjdj@gmail.com>

* main : Allocate rombuffer objects on stack

* Less messy, decreases chances of memory leaks

* Underlying implementation of qbytearray uses heap (hopefully?)

Signed-off-by: Madhav Kanbur <abcdjdj@gmail.com>

* GetSavestateName : Archive support

* Construct ssname from srampath (since rompath has archive name)

NOTE: In general, archive name != rom file name !!!!!!!!!!

Signed-off-by: Madhav Kanbur <abcdjdj@gmail.com>

* Add srl and dsi as "direct-load" formats

* Direct-load = anything not in an archive

Signed-off-by: Madhav Kanbur <abcdjdj@gmail.com>

* Don't use static functions

Signed-off-by: Madhav Kanbur <abcdjdj@gmail.com>

* Remove QT stuff from Util_ROM

* Also, during reset, directly load file from archive (no rom picker)

Signed-off-by: Madhav Kanbur <abcdjdj@gmail.com>

* Remove QT includes from FrontendUtil.h

Signed-off-by: Madhav Kanbur <abcdjdj@gmail.com>

* Util_ROM/LoadROM() : Use SetupDSiNAND()

Signed-off-by: Madhav Kanbur <abcdjdj@gmail.com>

* Util_ROM/Reset() : Use strrchr()

Signed-off-by: Madhav Kanbur <abcdjdj@gmail.com>

* Util_ROM : Put Archive stuff behind ifdefs

Signed-off-by: Madhav Kanbur <abcdjdj@gmail.com>

* main: Set parent widget for archive dialog boxes

Signed-off-by: Madhav Kanbur <abcdjdj@gmail.com>

* Revert "Util_ROM/Reset() : Use strrchr()"

This reverts commit c8af6f066f.
2021-01-22 11:22:32 +01:00
SuuperW
d42ca1ec4b
Implement "lag frame" flag and counter (#949)
* Implement "lag frame" flag and counter, and expose flag and both frame counters. BizHawk wants these.

* Track frame count and lag frames while the system isn't running.
2021-01-21 21:26:27 +01:00
Arisotura
8a068c2294 GL: ensure to set depthmask to TRUE before rendering opaque shit 2021-01-21 21:10:43 +01:00
WaluigiWare64
bf0ea26596
Add option to hide mouse on inactivity (#955)
Also allow user to specify how long to wait before hiding
2021-01-21 19:48:25 +01:00
RSDuck
1494d7aa24 fix ARM64 again 2021-01-21 15:32:02 +01:00
RSDuck
3b994fe892 fix last commit for ARM64 2021-01-20 18:01:21 +01:00
RSDuck
771dfaca2e JIT: handle STR post with rd == rn
fixes Zelda Four Swords
2021-01-19 23:50:08 +01:00
WaluigiWare64
e8f06b8ac1 Define melonDS version in CMake
Prevents having to update multiple files (melon.rc, melon.plist, version.h) when a new version is released.
2021-01-19 11:39:25 +00:00
gal20
cd6859ef6f
Add hotkey to swap screens (#953) 2021-01-18 22:51:39 +01:00
RSDuck
d529b650c0 implement swapping the position of both screens
closes #855
2021-01-17 22:16:32 +01:00
RSDuck
1d6cc3c6ef keep only one handle of the NAND file around 2021-01-17 19:56:02 +01:00
RSDuck
53d5def919 pad ShaderConfig to a multiple of 16 2021-01-17 17:15:03 +01:00
WaluigiWare64
c109235d01
Also include Homebrew on ARM64 Mac location in CMake (#938) 2021-01-11 23:01:23 +01:00
Ben Morris
b402cb19b2
quit on sigint (#934)
* quit on sigint

* formatting
2021-01-10 03:48:40 +01:00
Kimmy Andersson
bf97387f26
Improved SRAM performance (#925)
* Offload NDS SRAM writing to separate thread, debounce writes to two seconds after last flush or DeInit.

* Fixed printf messages.

* Fixes after CR.

* Fixed potential portability issue with time_t
2021-01-09 22:18:57 +01:00
RSDuck
6b306e18a5 handle edge cases properly 2021-01-09 22:06:15 +01:00
RSDuck
c475372372 mask off upper bits when incrementing RX addr
fixes #931
2021-01-09 18:31:12 +01:00
RSDuck
7081c2de65 readd vram invalidation through display capture
also remove stray printf
2021-01-07 22:39:36 +01:00
RSDuck
e311eea1c5 fix out of bounds read 2021-01-07 18:36:49 +01:00
Arisotura
1d8e302c13
Merge pull request #926 from WaluigiWare64/fix/freebsd-include-aflink
Fix FreeBSD undefined identifier issues in Lan_PCap.cpp
2021-01-07 18:32:02 +01:00
Arisotura
641ddf8137
Merge pull request #678 from WaluigiWare64/feature/zip-support
Add support for loading ROMs from a variety of compressed files
2021-01-07 18:30:12 +01:00
WaluigiWare64
e485ce3e13 Add Open ROM inside Archive function
instead of using file extensions
2021-01-07 17:26:55 +00:00
RSDuck
5865b4438e fix JIT block hash after a merged thumb BL
fixes #928
2021-01-05 22:38:29 +01:00
WaluigiWare64
8a1f3d8ce2
Properly fix macOS finding libarchive
(i hope)
2021-01-05 16:22:07 +00:00
WaluigiWare64
00e9a5e0c7 Allow melonDS to write the file
The directory wasn't created, so the file was not being written
2021-01-05 15:34:28 +00:00
RSDuck
ef75e3cdd1 JIT A64: fixes
also update Switch code for latest libnx
2021-01-05 14:36:50 +01:00
WaluigiWare64
dbb12b48ec Fix FreeBSD undefined identifier issues in Lan_PCap.cpp
FreeBSD requires net/if.h to be included as well.
2021-01-05 12:06:17 +00:00
Madhav Kanbur
25455cb7aa
Set menubar height to 0 in fullscreen (#924)
* Set menubar height to 0 in fullscreen

* Avoid using hide() on the mainwindow's menubar as it breaks menubar
actions.

* Fixes save/load state shortcuts not working in fullscreen (#922)

Signed-off-by: Madhav Kanbur <abcdjdj@gmail.com>

* Don't modify menubar width when exiting fullscreen

* Fixes weird looking menubar on Windows

Signed-off-by: Madhav Kanbur <abcdjdj@gmail.com>
2021-01-05 11:37:27 +01:00
RSDuck
6e3207f9dc GX: fix vector test
after I broke it in d2c04c5c51
fixes Mario & Luigi Partners in Time
2021-01-04 16:36:51 +01:00
WaluigiWare64
6c91157495
Fix libarchive being found on macOS
properly this time
2021-01-04 10:31:57 +00:00
WaluigiWare64
9e15488e95
Fix mistake in merge commit 2021-01-03 16:00:50 +00:00
WaluigiWare64
83648f2d31
Merge branch 'master' into feature/zip-support 2021-01-03 15:53:23 +00:00
WaluigiWare64
f070eafce4
Fix return value of Archive::ExtractFileFromArchive 2021-01-03 15:29:03 +00:00
RSDuck
cb58a422ac fix mac/clang build again 2021-01-02 19:58:49 +01:00
RSDuck
7d448d911d use C++ style structs everywhere 2021-01-02 11:38:06 +01:00
RSDuck
e2c61b28e0 fix mac/clang build 2021-01-02 11:28:46 +01:00
RSDuck
18fe5c6759 prevent bleeding in screen texture
fixes #920
2021-01-02 08:55:48 +01:00
RSDuck
fa4363ede6 make FIFO size static whene possible 2020-12-30 23:37:46 +01:00
Madhav Kanbur
6adf1731c1 Add option to open recent files
* Remember last 10 roms in config
* Clear button for clearing list

Signed-off-by: Madhav Kanbur <abcdjdj@gmail.com>
2020-12-30 18:57:43 +05:30
RSDuck
d2c04c5c51 GX: add fastpath for single parameter cmds 2020-12-30 02:29:43 +01:00
RSDuck
1649c0e089 don't calculate the CRC checksum of ROMs on load
the value isn't used anywhere anyway
2020-12-30 01:59:35 +01:00
WaluigiWare64
b24e855fb8 Fix the ARM64 Code Emitter on macOS 2020-12-28 18:18:33 +05:00
Arisotura
e2de622d57 heh 2020-12-25 14:42:23 +01:00