Skip to content
View in the app

A better way to browse. Learn more.

ResHax

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.
Help us keep the site running.

GioGio's Bizarre Adventure TIM2 Compression

Featured Replies

  • Author
  • Localization

penguino, posted Sat Feb 02, 2019 5:26 am (43094)


I got a bit more info on the textures in this game
They use BGR I encoding
The readable TIM2s in afs_data use 128 bytes of alignment
Readable versions of a few compressed textures can sometimes be found in memory while the game is running on an emulator (https://cdn.discordapp.com/attachments/ ... Ku1p4q.png)
Is there a way to figure out how the TIM2 files are compressed by comparing them with the uncompressed versions?
Attachment has the CAPCOM and title screen tm2's and their compressed version with the pzz file that contains both of them
  • Author
  • Localization

Acewell, posted Sat Feb 02, 2019 5:12 pm (43102)


the compressed samples look RLE compressed to me, but i'm no expert on that. :)
  • Author
  • Localization

episoder, posted Sun Feb 03, 2019 3:34 pm (43130)


well. it's not your average rle compression looks like mess to me. to many 9s in the capcom. the title doesn't make sense either can't pin it. pointer moves? skips? copys? sequence lengths? dword or short literals? is 0x3B the lenght of the sequence in the title? 0x38 definetely looks like the pad to 0x10 function. the rest doesn't make much sense tho. :?

Image

edit: well the 0x4x is potentially a backwards memory move in the copy alignment window. kinda adds up copying a 0x10 short sequence at 0x1b and removing the 9 over bytes. complicated tho. that's so capcom. :lol:

0x34 zero pad align to 0x10
0x20 copy
0x01 type dword
0x20 copy
0x3B zero pad align to 0x1B
0x10 sequence length (?)
0x87 relocation or code ptr move
0x49 alignment move
0x38 zero pad align to 0x30
0x08 memory fill
0x40 parameter
0xF7F7 content
0x0100 parameter
0x87 should be skipped here (?)
0x48 alignment move
...

pointer dance. and a lot of guessing. :mrgreen:
  • Author
  • Localization

infval, posted Mon May 25, 2020 1:44 am (56917)


Acewell wrote:
the compressed samples look RLE compressed to me, but i'm no expert on that. :)
Yes. It's simple RLE compression.
Decompression functions: Python and C versions.
Guest
This topic is now closed to further replies.

Account

Navigation

Search

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.