Skip to content

An SVG renderer for Atari 8-bit computers, written in Turbo-BASIC XL

License

Notifications You must be signed in to change notification settings

savetz/Renderific

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

25 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Renderific

An SVG renderer for Atari 8-bit computers, written in Turbo-BASIC XL

Renderific 1.0 - Readme

Renderific is an SVG renderer for Atari 8-bit computers, written in Turbo-BASIC XL. It tries to parse SVG Tiny files and draw them on screen and/or on an Atari 1020 plotter.

Sample output:

Sample Image 1 - flower Sample Image 2 - curve Sample Image 3 - triangle maze Sample Image 4 - Atari 800 logo Sample Image 5 - woodsy scene from Transylvania game Sample Image 6 - ANTIC podcast logo Sample Image 7 - circuit diagram Sample Image 8 - twisted polygon

It is copyright 2019 by Kevin Savetz (@KevinSavetz) and released under the MIT license.

The SVG Tiny spec is at https://www.w3.org/TR/SVGTiny12/

Thanks to @PneumaticDeath for help on the Bézier math, and @BillLange1968 for plotter testing.

Fun places to get/make SVGs: Mazes: http://www.mazegenerator.net

Flowers: https://bleeptrack.itch.io/overflower

Twisted Polygon Generator: https://msurguy.github.io/polygon-tool/

Flags: https://github.com/lipis/flag-icon-css

Bugs and things

I've found some SVGs that seem to intentionally draw in negative regions. I'm not sure what their intention is - is the viewport moved to include part of the negative quadrants? Anyway, Renderific doesn't support that. Many of the SVG flags at https://github.com/lipis/flag-icon-css do this. (I'm looking at you, Djibouti and Bouvet Island.)

I kind of wanted to add the "a"rc path command, although it is not in SVG Tiny. It looks complicated. https://www.w3.org/TR/SVG11/paths.html#PathDataEllipticalArcCommands

It doesn't handle FILLs.

I did not support the SVG TEXT command while rendering to the plotter. It's probably easy to add but given the other plotter issues I thought it best to wait.

The program really wants the file to end with </svg>, otherwise you'll get an EOF error.

If any single command in the SVG file (e.g. very long PATH commands) exceeds the DIMensioned length of A$ (10000 characters) the program will crash.

However, the program should nicely handle SVG files with any type of line ending, e.g. Atari, Mac, Windows, whatever.

About

An SVG renderer for Atari 8-bit computers, written in Turbo-BASIC XL

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published