Jump to content

Photo

Full resolution Horizontal Scrolling PF - testers needed

Strong-ARM DEMO

16 replies to this topic

#1 ZackAttack OFFLINE  

ZackAttack

    Dragonstomper

  • 731 posts
  • Location:Orlando, FL US

Posted Sat Jan 6, 2018 12:11 AM

I think I've achieved horizontal playfield scrolling with via bus stuffing and the Strong-ARM driver. If you have a harmony cartridge please try it out.

 

Current Version:

Attached File  Cherry-Tree-Scroll3.bin   32KB   52 downloads - 1/25/18 Optimized driver with lookup table and self modifying ARM code, fixed graphic data glitch

 

Past Failures:

Attached File  Cherry-Tree-Scroll2.bin   32KB   53 downloads1/6/18 disables VBLANK during stuff detection because collision registers won't be set if VBLANK is enabled.

Attached File  Cherry-Tree-Scroll.bin   32KB   49 downloads

 

Not supported in emulators yet. Here's what it looks like for those who don't have a harmony cart.

 

Spoiler

 


Edited by ZackAttack, Thu Jan 25, 2018 1:08 AM.


#2 iesposta OFFLINE  

iesposta

    River Patroller

  • 3,788 posts
  • Retro-gaming w/my VCS
  • Location:Pennsylvania

Posted Sat Jan 6, 2018 12:35 AM

Apart from the very first line, this is scrolling just like Scramble Arcade and Super Cobra Arcade.
I thought with the power of BUS that I was going to see a 1/2 pixel scroll or 2 color clocks, instead of the usual 4 Color clock wide playfield pixel.

Fine 1-pixel horizontal play field scrolling was shown to work, however only on normal CRT televisions.
Ones like SONY WEGA that processed the signal a lot \would only scroll 3 or 2 of the 4 pixels.

Further testing would be needed, but I think a 1/2 pixel scroll would work on most if not all displays.
I tried to get 1/2 PF pixel scroll into Super Cobra Arcade and Mappy, but they are really pushing the display per scan line without having to worry about moving the screen a 1/2 playfield pixel by outputting an even more off-spec signal.

#3 iesposta OFFLINE  

iesposta

    River Patroller

  • 3,788 posts
  • Retro-gaming w/my VCS
  • Location:Pennsylvania

Posted Sat Jan 6, 2018 12:42 AM

eshu did perfect 1-pixel horizontal playfield scrolling in this thread:
http://atariage.com/...-5#entry2985911

At the end he did post a 2-pixel scroll, and it did work on my Sony WEGA, which did not like the 1-pixel scroll that worked so well on a Zenith.

#4 TheHoboInYourRoom OFFLINE  

TheHoboInYourRoom

    Moonsweeper

  • 401 posts
  • Whackadoo thingamajig
  • Location:Illinois

Posted Sat Jan 6, 2018 12:08 PM

No dice, and it didn't really improve after ~20 minutes of warmup.

cherry-00.jpg



#5 ZackAttack OFFLINE  

ZackAttack

    Dragonstomper

  • Topic Starter
  • 731 posts
  • Location:Orlando, FL US

Posted Sat Jan 6, 2018 8:37 PM

Apart from the very first line, this is scrolling just like Scramble Arcade and Super Cobra Arcade.
I thought with the power of BUS that I was going to see a 1/2 pixel scroll or 2 color clocks, instead of the usual 4 Color clock wide playfield pixel.

Fine 1-pixel horizontal play field scrolling was shown to work, however only on normal CRT televisions.
Ones like SONY WEGA that processed the signal a lot \would only scroll 3 or 2 of the 4 pixels.

Further testing would be needed, but I think a 1/2 pixel scroll would work on most if not all displays.
I tried to get 1/2 PF pixel scroll into Super Cobra Arcade and Mappy, but they are really pushing the display per scan line without having to worry about moving the screen a 1/2 playfield pixel by outputting an even more off-spec signal.

Thanks for testing. Sorry there's not really anything visible to indicate the power of bus stuffing here. This is going to be an engine for a fighting game so fine scrolling wouldn't really benefit it much. The next step will be to add in the sprites, that's when we'll get to see something that's only possible with bus stuffing. What's really cool about this demo is how little resources are consumed to achieve the scrolling playfield. I use less than one scanline worth of vblank to precalculate a few offsets and the rest of the calculations are done while the screen is being drawn. The ARM is hard at work shifting bits around in between servicing the 6507 bus. All that remaining vblank and overscan time should make it possible to have more expensive audio, physics, and AI.

 

No dice, and it didn't really improve after ~20 minutes of warmup.

attachicon.gifcherry-00.jpg

Funny story. After looking into this some I realized that the collision registers won't be set if vblank is enabled. So enabling vblank to hide the detection phase ended up completely breaking it. I disabled vblank and set the color of everything to black instead. Please give version 2 a try, it should work much better. Thanks!



#6 iesposta OFFLINE  

iesposta

    River Patroller

  • 3,788 posts
  • Retro-gaming w/my VCS
  • Location:Pennsylvania

