Pages: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
Posted on 19-06-08, 17:41 in GNOME: "Please don't theme our apps"
Ask me about SCI

Post: #261 of 599
Since: 10-29-18

Last post: 205 days
Last view: 14 hours
I'm given to understand when he saw Windows, he said "okay, okay, fair point Bill, but no overlapping windows."
Posted on 19-06-09, 09:12 in I have yet to have never seen it all.
Ask me about SCI

Post: #262 of 599
Since: 10-29-18

Last post: 205 days
Last view: 14 hours
*cough*

Omastars in garters.
Posted on 19-06-10, 00:06 in Mozilla, *sigh*
Ask me about SCI

Post: #263 of 599
Since: 10-29-18

Last post: 205 days
Last view: 14 hours
Surprised? This isn't AB∆ lol
Posted on 19-06-11, 16:59 in Upcoming game announcements/news
Ask me about SCI

Post: #264 of 599
Since: 10-29-18

Last post: 205 days
Last view: 14 hours
So. Banjo-Kazooie and the Dragon Quest heroes in Smash. Nice.
Posted on 19-06-11, 18:53 in Mozilla, *sigh*
Ask me about SCI

Post: #265 of 599
Since: 10-29-18

Last post: 205 days
Last view: 14 hours
* Kawa weeps for Opera
Posted on 19-06-12, 23:30 in Blackouts
Ask me about SCI

Post: #266 of 599
Since: 10-29-18

Last post: 205 days
Last view: 14 hours
Because there clearly was a point where they should have stopped, but they missed it and they mistakenly believe another point is coming up.

It's not. It's idiocy all the way to the gorge.
Posted on 19-06-15, 18:18 in Games You Played Today REVENGEANCE
Ask me about SCI

Post: #267 of 599
Since: 10-29-18

Last post: 205 days
Last view: 14 hours
Ah, code wheels. Love 'em.
Posted on 19-06-15, 20:20 in Games You Played Today REVENGEANCE
Ask me about SCI

Post: #268 of 599
Since: 10-29-18

Last post: 205 days
Last view: 14 hours
That.

That right there.

Best post.
Posted on 19-06-18, 23:56 in Board feature requests/suggestions
Ask me about SCI

Post: #269 of 599
Since: 10-29-18

Last post: 205 days
Last view: 14 hours
Guestposting threads I could consider I guess. As for your other question, why should the » in the "last post" column not go to the last post?
Posted on 19-06-19, 07:03 in Board feature requests/suggestions
Ask me about SCI

Post: #270 of 599
Since: 10-29-18

Last post: 205 days
Last view: 14 hours
No header? It says "last post" on both the board index and thread list, what are talking about? Oooooh, you're not talking about that column at all, are you?

Well, tough luck. I'm moving and won't be in a position to change the Last Posts page in any way.
Ask me about SCI

Post: #271 of 599
Since: 10-29-18

Last post: 205 days
Last view: 14 hours
Did you really just imply that using some weird digraph encoding with frequency analysis and custom tools and all that is easier than shifting some pointers around? Cos the difficulty of pointer shifting varies per system -- GBA is absolutely lovely for example.

And what about player input like hero names?
Ask me about SCI

Post: #272 of 599
Since: 10-29-18

Last post: 205 days
Last view: 14 hours
As an example of how simple pointer magic can be: the GBA has 32-bit pointers and anything in ROM starts with 0x08000000, because that's how the memory is mapped. So if you know the text is at location 0xBADF00 in the file, you know to look for the pointer 0x08BADF00, or the byte sequence 00 DF BA 08. This is almost universal for that system. You can now freely expand the ROM if needed, even going beyond 0xFFFFFF bytes, with the rare Bank Nine pointer.

I should know, I literally just checked.
Ask me about SCI

Post: #273 of 599
Since: 10-29-18

Last post: 205 days
Last view: 14 hours
Pokémon TCG on the GBC.

Note how the player's name is wide.
Note how the opponent's name is not.
Ask me about SCI

Post: #274 of 599
Since: 10-29-18

Last post: 205 days
Last view: 14 hours
Posted by creaothceann
That's called VWF (variable-width (proportional) font). Multiple BG or sprite tiles are treated as a canvas onto which the characters are drawn at runtime.
Importantly, the glyphs aren't tile-aligned! Unlike the text in those PokéCard shots, every character is exactly as wide as it needs to be.

Unfortunately, this does not seem to be what sureanem meant. After all, the first paragraph is all about pointers, not screen real estate. So let's back that truck up a little, eh?
Ask me about SCI

Post: #275 of 599
Since: 10-29-18

Last post: 205 days
Last view: 14 hours
Posted by sureanem
How's that work? Do they store player names as wchar_t's but game text as chars?
What we see here is a complete misunderstanding of character data types. But this does bring us closer to the original topic of string length differences in translation requiring pointer adjustments!

