Jump to content
Jet Set Willy & Manic Miner Community

[File] JSW jagged finger effect (demo)


Norman Sword

Recommended Posts

By the additional JR, I presume you are referring to the jump forward (on occasions when you're not copying the attributes) to the INC L and then the jump back to LOOP?  (Whereas in your previous code, if it wasn't time to copy the attributes, you jumped straight back to LOOP.)

 

Aside from that drawback, you could have implemented the above in the version with the XOR A command, thereby saving a further two bytes (no need to do the DEC L and INC L in order to set the Zero Flag at the end of the final iteration of the drawing loop)?

Edited by IRF
Link to comment
Share on other sites

Thanks for the latest code, Norman.  I've tweaked and replaced the 'Norman' file attached to my post from last night (the one with three files attached for 'compare and contrast' purposes: unfixed, Ian's fix and Norman's fix).

 

EDIT: In implementing your latest tweak, this time I have left the two additional spare bytes at the end of the screen-drawing code (instead of bothering to consolidate it with the six spare bytes at the start).  They might be useful for some other purpose (such as adding an AND #80 prior to the nearby check of the internal 'ticker' [see #8A50], which has the effect of doubling the speed of the digital clock on the status bar).

Edited by IRF
Link to comment
Share on other sites

Danny, I've removed the files for now, so I can carry out further tweaking, and then re-upload a (hopefully) new and improved version.  That'll save you from looking at various iterations, with slight improvements each time - it would be better for you to see the final article, and observe the greatest 'Before vs After' contrast in one hit!

 

Thanks, Ian.

 

I've had a look at the fixes created by Norman Sword and Ian, and I have to say the improvement is very visible  :) . There is a particularly dramatic improvement with the arrows in The Swimming Pool - great difference. Congratulations, Gentlemen!  :D

 

One thing I noticed - please note this is not criticism, only feedback since it's been asked for - is that while Willy is manoeuvring on the ramp in West Wing very small parts of him - one of his outermost bits, so to speak - occasionally seem to flicker in red. I'm not sure why it's red, to be honest, but that's what I see (in SPIN).

 

If this really happens (and is not an illusion of mine), it makes me think of cleaning up old music using digital filters. In some cases it eliminates the hiss beautifully, but produces tiny little artifacts here and there which you can hear, something that wasn't in the original recording. So the overall result is definitely much better than the original, but there is just a tiny little bit of new "contamination".

 

Still, this is just something that seems to have caught my attention. On the whole, the improvement is very big  :) .

 

So I would just have a couple of questions at this point:

 

- Is there a definitive fix already? If so, which of the above code is it?

 

- Are you both OK with the code being used in "third party" projects, with due credit given, of course?

Link to comment
Share on other sites

Danny, in relation to the flickering in red in the West Wing, I think that in the 'patched' test files I changed the Air INK setting in that room to red, to illustrate the 'delayed attributes' effect.

 

I intended to do the same for the 'unpatched' test file, to allow a direct comparison.  But I can see that I omitted to do that.  That explains the discrepancy you noticed.  (My apologies for the confusion!)

 

In the corrected 'unpatched' file attached here, I have changed the Air INK to red in West Wing.  Hopefully you will agree that rather than creating the the glitch you can observe, the patch actually improves it.

 

But the 'patched' files illustrate the point that the glitch is mostly, but not entirelyeliminated.  There will always be an infinitesimal delay between the graphic bytes being drawn and the associated attributes being copied - the program cannot do both things at precisely the same time.  But the final patch minimises the delay (and hence the glitch) as much as is physically possible.

JF&DA_Bugs unfixed_Red INK in West Wing.z80

Edited by IRF
Link to comment
Share on other sites

- Is there a definitive fix already? If so, which of the above code is it?

 

- Are you both OK with the code being used in "third party" projects, with due credit given, of course?

 

In terms of the definitive fix, I would go with Norman's code in post #40 of this thread.

 

I have no problem with it being used in third party projects.  :)

Edited by IRF
Link to comment
Share on other sites

Thanks for the additional file, Ian - indeed the flickering is much more visible when the fix is not in place.

I should add that in the original JSW, with the 'JF&DA' patch not in place and the Air INK and PAPER in West Wing both set to black, if the glitch does occasionally present itself, it would be manifested as a few pixels of Willy's sprite disappearing for a microsecond (i.e. rendered in black on black, as he crosses a cell-boundary). But that would be virtually imperceptible to the human eye - it's only when the Air's INK and PAPER settings are distinct (and in starkly contrasting colours) that you can briefly detect it. (I think 'Entrance to Hades' is the best example of that in the original game.)

Edited by IRF
Link to comment
Share on other sites

Just to report that there is an error in the files that I uploaded earlier in this thread to demonstrate the patch in action; at #8A30 I put '7E' LD A, (HL) when I should have put '77' LD (HL), A.

 

However, this only affects the code which causes Willy to run at double speed during the toilet dash (the error means that he just automatically proceeds leftwards at the normal speed after reaching the bed). It doesn't diminish the ability to use the files to compare the 'before vs after' effect of the patch on the Jagged Finger and Delayed Attribute Effects.

Edited by IRF
Link to comment
Share on other sites

Although having said that, perhaps the Jagged Finger effect is particularly pronounced as Willy runs down the ramp in Master Bedroom during the toilet dash?

 

And if you made the Air INK red in one of the rooms that he runs through en route to the toilet, then the Delayed Attribute effect might be very noticeable (in the unpatched file) during the end sequence?

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.