If you appreciate the work done within the wiki, please consider supporting The Cutting Room Floor on Patreon. Thanks for all your support!

Notes:Clock Tower (SNES)

From The Cutting Room Floor
Jump to navigation Jump to search

This page contains notes for the game Clock Tower (SNES).

Descriptions and ROM offsets for graphics

Add 200 if your ROM has a header.

List of animation offsets: 030000

Array with two bytes for each animation telling how far below 030000 that animation is defined. Animation IDs above 024D count from 040000.

Animations: 0308DA

Six bytes for each frame.

Byte 0,1 Sprite ID to use on this frame
Byte 2 Duration of current frame
Byte 3 X position to move to (From where the animation started)
Byte 4 Y position to move to (From where the animation started)
Byte 5 Flags (Flip entire sprite etc)

Every animation ends with FFFF.

Sprite tiles: 050000

This is where all the uncompressed sprite tiles are stored. The game loads four 8x8 tiles at a time.

List of sprite assembly offsets: 220000

Array with two bytes for each sprite telling how far below 220000 that sprite is defined. Sprite IDs above 07B1 count from 230000 and IDs above 1189 count from 240000.

Sprite assembly: 22264E

Five bytes for each tile in the sprite.

Byte 0 Flags for current tile (Flipping etc)
Byte 1,2 Tile ID of current tile (One ID for each 16x16 tile at 050000) or FFF0-FFF7 to use one of the 8 shadow tiles (0-7) in VRAM.
Byte 3 Y position of current tile
Byte 4 X position of current tile

Every sprite ends with FFFF.

Palettes

Palettes are somewhere beyond 010000. Jennifer's normal palette is at 01E812.

Room list

At 86FC in a headerless ROM there's a list of offsets for the content of every room such as which backgrounds and objects to load.

The current room ID can be read from 7FCF3D. At 7FCF25 is the room that gets saved to 0012 in SRAM.

ID Offset Room ID Offset Room ID Offset Room
00 C1C1 Elevator 14 A799 Hallway (Rubble & Elevator) 28 AB03 Cave (Ladder)
01 A1E7 Large yellow hall 15 0000 Empty slot 29 0000 Empty slot
02 9F7A Outside rubble 1F blue 16 A7E4 Hallway (Rubble, other end) 2A 9A78 Cave (Water)
03 A59E Living room 17 C7E2 Animal room 2B A285 Cave (Elevator)
04 BFB1 First bedroom 18 0000 Empty slot 2C 9B05 Cave (Cradle)
05 A0B8 First bathroom 19 A6DB Hallway (Outside rubble 1F, purple) 2D 93B4 Tower top
06 A005 Hallway (Outside rubble 2F blue) 1A A46B Small library 2E A2EE Machine room, below ladder
07 9C6B Tower top (Credits) 1B C075 Ceremony room 2F 969B Machine room
08 0000 Empty slot 1C BE96 Second bathroom 30 A8D6 Phone room
09 92EE Outside, below tower 1D AF14 West wing hallway (Purple) 31 0000 Empty slot
0A AA62 Large green hall 1E 8E5A Trophy room 32 A98A Mural room
0B 0000 Empty slot 1F A543 Second storage 33 0000 Empty slot
0C A331 Kitchen 20 99D2 Sealed room 34 9CC3 Hallway (Three doors, blue)
0D 8DEF Garage 21 0000 Empty slot 35 9D70 Hallway (Below tower, leads outside)
0E 0000 Empty slot 22 A733 Hallway (Outside rubble 2F, purple) 36 9ED2 Outside kitchen and garage
0F C139 First storage 23 CB3E Library with fireplace & window 37 0000 Empty slot
10 A675 Hallway (Door to courtyard) 24 925D Child's bedroom 38 B259 Hallway (Three doors 1F, purple)
11 0000 Empty slot 25 C2E1 Music room 39 B4DB Hallway (Three doors 2F, purple)
12 9834 Shed 26 0000 Empty slot 3A B7A2 Hallway (Statues)
13 992A Courtyard 27 9BB5 Mannequin room

Sprite objects and animation list

The sprite objects such as the player, NPCs and room objects are located at 7E1870 in RAM. Every object starts with E2 and from there you can add these numbers to find the following values:

