?SDL_MapRGB runs only with screen surfac e?

Engish version, spanish version down:

ENGLISH VERSION:
Hello everybody. The funcion SDL_MapRGB runs only with the screen or can be
used with any SDL_Surface?. I am make some test with the example of putpixel
of SDL documentation. I can paint a pixel in screen, but when I try paint a
pixel in another SDL_Surface (a PNG file loaded in this SDL_Surface, I can
paint in screen it) I not see the pixel painted.

SPANISH VERSION:
Buenas a todos, que alivio escribir en espa?ol. Espero que haya usuarios que
sean espa?oles o entiendan el espa?ol, porque es bastante dificil escribir
en ingles.

Estoy haciendo pruebas con la funcion putpixel que trae la documentacion de
SDL 1.2.14. El ejemplo de la documentacion pinta un pixel amarillo en
pantalla. Lo ejecuto y va perfecto. Mi problema esta en que intento hacer
eso mismo pero con otra SDL_Surface, que tiene cargado un archivo grafico
PNG que pinto en pantalla sin problemas.

Estoy haciendo pruebas con el ejemplo, aparentemente lo unico que cambia es
que en vez de pintar el pixel en screen lo pinto en esa otra SDL_Surface. Me
parece un poco raro porque en la documentacion no veo nada que sugiera que
solo sirve para screen.

It should work on an arbitrary SDL_PixelFormat. Have you looked at the
value returned by SDL_MapRGB() to see what it looks like? Perhaps the
alpha value is incorrect. See if SDL_MapRGBA() works for you.

2011/5/30 Altair Linux :> Engish version, spanish version down:

ENGLISH VERSION:
Hello everybody. The funcion SDL_MapRGB runs only with the screen or can be
used with any SDL_Surface?. I am make some test with the example of putpixel
of SDL documentation. I can paint a pixel in screen, but when I try paint a
pixel in another SDL_Surface (a PNG file loaded in this SDL_Surface, I can
paint in screen it) I not see the pixel painted.