Commit Graph

2354 Commits

Author SHA1 Message Date
9ebcb5f143 axe CP15.h, we don't need it anymore. 2018-12-04 17:55:03 +01:00
172fb4876a begin work on general timing renovation. way shitty because it behaves as if caches were off, so everything will be slow as shit. 2018-12-04 17:54:10 +01:00
808bda9171 do not require dpad mappings for joystick axis to work 2018-12-02 15:11:56 +01:00
5b20f40fad oopsies 2018-11-28 02:45:20 +01:00
b1973014d3 add some missing shit to savestates 2018-11-25 22:40:08 +01:00
4b8cea3b38 revise windows to be even closer to hardware.
apparently hardware only ever updates its 'inside/outside window' status when reaching the coordinates. which becomes apparent if you, like, try to invert a window midframe.
2018-11-25 19:13:23 +01:00
2035784f9f on the DS, windows with backward coordinates end up inside-out. revise window code accordingly. fixes #287. 2018-11-25 18:36:47 +01:00
5f1f2a7b4a fix regression in Marvel Nemesis. keep GX cycle counter from drifting absurdly far in the negatives, and fix a few other issues. 2018-11-25 17:39:43 +01:00
3f8befaf4e add support for forced-blank. fixing spurious colors during screen transitions in Picross 3D.
I thought I had already fixed that, but it was stuck in the long-dead jit branch, so, here it is, back from the dead.
2018-11-24 21:10:26 +01:00
46d5a31275 well yeah that's what I thought
GXFIFO stalls don't stall the ARM7
2018-11-24 05:23:35 +01:00
391c8d43b0 drain GX pipelines when there's nothing else running. fixes some weird bugs, apparently. 2018-11-24 04:27:27 +01:00
7b48ce5b75 * fix possible issues with GXFIFO stalling
* rework GPU timings, now almost same as hardware. display lists generally execute faster. not finished. not bad for a start tho.
* Rayman RR2 is still getting sound streaming issues. I don't think GXFIFO stalls are supposed to halt the ARM7. that doesn't make sense and would mess badly with sound since it's also using the ARM7 bus.
2018-11-24 02:29:25 +01:00
a9e7f8bc5b add proper support for GXFIFO stalls.
bad games that blast the GXFIFO and overflow it:
* Super Mario 64 DS
* Rayman RR2

latter seems to get its music streaming crapoed.
2018-11-23 22:21:41 +01:00
78c767b693 Add option to limit framerate from UI
Signed-off-by: Madhav Kanbur <abcdjdj@gmail.com>
2018-11-21 11:11:02 +05:30
27e1ca4103 beginning timing renovation.
smarter Reschedule().

gotta start somewhere, I guess.
2018-11-09 14:10:06 +01:00
7ba32ea076 make the ARM clock shift configurable. nothing fancy there, just paving the way for DSi support later. 2018-11-07 18:38:54 +01:00
fa4fa164cb * store all 32 matrix stack entries in savestates instead of 31.
* bump savestate version up. will break compatibility, but the alternative would be guessing the missing matrix entries somehow, so blarg.
* avoid relocating the savefile if loading a savestate fails.
2018-11-05 16:14:48 +01:00
9b32418367 3D: fix0r matrix stack handling when stack pointers overflow (it fucking wraps around).
fixes #231 and probably others of the same vein.
2018-11-05 16:05:16 +01:00
49dd86ad3c Add manifest for building as a flatpak
It's a bit rough but it includes a desktop file and everything needed 
for the emulator to run.
It enables pulseaudio for sound, network for wifi emulation, device=all 
for gamepad support and filesystem=home to enable the emulator to write 
the save files to the same folder as the rom.

Because melonds uses sdl2 and gtk3, it should run on wayland, but I'm 
not including the socket because I haven't personally tested it to work.
2018-11-04 23:38:14 +01:00
b4165cc0a9 3D: keep the rasterizer from accidentally going out of bounds when given very flat X-major edge slopes.
this, by a fucking shitshow of butterfly effect, ends up fixing #234. technically, the rasterizer was going out of bounds, which, under certain circumstances, caused interpolation to shit itself and generate Z values that were out of range (but still ended up in the zbuffer). sometimes those values ended up negative, which caused these glitches when polygons had to be drawn over those.

