Ejecutando mi código en la revisión 34 la función put no me pinta nada, sin embargo y si no estoy muy errado hasta la versión 32 sí que funcionaba bien. He probado con una versión más antigua (r28) y se muestran bien los gráficos.
			
			
			
				sin ejemplo es un poco dificil...
			
			
			
				lo acabo de probar y funciona perfecto.
pone algun ejemplo donde no funcione, gracias.
			
			
			
				[code language="bennu"]
for (i = 0 - VISION; i < VISION + 1; i++)
   for (j = 0 - VISION; j < VISION + 1; j++)
      tile = map_get_pixel(f_lab, 9+maila, tile_x+i, tile_y+j);
      //if (      tile == TILE_HORMA    or tile == ATE_GORRIA    or tile == ATE_URDINA
      //      or    tile == ATE_HORIA    or tile == ATE_BERDEA    or tile == TILE_TRANPA
      //      or    tile == TILE_HASI    or tile == TILE_BUKA)
      //put(f_lab, TILE_HUTSA,    i_d+301+(40*i) , j_d+300+(40*j) );
      //put(f_lab, tile,       i_d+301+(40*i) , j_d+300+(40*j) );
               
      switch(tile)
      case (0):      //zelaia
         put(f_lab, TILE_HUTSA,          i_d+301+(40*i) , j_d+300+(40*j) );
      end
      case (TILE_HORMA):    
         put(f_lab, TILE_HORMA,          i_d+301+(40*i) , j_d+300+(40*j) );
      end
      case (TILE_HASI):    
         put(f_lab, TILE_HUTSA,          i_d+301+(40*i) , j_d+300+(40*j) );
         put(f_lab, TILE_HASI,          i_d+301+(40*i) , j_d+300+(40*j) );
      end
      case (TILE_BUKA):     
         put(f_lab, TILE_HUTSA,          i_d+301+(40*i) , j_d+300+(40*j) );
         put(f_lab, TILE_BUKA,          i_d+301+(40*i) , j_d+300+(40*j) );
      end
      case (ITM_HONDARRA_100):   
         put(f_lab, TILE_HUTSA,          i_d+301+(40*i) , j_d+300+(40*j) );
         put(f_lab, ITM_HONDARRA_100,    i_d+301+(40*i) , j_d+300+(40*j) );
      end
      case (ITM_HONDARRA_15):   
         put(f_lab, TILE_HUTSA,          i_d+301+(40*i) , j_d+300+(40*j) );
         put(f_lab, ITM_HONDARRA_15,    i_d+301+(40*i) , j_d+300+(40*j) );
      end
      case (ITM_HONDARRA_5):   
         put(f_lab, TILE_HUTSA,          i_d+301+(40*i) , j_d+300+(40*j) );
              put(f_lab, ITM_HONDARRA_15,    i_d+301+(40*i) , j_d+300+(40*j) );
      end
      case (ITM_TXANPONA):
         put(f_lab, TILE_HUTSA,          i_d+301+(40*i) , j_d+300+(40*j) );
         put(f_lab, ITM_TXANPONA,       i_d+301+(40*i) , j_d+300+(40*j) );
      end
      case (ITM_ERAZTUNA):
         put(f_lab, TILE_HUTSA,          i_d+301+(40*i) , j_d+300+(40*j) );
         put(f_lab, ITM_ERAZTUNA,       i_d+301+(40*i) , j_d+300+(40*j) );
      end
      case (ITM_MAKILA):
         put(f_lab, TILE_HUTSA,         i_d+301+(40*i) , j_d+300+(40*j) );
         put(f_lab, ITM_MAKILA,          i_d+301+(40*i) , j_d+300+(40*j) );
      end
      case (ITM_BIZIA_100):
         put(f_lab, TILE_HUTSA,          i_d+301+(40*i) , j_d+300+(40*j) );
         put(f_lab, ITM_BIZIA_100,       i_d+301+(40*i) , j_d+300+(40*j) );
      end
      case (ITM_BIZIA_25):
         put(f_lab, TILE_HUTSA,          i_d+301+(40*i) , j_d+300+(40*j) );
         put(f_lab, ITM_BIZIA_25,       i_d+301+(40*i) , j_d+300+(40*j) );
      end
      case (ITM_BIZIA_10):
         put(f_lab, TILE_HUTSA,          i_d+301+(40*i) , j_d+300+(40*j) );
         put(f_lab, ITM_BIZIA_10,       i_d+301+(40*i) , j_d+300+(40*j) );
      end
      case (ITM_BIZIA_5):
         put(f_lab, TILE_HUTSA,          i_d+301+(40*i) , j_d+300+(40*j) );
         put(f_lab, ITM_BIZIA_5,       i_d+301+(40*i) , j_d+300+(40*j) );
      end
      case (ITM_RUNA_GORRIA):
         put(f_lab, TILE_HUTSA,          i_d+301+(40*i) , j_d+300+(40*j) );
         put(f_lab, ITM_RUNA_GORRIA,    i_d+301+(40*i) , j_d+300+(40*j) );
      end
      case (ITM_RUNA_BERDEA):
         put(f_lab, TILE_HUTSA,          i_d+301+(40*i) , j_d+300+(40*j) );
         put(f_lab, ITM_RUNA_BERDEA,    i_d+301+(40*i) , j_d+300+(40*j) );
      end
      case (ITM_RUNA_HORIA):
         put(f_lab, TILE_HUTSA,          i_d+301+(40*i) , j_d+300+(40*j) );
         put(f_lab, ITM_RUNA_HORIA,       i_d+301+(40*i) , j_d+300+(40*j) );
      end
      case (ITM_RUNA_URDINA):
         put(f_lab, TILE_HUTSA,          i_d+301+(40*i) , j_d+300+(40*j) );
         put(f_lab, ITM_RUNA_URDINA,    i_d+301+(40*i) , j_d+300+(40*j) );
      end
      case (ATE_HUTSA):
         put(f_lab, TILE_HUTSA,          i_d+301+(40*i) , j_d+300+(40*j) );
         put(f_lab, ATE_HUTSA,          i_d+301+(40*i) , j_d+300+(40*j) );
      end
      case (TILE_TRANPA):
         put(f_lab, TILE_HUTSA,          i_d+301+(40*i) , j_d+300+(40*j) );
         put(f_lab, TILE_TRANPA,       i_d+301+(40*i) , j_d+300+(40*j) );
      end
      case (ATE_GORRIA):
         put(f_lab, TILE_HUTSA,          i_d+301+(40*i) , j_d+300+(40*j) );
         put(f_lab, ATE_GORRIA,          i_d+301+(40*i) , j_d+300+(40*j) );
      end
      case (ATE_URDINA):
         put(f_lab, TILE_HUTSA,          i_d+301+(40*i) , j_d+300+(40*j) );
         put(f_lab, ATE_URDINA,          i_d+301+(40*i) , j_d+300+(40*j) );
      end
      case (ATE_BERDEA):
         put(f_lab, TILE_HUTSA,          i_d+301+(40*i) , j_d+300+(40*j) );
         put(f_lab, ATE_BERDEA,          i_d+301+(40*i) , j_d+300+(40*j) );
      end
      case (ATE_HORIA):
              put(f_lab, TILE_HUTSA,          i_d+301+(40*i) , j_d+300+(40*j) );
         put(f_lab, ATE_HORIA,          i_d+301+(40*i) , j_d+300+(40*j) );
      end
      end //switch
   end
