These blocks will teleport Mario to a specified secondary entrance, independent of any screen exits within the level. Exits are defined in a table within the block itself, so only one copy of each block needs to be inserted.
There are two variants included: a regular block and a door block. Additionally, a patch which stores the current level number to $010B, which is necessary for these blocks to function, is included in case the user hasn't inserted any other patches with that functionality.
This version contains a bugfix that enables functionality for large warp tables.
Seem to not work with bigger secondary exit numbers (i.e. 14FF), chose a lower number and it worked.
The reason for this is that in order for LM to not break existing resources and probably it's own code as well it had to use the unused bits to fit the secondary exit number and couldn't rearrange the bits.
This means bits 9-12 of the secondary exit number had to be moved to the unused bits 13-16 which gives you 0xA0FF for the 0x14FF secondary entrance.
And just because why not, here's a quick function that should put the real number into the format LM expects: Untested™
Code
function secondary_exit(num) = num&0x1FF|((num&0x1E00)<<3)
Follow Us On