Set up a Project based on the book - Computing Fundamentals

All except GUI problems
Post Reply
vsrohit
Posts: 1
Joined: Mon Jul 18, 2016 1:59 pm

Set up a Project based on the book - Computing Fundamentals

Post by vsrohit »

Computing Fundamentals - by Stanley Warford provides an approach to setting up a Working Folder for Compiling. (Chapter 1 , Topic : Project Folders)
1. Create a Folder (e.g. Workspace)
2. Inside the created Folder Create 6 folders with names - Code, Docu, Enc, Mod, Rsrc, Sym
3. Save the source code in Mod Folder.

When you Compile, object code will be in Code, Interface will be in Symbol table. Add Documentation to Docu folder with the same name as the filename of source code.

Issues:
1. When I compile, there are new folders Code and Sym, generated in the Directory of BlackBox not in the Workspace. Is there a way to clearly define the Project Folder?
2. When the Module name is given as e.g. BookEg , rather than the Code folder, there is a folder with name "Book" and Eg is the filename given to the Object file.
3. When we highlight a Module name and select from menu Info > Documentation, BlackBox is looking for documentation in System/Docu and not in the Docu folder present in the BlackBox folder.

Please suggest an approach so that all the components - Source code, Object Code and Documentation are present in one place.
manumart1
Posts: 67
Joined: Tue Sep 17, 2013 6:25 am

Re: Set up a Project based on the book - Computing Fundament

Post by manumart1 »

In BlackBox there are subsystems, instead of projects.
A subsystem is a root folder which is in the same folder as BlackBox.exe. So "Com", "Dev", "Obx", etc are subsystems.
The folder of a subsystem has subfolders: Code, Docu, Mod, Rsrc, Sym.

The source code of a subsystem is a set of modules. The text of a module resides is a file stored in the subfolder "Mod" of its subsystem. It is necessary that:
- the name of the module has the name of the subsystem as prefix.
- the file that contains the text of the module does not have that prefix (I am not sure if this is mandatory).

Example: The subsystem "Obx" has a module named "ObxActions" that resides in a file named "Actions.odc" in the folder "Obx/Mod".

So to determine the subsystem of a module, the name of the module is used, not the folder in which the file of the module resides.

When you compile a module, the prefix of the name of the module (the name of its subsystem) is used to determine where to store the object code. So if you compile the module "ObxActions" the result will be in "Obx/Code".

BUT if you compile a module whose name has no prefix, then something strange happens: as that module does not have a subsystem, the folders "Code" and "Sym" will be created as root directories, at the same level as the folders of the normal subsystems; this can be confusing because neither "Code" nor "Sym" are the name of any subsystem.
That happens when you compile the modules of the subsystem "System". Those modules are exceptional and do not follow the rule that the name of the module has as prefix the name of the subsystem.

I think that when at execution time the object code of a module is needed, BlackBox first searchs for in "Code" root folder (if exists) and if not found then searchs for in the "Code" folder of the subsystem.

Regards
X512
Posts: 72
Joined: Sat Feb 07, 2015 2:51 pm

Re: Set up a Project based on the book - Computing Fundament

Post by X512 »

Probably author means server mode. In order to use "workspace", you need to run BlackBox with switch /USE "<your workspace folder path>" switch and set workspace path as working directory. You can do this by creating shortcut in workspace folder and edit it.
Post Reply