Language…
5 users online: 1392year, Danik2343, Fernand1527, Leaf_7, marvisjj - Guests: 205 - Bots: 297
Users: 64,667 (2,404 active)
Latest user: DarthHylian

UberASM Tool 1.6

Tools → UberASM Tool 1.6

Submission Details

Name: UberASM Tool 1.6
Author: Vitor Vilela
Added:
Version History: View
Operating System: Windows
Platforms: SNES
Games: SMW
Source Available: Yes
Featured: Essential
Website: Link
Description: This tool lets you insert level, overworld, game mode, status bar, sprite and global ASM without using a patch. See the read me for more details.

Version 1.6 changes:
- Reworded list.txt and replaced the INC $19 example code with one that does nothing, in order to prevent confusion for beginners. No changes are made to the tool itself.
(1.6 is an "unofficial" update submitted by wye - it adds some changes from the Github repo, but not all, and it doesn't correspond to any Github release. The next version will probably be an official one, based entirely on the repo.)

Version 1.5 changes:
- Fixed an in-game crash when using different NMI code combinations
- Refactored some core parts of the program, making it easier to
add improvements.
- Improved the way how the LM restore point information works in a
way that UberASM Tool will no longer concat its program information
more than once.
- Fixed incorrect extra byte 4 define used for PIXI sprites.
- Added BW-RAM definition which is used on SA-1 ROMs only.
- Fixed an application crash when accidentally including an empty
file.
Tags: conditional game mode global inserter level level asm library map16 nmi overworld sa-1 sprites status bar v-blank
Comments: 51 (jump to comments)
Rating:
3.8 (5 ratings)
No rating
Download 263.33 KiB | 11,143 downloads

Screenshots

View all

Comments (51)

KBY30 Link
for some reason, crashes on launch because it "could not parse list file", because it "doesn't exist", even though it does.
Correction: It seems like it just doesn't like ROMs that aren't named "SMW.smc", and aren't inside the same folder as UberASMTool.
HammerBrother Link
 Fernap
Originally posted by Uberasm tool - readme
Code
Another thing you have to keep in mind that every code must return
with RTL and not RTS. Data bank is set up automatically, *except*
for NMI code, global code and library calls, since they're called
directly from your code.


I should've been more specific and detailed on how I ran into this issue. Yes, I was using uberasm tool's library file when working on this.
HammerBrother Link
Be very careful when you are using 16-bit address indexing ($xxxx,x or $xxxx,y), as you need to use
Code
	PHB
	PHK
	PLB
	;[code here that uses $xxxx,x or $xxxx,y)]
	PLB

Because it may end up loading data from the wrong bank depending on how many times you reinsert the tool. When you insert the ASM codes, the inserted code can sometimes be at a different bank.
 Fernap Link
UberASM Tool already sets the DBR before calling resource labels (except for nmi), making this unnecessary. You do, however, need to do this (or use long addressing instead) for absolute addressing within a library file. And if you're following the instructions in the FAQ for combining resources, that takes this into account also.
 Koopster Link
Excited for the multiple files per level feature. Can we expect that anytime soon?
Burning Loaf Link
Shouldn't this be called 1.51 or something? I wouldn't expect such minor changes over a 1.6
wye Link
I asked Vitor and he suggested 1.6.
 Atari2.0 From older version: UberASM Tool 1.5 Link
Tested with:
Windows 10 21H2 (OS Build 19044.1826)
Lunar Magic 3.31
Pixi 1.32
GPS 1.4.3
AddmusicK 1.0.8
Tested on:
LOROM/SA-1 ROMs with multiple resources.
No conflicts or issues noticed. Works fine, also checked out changes in source code directly, nothing of remark was seen.
Toshi From older version: UberASM Tool 1.4 Link
Bom demais!
 Kevin From older version: UberASM Tool 1.4 Link
Originally posted by Xboy1282
How do you make multiple ASM's run at the same number? EX:
14 code.asm
14 code2.asm
Everytime I try to do it it gives an error saying "Number is already used."

That doesn't work, look https://www.smwcentral.net/?p=faq&page=1515827-uberasm here for a workaround.
Xboy1282 From older version: UberASM Tool 1.4 Link
How do you make multiple ASM's run at the same number? EX:
14 code.asm
14 code2.asm
Everytime I try to do it it gives an error saying "Number is already used."
Dmytro Vakhitov Dima _DVD_ From older version: UberASM Tool 1.4 Link
hope dis'll work
Yoshioshi5959 From older version: UberASM Tool 1.4 Link
Is there any tutorial on this tool? I looked but couldn't find any.
luzikz2 From older version: UberASM Tool 1.4 Link
#smw{:TUP:}
 Blind Devil From older version: UberASM Tool 1.4 Link
During SMWCP2 development, I stumbled across a big issue: I found out that if we ever use the 'nmi' label in some overworld code and level code, the game will always crash when entering ANY level, regardless of using custom code or not.

So keep that in mind when you stumble across general level entrance crashes.

