home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Boston 2
/
boston-2.iso
/
DOS
/
PROGRAM
/
BASIC
/
ASIC300
/
ASICV300.NOT
< prev
next >
Wrap
Text File
|
1993-12-01
|
7KB
|
199 lines
ASIC 3.00
Version Notes
ASIC is a BASIC language compiler for IBM PCs and compatibles. It includes
an integrated full screen editor, from which you can edit, compile, and debug
your programs. Or at your option, you can use your own text editor, and
compile your programs from the MS DOS command line.
ASIC is a subset of BASICA/GWBASIC which supports over 80 BASIC statements,
16 and 32 bit integer variables and arrays, and string variables.
This document describes features in ASIC version 3.00 not found in previous
versions. Enhancements to the integrated environment are listed first,
followed by enhancements to the compiler.
****************** INTEGRATED ENVIRONMENT ENHANCEMENTS ***************
ONLINE KEYWORD HELP. Look up the format and description of every ASIC
statement. Press <CTL-F1> and ASIC will popup a window with information
about the keyword at the cursor. If the keyword at the cursor is not known
to ASIC, it will display an index of keywords. Entries from this selection
list can then be chosen by moving to the desired entry with the arrow keys
and pressing <ENTER>.
ONLINE MENU HELP. Not sure what a menu option does? Press <F1> and ASIC
will popup a window with information about that item.
IMPROVED DEBUGGER TRACE SPEED. ASIC is much faster when tracing line by line
through your program in debugging mode. Previous versions always swapped to
the user screen in TRACE mode. ASIC now only swaps if the statement being
TRACEd might read or modify video memory. Since relatively few statements
access video memory, the TRACE speed for many statements is much faster.
VIEW USER SCREEN (Enhanced). You may now view the last screen from your
program after it has terminated. Previous versions of ASIC allowed you to
view your program displays while paused at a breakpoint, but not once the END
statement was executed. ASIC now saves the screen as it existed when your
program executed the END statement and allows you to view it from within the
integrated environment.
EDITING KEYS. Some ASIC editor keys have been enhanced. BACKSPACE has been
modified so that it works like it does in most other editors (ie, it now
deletes the character at the left of the cursor and then shifts the
characters starting at the cursor position left by 1. In previous versions
of ASIC, the character at the cursor was deleted). The END key now positions
the cursor at the first blank character following the last non-blank
character in a line. (Previous versions positioned the cursor on the last
non-blank character).
CONFIGURATION. Options that you set within the environment may now be saved
to a configuration file, so that the next time you invoke ASIC, it
"remembers" your options.
********************** COMPILER ENHANCEMENTS **********************
"LONG" INTEGER MATH. Previous versions of ASIC supported 16 bit integer
values which allowed you to represent numbers from -32,767 to +32,767. ASIC
now also supports 32 bit integer values. This expands the range of allowable
numbers to the range -2,147,483,647 to +2,147,483,647.
BLOCK IF/THEN/ELSE/ENDIF Statements. Block IF statements are now supported
and may be nested up to 25 levels deep. The old single-line IF statements
are still supported.
WHILE/WEND Statements. All of the statements between a pair of WHILE and
WEND statements will be executed while a specified condition is true. These
may be nested up to 25 levels deep.
HEX/BINARY CONSTANTS. Hexidecimal (base 16) and Binary (base 2) constants
may now be used in addition to decimal constants in your ASIC programs.
INT86. Calls PC interrupts. It will allow you to set all registers prior to
the call, and retrieve values from these registers (except BP) after the
call. All registers are passed using ordinary ASIC variables which can be
used normally in your program.
MOD. Performs modulo division (ie, returns the remainder from a division
operation, instead of the quotient).
FIND. Searches for all file names in the current directory which match a
search string and attribute.
GETDIR. Retrieves the name of the current directory name for any disk drive
on the PC.
ENVIRON$. Retrieves DOS environment strings.
OPEN--APPEND MODE. Programs may open files in "append" mode. Data written
to this file is appended to the end of the file.
OPEN--RANDOM I/O MODE. Programs may open files in random mode to read or
write to/from any position in the file.
INPUT# enhanced. Two new options:
1) Read strings terminated by CR/LF (carriage return/linefeed).
2) Read a file one byte at a time.
FILEPOS. This powerful new command is really three commands in one.
1) EOF option. Positions a random file to the end of file.
2) CURRENT option. Returns the current read/write position in a
random file.
3) FILEPOS also lets you set the read/write position in the file
to any offset you desire.
PRINT (Enhanced). If no operands are supplied, ASIC will generate a CR/LF as
in GWBASIC/BASICA. In previous ASIC versions, a null ("") string was
required to do this.
CODE (Enhanced). CODE now accepts multiple bytes of machine language code
per statement.
DIM/DATA (Enhanced). These statements may now be preceded by blank lines or
REM statements.
INSTR. Finds the position of a string within another string.
LEFT$. Extracts the leftmost "n" characters of a string.
RIGHT$. Extracts the rightmost "n" characters of a string.
SPACE$. Sets a string to 1-80 ASCII space characters.
STRING$. Sets a string to 1-80 characters (each having the same ASCII code).
LCASE$. Converts all upper case letters in a string to lower case.
UCASE$. Converts all lower case letters in a string to upper case.
LTRIM$. Removes all leading space characters from a string.
RTRIM$. Removes all trailing space characters from a string.
BEEP. Issues a short beep on the PC speaker.
EGA/VGA GRAPHICS SUPPORT. ASIC now supports several EGA/VGA graphics modes.
The following new modes are supported:
EGA/VGA: 200 rows x 320 columns x 16 colors
EGA/VGA 350 rows x 640 columns x 16 colors
VGA 200 rows x 320 columns x 256 colors
****************** KEYWORD LIST FOR VERSION 3.00 ********************
ABS AS ASC BEEP BLOAD BSAVE CALL
CHDIR CHR$ CLOSE CLS CODE COLOR COMMAND$
COMSTAT CSRLIN DATA DATE$ DEFSEG DIM ELSE
END ENDIF ENVIRON$ ERROR EXTENDED FILEPOS FIND
FOR GETDIR GOSUB GOTO IF INKEY$ INP
INPUT INPUT# INSTR INT86 KILL LCASE$ LEFT$
LEN LOCATE LPRINT LTRIM$ MID$ MKDIR MOD
NAME NEXT OPEN OPENCOM OUT PEEK POINT
POKE POS PRESET PRINT PRINT# PSET RANDOMIZE
READ RECEIVE REM RESTORE RETURN RIGHT$ RMDIR
RND RTRIM$ RUN SCREEN SEND SOUND SPACE$
STR$ STRING$ THEN TIME$ TIMER TO UCASE$
VAL VARPTR WHILE WEND WIDTH ZBIT ZMODE