VDP tricks in scr4 using move/logical commands

Página 1/2
| 2

Por ARTRAG

Enlighted (6455)

Imagen del ARTRAG

07-11-2005, 12:46

While in scr4, switching to scr5/6/7/8 during vblank and executing copy commands is feasible, does anyone have ideas for exploiting this feature?

Tiles definition:

Does anyone have in mind some nice way for using the VDP logical commands for dynamic pattern definition?
In order to have parallax, I was considering scr6 logical copy (that can move the patterns of 2 bits), but as far as I can see, the best solution seems to have a bulk of pre-computed patterns to copy with fast copy (in scr8 or scr5 now is irrelevant).
Any suggestion?

Animation:

Using tpset on the logical map, it should be possible to move large objects made of tiles like they where in scr5. This BEFORE copyng the tiles from the logical map to the scr4 page.
On this side things seem easy, unfortunately in order to do 8 direction VDP scrolling the logical map needs to be scrambled (look at the code), so square blocks of tiles have to be split in multiple copy commands...If anyone has the will to open the pandora pot looking the algorithm behind the code he/she is welcome.

Sprite definition:

Here it is easy, as the sprite patters are 32 (4 colors per line) one could store in vram the color definitions corresponding to those patterrns, with and without the blody EC bit active.
This means that wasting 16*2*32*2 = 2048 bytes of VRAM you can copy on fly the color definition of any sprite definition in any sprite plane.
Each copy moves 16*2 bytes (4 colors per lines => 2 sprite planes) and you could need up to 32 pattern to be animated corresponding up to 32 fast copy commands with 32 bytes each.

Any further idea?

Login sesión o register para postear comentarios

Por msd

Paragon (1405)

Imagen del msd

07-11-2005, 13:05

Offcourse on 2+ you can just enable command support for every mode Tongue

Por ARTRAG

Enlighted (6455)

Imagen del ARTRAG

07-11-2005, 18:47

Yes but,
1) in vblank you can have it working also on msx2 in scr5/6/7/8
2) do you have some idea on effects to be done in scr4 using scr8 commands?

Por msd

Paragon (1405)

Imagen del msd

08-11-2005, 14:02

why scr8 commands?

Por ARTRAG

Enlighted (6455)

Imagen del ARTRAG

08-11-2005, 14:09

You mentioned msx2+.
AFAIK on msx2+ the commands in scr4 work like they were in scr8. Do they?

Por msd

Paragon (1405)

Imagen del msd

08-11-2005, 14:38

Don't they just work like in every mode? Tongue

Por geijoenr

Master (180)

Imagen del geijoenr

30-07-2020, 20:46

@ARTRAG did you ever came up with ways on how to use this?

I am interested on whether using LMMM/HMMM in sc4 makes sense for moving tile definitions between pages.

It looks to me tricky because of the coordinate transformation and the fact that colors and patters need to be copied
which means doubling the number of commands. Also LMMM seems rather difficult to use because of the color/pattern separation.

Por ARTRAG

Enlighted (6455)

Imagen del ARTRAG

30-07-2020, 21:27

I did a couple of tests
Something is here
https://www.msx.org/forum/development/msx-development/vdp-co...

Por ARTRAG

Enlighted (6455)

Imagen del ARTRAG

30-07-2020, 21:48

Por Dolphin101546015

Champion (282)

Imagen del Dolphin101546015

04-08-2020, 07:26

ARTRAG wrote:

Each copy moves 16*2 bytes (4 colors per lines => 2 sprite planes) and you could need up to 32 pattern to be animated corresponding up to 32 fast copy commands with 32 bytes each.

Any further idea?

Have idea:
For speedup, keep several sprite pages and switch without copying, with attr pages together.

Por ARTRAG

Enlighted (6455)

Imagen del ARTRAG

05-08-2020, 08:42

VTEST at the above link comes with sources
You could try your idea starting from there

Página 1/2
| 2