Register - Login
Views: 99382544
Main - Memberlist - Active users - Calendar - Wiki - IRC Chat - Online users
Ranks - Rules/FAQ - Stats - Latest Posts - Color Chart - Smilies
04-24-22 01:32:00 AM
Jul - The Cutting Room Floor - Pokémon Colosseum bullshit New poll - New thread - New reply
Next newer thread | Next older thread
Afti
Member
Level: 25


Posts: 108/114
EXP: 80039
For next: 9581

Since: 06-21-10


Since last post: 7.2 years
Last activity: 6.9 years

Posted on 11-01-12 04:22:56 AM Link | Quote
I'm at a loss for dealing with the LZSS implementation used in this game, so I just started pulling text out of RAM.

Turns out this game loads a ton of strings it doesn't actually need. Weird, but useful to me!

First up:


Please insert the POKéMON COLOSSEUM EXPANSION DISC in the Nintendo GameCube.



Please insert the POKéMON COLOSSEUM NINTENDO SPECIAL DISC in the Nintendo GameCube.


yep. Located with file save text. I'd guess that the Nintendo Special Disc is the Colosseum bonus disc we never got, the Japan-only one; unlike the Jirachi disc, this one used the Colosseum save data. So, that's one down. I'm not sure why it's telling you to insert that disc at the save game screen, though. Anyone familiar with it?

The Expansion Disc, on the other hand. That's a bit of a mystery. Considering how unfinished this game is (answer: really unfinished) I'm not surprised that an expansion pack was on the table. (As a bit of what is purely speculation - could this have morphed into XD?)

Also worthy of note: there's text for a debug menu on the disc. Map loader calls Mt. Battle "CANYON." I guess the theme of that area was different at one point?

Orre Colosseum was called Lost Colosseum, and apparently you were supposed to visit it at some point outside of Battle Mode. Raise your hand if you're surprised.


Would you like to format the SD Card in Slot 1?



Their is insufficient free space on the SD Card in Slot1 to save debug information.
There is no debug SD Card inserted in Slot1.
The SD Card in Slot 1 failed to be formatted.


More debug leftovers. This thing probably works if you can figure out how to turn it on...

____________________
Brag brag brag.
SamEarl13

Nipper Plant
Trying (and failing) to learn Lua.
Level: 43


Posts: 201/419
EXP: 523186
For next: 41860

Since: 02-14-12


Since last post: 4.1 years
Last activity: 8 days

Posted on 11-01-12 08:58:34 PM (last edited by SamuelEarl666 at 11-01-12 08:59:26 PM) Link | Quote
I've currently got that game on my hard drive so i'll help you look into it.


____________________
I'm currently saving up for a game so if you are going to buy anything from amazon could you click this link first:
This is the link
GuyPerfect
Catgirl
Level: 68


Posts: 795/1096
EXP: 2663392
For next: 65408

Since: 07-23-07


Since last post: 1.6 years
Last activity: 210 days

Posted on 11-05-12 02:26:11 PM Link | Quote
Originally posted by Afti
I'm at a loss for dealing with the LZSS implementation used in this game, so I just started pulling text out of RAM.

Post some sample data. We'll figure it out for you.
Afti
Member
Level: 25


Posts: 109/114
EXP: 80039
For next: 9581

Since: 06-21-10


Since last post: 7.2 years
Last activity: 6.9 years

Posted on 11-06-12 11:38:33 PM Link | Quote
You sure? All right; a handful of things I yanked out of common.fsys. I can supply more as needed.

https://www.dropbox.com/s/rwa2n649o7wotpd/sample1.zip

____________________
Brag brag brag.
Rena
I had one (1) message in Discord deleted and proceeded to make a huge, huge mess about how it was a violation of free speech and how moderators are supposed to be spam janitors and nobody should have the right to tell me not to talk about school shootings
Level: 135


Posts: 4893/5390
EXP: 29050689
For next: 284316

Since: 07-22-07

Pronouns: he/him/whatever
From: RSP Segment 6

Since last post: 333 days
Last activity: 333 days

