Index: soft/giet_vm/xml/xml_driver.c
===================================================================
--- soft/giet_vm/xml/xml_driver.c	(revision 189)
+++ soft/giet_vm/xml/xml_driver.c	(revision 204)
@@ -218,9 +218,8 @@
     fprintf( fpout, "<?xml version = \"1.0\"?>\n\n");
 
-    fprintf( fpout, "<mapping_info signature = \"0x%x\"\n", header->signature);
-    fprintf( fpout, "              name      = \"%s\"\n", header->name);
-    fprintf( fpout, "              clusters  = \"%d\"\n", header->clusters);
-    fprintf( fpout, "              vspaces   = \"%d\"\n", header->vspaces);
-    fprintf( fpout, "              globals   = \"%d\" >\n\n", header->globals);
+    fprintf( fpout, "<mapping_info signature = \"0x%x\" ", header->signature);
+    fprintf( fpout, " name = \"%s\" ", header->name);
+    fprintf( fpout, " clusters = \"%d\" ", header->clusters);
+    fprintf( fpout, " vspaces = \"%d\" >\n\n", header->vspaces);
 
     ///////////////////// clusters ///////////////////////////////////////////////
@@ -231,11 +230,11 @@
         fprintf( fpout, "        <cluster index  = \"%d\" >\n",   cluster_id);
         for ( pseg_id = cluster[cluster_id].pseg_offset ; 
-                pseg_id < cluster[cluster_id].pseg_offset + cluster[cluster_id].psegs ; 
-                    pseg_id++ )
-        {
-            fprintf( fpout, "                 <pseg    name   = \"%s\"\n",        pseg[pseg_id].name);
-            fprintf( fpout, "                          type   = \"%s\"\n",  pseg_type[pseg[pseg_id].type]);
-            fprintf( fpout, "                          base   = \"0x%x\"\n",      pseg[pseg_id].base);
-            fprintf( fpout, "                          length = \"0x%x\" />\n",   pseg[pseg_id].length);
+              pseg_id < cluster[cluster_id].pseg_offset + cluster[cluster_id].psegs ; 
+              pseg_id++ )
+        {
+            fprintf( fpout, "            <pseg name = \"%s\" ", pseg[pseg_id].name);
+            fprintf( fpout, " type = \"%s\" ", pseg_type[pseg[pseg_id].type]);
+            fprintf( fpout, " base = \"0x%x\" ", pseg[pseg_id].base);
+            fprintf( fpout, " length = \"0x%x\" />\n",   pseg[pseg_id].length);
         }
 
@@ -243,16 +242,18 @@
 
         for ( proc_id = cluster[cluster_id].proc_offset ; 
-                proc_id < cluster[cluster_id].proc_offset + cluster[cluster_id].procs ;
-                    proc_id++ )
-        {
-            fprintf( fpout, "                   <proc index   = \"%d\" >\n",       proc_id);
-            for ( irq_id = proc[proc_id].irq_offset ; irq_id < proc[proc_id].irq_offset + proc[proc_id].irqs ; irq_id++ )
+              proc_id < cluster[cluster_id].proc_offset + cluster[cluster_id].procs ;
+              proc_id++ )
+        {
+            fprintf( fpout, "            <proc index = \"%d\" >\n", proc_id);
+            for ( irq_id = proc[proc_id].irq_offset ; 
+                  irq_id < proc[proc_id].irq_offset + proc[proc_id].irqs ; 
+                  irq_id++ )
             {
-                fprintf( fpout, "                         <irq    type    = \"%s\"\n",  irq_type[irq[irq_id].type]);
-                fprintf( fpout, "                                 icuid   = \"0x%x\"\n",      irq[irq_id].icuid);
-                fprintf( fpout, "                                 isr     = \"%s\"\n",  isr_type[irq[irq_id].isr]);
-                fprintf( fpout, "                                 channel = \"0x%x\" />\n",   irq[irq_id].channel);
+                fprintf( fpout, "                <irq type = \"%s\" ", irq_type[irq[irq_id].type]);
+                fprintf( fpout, " icuid = \"0x%x\" ", irq[irq_id].icuid);
+                fprintf( fpout, " isr = \"%s\" ", isr_type[irq[irq_id].isr]);
+                fprintf( fpout, " channel = \"0x%x\" />\n", irq[irq_id].channel);
             }
-            fprintf( fpout, "                   </proc>\n" );
+            fprintf( fpout, "            </proc>\n" );
         }
 
