Menu

[b84aab]: / ChangeLog  Maximize  Restore  History

Download this file

1136 lines (921 with data), 39.4 kB

2013-12-30
	Fix android display clip handling
	Fix android import from IDE
	Console is now a graphics screen
	Replace battery drain error with console warning

2013-12-18
	Android version 0.11.4
	Built with android NDK for huge performance increase
	Web service for remote file edit/run
	Can now launch .bas files from Android file browser
	Added program restart command

2013-02-09
	Added support for empty parentheses in sub/func calls

2012-12-18
	AT and PEN now work with WINDOW based coordinates. This will allow programs written
	for PalmOS to appear correctly on modern mobile screen resolutions.

2012-12-09
	Released 0.11.1 android version to google play
	Added the ability to change the font size

2012-12-01
	Released 0.11.1 android version to google play

2012-09-25
	MoSync port nearing completion

2012-07-29
	Fixed a bug with nested case statements

2011-04-14
	Removed POKE and BCOPY. These never really worked correcly
	and would be fairly insecure in the web model if they did.

2011-03-19
	QT port started

2011-01-22
	Fix compilation errors (fltk build) for 64bit ubuntu

2010-12-15
	Fix for floating point display (tracker 3136093) issue
	found with printing 1/1000

2010-07-31
	Fix for PAUSE cmd (tracker 1651503) to pause correct length of
	time - Case was	mostly already fixed in 0.10.7.

2010-06-19
	Fix form TEXT command to use correct integer datatype
	Fix misc issues with const char* uncovered with new gcc
	Fix duplicate prompt whe INPUT command used in text mode

2010-05-15
	Version 0.10.7 was released

2010-05-07
	updated window title display

2010-05-01
	inkey now returns shifted keys
	added DOFORM option return on a key event
	updated calc to use the keyboard

2010-04-28
	fix for windows socket handling
	cleanup code for display of break message

2010-04-19
	Added new sample programs, tetris and sokoban
	Fix to make plugins work with files containing dos file line endings
	Added select-all command.
	Run-selection now works with logprint mode.
	Fixed run startup mode on linux
	Added ctrl+f1 help mode
	Fix for executor cleanup crash when breaking from invalid call to sub
	Included missing tdestroy function for MingW build (fix for memory leak under windows)
        Programs now run with cwd set to the .bas filename
	Updated help for doform and button commands
	Fix for display of list and label form button types after their variable contents have changed
	Fixed a problem with SELECT/CASE with complex program usage (tracker id 1683450)
	Fix for -v command line arg when passed w/out another arg
	Fix for PolyLine crash when invalid args passed
	Pass focus to MainWindow when closing the form to ensure inkey gets updated
	Prevent default window key processing when keys passed into basic program
	Esc key returns focus to editor when command or browser widget has focus
	Added simple stack trace as part of runtime error message
	New hot-key - ctrl+e to focus the editor
	New editor keystrokes - ctrl+b toggle break-to-line, ctrl+t toggle log-print, ctrl+w toggle hide-ide
	Cls command does nothing in non-interactive mode
	Fix for regression with returning and passing UDS values
	DIRWALK now just logs an error (instead of terminating the program) when it encounters a folder that it cannot open
	Added search examples option for keyword help
	Fix for find and goto commands to work with readonly files
	Show font selection menu using the target font.
	Fix to allow help page link to a system file
	Can now pass a url to the html command which opens in a real browser
	Imlemented new code publish tool
	Editor plugins now invoked in non-interactive mode
	INPUT command now issues a prompt dialog when in non-interactive mode
	Restore main window focus after closing color selection window
	Updated getHomeDir() to use APPDATA env-var for windows
	BAS_HOME var no longer contains trailing slash-char.

2010-03-08
	UDS and HASH types now work with FOR-IN and also return sensible
	values when used with the LEN command. Fixed crash when converting
	between UDS and HASH types.

2010-03-07
	Fixed a bug where hitting break from inside a SUB that had the
	result being assigned to another variable would cause a crash

2010-02-18
	Updated saving and restoring many properties from config.txt
	File open uses current buffer file path
        Creates backup files
	Fixed minor display issues with the File Open Widget

2010-02-05
	Updated the editor code browser

2010-01-29
	Added the DEFINEKEY command
	Updated internal event handling to allow INKEY to function correctly without
	excessive CPU usage

2009-12-14
	Version 0.10.6 released

2009-11-27
	Implemented TTY widget

2009-11-06
	final fix for matrix inverse bug

2009-09-04
	0.10.5 for windows released

2009-08-23
	Fix for desktop icon display (ALT+Tab) under X11 (ubuntu)

2009-08-14
	Fix for sub/func navigation tool to internally use line numbers in lieu of
	label searching.

2009-08-08
	Reworked editor toobar so there is now a command selection and only one text
	input field.

2009-08-02
	Updated calc.bas to work with the new DOFORM api
	Fixes for the FLTK DOFORM API to allow the updated calc.bas to work reliably

2009-07-28
	Implemented editor colour selection in FLTK build.

2009-07-26
	Implemented editor font selection in FLTK build. Fixed memoryTest.bas sample

2009-07-22
	Implemented "ELSE IF" syntax

