Banner
Views: 854,287,683
Time:
9 users online:  Atari2.0, Beed28, crm0622, Devazure,  JamesD28, Nowieso, Romano338, ScatmanJones49,  Tahixham - Guests: 27 - Bots: 57 Users: 47,147 (2,479 active)
Latest: Jardeson
Tip: Add decorations to the overworld. Don't leave large empty grass or sea regions.Not logged in.
Posts by Djief
Djief's Profile - Posts by Djief
Pages: « 1 »
(restricted)
Ok so I have an ASM that wants to check if you bonk your head so I want to read $77 and check if the up bit is set but when I run my code the accumulator is always set to 0 when I do a LDA $77 no matter what the actual value of $77 is, I checked the memory in real time and even when standing on the ground the value is always 04 in the memory as it should be but the accumulator still always returns 00 for some reason.

At this point I have the code running all the time and even on the ground it returns 00 which confuses me.
I'm basically trying to have diagonal up pipes, so far the code is just a custom block I put in with GPS, after some testing with someone else I figured that code is ran after the STZ $77 and before it sets the value every frame.

That is the case except in one edge case when I hit the slope helper block in the middle of the 2 slope ceiling blocks in which case $77 is 08 as expected at that moment and then it does what I want.

For reference I'm just throwing the value in the coin counter which does increment my coins as it should when it works.

I'm guessing I'm gonna need to learn uberASM to just store the value somewhere else for what I need.

EDIT : I was also trying to debug this with the block on the ground and just being in the block which is why I had the code with the 04 that was just to try to know why $77 wasn't working which then always returned 00 no matter what I did

EDIT 2: fixed my problem by hijacking some code to read the value when I needed to
Yeah makes sense, just still new to all this so didn't know if someone already worked with that or anything, patch works fine so there's that, thanks for answering though.
From what I can read about 8F and testing that's a backup of 72 which is the "in the air" flag which basically tell you if you'Re going up, down, or are standing on the ground.

I can't really use that 'cause that changes to same values whether or not you bonk somewhere or are just at the top of your jump.

Unless I'm missing something ehre?
Pages: « 1 »
Djief's Profile - Posts by Djief

The purpose of this site is not to distribute copyrighted material, but to honor one of our favourite games.

Copyright © 2005 - 2020 - SMW Central
Legal Information - Privacy Policy - Link To Us


Menu

Follow Us On

  • YouTube
  • Twitch
  • Twitter

Affiliates

  • Super Mario Bros. X Community
  • ROMhacking.net
  • Mario Fan Games Galaxy