@@ -261,17 +262,19 @@
 
         for ( coproc_id = cluster[cluster_id].coproc_offset ; 
-                coproc_id < cluster[cluster_id].coproc_offset + cluster[cluster_id].coprocs ;
-                    coproc_id++ )
-        {
-            fprintf( fpout, "                   <coproc name       = \"%s\"\n",       coproc[coproc_id].name);
-            fprintf( fpout, "                           psegname   = \"%s\" >\n",       pseg[coproc[coproc_id].psegid].name);
-            for ( port_id = coproc[coproc_id].port_offset ; port_id < coproc[coproc_id].port_offset + coproc[coproc_id].ports ; port_id++ )
+              coproc_id < cluster[cluster_id].coproc_offset + cluster[cluster_id].coprocs ;
+              coproc_id++ )
+        {
+            fprintf( fpout, "            <coproc name = \"%s\" ", coproc[coproc_id].name);
+            fprintf( fpout, " psegname = \"%s\" >\n", pseg[coproc[coproc_id].psegid].name);
+            for ( port_id = coproc[coproc_id].port_offset ; 
+                  port_id < coproc[coproc_id].port_offset + coproc[coproc_id].ports ; 
+                  port_id++ )
             {
                 unsigned int vobj_id = cp_port[port_id].vobjlocid + vspace[cp_port[port_id].vspaceid].vobj_offset; 
-                fprintf( fpout, "                           <port   direction    = \"%s\"\n",  port_direction[ cp_port[port_id].direction]);
-                fprintf( fpout, "                                   vspacename   = \"%s\"\n",  vspace[cp_port[port_id].vspaceid].name);
-                fprintf( fpout, "                                   vobjname     = \"%s\" />\n",  vobj[vobj_id].name);
+                fprintf( fpout, "             <port direction = \"%s\" ",  port_direction[ cp_port[port_id].direction]);
+                fprintf( fpout, " vspacename = \"%s\" ", vspace[cp_port[port_id].vspaceid].name);
+                fprintf( fpout, " vobjname = \"%s\" />\n",  vobj[vobj_id].name);
             }
-            fprintf( fpout, "                   </coproc>\n" );
+            fprintf( fpout, "            </coproc>\n" );
         }
 
@@ -279,10 +282,10 @@
 
         for ( periph_id = cluster[cluster_id].periph_offset ; 
-                periph_id < cluster[cluster_id].periph_offset + cluster[cluster_id].periphs ;
-                    periph_id++ )
-        {
-            fprintf( fpout, "                   <periph type       = \"%s\"\n",     periph_type[periph[periph_id].type]);
-            fprintf( fpout, "                           psegname   = \"%s\"\n",     pseg[periph[periph_id].psegid].name);
-            fprintf( fpout, "                           channels   = \"%d\" />\n",  periph[periph_id].channels);
+              periph_id < cluster[cluster_id].periph_offset + cluster[cluster_id].periphs ;
+              periph_id++ )
+        {
+            fprintf( fpout, "            <periph type = \"%s\" ", periph_type[periph[periph_id].type]);
+            fprintf( fpout, " psegname = \"%s\" ", pseg[periph[periph_id].psegid].name);
+            fprintf( fpout, " channels = \"%d\" />\n",  periph[periph_id].channels);
         }
         fprintf( fpout, "        </cluster>\n" );
@@ -297,20 +300,20 @@
         unsigned int pseg_id = vseg[vseg_id].psegid; 
 
