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 - KingMike

Pages: 1 2 3 4 [5] 6 7 8 9 10 ... 115
Does it matter?  Does FCEUX compute it incorrectly or something?

FCEUX ignores the header when it calculates the hashes.

Actually, CRC validation could create another annoyance with NES patches: header garbage.
Back in the Nesticle days, some people (such as whoever/whatever "DiskDude!" was) would insert garbage in the headers (including byte 0x7, which is the high bits of the mapper number, since apparently the last Windows version, the most widespread, of Nesticle didn't support beyond mapper 15). Unfortunately while Nesticle died, that crap got into the "GoodNES" database as "good" ROMs where it lived on forever, as the most commonly distributed ROMs on the Internet as GoodNES became the defacto standard in NES ROM sets. Can only imagine how many ROM hackers made hacks out of those ROMs and were unaware of the issue.
I think I may even once deliberately made a patch with a cleaned header against one with a dirty header as, in IPS format, that would wipe that crap out as a bonus to ensure no complaints of "it doesn't work" because of a corrupted header.

ROM Hacking Discussion / Re: How do you make an SRAM hack?
« on: September 22, 2015, 12:12:31 pm »
The first Mega Man game had no save at all, the rest had a password that was a grid of dots that had to be filled in.
Unless you dug deep enough into a disassembly (I think someone did one for MM1 but I don't think so on the rest), you probably wouldn't be able to just delete the password screen entirely, so the best route you could go (again, with ASM hacking) would be to have the password data stored to SRAM when it is given to you (after game over or finishing a level), then at the time the player loads the password input screen, load the SRAM to make the password auto-entered (so the player just has to press Start to confirm, same effect as if they had entered it manually).
This "auto-entry" method is pretty much what Classic NES Metroid for the GBA (the US/EU standalone release as well as the unlockable in Zero Mission for all regions) did.

ROM Hacking Discussion / Re: How do you make an SRAM hack?
« on: September 22, 2015, 09:48:22 am »
Learn ASM. (that's the hard part)
Learn how Mega Man's passwords are represented in RAM. (usually not so hard once you know the above)
And then it should be easy.

Programming / Re: NES equivalent for VBA's disassembler?
« on: September 20, 2015, 09:59:27 pm »
Though I recall FF1's windows using hard-coded size/location parameters.
I don't know if FF2 is similar. I suspect out of battle menus might be possible to expand.

However, in-battle menus might be a bit more restricted.
From looking at the Name Table Viewer in FCEUX, it looks like FF2 is using some kind of CPU trickery where the main battle screen is a static tilemap, but the menu part of the screen is actually scrolled horizontally (without affecting the top part of the screen). Like you notice FF2 has basically three windows: the enemy name window, the main stats window, and the command window. All three are actually loaded into the VRAM (across the NES' 2-screen wide tilemap) but the enemy and command windows are hidden at appropriate times using that partial-screen scroll.
FF1 looks like it's erasing the old windows before redrawing new ones (that is, something different).

ROM Hacking Discussion / Re: Trying to make a table for Jungle Wars (gb)
« on: September 20, 2015, 09:46:11 pm »
Most likely those characters are unused in normal text. Loading the game up in bgb and opening the VRAM viewer, it seems that if those characters are used then it will draw the player's name to those 4 tiles.

As for how much progress I've made, I've dumped the script but it looks like I'll need to a playthrough to find all the pointers as they seem to be embedded in the ASM.
I've been doing a simple "make the game barely playable in 'English'" hack with machine-aided translation horribly chopped to fit space limits, though I do plan to do another passover later to do expansion work to make a good translation possible to insert.
(I had a previous hack done but it went wrong somewhere with bugs such as crazy character stat changes at level-up)

Site Talk / Re: Policy on ROM hosting and IPS patches
« on: September 20, 2015, 11:19:33 am »
From I read about bleem! it was predicted Sony would've been unlikely to win with fair legal representation, but they sued just to bleed bleem's authors financially (Sony basically throwing money around because they could).

Script Help and Language Discussion / Re: Adian no tsue cover Translation
« on: September 20, 2015, 11:11:24 am »
Yes, it's a series.
From what I recall, it (or at least one of the games, I can't remember which was which) seemed kind of like Zelda but when you finish a room, you gotta do a sudden math quiz! :P

Since it was asked before why would Nintendo complain about ROM hacks on youtube yet do nothing to repro makers?

The answer is: probably because it's easier for Nintendo to do. All they need to do is file a complaint to youtube.

There was a time Nightcrawler tried to take down a repro maker making repros of his translation patches. I believe he reported the repro maker to his ISP or US-based website host or whatever. Something like that.
Site went down for like a day or something maybe until the repro maker just found a new host in like the Middle East or Asia, somewhere known to be more tolerant of copyright infringement.

Even though if they're in the US, Nintendo could probably sue the site owner directly, but I'm assuming there's quite of bureaucratic legal work they'd still have to work through to make it all formal and such.

Site Talk / Re: Policy on ROM hosting and IPS patches
« on: September 19, 2015, 11:12:47 am »
I see using an emulator as like the video game equivalent to a music player.
You're supposed to copy the ROMs from your own carts, but that's not the emulator's fault if you download instead.

That would be like saying Windows Media Player is an illegal problem because you can play illegally downloaded music, as well as music ripped from your own CDs (which I'm pretty sure since then "format shifting" had since been ruled legal).

I read Nintendo's claim on their website against ROMs, but I'd say claiming that backup of ROM-based media is excluded from personal backup rule "because it's unnecessary" would definitely be the letter and not spirit of copyright law, if in fact Nintendo isn't just fear-mongering emulator users. That's gotta be precedent from like the 2600 era, and I would expect that, like music, would be changed if challenged again. 2600 games weren't 40+ hour RPGs with battery backup to fail and render the games practically unplayable, weren't prone to scratches (if optical media were to be excluded by Nintendo's logic), and most of all, when newer less-permenent Flash-based media fails. Isn't the FlashROM commonly used by GBA/NDS likely to make the carts fail sooner than MaskROM-based NES, etc. But even then in the '80s, wasn't EEPROM use in retail carts common? (which only had a 20-year life expectancy, but maybe then those people who decided 20 years = "unnecessary to backup".)

Although LZSS compression is very common on the SNES, there are numerous variants that I don't think there would be a good tool for it.
(I've been using one I wrote but heavily modified for every game)
Differences such as:
-is the image size stored the compressed or uncompressed size
-is a 0 bit a compressed or uncompressed flag?
-what direction to read the bits representing the compression flags (bits stored right-to-left or left-to-right)
-size of LSZZ flag values (most are 1 byte, or 8 flags per loop, but 16 can be done and I might've even seen it before)
-LZSS read buffer size
-the bit order of LZSS read codes
-which also affects the maximum size of an LZSS run. Most often it's 4 bits length (possible range 3-18 bytes) and 12 bits offset (buffer size 4KB) but games can shift that bit distribution (such as I know I've seen at least one go 5/11)
-are LZSS read buffer pointers absolute or relative
-is LSZZ buffer initalized before use?
-the initial write offset in the LZSS buffer (often 0, but I've seen 0xFEE more than once)
-plus also Jelly Boy 2's decompression function had a bug detecting bank boundaries so any data that crossed an address 0x?7FFF would continue 32KB later in the ROM. So I had to modify my decompressor to emulate that bug once I figured it out (as it affected one graphic that needed localization).

And that's not counting finding pointers to said data.

On GBA/NDS there are tools because the BIOS have a built-in decompressor, as such the exact "standard" format has defined all those details. Whereas SNES has not.
I'm assuming GBA/NDS games using BIOS decompression would have some sort of standard code to call that function that tools can sniff for to find code.

ROM Hacking Discussion / Re: Screenshots
« on: September 18, 2015, 01:59:54 am »
I say worry about getting the script in first. It looks great so far. As far as squish tiles are concerned, it will never look 100% right but its probably the only way to insert the spell names as is. I'm sure you could figure out the ASM needed to make it 3 instead of 4 columns, but the other hard part is in the menu.

Do you intend to add a B Button dash like Grond was able to with the Final Fantasy I + II?

The other problem is, that I recall, each character in FF2 can only learn 16 spells, so the menu was designed to show all spells on screen at once with no scrolling. So unless the author has plans to add scrolling (which is probably a significant amount of work), it would probably be more feasible to reduce it to single-spaced menus with 2 columns of 8 each.

I suppose it depends on the rules of the speedrun community you're playing in.

Didn't TAS change the rules awhile ago to set a certain hierarchy to follow when playing (like NTSC English > PAL English > other EU languages > Japanese, something like that) and demanding user play the first officially available release on the list, unless there's a good reason like version-specific bugs?

I think the biggest complaints about Nintendo's plan, last I read, is that it would let Nintendo decide what games are allowed to be played and it demanded no games for rival consoles on the same channel.

The difference I see with uploading a Let's Play video vs. a movie or music, is that the game requires effort to play, and so the playthrough is content being created (whereas illegally uploading an unedited movie or music does not).
I don't see watching a play video deterring sales much different than someone borrowing a DVD from a friend, watching and deciding they don't want to buy it. (I'd have said Netflix or Redbox, except I'm sure that's still somewhat making money for the copyright owner)

ROM Hacking Discussion / Re: Chrono Trigger SRAM save editor
« on: September 15, 2015, 01:49:46 am »
Looking for a way to edit the .SRM files for Chrono Trigger.  All I've found are ZSNES-specific save state editors rather than SRM editors which would work on any emulator.
SRM files work in both SNES9X and ZSNES instead of forcing people one way or the other.
Should work with the offsets from the SRM files generated by a non-hacked vanilla Chrono Trigger US ROM.

Optional Enhancement
Ideally you should be able to run it alongside the game and have it look for specific values and then calculate offsets based on that.  Like I'd enter Chrono's Max HP and it would then calculate all the offsets for other character hp and so on.  The more values I manually enter the more 'accurate' it would become.  This way you can apply a retranslation and not be completely messed up because of it.

I guess the big reason everyone made savestate editors back then is because (I'm assuming like most games) SRAM is checksum-protected. Either they didn't know how to calculate the checksum (it's usually pretty simple to find the code if you know ASM), which is the more likely case, or they didn't want to bother having to update it after every edit they made.
That would sound like a reasonable request. But asking for a tool that can work even if some ROM hack changes around the SRAM format is a bit of a big request. For any translation/hack. Because save editing tools are not magic crystals that can just find data for any hack that uses an unknown format. :P

Gaming Discussion / Re: Does anyone know what game this is?
« on: September 13, 2015, 03:48:13 pm »
Family Pinball (released without the Namco characters as Rock 'n Ball in the US)

Personal Projects / Re: Ninja Gaiden: Asshole Edition (Alpha ver. download)
« on: September 13, 2015, 10:55:36 am »
It actually means "modification" but the word became popularly known among ROM hackers due to certain popular Super Mario World hacks by a Japanese author. Some western fans decided to call the hacks Asshole Mario (I think they were actually untitled, but the videos were "making my friend play my Mario hack" or something).

You could start by opening the ROMs in Tile Molester and trying to locate the gfx. They are likely uncompressed.
I haven't done anything SMS-related but I know the SMS video chip is an extension of a chip (TMS99-something) used in several early '80s consoles (like SMS and Colecovision). The MSX ports thus probably use the old video mode and what the author is probably suggested is to rework it into the SMS-exclusive graphics mode (aka Mode 4).
I think one difference is that the TMS "legacy" modes use a palette predefined by the hardware while Mode 4 allows the palette to be changed.

I do remember reading years ago one review, I think it was for Super Mario Galaxy 2, where the site admitted Nintendo told the reviewers they were only allowed to talk about certain levels.
That right there makes you kind of question the credibility of the professional review system. Though maybe the companies don't want major spoilers in reviews but still if they can have the ability to censor reviewers who get advance copies of copies, that's that...
(obviously they wouldn't be able to do anything to someone who reviewed a self-purchased retail copy, but then that site would be behind)

Pages: 1 2 3 4 [5] 6 7 8 9 10 ... 115