WaluigiWare64
7da4550eea
Add support for macOS ( #771 )
...
* use shm_open() instead of memfd_create() on macOS
malloc.h isn't a header on macOS
* Change OpenGL headers + create ifdef for DO_PROCLIST
macOS seems to already have the OpenGL functions defined, without the ifdef, it gives "ambiguous references" errors.
* macOS doesn't have ->gregs in uc_mcontext
and it doesn't have REG_RIP either
https://github.com/gperftools/gperftools/blob/master/m4/pc_from_ucontext.m4
* use getpid() to make memory file name unique
* #ifndef __APPLE__ for AF_PACKET and linux/if_packet.h
* Add include and link directories for macOS and link the OpenGL framework
* Add macOS CI
* Use newly added libslirp package from Homebrew
https://github.com/Homebrew/homebrew-core/pull/63412
* Use Apple's Clang instead of GNU GCC on macOS
* Add macOS build instructions to README
* Try to fix macOS undefined symbol
* snprintf doesn't take null terminator into account
* Map new memory on macOS for JIT
* Only use gcc-ar if using GNU Compiler
* re-add fastmem code - whoops!
* Fix style issue - use camelCase not snake_case
* Set Minimum macOS version
* Switch Minimum OS X version to 10.9
* Add macOS libpcap library name
* fix memory leak
* Fix binding keys in macOS
* Allow getting MAC address on macOS
melonDS on Linux uses AF_PACKET, which doesn't exist on macOS. Instead, this commit uses AF_LINK on macOS to get the MAC address.
* Remove unneeded macOS CI dependencies
* Build melonDS app bundle on macOS
Now it is no longer required to install the libraries on macOS, they come with the app bundle.
* fix macOS CI not being able to find macdeployqt
* copy melonDS.app with recursive because it's a folder
* Disable fastmem checkbox on macOS
* Disable fastmem by default in config
* forgot a semicolon
* Don't bundle libraries, causes issues on macOS <10.15
* Update README + allow finding version in Finder on macOS
* Make sure fastmem checkbox stays uncheckable
2020-11-29 17:11:33 +01:00
RSDuck
1ff4a1564f
fix DSi mode with interpreter
...
I'm so stupid
2020-11-26 00:04:19 +01:00
WaluigiWare64
f11d53c69c
Add radio buttons to switch between Direct and Indirect Mode ( #822 )
2020-11-22 15:31:29 +01:00
WaluigiWare64
a1cf1967ac
Fix fullscreen toggle with joysticks ( #821 )
2020-11-22 13:00:18 +01:00
RSDuck
50cdfd0137
fix edge indices count
2020-11-19 17:46:21 +01:00
RSDuck
690eed9e26
GPU2D: don't an indirect call in tight loops
2020-11-16 18:33:58 +01:00
RSDuck
842379c410
harmless DMA micro optimisation
2020-11-16 17:22:34 +01:00
RSDuck
1085cc14a4
prevent use after free
2020-11-16 17:03:24 +01:00
RSDuck
21dbca9543
use proper index buffers
2020-11-16 15:58:23 +01:00
Raphaël Zumer
550241dbad
Fix GBA file drag-and-drop when the system is off ( #817 )
2020-11-15 16:15:09 +01:00
RSDuck
05b94eff66
make audio output thread safe(r?)
2020-11-15 15:29:38 +01:00
RSDuck
d697f9e0d2
make fastmem work again
2020-11-13 15:20:53 +01:00
RSDuck
62e3f41f20
delay savefile flush to the end of the frame
2020-11-11 13:38:05 +01:00
RSDuck
2720df9650
make platform objects typesafer and add mutex
2020-11-09 21:52:35 +01:00
RSDuck
052079afeb
fix Windows
2020-11-09 20:56:31 +01:00
RSDuck
78839f862e
JIT fixes
...
- fix fastmem problems on linux
- small fix memory leak
- SlowWrite functions always take in a 32-bit variable so that the C compiler knows that the values aren't necessary zero extended
- a few other stylistic things
- handle SIGBUS as well (for macos)
2020-11-09 20:43:31 +01:00
RSDuck
ad7791f726
better framelimiter for reference: https://github.com/citra-emu/citra/blob/master/src/core/perf_stats.cpp#L129
2020-11-02 20:13:22 +01:00
Filippo Scognamiglio
fbca47381b
Fix a couple of wrong cpp function pointers. ( #785 )
2020-10-31 17:53:01 +01:00
Filippo Scognamiglio
45ea1fa990
Fix compilation issues on pedantic cpp compilers. ( #783 )
...
* Fix compilation issues on pedantic cpp compilers.
* Avoid using fullblown static function.
2020-10-31 17:40:05 +01:00
RSDuck
9ac60a840a
SPU: work with scalars instead of arrays
2020-10-31 13:48:02 +01:00
Hypnotron
05e274a1f6
Added 8/16-bit IPCFIFOSEND writes
2020-10-29 16:09:25 -04:00
RSDuck
c03d83b7be
remove qt_sdl dependency from frontend util
2020-10-28 19:45:50 +01:00
Arisotura
d2cd3eadbe
fix to timers (ZXDS no longer runs slow as shit)
2020-10-27 05:03:17 +01:00
Arisotura
81964a0f89
make things function atleast somewhat
...
no pciture is being actually sent yet
2020-10-26 21:54:08 +01:00
Arisotura
c0c1c2e1c2
camera: remember PLL config
2020-10-26 21:16:20 +01:00
Arisotura
fc922ffb14
Merge branch 'master' into dsi_camera
...
# Conflicts:
# src/DSi_I2C.cpp
2020-10-26 20:47:30 +01:00
Arisotura
49a96f41da
I2C: silence logging for devices A0/E0 (mysterious alternate cameras)
2020-10-26 20:34:54 +01:00
Arisotura
2f15bcf93b
betterer battery level
2020-10-26 17:55:25 +01:00
Arisotura
af0a9e92c4
make unlaunch'd NANDs work
2020-10-25 18:25:09 +01:00
Arisotura
9fdc1de6fe
add a few missing 32bit I/O accesses (IPC, SPI)
2020-10-25 18:14:40 +01:00
WaluigiWare64
8d70d0926c
Merge branch 'master' into feature/zip-support
2020-10-23 00:39:29 +01:00
WaluigiWare64
a8851a51f1
Switch to libarchive
2020-10-22 23:41:26 +01:00
RSDuck
65be1840f0
change JIT branch optimisations default to 1
...
branch linking is dead
2020-10-15 05:59:45 +02:00
Madhav Kanbur
dc46da0e24
Input : Treat numpad keys as keypresses
...
Typically, modifiers are masked out of keypresses to distinguish
between hotkeys and keypresses. This patch prevents the numpad
modifier from getting masked out in KeyPress() and KeyRelease().
Signed-off-by: Madhav Kanbur <abcdjdj@gmail.com>
2020-10-13 11:02:58 +05:30
kyandora
f8c4bf6db1
save microphone hotkeys ( #781 )
2020-10-07 01:33:11 +02:00
RSDuck
ef4215e172
flush to file after importing SRAM
2020-10-06 00:49:16 +02:00
Valeri
0d845c9e69
Random minor fixes ( #757 )
...
* Fix incorrect/questionable assert() usage
Originally reported by https://lgtm.com/projects/g/Arisotura/melonDS/?mode=tree&ruleFocus=2159000700 ,
but also includes a bunch of other fixes.
* Fix some `printf` warnings
Rule https://lgtm.com/projects/g/Arisotura/melonDS/?mode=tree&ruleFocus=2160310550
* Remove useless check
It is never passed thanks to `if (num_in < 1) {...; return}` before
Rule https://lgtm.com/projects/g/Arisotura/melonDS/?mode=tree&ruleFocus=2154840804
* Add missing header guard, rename other to avoid conflicts
Rule https://lgtm.com/projects/g/Arisotura/melonDS/?mode=tree&ruleFocus=2163210746
* Make DSi_SDDevice destructor virtual
Rule https://lgtm.com/projects/g/Arisotura/melonDS/?mode=tree&ruleFocus=2158670642
* Use thread-safe localtime_r, assign `time` result directly
Rule https://lgtm.com/projects/g/Arisotura/melonDS/?mode=tree&ruleFocus=2154840805
* Fix MinGW build
It needs _POSIX_THREAD_SAFE_FUNCTIONS to export `localtime_r`
2020-10-01 13:44:09 +02:00
RSDuck
9d5791f8e5
use fixed sized integers from stdint.h
2020-10-01 13:32:06 +02:00
RSDuck
6977302403
make OpenGL renderer a build option
...
mostly meant for the Switch port
2020-10-01 00:01:05 +02:00
Arisotura
a88df19708
avoid out-of-bounds read in GPU2D. fixes #763
2020-09-18 00:29:08 +02:00
RSDuck
edf4c66724
fix build on Switch
2020-09-11 19:29:06 +02:00
RSDuck
f2fa52f26c
add functionality to import savefiles
2020-09-11 03:08:06 +02:00
Arisotura
8d42b1c7d7
messin' around
2020-09-08 20:19:37 +02:00
PoroCYon
00e2ec3faf
fix 8-bit ConsoleID address decoding typo ( #749 )
2020-09-07 04:09:03 +02:00
WaluigiWare64
ea640398f9
Add support for fullscreen hotkey ( #748 )
2020-09-06 22:59:35 +02:00
RSDuck
9772201345
remove some UB
...
- savestates used to read a four bytes from a single byte value
- a few unassigned variables
- some other things
- also make the ROR macro an inline function
2020-09-04 20:37:14 +02:00
Arisotura
94d12c68b3
heh
2020-09-04 13:41:51 +02:00
Arisotura
3739e4dd67
muhhahahahahh
2020-09-04 10:36:50 +02:00
Arisotura
5431c469c3
actually add DLDI. bahahahhh
2020-09-03 20:28:07 +02:00
Arisotura
81eda0f19c
bahahahhh
2020-09-03 19:05:13 +02:00
Arisotura
0ee5bb7a3b
Merge pull request #734 from v1993/master
...
Fix "Improved polygon splitting" option in GUI
2020-09-03 13:12:38 +02:00
Arisotura
1f634ed157
Merge branch 'master' of https://github.com/Arisotura/melonDS
2020-09-03 11:52:41 +02:00
Arisotura
aa94cbaeb0
DSi: add support for 8-bit VRAM writes when enabled in SCFG_EXT. fixes #733
2020-09-03 11:51:50 +02:00
qeeg
9bfaf8682d
Fix a typo
2020-08-31 16:37:42 -05:00
v1993
aed7a32243
Fix "Improved polygon splitting" option in GUI
2020-08-31 18:56:20 +03:00
RSDuck
b12e1a1b6e
JIT fastmem: fix out of bounds read
...
seems to fix #727
2020-08-25 18:13:17 +02:00
Arisotura
4be68aafe0
make SD support actually be a thing
2020-08-25 00:34:57 +02:00
Arisotura
e5dd692d32
AES: fix bug where CCM-encrypt MAC could be obliterated, by attempting to write it while the output FIFO was full
2020-08-25 00:17:22 +02:00
Arisotura
b36b3feb7f
support .dsi extension for dragdrop/cmdline launching
2020-08-24 21:25:10 +02:00
Arisotura
31e83b2bf3
fix config file lookup. fixes #717
2020-08-24 21:14:46 +02:00
RSDuck
30fc6bbc09
JIT: fix QDSUB/QSUB for interpreter run
2020-08-24 21:07:20 +02:00
Arisotura
f4427a89d0
disable savestate menu items in DSi mode
2020-08-24 20:13:58 +02:00
Arisotura
3685edeef2
make GL display also not default
2020-08-24 20:03:24 +02:00
Arisotura
39af95e869
make the AR engine use the correct bus funcs based on DS/DSi mode
2020-08-24 19:55:20 +02:00
Arisotura
13521211d2
make software renderer the default
2020-08-24 19:32:44 +02:00
Arisotura
e7025abcdc
* fix build error
...
* make betterer polygon splitting an option
* add GL_LEQUAL depth test for 'equal' mode, might help
2020-08-24 19:32:07 +02:00
Arisotura
abccc44eec
make MAC randomization optional
2020-08-24 19:19:41 +02:00
Arisotura
c29e630314
oops.
...
fixes #725
2020-08-24 12:00:13 +02:00
Arisotura
b5f9278b3a
GL: hopefully finally fix the checkerboard issue
2020-08-20 03:01:05 +02:00
Arisotura
0688a15e47
blarg
2020-08-20 01:37:33 +02:00
Arisotura
959e7f568d
GL: be more careful with framebuffer mappings. might fix issues.
2020-08-20 01:19:09 +02:00
Arisotura
660792d64b
wifi:
...
* don't receive packets if the RX buffer is zero-sized
* avoid potential out-of-bound writes
2020-08-19 19:16:09 +02:00
Arisotura
c9447935ff
NWifi: correctly determine ROM/chip/etc IDs based on hardware version (as specified in firmware).
...
fixes #700
2020-08-19 17:53:31 +02:00
Arisotura
e1add6f3d7
3D: add a bunch of missing variables to savestates. oops.
...
fixes #716
2020-08-19 16:25:40 +02:00
Arisotura
00f33343e4
3D/GL: experimental attempt at reducing warping on quads, pentagons, etc...
2020-08-19 14:53:42 +02:00
Arisotura
de19ce6250
3D/GL: make polygon generation code cleaner, add quicker codepath for triangles (also laying ground for some evil experiment)
...
also fix stupid bug with line polygons
2020-08-19 13:02:54 +02:00
Arisotura
a32d997e1c
SPU: don't process channels with len<4
2020-08-19 04:18:17 +02:00
Arisotura
6f4e7c60b2
GPU2D: allow writes to DISPCNT, master brightness, capture, dispFIFO regardless of POWCNT.
...
fixes #665
2020-08-19 00:46:16 +02:00
Arisotura
ba373ca72a
DSi: make ARM9-clock-selector actually work
2020-08-17 19:15:45 +02:00
Arisotura
e27d55505f
blarg
2020-08-15 01:11:18 +02:00
Arisotura
f8d1d08e9c
(finally) build the goddamn cheat interface
2020-08-15 00:14:05 +02:00
RSDuck
4299ef5f06
use unordered map for JIT RestoreCandidates
...
also fix WifiRead32?
2020-08-14 23:38:47 +02:00
Arisotura
4cefff2528
add AR code file parser and shit
2020-08-13 00:20:34 +02:00
Arisotura
28b8f614ee
heh
2020-08-11 18:03:44 +02:00
Arisotura
0bd53a34ef
lay base for the actual dialog
...
also make EmuSettingsDialog properly modal
2020-08-11 17:38:29 +02:00
Arisotura
f23e782966
hey look. Arisotura the lazy derp finally made a dialog.
2020-08-11 15:58:41 +02:00
RSDuck
36bdb591be
fix JIT for code in VRAM
...
apparantely Pokemon B/W needs this
fixes #708
2020-08-09 13:29:04 +02:00
WaluigiWare64
240175f274
Update CMakeLists.txt
2020-08-06 14:39:42 +01:00
WaluigiWare64
6d71f9c832
Merge branch 'master' into feature/zip-support
2020-08-05 15:06:15 +01:00
U-RAYYAN-PC\Rayyan
7e5eafe345
Statically link libzip
2020-08-05 14:50:18 +01:00
RSDuck
e4b1526b47
reset JIT fastmem on JIT block cache reset as well
2020-07-31 23:05:11 +02:00
RSDuck
2a3147db46
reset fastmem on DSi soft reset
2020-07-31 22:39:27 +02:00
Arisotura
c5ecef7410
fix similar bug with emu settings dialog
...
also make the reset-warning dialog a bit betterer
2020-07-31 20:51:16 +02:00
Arisotura
d21cd20290
fix some pause bugs
2020-07-31 20:45:30 +02:00
RSDuck
a89741c628
fix unterminated string + remove some JIT logging
2020-07-29 01:31:57 +02:00
RSDuck
f56aa60eb6
check IRQ first then Idle loop
...
apparently I put it this way for a reason
2020-07-28 00:44:58 +02:00
RSDuck
ea734084ca
check DSi interrupts for halted processor wakeup
2020-07-27 23:18:33 +02:00
RSDuck
5903b11bda
subtract cycles after checking IRQ and Halt
...
also switch back to adding to ARM::Cycles instead of subtracting from them
2020-07-27 23:14:39 +02:00
Arisotura
dff14ca80a
Merge pull request #682 from nadiaholmquist/slirp-merge
...
Merge slirp branch into master
2020-07-27 16:01:55 +02:00
RSDuck
17ce4d2a73
x64 JIT: remove unecessary MOV
2020-07-27 13:49:13 +02:00
Nadia Holmquist Pedersen
6a682a8ef0
Link iconv instead of ${Iconv_LIBRARIES} because idk Windows
2020-07-26 22:26:50 +02:00
Nadia Holmquist Pedersen
a1f939e0cb
use FindIconv and link it on all platforms when not built in
2020-07-26 22:16:53 +02:00
Nadia Holmquist Pedersen
173e3b037c
Link iconv for Windows static builds
2020-07-26 22:08:57 +02:00
Nadia Holmquist Pedersen
b4ad35948d
Merge remote-tracking branch 'upstream/slirp' into slirp-merge
2020-07-26 21:41:09 +02:00
RSDuck
0e7df468c7
x64 JIT: generate patch trunk for RSCRATCH4
...
I thought I already fixed this?
2020-07-25 22:21:26 +02:00
RSDuck
887ad27ed8
implement carry setting ALU op with imm
2020-07-25 22:08:43 +02:00
RSDuck
af31d25086
fix #672
2020-07-25 21:16:23 +02:00
RSDuck
8a96dfce18
fix build with JIT disabled
...
fixes #675 and #674
2020-07-25 20:59:53 +02:00
WaluigiWare64
c351e777b4
part 2 of fix Linux invalid encoding
2020-07-24 18:25:07 +01:00
WaluigiWare64
a5d9f69127
Fix Linux "invalid encoding" filename
2020-07-24 18:19:02 +01:00
RSDuck
116d831cfd
Fix 16-bit DSi ARM9 read
2020-07-23 20:06:44 +00:00
RSDuck
f5130f82eb
Arisotura isn't the only derp
2020-07-23 19:56:09 +00:00
Arisotura
ac8f44125b
I'm a derp
2020-07-23 21:27:45 +02:00
RSDuck
e85d2e2cf3
Use the correct slow path for block read/write
2020-07-23 19:12:25 +00:00
RSDuck
961b4252e2
Make it buildable on aarch64
2020-07-23 19:07:33 +00:00
RSDuck
e63bd7e38c
for some reason tabs and spaces were mixed
2020-07-23 17:43:25 +02:00
Arisotura
2f9a6b7c03
SPU: delay channel start until whenever it can actually start. fixes maxmod interpolated mode.
2020-07-23 12:59:19 +02:00
WaluigiWare64
7937406af6
Change binary stream to u8 and cast to char*
2020-07-22 16:39:24 +01:00
WaluigiWare64
7fb67570e9
fix
2020-07-22 16:17:32 +01:00
WaluigiWare64
c8e934ce97
Fix indentation + delete contents
2020-07-22 16:01:18 +01:00
U-RAYYAN-PC\Rayyan
96e0e37156
Link it up to onOpenFile()
2020-07-22 15:15:56 +01:00
U-RAYYAN-PC\Rayyan
0009a3ffd1
Add the extractROM function
2020-07-22 15:13:14 +01:00
U-RAYYAN-PC\Rayyan
523ff9ff1c
Add libzip dependency in the workflow files and to CMakeLists.txt
2020-07-22 14:22:23 +01:00
RSDuck
3827fa562f
another try
2020-07-09 00:11:47 +02:00
RSDuck
1519b3d5fa
attempt at fixing aarch64 linux yet again
2020-07-08 23:57:43 +02:00
RSDuck
8f5d8d1e12
fix for fastmem when pc is used as immediate
...
and (hopefully) make SIGSEGV handler work for aarch64 linux
2020-07-08 23:47:24 +02:00
RSDuck
3786660099
misc JIT changes
2020-07-08 23:08:25 +02:00
RSDuck
778623a8b7
make linux work and fix a few bugs
2020-07-04 18:58:00 +02:00
RSDuck
c5381d2911
reconcile DSi and JIT, fastmem for x64 and Windows
2020-06-30 23:50:41 +02:00
Arisotura
d9e1bf737c
blarg
2020-06-21 18:34:53 +02:00
Arisotura
c32da212f1
make it possible to static-link libslirp
2020-06-21 15:44:56 +02:00
Arisotura
ff69df2a15
add AES-CCM encrypt
...
makes the eShop work
2020-06-21 12:20:02 +02:00
Arisotura
e43a216ab5
take care of some minor details
2020-06-21 11:02:42 +02:00
Arisotura
7132e11bd4
make it work without a hack
2020-06-21 10:29:08 +02:00
Arisotura
b31e049b30
wifi fixes and shit. getting there, somewhat.
2020-06-21 01:43:32 +02:00
Arisotura
91ff63a194
fix slirp crash when exiting without having inited slirp
...
also fix misc bugs
2020-06-16 14:09:54 +02:00
RSDuck
ea6d03581b
make literal optimisation work again
...
enable single register block load/store optimisations for x64 aswell
2020-06-16 12:11:20 +02:00
RSDuck
e335a8ca76
first steps in bringing over the JIT refactor/fastmem
2020-06-16 12:11:19 +02:00
RSDuck
fea9f95bba
fix inlined IO register access
2020-06-16 12:06:43 +02:00
RSDuck
e7d076403d
Merge branch 'generic_jit' of https://github.com/Arisotura/melonDS into generic_jit
2020-06-16 12:06:42 +02:00
RSDuck
c17f7b100e
allow allocating caller saved regs on windows
2020-06-16 12:01:10 +02:00
RSDuck
efb796640b
use instr hash as key for restore candidates
...
makes Golden Sun burn a little slower through the JIT memory
2020-06-16 12:01:10 +02:00
RSDuck
80b88dbd05
allow allocating caller saved registers
...
currently system-v only
2020-06-16 12:01:09 +02:00
RSDuck
052ff73672
rewrite JIT memory emulation
2020-06-16 12:01:08 +02:00
RSDuck
b902cd1b8e
fix regression from last commit
...
also a small mistake with msr
2020-06-16 11:59:10 +02:00
RSDuck
5a3607bc68
don't use param registers for ReadBanked/WriteBanked
...
should fix linux build
2020-06-16 11:59:09 +02:00
RSDuck
6d217e1010
fix build with JIT disabled and set default JIT maxblock size to 32
2020-06-16 11:59:09 +02:00
RSDuck
dc86bac83d
hopefully fix stack handling for linux
2020-06-16 11:59:08 +02:00
RSDuck
c2dd6a186d
implement msr and mrs for the x64 JIT
2020-06-16 11:59:07 +02:00
RSDuck
1c98cefcee
compile UMULLs and some fixes
2020-06-16 11:59:06 +02:00
RSDuck
1c07932b40
implement block linking + some refactoring
...
currently only supported for x64
2020-06-16 11:59:06 +02:00
RSDuck
1ad90cb334
include more information in DataRegion
2020-06-16 11:58:46 +02:00
RSDuck
3ab9e4a4c9
arm64 fix itcm invalidation and ldm^/stm^
2020-06-16 11:57:58 +02:00
RSDuck
3098c6a9a0
preparations for block linking
2020-06-16 11:57:57 +02:00
RSDuck
5ab56cef5f
this mistake was phenomally stupid
2020-06-16 11:57:57 +02:00
RSDuck
225f90cced
the time of good commit names is long gone
2020-06-16 11:57:56 +02:00
RSDuck
c8b7a34383
git played a prank on me haha very funny
2020-06-16 11:57:55 +02:00
RSDuck
262dc7ad00
this it should work
2020-06-16 11:57:55 +02:00
RSDuck
d2acceb367
fixup for aarch64 JIT
2020-06-16 11:57:54 +02:00
RSDuck
2725429727
fix LDM usermode for aarch64 as well
2020-06-16 11:57:53 +02:00
RSDuck
3173e6e25d
re add error for unsupported JIT platforms
2020-06-16 11:57:52 +02:00
RSDuck
0d83e98e04
apply fixes for aarch64 linux by @nadiaholmquist
2020-06-16 11:57:52 +02:00
RSDuck
99b34efe2d
move ARM64 JIT backend here
2020-06-16 11:57:51 +02:00
RSDuck
baed0ac0d5
remove debug leftovers
2020-06-16 11:57:50 +02:00
RSDuck
ec965c6014
improve nop handling and proper behaviour for LDM^
...
fixes dslinux
2020-06-16 11:57:49 +02:00
RSDuck
000c03c9d6
disable literal optimations in DTCM
2020-06-16 11:57:48 +02:00
RSDuck
1cfbbcbb2a
make savestates 100% compatible again
2020-06-16 11:57:48 +02:00
RSDuck
3e7483636f
make literal optimisation more reliable
...
fixes spanish Pokemon HeartGold
2020-06-16 11:57:47 +02:00
RSDuck
d1d96d2236
fix config key for jit literal optimisations
2020-06-16 11:57:46 +02:00
RSDuck
441869a105
integrate changes from ARM64 backend and more
...
- better handle LDM/STM in reg alloc
- unify Halted and IRQ in anticipation for branch inlining
- literal optimisations can be disabled in gui
- jit blocks follow simple returns
- fix idle loop detection
- break jit blocks on IRQ (fixes saving in Pokemon White)
2020-06-16 11:57:45 +02:00
RSDuck
9cf7780e46
decrease jit block cache address granularity
...
fixes Dragon Quest IX
move code with side effects out of assert, fixes release build
(thanks to m4wx for this one)
also remove some leftovers of jit pipelining
2020-06-16 11:56:45 +02:00
RSDuck
52dd0ee75a
remove leftover debug code
2020-06-16 11:56:37 +02:00
RSDuck
40b88ab05a
new block cache and much more...
...
- more reliable code invalidation detection
- blocks aren't stopped at any branch, but are being followed
if possible to get larger blocks
- idle loop recognition
- optimised literal loads, load/store cycle counting
and loads/stores from constant addresses
2020-06-16 11:56:36 +02:00
RSDuck
0e26aa4ede
load register only if needed
...
- do thumb bl long merge in the first step
- preparations for better branch jitting
2020-06-16 11:56:02 +02:00
RSDuck
85680d6fe5
more fixes for flag optimisation
...
+ small cycle counting optimisation
2020-06-16 11:56:01 +02:00
RSDuck
d57ee718ba
remove debug printing
2020-06-16 11:56:00 +02:00
RSDuck
d208f5909c
fixes for flag optimisation
2020-06-16 11:55:53 +02:00
RSDuck
f378458c10
optimise away unneeded flag sets
...
- especially useful for thumb code and larger max block sizes
- can still be improved upon
2020-06-16 11:55:44 +02:00
RSDuck
316378092a
abandon pipelining on jit
...
fixes Golden Sun Dawn
this makes the cpu state incompatible between interpreter and JIT. That's why switching cpu mode requires a restart(not requiring is stupid anyway) and the pipeline is manually filled when making a save state.
2020-06-16 11:55:24 +02:00
RSDuck
26ecf6bb3c
fix register alloc for half word loads
...
fixes Mega Man Star Force 2 with cheat applied
it probably used a pc relative load which were interpreted as branches
2020-06-16 11:54:51 +02:00
RSDuck
86b96ca47a
remove unneeded dolphin code, C++11 static_assert
2020-06-16 11:54:50 +02:00
RSDuck
851930f5e0
jit: fix RSC
2020-06-16 11:54:49 +02:00
RSDuck
0d786573ab
remove debug printf
2020-06-16 11:54:48 +02:00
RSDuck
00cd9af033
fix uninitialised memory mapping
2020-06-16 11:54:47 +02:00
RSDuck
d74b15eecc
jit: fix thumb hi reg alu and mcr halt
...
+ mcr/mrc aren't always, msr_imm is never unk on ARM7
2020-06-16 11:54:06 +02:00
RSDuck
4deecc7d65
jit: decrease blockcache AddrMapping size for ARM9
2020-06-16 11:54:05 +02:00
RSDuck
03b321f540
jit: fix misc static branch things
2020-06-16 11:54:05 +02:00
RSDuck
3167ddcde1
jit: LDM/STM keep proper stack alignment
2020-06-16 11:54:04 +02:00
RSDuck
dd04cef47e
jit: fix BLX_reg with rn=lr
2020-06-16 11:54:03 +02:00
RSDuck
86f2be7260
jit: add compile option
2020-06-16 11:54:03 +02:00
RSDuck
fc82ca1a97
jit: remove unnessary files from dolphin
2020-06-16 11:53:22 +02:00
RSDuck
d13d625f73
jit: make everything configurable
2020-06-16 11:53:21 +02:00
RSDuck
0ff79ea2ad
jit: fix linux
2020-06-16 11:53:11 +02:00
RSDuck
24aff49ae4
jit: fix wrongly placed const
2020-06-16 11:53:11 +02:00
RSDuck
9336fcbbe6
jit: SMULL and SMLAL
2020-06-16 11:53:10 +02:00
RSDuck
f22521a43d
jit: LDM/STM finally(!) working + MUL, MLA and CLZ
2020-06-16 11:53:10 +02:00
RSDuck
83bd863361
jit: branch instructions
2020-06-16 11:53:09 +02:00
RSDuck
27cbc821b1
jit: thumb block transfer working
...
also pc and sp relative loads and some refactoring
2020-06-16 11:53:08 +02:00
RSDuck
10e386fe50
JIT: most mem instructions working
...
+ branching
2020-06-16 11:53:08 +02:00
RSDuck
550e6b86d2
JIT: compilation of word load and store
2020-06-16 11:53:07 +02:00
RSDuck
ea98a44e1e
jit: correct cycle counting for thumb shift by reg
2020-06-16 11:53:06 +02:00
RSDuck
2f6b46fd4f
JIT: implemented most ALU instructions
2020-06-16 11:53:06 +02:00
RSDuck
c692287eba
JIT: base
...
all instructions are interpreted
2020-06-16 11:53:05 +02:00
Arisotura
aa6ff499f9
prepare JIT beta branch
2020-06-16 11:52:45 +02:00
Arisotura
1101ed773b
make it get further
2020-06-16 02:52:53 +02:00
Arisotura
afbdd96a90
make it actually connect. hark hark hark
2020-06-15 16:06:00 +02:00
Arisotura
c6dc5dfc4b
get it to atleast finish a scan without shitting itself
2020-06-15 14:35:02 +02:00
Arisotura
3fde8411a7
fix ass-stupid RTC bug
2020-06-15 13:40:54 +02:00
Arisotura
fc5eedc716
* take nwifi forward some
...
* shut up CP15 printf's for Fx0
* fix bugs
2020-06-15 13:39:33 +02:00
Arisotura
5cd1177e34
huh. all DSi files had outdated copyright years
2020-06-05 20:44:18 +02:00
Arisotura
bbce434815
pointless fix
2020-06-05 20:22:55 +02:00
Arisotura
4b73f81ee0
clean it up
2020-06-05 20:20:03 +02:00
Arisotura
a29e645340
get somewhere
2020-06-05 19:12:03 +02:00
Arisotura
200c494a55
get this little experiment started
...
for now all it does is crash
2020-06-04 15:15:09 +02:00
Nadia Holmquist Pedersen
924975f6db
Use GenericConfigLocation so files will be placed correctly in non-portable Windows builds
2020-06-03 17:01:10 +02:00
Nadia Holmquist Pedersen
a4b88f0294
Fix paths on Windows
2020-06-03 16:49:58 +02:00
Nadia Holmquist Pedersen
f9644abb67
Handle open flags more correctly
2020-06-03 16:41:34 +02:00
Nadia Holmquist Pedersen
23aeb5fb72
Fix _dup on windows
2020-06-03 16:38:26 +02:00
Nadia Holmquist Pedersen
21f1856da2
Fix indentation
2020-06-03 14:54:36 +02:00
Nadia Holmquist Pedersen
7829070b7f
Handle r+ file mode
2020-06-03 14:41:07 +02:00
Nadia Holmquist Pedersen
6e0425d34e
Add missing threads dependency
2020-06-03 14:40:50 +02:00
Nadia Holmquist Pedersen
54edd51797
Merge branch 'master' of https://github.com/Arisotura/melonDS into feature/qt-platform
2020-06-03 14:31:02 +02:00
Nadia Holmquist Pedersen
f9f366e296
Merge remote-tracking branch 'remotes/upstream/master' into feature/qt-platform
...
# Conflicts:
# src/frontend/qt_sdl/CMakeLists.txt
# src/frontend/qt_sdl/Platform.cpp
# src/frontend/qt_sdl/main.cpp
2020-06-03 13:54:28 +02:00
Arisotura
1abcb4e6ac
I'm a major derp
2020-06-02 14:36:15 +02:00
Arisotura
6c0ec5ebd8
heh
2020-06-02 00:37:51 +02:00
Arisotura
ffa29ff496
clean it up some
2020-06-02 00:36:07 +02:00
Arisotura
d862b5869f
allow .dsi files
2020-06-02 00:30:04 +02:00
Arisotura
d0af89924e
remove requirement for initmem7/9.bin (but this requires augmented BIOS dumps, we'll get there)
2020-06-02 00:25:29 +02:00
Arisotura
ee9fe327e2
remove requirement for aeskeys.bin and boot2_7/9.bin
2020-06-01 23:13:38 +02:00
Arisotura
43e045357f
make it able to switch between DS and DSi modes
2020-06-01 20:36:30 +02:00
Arisotura
d7b846619b
add DSi-mode settings
2020-06-01 19:11:44 +02:00
Arisotura
b84edfb321
silence pointless and spammy printf
2020-06-01 16:35:09 +02:00
Arisotura
6326ddd172
reset SD controllers during a soft-reset
2020-06-01 16:32:44 +02:00
Arisotura
77f4663f49
betterer SD/MMC code. Flipnote can save shit!
2020-06-01 16:24:59 +02:00
Arisotura
8f5dff1725
make soft-reset work somewhat better
2020-05-30 13:52:51 +02:00
Arisotura
8a15adb38b
modern melonDSi
...
HARK HARK HARK
2020-05-30 03:26:06 +02:00
Arisotura
b62d90cbe4
Merge remote-tracking branch 'remotes/origin/master' into melonDSi
2020-05-30 03:19:20 +02:00
Arisotura
82302c9bf4
fix shito.
2020-05-30 03:15:05 +02:00
Arisotura
2327de2423
Merge commit '4b57416552ec2fa95216e2b044559f215723bf70' into melonDSi
2020-05-30 03:12:42 +02:00
Arisotura
f5eeca67b4
Merge commit '3984491ccec4630091bbb178c7c0b22aa4e5e937' into melonDSi
2020-05-30 03:04:50 +02:00
Arisotura
b44570eba1
merge moar
2020-05-30 03:04:14 +02:00
Arisotura
61799c35bd
sadadssa
2020-05-30 02:59:45 +02:00
Arisotura
5eb01f1f15
begin renovating melonDSi
2020-05-30 02:40:51 +02:00
Arisotura
b27ed541bb
blarg
2020-05-30 00:38:31 +02:00
Arisotura
c45068da0e
embed romlist.bin
2020-05-30 00:28:21 +02:00
Arisotura
88823f66cb
* fix the OpenGL shito under Linux
...
* make the 'BIOS not found' errors a bit more user-friendly
2020-05-29 22:18:21 +02:00
Arisotura
8ddd82ca2c
I'm a derp
2020-05-29 21:35:06 +02:00
Arisotura
9557e18b7c
fart around
2020-05-29 21:27:40 +02:00
Arisotura
d3dd7bd988
get rid of console in release builds
2020-05-29 21:19:18 +02:00
Arisotura
935f121025
* add options for static linking
...
* make the vsync checkbox and shit work to some extent (they don't actually function tho)
2020-05-29 21:03:46 +02:00
Arisotura
a38b20484d
finish the wifi dialog
...
also guess who the idiot is who forgot to add their files
2020-05-28 23:12:21 +02:00
Arisotura
590ab2ac2b
fix things
2020-05-28 22:37:37 +02:00
Arisotura
b7946c1384
* flesh out design for wifi settings dialog
...
* move the pcap shit to a betterer place
2020-05-28 22:21:36 +02:00
Arisotura
a2004785a4
re-add all old OSD messages
2020-05-28 18:22:02 +02:00
Arisotura
79d4183ccd
re-add OSD system
2020-05-28 18:11:41 +02:00
Arisotura
2912a07b8b
fix bugs, clean up some of the shit
2020-05-28 17:00:25 +02:00
Arisotura
d1d572210f
fix that bug here too
2020-05-28 16:07:34 +02:00
Arisotura
d25dc40e70
make it a bit better
2020-05-28 16:04:22 +02:00
Arisotura
f7e53c6f71
so you can't resize() before show()ing?? bullshit.
2020-05-28 15:58:18 +02:00
Arisotura
0804ab3c78
* rework GPU's settings interface, make it config-agnostic
...
* make video settings dialog functional, sorta
* fix dialogs that were resizable
2020-05-28 15:53:32 +02:00
Arisotura
5005a7c3f0
populate the dialog.
...
also add setting for vsync interval.
2020-05-28 13:21:25 +02:00
Arisotura
695839bb0e
lay base for video settings dialog
2020-05-28 12:32:50 +02:00
Arisotura
0a68eb7803
make it hiDPI compliant (I hope)
...
also misc tweaks
2020-05-28 11:52:12 +02:00
Arisotura
e8849db78a
we don't need a GLShim.
...
blarg.
I don't understand this anymore.
2020-05-27 21:40:02 +02:00
Arisotura
ef2802ae31
* use GL shim window instead of offscreen surface
...
* disable vsync by default (we'll take care of it later)
2020-05-27 21:29:47 +02:00
Arisotura
256360aebb
texture2D -> texture
...
Intel driver threw a fit about it
2020-05-27 19:18:45 +02:00
Arisotura
4135ea374b
fix colors
2020-05-25 18:38:10 +02:00
Arisotura
24de8de503
flushing the john makes it a bit better
2020-05-25 18:28:11 +02:00
Arisotura
36f4cdbbbf
get the OpenGL renderer going.
...
sorta.
(also make the blackmagic_II branch obsolete in the process)
2020-05-25 18:25:50 +02:00
Arisotura
10f9eda58a
get the whole OpenGL shit going
2020-05-25 14:59:26 +02:00
Arisotura
4e34359a80
get the GL shit going
2020-05-25 03:12:09 +02:00
Arisotura
bc4a83abca
make frontend-util audio module config-agnostic
2020-05-24 23:47:11 +02:00
Arisotura
16252a85e7
separate screen handling shit to a specialized class
2020-05-24 23:16:56 +02:00
Arisotura
f69f3fcb7a
* safer window update
...
* only do auto screen sizing if needed
2020-05-22 13:54:29 +02:00
RSDuck
ffd9c61bf7
fix screen layout with emphasis
2020-05-21 19:45:33 +02:00
Arisotura
5dcf57e86d
add screen filtering
2020-05-21 18:49:34 +02:00
Arisotura
8f9369beeb
add screen layout system
2020-05-21 18:43:07 +02:00
Arisotura
f79583bf16
add actual blow-into-mic sample that actually works
2020-05-21 02:33:48 +02:00
Arisotura
108647e033
* add audio settings dialog
...
* attempt at betterer mic noise that doesn't work worth a damn
2020-05-21 01:39:41 +02:00
Arisotura
9e43c85b4d
hook up microphone shit.
...
I did my best.
2020-05-20 23:55:18 +02:00
Arisotura
a9b275bc25
reimplement Stop
2020-05-20 22:58:04 +02:00
Arisotura
2ebb21ce3b
hook up pause and reset, w/ relevant hotkeys
2020-05-20 22:22:22 +02:00
Arisotura
26dcc95c20
do the easy menus
2020-05-20 21:23:15 +02:00
Arisotura
d761db0056
populate the menus with the config data
2020-05-20 21:19:04 +02:00
Arisotura
7be662b2dd
finish fleshing out the menus
2020-05-20 20:57:12 +02:00
Arisotura
700b1a8b9d
add window icon
2020-05-20 03:01:09 +02:00
Arisotura
5ed87a634a
add drag-drop support
2020-05-20 02:36:48 +02:00
Arisotura
4dae6d8928
load shit from command line
2020-05-20 01:49:40 +02:00
Arisotura
a2f9472e5d
might help fix crashes on exit?
2020-05-20 01:11:57 +02:00
Arisotura
34133ef75c
make it able to map the Tab key
2020-05-20 01:09:58 +02:00
Arisotura
68a7865096
basic touchscreen support
2020-05-19 22:57:15 +02:00
Arisotura
95f9698077
add back some hotkeys.
...
remove some legacy cruft from NDS.cpp.
2020-05-19 22:37:48 +02:00
Arisotura
b262313816
actually hook up input to the core
...
also unbotch CMakeLists.txt
2020-05-19 22:22:21 +02:00
Arisotura
9df8d91bdc
keep the ugliness confined in Platform.cpp
2020-05-19 21:34:24 +02:00
Arisotura
34506ff2bb
actually complete the input config dialog
2020-05-19 20:48:52 +02:00
Arisotura
920ff9778d
blarg
2020-05-19 15:11:34 +02:00
Arisotura
4b038f5d37
re-add old special keys for mapping (Esc=cancel, Backspace=clear)
2020-05-19 14:24:57 +02:00
Arisotura
04d38e5e66
axe the default key mappings (not too cross-platform and blargy)
2020-05-19 14:16:35 +02:00
Arisotura
23cc8c71a2
distinguish left/right Ctrl and Shift
2020-05-19 14:15:11 +02:00
StapleButter
2a7027f794
add AltGr, weak attempt at blocking garbage key names
2020-05-19 13:46:31 +02:00
StapleButter
9fbf9b997b
this might be a good idea
2020-05-19 13:28:46 +02:00
StapleButter
7d69699d64
fix Linux build error
2020-05-19 14:37:54 +02:00
Arisotura
7026bb15f6
input dialog progress.
2020-05-19 12:06:25 +02:00
Arisotura
19566178ba
begin adding input dialog
2020-05-17 18:33:03 +02:00
Arisotura
c9a76edf21
probably fix some pretty bad issue
...
good one, Generic
2020-05-17 14:23:06 +02:00
Arisotura
0566c9e34c
minor fix
2020-05-17 13:04:02 +02:00
Arisotura
c5c9434ac9
verify BIOS and firmware before booting games/firmware
2020-05-17 05:42:09 +02:00
Arisotura
49b24ea2b3
this might be betterer
2020-05-17 04:42:15 +02:00
Arisotura
17d30e91f0
actually hook this up
2020-05-17 04:37:44 +02:00
Arisotura
60ba163f08
take this somewhere
2020-05-17 04:02:16 +02:00
Arisotura
492a4b4b46
add config entries for BIOS/firmware paths
2020-05-17 03:02:42 +02:00
Arisotura
2afa70b817
miserable little attempt at adding a dialog
2020-05-17 02:37:23 +02:00
Arisotura
978212e3e0
accept mouse events
2020-05-16 17:43:35 +02:00
RSDuck
4cff4b5228
allow allocating caller saved regs on windows
2020-05-09 15:39:39 +02:00
RSDuck
d91bbec08f
use instr hash as key for restore candidates
...
makes Golden Sun burn a little slower through the JIT memory
2020-05-09 14:36:18 +02:00
RSDuck
5a0b568647
allow allocating caller saved registers
...
currently system-v only
2020-05-09 14:34:52 +02:00
RSDuck
0f53a34551
rewrite JIT memory emulation
2020-05-09 00:45:05 +02:00
Nadia Holmquist Pedersen
b746c0b727
Only initially open files as writable if they actually should be.
2020-05-06 03:53:05 +02:00
Nadia Holmquist Pedersen
beb3b20d5e
Fix crash with nonexistent config directory or writable files.
2020-05-06 03:49:20 +02:00
Nadia Holmquist Pedersen
6cfe4faa56
Use Qt abstractions for file I/O and threading on both Windows and Linux.
2020-05-06 03:22:30 +02:00
Nadia Holmquist Pedersen
ffe20c1236
Use Qt abstractions instead of glib's for paths on Linux
2020-05-06 02:39:50 +02:00
Arisotura
9432a9f382
remove useless variables
2020-05-03 15:05:52 +02:00
Arisotura
aa4344e249
add audio output. HARK HARK HARK
2020-05-02 20:25:39 +02:00
Arisotura
690f39ca33
enable savestate slots when saving a new savestate
2020-05-02 19:41:03 +02:00
Arisotura
7f3e67c12a
some more UI work
2020-04-30 01:02:17 +02:00
Arisotura
5fbad464c2
hook up savestate shito
2020-04-29 00:50:23 +02:00
Arisotura
47ff012f5e
blarg
2020-04-28 22:46:31 +02:00
Arisotura
63efc2e02a
add menu items for running the firmware and for quitting.
2020-04-28 22:45:11 +02:00
Arisotura
0913576ef5
FPS counter is back
2020-04-27 23:58:29 +02:00
Arisotura
a8aa834c16
now with display!
2020-04-27 22:42:07 +02:00
Arisotura
3c883a2152
hey look, it runs shit now!
2020-04-27 22:32:33 +02:00
Arisotura
931da1c66f
add a bunch of code
2020-04-27 22:02:45 +02:00
Arisotura
d6efb03248
HARK HARK HARK
2020-04-27 20:59:11 +02:00
Arisotura
d9c55a4f1f
fix dumb include path shit.
2020-04-27 15:59:52 +02:00
Arisotura
690f9f3874
get some of the shit going, I guess
...
atleast the emuthread is going and we have its control system down
and other fun shit, too
2020-04-27 12:06:44 +02:00
RSDuck
bcc4b5c8dd
fix regression from last commit
...
also a small mistake with msr
2020-04-26 23:25:32 +02:00
RSDuck
b0b9ec42e4
don't use param registers for ReadBanked/WriteBanked
...
should fix linux build
2020-04-26 20:47:36 +02:00
RSDuck
47b44a6be8
fix build with JIT disabled and set default JIT maxblock size to 32
2020-04-26 16:27:26 +02:00
RSDuck
59c8d39765
hopefully fix stack handling for linux
2020-04-26 16:17:16 +02:00
RSDuck
a9dd6e30ad
implement msr and mrs for the x64 JIT
2020-04-26 13:05:18 +02:00
RSDuck
68d552074b
compile UMULLs and some fixes
2020-04-26 13:05:17 +02:00
RSDuck
3787bab1f6
implement block linking + some refactoring
...
currently only supported for x64
2020-04-26 13:05:17 +02:00
RSDuck
5d0f244f3c
include more information in DataRegion
2020-04-26 13:05:16 +02:00
RSDuck
59f710158f
arm64 fix itcm invalidation and ldm^/stm^
2020-04-26 13:05:15 +02:00
RSDuck
96b8ac1af2
preparations for block linking
2020-04-26 13:05:15 +02:00
RSDuck
0280fbe194
this mistake was phenomally stupid
2020-04-26 13:05:14 +02:00
RSDuck
05962d9798
the time of good commit names is long gone
2020-04-26 13:05:14 +02:00
RSDuck
e9760c941b
git played a prank on me haha very funny
2020-04-26 13:05:14 +02:00
RSDuck
2e6e6aa750
this it should work
2020-04-26 13:05:13 +02:00
RSDuck
266fd20ea5
fixup for aarch64 JIT
2020-04-26 13:05:12 +02:00
RSDuck
42d67c8145
fix LDM usermode for aarch64 as well
2020-04-26 13:05:12 +02:00
RSDuck
2dbb9840fb
re add error for unsupported JIT platforms
2020-04-26 13:05:11 +02:00
RSDuck
899cf97c51
apply fixes for aarch64 linux by @nadiaholmquist
2020-04-26 13:05:10 +02:00
RSDuck
d6cc7de6c4
move ARM64 JIT backend here
2020-04-26 13:05:09 +02:00
RSDuck
842df432aa
remove debug leftovers
2020-04-26 13:05:09 +02:00
RSDuck
9b98b8816a
improve nop handling and proper behaviour for LDM^
...
fixes dslinux
2020-04-26 13:05:08 +02:00
RSDuck
60650fa82e
disable literal optimations in DTCM
2020-04-26 13:05:07 +02:00
RSDuck
0c5311731b
make savestates 100% compatible again
2020-04-26 13:05:07 +02:00
RSDuck
386100c053
make literal optimisation more reliable
...
fixes spanish Pokemon HeartGold
2020-04-26 13:05:06 +02:00
RSDuck
803c61e126
fix config key for jit literal optimisations
2020-04-26 13:05:06 +02:00
RSDuck
81f38c14be
integrate changes from ARM64 backend and more
...
- better handle LDM/STM in reg alloc
- unify Halted and IRQ in anticipation for branch inlining
- literal optimisations can be disabled in gui
- jit blocks follow simple returns
- fix idle loop detection
- break jit blocks on IRQ (fixes saving in Pokemon White)
2020-04-26 13:05:05 +02:00
RSDuck
aa23f21b8d
decrease jit block cache address granularity
...
fixes Dragon Quest IX
move code with side effects out of assert, fixes release build
(thanks to m4wx for this one)
also remove some leftovers of jit pipelining
2020-04-26 13:05:05 +02:00
RSDuck
7424f9fda0
remove leftover debug code
2020-04-26 13:05:04 +02:00
RSDuck
a687be9879
new block cache and much more...
...
- more reliable code invalidation detection
- blocks aren't stopped at any branch, but are being followed
if possible to get larger blocks
- idle loop recognition
- optimised literal loads, load/store cycle counting
and loads/stores from constant addresses
2020-04-26 13:05:03 +02:00
RSDuck
5338c28f40
load register only if needed
...
- do thumb bl long merge in the first step
- preparations for better branch jitting
2020-04-26 13:05:02 +02:00
RSDuck
2ef776883f
more fixes for flag optimisation
...
+ small cycle counting optimisation
2020-04-26 13:05:02 +02:00
RSDuck
5202c505ab
remove debug printing
2020-04-26 13:05:01 +02:00
RSDuck
ea562d2fec
fixes for flag optimisation
2020-04-26 13:05:01 +02:00
RSDuck
b5dda7d6e2
add ui confirm dialog for linux
2020-04-26 13:05:00 +02:00
RSDuck
5ea91b8a03
optimise away unneeded flag sets
...
- especially useful for thumb code and larger max block sizes
- can still be improved upon
2020-04-26 13:05:00 +02:00
RSDuck
03ab7f1645
fix jit block size not changeable
2020-04-26 13:04:59 +02:00
RSDuck
3001d9492c
abandon pipelining on jit
...
fixes Golden Sun Dawn
this makes the cpu state incompatible between interpreter and JIT. That's why switching cpu mode requires a restart(not requiring is stupid anyway) and the pipeline is manually filled when making a save state.
2020-04-26 13:04:59 +02:00
RSDuck
ec21172cd9
fix register alloc for half word loads
...
fixes Mega Man Star Force 2 with cheat applied
it probably used a pc relative load which were interpreted as branches
2020-04-26 13:04:58 +02:00
RSDuck
5e443e7962
remove unneeded dolphin code, C++11 static_assert
2020-04-26 13:04:57 +02:00
RSDuck
f31976fed0
jit: fix RSC
2020-04-26 13:03:12 +02:00
RSDuck
707da1f4c7
remove debug printf
2020-04-26 13:03:11 +02:00
RSDuck
51b6b7a7d5
fix uninitialised memory mapping
2020-04-26 13:03:11 +02:00
RSDuck
4a0f6b3b4b
jit: fix thumb hi reg alu and mcr halt
...
+ mcr/mrc aren't always, msr_imm is never unk on ARM7
2020-04-26 13:03:10 +02:00
RSDuck
9d180c7bbc
jit: decrease blockcache AddrMapping size for ARM9
2020-04-26 13:03:09 +02:00
RSDuck
be8846e31a
jit: fix misc static branch things
2020-04-26 13:03:08 +02:00
RSDuck
54985be157
jit: LDM/STM keep proper stack alignment
2020-04-26 13:03:08 +02:00
RSDuck
8ddc4d5904
jit: fix BLX_reg with rn=lr
2020-04-26 13:03:07 +02:00
RSDuck
411fb57c07
jit: add compile option
2020-04-26 13:03:06 +02:00
RSDuck
360317be8c
jit: remove unnessary files from dolphin
2020-04-26 13:03:04 +02:00
RSDuck
9d76d63af5
jit: make everything configurable
2020-04-26 13:03:03 +02:00
RSDuck
dcf6e1cad2
jit: fix linux
2020-04-26 13:03:01 +02:00
RSDuck
6f0dcad4f6
jit: fix wrongly placed const
2020-04-26 13:03:01 +02:00
RSDuck
9b3c14b58a
jit: SMULL and SMLAL
2020-04-26 13:03:00 +02:00
RSDuck
2efab201e9
jit: LDM/STM finally(!) working + MUL, MLA and CLZ
2020-04-26 13:02:59 +02:00
RSDuck
c58fdbd66b
jit: branch instructions
2020-04-26 13:02:58 +02:00
RSDuck
ff97211114
jit: thumb block transfer working
...
also pc and sp relative loads and some refactoring
2020-04-26 13:02:57 +02:00
RSDuck
2c44bf927c
JIT: most mem instructions working
...
+ branching
2020-04-26 13:02:57 +02:00
RSDuck
5f932cdf48
JIT: compilation of word load and store
2020-04-26 13:02:56 +02:00
RSDuck
ff901141e7
jit: correct cycle counting for thumb shift by reg
2020-04-26 13:02:55 +02:00
RSDuck
ebce9f035f
JIT: implemented most ALU instructions
2020-04-26 13:02:55 +02:00
RSDuck
c5c342c009
JIT: base
...
all instructions are interpreted
2020-04-26 13:02:53 +02:00
Arisotura
d2f05cd30f
prepare JIT beta branch
2020-04-26 13:02:26 +02:00
Arisotura
439ca1b2b5
get a Qt window showing up. 'tis a start, I guess.
2020-04-25 20:43:09 +02:00
Arisotura
0bdafb6295
finally get this going, I guess
2020-04-25 19:31:19 +02:00
Arisotura
d58c9d4b53
blarg
2020-04-25 18:56:39 +02:00
Arisotura
a85d41c53e
berp.
2020-04-25 18:51:08 +02:00
Arisotura
3b3a09ed2b
attempt something. maybe this worked, maybe not.
2020-04-25 18:48:33 +02:00
Arisotura
231f0fc2e5
welp
2020-04-14 23:38:48 +02:00
Arisotura
de405ce892
so, this is it
...
this was a glorious fight, but I admit defeat
2020-04-14 23:17:16 +02:00
Nadia Holmquist Pedersen
4b57416552
Windows: explicitly link gdi32
2020-04-12 17:15:39 +02:00
Nadia Holmquist Pedersen
a6150a9a9e
Use pkg-config to find SDL2 on Windows
2020-04-12 16:59:06 +02:00
Arisotura
ec6e4a2d1e
GPU3D: more accurate viewport transform (emulate quirk with W greater than 0xFFFF)
2020-04-12 16:40:08 +02:00
Arisotura
33b4cdb077
GPU3D: implement zero-dot W limit (DISP_1DOT_DEPTH)
2020-04-12 14:01:43 +02:00
Arisotura
4c560f3324
GPU3D: swap vin and vout during clipping, giving results that are closer to hardware.
...
fixes #598 and also fixes #379
2020-04-11 23:56:36 +02:00
Arisotura
d412630a49
should probably be a strncmp() and not strncasecmp()
2020-03-30 13:28:51 +02:00
Arisotura
d2cae446b9
Merge branch 'master' of https://github.com/Arisotura/melonDS
2020-03-30 11:05:09 +02:00
Arisotura
104b2a03aa
properly handle ROMs with encrypted secure area
2020-03-30 11:04:50 +02:00
niemand-deu
ab911571e0
Update main.cpp
2020-02-26 03:56:03 +01:00
Arisotura
5f99a68151
detect whether we are running the game
2020-02-24 18:31:44 +01:00
Arisotura
8b1caae852
flesh shit out for loading a cheat file
2020-02-24 17:56:01 +01:00
Arisotura
228c625e62
fix teh comment
2020-02-24 17:42:05 +01:00
Arisotura
3eb613650d
change ParseTextCode() so we can specify the length of an individual AR code within a bigger string.
2020-02-16 11:21:45 +01:00
Arisotura
3a4947fbbe
also that might have been bad for security. who knows.
2020-02-15 17:26:48 +01:00
Arisotura
e40d414c56
now we can even parse the code from a text code. bahaahhhh
2020-02-15 16:20:53 +01:00
Arisotura
ed39122c67
Arisotura will you ever clean up after yourself. this is like your goddamn apartment, it's a mess.
2020-02-15 16:07:13 +01:00
Arisotura
51dbb7165e
finish the AR interpreter, I guess
...
or mostly
2020-02-15 00:36:22 +01:00
Arisotura
85a6a5bb38
* add support for a bunch of codes (all of them minus the loop shit, really)
...
* hook it betterer so it doesn't asplode
2020-02-14 23:34:26 +01:00
Arisotura
eb44833171
well, more AR shito
2020-02-14 21:19:36 +01:00
Arisotura
83f8e11bc1
update copyright years
2020-02-14 20:18:08 +01:00
Arisotura
d0b27178f1
miserable, feeble little attempt at executing AR codes.
...
also, it's hardcoded. probably not a good thing.
2020-02-14 20:13:06 +01:00
Arisotura
106b9a6f24
lay base for AR cheatzorz. baahahhhh
2020-02-14 19:26:52 +01:00
Arisotura
2944575cbc
Merge pull request #544 from i404788/master
...
Fix hanging UI when `null` addr
2020-02-14 14:30:54 +01:00
Markus ⛅
da0afbde88
Use different icon location
...
"pixmaps" is the deprecated, legacy-only location. "hicolor" is the current, proper location that supports multiple resolutions which we now use
2020-01-30 17:25:08 +01:00
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
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
i404788
295404a5a6
Fix weird spacing
2019-12-12 09:03:01 +00: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
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
i404788
cdd60bb298
fix build
2019-11-19 22:20:39 +00:00
i404788
7e07250652
Maybe better to log
2019-11-19 22:19:30 +00:00
i404788
7340b1d6e3
Fix hanging UI when `null` addr
2019-11-19 21:37:47 +00:00
Arisotura
3f7bc1a6c1
add warning against hacked firmware dumps
2019-11-08 21:55:13 +01:00
Arisotura
c064f738ea
OpenGL: fix bug when rendering translucent polygons coming after shadow polygons, against a zero-alpha clear-plane (would use wrong shader, resulting in broken transparency)
2019-11-03 09:55:52 +01:00
Arisotura
b641ccaf35
fix remaining sprite y-coord bugs. fixes #531
2019-11-03 04:53:11 +01:00
Arisotura
3561e93bf6
fix sprite y-flip
...
also, meaningless shenanigans
2019-11-03 04:32:47 +01:00
Arisotura
e117da235e
smarter CP15 PU region updates. disable some useless logging.
...
fixes #528
2019-10-21 23:14:34 +02:00
Arisotura
f9ac26078b
look for NAND nocash footer at the end of the file rather than using a hardcoded offset. check whether the footer is present.
2019-10-20 18:52:33 +02:00
Arisotura
1c72df43ab
messing around
2019-10-20 18:35:16 +02:00
Arisotura
de11d6d410
Merge branch 'melonDSi' of https://github.com/Arisotura/melonDS into melonDSi
2019-10-19 16:05:35 +02:00
Arisotura
e82364f010
* some fixes to SD controller support, make it clear that there is no SD inserted, makes Flipnote work somewhat better
...
* immediately clear AES busy flag when the block count is zero (occurs when loading DSi cart games)
* implement NDMA start modes that have an old-DMA equivalent (except for GXFIFO mode)
now it boots DSi carts!
2019-10-19 16:03:59 +02:00
StapleButter
db6187a953
add DSi shit to cmakelists
2019-10-16 01:37:44 +02:00
Arisotura
118b3b0f24
don't auto-patch firmware touchscreen coordinates, atleast until we find out whether that causes problems in DSi mode
2019-10-15 23:30:01 +02:00
Arisotura
58c2790ea3
uuuh we should only do it once per scanline
2019-09-15 02:08:47 +02:00
Arisotura
e418b353e8
well, here, OBJ X mosaic is done too
2019-09-15 02:01:22 +02:00
Arisotura
cb90475b60
begin work on mosaic
...
OBJ Y mosaic emulated correctly, there's atleast that.
2019-09-15 01:31:09 +02:00
Arisotura
b8f55623c1
prevent capture-o-magic from freezing. also, make code more readable.
2019-09-14 13:45:01 +02:00
Arisotura
1c3661f33d
BLAHAHAHAHHHH
2019-09-14 01:16:38 +02:00
Arisotura
9d376335b7
HARK HARK HARK HARK
2019-09-13 22:43:02 +02:00
Arisotura
1aaf0c33ce
guess who the idiot is who broke sprite extpal
2019-09-05 11:49:22 +02:00
Arisotura
0010e296bd
GPU2D: delay palette lookup for sprites
2019-09-05 11:42:08 +02:00
Arisotura
3efe90f78a
deal with SPU FIFO overflow in a more pleasant manner
2019-09-04 16:40:29 +02:00
Arisotura
02a6fe182c
see, Arisotura, was it that hard?
2019-09-04 16:29:40 +02:00
Arisotura
1b40149b0a
blarg
...
here, have code
2019-09-04 15:41:42 +02:00
StapleButter
a4f9187b9b
fix bug with vsync checkbox
2019-09-01 23:04:06 +02:00
Arisotura
f70ee39543
BAHAHAHAHHHAHARKKZKFKKSLFS-*~+¤
2019-09-01 20:40:55 +02:00
Arisotura
27498ced4a
Merge pull request #505 from Zettymaster/master
...
Add warning message if romlist.bin is not found
2019-09-01 20:25:06 +02:00
Arisotura
b3df6e523a
Merge pull request #509 from Zapeth/master
...
Fix cmake resource file compilation issues
2019-09-01 20:24:14 +02:00
Arisotura
abb06269a1
add VSync toggle
2019-09-01 20:20:22 +02:00
Arisotura
5b51034436
zerp
2019-09-01 18:38:01 +02:00
Arisotura
f01016a30b
GPU2D: shape3 sprites are always 8x8
2019-09-01 18:35:33 +02:00
Arisotura
455b0e5689
more fixes to audio output
...
maybe by 2034 we'll finally get that shit going
2019-09-01 15:41:46 +02:00
Arisotura
210c1056b0
Merge branch 'master' of https://github.com/Arisotura/melonDS
2019-08-29 15:55:33 +02:00
Arisotura
fbad8b0f43
* new FPS limiter
...
* new audio output/sync method
about fucking time
2019-08-29 15:55:18 +02:00
Zapeth
96d5d3f4c8
Fix glib-compile-resources path issues
...
Apparently double quotes are not stripped away for assigned arguments when parsing, which causes isses for paths that include spaces.
2019-08-28 22:24:54 +02:00
Zapeth
7cb8112984
Fix MinGW resource file compilation issues
2019-08-25 18:28:54 +02:00
xperia64
6c7c037b20
Fix division edge case
2019-08-24 11:52:24 -04:00
Lukas Wienke
fefcd5165b
Merge branch 'master' of https://github.com/Arisotura/melonDS
2019-08-19 19:09:57 +02:00
Arisotura
626a9c1385
my bad.
2019-08-18 11:31:03 +02:00
Lukas Wienke
6a50bcfaf7
add warning message if romlist.bin is not found
2019-08-15 23:59:05 +02:00
Arisotura
dcda848cdf
* base for potentially re-encrypting modcrypt, doesn't seem to be required? but can also serve to decrypt it
...
* revise SD IRQ behavior (fixing potential hang when loading DS games)
2019-08-07 12:57:12 +02:00
Arisotura
9c1ea0e539
guess after all we shouldn't send ACKs for nonexistant I2C devices
2019-08-06 13:31:27 +02:00
Arisotura
28a9c7d9d1
camera: enough stub to pass firmware init
2019-08-06 13:06:14 +02:00
Arisotura
62a605cd92
lay base for camera shito
2019-08-06 02:27:54 +02:00
Arisotura
4d3d8433cb
* add old DS BIOSes and 04004000 BIOS-switch
...
fixes audio issues when running DS games
* attempt adding other fun shit like dynamic RAM size, but that mostly went nowhere for now
2019-08-05 19:52:03 +02:00
Arisotura
36c741241a
support DSi-mode carts
...
except they need to have the DSi-mode shit encrypted
2019-08-04 16:46:02 +02:00
Arisotura
a9f36929e0
TSC: add backwards-compatibility
2019-08-04 14:34:33 +02:00
Arisotura
f897d8c0d7
touchscreen input, somewhat
...
it's off, need to patch the calibration data
2019-08-04 12:13:01 +02:00
Arisotura
a6a9f74acc
lay base for DSi-mode TSC
2019-08-04 11:44:36 +02:00
Arisotura
f7f4ff0519
wifi: take this shit further. complete wifi init
2019-08-04 02:16:16 +02:00
Arisotura
0918da7b00
add BMI commands and other shit
2019-07-24 21:13:08 +02:00
Arisotura
06716794a1
lots of things. attempting to make wifi init work. not there yet.
2019-07-24 18:48:52 +02:00
Arisotura
78ff4165ed
GPU2D:
...
* implement reserved mode for bitmap sprites (not too interesting)
* mask out DISPCNT bits that don't apply to the sub GPU
2019-07-24 04:29:19 +02:00
Arisotura
a8886d5949
GPU2D: add 'prohibited' large BG sizes
2019-07-24 03:30:09 +02:00
Arisotura
3c006fd361
GPU2D: fill gaps in BG modes
...
* mode6 actually works on the sub GPU, albeit limited to 1/4 the full bitmap size due to having only 128K of VRAM
* mode7 draws BG0, BG1 and sprites. no BG2/BG3.
2019-07-24 02:46:30 +02:00
Arisotura
c1fa5d8283
GPU2D: forced-blank only disables BG/OBJ compositing (VRAM/FIFO display, capture, master brightness still run)
...
fixes #491
2019-07-24 00:27:08 +02:00
Arisotura
22f3cae067
fix potential out-of-bounds write
2019-07-13 02:54:14 +02:00
Arisotura
ff27036b35
start botching the FPS limiter
...
results in shitty audio because it's overflowing the buffer
2019-07-12 22:04:55 +02:00
Arisotura
504ccb7044
don't allow modifier mappings in input config dialog, either
2019-07-09 18:41:44 +02:00
Arisotura
592e493a7a
input: don't check modifiers for regular input
2019-07-09 18:39:50 +02:00
Arisotura
c5e14074c3
* add SCFG_EXT
...
* quick hack to detect cartridges
2019-07-03 12:37:34 +02:00
Arisotura
5062ed543a
HARK HARK HARK HARK
2019-07-03 01:17:23 +02:00
Arisotura
ec042000cf
lay base for DSi wifi
2019-07-03 00:07:51 +02:00
Arisotura
851e255b40
* AES-CCM decrypt
...
* fix a bunch of bugs
2019-07-02 23:46:39 +02:00
Arisotura
36f1e6f475
remove glBindImageTexture (4.2)
2019-06-30 16:57:30 +02:00
Arisotura
1b98a3e3a0
fix 'shift by register' operands: always only take the lower 8 bits of the register, fix handling for LSL/LSR >32
...
fixes #479
2019-06-27 14:05:51 +02:00
Arisotura
204b5d8700
HARK HARK HARK
2019-06-25 19:29:21 +02:00
Arisotura
4d775dcf85
fix OpenGL deinit when closing emu
2019-06-25 17:37:32 +02:00
Arisotura
1d8902c631
remove stupid hack that caused more problems than it fixed
2019-06-25 13:09:06 +02:00
Arisotura
58575f82b7
libui/windows: backport fix for #471
2019-06-25 12:29:56 +02:00
Arisotura
49b2f8d969
raise kMaxIterationCycles to 64
2019-06-25 02:05:48 +02:00
Arisotura
8c64290958
make it work better
2019-06-21 00:07:57 +02:00
Arisotura
1d138c0589
add SCFG_MC
2019-06-20 23:34:32 +02:00
Arisotura
1bd7243edc
make it actually not crapo the NAND
2019-06-20 23:20:08 +02:00
Arisotura
ed6b85bf33
implement SD/MMC write (cmd25)
2019-06-20 23:05:32 +02:00
Arisotura
6c60e97a63
fix another AES bug
2019-06-20 22:42:28 +02:00
Arisotura
e2dc98d144
fix bug when mapping a joystick axis control but no button
2019-06-20 16:31:28 +02:00
Arisotura
f59094e033
OpenGL: disable vsync, atleast under Windows
2019-06-20 16:00:12 +02:00
Arisotura
77bf92a272
Merge branch 'master' of https://github.com/Arisotura/melonDS
2019-06-20 13:57:34 +02:00
Arisotura
6d01677a57
add 32bit writes to some IO ports. fixes #313
2019-06-20 13:57:14 +02:00
Arisotura
d943a51b96
ayyy
...
getting there!
2019-06-20 03:19:51 +02:00
Arisotura
000aa1f327
add LCD init flag in DISPSTAT
2019-06-20 02:31:46 +02:00
Arisotura
5dd7fe05a8
add some registers
...
someday I should implement the SCFG shit correctly
2019-06-20 01:54:40 +02:00
Arisotura
3d9e6c5c66
* fix more AES bugs
...
* fix ass-stupid bug with NWRAM mapping
2019-06-20 01:36:10 +02:00
Arisotura
95f4c1472b
probably betterer like this
2019-06-19 22:08:35 +02:00
Arisotura
3807c9bf5b
combat AES overflowing and/or getting stuck
2019-06-19 21:57:08 +02:00
Arisotura
dcae9788e5
add NDMA start mode 0x0A (AES input FIFO)
2019-06-19 19:19:51 +02:00
Arisotura
f4c7f5c96b
support loading extra RSA keys from dsikeys.bin file (to dump from haxed DSi)
2019-06-19 18:55:48 +02:00
Arisotura
734c9024d5
add NWRAM registers
2019-06-19 17:16:44 +02:00
Arisotura
b03e81edc8
add consoleID registers
2019-06-19 16:56:58 +02:00
Arisotura
d5a7c0bab8
there, PSISP
2019-06-19 15:58:50 +02:00
Arisotura
2a60fad0a5
fix moar bugs, get furtherer (add support for SDHC addressing)
2019-06-19 15:54:07 +02:00
Arisotura
6e5879f8bb
fix more bugs, get further
2019-06-19 15:26:38 +02:00
Arisotura
78b28f6a5c
fix bug with SD reads going a bit too far
2019-06-19 14:44:00 +02:00
Arisotura
81dde71eba
add AES, fix a bunch of bugs
...
we're getting an error screen! wee
2019-06-19 14:24:49 +02:00
Arisotura
f0131cfac9
plug it to the SD/MMC FIFO.
...
now half the shit is done.
2019-06-18 23:10:55 +02:00
Arisotura
b1ed835ae9
might be more impressive if it actually worked, like this
2019-06-18 23:05:36 +02:00
Arisotura
606a40e6b8
y'know, actually running the DMA units might yield better results.
2019-06-18 22:57:37 +02:00
Arisotura
d6bbc6f0f1
tremble upon the NDMA implementation
...
that doesn't do much beyond getting stuck
2019-06-18 22:54:07 +02:00
Arisotura
841122bc51
prevent old DMA from being a shitshow.
2019-06-18 21:12:39 +02:00
Arisotura
7335379127
HARK HARK HARK
2019-06-18 19:00:44 +02:00
Arisotura
eb18643762
add data32 IRQ thing
2019-06-18 18:39:13 +02:00
Arisotura
dc3c9f5bf8
take all the SDMMC shit further. now it's completing MMC init and trying to read shit.
2019-06-18 14:12:37 +02:00
Arisotura
6c75275593
moar SD/MMC commands
2019-06-17 18:40:45 +02:00
Arisotura
bedc0220fc
take this shit further
2019-06-17 13:24:37 +02:00
RSDuck
dac9ccc577
fix OGL renderer not working at all on some GPUs
2019-06-17 13:14:52 +02:00
Arisotura
d4dd97638d
lay base for SD shit
2019-06-16 17:01:49 +02:00
Arisotura
566a8df6cd
add IE2/IF2
2019-06-16 15:05:18 +02:00
Arisotura
78c41736c3
fix fucking ass-stupid bug with new-WRAM handling
2019-06-16 14:26:54 +02:00
Arisotura
7b19a01204
betterer I2C
2019-06-15 18:39:34 +02:00
Arisotura
4d3f346edc
get it to do more interesting things
2019-06-15 18:30:12 +02:00
Arisotura
93330d2670
fix I2C shit? I think
2019-06-15 17:23:48 +02:00
Arisotura
58e3ff61ac
add I2C shito
2019-06-15 16:58:02 +02:00
Arisotura
7aa5131ec7
run teh binary. BAHAHAHAHAHAHAHAAHHHH
...
it doesn't do much for now tho
2019-06-15 14:05:31 +02:00
Arisotura
ebd1a359cc
setup new-WRAM mapping. hark hark hark
2019-06-15 13:46:20 +02:00
Arisotura
83d23939db
melonDSi: skeleton in place
2019-06-15 13:09:11 +02:00
Arisotura
0e421ccebd
add all sorts of shit
2019-06-13 14:41:54 +02:00
Arisotura
b03c727fb9
blarg
2019-06-13 13:59:11 +02:00
Arisotura
29fb71cab8
BAHAHAHAHHHH
...
mostly just going to derp around some, so don't hold your breath here
2019-06-13 13:11:33 +02:00
StapleButter
c4182b5ad3
BAHAHHAHAHAHH
2019-06-12 14:03:06 +02:00
Arisotura
34c60eaca4
fix bugs with line polygons
2019-06-12 13:14:11 +02:00
Arisotura
886bf6bc10
prevent loading savestates that are too recent
2019-06-12 12:49:52 +02:00
Arisotura
27f758d353
hack so that the GL renderer can render lines
2019-06-12 03:55:40 +02:00
Arisotura
4553da720c
add setting for showing/hiding OSD
2019-06-12 03:32:25 +02:00
Arisotura
ea5dc39e83
cheapass fix for texture positions, atleast effective at 1xIR
2019-06-12 02:55:38 +02:00
Arisotura
a3fed77da3
somewhat better edge marking
2019-06-12 02:23:40 +02:00
Arisotura
711fda469e
stop fast-forward hotkeys from getting lost every damn time
2019-06-12 01:39:12 +02:00
Arisotura
4abf0473c2
add pause/reset hotkeys
2019-06-12 01:12:49 +02:00
Arisotura
1cb8f3c8b2
rework input/hotkey code to suck less, implement the new features
2019-06-12 00:59:51 +02:00
Arisotura
82f4f4fdcb
fix bugs, make it more responsive
2019-06-11 23:48:49 +02:00
Arisotura
bfc12a038e
add ability to map joystick axes, too
...
and add support for multiple hats
2019-06-11 23:41:48 +02:00
Arisotura
1ea25ac6f1
add ability to map keys with modifiers, only in config UI for now
2019-06-11 23:16:15 +02:00
Arisotura
4447e010d7
actually save the current joystick ID
2019-06-11 18:57:22 +02:00
Arisotura
b9183b8818
begin work on multiple joystick support
2019-06-11 18:55:04 +02:00
Arisotura
543a40c7cb
add some OSD messages. prepare shit.
2019-06-11 04:04:49 +02:00
Arisotura
3c70015da7
software renderer: fix rendering of line polygons. fixes #350
2019-06-11 03:10:32 +02:00
Arisotura
09cfdc6e76
pft
2019-06-10 18:24:38 +02:00
Arisotura
fd28391160
fix ass-stupid bug in CP15 PU region setup
2019-06-10 15:29:40 +02:00
Arisotura
d28035674a
GPU2D: hardware renders sprites one scanline in advance.
...
fixes #375 (midframe OAM update)
2019-06-10 03:05:26 +02:00
Arisotura
9ab331c6dd
fix more stupid shit. askzjkdsf
2019-06-09 20:44:35 +02:00
Arisotura
c056dfe509
fix fog alpha
2019-06-09 19:53:28 +02:00
Arisotura
086354a420
miserable, feeble little attempt at edge marking
2019-06-09 19:32:02 +02:00
Arisotura
434a3007e2
fasterer BG/OBJ VRAM reads
2019-06-09 16:06:01 +02:00
Arisotura
00a5576492
fasterer IRQ check. clean up code.
2019-06-08 22:16:51 +02:00
Arisotura
8fc30d69c5
fix last bugs when changing video settings with no game loaded
2019-06-08 13:06:36 +02:00
Arisotura
bc53ff35a9
this is the same thing, but, for the sake of consistency
2019-06-08 12:39:52 +02:00
Arisotura
eaaf5ec93b
also, don't hardcode the timer interval in the callback
2019-06-04 16:19:49 +02:00
Arisotura
86b4cbcb03
when closing an input config dialog, remove SDL timer if needed
...
fixes #429
2019-06-04 16:17:30 +02:00
Arisotura
c8472a67c1
make capitalization consistent
2019-06-04 15:56:09 +02:00
Arisotura
97f4b5f70b
Merge branch 'master' into fast-forward-hotkey
2019-06-04 15:53:08 +02:00
Arisotura
3134c8fc66
add support for setting key mappings to none
2019-06-04 15:44:40 +02:00
Arisotura
e3dc4e122a
use OSD for some actual purposes
2019-06-03 17:01:53 +02:00
Arisotura
2b3ca2089f
take the OSD shito somewhere
2019-06-03 16:45:55 +02:00
Arisotura
4a4415fc2e
more work on OSD
2019-06-03 15:00:49 +02:00
Arisotura
43e3e53afc
fix some shito
2019-06-02 21:45:36 +02:00
Arisotura
5487a4e71c
fix bugs when changing 3D renderer with no game loaded
2019-06-02 15:22:37 +02:00
Arisotura
6de19645f8
fix potential crash when running the software renderer (oops)
2019-06-02 14:57:59 +02:00
Arisotura
3aa971403b
lay base for OSD
2019-06-02 14:33:20 +02:00
Arisotura
78208a9728
OpenGL: fix cases of layers/sprites blending over the 3D layer
2019-06-01 03:39:35 +02:00
Arisotura
27d21e06df
use regular slash instead of backslash in config file name. fixes #413
2019-06-01 02:54:38 +02:00
Arisotura
06e08b053f
do binding of VS inputs and FS outputs before linking shader programs, as per OpenGL standard.
...
should fix the rendering issues with strict drivers (AMD, Intel).
2019-05-31 02:26:13 +02:00
StapleButter
6f5e45ef2c
also, properly delete glarea framebuffers on exit
2019-05-30 23:16:56 +02:00
StapleButter
b9529e8361
Linux: fix uiGLGetProcAddress()
2019-06-01 00:27:54 +02:00
Arisotura
5d5e8ceced
BAHAHAHAHAHHAHHHHH-~*+
2019-05-31 21:57:11 +02:00
Arisotura
f6814e02c0
* add needed libui functions under Windows, even if they don't do a whole lot
...
* fix ass-stupid fog bug
2019-05-31 21:37:30 +02:00
StapleButter
65ccf2a717
blarg
2019-05-31 19:29:48 +02:00
StapleButter
1a3314f0bd
GL: don't draw the screens when nothing is running
2019-05-31 12:25:16 +02:00
StapleButter
464b116916
fix the whole mutex shito
...
fixes potential crash when resizing window
2019-05-31 04:15:37 +02:00
StapleButter
d8d7ba9251
fix potential crash when switching video output methods
2019-05-31 03:18:09 +02:00
StapleButter
c49dec1acd
try to fix fog consecutively to the Intel fix. still not perfect for whatever reason
...
also clean up more code
2019-05-31 03:00:53 +02:00
StapleButter
3ef00f8fa6
attempt at fixing THE FLICKERING without making everything shitty. also, clean up code
2019-05-31 02:21:41 +02:00
StapleButter
27d451d07a
clean up code, attempt at shit
2019-05-31 01:46:47 +02:00
StapleButter
ea669190aa
fix crash when using -O3.
...
gcc will try to optimize the memfill with MMX opcodes, but those seem to crash if the memory isn't aligned to a 8-byte boundary.
2019-05-30 18:05:52 +02:00
StapleButter
ce9d728fb6
fix cleanup of libui objects when closing melonDS
...
fixes to Cmake shito
attempt shit
2019-05-30 17:29:41 +02:00
StapleButter
ee61b97ec9
OpenGL renderer: fix for Intel driver (doesn't like RGB8UI framebuffers)
2019-05-30 02:44:49 +02:00
StapleButter
891ab9fd3c
Linux: start getting somewhere with the whole OpenGL shito
2019-05-28 19:48:59 +02:00
PoroCYon
ebad773a38
apply tgsm's changes (see PR #411 )
2019-05-26 00:50:27 +02:00
PoroCYon
38f61a24fc
'port' libui GL stuff to Linux
...
Only implemented the functions needed by melonDS, and only tested using
a very recent mesa+libglvnd+nouveau. Will most likely bork using
proprietary nvidia or old(er) drivers (see gl.c)
2019-05-26 00:38:24 +02:00
PoroCYon
31e0f15797
fix oudated CMake compile settings, add OpenGL dependency for Linux
2019-05-26 00:37:51 +02:00
StapleButter
99dbbb0b04
gfghfshdf
2019-05-25 22:23:43 +02:00
Arisotura
dd14a3e88e
for config dialogs that reflect changes instantly, make behavior of window close button consistent with that of Cancel button
2019-05-25 21:03:39 +02:00
Arisotura
eb6fe823f8
close any opened dialogs when closing the main window
2019-05-25 20:58:32 +02:00
Arisotura
af581513fb
* remove old 'threaded 3D' setting from emu settings dialog
...
* remove 'antialiasing' for now
2019-05-25 20:51:26 +02:00
Arisotura
94f5ecb647
Merge branch 'blackmagic'
...
BAHAHAHHAHAHAHAAHAHAHAHHH
HARK HARK HARK HARK HA-*~
2019-05-25 20:42:27 +02:00
Arisotura
9ed1dda9ca
fix possible crash
2019-05-25 19:52:56 +02:00
Arisotura
956c2c5d86
finalize the GL/software switch
2019-05-25 19:47:19 +02:00
Arisotura
70a3243714
simpler GPU-compositing. will make it easier to grab neighbor 2D/3D pixels individually for filtering.
2019-05-25 19:36:47 +02:00
Arisotura
8c93a45574
also support alpha-only fog
2019-05-25 13:45:00 +02:00
Arisotura
478ca019da
implement fog correctly
...
also some base work for edgemarking
2019-05-25 13:43:06 +02:00
Arisotura
7cdeb7fa4e
feeble, miserable little attempt at emulating fog
2019-05-25 04:28:00 +02:00
Arisotura
04f1809dd1
finish fixing shadows
2019-05-25 02:34:14 +02:00
Arisotura
182e123598
fix shadow bugs
...
bahaahah
2019-05-25 01:55:44 +02:00
Arisotura
8a63c76f4f
of course
...
I'm a complete and absolute fucking idiot
2019-05-24 02:41:24 +02:00
Arisotura
9e2f47f4a0
fix more bugs
2019-05-24 02:35:25 +02:00
Arisotura
0bb3321262
getting somewhere??
2019-05-24 02:29:16 +02:00
Arisotura
79ea104931
properly recreate window based on changes to either video output method or 3D renderer
2019-05-24 02:12:46 +02:00
Arisotura
667dee6754
more code botching
...
it's less shitty tho
but still has bugs
2019-05-24 02:04:41 +02:00
Arisotura
e5236f0cde
add API for getting/setting window size
...
bahahahaaa
2019-05-23 22:50:46 +02:00
Arisotura
3915b8cb4e
botch the code
2019-05-23 22:41:21 +02:00
Arisotura
db396e992b
welp.
...
progress
2019-05-21 22:28:46 +02:00
Arisotura
c835b24f07
modify libui GL support so that it will be compatible with GTK
2019-05-21 14:53:22 +02:00
Arisotura
139c2d24ec
burp
2019-05-20 22:24:11 +02:00
Arisotura
b493c24128
remove reference to GL version 4.3 from filenames and namespaces
2019-05-20 00:05:37 +02:00
Arisotura
a4417b727a
lower GL requirement of renderer itself to 3.1
2019-05-19 23:59:43 +02:00
Arisotura
1fb3968047
properly clean up GL resources
2019-05-19 23:06:42 +02:00
Arisotura
6dbb645ffa
make shadows work without relying on black magic.
...
clean up the code some.
2019-05-19 22:08:30 +02:00
Arisotura
50cc38d781
botch more code
2019-05-19 19:47:23 +02:00
Arisotura
cd8236303e
begin botching the code
...
BAHAHAHAAAA
2019-05-19 19:37:13 +02:00
Arisotura
61c1ebe01c
finally fix shadows, mostly
2019-05-18 02:34:14 +02:00
Arisotura
5448969ca1
'fix' shadows
2019-05-18 02:16:07 +02:00
Arisotura
f5a7cb71fd
also, do master brightness
2019-05-18 01:42:50 +02:00
Arisotura
a752b1d7c2
woops
2019-05-18 01:32:31 +02:00
Arisotura
f1a970ec30
actually finish display capture in hardware-accel mode
2019-05-18 01:21:46 +02:00
Arisotura
de287825ee
start work on display capture
...
also fix a bug in the compositing shader
2019-05-17 22:50:41 +02:00
Arisotura
26f997172b
fix 3D doublebuffering
2019-05-17 19:09:41 +02:00
Arisotura
8bf4557175
make screen shaders work with OpenGL 3.1
2019-05-17 15:47:40 +02:00
Arisotura
72920bb763
fix 3D on bottom screen
2019-05-16 22:04:27 +02:00
Arisotura
c1746f0c60
BAHAHAHHHH
...
HARK HARK HARK
2019-05-16 20:58:07 +02:00
Arisotura
c81bcccadc
BAHAHAHAHAHAHAHAA
2019-05-16 16:27:45 +02:00
Arisotura
f2282e9e32
Arisotura is a fucking derp
2019-05-16 01:46:09 +02:00
Arisotura
4b874cc440
make GL renderer able to coexist with GL screen drawing
2019-05-16 01:08:53 +02:00
Arisotura
f75106c61b
don't hardcode screen sizes
2019-05-16 00:46:50 +02:00
Arisotura
f2725791d8
preliminary, shitty, code for drawing the main window with OpenGL
2019-05-16 00:30:55 +02:00
Arisotura
256b8cb69c
botch GL support.
2019-05-15 19:49:21 +02:00
Arisotura
a89366cb5a
begin butchering uiArea
2019-05-15 16:43:56 +02:00
Jon Pacheco
f769d6e23f
Ensure that 'Limit framerate' option is synced with the toggle hotkeys
2019-05-14 17:29:49 +01:00
Arisotura
4d427c9d2d
BAHAHAHAHAHA
2019-05-14 17:45:16 +02:00
Arisotura
71ecb6a65b
derping around
2019-05-14 15:10:58 +02:00
Rafael Caetano
3a9410b5d0
Firmware backup writing now uses OpenLocalFile
2019-05-13 23:05:50 +01:00
Arisotura
02b4919005
resolution switch somewhat functional
2019-05-12 17:43:39 +02:00
Arisotura
f5ba35ca9f
don't scale the screen gap
2019-05-12 16:47:34 +02:00
Arisotura
0a464c504d
de-hardcode the GL renderer.
...
init framebuffer to black.
fix bugs.
2019-05-12 16:32:53 +02:00
Arisotura
a32c5c99bb
finish de-hardcoding it. also, code 4x variant (not that I guarantee it to be fast, but hey, it's here)
2019-05-12 15:58:12 +02:00
Arisotura
2a0bc4e700
make GPU2D somewhat more flexible. change LineScale to be log2.
2019-05-12 15:45:58 +02:00
Arisotura
c88981b589
split framebuffer.
...
setup doublebuffering inside GPU.cpp.
avoid copying a whole framebuffer every frame. better performance at higher res.
2019-05-12 15:01:40 +02:00
Jon Pacheco
7d2ba09fd7
Add fast forward hotkeys
2019-05-12 11:41:46 +01:00
Arisotura
939a376389
add relevant config entries
2019-05-12 04:40:44 +02:00
Arisotura
39080be9b7
draft video settings dialog with the envisioned features
2019-05-11 16:12:57 +02:00
Arisotura
b730bb8902
welp
2019-05-11 15:36:42 +02:00
Arisotura
53b2262917
calculate hi-res vertex positions. reduces shaking of polygons when rendering at a higher res.
2019-05-11 15:14:59 +02:00
Arisotura
5c9df6a4e5
attempt to take shadow support a bit further.
2019-05-11 15:01:54 +02:00
Arisotura
858c0eecb9
scale screen gap
...
also moar optimization...
2019-05-11 01:46:38 +02:00
Arisotura
44e1593e1f
some optimization to the 2D pipeline
2019-05-10 22:22:17 +02:00
Arisotura
7a2504a3a4
fix derpy bug
2019-05-10 18:22:34 +02:00
Arisotura
492d2cfa69
implement texture blending/shading modes
2019-05-10 17:49:13 +02:00
Arisotura
b74587a482
* optional path for chunked rendering (might be faster, but not always)
...
* fix bugs
2019-05-10 16:30:20 +02:00
Arisotura
13b0d13e23
move code around
2019-05-10 15:59:46 +02:00
Arisotura
92d67a17de
(disabled) proof-of-concept antialiasing
2019-05-10 02:28:26 +02:00
Arisotura
8efc8623ad
do not hardcode GL screen size all over the place
2019-05-10 01:52:05 +02:00
Arisotura
f1d1a9b828
temp fix for color effects
2019-05-08 03:24:22 +02:00
Arisotura
fb4f972cad
hires hax. somewhat functional
2019-05-08 01:58:34 +02:00
Arisotura
587d432677
don't do OBJ window if it isn't enabled (oops)
2019-05-07 21:19:33 +02:00
Arisotura
99b07f9300
Merge pull request #398 from Nadia-h/master
...
Revamp CMake build system
2019-05-07 20:18:18 +02:00
Cameron Cawley
f91eb18152
Fix all -Wwrite-strings warnings
2019-05-04 14:07:02 +01:00
Arisotura
83331bc7e5
lay base for hi-res rendering
...
IT'S A PILE OF HACKS
2019-05-03 19:28:15 +02:00
Arisotura
dc68842db4
some work on shadows.
...
(still need to check opaquePolyID)
2019-05-03 18:55:45 +02:00
Arisotura
3d77087320
betterer transparency support
2019-05-02 13:44:54 +02:00
Arisotura
1e29e1242d
beginning work on transparency support.
...
floats suck.
depth/stencil textures suck.
the world sucks.
burn it down.
r e v o l u t i o n
in the meantime getting this shit working wouldn't be too bad tho.
2019-05-02 04:16:48 +02:00
Arisotura
4a776f5d5b
half-proper screen clear.
...
still missing bitmap mode, but atleast you can play NSMB without being in the dark.
2019-05-02 02:28:31 +02:00
Arisotura
8c2b4b4813
very evil shit
2019-05-01 23:35:48 +02:00
Nadia Holmquist Pedersen
a462774ad3
Removed commented code
2019-05-01 06:18:36 +02:00
Nadia Holmquist Pedersen
9c9b2e79ce
Remove unnecessary commonted-out lines
2019-05-01 05:20:06 +02:00
Nadia Holmquist Pedersen
b31b5ed66a
Revamp build system
2019-05-01 05:16:54 +02:00
Arisotura
88bc765455
don't lose half the zbuffer range
2019-04-29 19:13:20 +02:00
Arisotura
ffa0ddd94c
fix the alpha0 shit
2019-04-29 18:52:23 +02:00
Arisotura
41e7af8412
add remaining texture types
2019-04-29 18:47:32 +02:00
Arisotura
e7be82430b
texcoord wrap modes
2019-04-29 18:24:36 +02:00
Arisotura
eb9cfd12d4
* add type5 textures
...
* fix texture distortion. I knew it was something stupid like that.
2019-04-29 13:05:15 +02:00
Arisotura
2a63ba40d7
support 256-color textures.
...
but ass-batteringly shitty.
2019-04-29 04:19:56 +02:00
Arisotura
85b3bdebd1
avoid potential division by zero in framerate counting when running uberfast. likely fixes #394
2019-04-27 20:53:58 +02:00
Arisotura
6febd79f83
finally get wbuffering covered.
2019-04-25 13:32:15 +02:00
Arisotura
448806fada
weak little attempt at a zbuffer.
...
still bad for wbuffering because of course it is
2019-04-24 22:38:50 +02:00
Arisotura
15b7903170
now with perspective correction!
2019-04-10 23:55:34 +02:00
Arisotura
3888518575
here, have vertex colors
2019-04-10 23:47:58 +02:00
Arisotura
210a5b583e
make it actually work without asploding half the geometry
...
also, fix colors
2019-04-10 23:25:01 +02:00
Arisotura
ccc9608ad2
it renders shit!!
...
albeit in monochrome and with fucky clipping for some reason
2019-04-10 22:49:06 +02:00
Arisotura
32c75e20a6
here, have shader shit
2019-04-09 23:23:24 +02:00
Arisotura
00341bbae5
actually, seems faster to read it all at once??
2019-04-01 04:58:21 +02:00
Arisotura
4bf75a8d8e
glörg
2019-04-01 04:52:03 +02:00
Arisotura
1f13d9ce80
* move GL init to main thread
...
* fix potential bug causing the screen bitmap to be created twice
2019-04-01 04:50:48 +02:00
Arisotura
2d0d501d1f
probs better this way
...
(ultimately RequestLine should be axed)
2019-04-01 04:22:03 +02:00
Arisotura
8bc4ca3fc8
fasterer framebuffer read
2019-04-01 04:20:43 +02:00
Arisotura
f8751bd1fb
first attempt at things
...
(also fix softrenderer reset)
2019-04-01 02:51:31 +02:00
Arisotura
f1628b98de
adding that file might be good, too
2019-03-31 21:54:42 +02:00
Arisotura
b48fe5909b
* add some GL base to libui (only for Windows for now)
...
* make the Codeblocks project a bit less braindead (don't repeat libraries for each build target)
2019-03-31 21:54:14 +02:00
Arisotura
75f8cbf953
draft API for OpenGL shito in libui
2019-03-31 21:15:45 +02:00
Arisotura
b9703d2e8f
fix CP15 control reg init during direct boot (fixes LMNTS demo regression)
2019-03-30 23:49:22 +01:00
PoroCYon
fe29bfad44
fix stupid compilation issues on Linux
2019-03-30 16:51:32 +01:00
Arisotura
2a2e6a0c76
fix potential memleak under Windows
2019-03-30 12:33:10 +01:00
Arisotura
60a728283e
* remove EmuDirectory from the core
...
* rework OpenLocalFile(), make the code more elegant, also fixes #352
2019-03-27 13:54:33 +01:00
Arisotura
f08b87b41f
* move melon_fopen_local() to Platform.cpp
...
* make it require that the file already exist (hopefully fixing config saving bug)
* finally axe melon_fopen.cpp
2019-03-27 13:34:26 +01:00
Arisotura
6d7e80b677
move melon_fopen() to Platform.cpp
...
melon_fopen_local() will need fixoring
2019-03-27 04:23:03 +01:00
Arisotura
5d127f9e55
woops
2019-03-26 18:39:52 +01:00
Arisotura
633fb0f555
NDSCart: KEY1-gap delays don't apply when the WR bit is set. fixes #377
2019-03-26 18:34:01 +01:00
Arisotura
5941d57236
extra safety for the case of an empty platform config file
2019-03-26 15:11:32 +01:00
Arisotura
785716ac41
* readme update
...
* remove TODO that has already been done
2019-03-26 13:38:59 +01:00
Arisotura
02f989d3d8
BAHAHAHAHAH
2019-03-26 03:33:30 +01:00
StapleButter
c43574207a
add pcap code for Linux. fix bugs.
2019-03-26 02:53:17 +01:00
StapleButter
f86782cc2e
make it compile under Linux.
...
it shits itself tho.
2019-03-26 01:58:03 +01:00
Arisotura
d67437a11e
remove aggressive logging
2019-03-26 01:44:27 +01:00
Arisotura
211aa8ebb1
not gonna need that crap
2019-03-17 01:29:55 +01:00
Arisotura
b52458d7be
here have more code aaaaaaaaaaaaa
2019-03-15 01:08:37 +01:00
Arisotura
4de4631c15
move platform specific config to platform specif ffile ayyyyyyyyyyygfghj;,gnxbf
2019-03-15 00:58:29 +01:00
Arisotura
5edf40f665
UDP: forward received data
2019-03-09 22:41:56 +01:00
Arisotura
d59a52df1f
* lay base for UDP
...
* only handle DNS when it's destined to our internal DNS server
2019-03-09 22:14:34 +01:00
Arisotura
9485a4e8c0
properly close sockets, so that they can be reused
2019-03-09 02:30:05 +01:00
Arisotura
7d2b3bbf76
fix TCP checksum for odd lengths
2019-03-09 02:04:01 +01:00
Arisotura
cde1963e63
better TCP sequence numbers
2019-03-09 01:34:57 +01:00
Arisotura
f3f4613b4e
somewhat better TCP
...
still not perfect
2019-03-09 00:47:55 +01:00
Arisotura
e026574901
receive data, too
2019-03-06 18:21:12 +01:00
Arisotura
012a04021c
send shit.
...
into the void for now.
2019-03-06 17:07:07 +01:00
Arisotura
349322b94c
less shitty code.
...
also, initiating TCP connection!
2019-03-05 15:01:23 +01:00
Arisotura
623b0ea2e0
* begin work on actual socket shito
...
* move UDP-frame finishing to separate function
2019-03-05 14:06:24 +01:00
Arisotura
950170df6d
finish (halfassed) DNS support.
2019-03-05 13:24:42 +01:00
Arisotura
a88f0b6792
start work on DNS
2019-03-05 01:09:23 +01:00
Arisotura
909b29042c
start making things nicerer
2019-03-05 00:34:30 +01:00
Arisotura
cfaf5a0f3f
rework wifi settings dialog.
...
fail gracefully if pcap isn't loaded successfully.
2019-03-04 23:55:39 +01:00
Arisotura
3f82c7dcc1
make melonDS build again
2019-03-04 23:17:03 +01:00
Arisotura
720a5fbea5
fixor Platform.cpp
...
also remove debug shit that accidentally slipped in
2019-03-04 22:24:28 +01:00
Arisotura
0392f8736b
nearly finish the split.
2019-03-04 21:11:25 +01:00
Arisotura
8448e6bea0
take it further
2019-03-04 20:58:13 +01:00
Arisotura
1e108ad7fb
start differenciating between direct and indirect LAN modes.
...
indirect mode will use regular sockets and not pcap.
2019-03-04 20:52:29 +01:00
Arisotura
7a0c1af30b
more progress on LANMAGIC
2019-02-24 13:24:42 +01:00
Arisotura
60391a8a1b
LANMAGIC: get somewhere.
...
it works, but fucks up connections on the host.
2019-02-24 11:59:43 +01:00
Arisotura
c135670b9c
complete DHCP. ARP for the DHCP server. feed in proper DNS settings.
2019-02-23 18:50:58 +01:00
Arisotura
93d51b0cbc
start work on non-direct mode. reply to DHCP discover frame.
2019-02-23 13:41:51 +01:00
Arisotura
0550d22833
hook LAN shito. open proper pcap device. etc
2019-02-21 03:44:22 +01:00
Arisotura
f9822cdd44
save LAN settings
2019-02-21 03:06:37 +01:00
Arisotura
023a1ba200
list adapters, display their info
2019-02-21 02:45:01 +01:00
Arisotura
616f2b494b
make it somewhat functional. move wifi socket bind setting to wifi settings dialog.
2019-02-21 02:12:33 +01:00
Arisotura
81eae0e3ea
add base for wifi settings dialog
2019-02-21 01:58:03 +01:00