Language…
5 users online: ASSATAKKU, Firstnamebutt, UlticraftMTT, underway,  Valentine - Guests: 48 - Bots: 230
Users: 65,627 (2,197 active)
Latest user: Bobelo

Helpful Diagrams

Originally posted by GreenHammerBro
I get it now

No, you don't. That entire instruction is weird, no matter which address you point it at.
I'm tired of saying the same thing a dozen times if you refuse to listen properly. Go stick that instruction into an emulator.

Quote
added a reset bit at the top of ROR/ROL so that its clear (use SEC).

SEC does not clear nor reset anything; it sets carry to 1. You're thinking of CLC.
But as I said, I'd rather see you keep at least one of the SECs there and fix the rest of these boxes instead. That makes it a little clearer how they work. (It's fine to keep both SECs.)

Quote
Shifting Bits Multiple steps

Could you try not capitalizing random words like that? It just looks weird.
Same goes for "binary" in the description boxes too.

Quote
remove the vague "resseted" saying

Clearing and removing a bit still doesn't make sense. If it's cleared, it's put somewhere, which it clearly isn't because it's removed. Remove the latter line.

Quote
remove the vague "normal bit" saying.

I'd rather use / than 'or' there, to make it clearer that the accumulator and the A register are different names for the same thing.
<blm> zsnes users are the flatearthers of emulation
I for one just like some plain old gifs.
granted, they don't give you a detailed explanation (like what happenes when using an address) but they are still neat :3


Anime statistic on MyAnimeList:
400 animes completed ✓
6000 episodes completed ✓
100 Days completed ✓
... what even am I doing with my life?
Alcaro, I still don't understand, Using this file as a debug to see what number in a ram, I did this:

Code
global_code:

LDA #$20	;\same as LDA #$20 : STA $87 and changes mario's powerup to #$00
LSR $19		;|
STA $87		;/


;display value to status bar
!Ram = $0087			;input a number of what ram address you want to read
!StatusBarPos = $0F0D		;the position it will appear on status bar


	LDA !Ram
	LDX #$00
loop:			;\
	CMP #$10	;|convert tile value to hex (0-F digit)
	BCC Return	;|
	SBC #$10	;|
	INX		;|
	BRA loop	;/
Return:
	STX !StatusBarPos
	STA !StatusBarPos+1


	RTS

I replace that $19 with another number $93 (left/right side of block ram address) and the number on the status bar remains #$20.
Give thanks to RPG hacker for working on Asar.
the code prints the value stored to the RAM address $87.
You use LDA #$20 : STA $87... no suprise you still get the same value even if you change $19 to something else.
Why don't you just use snes9x debuger anyway?

Also, what Alcaro is trying to say is, that using LSR <RAM_Address> does not have any influenc on A what so ever.

