Here are some things that I've labeled while looking into demo recording and trying to render text on-screen.
Notes for stuff that might not be self-explanatory.
CreateAndDrawMessage: abstracts the creation of the keepMessage/ef_message. Useful for one-off messages.
struct ef_message: usually used with keepMessage tasks.
struct ef_message_b: an extension on ef_message used with EfMsgWnd0Exec tasks. This is used for things like the upgrade text, and I believe the Omochao and hint monitor messages. I don't really have a better name for it.
InitMessage: after creating an ef_message, this is usually called to set the color, position, and scale.
DrawPolygon: used for drawing the fade-in/fade-out that covers the whole screen. It doesn't look like you can call this more than once per frame (the last call is the one that's used).
struct PolygonPoint: I looked around, but I might've missed another struct that has the same fields that you can typedef. If anyone knows feel free to do that or change the function definition to use that struct instead.
struct Number/RenderNumber: used for rendering the numbers in the score/timers. Not completely sure what valid values are for the Mode field, but it's used to set whether it's a number, colon, placeholder (like in kart races), etc. Bad values will cause a crash.
FileBuffer: this is the area of memory where demos are loaded to and saved from, but other stuff also uses this buffer (some in-game cutscenes?). I felt this was a better name than making "SomeBuffer_2"
If anyone has questions about other stuff I've labeled please lmk!
Here are some things that I've labeled while looking into demo recording and trying to render text on-screen.
Notes for stuff that might not be self-explanatory.
If anyone has questions about other stuff I've labeled please lmk!