* sim/ucsim/cmd.src/newcmd.cc, sim/ucsim/cmd.src/newcmdcl.h,
[fw/sdcc] / sim / ucsim / cmd.src / cmdutil.cc
index aa831bf8c083feb07587cc36b7a0f8db3c0d38f5..977068fc1b7b8eeb60f8dc3e424b89853aee2215 100644 (file)
@@ -31,10 +31,12 @@ Software Foundation, 59 Temple Place - Suite 330, Boston, MA
 #include <stdlib.h>
 #include <ctype.h>
 #include <sys/types.h>
-#ifdef HAVE_SYS_SOCKET_H
-# include <sys/socket.h>
-# include <netinet/in.h>
-# include <arpa/inet.h>
+#ifdef SOCKET_AVAIL
+# include HEADER_SOCKET
+# if defined HAVE_SYS_SOCKET_H
+#  include <netinet/in.h>
+#  include <arpa/inet.h>
+# endif
 #endif
 #include "i_string.h"
 
@@ -116,8 +118,8 @@ get_name_entry(struct name_entry tabl[], char *name, class cl_uc *uc)
     return(0);
   for (p= name; *p; *p= toupper(*p), p++);
   while (tabl[i].name &&
-        (!(tabl[i].cpu_type & uc->type) ||
-        (strcmp(tabl[i].name, name) != 0)))
+         (!(tabl[i].cpu_type & uc->type) ||
+         (strcmp(tabl[i].name, name) != 0)))
     {
       //printf("tabl[%d].name=%s <-> %s\n",i,tabl[i].name,name);
       i++;
@@ -135,9 +137,9 @@ get_name_entry(struct name_entry tabl[], char *name, class cl_uc *uc)
 
 /*bool
 interpret_bitname(char *name, class cl_uc *uc,
-                 uchar **cell, uchar *celladdr,
-                 uchar *bitaddr, uchar *bitmask,
-                 char **symname)
+                  uchar **cell, uchar *celladdr,
+                  uchar *bitaddr, uchar *bitmask,
+                  char **symname)
 {
   char *dot, *p;
   char *sym, bitnumstr[2];
@@ -148,48 +150,48 @@ interpret_bitname(char *name, class cl_uc *uc,
     {
       *dot++= '\0';
       if ((ne= get_name_entry(uc->sfr_tbl(), name, uc)) == NULL)
-       {
-         *celladdr= strtol(name, &p, 0);
-         if (p && *p)
-           {
-             dot--;
-             *dot= '.';
-             return(DD_FALSE);
-           }
-       }
+        {
+          *celladdr= strtol(name, &p, 0);
+          if (p && *p)
+            {
+              dot--;
+              *dot= '.';
+              return(DD_FALSE);
+            }
+        }
       else
-       *celladdr= ne->addr;
+        *celladdr= ne->addr;
       if ((*celladdr < 0x20) ||
-         ((*celladdr > 0x2f) && (*celladdr < 0x80)) ||
-         ((*celladdr > 0x7f) && (*celladdr & 0x07)))
-       return(DD_FALSE);
+          ((*celladdr > 0x2f) && (*celladdr < 0x80)) ||
+          ((*celladdr > 0x7f) && (*celladdr & 0x07)))
+        return(DD_FALSE);
       bitnum= strtol(dot, &p, 0);
       if ((p && *p) ||
-         (bitnum < 0) ||
-         (bitnum > 7))
-       return(DD_FALSE);
+          (bitnum < 0) ||
+          (bitnum > 7))
+        return(DD_FALSE);
       if (*celladdr > 0x7f)
-       *bitaddr= *celladdr + bitnum;
+        *bitaddr= *celladdr + bitnum;
       else
-       *bitaddr= (*celladdr - 0x20)*8 + bitnum;
+        *bitaddr= (*celladdr - 0x20)*8 + bitnum;
       dot--;
       *dot= '.';
     }
   else
     {
       if ((ne= get_name_entry(uc->bit_tbl(), name, uc)) == NULL)
-       {
-         *bitaddr= strtol(name, &p, 0);
-         if ((p && *p) ||
-             (*bitaddr > 0xff))
-           return(DD_FALSE);
-       }
+        {
+          *bitaddr= strtol(name, &p, 0);
+          if ((p && *p) ||
+              (*bitaddr > 0xff))
+            return(DD_FALSE);
+        }
       else
-       *bitaddr= ne->addr;
+        *bitaddr= ne->addr;
       if (*bitaddr > 0x7f)
-       *celladdr= *bitaddr & 0xf8;
+        *celladdr= *bitaddr & 0xf8;
       else
-       *celladdr= (*bitaddr >> 3) + 0x20;
+        *celladdr= (*bitaddr >> 3) + 0x20;
     }
   // *bitaddr, *celladdr now OK
   *cell= uc->get_bit//FIXME
@@ -200,7 +202,7 @@ interpret_bitname(char *name, class cl_uc *uc,
     return(DD_TRUE);
   i= 0;
   while (uc->bit_tbl()[i].name &&
-        (uc->bit_tbl()[i].addr != *bitaddr))
+         (uc->bit_tbl()[i].addr != *bitaddr))
     i++;
   if (uc->bit_tbl()[i].name)
     {
@@ -210,7 +212,7 @@ interpret_bitname(char *name, class cl_uc *uc,
     }
   i= 0;
   while (uc->sfr_tbl()[i].name &&
-        (uc->sfr_tbl()[i].addr != *celladdr))
+         (uc->sfr_tbl()[i].addr != *celladdr))
     i++;
   if (uc->sfr_tbl()[i].name)
     sym= strdup(uc->sfr_tbl()[i].name);
@@ -247,43 +249,43 @@ proc_escape(char *string, int *len)
       char *spec_c;
 
       if (*s == '\\' &&
-         *(s+1))
-       {
-         s++;
-         if (*s == '0')
-           {
-             if (!isdigit(*(s+1)))
-               {
-                 *p++= '\0';
-                 s++;
-               }
-             else
-               {
-                 char *octal, *chk, data;
-                 int i, j;
-                 i= strspn(s, "01234567");
-                 octal= (char *)malloc(i+1);
-                 j= 0;
-                 while (*s &&
-                        (j < i))
-                   octal[j++]= *s++;
-                 octal[j]= '\0';
-                 data= strtol(octal, &chk, 8);
-                 if (!chk || !(*chk))
-                   *p++= data;
-               }
-           }
-         else
-           if ((spec_c= strchr(spec_chars, *s)) != NULL)
-             {
-               *p++= spec[spec_c-spec_chars];
-               s++;
-             }
-           else
-             *p++= *s++;
-       }
+          *(s+1))
+        {
+          s++;
+          if (*s == '0')
+            {
+              if (!isdigit(*(s+1)))
+                {
+                  *p++= '\0';
+                  s++;
+                }
+              else
+                {
+                  char *octal, *chk, data;
+                  int i, j;
+                  i= strspn(s, "01234567");
+                  octal= (char *)malloc(i+1);
+                  j= 0;
+                  while (*s &&
+                         (j < i))
+                    octal[j++]= *s++;
+                  octal[j]= '\0';
+                  data= strtol(octal, &chk, 8);
+                  if (!chk || !(*chk))
+                    *p++= data;
+                }
+            }
+          else
+            if ((spec_c= strchr(spec_chars, *s)) != NULL)
+              {
+                *p++= spec[spec_c-spec_chars];
+                s++;
+              }
+            else
+              *p++= *s++;
+        }
       else
-       *p++= *s++;
+        *p++= *s++;
     }
   *p= '\0';
   *len= p-str;