Jump to content

Leaderboard

Popular Content

Showing content with the highest reputation on 10/23/2017 in all areas

  1. 2 points
  2. Thank you Brian for yet another great job with this tournament!
    1 point
  3. I know there is a thread about the Pointers for this section (TEAMS' NAMES), but I dont know why the search for my browser sometimes freezes, So I could not find it in the Docs-Directory either. I think we all got used to the TSB-TOOLS/EDITORS, since they do all the dirty work for us. I dont have to worry about these pointers anymore. You also can trust all these editors when you want to change something within this section of the rom. These Editors help us creating some pointers "automatically". And most of these tools have been programmed so that you can not make mistakes when inputting the names. This means some editors wont let you "exceed" the "allowed" number for name's characters, simply because they will crash the game at some point. (If memory is exceeded or something like that..) Or maybe because the game was just not programmed that way: You can see here that you can input a longer name, But it just doesnt make sense ON SOME OTHER SCREENS: The game was programmed so that only 3 characters appear "correctly" on this screen. The pointers for this section are just above the offset you mention: They start at offset x1FC10, where it says $F0 BC. F0BC is the pointer for offset x1FD00. As you can see, pointers in this section "point" to their corresponding offset just by: 1. switching the bytes from the pointer: F0 BC -> BCF0, 2. then add the HEX value of 14010: BCF0+14010= 1FD00. Now at offset 1FD00 is located the first "text" that the rom will read for this section, which is "BUF." Right after the first pointer, comes the second pointer, it indicates F4BC, which points to offset 1FD04. On the "TEXT-window" from your HEX-Editor it reads "IND." Now The lenght of these words is determined by the pointers themselves: if you have F4BC (IND) and you have F0BC (BUF) You can see each pointer has a lenght of 4 characters; (BCF4 - BCF0 = 04) This means the game will read only 4 characters (letter, number, period, commas, etc) and then go to the next name to repeat the procedure. The important thing here is that you to know that the game reads THE POINTERS first to know the lenght of each text. Because as you can see the "CITY NAMES" (starting at offset 1FD7C with "BUFFALO") are no longer 4 characters each. The LENGHT is based on the "difference" of 2 "consecutive-pointers": If you want to change the length of the text BUFFALO you will first need to know its location. (you know that your TEXT-Window will show the offset just by clicking the first letter of your text): This text: "BUFFALO" is located at offset x1FD7C, which means by reverting the process that the "pointer" you shall find is: 2. Substract hex14010: 1FD7C -14010= BD6C, 1. switch resulting bytes: BD6C -> 6C BD. This is the pointer that determines the text location: 6CBD. * (You can go to offset x1FC10 and "search/find" this pointer) it is located at offset 1FC50. Now if you wanted to make text "BUFFALO" longer, simply add the number of letters you need to the NEXT/FOLLOWING POINTER. which is 73BD at offset x1FC52. I will re-name my city "BUFFALOES" so I will need 2 more letters: It read 73BD (which was the pointer to start reading the next team: "INDIANAPOLIS"), but since I will be needing 2 more characters for BUFFALOES, it will now read 75BD. Then write "BUFFALOES" on the TEXT window. **BUT by adding 2 characters to your first city, you also "shortened" the next city by 2 characters: You will need "adjusments" for ALL THE REST OF THE TEAMS. This is why TSB-EDITORS are so widely used!.
    1 point
×
×
  • Create New...