Mord Posted June 7, 2009 Share Posted June 7, 2009 (edited) I'm sure it's nowhere near as compact as the masters can make it, but this little program does a cycle 73 hmove positioning routine. It positions one player with a regular hmove positioning routine (the 4 bars player) while positioning the red dot player with the cycle 73 routine. They're both positioned to the same X coordinate variable, Xpos. The cycle 73 routine is run during the visible screen in the solid yellow band. Don't know if it's useful to others or not, but here it is if so. cycle73.zip Edited June 7, 2009 by Mord Quote Link to comment Share on other sites More sharing options...
Omegamatrix Posted June 8, 2009 Share Posted June 8, 2009 (edited) Demo's are always useful. IIRC Hmoves at 73 or 74 cycles can only fine adjust right, is that right? (no pun intended). I think they go right 15 or pixels instead of 8. I imagine a positioning routine could compensate by positioning the player left 7 pixels more than usual, but the edges of the screen would be a little trickier. Has anyone written a routine for positoning a moving sprite with hmove 73 or 74? Edit: I see your demo has a moving sprite. I will take a closer look at it. Edited June 8, 2009 by Omegamatrix Quote Link to comment Share on other sites More sharing options...
Mord Posted June 8, 2009 Author Share Posted June 8, 2009 Demo's are always useful. IIRC Hmoves at 73 or 74 cycles can only fine adjust right, is that right? (no pun intended). I think they go right 15 or pixels instead of 8. I imagine a positioning routine could compensate by positioning the player left 7 pixels more than usual, but the edges of the screen would be a little trickier. Has anyone written a routine for positoning a moving sprite with hmove 73 or 74? Edit: I see your demo has a moving sprite. I will take a closer look at it. The way to get the sprite positioned to the extreme right is to position it to the far left then use the finetune value to make it wrap-around to the right, which this routine does. If you hit RESPx while in the horizontal blank, the sprite still gets positioned to pixel 0 (As I hit it fairly early in the extreme right cases.) Quote Link to comment Share on other sites More sharing options...
+batari Posted June 10, 2009 Share Posted June 10, 2009 I just found a reference that strongly suggests that an M-Network programmer figured out cycle 73/74 HMOVEs back in 1983. Eric Del Sesto, when working on a game called "Monkey Business" that was never released, said he developed a technique he called "Hidden V-clocks" to suppress the HMOVE lines. When asked about his technique, he said, "The M Network group had an accepted workaround for this which would cause those lines to appear on every scanline, thereby forming a solid black border at the left edge of the display. My Monkey Business prototype demonstrated a method to eliminate those lines completely. The trick was to write to certain registers in exact synchronization with the horizontal retrace timing." The programmer didn't specifically say he used cycle 73/74 HMOVEs, but he either did that or he hit RESPx only and accepted the coarse positioning of 3 pixels, which I doubt. I found this here: http://www.intellivisionlives.com/bluesky/...its/atari3.html The website above incorrectly suggested that Activision did the same thing in released games. However, to my knowledge, they only did the workaround of the solid black bar on the left of the screen and never did figure out cycle 73/74 HMOVEs. 1 Quote Link to comment Share on other sites More sharing options...
Omegamatrix Posted June 10, 2009 Share Posted June 10, 2009 Now that is interesting! It sure sounds like he did find the hmove 73/74 technique. Quote Link to comment Share on other sites More sharing options...
Recommended Posts
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.