2009-07-11
	fltk - file widget displays sorted items

2009-06-29
	update variables to use 64 bits
	fix for matrix inverse bug

2009-06-13
	updated form API in fltk version

2009-04-13
	incorporate agg into fltk version (reverted for now)

2009-01-14
	in osd_getpixel() for X11, offset x/y as getPixel is relative to the outer window
	FileWidget allow input of a custom path

2009-01-07
	Updated FileWidget to allow relative paths for saveas. Updated to handle
	readonly edit buffers. Fixed a few compiler warnings

2008-11-26
	FLTK 0.10.2 was released

2008-11-23
	FLTK: Fix for possible crash with html command used in plain window mode. Fix for
	file widget for directory names with space characters.

2008-11-16
	FLTK: Fix for invalid values returned by PEN command.

2008-10-26
	FLTK: Fixed a few problems with find and replace. Implemented Rename Word command.

2008-08-16
	* released windows version 0.10.1

2008-08-01
	* passing length < 0 to MID no longer causes stackdump

2008-07-17
	* refactor FLTK to allow opening of multiple editors

2008-07-05
	* cleanup ansi codes from output in dev_null driver. fixed logprint command
	* fixed "open for append"
	* added FLTK -n non-interactive flag (prevents the gui from being displayed)

2008-07-01
	* Implemented program restart option in FLTK

2008-06-28
	* Updated to build FLTK version using MingW under Cygwin (see below).

2008-06-26
	* Added build support for MingW under Cygwin. This is simpler than installing
	  Msys, simply install MingW to say c:\MinwG, then change your .bash_profile with:
	  export PATH=/c/MinGW/bin:$PATH
	  Then re-run configure (under cygwin bash) and a non-cygwin console version will
	  be produced which can run under cmd.exe, explorer.exe etc.

2008-06-20
	* Can now supply program arguments on FLTK version command line:
        sbasici -r t5.bas foo -or- sbasici t5.bas foo -or- ls | sbasic t5.bas --
	also: echo foo | sbasic foo.bas --

2008-06-06
	* Implemented the ability to declare a local variable and assign a
	  value to it on the same line, eg local foo = "foo"

2008-06-04
	* Fixed problem with trailing backslash in strings

2008-06-01
	* Add support for hash arrays (rainy day)

2008-05-26
	* Updated module building to use autotools
	* Fix regression with console build
	* Fix for expression if (foo.x)
	* UDS copy operations now always as by reference
	* Can now refer to UDS field within parenthesis
	* Updated FLTK online help
	* Fix support for composite expressions such as "ar.ch(0).foo"

2008-05-24
	* Updated SDL forms to work with guichan 0.8.1
	* Fixed problem with FLTK HelpWidget displaying large pages

2008-05-15
	* Update FLTK forms implementation to be like the SDL implementation
	* FLTK now correctly implements DELAY
	* Updated help.bas help plugin to include an index

2008-05-07
	* FLTK: allow applications to set the window geometry using:
	option predef grmode WxH

2008-04-26
	* Source code release for version 0.10.0

2008-03-31
	* Various fixes for FLTK build
	* Implemented outside file change check in FLTK build
	* Implemented file drop support in FLTK build
	* Not being able to save an sbx file is no longer a fatal error
	* runtime .bas files can now be read-only files.
	* break command updates global last error string

2008-03-15
	* re-migrated code from cvs - this time with full history

2007-12-31
	* Fixed a problem in the SDL version with pressing ctrl+c
	  while the "press any key to close" message was being displayed

2007-12-02      version 0.9.9.0
	* moved code to subversion
	* see src/fltk/README.TXT for updated project indent settings

2007-11-03	version 0.9.8.3
	* refactored console_main
	* added the ability to include a path component in a unit name, eg:
	  import other.something.foo
	  ? foo.my_var

	  Then in the foo.bas file:

	  Unit other.something.Foo
	  export my_var

	  The unit file should be saved in $UNITPATH/other/something.
	  If not defined, $UNITPATH is inferred as the host program
	  file directory.

2007-10-10
	* A runtime error is now created in lieu of crashing when you
	  pass a value less than 0 to the LEFT and RIGHT string commands.
	* The runtime error for LEFT,RIGHT,REPLACE,MID,INSTR,RINSTR now
	  includes the invalid index in the message

2007-08-31
	* Fixed a problem referring to UDS fields from an array
	  eg x = foo(0).x

2007-08-18
	* Fixed a problem with the short-circuit eval code causing
	  incorrect true/false return IP's being calculated

2007-08-02
	* The IN operator when applied to arrays now returns
	  the 1 based index position, eg:
           a << "cat"
           a << "dog"
           ? "dog" in a 'prints 2

2007-07-21
	* Implemented experimental logical expression short-circuit evaluation

2007-07-12
	* (re) Implemented user defined structures
	* AnsiWidget added to FLTK core package

2007-06-23
	* TSAVE now correctly closes the opened file

2007-04-27
	* Added GUI support to SDL version using guichan

2007-04-19
	* Implemented user defined structures
	* Commited Attila Haraszti's SDL code and changes for configure.in
	* Added syntax support for '=='

2006-11-14
	* Updated DATE and TIME error messages to provide extra information