-        fprintf( fpout, "        <vseg    name      = \"%s\"\n",      vseg[vseg_id].name);
-        fprintf( fpout, "                 vbase     = \"0x%x\"\n",    vseg[vseg_id].vbase);
-        fprintf( fpout, "                 mode      = \"%s\"\n", mode_str[vseg[vseg_id].mode]);
-        fprintf( fpout, "                 clusterid = \"%d\"\n",      pseg[pseg_id].cluster);
-        fprintf( fpout, "                 psegname  = \"%s\"\n",      pseg[pseg_id].name);
-        fprintf( fpout, "                 ident     = \"%d\" >\n",    vseg[vseg_id].ident);
+        fprintf( fpout, "        <vseg name = \"%s\" ", vseg[vseg_id].name);
+        fprintf( fpout, "vbase = \"0x%x\" ", vseg[vseg_id].vbase);
+        fprintf( fpout, "mode  = \"%s\" ", mode_str[vseg[vseg_id].mode]);
+        fprintf( fpout, "clusterid = \"%d\" ", pseg[pseg_id].cluster);
+        fprintf( fpout, "psegname = \"%s\" ", pseg[pseg_id].name);
+        fprintf( fpout, "ident = \"%d\" >\n", vseg[vseg_id].ident);
         for ( vobj_id = vseg[vseg_id].vobj_offset;
               vobj_id < (vseg[vseg_id].vobj_offset + vseg[vseg_id].vobjs); 
               vobj_id++ )
         {
-            fprintf( fpout, "                 <vobj name     = \"%s\"\n",    vobj[vobj_id].name);
-            fprintf( fpout, "                       type     = \"%s\"\n",    vobj_type[vobj[vobj_id].type]);
-            fprintf( fpout, "                       length   = \"0x%x\"\n",  vobj[vobj_id].length);
-            fprintf( fpout, "                       align    = \"%d\"\n",    vobj[vobj_id].align);
-            fprintf( fpout, "                       init     = \"%d\" \n",   vobj[vobj_id].init);
-            fprintf( fpout, "                       binpath  = \"%s\" />\n", vobj[vobj_id].binpath);
+            fprintf( fpout, "            <vobj name = \"%s\" ", vobj[vobj_id].name);
+            fprintf( fpout, "type = \"%s\" ", vobj_type[vobj[vobj_id].type]);
+            fprintf( fpout, "length = \"0x%x\" ", vobj[vobj_id].length);
+            fprintf( fpout, "align = \"%d\" ", vobj[vobj_id].align);
+            fprintf( fpout, "init = \"%d\" ", vobj[vobj_id].init);
+            fprintf( fpout, "binpath = \"%s\" />\n", vobj[vobj_id].binpath);
         }
         fprintf( fpout, "        </vseg>\n");