Posted on 11-10-12 03:18:59 AM Link | Quote
Post #4893 · Fri 121109 231859
$ hd -n 256 common_rel
00000000 4c 5a 53 53 00 14 e5 b0 00 07 4c 61 00 00 00 00 |LZSS......La....|
00000010 ea ed f0 7d e6 f8 0b ed f0 4c 00 00 ab 15 3c ed |...}.....L....<.|
00000020 f0 27 ed f0 03 ec f2 14 eb bf 70 12 00 60 ed f0 |.'........p..`..|
00000030 10 01 01 fd 01 ea f4 05 fc 00 00 0a 80 4a ed f0 |.............J..|
00000040 04 ed f0 01 12 02 e7 f7 a5 2a 00 fd 9c f3 f8 40 |.........*.....@|
00000050 00 00 0d 0c 00 7f 00 18 4c 00 14 a7 14 dc ff fc |........L.......|
00000060 73 0f e5 f9 94 21 ff f0 93 e1 ff 00 0c 7c 3f 0b |s....!.......|?.|
00000070 78 3d 20 d7 00 00 3d 19 00 38 fd f0 90 09 00 a0 |x= ...=..8......|
00000080 00 9f 0f b1 0f c3 0f d5 0f e7 0f f9 0f 0b 1f 00 |................|
00000090 1d 1f 2f 1f 41 1f 53 1f 65 1f 77 1f 89 1f 9b 1f |../.A.S.e.w.....|
000000a0 00 ad 1f bf 1f d1 1f e3 1f f5 1f 07 2f 19 2f 2b |...........././+|
000000b0 2f 00 3d 2f 4f 2f 61 2f 73 2f 85 2f 97 2f a9 2f |/.=/O/a/s/./././|
000000c0 bb 2f 00 cd 2f df 2f f1 2f 03 3f 15 3f 27 3f 39 |./../././.?.?'?9|
000000d0 3f 4b 3f 00 5d 3f 6f 3f 81 3f 93 3f a5 3f b7 3f |?K?.]?o?.?.?.?.?|
000000e0 c9 3f db 3f 00 ed 3f ff 3f 11 4f 23 4f 35 4f 47 |.?.?..?.?.O#O5OG|
000000f0 4f 59 4f 6b 4f 00 7d 4f 8f 4f a1 4f b3 4f c5 4f |OYOkO.}O.O.O.O.O|


First word is obviously a signature; second is 1,369,520, which is about 2.9 times the file's size, so good bet for uncompressed size; third is 478,305 which the file's size; fourth is likely padding, but potentially an offset into the file (minus header).

What I've seen from similar formats was that the header pointed to two sections, one containing raw data and the other containing offset/length pairs, and was followed by a bitmap telling which to read from next. This doesn't have any such pointer, and the following data seems to have quite a few zero bits, actually resembling machine code somewhat for the first few words. The name "common_rel" suggests an executable, so this makes sense. I haven't tried to disassemble it though, so I might be way off there.

As you look further into the file there are some pretty obvious patterns, which is strange for compressed data. Starting around 0x700 looks like some type of uncompressed graphic. Especially you can see a pattern 1C xx xx repeating often... but, sometimes there are three bytes between the 1Cs instead of two. That looks similar to the ASCII text around 0x440, that has readable words with single bytes inserted:
00000480 05 c5 07 e7 77 69 6e e7 00 d5 0c 76 69 72 ef 74 |....win....vir.t|
00000490 75 61 6c bf 0a 73 69 72 ff 65 6e 5f 61 74 6d 6f |ual..sir.en_atmo|
000004a0 73 fe bf 0a 6c 65 76 65 6c 5f 75 f9 70 aa 03 9a |s...level_u.p...|


And there's an obvious bit pattern in some of those. Check this from 0x48E:
EF ;binary 1110 1111
74 75 61 6C ;ASCII "tual" (from "virtual")
BF 0A ;???
73 69 72 ;ASCII "sir" (from "siren"?)

FF ;binary 1111 1111
65 6E 5F 61 74 6D 6F 73 ;ASCII "en_atmos" (siren_atmos, probably a sound file name)

FE ;binary 1111 1110
BF 0A ;???
6C 65 76 65 6C 5F 79 ;ASCII "level_u"

See the pattern... Counting from right to left (least significant bit first), 0xEF has 4 ones, a zero, and three ones. And immediately after it, we see 4 bytes of ASCII, something unusual (BF 0A), and then three bytes of ASCII. The same pattern follows further on: FF followed by 8 ASCII bytes, FE followed by one unknown (BF 0A again) and 7 ASCII bytes. So, obviously these bytes are bitflags, counting from least significant bit upward, where 1 indicates a raw data byte and 0 indicates something else.

I would expect that "BF 0A" is some type of offset, meaning to copy some bytes from elsewhere into the output. I also notice that these are occurring at the end of each string, and 0A is a newline character, but this doesn't seem to repeat further on, so this is probably coincidental.

