Jump to content
IGNORED

VBXE speed


Recommended Posts

Yes, from memory the 1.0 version had the colourmap and little else.

Personally I think the bitmap modes and blitter are by far the most useful features. But the overall package brings us on par or better than midrange Amigas and Falcons for most graphical features at least.

  • Like 1
Link to comment
Share on other sites

Phaeron... when is that offsets added? Each pixel? when blitting one line (sizex=64 and sizey=0) why seems it adds the source stepx and stepy to start source? (Luckily it does but....)

 

X step is added each time the blitter steps to the next source byte within a row. Y step is added each time it processes a source row. Basically, the address of a source pixel at (x,y) in the blit is SourceBaseAddr + SourceStepX*x + SourceStepY*y. Pre-zoom and ignoring pattern mode, of course.

 

The X step is useful for rotation/flip operations and any time strided data is being accessed. This includes the attribute map (4 bytes/tile) and 80 column text mode (2 bytes/character).

 

As for why the VBXE does or doesn't have some features, that's partly for lack of anything to inform on what should be in it. There's not much software that uses VBXE and of course there was none when it was initially designed. To be honest it seems fairly well designed for a first iteration; it's just that as programmers we always want the hardware to do more.

 

The Amiga blitter didn't have fractional capability for regular blits. It could do fractional calculations in line draw mode, but that wasn't really usable for texture mapping. Unlike the VBXE blitter, it did have shifting capabilities, but that was to deal with the annoying evil abomination called bitplanes.

Link to comment
Share on other sites

I managed to do my 1d blits by the mentioned 90 deg rotation in my head... so I use ystep 12bits to parse my gradient table which is 4096 bytes long....

 

It's just ignoring the xstep when you do horizontal blits in my case.

 

So I use it as 4.8 fixed point.

Link to comment
Share on other sites

I really like the VBXE and this thread, but you both lost me long ago.

Isn't there something like Dummy guide to VBXE programming or VBXE for Basic programmers.

The official VBXE guide is more of a reference guide IMO, than a programming guide.

The examples are fine and well, but as somebody who can barely read 6502 assembler, much less understand it, I rather would have some high level explanation in Mad Pascal, for example.

Link to comment
Share on other sites

Hit the link, Stellar Shuttle, second one in my tagline.

It's got some VBXE enhancements for a Basic with some assembler program I did a long time ago.

 

I also think I released the source code to Quadrillion, I'd need to check.

There's not really guides to programming it around, there's some examples in the release packages on Candle's site. There's not a lot of VBXE based software around, probably less than 25 games or enhancements to existing games, and probably even less in the way of applications. A few demos, and probably well over 50 pictures by now.

Link to comment
Share on other sites

Depends on you knowledge... it helps if you know the concept of Blitter, bank switching etc.

 

There is a thread of Rybags even with some examples in basic. And I guess mad pascal has support, too.

 

Just do it like you would do in 80s. Poke around and look what happens on screen ;)

Link to comment
Share on other sites

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.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...