Jump to content
  • 0

PJ64 Endless Loop Error after altering OoT ROM?


Airikita
 Share

Question

So here's the deal... I edited young Link's model, aka "object_link_child", all I added was E700000000000000 DF00000000000000 at the end to create an empty DList to use as a dummy offset to test something.

 

Anyways, I did nothing else but add the file, and change the table data to point to the new object_link_child model which I inserted at offset 0402DE00.

 

I tested it without changing anything on Link (no DList pointers were added), and the emulator gives me this "endless loop error" pop-up message until I switch the table offsets back to the original object_link_child in the ROM.

 

What am I doing wrong? Can't I change object_link_child at all? I only added one line, and it's giving me problems which won't let me play the game.

 

Nothing in Link's model data pointers were changed at all, everything else was clean.

Link to comment
Share on other sites

7 answers to this question

Recommended Posts

  • 0

So here's the deal... I edited young Link's model, aka "object_link_child", all I added was E700000000000000 DF00000000000000 at the end to create an empty DList to use as a dummy offset to test something.

 

Anyways, I did nothing else but add the file, and change the table data to point to the new object_link_child model which I inserted at offset 0402DE00.

 

I tested it without changing anything on Link (no DList pointers were added), and the emulator gives me this "endless loop error" pop-up message until I switch the table offsets back to the original object_link_child in the ROM.

 

What am I doing wrong? Can't I change object_link_child at all? I only added one line, and it's giving me problems which won't let me play the game.

 

Nothing in Link's model data pointers were changed at all, everything else was clean.

Did you make sure the rom was decompressed before you inserted the file? If it is, it should be 64MB in size.

 

You can use a pre-release of my z64dump2 tool if you need it

it byteswaps, decompresses, and recalculates the CRC of a rom in place (no temp files or anything) just drag and drop.

There's isn't any doc'ing yet like the first tho.

Anywho, you can download it at http://www.mediafire.com/?uujv29jsf7rlemz 

 

 

If haven't already, you should try recalculating the CRC.

Link to comment
Share on other sites

  • 0

Airikita, you only need to change the pointers to object_link_child and object_link_boy in the object table. Right now you're modifying the file table pointers.

 

Object Table

Code Notes - Object Table

 

A quick way to get to the object table pointer for a ZOBJ on an unmodified ROM would be to look for the start and end offsets of the ZOBJ as a hex string and land on the second occurance from the start of the ROM.

Link to comment
Share on other sites

  • 0

If it is the decompressed ROM, you shouldn't have to recalculate the CRC. When you change the file table pointers, did you change the first occurrence  or the second? Because it's a decompressed ROM, you should change the second, not the first.

 

It is definitely decompressed, it's the DEBUG MQ rom.

 

Airikita, you only need to change the pointers to object_link_child and object_link_boy in the object table. Right now you're modifying the file table pointers.

 

Object Table

Code Notes - Object Table

 

A quick way to get to the object table pointer for a ZOBJ on an unmodified ROM would be to look for the start and end offsets of the ZOBJ as a hex string and land on the second occurance from the start of the ROM.

I changed both file data pointers, but I get the same error on PJ64.

 

I am able to run it on Nemu64, so I made the changes according to SanquinettiMod's info on Link's pointers for the Hookshot, pointed all the DLists to the empty DList in the new file created, yet it still crashes. Technically it shouldn't crash when I have a functioning DList.

 

I followed these guidelines:

 

 

To use the hookshot:

0xC348B8: change 0014 to 0015

(this will break it for adult Link though)

Display list pointers:

Hookshot in hand: 0xB9D07C and 0xB9D084

FPS view: 0xB9D0D0

Spike: 0xC3473C (3C19 xxxx 2739 xxxx)

Chain: 0xC34858 (3C0F xxxx 25EF xxxx)

Circle: 0xB07E54 (3C0E xxxx 8328 001E 25CE xxxx)

 

EDIT: even when I change the DLists to young Link's hand, it crashes after the view comes to FPS:

Posted Image

(this screenshot was taken when it crashed)

Link to comment
Share on other sites

  • 0

You're only supposed to be changing the object table pointers; file table pointers are a no-no (leave them as they originally were).

I fixed that problem, but now I have a new problem (above your comment). I don't get the endless loop error anymore.

Link to comment
Share on other sites

 Share

×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.