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

From: Ron Hensley (ron@cross.dmv.com)
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) {
      prox=temp->next;
      sprintf(buf,"Event %d - %6d ticks to go - Event Args: %s\r\n", ++i,
                   temp->ticks_to_go, (char *)temp->info);
      send_to_char(buf,ch);
    }
    break;                     


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'

Seeing:
 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                     ron@dmv.com                   *
    *   Network Administrator           http://www.dmv.com/~ron       *
    *                                   PGP Key at WWW Page           *
    *   DelMarVa OnLine                 749-7898 Ext. 403             *
    *******************************************************************

+-----------------------------------------------------------+
| Ensure that you have read the CircleMUD Mailing List FAQ: |
|   http://cspo.queensu.ca/~fletcher/Circle/list_faq.html   |
|    Or send 'info circle' to majordomo@cspo.queensu.ca     |
+-----------------------------------------------------------+



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