mirror of https://github.com/mgba-emu/mgba.git
Windows: Attach to console if present
This commit is contained in:
parent
881dd11bf2
commit
76438391a1
1
CHANGES
1
CHANGES
|
@ -32,6 +32,7 @@ Misc:
|
||||||
- Qt: Only set default controller bindings if loading fails (fixes mgba.io/i/799)
|
- Qt: Only set default controller bindings if loading fails (fixes mgba.io/i/799)
|
||||||
- Qt: Save converter now supports importing GameShark Advance saves
|
- Qt: Save converter now supports importing GameShark Advance saves
|
||||||
- Qt: Save positions of multiplayer windows (closes mgba.io/i/2128)
|
- Qt: Save positions of multiplayer windows (closes mgba.io/i/2128)
|
||||||
|
- Windows: Attach to console if present
|
||||||
|
|
||||||
0.9.3: (2021-12-17)
|
0.9.3: (2021-12-17)
|
||||||
Emulation fixes:
|
Emulation fixes:
|
||||||
|
|
|
@ -41,6 +41,7 @@ Q_IMPORT_PLUGIN(AVFServicePlugin);
|
||||||
|
|
||||||
#ifdef Q_OS_WIN
|
#ifdef Q_OS_WIN
|
||||||
#include <process.h>
|
#include <process.h>
|
||||||
|
#include <wincon.h>
|
||||||
#else
|
#else
|
||||||
#include <unistd.h>
|
#include <unistd.h>
|
||||||
#endif
|
#endif
|
||||||
|
@ -48,6 +49,9 @@ Q_IMPORT_PLUGIN(AVFServicePlugin);
|
||||||
using namespace QGBA;
|
using namespace QGBA;
|
||||||
|
|
||||||
int main(int argc, char* argv[]) {
|
int main(int argc, char* argv[]) {
|
||||||
|
#ifdef Q_OS_WIN
|
||||||
|
AttachConsole(ATTACH_PARENT_PROCESS);
|
||||||
|
#endif
|
||||||
#ifdef BUILD_SDL
|
#ifdef BUILD_SDL
|
||||||
#if SDL_VERSION_ATLEAST(2, 0, 0) // CPP does not shortcut function lookup
|
#if SDL_VERSION_ATLEAST(2, 0, 0) // CPP does not shortcut function lookup
|
||||||
SDL_SetMainReady();
|
SDL_SetMainReady();
|
||||||
|
@ -154,6 +158,7 @@ int wmain(int argc, wchar_t* argv[]) {
|
||||||
for (int i = 0; i < argc; ++i) {
|
for (int i = 0; i < argc; ++i) {
|
||||||
argv8.push_back(utf16to8(reinterpret_cast<uint16_t*>(argv[i]), wcslen(argv[i]) * 2));
|
argv8.push_back(utf16to8(reinterpret_cast<uint16_t*>(argv[i]), wcslen(argv[i]) * 2));
|
||||||
}
|
}
|
||||||
|
__argv = argv8.data();
|
||||||
int ret = main(argc, argv8.data());
|
int ret = main(argc, argv8.data());
|
||||||
for (char* ptr : argv8) {
|
for (char* ptr : argv8) {
|
||||||
free(ptr);
|
free(ptr);
|
||||||
|
|
|
@ -59,6 +59,9 @@ static void _loadState(struct mCoreThread* thread) {
|
||||||
}
|
}
|
||||||
|
|
||||||
int main(int argc, char** argv) {
|
int main(int argc, char** argv) {
|
||||||
|
#ifdef _WIN32
|
||||||
|
AttachConsole(ATTACH_PARENT_PROCESS);
|
||||||
|
#endif
|
||||||
struct mSDLRenderer renderer = {0};
|
struct mSDLRenderer renderer = {0};
|
||||||
|
|
||||||
struct mCoreOptions opts = {
|
struct mCoreOptions opts = {
|
||||||
|
@ -213,6 +216,7 @@ int wmain(int argc, wchar_t** argv) {
|
||||||
for (i = 0; i < argc; ++i) {
|
for (i = 0; i < argc; ++i) {
|
||||||
argv8[i] = utf16to8((uint16_t*) argv[i], wcslen(argv[i]) * 2);
|
argv8[i] = utf16to8((uint16_t*) argv[i], wcslen(argv[i]) * 2);
|
||||||
}
|
}
|
||||||
|
__argv = argv8;
|
||||||
int ret = main(argc, argv8);
|
int ret = main(argc, argv8);
|
||||||
for (i = 0; i < argc; ++i) {
|
for (i = 0; i < argc; ++i) {
|
||||||
free(argv8[i]);
|
free(argv8[i]);
|
||||||
|
|
Loading…
Reference in New Issue