BASIC flow charts

Visustin generates flow charts from several BASIC dialects.

Language Details
AutoIt v3.3.14.2 AutoIt v3 only. AutoIt v1 and v2 are not supported.
LotusScript 9.0.1 Lotus Notes, IBM Domino Designer.
PowerBASIC 10 Based on Windows version.
PowerScript v11.5 PowerBuilder. Cannot open binary files. Copy & Paste code to Visustin.
PureBasic v5.50
QuickBASIC 4.5, GW-BASIC 3.23 Same mode covers all of QB, QBasic and GW-BASIC. Cannot open binary files. Save as text first.
REALbasic 2012r1 REAL studio. Cannot open binary or XML files. Export as text or Copy & Paste.

Visual Basic dialects are also supported, see description on another page.

Earlier language versions are generally supported, except for AutoIt prior to v3. Support for other BASIC dialects is possible, but not guaranteed. You are encouraged to try other BASIC dialects and report your findings back to us. We are interested in your feedback on which dialects should be supported in the future.

Supported statement types

Visustin supports the following generic statement types.

Statement typeExamples (actual keywords may differ)
Conditional statementsIf..Then..ElseIf..Else
Multiway decisionSelect Case, Choose Case, Switch
IterationFor..Next, For Each, ForAll
LoopingDo..Loop, While..Wend, Repeat..Until
Loop exit and continueBreak, Exit, Continue
JumpGoTo, GoSub, Resume, ContinueCase
ReturnReturn
End programEnd, Exit
Stop for debuggingBreak, CallDebugger, Stop, Suspend
Error handlingTry..Catch..Finally
Error raisingRaise, Throw
Special blocksWith..End With
Line numbers and labels100, MyLine:
Comments' Comment, // Comment, ; Comment, /* Comment */, REM Comment
Functions and sub-programsFunc, Function, Sub, Procedure
ModulesModule
MacrosMacro
QuickBASIC/GW-BASIC specialsDEF FN, EXIT DEF, CHAIN, RUN, SYSTEM
Conditional compilation#If..Then..#ElseIf..#Else
CompilerIf, CompilerSelect

The actual keywords differ depending on which BASIC dialect you are using. The keywords shown above are typical in several BASIC dialects. Other keywords do exist and are supported. If a keyword is missing above, it doesn't mean Visustin won't recognize it.

Most other statement types are handled as regular statements. Some data declarations are hidden to save space. This concerns interface declarations, user-defined data types, enumerations and data sections, where applicable.

Language specific notes

GW-BASIC was a predecessor of the QuickBASIC language. Visustin supports GW-BASIC in QuickBASIC mode. Should your GW-BASIC code contain QB-specific keywords you may see limited side effects in the charts. Known limitations with GW-BASIC: The NEW, LOAD and MERGE commands have no special visualization. Unstructured FOR..NEXT, where NEXT appears in an IF branch, is not supported. Binary .bas files are not supported. Save the files in text mode, then load to Visustin. Command in GW-BASIC: SAVE "filename",a. It's a good idea to save source code in text mode for times when a working installation of GW-BASIC is no longer available.

QuickBASIC binary .bas files are not supported. Save the files in text mode, then load to Visustin. Menu command in QB: File menu, Save As, Format: Text. It's a good idea to save source code in text mode for times when a working installation of QuickBASIC is no longer available.

PowerScript is a language of PowerBuilder (not to be confused with PowerBASIC). Visustin cannot open binary PowerScript files. You need to Copy & Paste the code from PowerBuilder to Visustin.

REALbasic. Visustin cannot open binary or XML REALbasic files (.rb, .xml). You can either Copy & Paste the code from REALbasic or use the File|Export Source command in REALbasic to export the code to a text file, which Visustin can read. Note that the exported source file can be too large to handle in one chart. See Large flow charts for tips on dealing with large source files.

Unsupported constructs

The following statement types are unsupported. Unsupported means you see the code in the graph as a normal statement, not as a branch or a jump.

©Aivosto OyVisustin Help