end
[/code]
Adjunto dos capturas para mostrar la diferencia:
			
			
			
				no se como decirte que ese codigo no me compila...
;)
No seas vago, poneme un codigo compilable (con los .imp o las lineas import), y con graficos. :)
Saludos.
			
			
			
				Tú lo que quieres es jugar un rato...  ;D
Hay va el link de descarga: http://cid-4ced6c2c72cff2ee.skydrive.live.com/self.aspx/Bennu/Laberinto.rar (http://cid-4ced6c2c72cff2ee.skydrive.live.com/self.aspx/Bennu/Laberinto.rar) No vale viciarse mucho
			
			
			
				no es el put lo que no funciona, nunca entra en esto, parece que hay un problema en la comparacion si usa constantes/variables...
		for (i = 0 - VISION; i < VISION + 1; i++)
			for (j = 0 - VISION; j < VISION + 1; j++)
voy a revisar a ver que es... gracias...
			
			
			
				ya encontre el problema...
se esta considerando como una condicion unsigned.
es un cambio que hice para que se tome como en C... pero bueno...
			
			
			
				fixeado...
por favor, pido que si a alguien le parece notar algun comporamiento extraño o supuestamente ilogico en la resolucion de las expresiones, por favor, ponga un mensaje y analizamos si es correcto o no...
gracias...
			
			
			
				Yo he notado esto:
Program test;
Begin
//Bennu-R34
    write_int(0,0,0,0,&x);
    x=-400;
    While (NOT key(_esc))
        If (x < 200+10) // NO SE CUMPLE ESTA CONDICION, EN VERSIONES ANTERIORES SI LO HACIA
            x+=5;
        Else
            x=-1;
        End
        Frame;
    End
End
			
			
			
				eso es lo que esta corregido