Monday, April 22, 2019

demoscene - Ternary Dreams - SBTCVM (6.5Khz ternary VM)







This demo is different from most in the 'demoscene' in that this is running in a 'Balanced ternary' Virtual Machine. as in, not 1 & 0, but +1, -1, & 0.





Program Size: ~2KiloNonets (2000 9-digit half-words)



Written in SSTNPL (a custom, label-goto-based language with stack-based subroutines.  With some in-line assembly. (a custom assembler is used.)



demo code: https://github.com/SBTCVM/SBTCVM-Gen2-9/tree/master/demos/ternarydreams (see *.stnp files for code)



Music data hand-written using SBTCVM Assembly 'raw' statements:

https://github.com/SBTCVM/SBTCVM-Gen2-9/blob/master/demos/ternarydreams/tdmusic0.tas0



uses SBTCVM's custom music engine:



https://github.com/SBTCVM/SBTCVM-Gen2-9/blob/master/vmsystem/r_standard_lib/musicengine.stnp



--- (emulated) Machine Specs ---



sound: 4-channel stereo waveform synthesis  (only 2 used in demo)



graphics: framebuffered 'vector plotter' can plot 600 lines/rectangles a second. 243x243 grid. NOT directly addressable.



Interrupts: none.



'Hardware' Timers: none



Clock speed: 6.5KHz (yes, you read that right! 6500 Hertz!)