Re: [code] [gdb] GDB solutions + questions

From: Ron Hensley (
Date: 03/01/97

> Also, is there a (better) way to map pointer names to functions (for those that
> use the event code on the Circle ftp site will hopefully know what I'm talking
> about)?  Since that code stores function pointers, I would like a simple stat
> command to show what function will get called at what time, yet hex addresses
> aren't exactly human readable. :)  My current solution is to take nm output
> from the compiled executable, and then load it up as a text file, and the stat
> command go down the list, finds a "mathcing" pointer, then display the name.
> Is there an "easier" way (since it requires some gymnastics at build time...)

What I settled for is simply showing the ARGUMENTS passed to the event in:
  show events
called by do_show in act.wizard.c

I added a new case to do_show

  case 20:
    i = 0;
    mytime = time(NULL);
    mytime -= GMT;
    mytime %= 86400;
    for(temp=pending_events;temp;temp=prox) {
      sprintf(buf,"Event %d - %6d ticks to go - Event Args: %s\r\n", ++i,
                   temp->ticks_to_go, (char *)temp->info);

True, this does not show what function is going to be called, however as 
you generally call like:
  go_gen_comm with an argument of 'shutting down in 5 minuits'

 Event 0 - 40 ticks to go - Event Args: Shutting down in 5 minuits
 Event 1 - 340 ticks to go - Event Args: Shutting down in 1 minuit

Is descriptive enough for me to know whats on my event queue

    *   Ron Hensley                              *
    *   Network Administrator        *
    *                                   PGP Key at WWW Page           *
    *   DelMarVa OnLine                 749-7898 Ext. 403             *

| Ensure that you have read the CircleMUD Mailing List FAQ: |
|   |
|    Or send 'info circle' to     |

This archive was generated by hypermail 2b30 : 12/18/00 PST