kXNotification - adding more
- Added more kXNotification ids - Added missing Notification to XMPCreateTitlePlaylist
This commit is contained in:
committed by
Radosław Gliński
parent
4182852a4b
commit
31173107bc
@@ -865,7 +865,7 @@ void KernelState::RegisterNotifyListener(XNotifyListener* listener) {
|
||||
listener->EnqueueNotification(kXNotificationSystemSignInChanged, 1);
|
||||
listener->EnqueueNotification(kXNotificationSystemSignInChanged, 1);
|
||||
|
||||
listener->EnqueueNotification(kXNotificationDvdDriveTrayStateChanged,
|
||||
listener->EnqueueNotification(kXNotificationSystemTrayStateChanged,
|
||||
X_DVD_DISC_STATE::XBOX_360_GAME_DISC);
|
||||
}
|
||||
if (listener->mask() & kXNotifyLive) {
|
||||
|
||||
@@ -58,7 +58,7 @@ SystemManagementController::~SystemManagementController() {};
|
||||
|
||||
void SystemManagementController::SetTrayState(X_DVD_TRAY_STATE state) {
|
||||
dvd_tray_state_ = state;
|
||||
kernel_state()->BroadcastNotification(kXNotificationDvdDriveTrayStateChanged,
|
||||
kernel_state()->BroadcastNotification(kXNotificationSystemTrayStateChanged,
|
||||
static_cast<uint8_t>(state));
|
||||
}
|
||||
|
||||
|
||||
@@ -94,6 +94,8 @@ X_HRESULT XmpApp::XMPCreateTitlePlaylist(
|
||||
|
||||
kernel_state_->emulator()->audio_media_player()->AddPlaylist(
|
||||
next_playlist_handle_, std::move(playlist));
|
||||
kernel_state_->BroadcastNotification(
|
||||
kXNotificationXmpTitlePlayListContentChanged, 0);
|
||||
|
||||
return X_E_SUCCESS;
|
||||
}
|
||||
@@ -548,16 +550,17 @@ X_HRESULT XmpApp::DispatchMessageSync(uint32_t message, uint32_t buffer_ptr,
|
||||
case 0x00070053: {
|
||||
// Called on the blades dashboard Version 4532-5787 after clicking on the
|
||||
// picture or video library. It only receives buffer
|
||||
// *unk1_ptr = to some unknown value
|
||||
struct {
|
||||
xe::be<uint32_t> xmp_client;
|
||||
xe::be<uint32_t> unk1;
|
||||
xe::be<uint32_t> unk1_ptr;
|
||||
}* args = memory_->TranslateVirtual<decltype(args)>(buffer_ptr);
|
||||
static_assert_size(decltype(*args), 8);
|
||||
|
||||
assert_true(args->xmp_client == 0x00000002 ||
|
||||
args->xmp_client == 0x00000000);
|
||||
XELOGD("XMPUnk70053({:08X}, {:08X}), unimplemented",
|
||||
args->xmp_client.get(), args->unk1.get());
|
||||
args->xmp_client.get(), args->unk1_ptr.get());
|
||||
return X_E_SUCCESS;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -606,8 +606,8 @@ DECLARE_XAM_EXPORT1(XamShowCommunitySessionsUI, kNone, kStub);
|
||||
dword_result_t XamSetDashContext_entry(dword_t value,
|
||||
const ppc_context_t& ctx) {
|
||||
ctx->kernel_state->dash_context_ = value;
|
||||
kernel_state()->BroadcastNotification(
|
||||
kXNotificationDvdDriveUnknownDashContext, 0);
|
||||
kernel_state()->BroadcastNotification(kXNotificationSystemDashContextChanged,
|
||||
0);
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user