SM64 Enhanced Text Engine
#3
Code:
//7A cleanup buffer
Code:
//82 enable cutscene, 1 byte - cutscene index (zero to disable all cutscenes, others see my documentation at https://sites.google.com/view/supermario64romhacks/tweaks-and-tutorials?authuser=0)

//83 non buffer padding (basically for asm modifying the string)
Code:
//8A change camera location, 6 bytes - 2 bytes x, 2 bytes y, 2 bytes z (set once on the would be character it would draw, aka if a string goes like "mari[83 cmd]o" then the camera would be set when the "i" would be drawn to the screen)

//8B change camera focus, 6 bytes - 2 bytes x, 2 bytes y, 2 bytes z (set once on the would be character it would draw, aka if a string goes like "mari[83 cmd]o" then the camera would be set when the "i" would be drawn to the screen)

//8C set camera speed, 8 bytes - 2 bytes VIs, 2 bytes x, 2 bytes y, 2 bytes z (sets the change in camera values. Use to set a speed after defining a location. This means if you set y spd to 10, it will continue to go up until you change the location  all speeds are units/every second VI)

//8D set camera focus speed, 8 bytes - 2 bytes VIs, 2 bytes x, 2 bytes y, 2 bytes z (sets the change in camera values. Use to set a speed after defining a location. This means if you set y spd to 10, it will continue to go up until you change the location  all speeds are units/every second VI)

//8E lock camera on object, 4 bytes - *object
I've added these new cmds. The function addresses are the same. As promised, I have updated the text encoding tool. 

You may be wondering what the buffer is, I have written this excerpt for it:
Quote:Basically certain cmds like the keyboard, camera cmds, pause and remove on VI make use of a buffer so that the cmds don't repeat every frame. What happens is the cmds are replaced by padding, and their location are stored in the buffer which is at 807f6000 and can basically theoretically be 0xE00 bytes long. This cmd cleans the buffer, which re-enables those cmds. This means if the current box has a pause or keyboard and you use this cmd, it will play again. I advise using this before a jump string cmd or for weird mindtricks.
If you want to leave padding for a possible self modifying string, then use the 0x83 cmd, not the 0x9D padding for buffer cmd.
This will probably be the last update for a while.

This update takes from 0x1203800 to around 0x1205700 in rom, plus something around 0x1202dc0 and 0x1205b00 because I never bothered to optimize those functions. You can optimize them yourself if need be.

As always, please notify me of any bugs.


Attached Files
.zip   text engine shiz camera update.zip (Size: 18.98 KB / Downloads: 532)
Reply


Messages In This Thread
SM64 Enhanced Text Engine - by jesusyoshi54 - 07-27-2019, 12:29 PM
RE: SM64 Enhanced Text Engine - by jesusyoshi54 - 08-17-2019, 06:27 PM
RE: SM64 Enhanced Text Engine - by jesusyoshi54 - 08-20-2019, 11:14 PM
RE: SM64 Enhanced Text Engine - by jesusyoshi54 - 09-02-2019, 06:25 PM
RE: SM64 Enhanced Text Engine - by jesusyoshi54 - 09-22-2019, 08:13 PM



Users browsing this thread: 1 Guest(s)