melonDS-emu / melonDS

DS emulator, sorta
https://melonds.kuribo64.net
GNU General Public License v3.0
3.32k stars 544 forks source link

QT dependency #1298

Closed MyTDT-Mysoft closed 2 years ago

MyTDT-Mysoft commented 2 years ago

would be possible to change all everything UI and QT (i dunno how much is shared with SDL)... to a separate DLL? like MelonDS-UI.dll (with C exports) so that such dll could be implemented separately to not require the QT dependency?

i could try to make a patch myself... but i rather not have my eyes bleeding reading C++ OOP/QT code, but once that is done it would be a honor to make a native winapi version of the UI :)

Arisotura commented 2 years ago

no

MyTDT-Mysoft commented 2 years ago

now who is being childish?

Arisotura commented 2 years ago

have you tried synesthesia? you can get a can of it for about $7 at any grocery store. it changes your perception!

nadiaholmquist commented 2 years ago

The Qt frontend is already separated from the actual emulation code, and the emulator itself isn't even code that would cause your eyes to bleed by your definition.

Simply make a new folder in src/frontend and have fun with your winapi frontend.

MyTDT-Mysoft commented 2 years ago

The Qt frontend is already separated from the actual emulation code, and the emulator itself isn't even code that would cause your eyes to bleed by your definition.

Simply make a new folder in src/frontend and have fun with your winapi frontend.

ok that is useful info... altough if the emulator calls the Qt Frontend with a class... (or worse except the QT to callback with classes) it would still count as the QT eye bleeding part... but ok... thanks, i will fork and fix that myself

btw why it is using 140mb of ram right at start? (is that QT or there's some huge buffers being allocated somewhere?)

Arisotura commented 2 years ago

the Qt part is strictly separated from the emu core. the Platform namespace is used from core side, but implemented on frontend side, it's a means for the core to call frontend-specific code, and you'll have to reimplement that bit.

Arisotura commented 2 years ago

derpthread2 fun fact.

ghost commented 2 years ago

FAxGX4aXoAQEde5

leranger commented 2 years ago

@MyTDT-Mysoft maybe you should use the 32bits libretro core (without JIT I guess) with a frontend like sdlarch to begin with and replace SDL functions with Win32 ones

nadiaholmquist commented 2 years ago

melonDS itself does not depend on Qt so going with upstream would be just as easy.

MyTDT-Mysoft commented 2 years ago

yeah its one idea indeed, as long they keep updating with this melonDS, but at some point there will be some camera emulation, and fully working DSi wifi... and when it reaches that point i plan to remove all the C++ dependencies and change mutliples files into included files (separating modules only for actual different components) and so on, and then get rid of need for LTO, which will greatly speed up compile time, and it will cause the 32bit to be faster than the 64bit one. As well make the 32bit jit, to close the gap, So in a way or another i need to get used to the code, to be able to do that :)