The wiki has been upgraded to MediaWiki 1.43. The wiki's theme is still being adapted to work with the new version, and may appear broken for the time being. --RanAS

Dynamic Xtreme Quick Start

From SnesLab
Jump to: navigation, search
English Português Español 日本語

This guide explains how to perform a basic Dynamic Xtreme installation on Windows or Linux.

If this is your first time using the tool, follow the steps in order. You do not need to understand the system's internals to install it.

Requirements

Dynamic Xtreme requires the .NET 8 runtime. Download and install the version for your operating system from Microsoft's official website:

.NET 8 Runtime

The tool supports Windows and Linux. You only need the .NET runtime, not the full SDK.

You can download Dynamic Xtreme from SNEStorage: SNEStorage - Dynamic Xtreme

Prepare your resources

Before running Dynamic Xtreme, add all the resources you want to install to your project.

Resources for PIXI and UberASMTool

Current resources usually include their *.asm or *.json file along with the files they need. Copy the entire package without changing its folder structure.

In PIXI, use the folder for the sprite type:

  • sprites for normal sprites.
  • cluster for cluster sprites.
  • extended for extended sprites.
  • For other types, use the folder specified by the resource.

In UberASMTool, use the folder for the code type:

  • level for level code.
  • overworld for overworld code.
  • gamemode for game mode code.
  • For other types, use the folder specified by the resource.

After copying the resource, add it to PIXI's or UberASMTool's list file as usual.

Resources prepared for Dynamic Xtreme already contain the necessary declarations in their main ASM file. Keep the ASM, JSON, and supplied folders together to preserve their relative paths.

Traditional folders

Some resources use Dynamic Xtreme's traditional folders. In that case, use this arrangement:

These folders are next to the Dynamic Xtreme executable: dxt.exe on Windows or dxt on Linux.

File type Folder
*.dynamicinfo DynamicInfos
*.drawinfo DrawInfos
*.paleffect PaletteEffects
Graphics, palettes, and other related files DynamicResources

Always use the method specified by the resource. Do not move a modern sprite's or UberASM resource's files into the traditional folders unless its instructions tell you to.

Full installation

Run the tool

Run Dynamic Xtreme from its own folder.

  • On Windows, double-click dxt.exe.
  • On Linux, open a terminal in the Dynamic Xtreme folder and run:
./dxt

The tool will ask a series of questions to configure the installation.

Configure paths

Your paths and selected features are saved in Settings/Settings.json inside the Dynamic Xtreme folder. The tool uses this file to retrieve your configuration for later installations.

You can type each path or drag the corresponding file into the terminal. Then press Enter to continue.

If you leave an answer blank and press Enter, Dynamic Xtreme uses the value saved in Settings/Settings.json. If no value has been saved and the path is optional, that integration is skipped.

Paths are requested in this order:

  1. Input ROM
    Select the Super Mario World ROM you want to modify.
  1. Output ROM
    Enter the path of the ROM that will contain the installation result.
  1. PIXI executable
    Select the PIXI executable. This path allows Dynamic Xtreme's
    routines and defines to be integrated with PIXI.
  1. UberASMTool executable
    Select the UberASMTool executable if your project uses
    UberASM code.
  1. GPS executable
    Select the GPS executable if your project uses
    custom blocks.
  1. PIXI list
    Select the list file where you registered the sprites
    your project will use.
  1. UberASMTool list
    Select the list file where you registered the UberASM
    code your project will use.

The PIXI, UberASMTool, and GPS paths and their lists are optional. If you do not use a tool and no path has been saved, leave its answer blank.

To stop using an integration with saved paths, edit Settings/Settings.json and set its values to empty strings (""):

  • PIXI: PixiPath and PixiListPath.
  • UberASMTool: UberasmToolPath and UberasmListPath.
  • GPS: GPSPath.

Do not delete the fields or replace the entire file. You can then leave those paths blank in subsequent prompts without restoring the previous integration.

