NESnake 2 version with correct controller reading ?
Moderator: Moderators
NESnake 2 version with correct controller reading ?
Is there any out there yet ? As the game uses DMC and uses a one-pass controller read routine, I've heard there is phantom controller reads due to this.
Is there any corrected version arround ? Looks like the author has not been active on NESdev for a while. Also, the controller reading is a little complicated to be simply hacked, and there is almost no free space in the ROM (all I can find is a bunch of $ff at iNES adress 0x7542 (ROM adress $f532), so I guess that's better than nothing.
I should make the original controller routine jsr here and do Blargg's 3-pass controller reading routine.
Is there any corrected version arround ? Looks like the author has not been active on NESdev for a while. Also, the controller reading is a little complicated to be simply hacked, and there is almost no free space in the ROM (all I can find is a bunch of $ff at iNES adress 0x7542 (ROM adress $f532), so I guess that's better than nothing.
I should make the original controller routine jsr here and do Blargg's 3-pass controller reading routine.
Useless, lumbering half-wits don't scare us.
Heya Matrixz, just wanna say that I love your game. Haven't gotten the cart yet because of other stuff I have to get, but I look forward to snagging a copy : )
Back to the topic, I'm thinking Bregalad is referring to the discussions in these topics:
DPCM generates extra $4016 read pulse
and
DMC-fortified controller read routine
Back to the topic, I'm thinking Bregalad is referring to the discussions in these topics:
DPCM generates extra $4016 read pulse
and
DMC-fortified controller read routine
Yeah, that's the problem. The game kept pausing when I tried to play it on my PowerPak. A fix would be great. 
- BMF
RuSteD LOgIc
RuSteD LOgIc
I see. Actually on both my PAL Scandinavian NES and French NES, i have none of these problems. Which i guess means either the DMC does not coincide with the controller reads when playing the game on PAL units, or the DMC/4017 read phenomena does not happen on PAL units at all.
I lost the source code to NeSnake 2, so the game would have to be hacked or disassembled-assembled to fix it. Just maybe i'll go fix it if no one else does.
I lost the source code to NeSnake 2, so the game would have to be hacked or disassembled-assembled to fix it. Just maybe i'll go fix it if no one else does.
The game has pausing bugs? Does this happen on the cart or on the rom or both? I don't have the cart or rom myself, but I am curious about it now that this has been brought to light.
This is something that's only an issue with DMC use yes? Regular controller routines will be fine if no DMC was used in a game?
This is something that's only an issue with DMC use yes? Regular controller routines will be fine if no DMC was used in a game?
- Hamtaro126
- Posts: 783
- Joined: Thu Jan 19, 2006 5:08 pm
-
CartCollector
- Posts: 122
- Joined: Mon Oct 30, 2006 8:32 pm
Well, I've made myself a hacked corrected version. Since I couldn't find any free zeropage variable, I used two variables at $7f0 and $7f1 (those seemed like unused but I'm not 100% sure, I've got some crash in two-player modes but they may be due to hardware fault).
Also the "fix" is for the PAL version so I doubt anyone would be very interested. I did think in an horribly hackish, slow and ugly way. I'd like the author to make a "good" fix of the game instead. Also I can't confirm no controller glitches happen in PAL, because I have a "fixed" version that I fixed pre-emptively.
And yes, the three-passes controller reading is needed only when DPCM is used. As long as you don't touch it there is (as far we know) no problems with one-pass controller reading.
Also the "fix" is for the PAL version so I doubt anyone would be very interested. I did think in an horribly hackish, slow and ugly way. I'd like the author to make a "good" fix of the game instead. Also I can't confirm no controller glitches happen in PAL, because I have a "fixed" version that I fixed pre-emptively.
And yes, the three-passes controller reading is needed only when DPCM is used. As long as you don't touch it there is (as far we know) no problems with one-pass controller reading.
Useless, lumbering half-wits don't scare us.
Alright, i'll try fix it. I'll post a link here upon the case of success.
Either way i still have the source to the enhanced version of it, which RetroZone's Super NeSnake 2 was based on.
When it comes to DRDHack (the XML-based romhacking utility).. the latest version is kind of powerful but due to the reason mentioned above i don't have the binary or the documentation hosted anywhere. Its discontinued, regardless, for various resons.
My last website disappeared suddenly due to something happening to the host, and i havent made an effort to put up a new one. I wouldn't get that depressed over losing the source code to NeSnake 2Hamtaro126 wrote:I am sorry to hear that, no wonder your website is down.
That is so sad concerning an update for your Universal NES ROM editor which uses a XML variant (can't think of the name right now)
Second time's the charm maybe?
When it comes to DRDHack (the XML-based romhacking utility).. the latest version is kind of powerful but due to the reason mentioned above i don't have the binary or the documentation hosted anywhere. Its discontinued, regardless, for various resons.
Okay, to clear up, there are 3 main versions of NeSnake:
NeSnake - Basic version, should have no problems. Included with Super NeSnake 2
NeSnake 2 - The game in question with the problem. Not the same as Super NeSnake 2. Can be found on ROM sites.
Super NeSnake 2 - RetroZone cartridge version, it appears Bunnyboy fixed the game to have no problems.
NeSnake - Basic version, should have no problems. Included with Super NeSnake 2
NeSnake 2 - The game in question with the problem. Not the same as Super NeSnake 2. Can be found on ROM sites.
Super NeSnake 2 - RetroZone cartridge version, it appears Bunnyboy fixed the game to have no problems.
http://www.geocities.com/matrixz15/nn2_ntsc_13t.zip
There.
The controller read routine is now hacked to use a slightly faster version of Blargg's 4-pass controller read routines. (Meaning it also reads Famicom external controllers, i guess).
I tested this in Nestopia 1.40 and the problems that were before seems to be gone. If someone tests this on NTSC hardware, we'll know for sure. It seems to glitch more now, i guess becouse things take more CPU time.
Additionaly, a minor code error for the controller #2 was fixed, although it didnt seem to cause bugs before.
There.
The controller read routine is now hacked to use a slightly faster version of Blargg's 4-pass controller read routines. (Meaning it also reads Famicom external controllers, i guess).
I tested this in Nestopia 1.40 and the problems that were before seems to be gone. If someone tests this on NTSC hardware, we'll know for sure. It seems to glitch more now, i guess becouse things take more CPU time.
Additionaly, a minor code error for the controller #2 was fixed, although it didnt seem to cause bugs before.