@@ -324,18 +327,19 @@
     {
         unsigned int func_id = vspace[vspace_id].vobj_offset + vspace[vspace_id].start_offset; 
-        fprintf( fpout, "        <vspace  name      = \"%s\"\n",     vspace[vspace_id].name); 
-        fprintf( fpout, "                 startname = \"%s\" >\n\n", vobj[func_id].name); 
+        fprintf( fpout, "        <vspace name = \"%s\" ", vspace[vspace_id].name); 
+        fprintf( fpout, " startname = \"%s\" >\n", vobj[func_id].name); 
 
         for ( vseg_id = vspace[vspace_id].vseg_offset ;
-              vseg_id < (vspace[vspace_id].vseg_offset + vspace[vspace_id].vsegs) ; vseg_id++ )
+              vseg_id < (vspace[vspace_id].vseg_offset + vspace[vspace_id].vsegs) ; 
+              vseg_id++ )
         {
             unsigned int pseg_id = vseg[vseg_id].psegid; 
 
-            fprintf( fpout, "                 <vseg name      = \"%s\"\n",      vseg[vseg_id].name);
-            fprintf( fpout, "                       vbase     = \"0x%x\"\n",    vseg[vseg_id].vbase);
-            fprintf( fpout, "                       mode      = \"%s\"\n", mode_str[vseg[vseg_id].mode]);
-            fprintf( fpout, "                       clusterid = \"%d\"\n",      pseg[pseg_id].cluster);
-            fprintf( fpout, "                       psegname  = \"%s\"\n",      pseg[pseg_id].name);
-            fprintf( fpout, "                       ident     = \"%d\" >\n",    vseg[vseg_id].ident);
+            fprintf( fpout, "            <vseg name = \"%s\" ", vseg[vseg_id].name);
+            fprintf( fpout, "vbase = \"0x%x\" ", vseg[vseg_id].vbase);
+            fprintf( fpout, "mode  = \"%s\" ", mode_str[vseg[vseg_id].mode]);
+            fprintf( fpout, "clusterid = \"%d\" ", pseg[pseg_id].cluster);
+            fprintf( fpout, "psegname = \"%s\" ", pseg[pseg_id].name);
+            fprintf( fpout, "ident = \"%d\" >\n", vseg[vseg_id].ident);
 
             for ( vobj_id = vseg[vseg_id].vobj_offset ;
@@ -343,12 +347,12 @@
                   vobj_id++ )
             {
-                fprintf( fpout, "                       <vobj name     = \"%s\"\n",    vobj[vobj_id].name);
-                fprintf( fpout, "                             type     = \"%s\" \n",   vobj_type[vobj[vobj_id].type]);
-                fprintf( fpout, "                             length   = \"0x%x\" \n", vobj[vobj_id].length);
-                fprintf( fpout, "                             align    = \"%d\" \n",   vobj[vobj_id].align);
-                fprintf( fpout, "                             init     = \"%d\" \n",   vobj[vobj_id].init);
-                fprintf( fpout, "                             binpath  = \"%s\" />\n", vobj[vobj_id].binpath);
+                fprintf( fpout, "             <vobj name = \"%s\" ", vobj[vobj_id].name);
+                fprintf( fpout, "type = \"%s\" ", vobj_type[vobj[vobj_id].type]);
+                fprintf( fpout, "length = \"0x%x\" ", vobj[vobj_id].length);
+                fprintf( fpout, "align = \"%d\" ", vobj[vobj_id].align);
+                fprintf( fpout, "init = \"%d\" ", vobj[vobj_id].init);
+                fprintf( fpout, "binpath = \"%s\" />\n", vobj[vobj_id].binpath);
             }
-            fprintf( fpout, "                 </vseg>\n");
+            fprintf( fpout, "            </vseg>\n\n");
         }
         for ( task_id = vspace[vspace_id].task_offset ;
@@ -358,13 +362,13 @@
             unsigned int vobj_id = task[task_id].vobjlocid + vspace[vspace_id].vobj_offset; 
 
-            fprintf( fpout, "                 <task name      = \"%s\"\n",      task[task_id].name);
-            fprintf( fpout, "                       clusterid = \"%d\"\n",      task[task_id].clusterid);
-            fprintf( fpout, "                       proclocid = \"%d\"\n",      task[task_id].proclocid);
-            fprintf( fpout, "                       stackname = \"%s\"\n",      vobj[vobj_id].name);
-            fprintf( fpout, "                       startid   = \"%d\"\n",      task[task_id].startid);
-            fprintf( fpout, "                       usetty    = \"%d\"\n",      task[task_id].use_tty);
-            fprintf( fpout, "                       usenic    = \"%d\"\n",      task[task_id].use_nic);
-            fprintf( fpout, "                       usetimer  = \"%d\"\n",      task[task_id].use_timer);
-            fprintf( fpout, "                       usefbma   = \"%d\" />\n\n", task[task_id].use_fbdma);
+            fprintf( fpout, "            <task name = \"%s\" ", task[task_id].name);
+            fprintf( fpout, "clusterid = \"%d\" ", task[task_id].clusterid);
+            fprintf( fpout, "proclocid = \"%d\" ", task[task_id].proclocid);
+            fprintf( fpout, "stackname = \"%s\" ", vobj[vobj_id].name);
+            fprintf( fpout, "startid = \"%d\" ", task[task_id].startid);
+            fprintf( fpout, "usetty = \"%d\" ", task[task_id].use_tty);
+            fprintf( fpout, "usenic = \"%d\" ", task[task_id].use_nic);
+            fprintf( fpout, "usetimer = \"%d\" ", task[task_id].use_timer);
+            fprintf( fpout, "usefbma = \"%d\" />\n", task[task_id].use_fbdma);
         }
         fprintf( fpout, "        </vspace>\n\n");