Select features

After configuring the paths, Dynamic Xtreme asks which features you want to install.

Answer Y to enable a feature or N to disable it.

If you press Enter without typing anything, the value saved in Settings/Settings.json is retained. On the first installation, the feature's default value is used.

For a typical installation, you can enable features without warnings. If a red warning appears, read it carefully and check compatibility with your project before enabling that feature.

See Features for what each option does, and Compatibility for possible resource conflicts and RAM usage.

Typical installation example with PIXI and UberASMTool

This example uses PIXI and UberASMTool with the default options. The Windows paths are fictional; replace them with your project's paths. On Linux, provide the paths to the corresponding executables.

Prompt Example answer
Input ROM C:\MiHack\MiHack.smc
Output ROM C:\MiHack\MiHack_DX.smc
PIXI executable C:\MiHack\PIXI\pixi.exe
UberASMTool executable C:\MiHack\UberASMTool\UberASMTool.exe
GPS executable Leave blank if unused and no path is saved.
PIXI list C:\MiHack\PIXI\list.txt
UberASMTool list C:\MiHack\UberASMTool\list.txt

Use these feature settings:

Feature Enabled Answer
GraphicsChange Yes Y
PalettesChange Yes Y
DynamicPoses Yes Y
DrawingSystem Yes Y
PalettesEffects Yes Y
Free7E2000 Yes Y
ControllerOptimization Yes Y
FixedColorOptimization Yes Y
KevinLMVRAMOptimization No N
StatusBarOptimization No N
PlayerFeatures No N
YoshiFeatures No N

On SA-1 ROMs, Free7E2000 is disabled automatically.

Enter retains the saved value if you have used the tool before. To reproduce this configuration, answer Y or N according to the table; defaults are used only when there is no previous selection.

Command-line installation

After an interactive installation, Dynamic Xtreme saves your selected paths and features in Settings/Settings.json.

You can reuse this configuration for later installations without answering every question again.

On Windows, open a terminal in the Dynamic Xtreme folder and run:

.\dxt.exe -use-settings

On Linux, run:

./dxt -use-settings

If a saved path is no longer valid, Dynamic Xtreme returns to interactive mode to request the configuration.

Available options:

Option Alias Description
-use-settings -us Uses the saved paths and features without displaying the

prompts again.

-verbose -v Shows more detailed installation information.
-help Shows help and the available options.
-version Shows the installed Dynamic Xtreme version.

Options can be combined. For example, to use the saved configuration and show detailed information:

Windows:

.\dxt.exe -use-settings -verbose

Linux:

./dxt -use-settings -verbose

To change paths or selected features, run Dynamic Xtreme without -use-settings and answer the prompts again.

Finish the installation

Interactive and command-line installations produce the same result.

The installation result is saved in log.txt next to the Dynamic Xtreme executable. This file contains all installation details.

Dynamic Xtreme prepares the PIXI, UberASMTool, and GPS integrations but does not run those tools. After installing Dynamic Xtreme, run your project's external tools again on the output ROM.

When to reinstall:

  • If you change graphics, palettes, or *.dynamicinfo, *.drawinfo, or *.paleffect files, reinstall Dynamic Xtreme and then the tools that use those resources.
  • If you add, remove, or modify the ;#incdyn, ;#incdri, or ;#incpale resource includes in the ASM, also reinstall Dynamic Xtreme and then the tools that use those resources.
  • If you only change the *.asm code without changing those includes, you do not need to reinstall Dynamic Xtreme. Reinsert the code with the appropriate tool.

When Dynamic Xtreme needs to be reinstalled, use this order:

  1. Run Dynamic Xtreme to regenerate and install its resources.
  2. Run PIXI, UberASMTool, GPS, and any other
    tool that uses Dynamic Xtreme's generated data again.

This order matters because resource addresses and IDs may change each time Dynamic Xtreme runs.