PDA

Ver la Versión Completa : Conversor Hexadecimal a texto y .pak


Alfonsoft
19-03-2007, 18:57:32
Buenas,

¿Sabeis de algun conversor que introduciendo hexadecimal lo transforme a texto?

Otra cosa mas, con que programa se puede descomprimir un .pak?


Gracias,

seoane
19-03-2007, 20:58:28
¿Sabeis de algun conversor que introduciendo hexadecimal lo transforme a texto?


Si te refieres a ver un archivo en hexadecimal, puedes usar el siguiente código:

Es una aplicación de consola:

program HexDump;

{$APPTYPE CONSOLE}

uses Windows, SysUtils;

function Min(i,j: Integer): Integer;
begin
if i < j then
Result:= i
else
Result:= j;
end;

procedure Dump(Filename: String);
var
Buffer: array[1..16] of Byte;
F: File;
Leidos: Integer;
i: Integer;
Offset: Cardinal;
begin
AssignFile(F,Filename);
Filemode:= 0;
{$I-}
Reset(F,1);
{$I+}
if IOResult = 0 then
begin
Offset:= 0;
while not Eof(F) do
begin
Write(IntToHex(Offset,8) + ':' + #32#32);
BlockRead(F,Buffer,16,Leidos);
for i:= 1 to Min(Leidos,8) do
Write(IntToHex(Buffer[i],2) + #32);
Write(#32);
for i:= 9 to Min(Leidos,16) do
Write(IntToHex(Buffer[i],2) + #32);
for i:= Min(Leidos,16) + 1 to 16 do
Write(#32#32#32);
Write(#32 + '|');
for i:= 1 to Min(Leidos,16) do
if Char(Buffer[i]) in ['A'..'Z','a'..'z','0'..'9'] then
Write(Char(Buffer[i]))
else
Write('.');
Writeln('|');
inc(Offset,Leidos);
end;
CloseFile(F);
end;
end;

begin
if FileExists(ParamStr(1)) then
Dump(ParamStr(1));
end.


La salida del programa sera parecida a esta:

00000000: 4D 5A 90 00 03 00 00 00 04 00 00 00 FF FF 00 00 |MZ..............|
00000010: B8 00 00 00 00 00 00 00 40 00 00 00 00 00 00 00 |................|
00000020: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
00000030: 00 00 00 00 00 00 00 00 00 00 00 00 E0 00 00 00 |................|
00000040: 0E 1F BA 0E 00 B4 09 CD 21 B8 01 4C CD 21 54 68 |...........L..Th|
00000050: 69 73 20 70 72 6F 67 72 61 6D 20 63 61 6E 6E 6F |is.program.canno|
...

Si no era esto lo que buscabas, explica un poco mas lo que buscas.


Otra cosa mas, con que programa se puede descomprimir un .pak?

Según esta pagina, se trata de un archivo perteneciente a Quake.
http://www.filext.com/detaillist.php?extdetail=pak&Search=Search

Si es así su estructura no parece muy complicada.
http://www.wotsit.org/list.asp?search=pak

Alfonsoft
19-03-2007, 21:02:43
Gracias seoane,

No me he explicado bien, me referia a algun programa que transforme la salida que has puesto en hexadecimal a texto.


Y sobre los .pak, voy a ver que dicen esos links... ;)

seoane
19-03-2007, 21:24:43
No me he explicado bien, me referia a algun programa que transforme la salida que has puesto en hexadecimal a texto.


Como diría Casimiro, esto en linux seria muy sencillo :p :D , con xxd por ejemplo.

Ahora en serio, como es el formato del hexadecimal. Ayudaríaue pusieras por aquí parte del texto que quieres convertir.

Alfonsoft
20-03-2007, 01:00:08
El tema de extraer los graficos de los .pak lo he solucionado con un programa llamado FMV Extractor.

Sobre el tema de la conversion, veamos, es un archivo .fdi que lo he abierto con el Hex Workshop y me gustaria pasar a texto el codigo hexadecimal que me da. Que son filas asi:

0000 764A 0000 2900 0000 0B00 0000 009F 4A00 0016

Y más cosillas, podria conoces de alguna forma las tablas y campos que tiene un archivo .dbc de foxpro? No se si valdra abrirlo sin mas con foxpro ya que no lo tengo, pero imagino que tendra contraseña o algo.