Language…
3 users online: FighterGoomba, TheNewGuy531268, X11Gbyte - Guests: 109 - Bots: 127
Users: 70,457 (2,475 active)
Latest user: Conjtheruler

Posts by Majora252

Majora252's Profile → Posts

I'm creating a few custom blocks with asm and I need to know about the jumps. Why do you need them? How do you know which jump to put? And what order do they go in?

Also, what are offsets, how do they work and how do you know which ones to chose? Thanks in advanced.
Your layout has been removed.
I still don't really get it. I tried a custom block and the game crashed when I touched it. This is the code:

Code
JMP Main : JMP Main : JMP Death : JMP Return : JMP Return : JMP Return : JMP Return

Main:
	LDA $0DBE	;Load current lives
	CMP #$00	;Compare it to 1
	BEQ Die		;Branch if lives=1
	DEC $0DBE	;If not, decrease by one
	STA $0DBE	;Store it
	RTL	;And return
Die:
	STA $0DBE	;Store lives again
	JSL F6o6	;Jump to death routine
	RTL	;Return

Return:
	RTL	;Return

Your layout has been removed.
After deciding to have hdma in my hack, I installed it on a clean using d4s's hdma design kit. However, after inserting the gfx and exgfx (from my other hack, because I was porting over to a clean one for hdma) the palletes got screwed up and now everything has stripes on it like this:



I tried over and over, but it keeps doing it. Is there any way to prevent it, or fix it? Or do I have to fix the palletes manually?
Your layout has been removed.
If I change it to this, it crashes.

Code
JMP Main : JMP Main : JMP Death : JMP Return : JMP Return : JMP Return : JMP Return

Main:
	LDA $0DBE	;Load current lives
	CMP #$01	;Compare it to 1
	BEQ Death		;Branch if lives=1
	DEC $0DBE	;If not, decrease by one
	RTL		;And return
Death:
	STA $0DBE	;Store lives again
	JSL 00F606	;Jump to death routine
	RTL	;Return

Return:
	RTL	;Return

Your layout has been removed.
Originally posted by Adam
Oh, It works! Thanks Kaijyuu! The one thing is that it keeps taking lives after zero, and I end up with numbers like P0.


Try something like this:

Code
Main:
	LDA $0DBE	;Load current lives
	CMP #$01	;Compare it to 1
	BEQ Death		;Branch if lives=1
	DEC $0DBE	;If not, decrease by one
	RTL		;And return
Death:
	STA $0DBE	;Store lives again
	JSL $00F606	;Jump to death routine
	RTL	;Return

Return:
	RTL	;Return


Unfortunately I don't really understand the jumps, so you'd have to do them yourself. I also recommend reading Iceguy's ASM tutorial. It helped me understand ASM a lot better than Schwa's.

Also, a ROM address is a part of the game that CANNOT BE LOADED OR STORED TO!!!!! Instead you usually jump to ROM addresses to trigger specific routines and such. So if you wanted a block that instantly kills Mario, you'd do this:
Code
JSL $F606
RTL


$00F606 is the death subroutine, so you'd jump to it to have Mario die.

RAM addresses can be loaded and stored to change aspects of the game such as lives and coins. They are also used in sprites and in complex ways, but I'm only good enough with asm to create blocks.

So if you wanted a block that multiplied Mario's coins by 2 when touched, you'd do this:

Code
LDA $0DBF     ; Load current coin amount into accumulator (A)
ASL A               ; Multiply A by 2
RTL                 ; Return


I hope this clears up some stuff.
Your layout has been removed.
It works now, however, if you touch its side then you die instantly regardless of lives, and it brings you lives up to 17. Also, how do you slow down the rate so it doesn't drain a life every frame?
Your layout has been removed.
You insert sprites using spritetool. The exgfx should come with it and is found in the "tilemaps" folder. The egg should go right after the birdo if its a seperate file.

Here's a small tutorial on how to use mikey's spritetool.

1. Put the asm and cfg files into the sprites folder (or a different one if the readme says so). The birdo is already in there.

2. Open up "sprites".txt (create one if not included) and enter a number in hex, followed by the name

3 Put your ROM in the same folder as spritetool

4. Run spritetool and enter the name of your ROM, and add ".smc" after it. Now press enter.

5. Enter the name of your list and then put ".txt" after it. (List is usualy called "sprites", so you'd type "sprites.txt" and press enter.

6.Press enter if it says "Sprites inserted Succesfully". If it has an error messgage , then press enter and find what you did wrong.

7. Open your ROM in Lunar Magic and enter sprite editing mode (Green Shell)

8. {Press shift=insert and a message you show up.

9. In first box enter the number you put in your list back at step 2.

10. In the last box enter 2 (or 3 if it uses the extra bit)

Your sprite will now appear in the top left corner of the level for you to move and insert more. Note that they look glitched in lunar magic, but not in the game (unless you forgot to insert and enable the ExGFX for the sprite).
Your layout has been removed.
If your trying to put "Logical.Madness Presents" or something like that, than you might have to experiment with the colors, as most of them are grey or white.
Your layout has been removed.
If no music or sound is heard in a level with music, than it probably requires the N-SPC patch.
Your layout has been removed.
Originally posted by Yukari Yakumo
(fuck you snn)


I don't think you should treat an adminstrator like that......

Anyways, congratulations to Supertails on his promotion. He is hard working and a great person, so I think he REALLY deserved it.
Your layout has been removed.
(restricted)
Make sure the ExGFX goes into SP2. If it goes into SP1 then it glitches up certain tiles (like the point one).
Your layout has been removed.
Wow, this game looks simply amazing!! Is there any chance you could upload whispy woods to the file bin? Also, how long does it usually take carol to respond to an e-mail?
Your layout has been removed.
I'm "moving" this to advanced, so this version can be closed.
Your layout has been removed.
After deciding to have hdma in my hack, I installed it on a clean using d4s's hdma design kit. However, after inserting the gfx and exgfx (from my other hack, because I was porting over to a clean one for hdma) the palletes got screwed up and now everything has stripes on it like this:



I tried over and over, but it keeps doing it. Is there any way to prevent it, or fix it? Or do I have to fix the palletes manually?

Also, its for every level, not just this one.
Your layout has been removed.
No problem.

I'm always glad to help.
Your layout has been removed.
Bad Pallete Man

Paints himself and the ground horribly, causing your eyes to bleed. To defeat him, close your eyes untill he gets fed up and leave.

Bad Patch Man

Throughs bad patches at you. If you get hitby 3 of them, than mario glitches up and the ROM crashes and becomes bad, causing yoou to redownload the hack.
Your layout has been removed.
Nope. I install the HDMA the exact way it tells me to. I remove the header, rename it to "smw".smc, patch it, edit level attributes and then exacute "linker".bat. The screwed up graphics appear in LM and ingame, and it does that with all the clean ROMs I try.

*EDIT* Maybe the patch screwed up something in the assembly code? I'll post it later to see if something about the pallete code is wrong.

Also, when I open it in LM, a message box pops up saying something like "The chksm has been modified. While Lunar Magic can still open the ROM, it is reccomended to get a new one."
Your layout has been removed.