home *** CD-ROM | disk | FTP | other *** search
- Cross-Reference
- Microsoft BASIC/Turbo Pascal Cross-Reference
-
- Compiled by:
-
- Steve T. Jones
- East Central College
- P. O. Box 529
- Union, MO 63084
-
- This cross-reference shows the Version 3.0 Turbo Pascal equivalents
- to features found in Microsoft BASIC (Version 5.21). A few of Turbo's
- functions and procedures which have no direct MBASIC equivalent have
- been included to illustrate capabilities mentioned in the accompanying
- article. Turbo lacks some fundamental functions found in MBASIC. Its
- function and procedure declarations are so powerful, however, that this
- is rarely a serious problem.
-
- In the chart, "-----" means that the feature is not available in
- Turbo Pascal, while "N/A" means "not applicable" to Turbo Pascal.
- MBASIC's "AUTO" command is not applicable, for instance, because Pascal
- does not use line numbers. Pascal terms in boldface are Turbo reserved
- words or pre-defined identifiers. Terms in italics are supplied by the
- programmer. See the Turbo Pascal Reference Manual for the correct
- syntax.
-
- MBASIC Turbo Pascal Equivalent
-
- DIRECT COMMANDS
-
- AUTO N/A
- DELETE Editor function
- EDIT Editor function
- FILES Menu -- Directory function
- LIST Editor function
- LLIST Separate listing program
- LOAD Menu -- Workfile function
- MERGE Editor function
- NAME -----
- NEW Edit a new file
- NULL N/A
- RENUM N/A
- RESET Menu -- Log Drive function
- RUN Menu -- Run function
- SAVE Menu -- Save function
- SYSTEM Menu -- Quit function
- TROFF -----
- TRON -----
- WIDTH N/A
-
- OPERATORS
-
- = (assignment) :=
- - -
- + +
- * *
- / /
- ^ -----
- \ div
- MOD mod
- NOT not
-
- AND and
- OR or
- XOR xor
- EQV -----
- IMP -----
- = (equality) =
- < <
- > >
- <=,=< <=
- >=,=> >=
- <> <>
- ----- shl -- shift left
- ----- shr -- shift right
- ----- in -- set operator
-
- ORDER OF PRECEDENCE
-
- expressions in () - (negation)
- exponents not
- - (negation) *,/,div,mod,and,shl,shr
- *,/ +,-,or,xor
- \ relational operators
- MOD
- +,- (subtraction)
- relational operators
- NOT
- AND
- OR
- XOR
- IMP
- EQV
-
- PROGRAM STATEMENTS -- GENERAL
-
- CALL Procedure name; External address;
-
- Inline(machine code);
- Overlay Procedure procedure name;
- Overlay Function function name;
- CHAIN Chain(program);
- Execute(program);
-
- COMMON automatic if manual's conventions are
- observed
- Var name : type Absolute address;
- DEF FN Function name(parameter list) : type;
- Begin
- statement(s);
- End;
- DEF USRn -----
- DEFINT Var name : Integer;
- DEFSNG Var name : Real;
- DEFDBL -----
- DEFSTR Var name : String[length];
- DIM Var name : Array[subscript range] Of type;
- END End. -- period signifies end of program
- ERASE -----
-
- ERROR -----
-
- FOR For variable := value To value Do state
- ments(s);
-
- GOSUB procedure name;
-
- GOTO Goto label;
-
- IF/THEN If condition Then statement(s);
-
- IF/THEN/ELSE If condition Then statement(s) Else state
- ment(s);
-
- IF/GOTO If condition Then Goto label;
- LET variable := expression;
- Move(source,object,length);
- MID$ Insert(source,object,position);
- NEXT N/A
- ON ERROR I/O errors can be detected and managed by the
- program
- ON/GOSUB Case variable Of
- value : statement(s);
- value : statement(s);
- Else : statement(s);
- End;
- ON/GOTO Case variable Of
- value : Goto label;
- value : Goto label;
- End;
- OPTION BASE N/A
- OUT Port[number] := value;
- POKE Mem[location] := value;
- RANDOMIZE Randomize;
- REM { comment } or (* comment *)
- RESTORE N/A
- RESUME -----
- RETURN End;
-
- STOP Halt;
- SWAP -----
- WAIT -----
- WHILE/WEND While condition Do statement(s);
- ----- Repeat statement(s) Until condition;
-
- PROGRAM STATEMENTS -- I/O
-
- CLOSE Close(file name);
- DATA -----
- FIELD Record
- variable : type;
- variable : type;
- End;
- GET Seek(file name,record number);
- Read(file name,record name);
- (both required)
- INPUT Read(variable list);
-
- INPUT #n Read(filename,variable);
- KILL Erase(file name); -- not available as a menu
- function
- LINE INPUT Readln(variable list);
- LSET, RSET N/A
- OPEN Assign(file name,name of disk file);
- (old file) Reset(file name);
- (both required)
- OPEN Assign(file name,name of disk file);
- (new file) Rewrite(file name);
- (both required)
- PUT Seek(file name,record number);
- Write(file name,record name);
- (both required)
- READ -----
- WRITE Write(variable(s));
- WRITE #n Write(file name,variable(s));
- ----- Blockread(file name,buffer,number); (read
- sectors from a disk)
- ----- Blockwrite(file name,buffer,number); (write
- sectors to a disk)
-
- PROGRAM STATEMENTS -- DISPLAY
-
- ----- ClrEol (clear to end of line)
- ----- ClrScr (clear screen)
- ----- DelLine (delete line)
- ----- InsLine (insert line)
- ----- GotoXY(column,row); (postion cursor at
- specified coordinates)
-
- FUNCTIONS -- ARITHMETIC
-
- ABS Abs(integer)
- Abs(real)
- ATN Arctan(expression)
- CDBL real variable := integer;
- CINT Round(real)
- COS Cos(expression)
- CSNG real variable := integer;
- EXP Exp(expression)
- FIX Trunc(expression)
- FRE(exp) N/A
- FRE(string) Memavail
- INT Int(expression)
- LOG Ln(expression)
- RND(num < 0) -----
- RND(0) -----
- RND(num > 0) Random
- Random(integer)
- SGN -----
- SIN Sin(expression)
- SQR Sqrt(expression)
- TAN -----
- ----- Frac(expression) (returns the fractional part
- of a number)
- FUNCTIONS -- STRING
-
- ASC Ord(char)
- CHR$ Chr(expression)
- HEX$ -----
- INKEY$ Keypressed
- Read(Kbd,variable);
- INPUT$ -----
- INSTR Pos(string1,string2)
- LEFT$ -----
- LEN Length(string)
- MID$ Copy(string,start,length)
- OCT$ -----
- RIGHT$ -----
- SPACE$ -----
- STR$ Str(value,string)
- STRING$ Fillchar(variable,number,char)
- VAL Val(string,variable,returncode);
- ----- Delete(string,start,length); (remove part of
- a string)
-
- FUNCTIONS -- OTHER
-
- CVI N/A
- CVS N/A
- CVD N/A
- EOF Eof(file name)
- ERL -----
- ERR Ioresult
- INP variable := Port[number];
- LOC Filepos(file name)
- LPOS -----
- MKI$ N/A
- MKS$ N/A
- MKD$ N/A
- PEEK variable := Mem[number];
- POS -----
- SPC -----
- TAB -----
- USR Inline(machine code);
- VARPTR Addr(variable)
- ----- Bdos(func,param) -- CP/M BDOS functions,
- result from "A" register
- ----- BdosHL(func,param) -- CP/M BDOS functions,
- result from "HL" register pair
- ----- Bios(func,param) -- CP/M BIOS functions,
- result from "A" register
- ----- BiosHL(func,param) -- CP/M BIOS functions,
- result from "HL" register pair
-