home *** CD-ROM | disk | FTP | other *** search
- ApBasic Latest Features Feb 26, 1991
- ─────────────────────── ────────────
-
- (c) 1987-1990 Comptech Software and Consulting, Inc.
- By Keith Murray Compuserve 71601,3673
- (813) 980-2087
-
-
- Nov 1,1987 Version 1.00
- Editor Changes:
- ■ <Alt-N> can be used to change the current file name.
-
-
- Dec 1,1987 Version 1.00a
- Editor Changes:
- ■ A bug was fixed that corrupted the source program in the edit
- buffer whenever a drop-down menu was used.
-
- Dec 18,1987 Version 1.1
- Language Changes:
- ■ Line numbers are now accepted before statements as per normal BASICA.
- They are also acceptable wherever a normal line label is used as well
- as :
- IF Expression THEN line.number
-
- ■ The VAL() function now recognizes &H, &O, &B and & preceding a number
- and does the necessary conversion.
-
- ■ Included on the master diskette is a program called 'SOUND.INC'. This
- file contains a SOUND procedure similiar to the BASICA SOUND statement.
- The file can be included into a program using:
-
- $INCLUDE "SOUND.INC"
-
- There is a test program also on the master diskette called 'SIREN.BAS'
- that demonstrates the SOUND statement.
-
- ■ Single precision floating point variables are now supported. Those
- variables with a type character of '!' or defined as single precision
- by using the DEFSNG statement occupy 4 bytes. All floating point math
- is done in double precision. Single precision numbers are converted when
- used or stored.
-
- ■ Four new functions were added to aid in reading and writing data files
- that contain floating point numbers in the Microsoft format.
-
- Summary: CVDM(String$)
-
- Description: The String$ is a double precision floating point number in
- the Microsoft format. The number returned is in IEEE format
- used within ApBasic.
-
- See Also: CVSM()
- CVD()
- CVI()
- _________________________________________________________________________
-
- Summary: CVSM(String$)
-
- Description: The String$ is a single precision floating point number in
- the Microsoft format. The number returned is in IEEE format
- used within ApBasic.
-
- See Also: CVDM()
- CVD()
- CVI()
- _________________________________________________________________________
-
- Summary: MKDM$(Numeric)
-
- Description: This function returns an eight byte string that is the value
- of the numeric expression converted to the Microsoft format.
-
- See Also: MKSM$()
- MKD$()
- MKI$()
- ________________________________________________________________________
-
- Summary: MKSM$(Numeric)
-
- Description: This function returns a four byte string that is the value of
- the numeric expression converted to the Microsoft format.
-
- See Also: MKDM$()
- MKD$()
- MKI$()
-
-
- April 11,1988 Version 1.12
- Editor changes:
- ■ When function keys were pressed with a menu dropped down, the screen
- would be corrupted but the program was not disturbed.
-
- Compiler changes:
- ■ Metacommands are now allowed on lines with line numbers.
- ■ String garbage collection routines were speeded up.
- ■ Expression using OR/AND/XOR/SHL/SHR with non-integer types
- would produce code that would crash if the expression was executed
- many times (ie. loops).
- ■ The FRE() function was not returning the correct amount of free string
- space.
-
- October 1, 1990 Version 1.13
- Editor changes:
- ■ Bug with on-line help would sometimes corrupt the display.
- ■ The /M option can be used when starting ApBasic to force it to run
- in monochrome mode. For example:
- C:\>apb /m
- This is for users who are running laptops that APB.EXE thinks is color
- but is in reality a mono LCD screen.
-
- December 14, 1990 Version 1.5
- Editor changes:
- ■ Some Wordstar keys are now accepted. The following are allowed:
- ^A : Word left
- ^E ^D ^S ^X : Cursor up, right, left and down
- ^R ^C : Page up / Page down
- ^F : Word right
- ^G : Delete character under cursor
- ^L : Search again.
- ^U : Undelete line
- ^Y : Delete line
- ^KD : Save file and exit
- ^KQ : Exit
- ^KR : Append a file
- ^KS : Save file
- ^KX : Save and exit
- ^QA : Search and replace
- ^QC : End of file
- ^QS ^QD : Beginning and end of line
- ^QF : Search for a string
- ^QR : Beginning of file
-
- ■ Because of adding the WS keys, the Ctrl-R command that previously would
- compile and run now is used to do Page Up. The F9 key is now
- assigned to the compile/run task. The 'Run' drop-down menu was
- changed to reflect this change.
-
- Compiler changes:
- ■ REM and REMARK are now allowed. Before, the only way to put a comment
- into the program was to use a '. All are now valid.
- ■ The ENV$() function was left out of the manual. It's definition follows.
-
- Summary: ENV$(String)
-
- Description: This function returns the evironment data for a given
- environment variable.
- Example:
- print ENV$("COMSPEC") ' print COMMAND.COM path
-
- ■ Fixed length strings are now supported. The data area for these variables
- is shared with the numeric data. See following note about the DIM and
- DEF/SUB command changes. Whenever data is assigned to a fixed length
- string, the new data is padded with spaces or truncated to fit within
- the declared size.
- ■ Changes were made to various commands to allow variables to be declared
- as a type without having to use the standard Basic type identifiers.
- The DIM command has been changed as follows:
-
- DIM X AS INTEGER ' X is an integer variable
- DIM Y(1 to 10) as SINGLE ' Y is an array of 10 single precision #'s
- DIM S AS STRING ' S is a variable length string
- DIM T AS STRING * 10 ' T is a fixed length string of 10 characters
-
- The DEF/SUB declarations can now define the type of data being returned
- from the DEF and the type of parameters being passed. For example:
-
- DEF F(X AS INTEGER) AS SINGLE
- ' Code goes here
- END DEF
- SUB S(A(1) AS STRING * 10)
- ' Code goes here
- END SUB
-
- The F() function takes a single integer parameter and returns a single
- precision number. The S subprogram takes an array of 10 character fixed
- length strings.
-
- ■ Several bugs were corrected in the debugger. If LOCAL, STATIC or SHARED
- variables were used in a SUB or DEF and the debugger option was selected,
- the compile would crash. The debugger also had problems with finding
- variables.
-
-
- January 23, 1991 Version 1.6
- Editor changes:
- ■ Bug was fixed when loading programs with long lines. The size of the
- longest line was increased from 180 to 255.
-
- ■ Fixed editor help screen to reflect KBD changes made in last version.
-
- ■ Fixed problem that caused lines to be highlighted while scrolling through
- the program.
-
- ■ The Search and Search Again would not position the cursor correctly when
- they found text past column 80.
-
- Compiler changes:
- ■ The GOSUB command was enhanced to be more like GWBasic. Multiple labels
- can be specified by:
-
- GOSUB LABEL1, LABEL2,.., LABELn
-
- ■ The ON ERROR GOTO statement now accepts a number as a line label.
-
- ■ The RETURN statement would fail if used in the following IF statement:
-
- IF (expression) then RETURN else (statement)
-
- The ELSE would be signaled as an error.
-
- ■ Bug in compiler would generate bad code for a unary operation. For example:
- M%=-25 : PRINT -M%
- This prints "24" instead of "25".
-
- February 26, 1991 Version 1.7
- New Files:
- ■ A new program was added to the system. STRIPHLP.BAS will create a APB.DOC
- file from the APB.HLP file. The file can be sent to the printer. A form
- feed is output after each statement or function.
-
- Compiler changes:
- ■ A bug was introduced in 1.5 that would build incorrect .EXE files.
-
-
-