News: 11 March 2016 - Forum Rules

Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Messages - Dr. Floppy

Pages: [1] 2 3 4 5 6 ... 29
Personal Projects / Re: Super Mario Kart Koopalings
« on: December 14, 2017, 05:02:40 pm »
Do you need jailbreaking of Luigi's lower sprites, e.g. made such that he doesn't share them with Mario?

Any word on this project's progress?

Personal Projects / Re: Super Mario Kart Koopalings
« on: December 07, 2017, 02:28:48 pm »
Who's going to occupy the 8th slot?

Newcomer's Board / Re: Castlevania nes palette swapping
« on: October 31, 2017, 09:51:49 pm »
If you're referring to the 2-frame fire animation seen on the very first screen of Level 1, it would be #97 and #99.

NES games can select from two sprite modes: normal, and "tall". With the former, each sprite defined in the $200-2FF (or wherever) buffer zone invokes an 8x8-pixel tile from sprite data in PPU Memory.

With "tall" sprites, each sprite is effectively two regular, consecutive 8x8 tiles stacked vertically (even# on top). Assigning an odd Tile# to the $200-2FF buffer region results in data being pulled from the BG region of PPU Memory.

Thus, the values of #97 and #99 are pulling Tiles 96/97, and 98/99 from the Background tilesheet and using them to create the animated fire sprites.

Programming / Re: Where did you learn assembly from?
« on: October 27, 2017, 08:37:31 pm »
Ah, I should've specified organic chemistry, 90% of which is dominated by just four elements!

Core instructions and addressing modes are definitely key. If 6502 ASM were a typical 15-week college course, learning the eight different ways to LDA would easily be worth 2-3 weeks of time.

ROM Hacking Discussion / Re: Zelda 2 hack - Help needed
« on: October 27, 2017, 08:27:07 pm »
How many Zelda fans would seriously consider a retro console of the notoriously worst Zelda title out there?

I would.

Zelda 2 is a great game! I wish there were more hacks of it, especially this time of year.

Newcomer's Board / Re: Castlevania nes palette swapping
« on: October 27, 2017, 08:21:56 pm »
NES games arrange sprite data in a buffer zone, usually at $200-2FF. If it isn't there, it'll be at $300, $400, $500, $600 or $700. Experience will enable you to identify this visually during routine gameplay; for now, you can confirm the sprite buffer location by searching for the snippet "8D-14-40". The byte directly prior to that is the high byte of the RAM Page used as a Sprite Buffer. Thus,

A9-02-8D-14-40 means the Sprite Buffer is at $200-2FF.

A9-03-8D-14-40 means the Sprite Buffer is at $300-3FF.

A9-07-8D-14-40 means the Sprite Buffer is at $700-7FF.

Within this region, sprites are defined in four-byte "YTAX" chunks. The first byte is the vertical position onscreen (values higher than #EF are too low to be seen). The second byte is the Sprite Tile#. The third byte is the assigned sprite palette, whether or not it's flipped horizontally and/or vertically, and if it should be placed behind non-godtone backgrounds. The fourth byte is the sprite's horizontal position onscreen.

You can begin tracking down sprite palette assignments by setting Write Breakpoints to the respective Attribute byte of a given sprite's YTAX (Y-pos, Tile#, Attributes, X-pos) chunk. For example, if the sprite is defined at $220-223, set a write breakpoint to $222 and backtrace it from there.

Bits of Attribute Byte = VHBx xxPP

V = Flip Vertically?
H = Flip Horizontally?
B = Put Behind non-godtone Backgrounds (SMB3 where Mario drops down behind large white blocks, but is still "in front" of the dark blue sky)
xxx = unused
PP = Sprite Palette assignment

Programming / Re: Where did you learn assembly from?
« on: October 25, 2017, 08:29:13 pm »
Back when I used to tutor Chem students, I'd begin the first session by displaying an intimidating poster of the Periodic Table. When they looked uncomfortable enough, I'd tell them to ignore 90% of it.

Similarly, one thing I stress with 6502 newcomers is that most of the 151 instructions are rarely/never used. I count the number of commands considered high/routine use at 36.

ROM Hacking Discussion / Re: Zelda 2 hack - Help needed
« on: October 23, 2017, 01:13:57 am »
Something happened and no matter where I test it, when I try to enter the world map, it freezes, and I don't know how to pinpoint where it's coming from to even fix it. I could really use some help.

PM me. I'll probably have some productive free time this week...

Another thing to watch out for re: the Title Screen is the IRQ triggered just before the water. Most of it is hidden by the rock sprites on the center-right, but you can still see a small 8x1 patch of blue flickering.

Newcomer's Board / Re: Dr Mario punishment blocks counter
« on: October 23, 2017, 01:07:48 am »
Not sure if this helps, but changing the value at $$17CA from #16 to #1E will give you a better pause screen while playtesting.

(Or, use Game Genie code TOUOZYTO.)

ROM Hacking Discussion / Re: Zelda 2 hack - Help needed
« on: October 19, 2017, 05:05:35 pm »
What do you mean by "heading"?

The title screen graphics are at $$21010-2168F.

Are you going to tweak the original engine to support MMC5's extra channels, or insert an entirely new sound engine?

Newcomer's Board / Re: Custom SMB1 Music \"glitching\"
« on: October 14, 2017, 04:48:42 pm »
Bowser Dead: $$75D9 (length), $$75DE, $$75E0, $$75EB, $$75ED, $$75EF (shared with gunfire sound).

Bowser's Flame: $$7691 (length), $$769B, $$7FDA-7FF9.

Fireballkill/Shellkick: $$748E (length), $$7490, $$7492, $$7497, $$74A1 (should be ~ [half of length, + 1]), $$74A5, $$74AA, $$74AE.

Flagpole Shitta: $$73D0 (length), $$73D5, $$73DA, $$73DE.

Programming / Re: Where did you learn assembly from?
« on: October 11, 2017, 08:08:03 pm »
Rodney Zaks' "Programming the 6502"

^This^, particularly chapters 1 and 4.

Also, many glorious hours analyzing 6502 routines in FCEUxD's debug window. Diet Cherry Pepsiâ„¢ and Adderallâ„¢ likely helped promote and reinforce the concepts.

What happens when you just leap over the axe?

Newcomer's Board / Re: Custom SMB1 Music \"glitching\"
« on: October 10, 2017, 06:51:22 pm »
The "bump" sound effect is controlled by the values at $$7410, $$7412 and $$7414. (The last value also influences the fireball sound effect.)

The "pipedown/injury" sound effect is a bit more complicated. The duration of the effect is controlled by the value at $$74C7. The sounds themselves are controlled by the values at $$74D9, $$74DB and $$74DD.

If I put in enough effort and tweak enough lines of code, can I achieve what I'm after via hacking an NES rom?


Zelda 1 is a particularly good game for beginners, as you can familiarize yourself with every type of hacking (sprites, palettes, backgrounds, level layouts, text, music, ASM) at your own pace.

Tell us more about this "creative barf"!

ROM Hacking Discussion / Re: Super Mario Bros. MMC1 Assembly
« on: April 10, 2017, 12:00:11 am »
Perhaps this is what you're looking for?

Personal Projects / Re: Dragon Warrior 1 - ultimate patch and project
« on: January 08, 2017, 09:29:35 pm »
Quote from: joe73ffdq
Im not fully sure yet, but with the code I am looking at, it appears that the data I want to transfer will not work. C010/D010 determines a lot of all the functions of D010/10010. Moving any of it to 8010/C010 doesnt appear to work with only 240 bytes free space. There are too many JSR's to redirect. Trimming and eliminating certain code will eventually work once I get back to this.

Welcome to the 4-dimensional Gordian Knot that is the DW1 ROM. I've been chipping away at that thing on and off for the past few years in preparation for my own hack. You're probably better off leaving the fixed bank stuff in the fixed bank ($$C010-1000F), and relocating routines from the swappable banks to create new free space. Have you expanded the ROM yet?

I mean FFS how do you branch?  Do you manually count the number of bytes you have to skip?


And what if you want to insert 1 more instruction in your code and all your branches go to shit... how do you remember to update all of them?

You just do.

Quote from: mz
He does more because he seems to be awfully inefficient at this

"Seems"...  ::)

(if he really does type bytecode by hand and never writes ASM... He's most likely lying, though.)


Protip: "Bytecodes" are quicker to type.

Personal Projects / Re: The Legend of Emi Oracle of Grace
« on: January 08, 2017, 09:06:06 pm »
Okay, now I want the Oracle of Colors, forget all the other ideas!

Is that the best possible title?

Pages: [1] 2 3 4 5 6 ... 29