Offset Value Offset Value Offset Value
02 Palette & flipping (One byte) 0B Y position in room (Two bytes) 21 Animation timer (One byte)
03 Sprite ID (Two bytes) 1D Offset of current animation frame (Two bytes) 26 Offset of first frame in current animation (Two bytes)
09 X position in room (Two bytes) 1F Animation page (One byte)

To display an animation whose ID is above 024D, "animation page" must be set to C4. Otherwise, set it to C3. All movement like running or climbing is part of the animition frames. Bobby will use two objects simultaneously to display his body and scissors. Dan does the same for the two halves of his body.

This is the animation list found at 30000 (with no header):

Clock Tower

ID Offset Description ID Offset Description ID Offset Description
0000 08DA Player set 1 start (Idle, facing front) 017A A9B4 02F4 4038
0001 08E2 017B AA40 02F5 4124
0002 08EA 017C AA48 02F6 41F8
0003 08F2 017D AB04 02F7 42CC
0004 08FA 017E AB0C 02F8 42E0
0005 0902 017F AB14 02F9 431E
0006 0910 0180 AB22 02FA 43B0
0007 0936 0181 AB3C 02FB 445A
0008 0956 0182 AB5C 02FC 44B0
0009 095E 0183 ABC4 02FD 44B8
000A 09A2 0184 ABDE 02FE 450E
000B 09D4 0185 ABEC 02FF 45E2
000C 0A30 0186 ABF4 0300 469E
000D 0A68 0187 AC20 0301 4730
000E 0A9A 0188 AC70 0302 476E
000F 0ACC 0189 AC8A 0303 47A0 Bobby set 4 end
0010 0AFE 018A ACB0 0304 47C0 Scissors set 4 start
0011 0B06 018B ACF4 0305 47C8
0012 0B0E 018C AD20 0306 47EE
0013 0B58 018D AD70 0307 47F6
0014 0B8A 018E AD78 0308 4804
0015 0BBC 018F AD92 0309 480C
0016 0C0C 0190 ADB8 030A 4814
0017 0C4A 0191 ADD2 030B 481C
0018 0C88 0192 ADEC 030C 4824
0019 0CC6 0193 AE12 030D 482C
001A 0D10 0194 AE38 030E 4834
001B 0D54 0195 AE40 030F 4860
001C 0D9E 0196 AE66 0310 48B0
001D 0DE2 0197 AEC8 0311 492A
001E 0E32 0198 AEDC Simon start 0312 497A
001F 0E7C 0199 AEE4 0313 49FA
0020 0EF0 019A AEFE 0314 4A80
0021 0F5E 019B AFEA Simon end 0315 4B54
0022 0FA8 019C B004 0316 4B74
0023 103A 019D B060 Player set 3 start 0317 4C06
0024 107E 019E B0BC 0318 4C56
0025 10F2 019F B0F4 0319 4D48
0026 1112 01A0 B13E 031A 4E34
0027 114A 01A1 B18E 031B 4F20
0028 11A6 01A2 B1C6 031C 5000
0029 124A 01A3 B1FE 031D 50EC
002A 1306 01A4 B248 031E 51C0
002B 1398 01A5 B292 031F 5294
002C 13D6 01A6 B34E 0320 52A8
002D 1414 01A7 B40A 0321 52E6
002E 144C 01A8 B49C 0322 5378
002F 1466 01A9 B4E6 0323 5422
0030 1480 01AA B53C 0324 5478
0031 14E2 01AB B58C 0325 5480
0032 150E 01AC B5D6 0326 54D6
0033 1552 01AD B602 0327 55AA
0034 15F0 01AE B63A 0328 5666
0035 165E 01AF B678 0329 56F8
0036 1690 01B0 B6F2 032A 5730
0037 177C 01B1 B72A 032B 5762
0038 1808 01B2 B732 032C 5782 Scissors set 4 end
0039 189A 01B3 B770 032D 57A2
003A 193E 01B4 B7F0 032E 57BC
003B 19D0 01B5 B7F8 032F 5860
003C 1A7A 01B6 B800 0330 588C
003D 1B12 01B7 B87A 0331 592A
003E 1BFE 01B8 B882 0332 5980
003F 1C6C 01B9 B8C0 0333 59D6 Player set 4 start
0040 1D58 01BA B940 0334 59DE
0041 1DC6 01BB B9A2 0335 5A22
0042 1E94 01BC B9AA 0336 5AA2
0043 1F7A 01BD BA24 0337 5B04
0044 204E 01BE BA62 0338 5B0C
0045 209E 01BF BAA0 0339 5B86
0046 2106 01C0 BB3E 033A 5BDC
0047 215C 01C1 BBDC 033B 5C6E
0048 21CA 01C2 BC80 033C 5CB2
0049 22A4 01C3 BD1E 033D 5CCC
004A 2390 01C4 BDBC 033E 5CE6
004B 23C2 01C5 BE5A 033F 5D30
004C 2442 01C6 BE9E 0340 5D6E
004D 2486 01C7 BEE2 0341 5D94
004E 2524 01C8 BF68 0342 5DA2
004F 2574 01C9 BFCA 0343 5DAA
0050 25C4 01CA C050 0344 5DB2
0051 260E 01CB C0A6 0345 5DBA
0052 2682 01CC C186 0346 5DCE
0053 26B4 01CD C272 0347 5E12
0054 26FE 01CE C35E 0348 5E56
0055 2736 01CF C438 0349 5E88
0056 2744 01D0 C524 034A 5EDE
0057 278E 01D1 C610 034B 5F10
0058 27F6 01D2 C65A 034C 5F54
0059 2828 01D3 C68C 034D 6046
005A 2878 01D4 C6BE 034E 60CC
005B 28C8 01D5 C708 034F 616A
005C 2918 01D6 C7B8 0350 625C
005D 29C2 01D7 C7D2 0351 62AC
005E 29F4 01D8 C7EC 0352 62E4
005F 2A20 01D9 C842 0353 6316
0060 2A88 01DA C88C 0354 6348
0061 2ABA 01DB C894 0355 637A
0062 2AF8 01DC C89C 0356 63AC
0063 2BC0 01DD C8C2 0357 63D2
0064 2C88 01DE C8F4 0358 63F2
0065 2CA2 01DF C902 0359 6436
0066 2CBC 01E0 C91C 035A 6462
0067 2D5A 01E1 C936 035B 648E
0068 2DFE Player set 1 end 01E2 C950 035C 64CC
0069 2E4E Bobby set 1 start 01E3 C97C 035D 6504
006A 2E56 01E4 C99C 035E 655A
006B 2E88 01E5 C9C8 035F 65C2
006C 2EBA 01E6 C9F4 0360 65E8
006D 2EC8 01E7 CA26 0361 661A
006E 2ED0 01E8 CA4C 0362 669A
006F 2F02 01E9 CA8A 0363 66CC
0070 2F3A 01EA CAC8 0364 6752
0071 2F66 01EB CB12 0365 6784
0072 2FEC 01EC CB3E 0366 6816
0073 2FF4 01ED CB5E 0367 68AE
0074 3020 01EE CBA2 0368 68F2
0075 3070 01EF CBB0 0369 6954
0076 30F0 01F0 CC4E 036A 69B6
0077 3140 01F1 CCE6 036B 6A3C
0078 31E4 01F2 CD8A 036C 6AC2
0079 32D0 01F3 CE1C 036D 6AF4
007A 32E4 01F4 CEC0 Player set 3 end 036E 6B26
007B 3322 01F5 CF6A 036F 6B52
007C 33B4 01F6 CF7E 0370 6BEA
007D 34A6 01F7 CFC8 0371 6C28
007E 3598 01F8 D05A 0372 6C42
007F 368A 01F9 D14C 0373 6CE0
0080 3692 01FA D1FC 0374 6D30
0081 372A 01FB D22E 0375 6DA4
0082 37CE 01FC D248 0376 6DBE
0083 3890 01FD D292 0377 6DF6
0084 38E0 01FE D2EE 0378 6DFE
0085 38FA 01FF D32C 0379 6E36
0086 3962 0200 D388 037A 6E56
0087 3A30 0201 D390 037B 6E7C
0088 3AEC 0202 D43A 037C 6E9C
0089 3BAE 0203 D44E 037D 6EB6
008A 3C9A 0204 D4AA 037E 6ED0
008B 3D3E 0205 D4E2 037F 6F20
008C 3DF4 0206 D508 Bobby set 2 start 0380 6F64 Player set 4 end
008D 3EBC 0207 D5DC 0381 6FF6
008E 3F96 0208 D6A4 0382 7010
008F 401C 0209 D77E 0383 7042
0090 408A 020A D84C 0384 7098
0091 40CE 020B D920 0385 70BE
0092 414E 020C D9E8 0386 70E4
0093 4228 020D DA62 0387 70F8
0094 42C0 020E DAD0 0388 710C
0095 42C8 020F DB6E 0389 7120
0096 42EE 0210 DBE2 038A 7134 Ann fall start
0097 4302 0211 DC6E 038B 715A
0098 4364 0212 DCEE 038C 716E
0099 43D8 0213 DDBC 038D 71A6
009A 44BE 0214 DE54 038E 71BA Ann fall end
009B 4574 Bobby set 1 end 0215 DEF2 038F 71DA
009C 4618 Scissors set 1 start 0216 DF66 0390 71F4
009D 4620 0217 DFE0 0391 7220
009E 4646 0218 E05A 0392 726A
009F 466C 0219 E12E 0393 7272
00A0 467A 021A E1C6 0394 7298
00A1 4682 021B E2A0 0395 72B2
00A2 46AE 021C E31A 0396 72E4
00A3 46DA 021D E39A 0397 72FE
00A4 4706 021E E444 0398 738A
00A5 478C 021F E512 0399 73E0
00A6 4794 0220 E5AA 039A 742A
00A7 47C0 0221 E684 039B 7468
00A8 4810 0222 E71C 039C 7470
00A9 488A 0223 E7C0 039D 7478
00AA 48DA 0224 E840 039E 748C
00AB 497E 0225 E914 039F 74AC
00AC 4A52 0226 E9F4 03A0 74EA
00AD 4A66 0227 EACE 03A1 7510
00AE 4AA4 0228 EB48 03A2 7524
00AF 4B30 0229 EBC8 03A3 7538
00B0 4C22 022A EC4E 03A4 754C
00B1 4D14 022B ECEC 03A5 7560
00B2 4E06 022C EDB4 03A6 7580
00B3 4E0E 022D EE9A 03A7 75C4
00B4 4EA6 022E EF3E 03A8 761A Player set 5 start
00B5 4F38 022F F00C 03A9 765E
00B6 4FE2 0230 F0B0 03AA 769C
00B7 5032 0231 F13C 03AB 76E6
00B8 504C 0232 F1B6 03AC 772A
00B9 50A2 0233 F230 03AD 7768
00BA 5170 0234 F2B0 03AE 778E
00BB 522C 0235 F330 03AF 77AE
00BC 52EE 0236 F344 03B0 77CE
00BD 53DA 0237 F358 03B1 77E8
00BE 547E 0238 F36C 03B2 7802
00BF 5534 0239 F380 03B3 781C
00C0 55FC 023A F406 03B4 7836
00C1 56D6 023B F48C 03B5 7874
00C2 575C 023C F512 03B6 78B2
00C3 57CA 023D F592 03B7 78CC
00C4 580E 023E F600 Bobby set 2 end 03B8 78E6
00C5 588E 023F F67A Scissors set 2 start 03B9 7918
00C6 5968 0240 F74E 03BA 795C
00C7 5A00 0241 F816 03BB 7988
00C8 5A08 0242 F8F0 03BC 79B4
00C9 5A2E 0243 F9BE 03BD 79EC
00CA 5A42 0244 FA92 03BE 7A1E
00CB 5AA4 0245 FB5A 03BF 7A50
00CC 5AE2 Scissors set 1 end 0246 FBD4 03C0 7A76
00CD 5B7A 0247 FC42 03C1 7AA8
00CE 5BA0 0248 FCC2 03C2 7AE0
00CF 5BCC 0249 FD36 03C3 7B12
00D0 5BD4 024A FDC2 03C4 7B44 Player set 5 end
00D1 5BEE 024B FE42 03C5 7B94
00D2 5BF6 024C FF10 03C6 7B9C
00D3 5C04 024D FFEA 03C7 7BEC
00D4 5C42 024E 00C4 03C8 7C1E
00D5 5C6E 024F 0138 03C9 7C56
00D6 5C94 0250 01B2 03CA 7C88
00D7 5CBA 0251 022C 03CB 7CA2
00D8 5CC8 0252 0300 03CC 7CBC
00D9 5CDC 0253 03E0 03CD 7CD6
00DA 5CF0 0254 04BA 03CE 7CEA
00DB 5D04 0255 0534 03CF 7CFE
00DC 5D18 0256 05B4 03D0 7D1E
00DD 5D20 0257 063A 03D1 7D44
00DE 5D34 0258 0708 03D2 7D76
00DF 5D4E 0259 07E2 03D3 7DD2
00E0 5D62 025A 08BC 03D4 7E34
00E1 5DD6 025B 0930 03D5 7E4E
00E2 5EC2 025C 09B0 03D6 7E86
00E3 5F4E 025D 0A30 03D7 7EDC
00E4 600A 025E 0B04 03D8 7EE4
00E5 6024 025F 0BE4 03D9 7F1C
00E6 603E 0260 0CBE 03DA 7FBA
00E7 6058 0261 0D38 03DB 7FE0
00E8 6102 0262 0DB8 03DC 7FF4
00E9 6170 0263 0E3E 03DD 801A
00EA 61EA 0264 0F0C 03DE 8046
00EB 6258 0265 0FD4 03DF 8078
00EC 62DE 0266 10BA 03E0 80A4
00ED 634C 0267 1134 03E1 80CA
00EE 63C0 0268 1202 03E2 8120
00EF 63E0 0269 1288 03E3 81A6
00F0 642A 026A 12F6 03E4 81F0
00F1 6450 026B 1370 03E5 8204
00F2 64B2 026C 13EA 03E6 8218
00F3 64E4 Player set 2 start 026D 146A 03E7 8232
00F4 65CA 026E 14EA 03E8 8282
00F5 66AA 026F 14FE 03E9 82A2
00F6 6748 0270 1512 03EA 82E6
00F7 67EC 0271 1526 Scissors set 2 end 03EB 8366
00F8 68C0 0272 153A Bobby set 3 start 03EC 83B0
00F9 6988 0273 1542 03ED 8400
00FA 6A0E 0274 1574 03EE 844A
00FB 6A88 0275 15A6 03EF 8494
00FC 6B44 0276 15B4 03F0 8556
00FD 6BF4 0277 15BC 03F1 8618
00FE 6CAA 0278 15EE 03F2 8650
00FF 6D54 0279 1626 03F3 86D0
0100 6E22 027A 1652 03F4 86F0
0101 6F14 027B 16D8 03F5 876A Dan start
0102 7006 027C 16E0 03F6 87EA
0103 7086 027D 170C 03F7 886A
0104 7130 027E 175C 03F8 88A8
0105 71DA 027F 17D6 03F9 88E6
0106 72C6 0280 1826 03FA 88FA
0107 7364 0281 186A 03FB 890E
0108 744A 0282 1944 03FC 8940
0109 74D6 0283 1A06 03FD 89FC
010A 75A4 0284 1A8C 03FE 8A4C
010B 7678 0285 1B3C 03FF 8A66
010C 7764 0286 1C28 0400 8AE6
010D 7802 0287 1C3C 0401 8B00
010E 78E8 0288 1C7A 0402 8B6E
010F 7974 0289 1D1E 0403 8BE2
0110 7A42 028A 1DE0 0404 8C98
0111 7B0A 028B 1E30 0405 8D0C
0112 7BE4 028C 1E38 0406 8D80 Dan end
0113 7CB8 028D 1EA0 0407 8E60
0114 7D8C 028E 1F6E 0408 8F3A
0115 7E54 028F 202A 0409 8FF6
0116 7F1C 0290 2116 040A 90B8
0117 8008 0291 21BA Bobby set 3 end 040B 90F6
0118 8094 0292 21E0 Scissors set 3 start 040C 911C
0119 8114 0293 21E8 040D 913C
011A 81CA 0294 220E 040E 915C
011B 826E 0295 2234 040F 9170
011C 8324 0296 2242 0410 918A
011D 83C8 0297 224A 0411 91E6
011E 8496 0298 2276 0412 92C6
011F 8582 0299 22A2 0413 92CE
0120 8626 029A 22CE 0414 92D6
0121 86AC 029B 2354 0415 92F6
0122 8762 029C 235C 0416 932E
0123 8812 029D 2388 0417 934E
0124 8904 029E 23D8 0418 9356
0125 89A2 029F 2452 0419 9442
0126 8A7C 02A0 24A2 041A 9510
0127 8B26 02A1 24E0 041B 954E
0128 8BEE 02A2 25B4 041C 960A
0129 8CBC 02A3 2676 041D 9696
012A 8DAE 02A4 26F6 041E 96F8
012B 8E4C 02A5 278E 041F 9712
012C 8F26 02A6 2862 0420 97E0
012D 8FD0 02A7 2876 0421 9848
012E 9098 02A8 28B4 0422 9862
012F 9160 02A9 2946 0423 992A
0130 91C8 02AA 29F0 0424 9974
0131 922A 02AB 2A40 0425 99D0
0132 9238 02AC 2A48 0426 9A32
0133 925E 02AD 2A9E 0427 9A8E
0134 926C 02AE 2B6C 0428 9AA8
0135 929E 02AF 2C28 0429 9AC2
0136 92BE 02B0 2D14 042A 9ADC
0137 92DE 02B1 2DB8 Scissors set 3 end 042B 9AF6
0138 9310 02B2 2DDE 042C 9B10
0139 9348 02B3 2E94 042D 9B2A
013A 9380 02B4 2F14 042E 9B68
013B 93AC 02B5 2F1C 042F 9B82
013C 93DE 02B6 2F24 0430 9BB4
013D 9410 02B7 2F2C 0431 9BCE
013E 9436 02B8 2F34 0432 9BFA
013F 9456 02B9 2F5A 0433 9C0E
0140 947C 02BA 2F74 0434 9C46
0141 949C 02BB 2F7C 0435 9C8A Mary start
0142 94CE 02BC 2F96 0436 9C92
0143 94F4 02BD 2FB0 0437 9CB8
0144 9586 02BE 301E 0438 9CDE
0145 963C 02BF 303E 0439 9D04
0146 9644 02C0 3058 043A 9D0C
0147 9664 02C1 307E 043B 9D44
0148 96EA 02C2 3098 043C 9D88
0149 9770 02C3 30B2 043D 9DC6
014A 97EA 02C4 30C6 043E 9DCE
014B 9864 02C5 3146 043F 9DF4
014C 986C 02C6 3190 0440 9E44
014D 9874 02C7 321C 0441 9E76
014E 987C 02C8 323C 0442 9ED8
014F 9884 02C9 3262 0443 9EFE
0150 98D4 02CA 326A 0444 9F4E
0151 992A 02CB 3296 0445 9FCE
0152 9980 02CC 32B0 0446 9FDC
0153 9A00 02CD 32CA 0447 9FFC
0154 9A92 02CE 3308 0448 A00A
0155 9B30 02CF 3394 0449 A066
0156 9B98 02D0 339C 044A A0C8
0157 9C06 02D1 3458 044B A166
0158 9CA4 02D2 34CC 044C A17A
0159 9D3C 02D3 3540 044D A1BE
015A 9DC8 02D4 356C 044E A1F0
015B 9E36 02D5 35D4 044F A23A
015C 9EB6 02D6 3612 0450 A24E
015D 9F48 02D7 369E 0451 A2F8
015E 9FDA 02D8 36A6 0452 A330
015F A00C 02D9 3762 0453 A3DA
0160 A09E 02DA 37AC 0454 A418
0161 A130 02DB 37BA 0455 A4A4
0162 A1B6 02DC 37D4 Bobby set 4 start 0456 A4D0
0163 A21E 02DD 37DC 0457 A544
0164 A274 02DE 380E 0458 A56A Jennifer in disguise walking
0165 A2EE 02DF 3816 0459 A59C Jennifer in disguise falling
0166 A356 02E0 3824 045A A5B6 Jennifer in disguise standing
0167 A3E2 02E1 382C 045B A5BE Mary end
0168 A474 02E2 3834 045C A5FC Laura start
0169 A4D6 02E3 383C 045D A676
016A A54A 02E4 3844 045E A6D2
016B A5BE 02E5 384C 045F A794
016C A650 02E6 3854 0460 A79C Laura end
016D A66A Player set 2 end 02E7 3880 0461 A7A4
016E A70E 02E8 38D0 0462 A84E
016F A722 02E9 394A 0463 A93A Ann start
0170 A736 02EA 399A 0464 A9B4
0171 A750 02EB 3A1A 0465 AA10
0172 A76A 02EC 3AA6 0466 AAD2 Ann end
0173 A7E4 02ED 3B7A 0467 AADA Lotte start
0174 A85E 02EE 3B9A 0468 AB00
0175 A8D8 02EF 3C32 0469 AB20
0176 A8F8 02F0 3C8E 046A AB70 Lotte end
0177 A918 02F1 3D80 046B AB7E Unused shelf
0178 A938 02F2 3E6C 046C AB86 Shelf facing left
0179 A976 02F3 3F58