Posted Sat Jan 6, 2018 11:52 PM

Yes I agree it is all quite difficult. 

The Playfield is only a 20-bit register, which duplicated makes 40 wide pixels. 

It is easy to duplicate and mirror the left side. 

To make the right side different, the data has to be changed during the drawing of the scan line.

 

The Playfield is broken into a 3 sections.

A 4-byte nybble PF0, then 8-bytes going one way PF1, then 8-bytes going the opposite way PF2. 

So getting that mess to all move left, even at the Playfield's 4-wide pixel, is quite a challenge. 

 

Good job!



#7 MayDay OFFLINE  

MayDay

    Moonsweeper

  • 275 posts

Posted Sun Jan 7, 2018 8:35 AM

I think version 2 is a success- to clarify, there is an odd little section between the two mountains, but otherwise it scrolls and displays correctly on my problematic Jr.  I think that's just where you were probably filling in a bit of playfield data to make it an even number or something.



#8 ZackAttack OFFLINE  

ZackAttack

    Dragonstomper

  • Topic Starter
  • 731 posts
  • Location:Orlando, FL US

Posted Sun Jan 7, 2018 9:28 AM

Yeah, that's just bad image editing on my part.

#9 Mountain King OFFLINE  

Mountain King

    Dragonstomper

  • 683 posts
  • Location:Philadelphia, PA

Posted Sun Jan 7, 2018 11:56 AM

This worked for me as well. I love the tree.



#10 ZackAttack OFFLINE  

ZackAttack

    Dragonstomper

  • Topic Starter
  • 731 posts
  • Location:Orlando, FL US

Posted Sun Jan 7, 2018 7:29 PM

This worked for me as well. I love the tree.

 

The tree is MayDay's masterpiece. It actually looked better before I mutilated it to fit with the graphics engine. I'm sure once I give him the final engine specs he'll come up with something even better.



#11 TheHoboInYourRoom OFFLINE  

TheHoboInYourRoom

    Moonsweeper

  • 401 posts
  • Whackadoo thingamajig
  • Location:Illinois

Posted Fri Jan 12, 2018 2:41 AM

Hmm. Version 2 crashes immediately for me and produces a video signal like as if the Atari were turned on without a cartridge.

I suppose I'll clean the contacts and try loading the demo from a different SD card tomorrow.



#12 ZackAttack OFFLINE  

ZackAttack

    Dragonstomper

  • Topic Starter
  • 731 posts
  • Location:Orlando, FL US

Posted Fri Jan 12, 2018 9:17 AM

Hmm. Version 2 crashes immediately for me and produces a video signal like as if the Atari were turned on without a cartridge.

I suppose I'll clean the contacts and try loading the demo from a different SD card tomorrow.

 

That's very surprising since the change from version 1 is so small. I don't really see anything that could have changed the timing enough to cause a crash. Sometimes I pull the SD card out of the computer too quickly without ejecting it and it corrupts the bin file and produces the same results. Could that have happened?



#13 TheHoboInYourRoom OFFLINE  

TheHoboInYourRoom

    Moonsweeper

  • 401 posts
  • Whackadoo thingamajig
  • Location:Illinois

Posted Fri Jan 12, 2018 12:33 PM

I don't believe so. I plugged in the card, copied the file over, unmounted the card, and then unplugged it.

Regardless, I'll get back to you later today.



#14 TheHoboInYourRoom OFFLINE  

TheHoboInYourRoom

    Moonsweeper

  • 401 posts
  • Whackadoo thingamajig
  • Location:Illinois

Posted Fri Jan 12, 2018 8:34 PM

Hmm. Version 2 crashes immediately for me and produces a video signal like as if the Atari were turned on without a cartridge.

I suppose I'll clean the contacts and try loading the demo from a different SD card tomorrow.

No improvement, sadly.



#15 ZackAttack OFFLINE  

ZackAttack

    Dragonstomper

  • Topic Starter
  • 731 posts
  • Location:Orlando, FL US

Posted Fri Jan 12, 2018 8:56 PM

No improvement, sadly.

 

ok, thanks for trying. I'll see if I can improve the timing further.



#16 ZackAttack OFFLINE  

ZackAttack

    Dragonstomper

  • Topic Starter
  • 731 posts
  • Location:Orlando, FL US

Posted Thu Jan 25, 2018 1:09 AM

Hmm. Version 2 crashes immediately for me and produces a video signal like as if the Atari were turned on without a cartridge.

I suppose I'll clean the contacts and try loading the demo from a different SD card tomorrow.

 

Can you try version 3? If that doesn't work can you try this test program too?

 

Attached File  strong-arm-optimized.bin   32KB   49 downloads



#17 TheHoboInYourRoom OFFLINE  

TheHoboInYourRoom

    Moonsweeper

  • 401 posts
  • Whackadoo thingamajig
  • Location:Illinois

Posted Sat Jan 27, 2018 10:26 AM

It works!







Also tagged with one or more of these keywords: Strong-ARM, DEMO

0 user(s) are browsing this forum

0 members, 0 guests, 0 anonymous users