2006-10-23
	* Added more info the index out of range runtime error message
	* Fixed configure.in for cygwin build

2006-08-19
	* added "multiline" option to the TEXT command to support
          the multiline edit control (GTK)
	* fixed RINSTR command to work as advertised.
	* TSAVE can now take a file number arg like TLOAD

2006-08-16
	* Fixed error message with unterminated strings in a sub or func.
          complained about missing END instead of the missing " char
	* Quoted strings no longer required the end quote char. A new line is
          taken as the end of string.

2006-08-12
	* added support for func/sub pointer variables used with the
	  call statement:

          func foo(s)
           foo="foo!"+s
          end
          sub bar
            ? "in bar"
          end
          p = @foo
          ? call(@foo, "#")
          ? call(p, "%")
          pb = @bar
          call pb
          call @bar

 	* USRCALL has been removed since it never worked and the above
          is a better replacement (IMHO)

2006-07-28
	* updated chain command to take string or array	of string arguments in
          lieu of a file name. After calling this command, the calling program
	  now successfully resumes.
	* added HAVE_C_MALLOC to replace complicated
          memory routines with simple malloc/free calls
	* added GRID+TAB button support to GTK build

2006-05-27
	* added form support to GTK build

2006-05-27
	* bc_store_string() now handles escaped double quotes

2006-04-12
	* updated sockcl_open() to handle server listen sockets


--------------------------------------------------------------------------------------------------------------------------------
VERSION 0.9.0
--------------------------------------------------------------------------------------------------------------------------------
2004-05-01: ndc
	Human language depented files for messages and keywords.
	The messages and the keywords can be easily translated to another language.
	This is not suggested because that means incompatible source-code but it is very usefull for education purposes;
	I believe that, the kids will work better if they are using their natural language
	(and we are very sensitive on that matter).
	I suggest to the "translators" to be very carefull, there is no mean on a word-to-word translation.

2003-03-10: ndc
	new c-modules: mod_gdbm, mod_mysql

2003-03-09: ndc
	fix: ptdistln, ptdistseg
	new: POLYCENT (centroid of polygon)

2003-02-24: ndc
	END IF: keyword with space is supported now

2003-01-24: ndc
	FOR-IN: if the IN parameter is not an array (probably an empty variable) the FOR jumps to
	--- the next command after 'NEXT'

2002-10-12: ndc
	Sort: fixed
	Search/Sort: does not generate RTE anymore

2002-10-10: ndc
	units: SB libraries
	new keywords: UNIT, IMPORT, EXPORT

2002-10-06: ndc
	doc: .texi and groff output added
	--- ref.txt structure changed
	update: str()
	--- str(string) now allowed
	new: BSS() - converts C-style strings to BASIC-style strings
	new: CSS() - converts BASIC-style strings to C-style strings
	--- some more compiler error-checking

2002-10-01: ndc
	several internal changes for easy development.
	--- cxx_sb.hpp provides a new iterface to whole SB.
	--- SB can compiled as a C or C++ library. That would
	--- help a lot the IDEs developers. Main Makefile
	--- splitted, it is working like main-menu now.
	FLTK IDE added but not finished yet.
	--- Actually that shows the power of the libsbasic.
	--- It is very easy now to build IDE. Unfortunately
	--- I am no friend of GUI, I've never tried Qt or GTK.
	--- Anyway, soon, I'll rewrite the Win32 GUI version.

2002-09-16: ndc
	update: compiler speedup for PalmOS 3.5+
	--- VMTs not used on 3.5+ (no actually needed)
	new code: lopen_bridge.h
	--- I rewrote the VMTs. The code was a mess. Several parts of SB
	--- uses #def blocks just to do simple tasks with open/close command-set
	--- So, I wrote a "driver" which cleans a lot of those parts by using
	--- real std-c emu of functions open/close for PalmOS and VTOS.
	update: new VMT
	--- VMTs are now basic part of the system. Because of lopen_bridge.h is
	--- easy portable too. In VMTs is stored a fake environment-variable table,
	--- VMTs are used for memory swaping, and will be used as basic-level database.
	update: PalmOS, On PalmOS 3.5+ the opt_safedraw (SDK3.5 draw functions) is
	--- used by default on 3.5+.

2002-09-11: ndc
	update: PLAY "Q" clears sound queue
	new: NOSOUND stops background sound and clears sound-queue
	update: SOUND can plays on background
	new: PLOT (graph of F(x))

2002-09-01: ndc
	fix: ON GOTO/GOSUB, values out of index

2002-06-22: ndc
	new: SEC/CSC/COT family functions

2002-06-21: ndc
	update: extra check for build-in functions without parameters

2002-06-18: ndc
	bug: RIGHTOFLAST() fixed
	bug: palmos, 'keep-bytecode' code rewriten
	--- CHAIN does not compile if it is not needed

2002-06-07: ndc
	bug: palmos, memo fs, open for APPEND now moves the pointer to the end
	--- of the file's data.
	bug: palmos, pdoc fs, open for APPEND now works, still does not
	--- support read-only open.
	new: palmos, battery-info support in FRE()

