Showing posts with label SBTGA. Show all posts
Showing posts with label SBTGA. Show all posts

Wednesday, November 11, 2020

SBTCVM Bench: Groundbreaking rework (v0.2.0)

 

New Features:

  • Instant return from desktop from Bench apps (doesn't include SBTCVM-DOS)
  • new wallpaper via PLRLE image compression technology.
  • Newly reworked with the new SBTGA Plotter Buffer System for more impressive graphics.

Thursday, November 5, 2020

fttarget: New Plotter game.

fttarget, (or Falling Ternary Targets) is a `falling target` style plotter game for SBTCVM Gen 2. it joins Oncoming Trains as one of Gen 2's two SBTGA-based example games.

SBTGA mode 31: new high-resolution 575x575 plotter mode.

included demo of mode 31

 SBTCVM Gen2-9 now has a high resolution, 1:1 scaled 575x575 plotter mode, in the form of SBTGA mode 31.


In terms of uses, Mode 31, offers FAR greater information density than the older 243x243 mode 30.






modified plottertext showing VERY small text.


BINRLE: new 2-tone image compression format

575x575 tritmap

BINRLE Image Compression

BINRLE is an efficient 2-tone RLE image compression format supported by the BINRLE options in gfxcon.py

it features 2 additional interpolated conversion modes:

  • BINRLE 2-line interpolation: simulates 3 tones
  • BINRLE 4-line interpolation: Simulates 5 tones. 


other features: 

  • the BINRLE module features a similar set of control variables to PLRLE, so switching between the two algorithms as needed, is fairly quick.
  • More efficient compression than PLRLE
  • both colors can be changed during runtime.

 
 

 

2-line interpolation
 

 

4-line interpolation

 

 

 

 

 

 

Thursday, July 16, 2020

SBTGA Plotter: now with triangle support!

Seen here is the newly enhanced plottest rom, compete with a sort of spaceship made out of (2D) triangles.

(No 3D rendering capacity was used or yet exists in SBTCVM...)

PLRLE Enhancements

The PLRLE format has been upgraded in 2 important ways: 
1. The PLRLE encoder in gfxcon.py, can now perform a form of lossy compression on images. (as seen in the screenshot above)
2. The PLRLE decoder module has been optimized and split into 2 versions: one with alpha colorkey support, and one without. Both with sizable decode performance boosts.

Thursday, April 30, 2020

New SSTNPL Module: segment

'plottertext' TROM showing segment in action.
The new segment SSTNPL module is an easy to use text renderer for SBTGA's plotter mode. its name comes from the 'segment-style' approach it uses for rendering text.


Features:
  • automatic newline support
  • built against the new SBTCVM Bi-directional buffer interface for printing text nearly as easily as SBTCVM's native TTY output.
  • fully customizable color, scaling, character spacing, and line spacing.
  • MUCH faster than drawing text using PLRLE tritmap images.

SBTCVM Bench: A single-taskng GUI for SBTCVM


basic 'desktop' layout.
SBTCVM Bench is a SBTVDI-disk based GUI for SBTCVM Gen2-9.


Its feature set is currently sparse, but it does have a lot of promise to be an interesting program.

It currently has about & credits screens, and a 'launcher' that loads up SBTCVM-DOS.

Expect more posts on this & SBTCVM-DOS in the coming months...

To run SBTCVM Bench, just type
run bench
in the XAS Shell (xas.py)

Wednesday, February 27, 2019

video: Oncoming Trains v1.5 - a balnanced ternary 2-track dodge game.

Oncoming trains, a video game for SBTCVM and technically its first true video game.

v1.0 has been covered in a video before, though v1.5 offers vastly improved visuals. (relatively)

Thursday, February 21, 2019

Video: oncoming trains - a balanced ternary video game for SBTCVM.

A short Video featuring a new SBTCVM game: 'oncoming trains'.
On a Technical level, its SBTCVM's first graphical SBTGA game, and hence its first true video game.

It uses SBTGA mode 30: the vector plotter. that's why it looks so sparse, as the plotter can only do 3 drawing operations: fill screen,draw rectangle, and draw line.





Whether its the first true ternary video game in general, i don't know.







Sunday, October 15, 2017

SBTGA: SBTCVM's graphics adapter.


It happened.

SBTGA mode G0, 114x81 @ 3-trit RGB, (27 colors)
SBTCVM, for the longest time, has had no framebuffered displays. and while the 9x9 and 27x27 plotters have proved functional, the time has come.

SBTGA currently has a standby mode (default), and Graphics Mode 0 (G0, shown). While its indeed colorful, SBTGA has more features planned: such as formatted text modes, and a new, high-resolution plotter mode to replace the old 9x9 and 27x27 plotters that have proven quite useful.


Under the hood, SBTGA is SBTCVM's first complex IObus device, (unless you consider a basic psudo-random number generator or scratch memory, complex)
it works via a pointer address that points to a portion of Memory Bank A (the first memory bank), that tells SBTGA where its DMA-based framebuffer is. 

Naturally this lets programs have precomputed framebuffer memory ranges.In fact, this is the first job of the new MK2-GAT.py utility (GAT meaning Graphics Adapter Toolkit): To convert 114x81 binary images, to SBTGA Mode G0 framebuffer maps.

And while for the moment, SBTGA lacks even sprites, Its a definite start to a new chapter in SBTCVM's development.