1*8ec969ceSTreehugger Robot /* 2*8ec969ceSTreehugger Robot * Copyright 1992 by Jutta Degener and Carsten Bormann, Technische 3*8ec969ceSTreehugger Robot * Universitaet Berlin. See the accompanying file "COPYRIGHT" for 4*8ec969ceSTreehugger Robot * details. THERE IS ABSOLUTELY NO WARRANTY FOR THIS SOFTWARE. 5*8ec969ceSTreehugger Robot */ 6*8ec969ceSTreehugger Robot 7*8ec969ceSTreehugger Robot /* $Header: /tmp_amd/presto/export/kbs/jutta/src/gsm/RCS/debug.c,v 1.2 1993/01/29 18:22:20 jutta Exp $ */ 8*8ec969ceSTreehugger Robot 9*8ec969ceSTreehugger Robot #include "private.h" 10*8ec969ceSTreehugger Robot 11*8ec969ceSTreehugger Robot #ifndef NDEBUG 12*8ec969ceSTreehugger Robot 13*8ec969ceSTreehugger Robot /* If NDEBUG _is_ defined and no debugging should be performed, 14*8ec969ceSTreehugger Robot * calls to functions in this module are #defined to nothing 15*8ec969ceSTreehugger Robot * in private.h. 16*8ec969ceSTreehugger Robot */ 17*8ec969ceSTreehugger Robot 18*8ec969ceSTreehugger Robot #include <stdio.h> 19*8ec969ceSTreehugger Robot #include "proto.h" 20*8ec969ceSTreehugger Robot 21*8ec969ceSTreehugger Robot void gsm_debug_words P4( (name, from, to, ptr), 22*8ec969ceSTreehugger Robot char * name, 23*8ec969ceSTreehugger Robot int from, 24*8ec969ceSTreehugger Robot int to, 25*8ec969ceSTreehugger Robot word * ptr) 26*8ec969ceSTreehugger Robot { 27*8ec969ceSTreehugger Robot int nprinted = 0; 28*8ec969ceSTreehugger Robot 29*8ec969ceSTreehugger Robot fprintf( stderr, "%s [%d .. %d]: ", name, from, to ); 30*8ec969ceSTreehugger Robot while (from <= to) { 31*8ec969ceSTreehugger Robot fprintf(stderr, "%d ", ptr[ from ] ); 32*8ec969ceSTreehugger Robot from++; 33*8ec969ceSTreehugger Robot if (nprinted++ >= 7) { 34*8ec969ceSTreehugger Robot nprinted = 0; 35*8ec969ceSTreehugger Robot if (from < to) putc('\n', stderr); 36*8ec969ceSTreehugger Robot } 37*8ec969ceSTreehugger Robot } 38*8ec969ceSTreehugger Robot putc('\n', stderr); 39*8ec969ceSTreehugger Robot } 40*8ec969ceSTreehugger Robot 41*8ec969ceSTreehugger Robot void gsm_debug_longwords P4( (name, from, to, ptr), 42*8ec969ceSTreehugger Robot char * name, 43*8ec969ceSTreehugger Robot int from, 44*8ec969ceSTreehugger Robot int to, 45*8ec969ceSTreehugger Robot longword * ptr) 46*8ec969ceSTreehugger Robot { 47*8ec969ceSTreehugger Robot int nprinted = 0; 48*8ec969ceSTreehugger Robot 49*8ec969ceSTreehugger Robot fprintf( stderr, "%s [%d .. %d]: ", name, from, to ); 50*8ec969ceSTreehugger Robot while (from <= to) { 51*8ec969ceSTreehugger Robot 52*8ec969ceSTreehugger Robot fprintf(stderr, "%ld ", (long)ptr[ from ] ); 53*8ec969ceSTreehugger Robot from++; 54*8ec969ceSTreehugger Robot if (nprinted++ >= 7) { 55*8ec969ceSTreehugger Robot nprinted = 0; 56*8ec969ceSTreehugger Robot if (from < to) putc('\n', stderr); 57*8ec969ceSTreehugger Robot } 58*8ec969ceSTreehugger Robot } 59*8ec969ceSTreehugger Robot putc('\n', stderr); 60*8ec969ceSTreehugger Robot } 61*8ec969ceSTreehugger Robot 62*8ec969ceSTreehugger Robot void gsm_debug_longword P2( (name, value), 63*8ec969ceSTreehugger Robot char * name, 64*8ec969ceSTreehugger Robot longword value ) 65*8ec969ceSTreehugger Robot { 66*8ec969ceSTreehugger Robot fprintf(stderr, "%s: %ld\n", name, (long)value ); 67*8ec969ceSTreehugger Robot } 68*8ec969ceSTreehugger Robot 69*8ec969ceSTreehugger Robot void gsm_debug_word P2( (name, value), 70*8ec969ceSTreehugger Robot char * name, 71*8ec969ceSTreehugger Robot word value ) 72*8ec969ceSTreehugger Robot { 73*8ec969ceSTreehugger Robot fprintf(stderr, "%s: %ld\n", name, (long)value); 74*8ec969ceSTreehugger Robot } 75*8ec969ceSTreehugger Robot 76*8ec969ceSTreehugger Robot #endif 77