2002-06-02: cws
	new: ebm, added flush image escape to ansi driver \033[F.
	--- This causes imgUpdate() to be called.
	new: ebm, Sorted file names in File Dialog

2002-05-25: cws
	update: ebm, improved "Run" dialog
	update: ebm, further improved ANSI text out performance

2002-05-xx: ndc
	documentation/doxygen format

2002-05-12: ndc
	update: default values for window/view cmds

2002-05-12: cws
	new: ebm, implemented FILES command - dev_create_file_list()
	new: ebm, implemented COPY command - dev_fcopy()
	new: ebm, implemented ENVIRONMENT command.
	new: ebm, implemented FRE command - returns ebm memory and battery info (see help)
	update: TLOAD speed optimize
	update/new: ???, provided mechanism for sbasic programmers to provide an about box.
	update: ebm, selecting the menu while running an application now pauses program
	--- execution.
	update: ebm, corrected behaviour with open file errors; now results in a
	--- runtime error.
	new: ebm, absolutely way cool on-line help!
	new: ebm, removed the 2 pixel window border.
	new: ebm, partial MMC file support; reading and listing files from sb code only.
	--- MMC write is not yet implemented in the operating system.
	new: ebm, updated command line editor. Entered commands are now sent directly
	--- to the interpreter. You can tap and run simple one line programs
	--- using the keyboard. Use : to separate program statements.
	new: ebm, optional SmallBASIC.ini settings control creation of .sbx files
	--- and enabling verbose compilation. settings are:
	--- genexe=0
	--- quiet=0
	update: ebm, minor enhancements to ebjlib library
	update: optimised ansi text out and window scrolling performance

2002-05-05: ndc
	new: bitmap-lib (basic internals), it needs more work

2002-05-04: ndc
	new: BLOAD,BSAVE,USRCALL
	update: PalmOS power on/off button support
	update: SDL default mode (see: README.UNIX)

2002-04-19: ndc
	new: low-level commands
		MALLOC,PEEK(8,16,32),POKE(8,16,32),BCOPY,VADR
	new: palmos, keyboard buffer dialog (press kb)
		not good yet, but it works

--------------------------------------------------------------------------------------------------------------------------------
VERSION 0.8.2
--------------------------------------------------------------------------------------------------------------------------------
2002-04-14: ndc
	?bug?: crash; wierd memodb records (size >32KB!!), thanks to Meino
	bug: PalmOS, MOD's result was wrong

2002-04-07: ndc
	bug: memory overrun on scan.c:bc_get_var_id(), thanks to Meino
	new: BGETC()/BPUTC (binary get/put bytes on a stream)

--------------------------------------------------------------------------------------------------------------------------------
VERSION 0.8.1
--------------------------------------------------------------------------------------------------------------------------------
2002-03-31: ndc
	finish: OPTION-styles, new PREDEF QUITE,COMMAND
	modify: system string-variables are now accepted with both names
            (with or without $ suffix)
	new option: -h[page][-command]

2002-03-25: ndc
	new operator: LIKE
	new proc: DIRWALK
	new func: CHOP()

2002-02-27: ndc
	bug fix: memo (palmos) open/write

2002-02-22: ndc
	bug fix: pdoc's garbages are now dead (for desktop)
	update: setting backup-bit in user files and pdocs
	update: IN operator priority changed to 'compare'
	new: MDL operator (a%b+b*(sgn(a)<>sgn(b)))

2002-02-??: Earle's port

2002-02-??: Chris's port

2002-01-28: ndc

2002-01-28: ndc
	bug fix: cat() on 16bit, thanks to Frantesik
	very fast and small memory handles emulation (for 'limited' systems)

2002-01-13: ndc
	changes for porting: dev_getenv()/dev_putenv() at device.c
	bug fix: env() function fixed, env command also fixed

2002-01-04: ndc
	bug fix: operators && and || was on different op-category...
	bug fix: small memory leak on string->number convertion inside
	--eval.c module. That causes PalmOS fatal error!!!

--------------------------------------------------------------------------------------------------------------------------------
VERSION 0.8.0
--------------------------------------------------------------------------------------------------------------------------------
2001-12-27: ndc
	bug fix: memo vfs driver: deleted files, no null-char on read

2001-12-??: ndc
	new: split with pairs

2001-12-11: ndc
	new: IN operator (not the FOR-IN)
	new: ISNUMER(), ISSTRING()
	new: ENCLOSE(), DISCLOSE() (also, its part of SPLIT)
	bug fix: memory leak (GOTO)
	new: terminal driver (old code for command-line is removed)

2001-12-10: ndc
	new: DEF FN compatible command (single-line functions)
	-- to support this, I made the DEF; an alias of FUNC
	-- so, FUNC f(x) = sin(x)
	-- and DEF  f(x) = sin(x)
	-- is now acceptable
	new: bitwise operators NAND,NOR,XNOR,EQV,IMP
	-- it needs checks
	new: parameter parser (RT)
	update: FORMAT, console-codes (\e[nG)
	new: RINSTR, SPRINT

2001-12-08: ndc
	linux: modules support (external C/C++ libraries)
	new: true color is supported for modes >8bit
	new: RGB() RGBF()
	change: KILL does not create RTE if there is no file
	-- It is very annoying on Linux
	update: svga & sdl (colors, some minor bugs)
	change: LOADLN/SAVELN changed to TLOAD,TSAVE
	-- I don't want to use LOAD/SAVE, also,
	-- I want common names, like BLOAD/BSAVE
	change: &&, || = logical ops (like C)
	new:    &, |, ~ = binary ops (like C)
	new:	& = join code lines (like the \ on C)
	change:	SB limits are changed

2001-12-07: ndc
	default name on Unices changed to sbasic instead of sbrun
	update: everything is working on 32bits now
	-- 16b version can be produced by using OS_ADDR16
	-- For PalmOS users the 32b means less memory...
	change: xmax, ymax returns now the width-1,height-1
	-- its more logical

2001-12-05: ndc
	update: +/-INF and +/-0 for real-to-string (PRINT included)

2001-12-03: ndc
	update: PalmOS IDE: several changes, include auto-goto error-line
	new: APPEND, DELETE, INSERT
	new: PalmOS scripts (thanks to Frantisek Dufka)
	change: ANSI console code for 'reset' does not
	-- changes the font.

2001-12-02: ndc
	new: dev_gets() (INPUT)
	-- On Palms: schedule=delete, phone=left, todo=right
	-- possible problems with multibyte charsets,
	-- var-font: minor problems with multiple lines
	update: PSET,LINE,RECT,VIEW,WINDOW... graphics commands
	changed: LOCATE coordinates starting from 1

2001-12-01: ndc
	new: SEARCH
	new: CHMOD
	update: compiler: PASS2 errors, more info

2001-11-30: ndc
	new: SQUEEZE()
	some more compiler/RTL checks
	new: ISARRAY()
	new: ++ and -- pseudo-operators
	bug fix: file size on Unix
	new: COMMAND$ system variable
	update: STOP/END parameter added

2001-11-29: ndc
	new: FORMAT, PRINT USING and new FTA function (print numbers)
	alias: LINE INPUT (with space) is now acceptable
	INTEGRAL keyword removed

2001-11-28: ndc & bob
	bug fix: EXIT inside function
	new: ISDIR, ISFILE, ISLINK, ACCESS
	new: IF function: IF(condition,true-value,false-value)
	new: operator << (append to array)
	new: REDIM (resizes an existing array. its works only for 1-dim arrays)

2001-11-27: ndc & bob
	changes: ROUND(-1.5) returns -2
	changes: MOD (changed to fmod())
	bug fix: INT, FIX - negative values
	new: FRAC, CEIL, FLOOR
	changes: scientific notation E supports xE{+|-}{praxis=+-*/\^}{y}
	---valid: 1E1 (1*10^1), 1E-1 (1*10^-1), 1E--1 (1-1), 1E-/2 (1/2)
	---invalid (nested E, complex expressions, variables): 1E-+2E--4, 1E-+int(2.2)
	---if I write an eval() then it will do more things :)
	new: LINEINPUT (new alias: LINP) works on console, too
	bug fix: PAUSE n (after an key-interrupt; now clears keyboad-buffer)
	bug fix: WEEKDAY
	bug fix: STATs I was made some stupids things here, now it is working again
	---(QB: DEF FNxxx - END, later will be added the inline DEF FN)

--------------------------------------------------------------------------------------------------------------------------------
VERSION 0.7.1
--------------------------------------------------------------------------------------------------------------------------------

2001-11-24: ndc
	changes: LINEQGJ (Gauss-Jordan) renamed to LINEQN
	new: DIFFEQN

2001-11-23: ndc
	new: JULIAN(dmy_string | d, m, y)
	new: DATEFMT(format, dmy_str | d, m, y | julian)
	new: WEEKDAY(dmy_str | d, m, y | julian)
	new: DATEMDY dmy_str | julian, byref d, byref m, byref y
	new: ROOT
	new: SORT (quick sort)

2001-11-22: ndc
	bug fix: Palm's ftostr(), round bug (59.9999999/60 was 0.1 instead of 1) (Thanks Bob :)
	bug fix: Palm IDE: Goto line 1
	bug fix: spaces on parameters (i.e. BYREF bug)
	changes on SPLIT (spaces now counts as delimiters)
	SPLIT supports the USE keyword
	new: TRIM()
	new: INTEGRAL

2001-11-19: ndc
	changes: COM ports 0-9 (COM1:,COM5:,etc)
	PalmOS IDE: categories (edit, delete, rename)
	PalmOS IDE: it does not delete the bytecode (Menu->Pref->Options)
	PalmOS IDE: line numbers on editor
	bug fix: VM (CALL_UDF) (4 bytes instead of 2)
	new: DERIV

2001-11-18: ndc
	changes: DIM A(10):A=1 is valid now... (convertion from array to integer)
	changes on LEN(), INPUT
	bug fix: EMPTY()
	bug fix: '_' its works again in the sub-routines names
	new: DETERM(A[,tol])
	new: LOADLN file, array
	new: SAVELN file, array
	bug fix: binary READ/WRITE commands
	new: FOR var IN array - NEXT
	command-line: quite flag (-q); No "* DONE *", no compiler messages
	bug fix: Unix OS Name

--------------------------------------------------------------------------------------------------------------------------------
VERSION 0.7.0a
--------------------------------------------------------------------------------------------------------------------------------
2001-11-07: ndc
	PalmOS: crash with MemoDB deleted/locked records

--------------------------------------------------------------------------------------------------------------------------------
VERSION 0.6.1-0.7.0
--------------------------------------------------------------------------------------------------------------------------------
2001-11-06: ndc
	SB web-site: recovery...

2001-11-05: ndc
2001-11-04:
	after hard-disk failure... recover and check
	bug fix: WinXP: sound driver, SBPad forms background color

2001-??-??: ndc
2bit DOS (DJGPP)
    --That means there needed one DPMI driver (under windows DPMI is supported).
    --For clean DOS you can use one of delorie's DPMI (free) programs or other (read DJGPP's FAQ)
    --CPU 80386 or newer is needed
    --Long-filenames are supported only under windows (read also DJGPP's FAQ, especially for NT)
    --NO TCP/IP

    Statistical/generic functions are added: (thanks to Yannis Dondos (dondos@otenet.gr))
	ABSMIN, ABSMAX, SUMSQ, SUM, STATMEANDEV, STATMEAN, STATSPREADS, STATSPREADP

2001-08-09: ndc
    RUN() function added (returns the stdout of the command)
    HOME system variable added (user's directory)
    CWD system variable added (current working directory)
    CHDIR/MKDIR/RMDIR: only for non-palmos

    SOCL FS: socket client (virtual file system) added
    --This driver its not tested on PalmOS...
    --Only OPEN,CLOSE,READ,WRITE,EOF() are implemented

2001-08-08: ndc
    READ/WRITE command set: binary read/write to a file (for variables)
    bug fix: INSTR (caseless compare changed to case sensitive)
    POINT(): 0,1 functions added (returns the current graphics X/Y position)

    PalmOS IDE: import/export to/from PDOC
    PalmOS IDE: import/export to/from Memo

    PDOC FS:
	--filesystem emulation for PDOC files. (use OPEN "PDOC:filename")
	--Under non-palmos OSes, files PDoc_* are created in the current directory for emulation.
    --These files are real compressed PDB/PDOC files (you can hotsync them)
    --FILES() for PDOCFS: FILES("PDOC:*")
    --PDOC FS opens and uncompress the file on OPEN; and compress the file on CLOSE

    bug fix: memory leak on PRINT for files
    bug fix: PalmOS IDE, UserFileViewer save file

2001-08-06: ndc
    MemoDB FS:
	--filesystem emulation for memodb. (use OPEN "MEMO:memo-title")
	--the memo-record size is limited to 4000-65 bytes (the 65 bytes are reserved for the 'filename' + \n)
	--Under non-palmos OSes, files Memo_* are created in the current directory for emulation
    --FILES() for MEMOFS: FILES("MEMO:*")

    bug fix: FS auto-close files

2001-08-05: ndc
    RTE ... --- custom run-time-error (its working like PRINT command)
    PROGLINE --- returns the current source-line number (user's program)
    Unix: some /proc info are added
    EMPTY(x) -- used for variables
    FS: A lot of changes on file.c
    --Actually FS is working with more clever way now. Its supports multiple fs-drivers with mount/umount logic.

2001-08-04: ndc
    Trying to support nested arrays.
	--There are some problems with nested arrays.
	--Nested arrays are not visible to SB compiler so
	--SB does not stores optimized info for them.
	--(in few cases arrays will copied more than once on memory)

    console,file,log PRINT are using the same code for writting vars

2001-08-01: ndc
    PalmOS driver: some changes on the LOCATE
    FILES(x)
    LEN(x) now supports arrays too
    ENVIRON str, ENVIRON$("var") --- (non-palmos) environment variables
    SPC(x) --- alias of SPACE$(x)
    REPLACE$(s1,pos,s2[,len])
    LEFTOF$(s1,s2), LEFTOFLAST$(s1,s2)
    RIGHTOF$(s1,s2), RIGHTOFLAST$(s1,s2)

2001-07-31: ndc
    PalmOS: stack increased by 4KB (that means -4KB for BASIC progs)
    Fill for DRAWPOLY added (FILLED keyword)

    new framebuffer driver
    --I wrote a new one without using any library (8,15,16,24,32 color modes);
	--its very stable in kernel 2.4.4 and its working very nice in console.
	--So, this is the default driver for unix (instead of svgalib)
	--note: scroll is slow

    several fixes on SDL driver
    bug fix: eval: "-"+40 now returns string "-40"
    bug fix: OSS driver now checks if /dev/dsp is available

    PalmOS IDE: 'restart' does not compile the source now

2001-07-29: ndc
    PalmOS driver: direct video-access (used instead of PalmOS APIs routines)
    --its faster :)

2001-07-25: ndc
    JOIN array(), delim, dest-var
    LINEQGJ(A,B[,toler])    (thanks to Yannis Dondos (dondos@otenet.gr)
    Arrays ops: [col,col,...[; col,col...]]
	define an array at code
ex:
	d=[1,2] ' 2
	d=[1;2] ' 2x1
	d=[11,12;21;cos(a)] ' 3x2
	d=[1;21,2+2] ' 2x2
	d=[1,2;3,4] ' 2x2

    Matrices: (A-Z=arrays): A=2*B;B=-B;C=D*E;A=B+C;D=A-B
ex:
	a = [-3,  0; 2, -1]
	b = [ 4, -2; 3,  5]
	print a; " x "; b; " = "; a * b

    new: PRINT displays arrays now
    Bit-ops: BAND (AND), BOR (OR)

2001-07-23: ndc
	bug fix: RECT with out fill (diag. line)

2001-06-03: ndc
	bug fix: EXIT (REPEAT/UNTIL)
	VIEW,WINDOW

2001-06-01: ndc
	vector graphics:
		PTSIGN, PTDIST, PTDISTSEG, SEGLEN, SEGCOS, SEGSIN, INTERSECT
		M3IDENT, M3ROTATE, M3SCALE, M3TRANS, M3APPLY
		POLYEXT, POLYAREA
	bug fix: SPLIT: empty strings

2001-05-28: ndc
	bug fix: PAUSE seconds
	bug fix: var/label/proc names with '_'
	bug fix: delete section
	bug fix: &H prefix
	EVAL's stack is dynamic now
	Backup bit is enabled after copy/rename

--------------------------------------------------------------------------------------------------------------------------------
VERSION 0.6.0
--------------------------------------------------------------------------------------------------------------------------------
2001-05-13: ndc
	bug fix: v_set array copy
	backup-bit is enabled when the source file is modified
	Scientific notation added (both in code and in run-time (input))

2001-05-07: ndc
	#inc:file - #include for BASIC :)
	Background sound
	System events check changed (now works with ticks, checked every 50ms)

2001-05-06: ndc
	SPLIT str, del, v() - split text
	COPY/RENAME filename, newfilename - added
	ERASE array1, ... - destroy arrays
	bug fix: multi-dim arrays (dim > 1; element 0 returns the correct ptr)
	INPUT #N, ... - INPUT for files added
	Memory optimization (I got ~6-10KB for executor)
	Virtual Memory & Virtual Memory Tables (only for compiler; maybe later I'll add routines like VMDIM and VMLOCAL)
	UserFile Viewer - users can view/edit their files (up to 32KB)
	logfile support (LOGPRINT added for users)

2001-05-03: ndc
	INPUT$(len[,fileN]) - added
	Serial I/O added (OPEN "COM1:")
	EXIT [FOR|LOOP|SUB|FUNC] - added
	pdb2bas & bas2pdb supports sections (up to 256 sections, up to 1MB text)
	Arrays & vars with the same name does not supported any more
	Assign arrays "DIM A(4):B()=A()"

2001-05-02: ndc
	SUB/FUNC code finshed
	LOCAL keyword added (dynamic local variables)
	DECLARE keyword added (declaration needed for multiple-sections, every section acts as module now)

2001-05-01: ndc
	bug fix: PLAY
	PEN(3) now supported

    These sound drivers does not working well. I just dont know anything about soundcards.
	DSP sound driver for Linux, added
	SDL sound driver...

2001-04-29: ndc
	PROC/FUNC - starting (todo: JMPs before & after, run-time code)
	A lot of changes on compiler (I can't write real compiler, there are a lot memory problems)

2001-04-16: ndc
	bug-fix: WHILE/WEND nested blocks

--------------------------------------------------------------------------------------------------------------------------------
VERSION 0.5.8
--------------------------------------------------------------------------------------------------------------------------------
2001-04-02: ndc
	DRAWPOLY array() added
	TRUE/FALSE system constants added
	LINECHART,BARCHART system constants added
	CHART added
	SVGALIB - clipping is now enabled
	a few syntax checks added

2001-03-30: ndc
	MAX/MIN added

2001-03-18: ndc
	bug fix: eq with doubles ((1=12/10) now returns false)
		this is the FOR-NEXT problem with fps
	bug fix: run-time error if the user had not allocate memory for arrays (DIM)

--------------------------------------------------------------------------------------------------------------------------------
VERSION 0.5.7
--------------------------------------------------------------------------------------------------------------------------------

2001-03-10: ndc
	Some minor bugs of multibyte charsets

2001-03-09: ndc
	Big5 charset support added - thanks to Daniel Yuan-Chih Lin (dan.lin@bigfoot.com)
	Generic multibyte support added
	bug fix: SOUND & BEEP volume

--------------------------------------------------------------------------------------------------------------------------------
VERSION 0.5.6
--------------------------------------------------------------------------------------------------------------------------------

2001-03-03: ndc
	SDL driver added
	Win32 port

2001-02-28: ndc
	Basic FILE I/O

2001-02-27: ndc
	circle's code is beautiful now.

2001-02-25: ndc
	4bit gray-colors are supported now (PalmOS 3.30 only!)
	8bit vga16 hi-colors are fixed
	bug fix: STR$()
	INPUT supports more variables

2001-02-24: ndc
	console supports more fonts now ("\e[8xm" x=0..7 for system fonts, "\e[9xm" x=0..4 for SB's fonts)
	console supports colors
		("\e[3xm" x=0..7 ANSI foreground colors)
		("\e[4xm" x=0..7 ANSI background colors)
	RUN command added
	system variables (see: setsysvar_int|num|str)
		OSVER	- OS version (ex: 0x350 for PalmOS 3.5)
		OSNAME	- OS name
		SBVER	- SmallBASIC version (ex: if sbver < &H506 then ? "RQ 0.5.6+")
		PI      - 3.14..
		XMAX,YMAX - graphics display maximum x & y
		BPP     - bits per pixel
	TXTW(s),TXTH(s) added (text font width & height)
	X/Win driver added (it needs work, but you can see a preview)

2001-02-22: ndc
	SJIS (Japanese) charset support, thanks to Toshiya Fujii (araiguma@earthlink.net)
	INPUT stores numeric values if the input-string is a number
	new method for Palm's PEN events
	new key codes (new keys FIND & CALC)
	Arrays & common variables with the same names are acceptable now
		I don't like it, but its needed (GWBASIC compatibility).
	DATA skips its code, does not need the first RESTORE any more, strings (DATA) does needs quotes
	bug fix: (\) integer division operator is now recognized
	CIRCLE & ARC are working now, but the algorithms are bad. I think 'aspect' does not working well
	DRAW added (not all commands) - UNTESTED
	PLAY added - Someone must check the compatibility (QB).

2001-02-20: ndc
	STKDUMP	added
	Several changes on IDE (like fastest scroll)

2001-02-19: ndc
	bug fix: IDE text field focus

2001-02-16: ndc
	bug fix: beam
	More launch types are supported (useful for Launchers)
	CAT(x) added, LOCATE y,x added
	ON x GOTO ... and ON x GOSUB added ...	(warning: goto has problems with the stack)

2001-02-14: ndc
	Platform API
	new method for expressions (ceval, eval modules)

2001-02-12: ndc
	Color support added

--------------------------------------------------------------------------------------------------------------------------------
VERSION 0.5.5
--------------------------------------------------------------------------------------------------------------------------------

2001-02-11: ndc
	decompiler (unix version, -s option)
	Several bugs of pseudo-compiler are fixed
	Pseudo-compiler: PASS2 supports GOTO shits (stack)
	More QB compatibility support
	New icons
	v_add() auto type convertion changed (NUM has priority)
	bug fix: INKEY & INPUT hardware keys codes (again?)

2001-02-09: ndc
	scan & brun: speed optimization ("little/big-endian" convertion code removed)
	INLINE-IF added (nested inline-if does not suppored). Syntax: IF x THEN [numeric-label]|[...] [ELSE [numeric-label]|[...]]
	?bug? fix: PEN(0) - (pen status) starts with status 0 (after a PEN ON command the PEN(0) was 1)
	bug fix: READ/DATA with arrays
	bug fix: code_getvarptr() fixed. Now we can use arrays without fear :)
	bug fix: numeric labels without command next to it
	bug fix: LET|CONST next to label (ERROR: LET IS KEYWORD)
	bug fix: finaly the '$' is dead (I hope :). (That means LEFT(x,1) = LEFT$(x,1) but x$ <> x)
	bug fix: console supports \r
	bug fix: PAUSE command (it was removed!)

2001-02-08: ndc
	bug fix: BREAK for INPUT
	Unix <-> win32 (u2d, d2u, mksmall) convertion utilities
	C Headers & data-types changed;	Makefile, .rcp, README: minor changes; proc.h callback.h bcode.h: removed
	SB small icon, thanks to Christian G. Hvltje

2001-02-07: Gary A. Clark - clarkg@fireserve.net
	bug fix: READing strings now works
	bug fix: Crash when 'Save As' same file name (Rename did same)

2001-02-06: 0.5.5 Gary A. Clark - clarkg@fireserve.net
	Convert to SDK 3.5 using PalmCompatibility.h
	bug fix: Hardware keys caused INKEY$ to always return nothing
	bug fix: VAL(), OCT$(), MID$() and RTRIM$() now work correctly

--------------------------------------------------------------------------------------------------------------------------------
VERSION 0.5.4a
--------------------------------------------------------------------------------------------------------------------------------

2001-02-04: 0.5.4a ndc
	bug fix: last-line text without lf, thanks to Gary Clark
	Hardware keys supported (keys: 0x101 (up) 0x102 (dn) 0x103 (#1) 0x104 (#2) 0x105 (#3) BREAK (#4))

2001-02-04: 0.5.4 ndc
	bug fix: PalmOS 3.1 fatal exception, Thanks to Christian G. Höltje
	bug fix: PalmOS 3.1 WinDrawChar (displays garbage) changed to WinDrawChars
	bug fix: BASIC file header (version & signature)
	Save & Run (S&R) button (EDIT-FORM)
	New utilities: pdb2bas & bas2pdb for unix console, win32 console & win32 GUI
	PEN	support added (QB lightpen compatible)
		PEN ON|OFF, x=PEN(y)
			where y:0 = status
					1 = pen-down x, 2 = pen-down y
					3 = M$ shit (QBasic)
					4 = current x, 5 = current y
	DIM supports more variables now

--------------------------------------------------------------------------------------------------------------------------------
VERSION 0.5.3
--------------------------------------------------------------------------------------------------------------------------------

2001-01-22: 0.5.3 ndc
	more remarks

2000-05-??:	0.5.3 ndc
	version 0.5.3 ready

Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.