about fucking time.
2018-11-04 23:21:58 +01:00
a0c7ed5689 Fixed a formatting issue with a title
Had to add an extra space between <hr> and ## How to use, the previous commit messed up the formatting
2018-11-01 16:10:34 -04:00
59390a9082 Changed the readme to make it look a little fancier 2018-11-01 02:11:11 -04:00
fb284f33ad Merge branch 'master' of https://github.com/StapleButter/melonDS 2018-10-27 14:44:52 +02:00
658856b256 fix implementation of CoTaskMemRealloc, as it can decide to move the buffer elsewhere, we have to account for that 2018-10-27 14:44:39 +02:00
307c26de93 Merge pull request #248 from Dirbaio/master
Two fixes
2018-10-27 14:16:46 +02:00
a4339daade oops! don't hardcode a 9 2018-10-27 13:51:40 +02:00
f4890137c0 fix configfile loading under Windows, for when it checks AppData
by making it actually, you know, build the complete file path

hopefully that fixes that crash bug, but I couldn't reproduce it after touching the code some. heisenbugs are lots of fun
2018-10-27 13:50:29 +02:00
d4d4965b2f remove trainwrecky code that caused issues now. 0.7 2018-10-26 22:17:27 +02:00
c8d63f2be7 fuck that shit.
I fucking give up.

Windows actually doesn't want to cooperate either, and is being utter shit.

so, I'm going to do it the desmume way.
2018-10-26 20:10:25 +02:00
2b20b49bb3 guess this is good for 0.7. readme update as a pretext 2018-10-26 21:06:46 +02:00
eb67ac9a1b finally come up with a (crummy) solution for those fucking shitty submenus 2018-10-26 20:56:59 +02:00
cbe63f8fd5 until we actually get somewhere with the menu crap... fix potential crashes when exiting. 2018-10-26 18:39:41 +02:00
c5670a22a5 fix GTK menus asploding upon exit. hopefully. fuck this code 2018-10-26 16:29:46 +02:00
65bba8ff81 call it a release??? 2018-10-24 00:38:35 +02:00
6e1209dd32 misc things 2018-10-24 00:32:31 +02:00
8b4ba2d8b9 separate SRAM setting coded, I guess 2018-10-24 00:24:36 +02:00
1edf2aed3b * code function for relocating the savefile.
* don't bitch at the user when trying to load a savestate file that doesn't exist.
* grey out 'load state' items if there is no file.
2018-10-23 22:54:09 +02:00
f60ac42466 pass savefile name to NDS::LoadROM() instead of having the core generate it. 2018-10-23 21:52:41 +02:00
a4a9bca5f0 fix more shit 2018-10-23 20:40:57 +02:00
98076f2334 hopefully fix all 3D-related crashes when loading savestates 2018-10-23 20:20:38 +02:00
c9a7a0d744 * start coding UI shito for savestates
* change default mapping for L button to the key right next to Shift because we're gonna derp around with it
* still some shito to fix, but hang on, we're getting there
2018-10-23 19:57:01 +02:00
4075dad0a8 3D: attempt at fixing that shadow/AA interaction bug in the MKDS character select screen 2018-10-22 01:36:04 +02:00
d191af8690 rewrite how structures are stored to savestates (store individual fields, to avoid compatibility issues)
also fixes stability issues when 3D is involved. turns out we were storing raw pointers to vertices. figures

more crapo code to get around that, but atleast it works without asploding now.
2018-10-21 03:16:41 +02:00
cbcecc8cdb don't store BIOS in savestates. no point doing so. 2018-10-19 01:05:19 +02:00
cf3a71a247 move libraries around to try and fix some weird error 2018-10-18 20:57:29 +02:00
0c74309e2b also adding melon.rc, huh 2018-10-18 14:21:16 +02:00
a68aae8ff7 add Savestate.cpp to the cmake list, as pointed out by khang06 2018-10-18 14:20:14 +02:00
467461fb3d properly initialize shit before attempting to read from the file
fixes load failure when attaching a debugger
2018-10-18 05:14:15 +02:00
b5c39680a5 hax, finally making savestates usable
F1 to save, F2 to load. filename hardcoded for now.

shits itself:
* when the 3D engine is used
* when a debugger is used (heh)
2018-10-18 04:00:16 +02:00
20862b7daf aight, wifi done 2018-10-18 03:22:53 +02:00