Use dprint and dprintf for debug
This commit is contained in:
		
							parent
							
								
									d9c06db600
								
							
						
					
					
						commit
						ff2d276b19
					
				
					 5 changed files with 72 additions and 62 deletions
				
			
		| 
						 | 
				
			
			@ -19,7 +19,6 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
 | 
			
		|||
#include "keyboard.h"
 | 
			
		||||
#include "mousekey.h"
 | 
			
		||||
#include "command.h"
 | 
			
		||||
#include "debug.h"
 | 
			
		||||
#include "led.h"
 | 
			
		||||
#include "action_layer.h"
 | 
			
		||||
#include "action_tapping.h"
 | 
			
		||||
| 
						 | 
				
			
			@ -27,12 +26,18 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
 | 
			
		|||
#include "action_macro.h"
 | 
			
		||||
#include "action.h"
 | 
			
		||||
 | 
			
		||||
#ifdef DEBUG_ACTION
 | 
			
		||||
#include "debug.h"
 | 
			
		||||
#else
 | 
			
		||||
#include "nodebug.h"
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
void action_exec(keyevent_t event)
 | 
			
		||||
{
 | 
			
		||||
    if (!IS_NOEVENT(event)) {
 | 
			
		||||
        debug("\n---- action_exec: start -----\n");
 | 
			
		||||
        debug("EVENT: "); debug_event(event); debug("\n");
 | 
			
		||||
        dprint("\n---- action_exec: start -----\n");
 | 
			
		||||
        dprint("EVENT: "); debug_event(event); dprintln();
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    keyrecord_t record = { .event = event };
 | 
			
		||||
| 
						 | 
				
			
			@ -42,7 +47,7 @@ void action_exec(keyevent_t event)
 | 
			
		|||
#else
 | 
			
		||||
    process_action(&record);
 | 
			
		||||
    if (!IS_NOEVENT(record.event)) {
 | 
			
		||||
        debug("processed: "); debug_record(record); debug("\n");
 | 
			
		||||
        dprint("processed: "); debug_record(record); dprintln();
 | 
			
		||||
    }
 | 
			
		||||
#endif
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			@ -57,12 +62,12 @@ void process_action(keyrecord_t *record)
 | 
			
		|||
    if (IS_NOEVENT(event)) { return; }
 | 
			
		||||
 | 
			
		||||
    action_t action = layer_switch_get_action(event.key);
 | 
			
		||||
    debug("ACTION: "); debug_action(action);
 | 
			
		||||
    dprint("ACTION: "); debug_action(action);
 | 
			
		||||
#ifndef NO_ACTION_LAYER
 | 
			
		||||
    debug(" layer_state: "); layer_debug();
 | 
			
		||||
    debug(" default_layer_state: "); default_layer_debug();
 | 
			
		||||
    dprint(" layer_state: "); layer_debug();
 | 
			
		||||
    dprint(" default_layer_state: "); default_layer_debug();
 | 
			
		||||
#endif
 | 
			
		||||
    debug("\n");
 | 
			
		||||
    dprintln();
 | 
			
		||||
 | 
			
		||||
    switch (action.kind.id) {
 | 
			
		||||
        /* Key and Mods */
 | 
			
		||||
| 
						 | 
				
			
			@ -98,37 +103,37 @@ void process_action(keyrecord_t *record)
 | 
			
		|||
                        // Oneshot modifier
 | 
			
		||||
                        if (event.pressed) {
 | 
			
		||||
                            if (tap_count == 0) {
 | 
			
		||||
                                debug("MODS_TAP: Oneshot: add_mods\n");
 | 
			
		||||
                                dprint("MODS_TAP: Oneshot: add_mods\n");
 | 
			
		||||
                                add_mods(mods);
 | 
			
		||||
                            }
 | 
			
		||||
                            else if (tap_count == 1) {
 | 
			
		||||
                                debug("MODS_TAP: Oneshot: start\n");
 | 
			
		||||
                                dprint("MODS_TAP: Oneshot: start\n");
 | 
			
		||||
                                oneshot_start(mods);
 | 
			
		||||
                            }
 | 
			
		||||
                            else if (tap_count == TAPPING_TOGGLE) {
 | 
			
		||||
                                debug("MODS_TAP: Oneshot: toggle\n");
 | 
			
		||||
                                dprint("MODS_TAP: Oneshot: toggle\n");
 | 
			
		||||
                                oneshot_toggle();
 | 
			
		||||
                            }
 | 
			
		||||
                            else {
 | 
			
		||||
                                debug("MODS_TAP: Oneshot: cancel&add_mods\n");
 | 
			
		||||
                                dprint("MODS_TAP: Oneshot: cancel&add_mods\n");
 | 
			
		||||
                                // double tap cancels oneshot and works as normal modifier.
 | 
			
		||||
                                oneshot_cancel();
 | 
			
		||||
                                add_mods(mods);
 | 
			
		||||
                            }
 | 
			
		||||
                        } else {
 | 
			
		||||
                            if (tap_count == 0) {
 | 
			
		||||
                                debug("MODS_TAP: Oneshot: cancel/del_mods\n");
 | 
			
		||||
                                dprint("MODS_TAP: Oneshot: cancel/del_mods\n");
 | 
			
		||||
                                // cancel oneshot on hold
 | 
			
		||||
                                oneshot_cancel();
 | 
			
		||||
                                del_mods(mods);
 | 
			
		||||
                            }
 | 
			
		||||
                            else if (tap_count == 1) {
 | 
			
		||||
                                debug("MODS_TAP: Oneshot: del_mods\n");
 | 
			
		||||
                                dprint("MODS_TAP: Oneshot: del_mods\n");
 | 
			
		||||
                                // retain Oneshot
 | 
			
		||||
                                del_mods(mods);
 | 
			
		||||
                            }
 | 
			
		||||
                            else {
 | 
			
		||||
                                debug("MODS_TAP: Oneshot: del_mods\n");
 | 
			
		||||
                                dprint("MODS_TAP: Oneshot: del_mods\n");
 | 
			
		||||
                                // cancel Mods
 | 
			
		||||
                                del_mods(mods);
 | 
			
		||||
                            }
 | 
			
		||||
| 
						 | 
				
			
			@ -139,24 +144,24 @@ void process_action(keyrecord_t *record)
 | 
			
		|||
                        if (event.pressed) {
 | 
			
		||||
                            if (tap_count > 0) {
 | 
			
		||||
                                if (record->tap.interrupted) {
 | 
			
		||||
                                    debug("MODS_TAP: Tap: Cancel: add_mods\n");
 | 
			
		||||
                                    dprint("MODS_TAP: Tap: Cancel: add_mods\n");
 | 
			
		||||
                                    // ad hoc: set 0 to cancel tap
 | 
			
		||||
                                    record->tap.count = 0;
 | 
			
		||||
                                    add_mods(mods);
 | 
			
		||||
                                } else {
 | 
			
		||||
                                    debug("MODS_TAP: Tap: register_code\n");
 | 
			
		||||
                                    dprint("MODS_TAP: Tap: register_code\n");
 | 
			
		||||
                                    register_code(action.key.code);
 | 
			
		||||
                                }
 | 
			
		||||
                            } else {
 | 
			
		||||
                                debug("MODS_TAP: No tap: add_mods\n");
 | 
			
		||||
                                dprint("MODS_TAP: No tap: add_mods\n");
 | 
			
		||||
                                add_mods(mods);
 | 
			
		||||
                            }
 | 
			
		||||
                        } else {
 | 
			
		||||
                            if (tap_count > 0) {
 | 
			
		||||
                                debug("MODS_TAP: Tap: unregister_code\n");
 | 
			
		||||
                                dprint("MODS_TAP: Tap: unregister_code\n");
 | 
			
		||||
                                unregister_code(action.key.code);
 | 
			
		||||
                            } else {
 | 
			
		||||
                                debug("MODS_TAP: No tap: add_mods\n");
 | 
			
		||||
                                dprint("MODS_TAP: No tap: add_mods\n");
 | 
			
		||||
                                del_mods(mods);
 | 
			
		||||
                            }
 | 
			
		||||
                        }
 | 
			
		||||
| 
						 | 
				
			
			@ -261,18 +266,18 @@ void process_action(keyrecord_t *record)
 | 
			
		|||
                    /* tap key */
 | 
			
		||||
                    if (event.pressed) {
 | 
			
		||||
                        if (tap_count > 0) {
 | 
			
		||||
                            debug("KEYMAP_TAP_KEY: Tap: register_code\n");
 | 
			
		||||
                            dprint("KEYMAP_TAP_KEY: Tap: register_code\n");
 | 
			
		||||
                            register_code(action.layer_tap.code);
 | 
			
		||||
                        } else {
 | 
			
		||||
                            debug("KEYMAP_TAP_KEY: No tap: On on press\n");
 | 
			
		||||
                            dprint("KEYMAP_TAP_KEY: No tap: On on press\n");
 | 
			
		||||
                            layer_on(action.layer_tap.val);
 | 
			
		||||
                        }
 | 
			
		||||
                    } else {
 | 
			
		||||
                        if (tap_count > 0) {
 | 
			
		||||
                            debug("KEYMAP_TAP_KEY: Tap: unregister_code\n");
 | 
			
		||||
                            dprint("KEYMAP_TAP_KEY: Tap: unregister_code\n");
 | 
			
		||||
                            unregister_code(action.layer_tap.code);
 | 
			
		||||
                        } else {
 | 
			
		||||
                            debug("KEYMAP_TAP_KEY: No tap: Off on release\n");
 | 
			
		||||
                            dprint("KEYMAP_TAP_KEY: No tap: Off on release\n");
 | 
			
		||||
                            layer_off(action.layer_tap.val);
 | 
			
		||||
                        }
 | 
			
		||||
                    }
 | 
			
		||||
| 
						 | 
				
			
			@ -448,40 +453,33 @@ bool is_tap_key(key_t key)
 | 
			
		|||
 */
 | 
			
		||||
void debug_event(keyevent_t event)
 | 
			
		||||
{
 | 
			
		||||
    debug_hex16((event.key.row<<8) | event.key.col);
 | 
			
		||||
    if (event.pressed) debug("d("); else debug("u(");
 | 
			
		||||
    debug_dec(event.time); debug(")");
 | 
			
		||||
    dprintf("%04X%c(%u)", (event.key.row<<8 | event.key.col), (event.pressed ? 'd' : 'u'), event.time);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
void debug_record(keyrecord_t record)
 | 
			
		||||
{
 | 
			
		||||
    debug_event(record.event);
 | 
			
		||||
#ifndef NO_ACTION_TAPPING
 | 
			
		||||
    debug(":"); debug_dec(record.tap.count);
 | 
			
		||||
    if (record.tap.interrupted) debug("-");
 | 
			
		||||
    dprintf(":%u%c", record.tap.count, (record.tap.interrupted ? '-' : ' '));
 | 
			
		||||
#endif
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
void debug_action(action_t action)
 | 
			
		||||
{
 | 
			
		||||
    switch (action.kind.id) {
 | 
			
		||||
        case ACT_LMODS:             debug("ACT_LMODS");             break;
 | 
			
		||||
        case ACT_RMODS:             debug("ACT_RMODS");             break;
 | 
			
		||||
        case ACT_LMODS_TAP:         debug("ACT_LMODS_TAP");         break;
 | 
			
		||||
        case ACT_RMODS_TAP:         debug("ACT_RMODS_TAP");         break;
 | 
			
		||||
        case ACT_USAGE:             debug("ACT_USAGE");             break;
 | 
			
		||||
        case ACT_MOUSEKEY:          debug("ACT_MOUSEKEY");          break;
 | 
			
		||||
        case ACT_LAYER:             debug("ACT_LAYER");             break;
 | 
			
		||||
        case ACT_LAYER_TAP:         debug("ACT_LAYER_TAP");         break;
 | 
			
		||||
        case ACT_LAYER_TAP1:        debug("ACT_LAYER_TAP1");        break;
 | 
			
		||||
        case ACT_MACRO:             debug("ACT_MACRO");             break;
 | 
			
		||||
        case ACT_COMMAND:           debug("ACT_COMMAND");           break;
 | 
			
		||||
        case ACT_FUNCTION:          debug("ACT_FUNCTION");          break;
 | 
			
		||||
        default:                    debug("UNKNOWN");               break;
 | 
			
		||||
        case ACT_LMODS:             dprint("ACT_LMODS");             break;
 | 
			
		||||
        case ACT_RMODS:             dprint("ACT_RMODS");             break;
 | 
			
		||||
        case ACT_LMODS_TAP:         dprint("ACT_LMODS_TAP");         break;
 | 
			
		||||
        case ACT_RMODS_TAP:         dprint("ACT_RMODS_TAP");         break;
 | 
			
		||||
        case ACT_USAGE:             dprint("ACT_USAGE");             break;
 | 
			
		||||
        case ACT_MOUSEKEY:          dprint("ACT_MOUSEKEY");          break;
 | 
			
		||||
        case ACT_LAYER:             dprint("ACT_LAYER");             break;
 | 
			
		||||
        case ACT_LAYER_TAP:         dprint("ACT_LAYER_TAP");         break;
 | 
			
		||||
        case ACT_LAYER_TAP1:        dprint("ACT_LAYER_TAP1");        break;
 | 
			
		||||
        case ACT_MACRO:             dprint("ACT_MACRO");             break;
 | 
			
		||||
        case ACT_COMMAND:           dprint("ACT_COMMAND");           break;
 | 
			
		||||
        case ACT_FUNCTION:          dprint("ACT_FUNCTION");          break;
 | 
			
		||||
        default:                    dprint("UNKNOWN");               break;
 | 
			
		||||
    }
 | 
			
		||||
    debug("[");
 | 
			
		||||
    debug_hex4(action.kind.param>>8);
 | 
			
		||||
    debug(":");
 | 
			
		||||
    debug_hex8(action.kind.param & 0xff);
 | 
			
		||||
    debug("]");
 | 
			
		||||
    dprintf("[%X:%02X]", action.kind.param>>8, action.kind.param&0xff);
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,10 +1,15 @@
 | 
			
		|||
#include <stdint.h>
 | 
			
		||||
#include "keyboard.h"
 | 
			
		||||
#include "action.h"
 | 
			
		||||
#include "debug.h"
 | 
			
		||||
#include "util.h"
 | 
			
		||||
#include "action_layer.h"
 | 
			
		||||
 | 
			
		||||
#ifdef DEBUG_ACTION
 | 
			
		||||
#include "debug.h"
 | 
			
		||||
#else
 | 
			
		||||
#include "nodebug.h"
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
/* 
 | 
			
		||||
 * Default Layer State
 | 
			
		||||
| 
						 | 
				
			
			@ -22,8 +27,7 @@ static void default_layer_state_set(uint32_t state)
 | 
			
		|||
 | 
			
		||||
void default_layer_debug(void)
 | 
			
		||||
{
 | 
			
		||||
    debug_hex32(default_layer_state);
 | 
			
		||||
    debug("("); debug_dec(biton32(default_layer_state)); debug(")");
 | 
			
		||||
    dprintf("%08lX(%u)", default_layer_state, biton32(default_layer_state));
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
void default_layer_set(uint8_t layer)
 | 
			
		||||
| 
						 | 
				
			
			@ -55,10 +59,10 @@ uint32_t layer_state = 0;
 | 
			
		|||
 | 
			
		||||
static void layer_state_set(uint32_t state)
 | 
			
		||||
{
 | 
			
		||||
    debug("layer_state: ");
 | 
			
		||||
    layer_debug(); debug(" to ");
 | 
			
		||||
    dprint("layer_state: ");
 | 
			
		||||
    layer_debug(); dprint(" to ");
 | 
			
		||||
    layer_state = state;
 | 
			
		||||
    layer_debug(); debug("\n");
 | 
			
		||||
    layer_debug(); dprintln();
 | 
			
		||||
    clear_keyboard_but_mods(); // To avoid stuck keys
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -102,8 +106,7 @@ void layer_xor(uint32_t state)
 | 
			
		|||
 | 
			
		||||
void layer_debug(void)
 | 
			
		||||
{
 | 
			
		||||
    debug_hex32(layer_state);
 | 
			
		||||
    debug("("); debug_dec(biton32(layer_state)); debug(")");
 | 
			
		||||
    dprintf("%08lX(%u)", layer_state, biton32(layer_state));
 | 
			
		||||
}
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -15,10 +15,15 @@ You should have received a copy of the GNU General Public License
 | 
			
		|||
along with this program.  If not, see <http://www.gnu.org/licenses/>.
 | 
			
		||||
*/
 | 
			
		||||
#include <util/delay.h>
 | 
			
		||||
#include "debug.h"
 | 
			
		||||
#include "action.h"
 | 
			
		||||
#include "action_macro.h"
 | 
			
		||||
 | 
			
		||||
#ifdef DEBUG_ACTION
 | 
			
		||||
#include "debug.h"
 | 
			
		||||
#else
 | 
			
		||||
#include "nodebug.h"
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
#ifndef NO_ACTION_MACRO
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -3,8 +3,12 @@
 | 
			
		|||
#include "action.h"
 | 
			
		||||
#include "action_tapping.h"
 | 
			
		||||
#include "timer.h"
 | 
			
		||||
#include "debug.h"
 | 
			
		||||
 | 
			
		||||
#ifdef DEBUG_ACTION
 | 
			
		||||
#include "debug.h"
 | 
			
		||||
#else
 | 
			
		||||
#include "nodebug.h"
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
#ifndef NO_ACTION_TAPPING
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -63,11 +63,11 @@ void host_keyboard_send(report_keyboard_t *report)
 | 
			
		|||
    (*driver->send_keyboard)(report);
 | 
			
		||||
 | 
			
		||||
    if (debug_keyboard) {
 | 
			
		||||
        print("keys: ");
 | 
			
		||||
        dprint("keys: ");
 | 
			
		||||
        for (int i = 0; i < REPORT_KEYS; i++) {
 | 
			
		||||
            phex(keyboard_report->keys[i]); print(" ");
 | 
			
		||||
            dprintf("%02X ", keyboard_report->keys[i]);
 | 
			
		||||
        }
 | 
			
		||||
        print(" mods: "); phex(keyboard_report->mods); print("\n");
 | 
			
		||||
        dprintf(" mods: %02X\n", keyboard_report->mods);
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -235,7 +235,7 @@ static inline void add_key_bit(uint8_t code)
 | 
			
		|||
    if ((code>>3) < REPORT_KEYS) {
 | 
			
		||||
        keyboard_report->keys[code>>3] |= 1<<(code&7);
 | 
			
		||||
    } else {
 | 
			
		||||
        debug("add_key_bit: can't add: "); phex(code); debug("\n");
 | 
			
		||||
        dprintf("add_key_bit: can't add: %02X\n", code);
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -244,6 +244,6 @@ static inline void del_key_bit(uint8_t code)
 | 
			
		|||
    if ((code>>3) < REPORT_KEYS) {
 | 
			
		||||
        keyboard_report->keys[code>>3] &= ~(1<<(code&7));
 | 
			
		||||
    } else {
 | 
			
		||||
        debug("del_key_bit: can't del: "); phex(code); debug("\n");
 | 
			
		||||
        dprintf("del_key_bit: can't del: %02X\n", code);
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue