Thursday, October 22, 2020

SSTNPL v0.4 - Major New Features!

SSTNPL for the longest time has been limited to its goto+label system, and its stack-based subroutine system, when it comes to controling code flow... 




not anymore...

If, for, and while: SSTNPL Code Blocks are HERE!


 Yes. That code in the screenshot, on the left? Thats real SSTNPL code.

SSTNPL now features nestable:

  • new `block` conditional mode, allowing any conditional to create code blocks
  • for loops!
  • while/until loops!
  • new conditional 'break' mode & non-conditional 'break' statements, for breaking out of loops, and skipping to the end of blocks.
  • new `end` statement, which defines the ends of each block.
  • blocks can be nested.
  • you can even use blocks inside subroutines!

Helpful Links:

SSTNPL Documentation (which has been updated with information on the new features.)

Flow control Test 1

Flow control Test 2


Tuesday, October 20, 2020

Future Roadmap Update: SBTNET, Gen 3, and CerberOS.

 SBTNET

 SBTNET is the one of these three items thats planned to be tested with Gen 2.

The basic idea of SBTNET is a fully balanced ternary networking system similar to TCP/IP, emulated using a client-server scheme built against TCP/IP. 

 Its intention is to be used with not only SBTCVM, but other balanced ternary systems as well, as SBTNET's protocol schemes will be open, and the refrence client & server code Free (libre) open source software.

The SBTCVM-BTT2 text encoding is planned to be extended with additional control codes, and chosen as standard for SBTNET.

SBTCVM Gen 3

Gen 3, while it will be based upon and backwards compatible with SBTCVM Gen 2's ISA, roms, disks & compiler toolchain, the VM itself will be 12 trits, generally be expanded ISA & featureset wise, and fully reimplimented in the Rust programming language.

CerberOS

CerberOS is a future project for SBTCVM Gen 3. (one that will influence much of Gen 3's ISA extensions over Gen 2's ISA) 

Its design goal is to implement a highly portable ternary *nix-like OS, that may stand as a foundation for other ternary OSes, and act as the OS for more ternary systems than just SBTCVM.

A purpose-built portable programming language will be designed for this task, as neither existing SBTCVM Gen 2-compatible languages are portable enough,to handle a portable Ternary OS Kernel of the type CerberOS will require.

Sunday, October 11, 2020

SBTCVM-SBTVDI BIOS: new quicktest menu.

Memory size calculation.

Another, slower, more in-depth memory test.


Sound test & info option.

SBTCVM-DOS command.txe: memory state preserved between program loads.

This new memory backup support lets command.txe save its memory, and restore it when its reloaded. This not only makes drive letter selection persistent, but also opens the door for eventual batch script support once the disk IO is functional...


Not to mention, the overall formatting has been streamlined by only showing the READY status line on the first run of the session.