Commit Graph

1122 Commits

Author SHA1 Message Date
Arisotura 2c51a49527
Merge pull request #546 from nadiaholmquist/feature/unix-xdg
Make melonDS properly installable systemwide on UNIX systems
2020-01-28 21:37:36 +01:00
Arisotura 8b9eef352c
Merge pull request #554 from rzumer/github-actions
Add GitHub workflow configurations for continuous integration with Linux and Windows
2020-01-28 21:35:58 +01:00
Arisotura 12732aa51b
Merge pull request #550 from rzumer/slot2
Support GBA game cartridges for DS connectivity
2020-01-28 21:32:29 +01:00
Arisotura 3984491cce * prevent potential race condition while changing window title
* cap framerate at 1000FPS

fixes #547
2019-12-30 13:29:19 +01:00
Raphaël Zumer 22d11209b0 Split GBA Reset and Eject logic into two sets
This allows solving some crashes and provides more
flexibility in how GBA cartridges change state between
soft and hard resets. Since save states including GBA
data do not carry over the original save file path,
and the GBA cartridge is being reset along with the other
parts of the system, this is needed to avoid losing
the GBA state on reset following a state load, while
preserving the behavior where cartridges are ejected
when calling Stop().
2019-12-22 16:01:13 -05:00
Raphaël Zumer f380767fab Only store the GBA ROM header in save states
Also fix some potential crashes due to SRAM
state not being cleared correctly on state load.
2019-12-22 14:13:10 -05:00
Raphaël Zumer a57ba1368e Skip saving/loading GBA flash state if SRAM is null 2019-12-22 11:45:11 -05:00
Raphaël Zumer 2abdcc54dd Implement DoSavestate() for GBACart classes
Admittedly untested.
2019-12-19 00:12:40 -05:00
Raphaël Zumer be19e0e8d4 Make solar sensor hotkeys configurable 2019-12-18 23:35:18 -05:00
Raphaël Zumer 8172cbc170 Add DoSavestate() function to GBACart_SolarSensor
Still empty, but should be implemented along with the rest.
2019-12-18 23:35:14 -05:00
Nadia Holmquist Pedersen c5623c4dcd Change the config/data dirs from "melonds" to "melonDS" for consistency. 2019-12-19 02:52:34 +01:00
Nadia Holmquist Pedersen 43535c873a Remove redundant desktop file and change desktop/icon file name to net.kuribo64.melonDS, also change melonds to melonDS. 2019-12-19 02:48:11 +01:00
Raphaël Zumer 67903b7974 Include romlist.bin with Linux CI artifacts 2019-12-13 13:01:06 -05:00
Raphaël Zumer 55db337c8d Package shared resources with Windows CI artifacts 2019-12-13 13:00:42 -05:00
Raphaël Zumer 86ae2e02d0 Fix Ubuntu CI when Microsoft breaks repositories 2019-12-13 09:59:28 -05:00
Raphaël Zumer 331c3c3b86 Upload CI build artifacts 2019-12-12 22:58:30 -05:00
Raphaël Zumer 546e7ded96 Add Windows CI configuration 2019-12-12 21:35:19 -05:00
Raphaël Zumer 469ff2d932 Update packages on CI before installing 2019-12-12 17:07:52 -05:00
Raphaël Zumer d2e7519763 Enable GitHub CI on pull request
Also rename the build to be more specific.
2019-12-12 15:34:44 -05:00
i404788 295404a5a6
Fix weird spacing 2019-12-12 09:03:01 +00:00
Raphaël Zumer 7027813cb2 Add C/C++ with CMake GitHub workflow
This enables continuous integration
with GitHub Actions.
2019-12-11 11:46:23 -05:00
Raphaël Zumer f8e43ac486 Display solar sensor level changes on OSD 2019-12-10 19:24:30 -05:00
Raphaël Zumer f257b007a2 Properly pass through GBA GPIO writes 2019-12-10 19:10:14 -05:00
Raphaël Zumer ca9f183d24 Hook up solar sensor control to the UI
It uses hardcoded keypad left and right arrows.
2019-12-10 17:54:35 -05:00
Raphaël Zumer f6cd66e5b1 Implement solar sensor processing 2019-12-10 17:43:25 -05:00
Raphaël Zumer 9128517b90 Add basic GBA GPIO support, solar sensor detection 2019-12-10 16:36:39 -05:00
Raphaël Zumer 0092937148 Rename SRAMFlash to SRAMFlashState 2019-12-10 16:36:00 -05:00
Raphaël Zumer 4d1f3d419e Clarify comments and credit DeSmuME for Flash I/O 2019-12-10 09:57:15 -05:00
Raphaël Zumer 68d3474458 Fix GBA Flash read/writes and clean up 2019-12-09 07:37:09 -05:00
Raphaël Zumer 8fc9a33a9f Implement GBA cartridge Flash reading and writing 2019-12-09 06:10:26 -05:00
Raphaël Zumer 5a7600dc79 Fix "é" character encoding in NDS.cpp 2019-12-09 06:09:52 -05:00
Raphaël Zumer 4e8b0c8ce4 Eject GBA cartridges on stop from the UI 2019-12-09 06:09:30 -05:00
Raphaël Zumer 5ad85f15c1 Add a framework to support non-SRAM GBA saves
The support is not yet there, but at least
we should not read or write bogus data.
2019-12-09 04:58:54 -05:00
Raphaël Zumer 86b746dd1c Remove unused Write function in NDSCart 2019-12-09 04:51:59 -05:00
Raphaël Zumer 62b9f51e23 Handle GBA cartridge SRAM writes 2019-12-08 21:20:01 -05:00
Raphaël Zumer 48a8a25548 Reset GBA cartridge state when loading a new ROM 2019-12-08 17:13:56 -05:00
Raphaël Zumer 91bf62a1d4 Keep GBA carts loaded when booting to firmware 2019-12-08 15:55:06 -05:00
Raphaël Zumer 1da9b3806c Hook up the GBA slot to the UI
A GBA cartridge may be loaded in the same
way as a DS cartridge. If the extension of
the selected file is "gba", it will be treated
as a GBA file. The system boot logic is still
centered around the DS cartridge, so loading
a GBA file will not start or reset it.
2019-12-08 15:31:20 -05:00
Raphaël Zumer 968768042e Properly init/deinit the GBA slot 2019-12-08 15:30:56 -05:00
Raphaël Zumer d86ee1d5bf Add GBA cart model and allow reading from it 2019-12-08 15:30:07 -05:00
Raphaël Zumer f21347c918 Fix GBA memory values on deselected CPU
Previously, the GBA memory was 0xFF-filled
on both CPUs. However, GBATEK reports that
the deselected CPU is 0x00-filled, and that
some titles depend on this behavior to
function properly.
2019-12-08 12:33:02 -05:00
Raphaël Zumer 9381b531cd Ignore the build directory 2019-12-07 15:26:58 -05:00
Nadia Holmquist Pedersen 23bca8c17a Tell the user where to place romlist.bin if it can't be found for UNIX non-portable builds. 2019-12-05 00:40:59 +01:00
Nadia Holmquist Pedersen 03f33fa5c3 Make UNIX builds non-portable by default. 2019-12-05 00:12:40 +01:00
Nadia Holmquist Pedersen 4f87707cda If all else fails, look for data files (romlist.bin) in the current working direcoty. 2019-12-05 00:11:52 +01:00
Nadia Holmquist Pedersen 959c37ead7 Open with rb instead of r in OpenDataFile to avoid potential problems with Windows. 2019-12-04 22:54:30 +01:00
Nadia Holmquist Pedersen 7af658f089 Add a UNIX_PORTABLE build option, turning it off makes a build of melonDS suitable for systemwide installation. 2019-12-04 22:46:33 +01:00
i404788 7730e6c1e2
Coding style + weird spacing 2019-11-20 23:24:16 +00:00
i404788 477be1d155
add device name 2019-11-19 22:34:02 +00:00
i404788 c2a55bc217
clean log 2019-11-19 22:22:47 +00:00