A sprite insertion tool made to allow more dynamic sprite usage, space savings and more SA-1 compatibility.
Despite this, it is almost fully compatible with sprites written for older SpriteTools, save for the fact that Asar is now used as the assembler. There also the new sprite status table that has been moved from 1938 to 7FAF00, used by SubOffScreen routines since version 1.2.10.
Since version 1.2.13, now you can disable the 255 sprite per level support by using the -d255spl flag. This is only useful if you are converting old romi sprites to pixi and you don't know what you are doing. You will have to rebuild your rom in case you already ran pixi +1.2.10 without that flag and want now to use the flag.
Detailed usage instructions, common errors and changes compared to older sprite tools can be found in the included readme.txt file. Version history can be found in changelog.txt.
Version 1.2.13 (January 09, 2020):
- (Tattletale) Fixed a bug with sprite data displacement introduced in 1.2.10. LM3 cache would cover this up in most cases, except for reeeeeally tall levels.
- (Tattletale) Added a compatibility flag to disable 255 sprites per level support on fastROM -d255spl, check the readme for more info.
- (Tattletale) Removed main_npl.asm, now there's an optional config file included in sa1def.asm that's generated on every run. Eventually this file will actually become a config file. Special thanks to randomdude999 for giving me the code to check for files in asar.
- (Tattletale) SubOffScreen edited to include a check for -d255spl flag.
- (Tattletale) sa1def.asm edited to include checks for -d255spl flag. All defines that were in main.asm before were moved to sa1def.asm.
Version 1.2.12 (October 28, 2019):
- (dtothefourth) Fixed the cfg editor to work properly with n extra bytes (actually only up to 12). Disclaimer, the cfg editor will be removed from pixi packaging starting from the next update! It will be submitted as a standalone resource.
Version 1.2.11 (August 26, 2019):
- (Tattletale) n extra byte support for both shooters and sprites. Goes up to 12 because LM only supports up to 12. Read the readme.txt for further info.
- (Tattletale) added two secret folders called ./asm/ExtraDefines and ./asm/ExtraHijacks. Now you can ship your own defines and hijacks along with your resources, just be very very careful with that. Read the readme for further info.
- (Tattletale) added Akaginite's MeiMei to pixi. This will sort out your sprite data when inserting or modifying sprites' extra byte configuration, when said sprites are already used in levels. Before this, you would just get a crash / corrupted sprite data. Special thanks to Akaginite (I would say 95% of the code is from MeiMei), Vitor Vilela, Randomdude999, Alcaro, they helped me deal with asar / sa1 address conversions. For further information read the readme - several flags were added as config for MeiMei, check the readme.
- (Tattletale) fixed a json related crash when the file name is invalid. The current message isn't any better but at least it won't crash. Messages will be reworked at some point.