Skip to content

PowerPC Assembly Functions - Version 1.3.1

Choose a tag to compare

@QuickLava QuickLava released this 28 Sep 06:50
· 267 commits to master since this release

A major update, featuring an overhaul to menu configuration, the ability to lock Code Menu lines, a complete rework to ASM output structuring, an upgrade to the Dash Attack Item Grab code, and brand new built-in codes for manipulating character jumpsquat lengths, and changing the colors associated with each player slot!

The New XML Config System

This release marks a move away from the multiple configuration file approach previously used to control things like EX Character declarations, additional CSS_Roster files, and Themes. Instead, the Menu Builder now makes use of a single unified configuration XML file, called "EX_Config.xml" for P+Ex based builds, and simply "Config.xml" for base P+ based builds.

In addition to rolling the functionality of those individual configuration files into a single place, it also offers an easy means of changing the Menu's in-game title, the comment text displayed beneath the title, as well as the name of your build's base folder.
Going forwards, it will also serve as a means of choosing whether or not to include certain optional features in menus you build. Presently, it offers the ability to include or exclude the menu's "Dash Attack Item Grab Toggle", and to configure (or exclude) the brand new "Player Slot Color Changer" code, and will expand to offer configuration options for further features as they're added!

Migrating to the New Config System

As a result of the move to the new menu configuration system, builds that previously made use of the "EX_Characters.txt", "EX_Rosters.txt", and "EX_Themes.xml" files will need to migrate their options to the new unified config document. To do this, for any of those files, simply simply copy any declarations from those files into the appropriate node of the new config document. After doing this, the next time you run the builder, it'll automatically convert any plain-text entries over to the new XML-style format; you do not need to manually convert your entries!

For instance, if I needed to migrate my declarations from an "EX_Characters.txt" like this one:

All I'd do is paste my declarations into the Character List node like so:

And run the builder! It'll detect those declarations, and auto-promote each entry to the new format, like so:

Other Notes

  • Previous versions of the builder utility offered three executables: one for consoles, one for offline Dolphin builds, and one for Netplay Dolphin builds. This has been reduced to two: an "Offline" executable intended for both consoles and offline Dolphin builds, and a "Netplay" executable intended specifically for Netplay Dolphin.

  • Another note on the Netplay executable, the builder actually supports using a secondary configuration file specifically for Netplay, if you'd like to use one. Simply make a copy of the config document and prefix its name with "Net-" (eg. "Net-EX_Config.xml"), and the builder will use that file instead when you build with the Netplay executable!

  • The builder's ASM output is now presented with full labeling, in readable PPC and annotated Gecko code! This should make it much easier to verify what codes are actually in your code menu's ASM file after building it, or to edit it after the fact, if necessary. Also, if you place a copy of Brawl's Dolphin Symbol Map (usually called "RSBE01.map") into the builder's folder and rename it to "symbols.map", the builder will additionally note what function each HOOK in the ASM output actually hooks! Can help illustrate a bit what each code is actually doing, if such information is ever needed.

  • Lastly, please note that there are now two offered versions of the menu builder, one for base P+, and one for P+Ex, so be sure to download the correct one for the build you're using!

Full Changelog: v1.0.4...v1.3.1