ScePaf

Much of this page is wrong because much of the PAF is written in C++ but it works as a "function".

Module
is a C++ runtime.

Quick note on reversing. This module has many vtables that point to exported functions.

It would be great to start from marking which function belongs to which vtable.

This way we can restore initial class structure.

Libraries
TOOL version of libpaf module is different from CEX and DEX as it has an additional library: ScePafAutoTestTty. Some TOOL system apps import that library and crash on CEX/DEX systems because of that.

ScePafWidget
widget

scePafWidgetCreateNewTextWidget
Temp wrong name is scePafWidgetCreateNewWidget.

ScePafWidget_DDB0437F
??? scePafWidgetSetColorEnd ???

scePafWidgetTypeText2
same to scePafWidgetTypeText

scePafWidgetTypeBusyIndicator2
same to scePafWidgetTypeBusyIndicator1

scePafWidgetSetPosition
Temp name was scePafWidgetAddWidget.

scePafWidgetSearchWidgetById
Searches the widget corresponding to a2->id from the group of a1 and returns pWidgetCtx if found

ScePafAutoTestTty_9E10E873
Can serve both as normal debug printf and also dump some PAF objects as XML. On external version of libpaf this function does nothing because it does not open tty output.