Improved C docs and a crash analyzer tool

, ,

I'd really like to see some better documentation regarding crash logs, as well as surrounding details like the limited stack size, the watchdog timer, and the audio thread, along with other things like filesystem access speed, bitmap drawing, etc. Basically everything I've learned has been through posts on the dev forum, or through my own experiments. Consolidating all of that into one place would do a lot to make C on Playdate more accessible to new devs.

With crash logs in particular, a lot of information can be gleaned from them, but the explanations that currently exist on the forum are often outdated or somewhat incomplete. Better documentation would be a start, but I think a crash log analyzer tool could be extremely helpful. It could explain the meanings of the fault registers, tell you if your crash is happening in game or firmware code, and give you file names and line numbers. These are all things that can be done by hand, but a simple web tool that takes in your crash log and your .elf file and returns actionable information would help lower the barrier to entry quite a bit, in my opinion. Such a tool might even be helpful for Lua devs when trying to dissect firmware crashes.
The SDK actually has a super rudimentary symbolizer script, but as far as I'm aware, it's been broken ever since 2.0, due to relocations (something that should be explained in the docs!)

If these aren't things Panic is interested in doing themselves, then I think as a community we could build our own wiki and log analyzer tool. Even a thread where everyone posts tips or links to other threads could work.

4 Likes

The symbolize script/crash logs have been fixed for a while. It would be great to get extensive crash debugging, it would be very cool to have a 3rd party app do something like this.