ugBASIC is an isomorphic and open source language, fully documented and designed to develop portable programs, without sacrificing efficiency. With a single source it is therefore possible to create games for numerous 8 bit platforms.
You can download the official ugBASIC compiler (ugbc), which directly converts a program written in ugBASIC into the assembly equivalent for the given CPU / computer. The compiler is free, open source and licensed under the Apache 2.0 license. You can download or recompile the latest version from the GitHub repository.
With ugBASIC is simple to write multitasking programs using parallel programming, available "out of the box". In systems with severe memory constraints such as computers based on 8 bit processors, a mechanism based on protothreads has been implemented.
Compile your ugBASIC sources efficiently and effectively for multiple retrocomputers: ugBASIC IDE makes it easier to download and install the various software required for one or more retrocomputers, all just one "click away".
Happy birthday ugBASIC! Today (25/04) we celebrate one
year since the first commit, and with this milestone in
mind let's take a look at some of the results obtained by
the development team.
From a qualitative point of view, the system supports as many as 14 heterogeneous systems, ranging from ATARI to Olivetti Prodest, passing through MSX and, obviously, Commodore computers.
From a quantitative point of view, ugBASIC is composed of over 137,000 lines of C code and over 36,000 lines of assembly code (MOS 6502, Zilog Z80 and Motorola 6809), where the lexer and the parser occupy 6,408 lines!
Following the sizing indicated by the "COCOMO model", to redevelop ugBASIC from scratch it would take 55 man-months or, if you like, two and a half years of development. Alternatively, having 22 developers, it would be done in a year.
For published data: generated using David A. Wheeler's 'SLOCCount'
Use IDE Download executables How to compile
A brand new IDE has been released for ugBASIC: ugBASIC IDE
makes it easier to download and install the various software required for one or more
retrocomputers, all just one "click away". It offers syntactic highlighting,
multiple windows, file history, online help and an integration for error
diagnostics. With just one click you can see your program running directly
on one of the supported emulators.