SE Basic IV 4.2 Cordelia

Avatar de Usuario
Hark0
Mensajes: 683
Registrado: 27 Sep 2015, 00:31
Ubicación: Cornellà de Llobregat - BCN
Contactar:

Re: SE Basic IV 4.2 Cordelia

Mensaje por Hark0 » 13 Ago 2020, 10:51

desUBIKado escribió:
13 Ago 2020, 10:00
aowen escribió:
15 Jul 2020, 01:51
SE Basic 4.2 Release 200715 (Morton)

General availability: August 13, 2020: https://www.patreon.com/posts/39320574
Ya está publicado de forma libre para todo el mundo. Vendrá incluido en la próxima distribución de mi tarjeta SD con contenido para ZX-Uno que sacaré dentro de unos días.

Casualmente el dia de su cumpleaños!!! :mrgreen:

:plasplas: Invitate a algo Andrew!!! :mrgreen:
http://www.zxuno.com
ZX-Uno · Clon de ordenador ZX Spectrum basado en FPGA.

Avatar de Usuario
desUBIKado
Mensajes: 1002
Registrado: 05 Ago 2016, 22:33

Re: SE Basic IV 4.2 Cordelia

Mensaje por desUBIKado » 13 Ago 2020, 11:22

Hark0 escribió:
13 Ago 2020, 10:51
Casualmente el dia de su cumpleaños!!! :mrgreen:

:plasplas: Invitate a algo Andrew!!! :mrgreen:
Hombre, invitarle a algo difícil, pero felicitarle sí que lo voy a hacer. :okidoki;

kgmcneil
Mensajes: 81
Registrado: 29 Ago 2016, 08:48

Re: SE Basic IV 4.2 Cordelia

Mensaje por kgmcneil » 14 Ago 2020, 00:02

Yeah, Happy Birthday there Andrew!... You work hard enough, so I hope you find time to do something relaxing that you enjoy on your day... :okidoki;

Avatar de Usuario
aowen
Mensajes: 178
Registrado: 07 Oct 2015, 13:32

Re: SE Basic IV 4.2 Cordelia

Mensaje por aowen » 29 Sep 2020, 11:44

Release 200930 (Iggy) will be publicly available tomorrow from https://www.patreon.com/chloe280se
This release drops support for the rev2.x series of ZX Unos. Havin said that, although it's unsupported, it should still work. I'm just not testing against it any more because the MIDI module won't work with it. No MIDI support yet, but there are plans.

This release includes these features, enhancements, bug fixes and changes:

* New keyboard support:
* Brazilian
* Spanish
* AZERTY (work in progress)
* QWERTZ (work in progress)
* Language support:
* New code pages:
* Windows 1257 (Baltic)
* Windows 1258 (Vietnamese)
* KOI-8R (Russian)
* Updated code page 437 (IBM) character definitions.
* Translation:
* Updated existing languages.
* Switched Russian translation to use KOI-8R to enable future JCUKEN keyboard support.
* New languages added:
* Danish
* Polish
* Romanian
* Updates to the file system framework
* Raster interrupt examples.
* Removed all dependencies on Zeus assembler. Now builds on macOS, Linux and Windows using RASM assembler.

Avatar de Usuario
aowen
Mensajes: 178
Registrado: 07 Oct 2015, 13:32

Re: SE Basic IV 4.2 Cordelia

Mensaje por aowen » 20 Ene 2022, 17:38

Quick heads up. There's a new release on the way (220122 Gaff). It will initialy be available to sponsors on Patreon. It will be released publicly on February 14. But it will also be included in Eduardo's next update.

Avatar de Usuario
aowen
Mensajes: 178
Registrado: 07 Oct 2015, 13:32

Re: SE Basic IV 4.2 Cordelia

Mensaje por aowen » 22 Ene 2022, 12:03

