Language…
5 users online: anoMaly666,  Atari2.0, BabaYegha, sinseiga, Tsquare07 - Guests: 243 - Bots: 333
Users: 64,795 (2,375 active)
Latest user: mathew

PIXI v1.1 - Sprite Insertion Tool

Tools → PIXI v1.1 - Sprite Insertion Tool

This file is obsolete. The latest version is PIXI v1.40 - Sprite Insertion Tool. For other versions, check the version history.

Submission Details

Name: PIXI v1.1 - Sprite Insertion Tool
Author: JackTheSpades
Added:
Version History: View
Operating System: Windows
Platforms: SNES
Games: SMW
Source Available: Yes
Featured: Yes
Website: Link
Description: A sprite insertion tool made to allow more dynamic sprite usage, space savings and more SA-1 compatibility when compared to old iterations.
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.

Detailed usage instructions, common errors and changes can be found in the included readme.txt file.


For more information, read here.
Source code can be found at GitHub.
Tags: cluster extended insert inserter insertion sa-1 sprite sprite tool spritetool
Comments: 31 (jump to comments)
Rating:
3.8 (13 ratings)
No rating
Download 8.42 MiB | 1,307 downloads

Screenshots

View all

Comments (31)

HammerBrother Link
Also I forgot to mention, when you’re using any of the provided sprites, you may have to edit it’s code in order to prevent sub label issues with the macro. I’ve mentioned earlier that labels (including the +/- labels) leaks outs (as in, treating labels inside the macro as if they’re outside where it’s called) and cause problems.
TheBiob Link
Quote
Edit: Now, I try this version, and I get a lot of errors:

The sprite was made for trasm, check if it has been remoderated in the sprites section.
If so you're good to go if you download the remoderated sprite.
If not you'll have to try and use trashkas (Included in "asm/Converter Tools" and see if that can convert the sprite correctly.
If that does not work you're probably better of asking for help directly or waiting for it to get remoderated.


As for the mushroom sprite it might be using some stuff that asar doesn't like but xkas allows.
First step applies to this as well but if it hasn't been remoderated you probably don't want to convert it if it doesn't throw errors as that will cause it to definitely break.
Lespna1 Link
Okay, I put it in F:\OLD Drive\pixi v1.1, but do I have to move the original sprites from the old folder to the new folder?

I tried both versions, but I deleted your version and then uploaded this version. So I need both versions for it to work?

Edit: Okay, after about two or three hours of copying and pasting the files like it said, I think it worked, but I inserted the sprites, and I have the mushroom that gives you more time so when I collect it, the screen just like blinks and turns blank and the music plays in the background. Am I missing something? It worked fine for the SMW2 soldiers that walk and run around in the castles, but I don't know what is wrong w/the mushroom sprite. People were being overcritcal saying that it played the halfway point sound so I don't know if that might have something to do w/it. That wasn't my fault.
TheBiob Link
Are you talking about my version or the original?
If you're talking about my version then it only contains the modified files so you still need to download the actual tool and replace the files.

If you downloaded the original tool then make sure to put it in it's own folder to not mess with other tools that might be using a different version of asar.dll
Lespna1 Link
I d/loaded the version in the hyperlink below, and I get the following error:

Error: Asar library is missing, please redownload the tool or add the dll.

Edit: Now, I try this version, and I get a lot of errors:

18 Shared routines registered in "routines/"
An error has been detected:
sprites/birdo.asm:16: error: Unknown command. [TILEMAP dcb $8E,$AE,$8E,$EE,$CE,$AE]
sprites/birdo.asm:17: error: Unknown command. [VERT_DISP dcb $F0,$00,$F0,$00,$F0,$00]
sprites/birdo.asm:18: error: Unknown command. [PROPERTIES dcb $40,$00]
sprites/birdo.asm:25: error: Invalid number. [dcb "INIT"]
sprites/birdo.asm:26: error: Label SUB_GET_DIR not found [JSR SUB_GET_DIR]
sprites/birdo.asm:48: error: Invalid number. [dcb "MAIN"]
sprites/birdo.asm:49: error: Unknown command. [HAMMER_BRO_JSL PHB]
sprites/birdo.asm:53: error: Label START_HB_CODE not found [JSR START_HB_CODE]
sprites/birdo.asm:64: error: Unknown command. [DEC RAM_ThrowTimer,x]
sprites/birdo.asm:72: error: Unknown command. [X_SPEED dcb $00,$F8,$00,$08]
sprites/birdo.asm:73: error: Unknown command. [TIME_IN_POS dcb $50,$20,$50,$20]
sprites/birdo.asm:75: error: Unknown command. [RETURN RTS]
sprites/birdo.asm:76: error: Unknown command. [START_HB_CODE JSR SUB_GET_DIR]
sprites/birdo.asm:80: error: Label SUB_GFX not found [JSR SUB_GFX]
sprites/birdo.asm:83: error: Label RETURN not found [BNE RETURN]
sprites/birdo.asm:85: error: Label RETURN not found [BNE RETURN]
sprites/birdo.asm:87: error: Label SUB_OFF_SCREEN_HB not found [JSR SUB_OFF_SCREEN_HB]
sprites/birdo.asm:92: error: Label LABEL3 not found [BEQ LABEL3]
sprites/birdo.asm:98: error: Unknown command. [LABEL3 STA $1602,x]
sprites/birdo.asm:102: error: Label JUMP_BIRDO not found [BCS JUMP_BIRDO]

