mirror of
https://git.eden-emu.dev/eden-emu/eden
synced 2026-05-24 02:37:05 +02:00
[hle] attempt support ULaunch
Signed-off-by: lizzie <lizzie@eden-emu.dev>
This commit is contained in:
parent
179174180d
commit
49d83a89f4
3 changed files with 69 additions and 0 deletions
|
|
@ -1089,6 +1089,8 @@ add_library(core STATIC
|
||||||
hle/service/ssl/ssl.h
|
hle/service/ssl/ssl.h
|
||||||
hle/service/ssl/ssl_backend.h
|
hle/service/ssl/ssl_backend.h
|
||||||
hle/service/ssl/ssl_types.h
|
hle/service/ssl/ssl_types.h
|
||||||
|
hle/service/ulsf/ulsf.cpp
|
||||||
|
hle/service/ulsf/ulsf.h
|
||||||
hle/service/usb/usb.cpp
|
hle/service/usb/usb.cpp
|
||||||
hle/service/usb/usb.h
|
hle/service/usb/usb.h
|
||||||
hle/service/vi/application_display_service.cpp
|
hle/service/vi/application_display_service.cpp
|
||||||
|
|
|
||||||
39
src/core/hle/service/ulsf/ulsf.cpp
Normal file
39
src/core/hle/service/ulsf/ulsf.cpp
Normal file
|
|
@ -0,0 +1,39 @@
|
||||||
|
// SPDX-FileCopyrightText: Copyright 2026 Eden Emulator Project
|
||||||
|
// SPDX-License-Identifier: GPL-3.0-or-later
|
||||||
|
|
||||||
|
#include <memory>
|
||||||
|
#include "core/hle/service/ipc_helpers.h"
|
||||||
|
#include "core/hle/service/ulsf/ulsf.h"
|
||||||
|
#include "core/hle/service/server_manager.h"
|
||||||
|
|
||||||
|
namespace Service::ULSF {
|
||||||
|
|
||||||
|
ULSF_U::ULSF_U(Core::System& system_) : ServiceFramework{system_, "ulsf:u"} {
|
||||||
|
static const FunctionInfo functions[] = {
|
||||||
|
{0, &ULSF_U::GetVersion, "GetVersion"},
|
||||||
|
};
|
||||||
|
RegisterHandlers(functions);
|
||||||
|
}
|
||||||
|
ULSF_U::~ULSF_U() = default;
|
||||||
|
|
||||||
|
// Result ULSF_U::GetVersion(Out<ULauncherVersion> out_version) {
|
||||||
|
// LOG_WARNING(Service_SM, "(stubbed)");
|
||||||
|
// *out_version = {};
|
||||||
|
// R_SUCCEED();
|
||||||
|
// }
|
||||||
|
|
||||||
|
void ULSF_U::GetVersion(HLERequestContext& ctx) {
|
||||||
|
LOG_WARNING(Service_SM, "(stubbed)");
|
||||||
|
ULauncherVersion version{1, 6, 7};
|
||||||
|
IPC::ResponseBuilder rb{ctx, 2};
|
||||||
|
rb.Push(ResultSuccess);
|
||||||
|
rb.PushRaw(version);
|
||||||
|
}
|
||||||
|
|
||||||
|
void LoopProcess(Core::System& system) {
|
||||||
|
auto server_manager = std::make_unique<ServerManager>(system);
|
||||||
|
server_manager->RegisterNamedService("ulsf:u", std::make_shared<ULSF_U>(system));
|
||||||
|
ServerManager::RunServer(std::move(server_manager));
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
28
src/core/hle/service/ulsf/ulsf.h
Normal file
28
src/core/hle/service/ulsf/ulsf.h
Normal file
|
|
@ -0,0 +1,28 @@
|
||||||
|
// SPDX-FileCopyrightText: Copyright 2026 Eden Emulator Project
|
||||||
|
// SPDX-License-Identifier: GPL-3.0-or-later
|
||||||
|
|
||||||
|
#pragma once
|
||||||
|
|
||||||
|
#include "common/common_types.h"
|
||||||
|
#include "core/hle/service/cmif_types.h"
|
||||||
|
#include "core/hle/service/service.h"
|
||||||
|
|
||||||
|
namespace Service::ULSF {
|
||||||
|
|
||||||
|
struct ULauncherVersion {
|
||||||
|
u8 major;
|
||||||
|
u8 minor;
|
||||||
|
u8 micro;
|
||||||
|
};
|
||||||
|
|
||||||
|
class ULSF_U final : public ServiceFramework<ULSF_U> {
|
||||||
|
public:
|
||||||
|
explicit ULSF_U(Core::System& system_);
|
||||||
|
~ULSF_U();
|
||||||
|
//Result GetVersion(Out<ULauncherVersion> out_version);
|
||||||
|
void GetVersion(HLERequestContext& ctx);
|
||||||
|
};
|
||||||
|
|
||||||
|
void LoopProcess(Core::System& system);
|
||||||
|
|
||||||
|
}
|
||||||
Loading…
Add table
Add a link
Reference in a new issue