View Single Post
Old 29 December 2013, 00:14   #1
Registered User
Join Date: Aug 2004
Posts: 2,828
AGA border sprites

Just noticed something playing with AGA emulation. I'm guessing the same thing happens on a real Amiga, but anyway...

Using an AGA config, boot Workbench 3.1. Use Overscan prefs to change the NTSC text overscan size to the maximum possible (724x241). Use the default mouse pointer with hotspot at the top left. Enable border sprites using BSprite.

With an NTSC non-interlaced WB, move the pointer to the extreme right. Notice that the sprite brightness reduces. That's because the sprite is sort-of interlaced; half its lines are shown in each frame, with the others transparent. With an NTSC interlaced WB the effect is different; the pointer shimmers more noticeably. With a PAL WB (interlaced or not) the pointer disappears when it is in the rightmost position.

Is the effect with NTSC related to the long/short line toggle?

Update/addition: I noticed another issue with the same setup (border sprites enabled). Open Pointer preferences and draw some vertical lines at the right edge of the pointer image. Click Use. Move the pointer to the extreme right, then slowly left. Notice that the thickness of the rightmost vertical line (which should be one low-res pixel width) changes as you move the pointer. It alternates between one low-res pixel and half that, until the right edge of the pointer is inside the WB screen are again. A similar thing applies when you set the pointer to high-res; there, the rightmost pixel alternates between normal and disappeared as you move the pointer in from the right.

If you set the Workbench screen mode to super-high res and pointer sprite to low res, the rightmost pixel column of the pointer sprite changes width from 1→2→3→4→1 etc. shres pixels as you move the pointer to the left. With a high-res pointer, the rightmost two pixel columns of the pointer are affected.

I can upload a bootable ADF with those settings if you want.

Update 2: I also got WinUAE (2.7.0 official) to hang/crash by setting full overscan, enabling border sprites and setting the pointer hotspot towards the right of the image, then moving the pointer to/around the upper left of the screen. I managed to trigger the crash in both PAL and NTSC super-high res laced modes (32-colour if that's relevant), but it didn't happen immediately, or every time.

On the crash WinUAE log output was many lines of this:
JIT: Argh --- Am already in a handler. Shouldn't happen!

Last edited by mark_k; 29 December 2013 at 17:22.
mark_k is offline  
AdSense AdSense  
Page generated in 0.08769 seconds with 9 queries