I'd guess that BF 0A means to copy 0xA bytes from offset 0x0BF. In other formats I've dealt with, those are relative offsets, so this would mean seek 0xBF bytes back in the output buffer and copy from there. It's a bit odd to see the same offset twice if it's relative, though. Another interpretation is 0x0A bytes from 0xBF. More likely, the actual count is 0xC or 0xD, because it takes two bytes to encode this, so there'd be no reason to ever have a count of less than 2. 0xC seems likely, since it's a multiple of 4, so as to align the strings to word boundaries.

If we assume this applies to the entire file after the header, we run into an interesting situation: the first byte is EA, binary 11101010, which means the first bit decoded would be 0, meaning to copy from previous output... but there's no previous output to copy from, so that doesn't make much sense. The pattern does seem to fit, though:

EA ;binary 1110 1010
EDF0 7D E6F8 0B EDF0 4C 00 00
AB ;binary 1010 1011
15 3C EDF0 27 EDF0 03 ECF2 14
EB ;binary 1110 1011
BF 70 1200 60 EDF0 10 01 01
FD ;binary 1111 1101
01 EAF4 05 FC 00 00 0A 80

following the bits from lowest to highest, we reliably encounter pairs that resemble those we saw earlier, and bytes that don't, exactly where we'd expect. So it's reasonable to say that this is the encoding of the entire file; the question being what exactly ED F0 (and BF 0A and so on) means.

Mostly they seem to be twelve bits having a high value (0xEDF, 0xE6F, 0xBF0) and four arbitrary bits. That corresponds well with length/offset pairs, and matches some of Nintendo's older compression formats. I always thought it didn't seem very efficient when the maximum number of bytes that can be repeated is so small, though.

