diff options
| author | 2017-04-13 15:58:36 -0500 | |
|---|---|---|
| committer | 2017-05-15 13:05:17 -0500 | |
| commit | f2d5d8cfac11bc1726e33060fb45178a37b27c0c (patch) | |
| tree | abd7c53e066d4bf4eed622060b932bd56e7d7abc | |
| parent | Services/UDS: Implement RecvBeaconBroadcastData. (diff) | |
| download | yuzu-f2d5d8cfac11bc1726e33060fb45178a37b27c0c.tar.gz yuzu-f2d5d8cfac11bc1726e33060fb45178a37b27c0c.tar.xz yuzu-f2d5d8cfac11bc1726e33060fb45178a37b27c0c.zip | |
Services/UDS: Use the new IPC helper functions.
| -rw-r--r-- | src/core/hle/service/nwm/nwm_uds.cpp | 31 |
1 files changed, 10 insertions, 21 deletions
diff --git a/src/core/hle/service/nwm/nwm_uds.cpp b/src/core/hle/service/nwm/nwm_uds.cpp index e5ffefa65..581816e81 100644 --- a/src/core/hle/service/nwm/nwm_uds.cpp +++ b/src/core/hle/service/nwm/nwm_uds.cpp | |||
| @@ -89,22 +89,13 @@ static void RecvBeaconBroadcastData(Interface* self) { | |||
| 89 | IPC::RequestParser rp(Kernel::GetCommandBuffer(), 0x0F, 16, 4); | 89 | IPC::RequestParser rp(Kernel::GetCommandBuffer(), 0x0F, 16, 4); |
| 90 | 90 | ||
| 91 | u32 out_buffer_size = rp.Pop<u32>(); | 91 | u32 out_buffer_size = rp.Pop<u32>(); |
| 92 | rp.Pop<u32>(); | 92 | u32 unk1 = rp.Pop<u32>(); |
| 93 | rp.Pop<u32>(); | 93 | u32 unk2 = rp.Pop<u32>(); |
| 94 | 94 | ||
| 95 | MacAddress mac_address; | 95 | MacAddress mac_address; |
| 96 | rp.PopRaw(mac_address); | 96 | rp.PopRaw(mac_address); |
| 97 | 97 | ||
| 98 | // TODO(Subv): Use IPC::RequestParser::Skip when possible. | 98 | rp.Skip(9, false); |
| 99 | rp.Pop<u32>(); | ||
| 100 | rp.Pop<u32>(); | ||
| 101 | rp.Pop<u32>(); | ||
| 102 | rp.Pop<u32>(); | ||
| 103 | rp.Pop<u32>(); | ||
| 104 | rp.Pop<u32>(); | ||
| 105 | rp.Pop<u32>(); | ||
| 106 | rp.Pop<u32>(); | ||
| 107 | rp.Pop<u32>(); | ||
| 108 | 99 | ||
| 109 | u32 wlan_comm_id = rp.Pop<u32>(); | 100 | u32 wlan_comm_id = rp.Pop<u32>(); |
| 110 | u32 id = rp.Pop<u32>(); | 101 | u32 id = rp.Pop<u32>(); |
| @@ -157,8 +148,8 @@ static void RecvBeaconBroadcastData(Interface* self) { | |||
| 157 | rb.Push(RESULT_SUCCESS); | 148 | rb.Push(RESULT_SUCCESS); |
| 158 | 149 | ||
| 159 | LOG_DEBUG(Service_NWM, "called out_buffer_size=0x%08X, wlan_comm_id=0x%08X, id=0x%08X," | 150 | LOG_DEBUG(Service_NWM, "called out_buffer_size=0x%08X, wlan_comm_id=0x%08X, id=0x%08X," |
| 160 | "input_handle=0x%08X, out_buffer_ptr=0x%08X", | 151 | "input_handle=0x%08X, out_buffer_ptr=0x%08X, unk1=0x%08X, unk2=0x%08X", |
| 161 | out_buffer_size, wlan_comm_id, id, input_handle, out_buffer_ptr); | 152 | out_buffer_size, wlan_comm_id, id, input_handle, out_buffer_ptr, unk1, unk2); |
| 162 | } | 153 | } |
| 163 | 154 | ||
| 164 | /** | 155 | /** |
| @@ -183,8 +174,8 @@ static void InitializeWithVersion(Interface* self) { | |||
| 183 | // Update the node information with the data the game gave us. | 174 | // Update the node information with the data the game gave us. |
| 184 | rp.PopRaw(node_info[0]); | 175 | rp.PopRaw(node_info[0]); |
| 185 | 176 | ||
| 186 | u16 version; | 177 | u16 version = rp.Pop<u16>(); |
| 187 | rp.PopRaw(version); | 178 | |
| 188 | Kernel::Handle sharedmem_handle = rp.PopHandle(); | 179 | Kernel::Handle sharedmem_handle = rp.PopHandle(); |
| 189 | 180 | ||
| 190 | recv_buffer_memory = Kernel::g_handle_table.Get<Kernel::SharedMemory>(sharedmem_handle); | 181 | recv_buffer_memory = Kernel::g_handle_table.Get<Kernel::SharedMemory>(sharedmem_handle); |
| @@ -245,10 +236,8 @@ static void Bind(Interface* self) { | |||
| 245 | 236 | ||
| 246 | u32 bind_node_id = rp.Pop<u32>(); | 237 | u32 bind_node_id = rp.Pop<u32>(); |
| 247 | u32 recv_buffer_size = rp.Pop<u32>(); | 238 | u32 recv_buffer_size = rp.Pop<u32>(); |
| 248 | u8 data_channel; | 239 | u8 data_channel = rp.Pop<u8>(); |
| 249 | rp.PopRaw(data_channel); | 240 | u16 network_node_id = rp.Pop<u16>(); |
| 250 | u16 network_node_id; | ||
| 251 | rp.PopRaw(network_node_id); | ||
| 252 | 241 | ||
| 253 | // TODO(Subv): Store the data channel and verify it when receiving data frames. | 242 | // TODO(Subv): Store the data channel and verify it when receiving data frames. |
| 254 | 243 | ||
| @@ -391,7 +380,7 @@ static void GetChannel(Interface* self) { | |||
| 391 | u8 channel = is_connected ? network_channel : 0; | 380 | u8 channel = is_connected ? network_channel : 0; |
| 392 | 381 | ||
| 393 | rb.Push(RESULT_SUCCESS); | 382 | rb.Push(RESULT_SUCCESS); |
| 394 | rb.PushRaw(channel); | 383 | rb.Push(channel); |
| 395 | 384 | ||
| 396 | LOG_DEBUG(Service_NWM, "called"); | 385 | LOG_DEBUG(Service_NWM, "called"); |
| 397 | } | 386 | } |