IRUSER Shared Memory

From 3dbrew
Revision as of 12:02, 22 February 2017 by Wwylele (talk | contribs) (Created page with "This is the shared-memory for "ir:USER", which is provided by the application via InitializeIrnop or IRUSER:InitializeIrnopShared|...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

This is the shared-memory for "ir:USER", which is provided by the application via InitializeIrnop or InitializeIrnopShared. The size of the shared memory is determined by parameters of the Init functions above.

Overall Structure

The shared memory consists of 2 or 5 components, depending on which Init function is called. For InitializeIrnopShared, ir service puts more information to the shared memory and applications can read it directly; for InitializeIrnop, ir service puts less information and store the rest in its local storage. All these components are adjacent to each other.

Size Description
0x10 StatusInfo. Only presents when InitializeIrnopShared is called
0x10 ReceiveBufferInfo. Only presents when InitializeIrnopShared is called
(specified by Init paramter) ReceiveBuffer
0x10 SendBufferInfo. Only presents when InitializeIrnopShared is called
(specified by Init paramter) SendBuffer