Paract BASIC enables parallel activity acording to ISO Full BASIC standard.
Paract BASIC is a Full BASIC to Object Pascal translator.
Translated programs shall be executed using FPC + Lazarus.
This verision is applicable for Lazarus 1.6.4 ~2.2.0.
Revision Histry
Download Win32 Lazarus 2.2.0 and install it into the folder that has no space characters on its path name.
Lazarus Download (SourceForge)
Mirror
Download ParactBASIC2132Rev2.zip from
Decimal BASIC Open Source Project Download
ParactBASIC should be extracted into a regular folder on which the user has write permission.
The name of the folder must not contain any space characters.
For example, Desktop may not be suitable. USB flush drives shall be suitable.
When the system is updated by overwriting, the OUTPUT folder must be cleared.
Afterward, execute ParactBASIC.exe, and set up two paths.
Click "Set Up" and select "Path".
"fpc path" is the path to the folder on which fpc.exe exists.
"Lazarus path" is the full path name of the folder "lazarus".
If you have installed win32 Lazarus + fpc 3.0.4 on C drive, the two paths are following.
C:\Lazarus\fpc\3.0.4\bin\i386-win32 C:\Lazarus
Note.
If you use 64 bit Windows, Lazarus win64 also can be used.
Lazarus Win64
Select Setup - Path menu to set Target CPU to 64bit and set the paths.
When you use lazarus-1.8.4-fpc-3.0.4-win64.exe, for instance, the fpc path is like as follows.
C:\lazarus\fpc\3.0.4\bin\x86_64-win64
However when cros-x86_64 add-on is installed to 32 bit Lazarus, the fpc path is same as the path to 32 bit fpc.
Lazarus win64 may be unstable. Some programs cause Access Violation errors.
And FPC does not support 80 bit extended precision floating point arithmetic on Win64, power operation and some transcendental functions may perform inaccurate.
If you require 64bit, consider Linux or Mac 64bit version.
Download and install fpc 3.0.4, fpc-src 3.0.4 and Lazarus 2.0.8 from
Lazarus x86_64 RPM,
Lazarus AMD64 DEB.
Download ParactBASIC2132Rev2_linux64.tar.xz from
Decimal BASIC Open Source Project Download.
This system must be installed into the folder on which the user has write permission.
Note.
On Cent OS 7, FPC 3.0.4 does not work properly. Try FPC 3.0.2 + Lazarus 1.6.4.
See Lazarus Forum
Can't find unit fileutil
When you see this error, modify Lazarus Path on the SetUp menu.
Folders such as components and units are put on the folder that the Lazarus Path directs.
That may as follows.
/usr/lib/lazarus/0.9.30.4/
or
/usr/share/lazarus/1.0
Access Violation
Try changing the FPC Optimization Level to 1 (or 0) in SetUp-Options.
Install XCode Command Line Tools.
In the terminal, type
sudo xcode-select --install
sudo xcodebuild -license accept
Otherwise download "Command Line Tools for Xcode" from
Apple Developer .
See Installing Lazarus on MacOS X.
See also Installing Lazarus on Mac OS X - Free Pascal(PDF)
Note. BASICAcc does not require GDB. So you do not have to install GDB.
Install FPC 3.0.4 and Lazarus 2.0.8, downloading from
Lazarus Download
Install FPC 3.0.4 and Lazarus 2.0.8, downloading from
Lazarus Download
Note. FPC 3.2.0 and 3.2.2 can not be used.
Download ParactBASIC2123Rev2.dmg from
Decimal BASIC Open Source Project Download.
This system should be installed into the folder on which the user has write permission.
And the folder must not contain a space character. Note that when you use a USB drive, if it has a name such as "NO NAME", it must be renamed.
Trouble Shooting
1. For the First Time
(1) Unabe to create file "/private/var/folders/ ……
Move ParactBASIC icon (ParactBASIC.app) into the Application folder or another location, and then run ParactBASIC.
Once normally performed, ParactBASIC.app can be retured into the original folder.
For details, search "App Translocation" on the internet.
(2) For the first tme, NoName must be executed by clicking with control-key pressed .
(3) Empty ReportForm shown
If the first Run comannd yields empty ReportForm, this may caused by Unexecuted XCode license agreement.
On the terminal, run sudo xcrun cc and enter agree at the end.
(4) ReportForm shows PPU Source :synedit.pp not found.
Launch Lazarus IDE and select Package menu - Open Loaded packages.
And then Open and Compile the followings:
Synedit
Printer4lazarus
(5) "do setup Lazarus Path" shown.
Select path on the setup menu, and then rewrite Lazarus path correctly.
Lazarus path is
Library/lazarus
on Lazarus 2.0.6, while lazarus path was
Developer/lazarus
on former versions.
Known Faults
SET DRAW MODE (NOTXOR, MASK, MERGE, XOR) do not work.
MOUSE POLL statement does not work properly.
Printer SETUP does not work.
Behaviors of some graphics statements are no good as in Decimal BASIC Mac(Intel).
Language Specifications are in accordance with the Graphics module, the Real-Time module, the modules module, and the individual character input module of ISO Full BASIC , while statements related to PROCESS and TIMEOUT in SEIZE statments are not available.
EXTYPE,RETRY and CONTINUE do not work properly for exceptions raised in an exception handler.
On the following cases, GOTO statements and IF-THEN-line_number statements can not be executed.
branches from inside to outside of when-body (i.e. inside of WHEN~USE)
branches from inside to outside of a DO block that contains a protection block that contains a EXIT DO.
branches from inside to outside of a FOR block that contains a protection block that contains a EXIT FOR.
If a routine (or the main program) has a when-in block that has an exception-handler containing a GOSUB~RETURN subroutine, the routine can not have a GOSUB~RETURN subroutine that is not contained in any protection block.
Parameters of PROGRAM or CHAIN statements should be simple variables (Arrays not allowed).
Maximum length declaration for string variables is ignored. (no cut off done.)
The decimal 1000 digit mode and the rational arithmetic mode, which Decimal BASIC has, are not avaialable.
The Microsoft BASIC compatible mode is not available.
Metafiles, OLE, ActiveX and CallBack functions are not available.
SET #n: CODING "SYSTEM"
OPTION CHARACTER BYTE
s$(m:n)
.
Programs shall be encoded to the system default encoding on saving and decoded on loading.
That is, program files have compatibility with Decimal BASIC.
If you want programs to be saved and loaded remaining the character encoding UTF-8, change the Editor Option setting in the Option menu.
A CHAIN statement launches a file of extension ".BAS" with file association. The destination programs shall not be compiled.
No CHAIN or EXECUTE statement can have array parameters.
Any BREAK statement will do, but it only breaks the program.
When GOSUB statements are used, each line must has a line number.
Decimal BASIC has a fault that an internal procedure of the mainprogram can be invoked from an external procedure, but ParactBASIC does not allow such a program.
DRAW MODE NOTXOR (MASK, MERGE, XOR),which are Decimal BASIC original enhancement, do not work properly.
On Mac, they are neglected. On Windows and Linux, then won't work until a PLOT LINES is executed.
The executable file is generated as 'NoName.exe' or 'NoName' in the 'output' folder. This can be renamed and used for the destination of a CHAIN statement.
This software is free software published under GPL.
If you noticed any bugs, report at
Forum of Decimal BASIC
© 2020 SHIRAISHI Kazuo