This library was primarily developed as a learning experience but may prove useful as a general-purpose suite of libraries usable in a variety of situations.
These files are not intended to be operated as single-file libraries but rather a collection of smaller libraries that operate cooperatively.
The intent is to grow the library as new needs occurs during the various project / demo developments. If there is specify interest or demand adjustments can be made if viable.
The following is a library hierarchy focused on piTerminal as an example structure. It also includes any unreferenced libraries. A brief cutsheet of library features is also listed.
The library is designed to be used with Parallax PropTool. Due to certain Spin2 constructs, some libraries are known to be incompatible with other toolchains. Only PropTool has been thoroughly tested.
The library has been made open source for use, to lead as an example, and to allow the community to contribute by using github tools or through community interaction. You can find me at the Parallax Forums under the name DarkInsanePyro.
- PropTool 1.5.2 or newer
Clone or download this repo from github. If a ZIP is downloaded, extract it to its own folder.
Cloning:
git clone https://github.com/Perpetual-Intrigue/piLibrary.git
- Copy the demo files from /Demo to the parent folder along side the library files
- Open the desired Demo_* file with PropTool
- Optionally assign as Top Object File
- Compile and Run with Debugging Enabled
- Copy required libraries and their dependencies to your applications source folder
- Reference the required libraries as OBJ instances
- Move the library files from Root to the the PropTool's library folder
- Windows: User/Documents/PropTool/Library
- Test the installation by trying to compile one of the Demo_* files provided in the Root/Demos folder
Include any required libraries as OBJs within your application. Follow the documentation provided within the library. The recommended way to view this is by using the Documentation view within the PropTool application on the target libraries.
Some libraries only provide support functions and should be treated like singletons. Although this isn't possible with the software, the overhead of creating one-off instances of the library is minimal (1 long per instance generally). Library nomenclature follows where singletons use the same name as the library to indicate it is not genuinely an instance.
OBJ
piCommon: "piCommon"
piString: "piString"
serial: "piSerial"
PUB Main()
serial.Start(9600, 0, 1, serial.DEFAULT_CONFIG)
repeat
serial.Write(string("Hello World!",piString.CR,piString.LF), -1, piCommon.TIME_INFINITE)
This library is distributed under the MIT License. See LICENSE for more information.