1upus / N-Gage_stuff

Some N-Gage stuff for translation and modding
26 stars 3 forks source link

Wanted Stuff #1

Open mrRosset opened 6 years ago

mrRosset commented 6 years ago

Hey,

So I saw you wanted list. I do have multiple version of symbian SDKs up on my website and some moddings tools: https://mrrosset.github.io/Symbian-Archive/

The website has most of the stuff, nicely arranged but if you want to see everything in a glorious mess: https://mega.nz/#F!m5FlQaLJ!_ibARdckbG1WN7Wp082OXg

I also have some game mods and other modding tools not up there yet because I'm switching computers. I will update this issue when I've uploaded them.

1upus commented 6 years ago

THX

mrRosset commented 6 years ago

Hey so I've added some of the stuff to a folder called "Not sorted yet" in the link above. From your list I think I have the Fathammer Ltd. X-Forge 1.6.2 SDK and a modkit for the N-gage. But keep in mind I havent had the time to test them yet.

Direct link: https://mega.nz/#F!ioMzwTYC!nELPfcpUI-n1N6BEch3Q-Q

mrRosset commented 6 years ago

I've also uploaded some others mods in a folder called "Ngage Mods - Fixes"

Direct link: https://mega.nz/#F!P8UzmbwZ!Icu_QoB3NDwOftk3nfCUmw

1upus commented 6 years ago

@mrRosset can you tell me, is petran working with s60v1 .app and .exe? Now I'm working on Tomb Raider translation and find some gzipped blocks in executables. Is it possible to decompress it and use without recompression? Thx. I tried to use petran gui 1.1 but included version of petran show me error with invalid dos mz and nt signature. wl's fix for newer symbian os versions uses decompressed .app and .nax files but they don't work on N-Gage :/

mrRosset commented 6 years ago

can you tell me, is petran working with s60v1 .app and .exe?

It depends on the version of petran. Looking at it petran gui 1.1 use a version of petran from 2008. I can look if the old versions of petran also support both compression and decompression for s60v1 app and exe.

Now I'm working on Tomb Raider translation and find some gzipped blocks in executables. Is it possible to decompress it and use without recompression? Thx.

Why do you need to modify the exe ? Looking at my tombraider dump, there is a data folder and inside you can find "tr_01.txt" that contains what seems to be all of the text for the game. Can't you simply modify it ?

1upus commented 6 years ago

@mrRosset

It depends on the version of petran. Looking at it petran gui 1.1 use a version of petran from 2008. I can look if the old versions of petran also support both compression and decompression for s60v1 app and exe.

I'm trying to find download link for older version of petran (separately from all sdk data) but cant find. Now I'm downloading nS60_sdk_v1_2.zip from your link and will try it. If you have some other versions it will be cool.

Why do you need to modify the exe ? Looking at my tombraider dump, there is a data folder and inside you can find "tr_01.txt" that contains what seems to be all of the text for the game. Can't you simply modify it ?

Not all text from tr_0x.txt used in N-Gage version. All menu strings for each language hardcoded into compressed block of tombraider.app and uses system font from z:\ drive. Ingame text reading from .txt file and uses fonts from game_data.dz

I have many progress with hacking Tomb Raider but I'm not a programmer and must doing all with hex-editor :p Also I have plans write some document about my researches and upload it to repo. My progress with Tomb Raider:

  1. Un/Repacking game_data.dz and modify ingame fonts.
  2. After repacking game_data.dz with minimal compression level we have +7mb filesize and ~40% faster loading levels. I think decompressed .app and .nax can take some speedup too.
  3. Before repack game_data.dz I apply patch to fix "Final Secret Glitch" in "The Great Pyramid" level (https://www.gamefaqs.com/ps/199040-tomb-raider/faqs/36533)
  4. Extracted data from .dz the same as in PS One version of TR. It checked with file-comparsion tool. So patch from #3 was made for PS1 version of the game.
  5. Also I'll try adapt fan-made PS1 port of Unfinished Business add-on from here: http://www.tombraiderforums.com/showthread.php?t=194134
  6. And maybe, one day I can add to N-Gage version of TR some ripped content like videos and cut-scenes voices. But now it's only a dream.

Sorry for bad English.

UPD Petran from s60 sdk v1.2 have not compression support:

PETRAN - PE file preprocessor V01.00 (Build 175)
Copyright (c) 1996-2001 Symbian Ltd.

Syntax: petran [options] pefile outputfile
        petran [options] e32imagefile
option: [-v] [[-no]call[entrypoint]] [-priority <priority>]
        [-stack <size>] [-heap <min> <max>] [-uid<n> <uid>]
        [-allowdlldata] [-datalinkaddress <base>] [-fixed] [-moving]
        [-align-const-section] [-const-section-address-mask <mask>]

With Petran from SDK S60 2nd FP2 CW B have same signatures error :/

PETRAN - PE file preprocessor V01.00 (Build 191)
Copyright (c) 1996-2004 Symbian Ltd.

Syntax: petran [options] pefile outputfile
        petran [options] e32imagefile
option: [-v] [[-no]call[entrypoint]] [-priority <priority>]
        [-stack <size>] [-heap <min> <max>] [-uid<n> <uid>]
        [-allowdlldata] [-datalinkaddress <base>] [-fixed] [-moving]
        [-align-const-section] [-const-section-address-mask <mask>]
        [-[no]compress]

Will try something else.

mrRosset commented 6 years ago

Ok So I've looked into the header of the tombraider.app file. It use the old format which doesn't have compression support. (And even if it did, the field that represent the compression type used is all 0).

So if you are not mistaken and there are gzipped blocks inside of the tombraider.app file. Then it's the application itself that has included the zipped parts and that decompress them when run, (as opposed to the OS doing it when it's in the file format). So petran won't be able to help you uncompress those parts. You will have to do it manually.

1upus commented 6 years ago

@mrRosset THX!

So if you are not mistaken and there are gzipped blocks inside of the tombraider.app file

Here some findings about tombraider.app. Looks very similar with ECompXL (http://www.yipton.net/content/ecompxl/).

Start     End       Lenght    Size  Comment
offset    Offset    hex   bytes
0x03dc    0x014ac1  0x0146e6  83686 Compressed data
0x03dc    0x03e5    0x0A      10    gzip header
0x03e6    0x14ab9   0X0146d4  83668 gzip stream
0x014ABA  0x014AC1  0x08      8 gzip footer
0x014ABA  0x014ABD  0x04      8 gzip footer: checksum crc-32
0x014ABE  0x014AC1  0x04      4 gzip footer: Uncompressed data size in bytes
0x014Ac2  0x014Ac5  0x04      4 ? Looks like pointer to start of compressed data 0xDC030000