Game text

At 020010 is a table of offsets to lines of dialogue. The offsets begin at the start of the table. The text is in Japanese, but the entries are helpfully in the same order as the Aeon Genesis translation patch, so this can be used for cross-referencing.

Additional dev text

Some dev text that might not be notable enough to include in the article.

TASK
S_TASKCYCLE
S_INTERRUPT
VINTTIMEOVER
REFRESHCNT
MP5STATUS
SYSTEMSTATUS
S_PROCESS_TIP
S_BACKGROUND
S_GROUPA
S_GROUPB
S_GROUPC
SRAMCONDITION
SSECSTATUS
MOZAIKU JOB
ENABLE
DISABLEMULTIPLE ATTACH
#1 INT STACK OVER FLOW
#2 HDMA CHANNEL FLOW
#4 CHILD PROC OVER FLOW
#5 CHECKMULTI IN BLANK
#6 MULTIPLE NMI RESERVE
#7 OUT OF DY-SPR RANGE
S_TASKCYCLE
S_INTERRUPT
VINTTIMEOVER
REFRESHCNT
MP5STATUS
SYSTEMSTATUS
S_PROCESS_TIP
S_BACKGROUND
S_GROUPA
S_GROUPB
S_GROUPC
SRAMCONDITION
BDSSECSTATUS
MOZAIKU JOB
ENABLE
DISABLE
DEBUG MODE
SYSTEM2 VERSION
ROM
21MODE(HIGHSPEED)
TV
NTSCUSERHOT
USERRAM
USERBRK
SRAMSIZE
16K BITS
ATTACH
SOUND QUEUE
MULTI BUFFER
PUSH B
MULTIPLE ATTACH
#1 INT STACK OVER FLOW
#2 HDMA CHANNEL FLOW
#4 CHILD PROC OVER FLOW
#5 CHECKMULTI IN BLANK
#6 MULTIPLE NMI RESERVE
#7 OUT OF DY-SPR RANGE

