forked from moozilla/boktai3trans
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathnotes.txt
338 lines (273 loc) · 8.02 KB
/
notes.txt
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
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
======================
Shin Bokura no Taiyou
Gyakushuu no Sabata
======================
Game Title - BOKTAI3
Game Code - U33J
Maker - Konami (A4)
CRC - EA
===================
Progress/Todo
===================
Near Todo:
- Tiny on map name graphics
- Shop menu titles
Progress:
(6/12/07)
- Hacked shop titles
(6/11/07)
- Hacked all world map names
- Found town name data, hacked all town names
- Map names in patch (map_names.ips)
(6/10/07)
- Started hacking in map names
- May need to find how to change which sprites are loaded for each name
- "CEMETERY" uses 4, only needs 2, "DARK CASTLE" needs 3, only has 2
- Found it, see notes below
(6/08/07)
- Replayed through game, not as far but to map
- Found map sprite data! C819D1 is data for 2nd YA in YADOYA
- First byte is canned size/shape
(6/07/07)
- Played through game a bit (not saved thanks to crash >_<)
- Was working on finding map sprite data, but no$gba crashed
- [30047F8]! to find routine where it ors OAM data together
- Breakpoint on x-pos/y-pos place, found where it's made, on to something?
(6/01/07)
- Finished hacking menu titles, (IPS: menu-titles)
- Started hacking warning screen
- Graphics at 68CED4
- Tilemap at 68E954 (compressed)
(5/31/07)
- Continued Menu Title Hacking
- Found where data 80204000 is calculated, 80004000 is stored at 3004D74
- 3004D74 loaded when game is loaded
- 8217144 routine that stores data
- turns out this is just a sequential thing, probably for sizes or something
- need to find what makes it load this particular one
- FOUND OUT HOW THEY'RE STORED!
(5/30/07)
- Continued
- DMA loads data from 3004410 (- 80) to OAM
- Set [3004410]! breakpoint to find code that loads sprites
- Couldn't find where in ROM loaded from to set up for above code
(5/15/07)
- Continued trying to figure out how menu names are stored
- Uses DMA to load tile data from ROM to tile data area
- [20390e4] is how much tile data is incremented?
- Break on sprite creation, trace there, find how sprites are stored
(4/13/07)
- Looked into changing menu names (item, status, etc.)
- Graphics stored around C15880
- Pieces of each are reused (ex. in aitemu, and sute-tasu, the same te)
- Will need to change where sprites are loaded from, so need to debug routine
(4/11/07)
- Debugging to find how tilemaps are stored
(4/09/07)
- Started translating menus
(3/26/07)
- Finally found a translator! TripleL contacted me on RHDN.
(3/19/07)
- Made dumper dump entire strings but it froze
- Dumped script with WindHex
- Inserted a small bit from translation FAQ for testing
(3/17/07)
- Figured out how pointers work and how strings are loaded
- Started script dumper
- Dumps strings based on string number (gets pointer from table)
- SJS turned unicode chars into Japanese so removed them (probably not used)
(3/15/07)
- Redid table and did a small test dump added two control codes
(3/11/07)
- Got missing Kanji identified
(3/10/07)
- Inserted all identified Kanji into table
- Dumped English font and inserted all English in table
(3/1/07)
- Dumped font for Kanji identification
- Made basic table with kana and some ASCII (still need punctuation)
(2/28/07)
- Intial investigation, found most if not all graphics
- Found some text stuff
- Played game a bit
Long Run Todo:
- Fix and complete table (remove blanks, fix duplicates)
- Find code to control sun meter!
- Find out how pointers work exactly
- Make dumper/inserter
- Dump script
- Translate script
- Insert script
- Translate graphics
- Playtest
Notes:
- Remember screen(s) that appear when no button on main menu after several seconds
- Localize timezones
- Find a way to remove boxes of dialog
Everything that needs to be translated:
- Intro screens
- Title screen
- Setup and start menus
- Name and password entry
- In game menus
- Dark loans
- Forging (?)
- Dialog
- Maps
- Probably more
===================
Text Notes
===================
General Notes:
- Control codes are very interesting! ASCII tags like <LABEL=SABATA>, etc.
- English text seems is ASCII, Japanese is 2 bytes
- 4 byte relative pointers
- Each string ends with [end] (00)
- Dialogs end with <PROC=0>[line]<END>
- Number of strings: 26F8
- Length of dump in bytes: 61DB9 (to DD6B95)
Locations of Interest:
D6B1F8 - Pointer table
D74DDC - Start of text
DCBDAA - test string 21e5
===================
Graphics Notes
===================
General Notes:
- Seem uncompressed for the most part!
- Lots of kanji
Locations of Interest:
65211C - Small font
68B8D4 - Something.. title?
69A4E0 - Kanji
70A230 - HUD
7466DC - HUD (forging?)
750FAC - Kanji
9F8F00 - Main Font (english 8x16)
9FAF00 - Main Font (japanese 16x16)
B37E74 - "Offset" katakana
BE2F04 - Parts of some menu (Link Bike Race?)
BF7790 - Bank menu
C13880 - Some text/menu
C15880 - Menu title graphics
C37664 - Copyright/title
C788F0 - Battle graphics
C81A50 - Map/town names
CE45C0 - Some kanji (?)
D05540 - Game menu?
D11154 - Kanji
Palettes:
822A60 - Main Font
===================
Special Thanks
===================
Kanji Identification
- satsu
- Eien Ni Hen
- Tauwasser
===================
Assembly Notes
===================
821ADD4 - routine that loads pointer from string number (test string: 21e5)
821ADF6 - adds to r0, r2 is pointer offset, r0=8D74DDC
How pointers work:
Loads pointer from pointer table, bitmasks 0x7FFFFFFF and adds to 8D74DDC
Start of pointer table: 8D6B1F8
===================
Other Notes
===================
===================
Menu Translation
===================
Notes:
- Graphics located at 70A230
- Tilemap is loaded from 70C238 at 8216716
- Looks like it's compressed somehow (I think it's custom)
Titles:
aitemu - ITEMS
??? - VALUABLES
??? - SOLAR GUN
suteetasu - STATUS
konfigu - CONFIG
suriipu - SLEEP
seebu - SAVE
mappu - MAP
Status screen:
jikan - TIME
sutando - ? (STAND?)
keiken - EXP
tsugi - NEXT
banku - BANK
roon - LOAN
hinode - SUNRISE (RISE?)
karada - VITL
kokoro - SPRT
chikara - STRG
====================
Menu Title Hacking
====================
- Sprite in question: "suMS" and the status menu
- OAM data: 4000,8020,31F8
- 40 = normal, horizantal shape 00 = y-pos
- 80 = normal, size 32x16; 20 = x-pos
- 31F8 = priority, palette, tile 1F8
Need to change:
- Tiles loaded
- Positions/sizes
- Remove sprites (or just make them all small)
Todo:
- Figure out where and how it stores which tiles loaded for each menu
- Change
Notes:
- It uses "canned" sizes except for x-positions (ors that in)
- Find how it stores which canned one, which x-pos
- 02 = 16x8, 04 = 16x16, 09 = 32x16
Progress:
- Some debugging, need to find where loaded from in ROM
- 300093C ors 1F8 and 3 to make 31F8
- 3 loaded from 3007A8C, 1F8 loaded from 30042E8
- Seems like 1F8 is just part of a loop (of all sprites)
- 3007A58 stores 9, lsl 3 to get 24 which is that canned size
- 8C10F7D is 9, and 8C10F7E is 20 (x-pos)!
- 8C10F82 somehow stores where tiles are loaded from!
- All translated!
- Warehouse sprite data at 8C11445
- # sprites at C10b06
- sprite data offset from 8C10BC4
- [2009Ca4]!
===========================
Map Location Name Hacking
===========================
Word sprite data:
C81730 = SAN MIGUEL start
C81342 = number of cemetery sprites
C81350 = offset from 8C81548
C819D1 is data for 2nd YA in YADOYA
C81A50 graphics data 65211C small font (for reference)
[200A020]!, r4+2 = no of sprites, r4+8 = offset
Town sprite data:
[2009D0C]!
offset from 8C81548
Translations:
San Miguel: (left to right, top to bottom)
Clock Tower
Bank·Loans
Inn
Library
Garage
Item Shop
Accessory Shop
Home
Solar Smith
Weapon Shop
Leave Town
World: (top to bottom, left to right)
White Forest
San Miguel
Cemetery
Dark Castle
Lifeless Town
Arena (?)
Paradise (?)
Ancient Tree
Pirate Island