This UberASM will enable a menu on the OW to teleport to different places. Each warp option is unlocked after a specific event has run, so you can, for example, set up a warp point for each world in the hack and allow faster backtracking, but you can also use it to unlock new places after beating a certain level. By default the menu is opened with the Select button, since it's the only unused button on the OW.
There's a lot of customizations you can use in the defines file: position of the text on screen, if to enable the warp counter or not (and position of the counter), palettes, sound effects, how many options to display at once, and of course name and destination of each warp, along with which event unlocks them.
It uses 6 + <Number of possible warps> bytes of freeram, and you can have up to 253 warps (pay attention to the freeram usage, though!). It includes a modified GFX28 file, to be inserted in LG1 in all submaps, to insert if enabling the counter (it contains the "/" tile).
It must be inserted in game mode 0E. If using more codes in this game mode, make sure to use the %call_library() macro to call it, as explained in the FAQ, as just doing JSL will mess up the table reads.