Skip to content
nanochess edited this page Aug 31, 2015 · 2 revisions

Welcome to the IntyBASIC wiki!

The rules for adding anything to the IntyBASIC compiler are:

  • It should be useful, no esoteric features.
  • It should be easy to understand.
  • It should be expandable.

The IntyBASIC compiler is structured in four classes:

  • compiler, for main syntax process
  • node, for expression trees
  • code, for peephole optimization
  • microcode, for keeping sequences of instructions.

The current TODO list: (it could happen or not)

  • Automatic distribution of program over segments. (suggested by DZ-Jay)
  • Page-flipped memory using LTO Flash (suggested by intvnut)
  • Short-circuit evaluation of AND/OR (suggested by freewheel)
  • PLAY VOLUME for changing music volume (suggested by First Spear)
  • Optimize programs that use only CONT so KEY process everything in one loop and one variable.
  • BCD addition and visualization (suggested by GroovyBee)
  • IntyColor: avoid to use GROM $5F in Color Stack mode.
  • Local variables in procedures.
  • Procedures as functions.
  • Add a jump at start of program to fall in first executable instruction.
  • New statement INCBIN
  • Support for strings in CONST.
  • Compilation option for unrolling loops. (possible only when statements are saved in memory)
  • 16-bits PRNG for RAND (suggested by DZ-Jay), there is a problem here that lots of programs depend on RAND 8 bits and the modulus operator is slow on big numbers.
  • Boolean access to variables (one bit for reading/assignment)
Clone this wiki locally