summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSergi Granell2017-10-26 12:56:06 +0200
committerSergi Granell2017-10-26 12:56:06 +0200
commit16e44fbb49a992d5007c3c36e56862535c5586da (patch)
treeaec5f11d48e326a02196ce5b495a3a2b2a966911
parentUpdate SceUdcdDriver (diff)
downloadvds-libraries-16e44fbb49a992d5007c3c36e56862535c5586da.tar.gz
More SceThreadmgrForDriver, SceDisplayForDriver NIDs, update psp2kern/display.h
-rw-r--r--include/kernel/display.h81
-rw-r--r--include/kernel/kernel/processmgr.h2
-rw-r--r--nids/360/SceDisplay.yml12
-rw-r--r--nids/360/SceKernelThreadMgr.yml4
-rw-r--r--nids/360/SceProcessmgr.yml2
5 files changed, 97 insertions, 4 deletions
diff --git a/include/kernel/display.h b/include/kernel/display.h
index abf0d2b..b5b4809 100644
--- a/include/kernel/display.h
+++ b/include/kernel/display.h
@@ -82,17 +82,98 @@ int sceDisplayGetFrameBuf(SceDisplayFrameBuf *pParam, int sync);
int sceDisplayGetFrameBufDimensions(int *width, int *height);
/**
+ * Number of vertical blank pulses up to now
+ */
+int sceDisplayGetVcountForDisplay(int display);
+
+/**
* Wait for vertical blank start
*/
int sceDisplayWaitVblankStart(void);
/**
+ * Wait for vertical blank start with callback
+ */
+int sceDisplayWaitVblankStartCB(void);
+
+/**
* Wait for vertical blank start after specified number of vertical periods
*
* @param[in] vcount - Number of vertical periods before waiting for vertical blank start
*/
int sceDisplayWaitVblankStartMulti(unsigned int vcount);
+/**
+ * Wait for vertical blank start with callback after specified number of vertical periods
+ *
+ * @param[in] vcount - Number of vertical periods before waiting for vertical blank start
+ */
+int sceDisplayWaitVblankStartMultiCB(unsigned int vcount);
+
+/**
+ * Wait for vertical blank start since last update of framebuffer
+ */
+int sceDisplayWaitSetFrameBuf(void);
+
+/**
+ * Wait for vertical blank start with callback since last update of framebuffer
+ */
+int sceDisplayWaitSetFrameBufCB(void);
+
+/**
+ * Wait for vertical blank start after specified number of vertical periods
+ * since last update of framebuffer.
+ *
+ * @param[in] vcount - Number of vertical periods before waiting for vertical blank start
+ */
+int sceDisplayWaitSetFrameBufMulti(unsigned int vcount);
+
+/**
+ * Wait for vertical blank start with callback after specified number of vertical periods
+ * since last update of framebuffer.
+ *
+ * @param[in] vcount - Number of vertical periods before waiting for vertical blank start
+ */
+int sceDisplayWaitSetFrameBufMultiCB(unsigned int vcount);
+
+/**
+ * Register callback to be used at each vertical blank start
+ *
+ * @param[in] uid - Callback UID
+ */
+int sceDisplayRegisterVblankStartCallback(SceUID uid);
+
+/**
+ * Register callback to be used at each vertical blank start for a display
+ *
+ * @param[in] display - Display index
+ * @param[in] uid - Callback UID
+ */
+int sceDisplayRegisterVblankStartCallbackForDisplay(int display, SceUID uid);
+
+/**
+ * Unregister callback used at each vertical blank start
+ *
+ * @param[in] uid - Callback UID
+ */
+int sceDisplayUnregisterVblankStartCallback(SceUID uid);
+
+/**
+ * Unregister callback used at each vertical blank start for a display
+ *
+ * @param[in] display - Display index
+ * @param[in] uid - Callback UID
+ */
+int sceDisplayUnregisterVblankStartCallbackForDisplay(int display, SceUID uid);
+
+/**
+ * Enable/disable color inversion for a display.
+ *
+ * @param[in] display - Display index
+ * @param[in] enable - Enable/disable color inversion
+ */
+int sceDisplaySetInvertColors(int display, int enable);
+
#ifdef __cplusplus
}
#endif
diff --git a/include/kernel/kernel/processmgr.h b/include/kernel/kernel/processmgr.h
index 58f1eee..a090818 100644
--- a/include/kernel/kernel/processmgr.h
+++ b/include/kernel/kernel/processmgr.h
@@ -23,7 +23,7 @@ int sceKernelGetProcessInfo(SceUID pid, SceKernelProcessInfo *info);
int sceKernelCreateProcessLocalStorage(const char *name, SceSize size);
void *sceKernelGetProcessLocalStorageAddr(int key);
-int sceKernelGetPidProcessLocalStorageAddr(SceUID pid, int key, void **out_addr, int create_if_doesnt_exist);
+int sceKernelGetProcessLocalStorageAddrForPid(SceUID pid, int key, void **out_addr, int create_if_doesnt_exist);
#ifdef __cplusplus
}
diff --git a/nids/360/SceDisplay.yml b/nids/360/SceDisplay.yml
index dd84e39..e096faa 100644
--- a/nids/360/SceDisplay.yml
+++ b/nids/360/SceDisplay.yml
@@ -25,18 +25,26 @@ modules:
sceDisplayGetFrameBufDimensions: 0x5AFE6CD3
sceDisplayGetFrameBufInternal: 0x19F94C63
sceDisplayGetResolutionInfoInternal: 0xB3C6D647
+ sceDisplayGetVcountForDisplay: 0x8B5DA27B
sceDisplayRegisterFrameBufCallback: 0x6E22990E
sceDisplayRegisterVblankStartCallback: 0x7FB0BD28
+ sceDisplayRegisterVblankStartCallbackForDisplay: 0x4AE2A2B1
sceDisplaySetBrightness: 0x9E3C6DC6
sceDisplaySetDisplayColorSpaceMode: 0x8D79D187
sceDisplaySetFrameBuf: 0x289D82FE
sceDisplaySetFrameBufInternal: 0x16466675
sceDisplaySetInvertColors: 0x19140ACD
sceDisplaySetViewportConf: 0xEE5EB52D
- sceDisplayUnregisterVblankStartCallback: 0xB027433E
+ sceDisplayUnregisterVblankStartCallback: 0x4B27191F
+ sceDisplayUnregisterVblankStartCallbackForDisplay: 0xB027433E
+ sceDisplayWaitSetFrameBuf: 0x1C0C9C4A
+ sceDisplayWaitSetFrameBufCB: 0x9D7F203C
+ sceDisplayWaitSetFrameBufMulti: 0xE6D27E0A
+ sceDisplayWaitSetFrameBufMultiCB: 0x863EACBE
sceDisplayWaitVblankStart: 0x984C27E7
+ sceDisplayWaitVblankStartCB: 0x46F186C3
sceDisplayWaitVblankStartMulti: 0x40F1469C
- sceDisplayWaitVblankStartMultiCB: 0x46F186C3
+ sceDisplayWaitVblankStartMultiCB: 0x77ED8B3A
SceDisplayUser:
nid: 0x4FAACD11
functions:
diff --git a/nids/360/SceKernelThreadMgr.yml b/nids/360/SceKernelThreadMgr.yml
index 99f15f7..81d32e5 100644
--- a/nids/360/SceKernelThreadMgr.yml
+++ b/nids/360/SceKernelThreadMgr.yml
@@ -113,6 +113,7 @@ modules:
sceKernelCreateEventFlag: 0x4336BAA4
sceKernelCreateMutex: 0xFBAA026E
sceKernelCreateSema: 0x30E93C31
+ sceKernelCreateSimpleEvent: 0x357A8177
sceKernelCreateThread: 0xC6674E7D
sceKernelDelayThread: 0x4B675D05
sceKernelDelayThreadCB: 0x9C0180E1
@@ -141,6 +142,7 @@ modules:
sceKernelPollEventFlag: 0x76C6555B
sceKernelPollSema: 0x4FDDFE24
sceKernelPulseEvent: 0x2427C81B
+ sceKernelPulseEventWithNotifyCallback: 0x714A107A
sceKernelRegisterCallbackToEvent: 0x832A7E0C
sceKernelRunWithStack: 0xE54FD746
sceKernelSetEvent: 0x9EA3A45C
@@ -162,6 +164,8 @@ modules:
sceKernelUnregisterCallbackFromEvent: 0x2E48D81C
sceKernelUnregisterCallbackFromEventAll: 0x8DADBD16
sceKernelUnregisterThreadEventHandler: 0x2C8ED6F0
+ sceKernelWaitEvent: 0xC529EA32
+ sceKernelWaitEventCB: 0x360C655C
sceKernelWaitEventFlag: 0x0C1D3F20
sceKernelWaitEventFlagCB: 0x8A35F714
sceKernelWaitSema: 0x3C8B55A9
diff --git a/nids/360/SceProcessmgr.yml b/nids/360/SceProcessmgr.yml
index bef16ce..035022b 100644
--- a/nids/360/SceProcessmgr.yml
+++ b/nids/360/SceProcessmgr.yml
@@ -25,9 +25,9 @@ modules:
nid: 0x746EC971
functions:
sceKernelCreateProcessLocalStorage: 0x3801D7D6
- sceKernelGetPidProcessLocalStorageAddr: 0xAF80F39C
sceKernelGetProcessInfo: 0x0AFF3EAE
sceKernelGetProcessLocalStorageAddr: 0xEE694840
+ sceKernelGetProcessLocalStorageAddrForPid: 0xAF80F39C
sceKernelGetProcessTimeCore: 0xEC283166
sceKernelGetProcessTimeLowCore: 0x02179E12
sceKernelGetProcessTimeWideCore: 0x82D94BE9