By the way, a workaround is to put your (OW or level NMI code, preferably OW) codes somewhere else (like global or gamemode) and run them there, using some comparison checks depending on your case and needs.
DTA450 From older version: UberASM Tool 1.4 Link
#smw{:TUP:}
Denicentek From older version: UberASM Tool 1.4 Link
why its not on MAC OS too
El Cuh Fermin From older version: UberASM Tool 1.4 Link
Still useful for HDMAs, and codes #smw{<3}
mish1 From older version: UberASM Tool 1.4 Link
good tool
CD20Superness From older version: UberASM Tool 1.4 Link
Dosen't work, I give it a low rating.
Ramenoodles From older version: UberASM Tool 1.4 Link
really good!
Ramenoodles From older version: UberASM Tool 1.4 Link
really good!
ShanghaiAlice From older version: UberASM Tool 1.4 Link
Great tool I used it easily when I dind't know too much about asm It's very simple to use!#lm{owsprlist}
Romano338 From older version: UberASM Tool 1.4 Link
Yeah that's so weird to insert 2 ASMs in a level. The tool is so simple that I always imagined it would insert them both if I just both 2 lines with the same level number.
I mean, once you know, it's not really hard. But weird.
errorgfx From older version: UberASM Tool 1.4 Link
Inserting Multiple ASMs in same level is somewhat hard.

I wish the tool could insert multiple ASMs easily.
SaltedSpoon From older version: UberASM Tool 1.4 Link
Ok, now this is epic
 Major Flare From older version: UberASM Tool 1.4 Link
Tested within: Windows 10 and batch files.

Worked fine, and I tested for checking the glitches it should fix. Therefore, accepted.
TheOrangeToad From older version: UberASM Tool 1.2 Link
work with LM 3.00?
TheOrangeToad From older version: UberASM Tool 1.3 Link
can I use uberasm tool 1.2 because you put a warming about v1.3
Klug From older version: UberASM Tool 1.3 Link
You forgot to update the tool, Vitor! #smw{-_-2}
Vitor Vilela Author From older version: UberASM Tool 1.3 Link
Will take a look.
HammerBrother From older version: UberASM Tool 1.3 Link
There is a strange bug that happens when I missed an endif in the defines and it causes a strange error with the incsrc and sometimes can crash the program.

image.
Here is my work causing it to happen.

The missing endif is in GraphicalBarDefines/StatusBarSettings.asm on line 17.
Vitor Vilela Author From older version: UberASM Tool 1.3 Link
Already works with LM 3.00!
TheOrangeToad From older version: UberASM Tool 1.3 Link
Uberasm 1.4 For LM 3.00
 Kevin From older version: UberASM Tool 1.3 Link
In version 1.3, when inserting patches the tool crashes when trying to compile the library files and gives this exception: "System.NullReferenceException: Object not set to an instance of an object".
Version 1.2 (with the same files) works fine instead.
Vitor Vilela Author From older version: UberASM Tool 1.3 Link
Warning: v1.3 is considered an unofficial release because it was submitted without updating the repo nor building by me. Use at your own risk.

Next version will skip this one.
MarioKart7z From older version: UberASM Tool 1.2 Link
My status bar code won't insert, UberASM keeps changing line 8 to "JSR status_bar_main" while it should be "JSR statusbar_main" and there's no way for me to stop it from changing it
exdeath From older version: UberASM Tool 1.2 Link
my UberASM tool does not work
Akutarex From older version: UberASM Tool 1.2 Link
Meu menino
 RPG Hacker From older version: UberASM Tool 1.2 Link
NOTE: Edited to update for Asar 1.50 support.
@LX5: It's still quite simple, actually, you were almost there. To do that, you need to not only update the Asar.dll, but also the Asar.cs file and then rebuild the application. Asar.cs is what binds to the DLL and checks for the correct version, so by updating that, it will take the newest version of Asar.
Alcaro From older version: UberASM Tool 1.2 Link
LDA !sprite_y_low,x
LDA !D8,x
chineesmw From older version: UberASM Tool 1.2 Link
How would the sprite defines work?

I've tried
Code
LDA sprite_y_low,x

and...
Code
LDA "D8",x

...in the the level.asm, although, neither worked.

Is there a way for the levelASM to affect sprites as well?
lx5 From older version: UberASM Tool 1.2 Link
I made a small change to a file because the tool was popping a lot of errors related to a misplaced endif. It's fixed now.
 RussianMan From older version: UberASM Tool 1.1 Link
It's not compatible with super FX chip :<? Or somebody just forgot tag and it's something wrong with me?
Romano338 From older version: UberASM Tool 1.1 Link
I wish there was real tutorials somewhere. Like, explaining you from the beginning, without considering you already know half of it
Final Theory From older version: UberASM Tool 1.1 Link
Damn bruh.
Klug From older version: UberASM Tool 1.1 Link
Vitor, you made my day feel better. You da real MVP, bruh.
MrKIVAYU02 From older version: UberASM Tool 1.1 Link
This is definitely complicated, but not impossible
HammerBrother From older version: UberASM Tool 1.1 Link
Lol:
Code
; Example code. Makes Mario crazy.

main:
	inc $19
	rtl


When fixing the super status bar code, and entering level 105, mario gets high.
Vitor Vilela Author From older version: UberASM Tool 1.1 Link
It's on website field.
HammerBrother From older version: UberASM Tool 1.1 Link
You forgot the source code link.