A char is always one byte in size, and thus can only encode single-byte character sets. A wchar_t is literally a wide char but that's not a visual thing! Wide characters are 16-bit, if not 32. That's the difference. That's why you can use UTF-16 only if you use wchar. UTF-8 being naturally byte-sized can be stored in regular chars.

Japanese games from the 90's that have kanji tend towards Shift-JIS or EUC if they don't use their own custom encoding.

Your original statement that "ウィキペディアへようこそウィキペディアへようこそウィキペディアは誰でも編集できるフリー百科事典です" is 49 characters long is misleading. How many bytes does it take to store that sentence? In UTF-8 the answer is 149 bytes. In Shift-JIS it's an even 100, and in EUC it's 99 bytes. No encoding that is strictly one byte to one character can possibly store this entire sentence in 49 characters. Many SNES RPGs, just to pigeonhole, may have a custom encoding that fits the alphabet, numbers, and some symbols together with both sets of kana in just under 256 characters, then have special control characters to insert kanji. That kind of encoding might allow your sentence to pack down to 42 bytes for the kana, plus... let's say three bytes per kanji (kanji control char plus 16-bit char #) equals 63 bytes. And a 64th for the string terminator.

What a coincidence, that's almost as long as the translation! Even though one of them has punctuation and the other does not.

Ironically, that leaves only screen real estate -- their visual lengths -- as an issue.




I just looked into PokéCards bee-tee-dubbs, and even though characters are either 4x8 or 8x8, it does use a proper VWF engine. As in, there is a dedicated canvas area in the tileset. But it also remembers which characters/pairs were already drawn so "KAWA is crazy about Pokémon and and Pokémon card collecting!" appears in the tileset as "KAW is crazy about Pokémon and card collecting!" Also to my surprise, the game uses near-ASCII! That line is stored as "\x09 is crazy about Pok`mon.and Pok`mon card collecting!". It's that 0x09 that makes it write the player's name and that specifically draws in 8x8 characters. Why? I don't know.
Ask me about SCI

Post: #276 of 599
Since: 10-29-18

Last post: 205 days
Last view: 14 hours
Why would you not be able to move the pointers around? Some systems may have bankswitching limitations but that hardly means you can't do it.

Also please address the part where your Japanese example sentence takes more bytes of storage than the English equivalent.
Posted on 19-06-20, 19:45 in Why is ROM translation so (technologically) hard? (revision 1)
Ask me about SCI

Post: #277 of 599
Since: 10-29-18

Last post: 205 days
Last view: 14 hours
Trick question: repointing is a lot of work regardless, even if it's as simple a format as the GBA. Maybe you have a banked system and each bank has its own list of pointers to its constituent strings. And then in one particular bank there's a list of pointers where each individual bank's list starts, and each of those pointers, unlike the GBA's 32, is only 16 bits wide.

As for variable-width character encoding, what do you mean exactly? I feel like I have to ask just so we're all clear, considering earlier revelations.

Edit: hah, didn't see KingMike's post. Again, it's not about screen real estate, but about storage space. The former wouldn't need pointer rework but UI element resizing and moving at worst. On a typical tilemap with 8x8 pixel tiles, kanji are almost always four tiles (2x2) in size simply because they're too intricate compared to kana and romaji.
Ask me about SCI

Post: #278 of 599
Since: 10-29-18

Last post: 205 days
Last view: 14 hours
Unfortunately, the amount of 90s/00s games on consoles and handhelds that use Unicode in any form since Unicode's inception (1991) can be counted on one hand, and UCS-2 (as "classic UTF-16 aka "Unicode"" is properly called) is considered wasteful.

Fun fact about dedicating tile space to digraphs: at least one Final Fantasy fan translation that I've seen did this, with about ten at most character values being digraphs like 'll', 'il', or 'th'. I'll bet biscuits to an asskicking that this was done primarily for the visual aspect, and that the actual text was still repointed to fit.
Ask me about SCI

Post: #279 of 599
Since: 10-29-18

Last post: 205 days
Last view: 14 hours
Chrono Trigger's text encoding included a large swathe of dictionary lookup bytes, mapping one byte value to two or more characters, along with the general "insert name here" bytes. This would let entire parts of words like "pedia" be saved as one byte in the original text string, but decode into the full version for display in the dialogue box. The dictionary is not based on the top 30 of a given language, but tailored to the needs of the game.

Unfortunately, I don't know what the Japanese version's text encoding is like, only that the names and dictionary lookups are there too, so I don't know how it handles kanji.

Does CT have kanji?
Posted on 19-06-21, 08:16 in Printer & Scanner Discussion
Ask me about SCI

Post: #280 of 599
Since: 10-29-18

Last post: 205 days
Last view: 14 hours
Posted by Screwtape
I wonder if they're 16-bit-per-channel instead of 8-bit-per-channel. Can you view them in your browser, for example?
http://entropymine.com/jason/tweakpng/

It's what I use when I want to know things like that.
Pages: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
    Main » Kawa » List of posts
    [Your ad here? Why not!]