Change logs of ugBASIC language

Beta branch

MAIN cpc atarixl atari coleco c128z c128 c64 c64reu d32 d64 gb msx1 pc128op plus4 sc3000 sg1000 coco coco3 mo5 to8 vic20 zx

This log contains only updates since the last released version (1.17.1).


  • BETA UPDATE [rev. 20250329] BETA


    commit: b06378ba3 (on github)
    • Corrected dsk image generation for coco
    • Optimization of conditional comparison under 6809 (peephole)
    • Optimized IF...THEN...ELSE...
    • Fixed 16 bit constant comparison greater than on 6809
    • Even aligned of multibyte data under pc128op
    • Optimizations under 6809
    • Optimized array access for INC/DEC operations
    • Optimized bank accessing to BYTE native on 6809
    • Address pointer inversion under native type bank access (pc128op)
    • Optimized consecutive addings on 6809
    • Optimized array type access for INC/DEC operations
    • Added peephole optimization on 6809
    • Optimized constant multiplication (16 bit) under 6809
    • Optimized constant multiplication (8 bit) under 6809
    • Corrected bank access with constants on 6809
    • Double buffer under 6847 #799
    • Moved starting video RAM under coco
    • Disabled system irq call under coco
    • Moved starting video RAM under coco
    • Fixed starting address on coco when given


  • BETA UPDATE [rev. 20250327] BETA


    commit: a20332ac6 (on github)
    • Added support for POKE with constants
    • Optimization on TRAVEL
    • Reduced PATH data type to 16 bytes
    • Corrected banked access on decompresion for pc128op
    • Fixed IMAGEREF using single IMAGE (size error)
    • Added support for transparency on 6847 (mode 14 and alike)


  • BETA UPDATE [rev. 20250326] BETA


    commit: 8d28c87c3 (on github)
    • Added support for POKE with constants
    • Corrected optimizations between fields of types using LET
    • Corrected bank access under pc128op
    • Fixed PUT IMAGE under ef936x
    • Added optimization rule for 6809
    • Optimized retrieving of monodim array of type
    • Optimized field to field assignment on array of type
    • Fixed 8 bit constant register loading
    • Optimized field to field assignment on array of type
    • Add DEFINE CLIP as an alias for OPTION CLIP
    • Bank reading optimization under pc128op, to8 and mo5
    • Precalculation of bank address under pc128op
    • Add support for TRAVEL using infix TYPE
    • Addeds support for infix ADDC/ADD on types
    • Add support for INC / DEC using types
    • Add support for INC / DEC using array of types


  • BETA UPDATE [rev. 20250323] BETA


    commit: a155eb0c8 (on github)
    • Added (stub) support for DLOAD banked
    • Corrected array bounds detections
    • Added support for DLOAD over BANK under pc128op
    • Added support for TYPEs and PATHs on banks at startup
    • Adapted CREATE PATH and TRAVEL to support banks
    • Helper functions for debugging
    • Refactorized LOAD CSV on array initialization
    • Added alternative for LOAD TEXT using LOAD CSV
    • Added support for reading single field of TYPE


  • BETA UPDATE [rev. 20250323] BETA


    commit: bd57b90a4 (on github)
    • Add support for FILE CSV stored using TYPE
    • Fixed FILE STORAGE with multibyte values for csv
    • Added support for DATA AS (type) and READ (unsafe) of TYPEs
    • Added preliminary support for LET instruction
    • Added support for FADE IN / FADE OUT on ef936x
    • Fixed array access with byte index (big endian)
    • Add support for user data type #644


  • BETA UPDATE [rev. 20250320] BETA


    commit: ad3b16f57 (on github)
    • Added support for FILE...CSV OF
    • Add support for X-PAD (drawing table) under coco #1198
    • Inverted FILE storage order
    • Added DLOAD support for pc128op
    • Added support for BEGIN STORAGE...END STORAGE on k7 format (pc128op/mo5)
    • Added support for ROTATE VECTOR


  • BETA UPDATE [rev. 20250317] BETA


    commit: 57c55b548 (on github)
    • Moved from VT_VECTOR to VT_VECTOR2 for compilation clashing under win32
    • Added support for scalar multiplication of VECTORs
    • Added support for subtractions between VECTORs in place
    • Added support for subtractions between VECTORs and other numeric types
    • Added support for inplace additions between VECTOR and other numeric types
    • Added support for additions between VECTOR and other numeric types
    • Added support for additions between VECTORs
    • Added support for X() and Y() functions for VECTOR data type
    • Added support for CREATE VECTOR
    • Added preliminary support for VECTOR data type
    • Extend powering to FLOAT type #1203


  • BETA UPDATE [rev. 20250315] BETA


    commit: df4e9c88e (on github)
    • Added support for CLS boxed
    • Optimized PUT IMAGE with TRANSPARENCY COARSE with ef936x
    • Corrected TRAVEL implementation


  • BETA UPDATE [rev. 20250312] BETA


    commit: 5bdc093e0 (on github)
    • Added support for DEFINE TRANSPARENCY COARSE / PRECISE
    • Added support for TRAVEL as function
    • Added support for limited TRAVEL (keyword: CLAMP)
    • Changed PATH to store destination x,y (even aligned)
    • Reduced PATH datatype occupation
    • Fixed inplace array for TRAVEL
    • Fixed TRAVEL syntax (inplace variables)


  • BETA UPDATE [rev. 20250311] BETA


    commit: 2a14b3e92 (on github)
    • Added support for TRAVEL TO...BY
    • Added optimized PUT IMAGE for ef936x


Any problem?

If you have found a problem, if you think there is a bug or, more simply, you would like something to be improved, write a topic on the official forum, or open an issue on GitHub.
Thank you!