SE Basic 4.2 Release 220122 (Gaff) is out today for sponsors on Patreon (https://www.patreon.com/posts/61389133) and on February 14 for general release.

This release includes these features, enhancements, bug fixes and changes:

Shortcuts
  • & : AND
  • ~ : NOT
  • | : OR
  • ? : PRINT
  • ' : carriage return in PRINT statement (replaces \).
New commands
  • DPOKE: 16-bit POKE.
  • OLD: Restore program to state before last NEW.
New functions
  • DPEEK: 16-bit PEEK.
  • FIX: Truncate a number towards zero (remove fractional part).
  • LEFT$, MID$, RIGHT$: Microsoft style string slicing (Timex style string slicing remains available).
  • STR$: Now incorporates BIN$, HEX$ and OCT$ functionality (base 2 to 36).
  • STRING$: Define a string from a repeated character.
New operators
  • \ : Truncated division
  • MOD : Modulo
  • NOT: Bitwise NOT
  • AND: Bitwise AND
  • OR: Bitwise OR
  • XOR: Bitwise XOR
  • PRINT: Now supports string multiplication.
Interpreter changes
  • Order of precedence changed to match Microsoft BASIC.
  • Timex style boolean operators replaced with Microsoft style 16-bit signed bitwise operators (true = -1, false =0).
  • Unified detokenizer gives the same results in listings and in the editor.
  • Long variable names are now supported.
  • Various bug fixes and speed improvements.
  • All calculator functions are assigned, and the calculator is now complete.
  • Added /SYSTEM/TEMPORARY folder (used by NEW/OLD to store/retrieve a copy of the previous program).
Build changes
  • Changed the Linux build target to run with the FUSE emulator. Mounting a folder as the file system does not work on Linux with the ZEsarUX emulator.
  • An SZX snapshot containing only the machine settings and a copy of UnoDOS 3 is provided for use with the FUSE emulator. After a build, a hard reset is required to mount the file system.
  • A change in the location of the localization data necessitates a definition of the start location being set in boot.asm. This can be derived from the symbols.txt file generated when building the interpreter.

Avatar de Usuario
aowen
Mensajes: 178
Registrado: 07 Oct 2015, 13:32

Re: SE Basic IV 4.2 Cordelia

Mensaje por aowen » 04 Feb 2022, 10:55

Thought I'd give a small update on the state of the next release. This is what's complete or almost complete:
  • Return of the MERGE command.
  • LOAD, SAVE and MERGE now use plain text.
  • Load BASIC programs from incompatible interpreters (must be modified to run).
  • KEY command to list (KEY LIST) and define (KEY n, f$) the 15 macros. These work in any program that uses the ROM keyboard routine, including apps.
  • Full file access from BASIC (append, input, output, random).
  • Fixed file buffers replaced with temporary buffers in workspace.
  • Reorganized token table and reallocated unassigned tokens before commands in the table.
  • Renamed DPOKE and DPEEK to DOKE and DEEK for consistency with other 16-bit BASICs.
  • =<, => and >< enabled as substitutions for <=, >= and <> in the tokenizer.
  • Square brackets enabled as substitutions for parenthesis in the tokenizer.
  • Added a substitution table to the tokenizer and refactored the substitution code.
  • Refactored the way prefix operators are handled in expression scanning.
  • Expressions between curly braces { and } are not evaluated, but their syntax is checked upon entering. They are interpreted as strings that can be passed to VAL or VAL$ for actual evaluation.
  • IF / THEN / ELSE directive.
  • WHILE / WEND loops.
  • Revised function key handling.
The biggest change will be the addition of a pre-tokenizer which will handle converting any MS syntax that isn't handled directly to SE syntax. There will be a small speed hit to tokenization, but this way there won't be any runtime speed penalty. The aim is to have as many MS BASIC programs as possible LOAD and RUN without modification.

Two features I'm looking forward to are the framework for turning BASIC programs into apps, and the online help system, which will double as an example of how to use the framework. You'll be able to package BASIC programs that use external resources into apps. And you'll be able to invoke the online help at any time while editing a program. Initially, it will enable you to look up commands and functions by token name.

The aim with the next release is to have the core of the language finished. With that done, the last part to add is graphics and sound support.

Avatar de Usuario
aowen
Mensajes: 178
Registrado: 07 Oct 2015, 13:32

Re: SE Basic IV 4.2 Cordelia

Mensaje por aowen » 13 Mar 2022, 18:18

Here's the short version of what's coming in the next release:
  • Support for BASIC programs in plain text format.
  • Support for up to 15 user-defined macros.
  • Enhanced file handling, including file access from BASIC.
  • Pre-processor for converting MS BASIC syntax to SE Basic IV syntax.
  • Structured programming support: IF...THEN...ELSE, ON n GOSUB n1, n2..., WHILE...WEND.
  • Improved localization: 48 languages, 23 code pages.
  • User defined I/O channels for third-party hardware.
  • An AUTOEXEC.BAS program in the root path runs automatically on power on or hard reset.
  • Launch apps by entering their name preceded by an exclamation mark ( ! ).
  • Framework for converting BASIC programs to apps.
  • HELP key invokes the help app.
Afte that, it's sound, graphics and a bit of polish and one last beta release before the first release candidate for 4.20.

Avatar de Usuario
aowen
Mensajes: 178
Registrado: 07 Oct 2015, 13:32

Re: SE Basic IV 4.2 Cordelia

Mensaje por aowen » 22 Abr 2022, 00:22

ANN: SE Basic 4.2-b9 (220422). Available exclusively to Patreon sponsors (https://www.patreon.com/chloe280se) from April 22.
  • Return of the MERGE command.
  • LOAD, SAVE and MERGE now use plain text.
  • LOAD f$,"R" autoruns program f$.
  • LOAD f$,"T" and SAVE f$,"T" load and save programs in tokenized form.
  • Load BASIC programs from incompatible interpreters (must be modified to run).
  • KEY command to list (KEY LIST) and define (KEY n, f$) the 15 macros. These work in any program that uses the ROM keyboard routine, including apps.
  • New default set of macros (LIST,RUN,LOAD ".BAS",SAVE ".BAS,CONT,TRACE,BLOAD "",,BSAVE "",,,KEY,SCREEN,FILES,CHDIR "",FILES "\PROGRAMS",COLOR 7,1,KEY LIST)
  • File access from BASIC (input, output, append, experimental random).
  • Fixed file buffers replaced with temporary buffers in workspace.
  • Reorganized token table and reallocated unassigned tokens before commands in the table.
  • Renamed DPOKE and DPEEK to DOKE and DEEK for consistency with other 16-bit BASICs.
  • Square brackets enabled as substitutions for parenthesis in the tokenizer.
  • Added a substitution table to the tokenizer and refactored the substitution code.
  • Refactored the way prefix operators are handled in expression scanning.
  • Expressions between curly braces { and } are not evaluated, but their syntax is checked upon entering. They are interpreted as strings that can be passed to VAL or VAL$ for actual evaluation.
  • IF/THEN/ELSE directive.
  • WHILE/WEND loops.
  • Fixed function key repeat bug.
  • Combined code pages into unified base Unicode font to generate required code pages with BitsNPicas.
  • New languages: Albanian, Arabic, Basque, Bosnian, Catalan, Chinese (Pinyin), Czech, Esperanto, Estonian, Icelandic, Indonesian, Irish, Korean, Maltese, Norweigan, Slovak, Slovene, Spanish (Latin America), Swahili, Welsh. This brings the total number of localizations to 48.
  • Updated code pages: CP437, CP1250, CP1251, CP1252, CP1253, CP1254, CP1255, CP1257, ATARI-ST, ATASCII, KOI8-R, PETSCII.
  • New code pages: CP1256 (incomplete), APPLE-II, ISO-8859-3, ISO-8859-16, PINYIN, RISC-OS. This brings the total number of code pages to 23.
  • INSTR function.
  • TRACE {ON|OFF} replaces {TRON|TROFF}.
  • BASIC pre-processor.
  • Quick launch applications with !<application_name>.
  • ON n {GOTO|GOSUB} n1, n2... command.
  • RUNBASIC app provides a framework for packaging tokenized BASIC programs as applications.
  • An AUTOEXEC.BAS program in tokenized format stored in the root path will run automatically on a cold boot or hard reset.
  • User-defined channels: OPEN #s,c$ with the channel creation address in the open_x system variable where s is a stream [3 to 15] and c$ is an alphabetic character excluding A, F, I, K, O, R, S and W. CLOSE #s with the channel close routine following the channel letter in the channel descriptor.
  • File commands completely refactored and no-longer use fixed buffers.
  • Updated the behavior of CLEAR, CLOSE, END and RUN to match the documentation / Microsoft BASIC.
  • CALL and RUN f$ now take comma-separated BASIC variables as parameters.
  • IM1 priority changed to run call user routine first.
  • First beta release of the public API (for OS calls).

The pre-processor performs the following conversions:
  • => to >=, =< to <= and >< to <>.
  • [ to ( and ] to ).
  • &H to $ and &O to @.
  • ATN(n) to ATAN(n)
  • COLOUR to COLOR
  • ELSE to :ELSE except if it is the first statement in a line.
  • FNa to FN a where a is an alphabetical character.
  • HEX$(n) to STR$(n, 16) and OCT$(n) to STR$(n, 8).
  • RND(n) to RND where n is any single digit value.
  • THEN n to THEN GOTO n where n is a numerical character.
  • TRON to TRACE ON and TROFF to TRACE OFF.
  • SPACE$(n) to STRING$(n,32).

Responder