This patch fixes the search for function like __mcount() or gprof_start().
The issue existed for functions with function attribute (__attribute__()): Doxygen didn't parsed it properly. It fixes such warnings:
warning: documented symbol '__mcount' was not declared or defined.
After changing Doxygen configuration to fix it, new warnings appears. For example:
warning: explicit link request to 'PSP_VAUDIO_FORMAT_' could not be resolved
It's fixed by using the full name of the constants. By the way, it also fixes the link to the constants in the documentation.
Initial patch based on:
https://stackoverflow.com/questions/75410662/doxygen-does-not-parse-attribute-correctly
Doxygen displays two warnings (among others) because parameters filled in @params are not correct.
The warnings fixed are:
pspsdk/src/user/pspthreadman.h:622: warning: argument 'optionsPTr' of command @param is not found in the argument list of sceKernelCreateLwMutex(SceLwMutexWorkarea *workarea, const char *name, SceUInt32 attr, int initialCount, u32 *optionsPtr)
pspsdk/src/user/pspthreadman.h:622: warning: The following parameter of sceKernelCreateLwMutex(SceLwMutexWorkarea *workarea, const char *name, SceUInt32 attr, int initialCount, u32 *optionsPtr) is not documented:
parameter 'optionsPtr'
pspsdk/src/user/pspthreadman.h:665: warning: argument 'name' of command @param is not found in the argument list of sceKernelUnlockLwMutex(SceLwMutexWorkarea *workarea, int lockCount)
When the SceCtrlData.Lx value changes, the length of the value can change (from 1 character to 3 characters) so the string for Ly moves to the right by one or two characters.
The SceCtrlData.Lx and Ly are `unsigned char` so the value are between 0 (one character length) and 255 (3 characters length).
It's more readable by fixing the size for the value to 3 characters wide so the string to Ly does not move.
This function allows users to get if the display is turned on in libgu.
This can be useful for libraries like SDL, which want a way to check if
it is before trying to display the on-screen keyboard or a native
message dialog, since those do not work before libgu has been fully
initialized.