Language…
11 users online: anonimzwx, DanMario24YT, howardadam1126, iamtheratio, JPhanto, kurtistrydiz, playagmes169, Rhubarb44230, Saela, TheOrangeToad,  YouFailMe - Guests: 283 - Bots: 333
Users: 64,795 (2,378 active)
Latest user: mathew

Official Hex/ASM/Etc. Help Thread

  • Pages:
  • 1
  • 2
  • 3
  • 4
  • 5
  • 230
  • 231
  • 232
  • 233
  • 234
  • 235
  • 236
  • 237
  • 238
  • 239
  • 240
  • 418
  • 419
  • 420
Originally posted by imjake9
Thanks. I guess I could've found $13BF through the RAM map, but $010B just says stack.

That's a good point, who the heck thought that was a good idea? The odds of you overwriting it are very low, but really? With all this FreeRAM, you need to use part of the stack?
You need two bytes, preferably in the $0100-$1FFF range, and the hack was originally written back when the RAM map was far from complete. $010B was the safest address to utilize.

Of note, Nintendo used part of the stack as well.
My Giant Thwomp has a few of its tiles with a "Layer Priority Enable" which ruins some of the facial tiles around the upper left corner of the overall sprite.

How do I fix this?

I think my computer doesn't supports ASM stuff for some reason, although I can insert blocks that are already in block tool. I have microstoft frameowork 4.0. some help as to why my comp cant do this?
I'm starting to give up SMW as whenever I try to patch a patch that's more than just org's and db's this happens: http://www.youtube.com/watch?v=-TyH9YVaN3k
And this exact thing EVERY TIME. I've tried with xkas 0.06, 0.08 and Xkas GUI. None of them change the result. I've tried LevelASM and another few patches, and only the org's and db's patches work at all.

This is either something really odd, something caused by LM 1.8 or something caused by my computers OS.
Originally posted by Blue_Raven
I think my computer doesn't supports ASM stuff for some reason, although I can insert blocks that are already in block tool. I have microstoft frameowork 4.0. some help as to why my comp cant do this?

Make sure you are using BTSD and not old Blocktool
I always use BTSD, or at least try. I've only managed to insert blocks that came with blktool.
How do you know it doesn't insert(for example, do you get an error?)
I've managed to not get errors for one of the blocks I've created, but ALL blocks I insert with BTSD crash. ALL.
Does anyone know why I can't get Mario's image to change using $13E0? (My hack uses the 32x32 character tilemap patch.)
I am trying to create a block that disables the Slippery flag in a level that contains slippery blocks.

However... I am unsure of how to do this. I was thinkin of basing the block off of the "[BTSD] Slippery Level disable" block by IceGuy only without the coin checking hex; just a simple passing thru of the block and the level is no longer slippery.

And I am also still having some trouble with my Giant Thwomp sprite (it has several tiles acting with enabled Level Priority, which messes up some of its facial tiles on the upper left and top).

Code
db $42

JMP Main : JMP Main : JMP Main : JMP Sprite : JMP Sprite : JMP Cape : JMP Fire
JMP Main : JMP Main : JMP Main

Main:
	STZ $86
Sprite:
Cape:
Fire:
	RTL

There ya go.

Also, for your giant thwomp problem, the tiles that go through the ground either have the low or high priority set in the properties for them (remember YXPPCCCT)
I change my layout every 4-5 months
YXPPCCCT? Okay... so how do I fix My Giant Thwomp so it works like the one used in SMWCP? O:

@Forte.exe: There's a YXPPCCCT format tutorial in the tutorial section; it should be able to help you.

Here's an odd problem I'm having. I'm fiddling around with YI ASM but I found that if I try, for example, STA $1F00, the game interprets it as STA $001F00. Is this a problem with the compiler or is it something that YI does that SMW doesn't?

EDIT: More specifically, I'm doing "STA !freeRam+2" where !freeRam is defined as $1F00.
I should get a new layout.

Probably won't, though.
Yeah that's how it works. In SMW, storing to $001F00 is exactly the same as storing to $7E1F00. That's why you don't have to change the bank to access that part of the RAM when not in bank $7E.


YI might have a different mapping, I dunno. From what I know, it's possible for $001F00 to be a ROM address...
Hmm...I'll have to keep that in mind. Thanks!

One other question: Is there a command that functions as "set bit X of a byte"? TSB does something similar, but what I want is something more like this:

Code
Before command:
$00 = #$03
A = #$00

After command:
$00 = #$03
A = #$08 (The third bit is set)
I should get a new layout.

Probably won't, though.
There's no simple opcode, but you could do it with a loop.

Code
LDX #$07
LDA #$00
SEC
LOOP:
ROL
DEX
BPL LOOP

Boom, bit 7 of A is set.
Alright. Thank you!...again.
I should get a new layout.

Probably won't, though.
I didn't find such a tutorial on the site... D:

Here's one.

Also, I'm not sure why we don't have a tool to calculate the YXPPCCCT byte for sprites already (manually doing it is annoying). I've added one in my IDE to make it much easier to find out the byte.
  • Pages:
  • 1
  • 2
  • 3
  • 4
  • 5
  • 230
  • 231
  • 232
  • 233
  • 234
  • 235
  • 236
  • 237
  • 238
  • 239
  • 240
  • 418
  • 419
  • 420