Still, that doesn't tell where the data is coming from, given these offsets don't make any sense for such a large output buffer. (The offsets might be interpreted as 0xFED, 0xFE6, 0x0BF, but they're still too large.) It's possible they're offsets into some separate dictionary. That would make the repeated offsets between strings make sense, too, especially if it's padding and/or metadata. Being an offset into the file itself is another possibility, but it doesn't look that way here.

So, it might be necessary to find a dictionary table that goes with these files.

____________________
Eon

Hammer Brother
MLB
Level: 68


Posts: 958/1085
EXP: 2623791
For next: 105009

Since: 07-22-07


Since last post: 300 days
Last activity: 120 days

Posted on 12-08-12 10:36:36 AM Link | Quote
I found some info promising info about the US version cut eReader content. (PAL hasn't been researched yet)
http://projectpokemon.org/forums/showthread.php?21561-Pokemon-Colosseum-Beta-Unreleased-Room

As for other regional differences, the main girl had a slightly different Japanese outfit.
http://bulbapedia.bulbagarden.net/wiki/Rui

____________________
Next newer thread | Next older thread
Jul - The Cutting Room Floor - Pokémon Colosseum bullshit New poll - New thread - New reply


Rusted Logic

Acmlmboard - commit 47be4dc [2021-08-23]
©2000-2022 Acmlm, Xkeeper, Kaito Sinclaire, et al.

32 database queries, 1 query cache hits.
Query execution time:  0.086822 seconds
Script execution time:  0.018911 seconds
Total render time:  0.105733 seconds


TidyHTML vomit below
line 1 column 1 - Warning: missing <!DOCTYPE> declaration
line 2 column 301 - Warning: unescaped & or unknown entity "&page"
line 119 column 11 - Warning: <form> isn't allowed in <table> elements
line 118 column 10 - Info: <table> previously mentioned
line 120 column 11 - Warning: missing <tr>
line 120 column 119 - Warning: missing </font> before </td>
line 124 column 16 - Warning: plain text isn't allowed in <tr> elements
line 120 column 11 - Info: <tr> previously mentioned
line 125 column 68 - Warning: missing </nobr> before </td>
line 141 column 68 - Warning: missing </nobr> before <tr>
line 147 column 35 - Warning: missing <tr>
line 147 column 50 - Warning: missing </font> before </td>
line 148 column 37 - Warning: unescaped & or unknown entity "&id"
line 147 column 197 - Warning: missing </font> before </table>
line 149 column 35 - Warning: missing <tr>
line 149 column 50 - Warning: missing </font> before </td>
line 149 column 91 - Warning: missing </font> before </table>
line 156 column 9 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 158 column 9 - Warning: missing <tr>
line 176 column 13 - Warning: missing <tr>
line 177 column 102 - Warning: unescaped & or unknown entity "&postid"
line 179 column 141 - Warning: missing <tr>
line 206 column 9 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 208 column 9 - Warning: missing <tr>
line 226 column 13 - Warning: missing <tr>
line 227 column 102 - Warning: unescaped & or unknown entity "&postid"
line 231 column 352 - Warning: unescaped & or unknown entity "&camp"
line 231 column 362 - Warning: unescaped & or unknown entity "&creative"
line 231 column 377 - Warning: unescaped & or unknown entity "&linkCode"
line 231 column 390 - Warning: unescaped & or unknown entity "&tag"
line 234 column 9 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 236 column 9 - Warning: missing <tr>
line 254 column 13 - Warning: missing <tr>
line 255 column 102 - Warning: unescaped & or unknown entity "&postid"
line 261 column 9 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 263 column 9 - Warning: missing <tr>
line 281 column 13 - Warning: missing <tr>
line 282 column 102 - Warning: unescaped & or unknown entity "&postid"
line 284 column 74 - Warning: missing </div>
line 289 column 9 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 291 column 9 - Warning: missing <tr>
line 309 column 13 - Warning: missing <tr>
line 310 column 102 - Warning: unescaped & or unknown entity "&postid"
line 376 column 10876 - Warning: replacing unexpected input with </input>
line 376 column 11190 - Warning: discarding unexpected </span>
line 379 column 9 - Warning: <div> isn't allowed in <table> elements
line 152 column 17 - Info: <table> previously mentioned
line 381 column 9 - Warning: missing <tr>
line 399 column 13 - Warning: missing <tr>
line 400 column 102 - Warning: unescaped & or unknown entity "&postid"
line 402 column 74 - Warning: missing </div>
line 409 column 17 - Warning: missing <tr>
line 409 column 17 - Warning: discarding unexpected <table>
line 412 column 35 - Warning: missing <tr>
line 412 column 50 - Warning: missing </font> before </td>
line 412 column 91 - Warning: missing </font> before </table>
line 414 column 35 - Warning: missing <tr>
line 414 column 50 - Warning: missing </font> before </td>
line 415 column 37 - Warning: unescaped & or unknown entity "&id"
line 414 column 197 - Warning: missing </font> before </table>
line 416 column 17 - Warning: discarding unexpected </textarea>
line 416 column 28 - Warning: discarding unexpected </form>
line 416 column 35 - Warning: discarding unexpected </embed>
line 416 column 43 - Warning: discarding unexpected </noembed>
line 416 column 53 - Warning: discarding unexpected </noscript>
line 416 column 64 - Warning: discarding unexpected </noembed>
line 416 column 74 - Warning: discarding unexpected </embed>
line 416 column 82 - Warning: discarding unexpected </table>
line 416 column 90 - Warning: discarding unexpected </table>
line 418 column 9 - Warning: missing </font> before <table>
line 430 column 25 - Warning: discarding unexpected </font>
line 439 column 57 - Warning: discarding unexpected </font>
line 417 column 1 - Warning: missing </center>
line 120 column 63 - Warning: <img> lacks "alt" attribute
line 125 column 19 - Warning: <td> attribute "width" has invalid value "120px"
line 125 column 93 - Warning: <img> lacks "alt" attribute
line 141 column 19 - Warning: <td> attribute "width" has invalid value "120px"
line 141 column 98 - Warning: <img> lacks "alt" attribute
line 148 column 44 - Warning: <img> proprietary attribute value "absmiddle"
line 148 column 142 - Warning: <img> proprietary attribute value "absmiddle"
line 148 column 246 - Warning: <img> proprietary attribute value "absmiddle"
line 161 column 22 - Warning: <img> lacks "alt" attribute
line 161 column 63 - Warning: <img> lacks "alt" attribute
line 161 column 112 - Warning: <img> lacks "alt" attribute
line 161 column 162 - Warning: <img> lacks "alt" attribute
line 172 column 15 - Warning: <img> lacks "alt" attribute
line 210 column 11 - Warning: <img> lacks "alt" attribute
line 211 column 22 - Warning: <img> lacks "alt" attribute
line 211 column 63 - Warning: <img> lacks "alt" attribute
line 211 column 111 - Warning: <img> lacks "alt" attribute
line 211 column 161 - Warning: <img> lacks "alt" attribute
line 212 column 11 - Warning: <img> lacks "alt" attribute
line 222 column 15 - Warning: <img> lacks "alt" attribute
line 226 column 92 - Warning: <font> attribute "color" had invalid value "97ACEF" and has been replaced
line 239 column 22 - Warning: <img> lacks "alt" attribute
line 239 column 63 - Warning: <img> lacks "alt" attribute
line 239 column 112 - Warning: <img> lacks "alt" attribute
line 239 column 162 - Warning: <img> lacks "alt" attribute
line 250 column 15 - Warning: <img> lacks "alt" attribute
line 266 column 22 - Warning: <img> lacks "alt" attribute
line 266 column 63 - Warning: <img> lacks "alt" attribute
line 266 column 112 - Warning: <img> lacks "alt" attribute
line 266 column 162 - Warning: <img> lacks "alt" attribute
line 277 column 15 - Warning: <img> lacks "alt" attribute
line 294 column 23 - Warning: <img> lacks "alt" attribute
line 294 column 64 - Warning: <img> lacks "alt" attribute
line 294 column 113 - Warning: <img> lacks "alt" attribute
line 294 column 163 - Warning: <img> lacks "alt" attribute
line 305 column 15 - Warning: <img> lacks "alt" attribute
line 383 column 11 - Warning: <img> lacks "alt" attribute
line 384 column 22 - Warning: <img> lacks "alt" attribute
line 384 column 63 - Warning: <img> lacks "alt" attribute
line 384 column 112 - Warning: <img> lacks "alt" attribute
line 384 column 162 - Warning: <img> lacks "alt" attribute
line 395 column 15 - Warning: <img> lacks "alt" attribute
line 402 column 1643 - Warning: <img> lacks "alt" attribute
line 406 column 2376 - Warning: <img> lacks "alt" attribute
line 406 column 2572 - Warning: <img> lacks "alt" attribute
line 406 column 2726 - Warning: <img> lacks "alt" attribute
line 415 column 44 - Warning: <img> proprietary attribute value "absmiddle"
line 415 column 142 - Warning: <img> proprietary attribute value "absmiddle"
line 415 column 246 - Warning: <img> proprietary attribute value "absmiddle"
line 424 column 25 - Warning: <img> lacks "alt" attribute
line 429 column 267 - Warning: <img> lacks "alt" attribute
line 149 column 50 - Warning: trimming empty <font>
line 376 column 10943 - Warning: trimming empty <label>
line 409 column 17 - Warning: trimming empty <tr>
line 412 column 50 - Warning: trimming empty <font>
line 125 column 68 - Warning: <nobr> is not approved by W3C
line 141 column 68 - Warning: <nobr> is not approved by W3C
line 177 column 27 - Warning: <nobr> is not approved by W3C
line 179 column 74 - Warning: <table> proprietary attribute "height"
line 179 column 141 - Warning: <td> proprietary attribute "background"
line 227 column 27 - Warning: <nobr> is not approved by W3C
line 255 column 27 - Warning: <nobr> is not approved by W3C
line 282 column 27 - Warning: <nobr> is not approved by W3C
line 310 column 27 - Warning: <nobr> is not approved by W3C
line 400 column 27 - Warning: <nobr> is not approved by W3C
Info: Document content looks like HTML5
Info: No system identifier in emitted doctype
Tidy found 135 warnings and 0 errors!


The alt attribute should be used to give a short description
of an image; longer descriptions should be given with the
longdesc attribute which takes a URL linked to the description.
These measures are needed for people using non-graphical browsers.

For further advice on how to make your pages accessible
see http://www.w3.org/WAI/GL.
You are recommended to use CSS to specify the font and
properties such as its size and color. This will reduce
the size of HTML files and make them easier to maintain
compared with using <FONT> elements.

You are recommended to use CSS to control line wrapping.
Use "white-space: nowrap" to inhibit wrapping in place
of inserting <NOBR>...</NOBR> into the markup.

About HTML Tidy: https://github.com/htacg/tidy-html5
Bug reports and comments: https://github.com/htacg/tidy-html5/issues
Official mailing list: https://lists.w3.org/Archives/Public/public-htacg/
Latest HTML specification: http://dev.w3.org/html5/spec-author-view/
Validate your HTML documents: http://validator.w3.org/nu/
Lobby your company to join the W3C: http://www.w3.org/Consortium

Do you speak a language other than English, or a different variant of
English? Consider helping us to localize HTML Tidy. For details please see
https://github.com/htacg/tidy-html5/blob/master/README/LOCALIZE.md