12. Alternatives Considered

12.1 Option A: Simple printf Debugging

Pros: Simple, no overhead Cons: No structure, hard to filter, no backends Decision: Use structured logging with backends

12.2 Option B: External Debugger

Pros: Powerful, full-featured Cons: Complex, requires hardware support Decision: Not feasible for Dreamcast, use built-in debugging

12.3 Option C: No Debugging

Pros: Simplest Cons: Hard to develop and debug Decision: Rejected - Debugging is essential for development

13. Open Questions

  1. Should debug output be synchronized across backends?
  2. How to handle debug output in multi-threaded contexts?
  3. Should we support remote debugging via network?
  4. How to make debug output more useful for automated testing?