Code
LDA #$20	;A is now #$20
LSR $19		;the LSR will be peformed on the address $19.
		;all the bits in $19 will be shifted one to the right
		;if you had a mushroom (#$01) you will no be small (#$00) + the carry will be set
STA $87		;A is still #$20 because the last command didn't have any influence on it

Anime statistic on MyAnimeList:
400 animes completed ✓
6000 episodes completed ✓
100 Days completed ✓
... what even am I doing with my life?
Yes, I use LSR on a different address and the same thing happens
so:
LDA #$20
LSR $93
STA $87

$87 = #$20

Alcaro (I think) claimed that using $19 is different.
Give thanks to RPG hacker for working on Asar.
Originally posted by GreenHammerBro
Alcaro (I think) claimed that using $19 is different.

No, I didn't. All addresses are equally weird when you use those bit shift operations on them; $19 was just an example.
<blm> zsnes users are the flatearthers of emulation
Okay, I put the notice on the chart.
link
(hopefully, I understand Alcaro correctly)
Give thanks to RPG hacker for working on Asar.
Clear improvement, but it's still a little unclear what happens to !ram1. I like the comparison with TSB/TRB, but it's not very clear what "they set a bit" means.

ROR still says SEC and pretends to be CLC.

And that red bit is still incorrectly described. Clearing a bit means that a bit that exists after the instruction is now 0; the red bits do not exist after the instruction, therefore they are removed aka discarded, not cleared.
<blm> zsnes users are the flatearthers of emulation
done (maybe)
image
I don't know if I suppose to switch the CLC SEC on the ROL/ROR (added CLC on ROR). ram1 is explained that its has been changed and has stored back into ram1.
Give thanks to RPG hacker for working on Asar.
...

Now you swapped the carry on ROL and ROR, but both still pretend to have CLCs. Carry is clear in both on the diagrams at the right, and the resulting values of !ram are still the same as you'd get if carry is clear.

You also seem to have added a small white rectangle on top of a few letters near the bottom. I'm not sure what happened there, but it should be an easy fix.

The only similarity between LSR !ram and TRB !ram is that both change !ram without being STA. Clarify that, or the TSB comparison gets rather confusing; a bad comparison is worse than no comparison. Alternatively, remove the last sentence from the last paragraph.

You may also want to mention that the flags are still set by LSR $19 (and similar).

It is improving, but annoyingly slowly.
<blm> zsnes users are the flatearthers of emulation
just for the sake of it, I'm gonna try to explain this once more as well:


You missinterpeted the SEC here. It's SET CARRY.
In other words, the carry is set before you even load A with anything:

Code
SEC		;A=0000 0000 C=1
LDA #$01	;A=0000 0001 C=1
ROL		;A=0000 0011 C=0
STA !ram	;= #$03

;The bit7 of A got moved into the carry and the carry is now on bit0

Anime statistic on MyAnimeList:
400 animes completed ✓
6000 episodes completed ✓
100 Days completed ✓
... what even am I doing with my life?
fixed the error about using SEC when the box has the carry is being 0, now they are both CLC (clear carry since the carry it starts with).


Strange rectangle is removed.

added "keep in mind that flags are still set by LSR/ASL on certain address like $19.
Give thanks to RPG hacker for working on Asar.
"since the carry it starts with"
What. You can't know anything about the initial value of the carry flag. Neither value is more natural.
I can also swear I said I'd prefer if one of them is SEC. It makes the explainations clearer.

"on certain addresses"
More nonsense.
There are no opcodes that favor or disfavor any address, or act differently in any way depending on which address they are pointed to, with the exception that some opcodes only support some addressing modes.
Is that clear enough? If no, I'm going to look for an excuse to apply banhammers.

(Also the g in "Ram1 have its bits being shifted" lacks its tail.)
<blm> zsnes users are the flatearthers of emulation
Originally posted by Alcaro
"since the carry it starts with"
What. You can't know anything about the initial value of the carry flag. Neither value is more natural.
I can also swear I said I'd prefer if one of them is SEC. It makes the explainations clearer.

"on certain addresses"
More nonsense.
There are no opcodes that favor or disfavor any address, or act differently in any way depending on which address they are pointed to, with the exception that some opcodes only support some addressing modes.
Is that clear enough? If no, I'm going to look for an excuse to apply banhammers.

(Also the g in "Ram1 have its bits being shifted" lacks its tail.)

"on certain addresses"

*panic* OOPS I FORGOT TO REMOVE THAT LINE SORRY, THAT WAS UNINTENTIONAL.

"since the carry it starts with"
oops typo problem.

"I can also swear I said I'd prefer if one of them is SEC. It makes the explainations clearer." - Alcaro
"You missinterpeted the SEC here. It's SET CARRY." - JTS

I'm confuse, should I change the carry box (the "before") to 1 in ROR or ROL?

"Also the g in "Ram1 have its bits being shifted" lacks its tail."
the letter "i" and the "g" must have been touching each other..
Give thanks to RPG hacker for working on Asar.
Originally posted by GreenHammerBro
"I can also swear I said I'd prefer if one of them is SEC. It makes the explainations clearer." - Alcaro
"You missinterpeted the SEC here. It's SET CARRY." - JTS

I'm confuse, should I change the carry box (the "before") to 1 in ROR or ROL?

I assume what Alcaro wants you to do is show how it would look if the carry was set (thus using SEC) in ONE OF THEM (that is to say, not both)

So yes, you just change the CLC to SEC, replace the 0 in the "before" carry box with a 1 and make sure to shuft them properly.
That is, assuming you use LDA #$01, in case of ROR it would now be #$80 (carry still set) and in case of ROL it would become #$03 (carry now clear)
Anime statistic on MyAnimeList:
400 animes completed ✓
6000 episodes completed ✓
100 Days completed ✓
... what even am I doing with my life?
Double post :<
Anyway, inspired by GreenHammerBro, here are the .gif's :3





Edit: LSR re-added
Anime statistic on MyAnimeList:
400 animes completed ✓
6000 episodes completed ✓
100 Days completed ✓
... what even am I doing with my life?
*intense sweating*
file

SEC and CLC bits are now telling the truth for the carry box in ROR and ROL in the "before" statement. Also changes the way its used so that they match the "changes" column.
*teeth starts chewing on fingernails*
(will it gets accepted?)
Give thanks to RPG hacker for working on Asar.
On first glance, I don't see any problems with it.
I would have accepted earlier versions of this too though, so you'll have to wait for the big boss' Alcaor's statment :P
Anime statistic on MyAnimeList:
400 animes completed ✓
6000 episodes completed ✓
100 Days completed ✓
... what even am I doing with my life?
Yes, that's all the major things I can think of.

There is a little potential for improvement, though: "Ram1 have its bits being shifted by one step" seems to lack the tail on a few letters, and I'd rather append "!ram" to the last line.

But since Jack can't find anything major either, I'll accept this. Give me a while to handle the bureaucracy and I'll get it up somewhere.
<blm> zsnes users are the flatearthers of emulation
Okay I figure it out, when I use the select box around an area using paint, I have moved some parts including the Y and G's tails.
link
Hopefully everything is fixed. *fingers crossed*
Give thanks to RPG hacker for working on Asar.