More errors too.
TheBiob Link
That sounds like the problem mentioned one comment below. Did you try the version linked there?
KBY30 Link
So, PIXI freezes when I try to insert any sprites at all.
It just says this, and then hangs.

line: 00:00
num: 0, ex: 0, char: :
line: 00:00
num: 0, ex: 0, char: :
line: 1
num: 1, ex: 0, char: F
18 Shared routines registered in "routines/"
 Telinc1 Link
That's the freedata align bug, an issue with Asar which causes PIXI to softlock when trying to insert per-level sprites. If you don't need per-level sprites, you can use TheBiob's modified PIXI which doesn't have the crash bug (at the price of not supporting per-level sprites).
Amomario123w Link
whats up when pixi wont aplied the sprites just stay stanby and dont say aplied succesfully. just stay standby
how can i fix it
mish1 Link
+FedoraFriday

Where did you put Pixi, for me it seems to work just fine.
gohkenytp111 Link
I think that mikeyk's custom sprites aren't compatible with PIXI. Can you fix it for us please?
TheOrangeToad Link
Is This Tool is compatible with Asar v1.50?
FedoraFriday Link
Does this not work with addmusick? I've tried it multiple times, and the program executes but freezes right before completion. If its not addmusic, idk what it is. I can apply it to a fresh rom just fine, but applying sprites to my current one just doesnt work.
DAA234 Link
good job
Fostelif Link
The tweaked sprites that come with the program don't come with their graphics.
 RPG Hacker Link
NOTE: Fixed a couple of bugs in different ASM files, so if you downloaded the tool while it was still waiting for moderation, please redownload before doing anything else.
 Telinc1 Link
I'll just leave a warning here. The cluster sprite support that this new version of PIXI comes with is incompatible with the Extended NMSTL patch, and using PIXI will massively break your ROM if you've previously applied the patch.

This is surprisingly easy to fix. I haven't tested it with custom cluster sprites, but it should work. First, comment out lines 123-125 and 265-273 from extendnstl.asm. Go to the end of the file and add a new line which says print "GetExtOAMIndex: $",hex(GetExtOAMIndex). Apply the patch and write down the offset it gives you.

After that, go into PIXI's asm/cluster.asm. If you've previously applied extendnstl.asm, remove the autoclean from line 14. Find line 37 (BEQ .return) and, on a new line after it, put PHA : JSL $xxxxxx : PLA. Replace $xxxxxx with the offset you wrote down earlier. Now PIXI won't break the graphics of cluster sprites or nuke your ROM. You should change the offset in asm/cluster.asm every time you reapply extendnstl.asm to make sure it doesn't change (I could make it read it from the ROM, but I'm too lazy).
HammerBrother Link
uh, I tested by inserting 1 sprite on id=#$00 on donut lift sprite and even weirder stuff happened:
Code
line: 1
num: 1, ex: 0, char: F
18 Shared routines registered in "routines/"
An error has been detected:
sprites/donut_lift.asm:85: error: Label "SubOffScreen_return" redefined [.return]
routines/SubOffScreen.asm:26 (called from sprites/donut_lift.asm:49): error: Relative branch out of bounds (distance is -147) [BNE .return]
routines/SubOffScreen.asm:49 (called from sprites/donut_lift.asm:49): error: Relative branch out of bounds (distance is -192) [BPL .return]
routines/SubOffScreen.asm:68 (called from sprites/donut_lift.asm:49): error: Relative branch out of bounds (distance is -226) [BNE .return]
routines/SubOffScreen.asm:71 (called from sprites/donut_lift.asm:49): error: Relative branch out of bounds (distance is -231) [BCS .return]
routines/SubOffScreen.asm:100 (called from sprites/donut_lift.asm:49): error: Relative branch out of bounds (distance is -289) [BPL .return]


Yes, thats an asar bug with having a %Macro() in between main label and sublabel(s), but whats with the underline part?


(PS: Really REALLY REALLY hope asar had this macro issue resolved, having sublabels are not only used to prevent redefined errors, but also keeps the code structure (viewed by a programmer) organized). Using + and - doesn't help much on telling a code its purpose.

mod edit: stop stretching tables
HammerBrother From older version: PIXI - Sprite Insertion Tool Link
Major problem:
1) I put this in list.txt: 00 donut_lift.cfg. I only put that sprite in and no other sprites for testing to see if it successfully inserts.

