11-23-2012, 08:23 PM
The problem still persists. It looks like the cause of it is CR (0x0D) linebreaks being ignored. I've looked into RAM dump and that's how this text is represented:
There is also another version of text in memory, which seems to be straight loaded from game's files, not formated for output. Game inserts 0A 00 for automatic line wrapping, and so it works, but not the manual line-breaks, which retain 0D 00.
Code:
53 00 6F 00 2C 00 20 00 6E 00 6F 00 74 00 68 00
69 00 6E 00 67 00 20 00 68 00 61 00 73 00 20 00
63 00 68 00 61 00 6E 00 67 00 65 00 64 00 2E 00
2E 00 2E 00 0D 00 0D 00 41 00 6C 00 74 00 68 00
6F 00 75 00 67 00 68 00 20 00 74 00 68 00 65 00
20 00 77 00 6F 00 72 00 64 00 20 00 22 00 6D 00
69 00 72 00 61 00 63 00 6C 00 65 00 22 00 20 00
69 00 73 00 20 00 6E 00 6F 00 74 00 20 00 65 00
78 00 61 00 63 00 74 00 6C 00 79 00 20 00 69 00
6E 00 20 00 6F 00 75 00 72 00 20 00 0A 00 76 00
6F 00 63 00 61 00 62 00 75 00 6C 00 61 00 72 00
79 00 2C 00 20 00 77 00 6F 00 75 00 6C 00 64 00
6E 00 27 00 74 00 20 00 79 00 6F 00 75 00 20 00
61 00 67 00 72 00 65 00 65 00 20 00 74 00 68 00
61 00 74 00 20 00 79 00 6F 00 75 00 72 00 20 00
65 00 78 00 69 00 73 00 74 00 65 00 6E 00 63 00
65 00 20 00 69 00 74 00 73 00 65 00 6C 00 66 00
20 00 69 00 73 00 20 00 61 00 20 00 6D 00 69 00
72 00 61 00 63 00 6C 00 65 00 20 00 6F 00 66 00
20 00 0A 00 73 00 6F 00 72 00 74 00 73 00 3F