/[smarc]/smarc/src/despasm/main.cc
ViewVC logotype

Diff of /smarc/src/despasm/main.cc

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.1 by batonik, Thu Jan 2 20:53:20 2003 UTC revision 1.2 by batonik, Thu Jan 2 21:59:07 2003 UTC
# Line 7  Line 7 
7  #include "main.h"  #include "main.h"
8  #include "despasm.h"  #include "despasm.h"
9  #include <iostream>  #include <iostream>
10    #include <getopt.h>
11    #include <stdio.h>
12    
13  int main (int argc, char **argv)  int main (int argc, char **argv)
14  {  {
15          loader wgrywacz;          int     opcja, typ_rej = 0, bez_adresow = 0;
16          despasm *deassembled;          loader  wgrywacz;
17            despasm *deassembled;
18            char    bufor[DEASM_BUFOR];
19    
20          if (argc < 2)          if (argc < 2)
21          {          {
# Line 19  int main (int argc, char **argv) Line 23  int main (int argc, char **argv)
23                  return(1);                  return(1);
24          }          }
25    
26            opterr = 0;
27    
28            while ((opcja = getopt(argc,argv,"nb")) != -1)
29                    switch (opcja)
30                    {
31                            case 'n':       typ_rej = 1;
32                                            break;
33                            case 'b':       bez_adresow = 1;
34                                            break;
35                            case '?':       cout << USAGE << endl;
36                                            return(1);
37                    }
38    
39          try {          try {
40                  wgrywacz.load_file(argv[1]);                  wgrywacz.load_file(argv[optind]);
41          } catch ( ex<loader> exc) {          } catch ( ex<loader> exc) {
42                  cerr << exc.error_msg() << endl;                  cerr << exc.error_msg() << endl;
43                  return(1);                  return(1);
44          }          }
45    
46          deassembled = new despasm(wgrywacz.get_instr(), 0);          deassembled = new despasm(wgrywacz.get_instr(), typ_rej);
   
47    
48          for (int i = 0; i < deassembled->size(); i++)          for (int i = 0; i < deassembled->size(); i++)
49          {          {
50                  cout << "0x00" << hex << i * 4 << ":   ";                  if (!bez_adresow)
51                    {
52                            sprintf(bufor, ADRES_FORMAT, (unsigned long) i * 4);
53                            cout << bufor << ":\t";
54                    }
55                  cout << deassembled->getline(i) << endl;                  cout << deassembled->getline(i) << endl;
56          }          }
57    

Legend:
Removed from v.1.1  
changed lines
  Added in v.1.2

savannah-hackers-public@gnu.org
ViewVC Help
Powered by ViewVC 1.1.26