Unused Hotspot Type

The code at $C05CC4 is run when a hotspot is clicked, checking RAM address $70 to find what the goal type is.

$72,$74,$76 and $78 have the hotspot arguments (specific to the goal type in question).

For type 0000 (Unused), $C05CCB is reached.

For type 0001 (Simple goal), $C05CE5 is reached.

For type 0003 (Left/ right goals), $C05CFE is reached.

Accessing the Debug Menu

Use the codes C0212B5A and C0212C21 to start the game in a debug loop. When in a room, you can press SELECT or L+Y for the following:

SELECT

Should print:

C X=%WD($%WH) Y=%WD($%WH)
J X=%WD($%WH) Y=%WD($%WH)
F X=%WD($%WH) Y=%WD($%WH)

... but the printing routine ($80E79D) is dummied out. The values loaded to $64-$6e are the following:

$64 Cursor room X
$66 Cursor room Y
$68 Player room X
$6a Player room Y
$6c Camera room X
$6e Camera room Y

L+Y

Enters the debug menu (Starting with "STRENGTH"). It works (or tries to) by printing text and asking for a value to be entered. The routine that gets a value ($80E8EC) is dummied out to always return $000A ($0010 hidden behind a bra instruction). You'll therefore need to set an execution breakpoint for address $80E8EF and set A to whatever you want to give as a response to the menu. Some commands will ask for a second value to be specified, such as MUSIC.

Without breakpoints, you'll just trigger option 10 instantly (ES2 hallway with Mary).

Free cam

Can be toggled in the menu, or set manually by changing RAM address $7F013E (only checked in debug loop).

Room $FFFF

Trying to load room $FFFF triggers code $C015A2 that asks for an ID to load instead.