At 07:43 PM 05/07/99 -0400, you wrote:

>'bout a week ago, HeXx and I (d-fader) watched a lil
>demo HeXx and Michel Onstein made 'bout a century ago..
>Tha' demo scrolled the screen horizontal!! (just like
>vdp(24), but then horizontal..)

I think I know the trick. Assuming it's an MSX2 demo, because horizontal
scrolling on a 2+ doesn't even require a trick, just the right register
number.

Using the same VDP register used for SET ADJUST (vdp(19)???), you can move
the screen 16 pixels horizontally. This is not like vdp(24), because the
screen doesn't wrap around, only the border widths change. So you can see
the edge of the screen moving. But the middle of the screen is scrolling OK.
Part 2 is that while you take several interrupts to scroll those 16 pixels,
you copy the entire screen to another VRAM page, 16 pixels shifted. So that
once the SET ADJUST scrolling has reached its limits, you can do a page
switch and start all over again.
Part 3 is to make the screen edge appear to be stable. If you skip this,
you get the effect of Space Manbow running on MSX2. One way is to make
solid black sprites and use them to cover pixels in the border that
shouldn't be visible. Another way is to make the VDP update the outer lines
using a command. For example, draw a black box (1 pixel wide) on the left
edge of the screen and copy a strip of GFX (1 pixel wide) on the right edge
of the screen. This requires proper timing, otherwise the outer lines will
flash.

The intro of Almost Real (skyline scroll) uses this trick (and some others).

Bye,
                Maarten



****
MSX Mailinglist. To unsubscribe, send an email to [EMAIL PROTECTED] and put
in the body (not subject) "unsubscribe msx [EMAIL PROTECTED]" (without the
quotes :-) Problems? contact [EMAIL PROTECTED] (www.stack.nl/~wiebe/mailinglist/)
****

Reply via email to