made the debug output more comprehensible

Debug log messages in ide.js are currently at maximum granularity and emitted at a very high volume.

Under rare conditions this output can be very useful, else it clutters the view and makes comprehension of and reasoning about the runtime behaviour too challenging.

Changes:

- Erros and warnings are always logged, as well as important IDE state-related messages.
- Debug log messages are now split into 5 categories, 4 of them (the highly specific and also high-frequency ones) are optional and by default disabled.
- The 4 optional categories are REG_IO (log messages related to register I/O), IRQ, RW (read/write data) and RW_DMA (read/write data with DMA).
- ATA/ATAPI commands are always logged unless they fall into one of the 4 optional categories.
- Commands are logged with their name and including the full register state before and after command execution (input and output arguments).

Normal debug log output (with all 4 optional categories disabled, the default) is now mostly reduced to the actual ATA/ATAPI command flow with input/output command arguments, enough so that it's much easier to understand what happens.

The 4 optional debug categories can only be enabled programmatically in ide.js, they are meant to be used in advanced debugging sessions.
This commit is contained in:
Christian Schnell 2025-05-24 19:27:40 +02:00 committed by Fabian
parent 0cd7ea7a3d
commit eb374437e3

File diff suppressed because it is too large Load diff