Liberty BASIC v5.0 prealpha release for Mac OS X Copyright 1992-2005 Shoptalk Systems, all rights reserved http://www.libertybasic.com NOTE: Do not redistribute. Do not place on download sites or include in CDROM compilations. You may post a link to our download page at http://www.libertybasic.com/download.html Primary internet resources for Liberty BASIC: http://www.libertybasic.com http://groups.yahoo.com/libertybasic.com http://libertybasic.conforums.com http://www.libertybasicuniversity.com/lbnews Introduction Liberty BASIC is a version of the BASIC programming language. Since 1992 Liberty BASIC has only been available for the Windows operating system. This prealpha is meant as a demonstrator for those who have been waiting to see our work on this port. This release is free, and support is limited to the MAC OS X forum on our Conforums board here: http://libertybasic.conforums.com/index.cgi?board=lb4osx NO GUI: At this time, Liberty BASIC for Mac OS X has no IDE or support for GUI application development. It is a console only BASIC, and works with stdin and stdout. Source code is compiled in memory and then executed. This makes it suitable for many everyday things like scripting and CGI programming. If you are interested in GUI development or if you need an integrated editor and debugger, these things will come later, or you can try our Windows version. Release schedule: We have not scheduled a release date yet, but we intend to release new versions of this Mac OS X port every few weeks. We also intend to release a port to Linux in the near future. Technical details: This software takes the form of a command line interpreter. It is actually an in-memory compiler and runtime environment. When you invoke Liberty BASIC from the command line it will compile the specified program in memory and then execute it. If there are any compile errors it will stop and indicate with a line number and the text of the bad program line. Once the compile is successful it will begin execution, and if there are any runtime errors it will stop with an indication of the error. Floating point: This release supports only single precision floats, but we will support double precision in a future release. NOTE: Some computers report an mprotect: Permission denied error when starting Liberty BASIC. This does not stop Liberty BASIC from running. We are trying to track this down. Please send us email telling us if you see this error or not, and what version of Mac OS X you are running. This will help us to track down the problem. To use: -open a terminal session (go to the applications folder and then utilities) -cd to the folder where you have unzipped Liberty BASIC -type lb5run progname.bas where progname.bas is the name of the program you want to run for example: lb5run hilo.bas There are several simple example.bas programs included, including a small test suite called tests.bas we used to verify the basic functionality for this release. Note: If the current directory . is not part of your terminal session's path, you may need to include it in the command line you type in, like so: ./lb5run hilo.bas To see the product information when running Liberty BASIC, include the -lbverbose switch, like so: lb5run hilo.bas -lbverbose The -lbverbose switch will cause the following information to appear when lb5run is started. Liberty BASIC 5.0 prealpha for Mac OS X Copyright 1992-2005 Shoptalk Systems, all rights reserved. The files: Liberty BASIC for Mac OS X consists of two files lb5run and lb5run.im. These are both required. Together these files are about 6.5MB. We expect them to get somewhat smaller as development nears maturity. The final product will include a distribution mechanism that does not require program source code to be included in the delivery. The following is a list of functions and statements that are included in this non GUI version of Liberty BASIC. For details about these (and more) visit this URL: http://www.libertybasicuniversity.com/lb4help/Command_Reference_A-C.htm Of course at this stage of development expect some bugs. Please report anything you find to http://libertybasic.conforums.com/index.cgi?board=lb4osx Supported functions: CHR$ MID$ LEFT$ RIGHT$ ASC VAL LEN STR$ TIME$ DATE$ WORD$ TRIM$ INSTR ABS INT EOF INPUT$ RND USING SIN COS TAN ATN ACS ASN LOG EXP LOF UPPER$ LOWER$ MKDIR RMDIR NOT HEXDEC SPACE$ DECHEX$ MIN MAX INPUTTO$ SQR LOC TAB - compiles, but adds no formatting spaces in this release EVAL$ EVAL Supported statements: PRINT - using commas to tabulate is ineffective in this release INPUT LINE INPUT LET FOR NEXT DIM REM or ' IF THEN ELSE END IF GOTO GOSUB RETURN WHILE WEND OPEN CLOSE CLS END STOP FIELD PUT GET GETTRIM SORT FILES KILL NAME REDIM FUNCTION CALL SUB READ DATA RESTORE SELECT CASE EXIT SEEK RANDOMIZE DO LOOP GLOBAL ON ERROR Enjoy! -Carl Gundel, author of Liberty BASIC carlg@libertybasic.com