2) I run the exe file and put the ROM on it to insert. It spits out an error on my face:
Code
15 Shared routines registered in "routines/"
An error has been detected:
sprites/donut_lift.asm:85: error: Label "SubOffScreen_return" redefined [.return]
routines/SubOffScreen.asm:26 (called from sprites/donut_lift.asm:49): error: Relative branch out of bounds (distance is -147) [BNE .return]
routines/SubOffScreen.asm:49 (called from sprites/donut_lift.asm:49): error: Relative branch out of bounds (distance is -192) [BPL .return]
routines/SubOffScreen.asm:65 (called from sprites/donut_lift.asm:49): error: Relative branch out of bounds (distance is -223) [BNE .return]
routines/SubOffScreen.asm:68 (called from sprites/donut_lift.asm:49): error: Relative branch out of bounds (distance is -228) [BCS .return]
routines/SubOffScreen.asm:97 (called from sprites/donut_lift.asm:49): error: Relative branch out of bounds (distance is -286) [BPL .return]


Don't tell me that this is like GPS's sublabel problem/glitch, where if you use a .sublabel before a %CallSubroutine() whatever label inside CallSubroutine.asm is assumed present in the file that calls the sublabel causing it to error out saying no parent or redefined:

Code
MainLabel:
	%CallSubroutine()	;>Whatever labels in this subroutine is assumed to be here rather than exclusively inside this.
.Sublabel


Edit: blame asar for this buggy macro.
Aurel509 From older version: PIXI - Sprite Insertion Tool Link
Bug with this tool
When I insert some sprites in a ROM with SA-1.
The basic shooters (Bullet Bill (C9) and Torpedo Launcher (CA)) doesn't work after the insertion.
Please fix that.
 MarioFanGamer From older version: PIXI - Sprite Insertion Tool Link
@Gi Manilla: Sprites have yet to be converted. After the remoderation, though, sprites will support SA-1.
 Aram From older version: PIXI - Sprite Insertion Tool Link
Do I have to use the sprite converter to SA-1, or does PIXI automatically detect the sprite? What about clusters?
Klug From older version: PIXI - Sprite Insertion Tool Link
Originally posted by TheJuanCarlos64
I tested on my Windows XP and Doesn't work with the "CFG Editor GUI"

Sorry! We don't allow you to use the tool while on an outdated version of Windows. (Curse you, Windows XP!!!)
Yuzu From older version: PIXI - Sprite Insertion Tool Link
Why!

I tested on my Windows XP and Doesn't work with the "CFG Editor GUI"
and Tested with Windows 7 or Higher but It works Fine

I can fix This!

lion From older version: PIXI - Sprite Insertion Tool Link
Originally posted by Dan
Oh noooo! First there's BPS, now there's PIXI?!

God damn it people, it's not the end of the world.

it's just one dude

Originally posted by TheJullasicFox
Yeah... but my rom can't even handle GPS or ASMtool. And also, I don't feel like reinserting everything.

First, >ASMtool
Second, how old is your hack if it cant handle gps
Third,
Originally posted by The description
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.
TheJullasicFox From older version: PIXI - Sprite Insertion Tool Link
Yeah... but my rom can't even handle GPS or ASMtool. And also, I don't feel like reinserting everything.
 Dan From older version: PIXI - Sprite Insertion Tool Link
Oh noooo! First there's BPS, now there's PIXI?!

God damn it people, it's not the end of the world.
 Erik From older version: PIXI - Sprite Insertion Tool Link
what
TheJullasicFox From older version: PIXI - Sprite Insertion Tool Link
NOOOOO!!! It got accepted... Now they're only going to be these PIXI sprites... I'm going to have to delete all my sprite tool sprites? PLEASE NO SMWC... PLEASE NO!!!
leod From older version: PIXI - Sprite Insertion Tool Link
Very likely.
If no bugs are found in this tool, there will be no need for Romi's any more.
TheOrangeToad From older version: PIXI - Sprite Insertion Tool Link
Is this mean that the Romi sprite tool going to be replace.