https://scarlet.deltasoft.com/api.php?action=feedcontributions&user=Geneb&feedformat=atomScarletDME - User contributions [en]2024-03-29T09:57:36ZUser contributionsMediaWiki 1.34.0https://scarlet.deltasoft.com/index.php?title=Downloads&diff=1223Downloads2022-01-29T20:40:59Z<p>Geneb: </p>
<hr />
<div>Files, sources, packages and apps for ScarletDME/OpenQM<br />
<br />
==ScarletDME==<br />
<br />
Main source code repository: https://github.com/geneb/ScarletDME<br />
<br />
The git command line for getting the full source tree is:<br />
<pre><br />
git clone https://github.com/geneb/ScarletDME.git<br />
</pre><br />
<br />
The "master" branch is for the stable build and the "dev" branch is for current fixes/features.<br />
You can grab the dev branch directly using this command:<br />
<pre><br />
git clone --branch dev https://github.com/geneb/ScarletDME.git<br />
</pre><br />
<br />
==Pre-Built OpenQM Packages==<br />
*RPM package - [http://scarlet.deltasoft.com/downloads/openqm-2.6-6.i386.rpm openqm-2.6-6.i386.rpm]<br />
*Debian Package - [http://scarlet.deltasoft.com/downloads/openqm-gpl_2.6.6_all.deb openqm-gpl_2.6.6_all.deb] (Note: this needs testing for upgrades)<br />
*Debian Package - [http://scarlet.deltasoft.com/downloads/openqm_2.4.17_all.deb openqm_2.4.17_all.deb]<br />
<br />
==OpenQM Source==<br />
Original Ladybridge Source Tarballs<br />
<br />
*[http://scarlet.deltasoft.com/downloads/qmsrc_2-6-6.tgz qmsrc_2-6-6.tgz]<br />
*[http://scarlet.deltasoft.com/downloads/qmsrc_2-4-4.tgz qmsrc_2-4-4.tgz]<br />
<br />
==Applications==<br />
*Coyote PICK webserver - [http://scarlet.deltasoft.com/downloads/qmweb-gpl-2006-03-11.tar.gz qmweb-gpl-2006-03-11.tar.gz] - N.B. The source code for the daemon is missing.</div>Genebhttps://scarlet.deltasoft.com/index.php?title=Working_with_the_Dev_Branch&diff=1222Working with the Dev Branch2022-01-27T20:42:46Z<p>Geneb: </p>
<hr />
<div>==How to obtain a copy of the current development revision==<br />
<br />
There are two source code "branches" in the git repository for ScarletDME. The first is called "master" and that's where the stable version of ScarletDME currently resides. '''Currently, (as of 01/27/22) the master branch will only build as a 32 bit target.'''<br />
The other branch is called "dev" and is where all the current development work is occurring.<br />
<br />
'''The dev branch may contain untested features and code changes, so please be aware of potential breakage. The developers try their best to submit fairly stable code, but bugs will happen. If you are daring enough to try the latest code, please continue reading.'''<br />
<br />
You can obtain the latest copy of the dev branch by using the below git command:<br />
<pre>git clone --branch dev https://github.com/geneb/ScarletDME.git</pre><br />
<br />
I would recommend that you create a "scarlet-dev" directory and execute the git above git command from there.<br />
<br />
If you find a bug, please check the current list of open [https://github.com/geneb/ScarletDME/issues issues] and open a new issue if what you've found isn't already known. Feel free to add additional information to existing issues if you feel it would help.<br />
<br />
The ScarletDME/info directory contains the change_log.txt file which outlines what has been worked on recently in the dev branch.<br />
<br />
The notes.txt file in ScarletDME/info contains an ongoing list of things that are being examined, recent discoveries about the code, or general rambling.<br />
<br />
<br />
==How to build a new copy of ScarletDME from a fresh clone or pull==<br />
<br />
First, stop any instances of ScarletDME using "qm -stop". Please verify that qm is not running before you attempt to do any of this!<br />
<br />
Build instructions can be found in ScarletDME/info/setup.txt - please make sure you've got gcc and make installed!<br />
<br />
'''Note that if you run "make datafiles" that it could over-write any changes you've made to items in the QMSYS account!'''<br />
<br />
You can edit the installed scarlet.conf file to include the parameters shown below. The primary thing is the ERRLOG directive, which sets the error log size to 100K.<br />
<br />
<pre><br />
[qm]<br />
ERRLOG=100<br />
QMSYS=/usr/qmsys<br />
MUSTLOCK=0<br />
NETFILES=0<br />
NUMFILES=80<br />
NUMLOCKS=100<br />
NUMUSERS=40<br />
OBJECTS=0<br />
OBJMEM=0<br />
SORTMEM=1024<br />
SORTWORK=<br />
TERMINFO=<br />
DEBUG=4<br />
</pre><br />
<br />
Once you've got everything installed, you can start ScarletDME with:<br />
<br />
<pre><br />
sudo qm -start<br />
</pre><br />
<br />
<br />
Change to the /usr/qmsys/ directory and run 'qm -internal'. You will need to rebuild the GPL.BP sources, including the QMBasic compiler. The steps in this process should be strictly followed to avoid the possibility of breaking your QMBasic compiler and install. This is normally required only when SYSCOM.H is changed, but it is a good general habit to gain if you plan on building snapshots often.<br />
<br />
After logging in using 'qm -internal', under /usr/qmsys/, rebuild the files in the following manner:<br />
<br />
'''The CSRC VOC entry may already exist, so you may just need to change it.'''<br />
<br />
Create a VOC entry for CSRC, pointing to the gplsrc directory under ScarletDME.<br />
<pre><br />
:ED VOC CSRC<br />
New record<br />
----: I<br />
0001= F<br />
0002= /your/path/to/ScarletDME/gplsrc<br />
0003=<br />
Bottom at line 2<br />
----: FI<br />
'CSRC' filed in VOC<br />
:<br />
</pre><br />
<br />
If you need to edit the CSRC VOC entry, you can do so like this:<br />
<pre><br />
:ED VOC CSRC<br />
VOC CSRC<br />
2 lines<br />
<br />
----: P<br />
0001= F<br />
0002= /your/path/to/ScarletDME/gplsrc<br />
Bottom at line 2<br />
<br />
----: R <path to your gplsrc directory><br />
0002: <path to your gplsrc directory><br />
Bottom at line 2<br />
<br />
----: FI<br />
<br />
'CSRC' filed in VOC<br />
:<br />
</pre><br />
1) BASIC GPL.BP CPROC LOGIN BASIC BCOMP PTERM CATALOG<br />
<br />
2) Exit out of ScarletDME (type 'QUIT' at the : prompt)<br />
<br />
3) Log back into ScarletDME again using "qm -internal" (make sure you're in the /usr/qmsys directory!)<br />
<br />
4) BASIC GPL.BP *<br />
<br />
5) Recompile any applications that need new features or changes provided by the new snapshot. It is best to recompile ALL of your application code if possible.<br />
<br />
6) * * * Much Rejoicing * * *<br />
<br />
==How to upgrade an existing ScarletDME install from a current dev build==<br />
<br />
First, stop any instances of ScarletDME using "qm -stop". Please verify that qm is not running before you attempt to do any of this!<br />
<br />
'''If you do not want to include the distributed ACCOUNTS file, then delete the ./ACCOUNTS/ and ./ACCOUNTS.DICT/ directories from the unpacked tar files. If you do not remove these directories and copy everything to /usr/qmsys/ then you will overwrite your existing account configs.'''<br />
<br />
After cloning into the dev branch, simply build the distribution like you would the stable release.<br />
<br />
You will need a C compiler and the 'make' system in order to build.<br />
<br />
Run 'make' from the snapshot root to build the binaries. They will be located under ./bin/ after linking.<br />
<br />
Once the binaries are built, make a backup copy of your existing /etc/scarlet.conf file and then run "make install".<br />
'''DO NOT RUN 'MAKE DATAFILES'! THIS CAN DO DAMAGE TO YOUR EXISTING SYSTEM!'''<br />
<br />
Run 'sudo qm -start' to start ScarletDME.<br />
<br />
Change to the /usr/qmsys/ directory and run 'qm -internal'. You will need to rebuild the GPL.BP sources, including the QMBasic compiler. The steps in this process should be strictly followed to avoid the possibility of breaking your QMBasic compiler and install. This is normally required only when SYSCOM.H is changed, but it is a good general habit to gain if you plan on building snapshots often.<br />
<br />
After logging in using 'qm -internal', under /usr/qmsys/, rebuild the files in the following manner:<br />
<br />
1) BASIC GPL.BP CPROC LOGIN BASIC BCOMP PTERM CATALOG<br />
<br />
2) Exit out of ScarletDME.<br />
<br />
3) Log back into ScarletDME again using "qm -internal"<br />
<br />
4) BASIC GPL.BP *<br />
<br />
5) Recompile any applications that need new features or changes provided by the new snapshot. It is best to recompile ALL of your application code if possible.<br />
<br />
6) If a system VOC upgrade has been included, then you should login to each account and allow it to upgrade the VOCs.<br />
<br />
7) * * * Much Rejoicing * * *</div>Genebhttps://scarlet.deltasoft.com/index.php?title=Working_with_the_Dev_Branch&diff=1221Working with the Dev Branch2022-01-27T20:37:42Z<p>Geneb: </p>
<hr />
<div>==How to obtain a copy of the current development revision==<br />
<br />
There are two source code "branches" in the git repository for ScarletDME. The first is called "master" and that's where the stable version of ScarletDME currently resides. '''Currently, (as of 01/27/22) the master branch will only build as a 32 bit target.'''<br />
The other branch is called "dev" and is where all the current development work is occurring.<br />
<br />
'''The dev branch may contain untested features and code changes, so please be aware of potential breakage. The developers try their best to submit fairly stable code, but bugs will happen. If you are daring enough to try the latest code, please continue reading.'''<br />
<br />
You can obtain the latest copy of the dev branch by using the below git command:<br />
<pre>git clone --branch dev https://github.com/geneb/ScarletDME.git</pre><br />
<br />
I would recommend that you create a "scarlet-dev" directory and execute the git above git command from there.<br />
<br />
If you find a bug, please check the current list of open [https://github.com/geneb/ScarletDME/issues issues] and open a new issue if what you've found isn't already known. Feel free to add additional information to existing issues if you feel it would help.<br />
<br />
The ScarletDME/info directory contains the change_log.txt file which outlines what has been worked on recently in the dev branch.<br />
<br />
The notes.txt file in ScarletDME/info contains an ongoing list of things that are being examined, recent discoveries about the code, or general rambling.<br />
<br />
<br />
==How to build a new copy of ScarletDME from a fresh clone or pull==<br />
<br />
First, stop any instances of ScarletDME using "qm -stop". Please verify that qm is not running before you attempt to do any of this!<br />
<br />
Build instructions can be found in ScarletDME/info/setup.txt - please make sure you've got gcc and make installed!<br />
<br />
'''Note that if you run "make datafiles" that it could over-write any changes you've made to items in the QMSYS account!'''<br />
<br />
You can edit the installed scarlet.conf file to include the parameters shown below. The primary thing is the ERRLOG directive, which sets the error log size to 100K.<br />
<br />
<pre><br />
[qm]<br />
ERRLOG=100<br />
QMSYS=/usr/qmsys<br />
MUSTLOCK=0<br />
NETFILES=0<br />
NUMFILES=80<br />
NUMLOCKS=100<br />
NUMUSERS=40<br />
OBJECTS=0<br />
OBJMEM=0<br />
SORTMEM=1024<br />
SORTWORK=<br />
TERMINFO=<br />
DEBUG=4<br />
</pre><br />
<br />
Once you've got everything installed, you can start ScarletDME with:<br />
<br />
<pre><br />
sudo qm -start<br />
</pre><br />
<br />
<br />
Change to the /usr/qmsys/ directory and run 'qm -internal'. You will need to rebuild the GPL.BP sources, including the QMBasic compiler. The steps in this process should be strictly followed to avoid the possibility of breaking your QMBasic compiler and install. This is normally required only when SYSCOM.H is changed, but it is a good general habit to gain if you plan on building snapshots often.<br />
<br />
After logging in using 'qm -internal', under /usr/qmsys/, rebuild the files in the following manner:<br />
<br />
'''The CSRC VOC entry may already exist, so you may just need to change it.'''<br />
<br />
Create a VOC entry for CSRC, pointing to the gplsrc directory under ScarletDME.<br />
<pre><br />
:ED VOC CSRC<br />
New record<br />
----: I<br />
0001= F<br />
0002= /your/path/to/ScarletDME/gplsrc<br />
0003=<br />
Bottom at line 2<br />
----: FI<br />
'CSRC' filed in VOC<br />
:<br />
</pre><br />
<br />
If you need to edit the CSRC VOC entry, you can do so like this:<br />
<pre><br />
:ED VOC CSRC<br />
VOC CSRC<br />
2 lines<br />
<br />
----: P<br />
0001= F<br />
0002= /your/path/to/ScarletDME/gplsrc<br />
Bottom at line 2<br />
<br />
----: R <path to your gplsrc directory><br />
0002: <path to your gplsrc directory><br />
Bottom at line 2<br />
<br />
----: FI<br />
<br />
'CSRC' filed in VOC<br />
:<br />
</pre><br />
1) BASIC GPL.BP CPROC LOGIN BASIC BCOMP PTERM CATALOG<br />
<br />
2) Exit out of QM<br />
<br />
3) Log back into OpenQM again using "qm -internal"<br />
<br />
4) BASIC GPL.BP *<br />
<br />
5) Recompile any applications that need new features or changes provided by the new snapshot. It is best to recompile ALL of your application code if possible.<br />
<br />
6) * * * Much Rejoicing * * *<br />
<br />
==How to upgrade an existing OpenQM GPL install from a snapshot==<br />
<br />
First, stop any instances of OpenQM using "qm -stop". Please verify that qm is not running before you attempt to do any of this!<br />
<br />
'''If you do not want to include the distributed ACCOUNTS file, then delete the ./ACCOUNTS/ and ./ACCOUNTS.DICT/ directories from the unpacked tar files. If you do not remove these directories and copy everything to /usr/qmsys/ then you will overwrite your existing account configs.'''<br />
<br />
After extracing the snapshot, simply build the distribution like you would the stable release.<br />
<br />
You will need a C compiler and the 'make' system in order to build.<br />
<br />
Run 'make' from the snapshot root to build the binaries. They will be located under ./bin/ after linking.<br />
<br />
Once the binaries are built, copy ./bin/qm to either /usr/bin/ or another user binary directory listed in your environment path.<br />
<br />
Copy everything except the ./gplsrc/ directory to /usr/qmsys/.<br />
<br />
Run 'qm -start' to start OpenQM. <br />
<br />
Change to the /usr/qmsys/ directory and run 'qm -internal'. You will need to rebuild the GPL.BP sources, including the QMBASIC compiler. The steps in this process should be strictly followed to avoid the possibility of breaking your QMBASIC compiler and install. This is normally required only when SYSCOM.H is changed, but it is a good general habit to gain if you plan on building snapshots often.<br />
<br />
After logging in using 'qm -internal', under /usr/qmsys/, rebuild the files in the following manner:<br />
<br />
1) BASIC GPL.BP CPROC LOGIN BASIC BCOMP PTERM CATALOG<br />
<br />
2) Exit out of QM<br />
<br />
3) Log back into OpenQM again using "qm -internal"<br />
<br />
4) BASIC GPL.BP *<br />
<br />
5) Recompile any applications that need new features or changes provided by the new snapshot. It is best to recompile ALL of your application code if possible.<br />
<br />
6) If a system VOC upgrade has been included, then you should login to each account and allow it to upgrade the VOCs.<br />
<br />
7) * * * Much Rejoicing * * *</div>Genebhttps://scarlet.deltasoft.com/index.php?title=Working_with_the_Dev_Branch&diff=1220Working with the Dev Branch2022-01-27T20:27:17Z<p>Geneb: </p>
<hr />
<div>==How to obtain a copy of the current development revision==<br />
<br />
There are two source code "branches" in the git repository for ScarletDME. The first is called "master" and that's where the stable version of ScarletDME currently resides. '''Currently, (as of 01/27/22) the master branch will only build as a 32 bit target.'''<br />
The other branch is called "dev" and is where all the current development work is occurring.<br />
<br />
'''The dev branch may contain untested features and code changes, so please be aware of potential breakage. The developers try their best to submit fairly stable code, but bugs will happen. If you are daring enough to try the latest code, please continue reading.'''<br />
<br />
You can obtain the latest copy of the dev branch by using the below git command:<br />
<pre>git clone --branch dev https://github.com/geneb/ScarletDME.git</pre><br />
<br />
I would recommend that you create a "scarlet-dev" directory and execute the git above git command from there.<br />
<br />
If you find a bug, please check the current list of open [https://github.com/geneb/ScarletDME/issues issues] and open a new issue if what you've found isn't already known. Feel free to add additional information to existing issues if you feel it would help.<br />
<br />
The ScarletDME/info directory contains the change_log.txt file which outlines what has been worked on recently in the dev branch.<br />
<br />
The notes.txt file in ScarletDME/info contains an ongoing list of things that are being examined, recent discoveries about the code, or general rambling.<br />
<br />
<br />
==How to build a new copy of ScarletDME from a fresh clone or pull==<br />
<br />
First, stop any instances of ScarletDME using "qm -stop". Please verify that qm is not running before you attempt to do any of this!<br />
<br />
Build instructions can be found in ScarletDME/info/setup.txt - please make sure you've got gcc and make installed!<br />
<br />
'''Note that if you run "make datafiles" that it could over-write any changes you've made to items in the QMSYS account!'''<br />
<br />
You can edit the installed scarlet.conf file to include the parameters shown below. The primary thing is the ERRLOG directive, which sets the error log size to 100K.<br />
<br />
<pre><br />
[qm]<br />
ERRLOG=100<br />
QMSYS=/usr/qmsys<br />
MUSTLOCK=0<br />
NETFILES=0<br />
NUMFILES=80<br />
NUMLOCKS=100<br />
NUMUSERS=40<br />
OBJECTS=0<br />
OBJMEM=0<br />
SORTMEM=1024<br />
SORTWORK=<br />
TERMINFO=<br />
DEBUG=4<br />
</pre><br />
<br />
Once you've got everything installed, you can start ScarletDME with:<br />
<br />
<pre><br />
sudo qm -start<br />
</pre><br />
<br />
<br />
Change to the /usr/qmsys/ directory and run 'qm -internal'. You will need to rebuild the GPL.BP sources, including the QMBasic compiler. The steps in this process should be strictly followed to avoid the possibility of breaking your QMBasic compiler and install. This is normally required only when SYSCOM.H is changed, but it is a good general habit to gain if you plan on building snapshots often.<br />
<br />
After logging in using 'qm -internal', under /usr/qmsys/, rebuild the files in the following manner:<br />
<br />
'''The CSRC VOC entry may already exist, so you may just need to change it.'''<br />
<br />
Create a VOC entry for CSRC, pointing to ./gplsrc<br />
<pre><br />
:ED VOC CSRC<br />
New record<br />
----: I<br />
0001= F<br />
0002= gplsrc<br />
0003=<br />
Bottom at line 2<br />
----: FI<br />
'CSRC' filed in VOC<br />
:<br />
</pre><br />
<br />
1) BASIC GPL.BP CPROC LOGIN BASIC BCOMP PTERM CATALOG<br />
<br />
2) Exit out of QM<br />
<br />
3) Log back into OpenQM again using "qm -internal"<br />
<br />
4) BASIC GPL.BP *<br />
<br />
5) Recompile any applications that need new features or changes provided by the new snapshot. It is best to recompile ALL of your application code if possible.<br />
<br />
6) * * * Much Rejoicing * * *<br />
<br />
==How to upgrade an existing OpenQM GPL install from a snapshot==<br />
<br />
First, stop any instances of OpenQM using "qm -stop". Please verify that qm is not running before you attempt to do any of this!<br />
<br />
'''If you do not want to include the distributed ACCOUNTS file, then delete the ./ACCOUNTS/ and ./ACCOUNTS.DICT/ directories from the unpacked tar files. If you do not remove these directories and copy everything to /usr/qmsys/ then you will overwrite your existing account configs.'''<br />
<br />
After extracing the snapshot, simply build the distribution like you would the stable release.<br />
<br />
You will need a C compiler and the 'make' system in order to build.<br />
<br />
Run 'make' from the snapshot root to build the binaries. They will be located under ./bin/ after linking.<br />
<br />
Once the binaries are built, copy ./bin/qm to either /usr/bin/ or another user binary directory listed in your environment path.<br />
<br />
Copy everything except the ./gplsrc/ directory to /usr/qmsys/.<br />
<br />
Run 'qm -start' to start OpenQM. <br />
<br />
Change to the /usr/qmsys/ directory and run 'qm -internal'. You will need to rebuild the GPL.BP sources, including the QMBASIC compiler. The steps in this process should be strictly followed to avoid the possibility of breaking your QMBASIC compiler and install. This is normally required only when SYSCOM.H is changed, but it is a good general habit to gain if you plan on building snapshots often.<br />
<br />
After logging in using 'qm -internal', under /usr/qmsys/, rebuild the files in the following manner:<br />
<br />
1) BASIC GPL.BP CPROC LOGIN BASIC BCOMP PTERM CATALOG<br />
<br />
2) Exit out of QM<br />
<br />
3) Log back into OpenQM again using "qm -internal"<br />
<br />
4) BASIC GPL.BP *<br />
<br />
5) Recompile any applications that need new features or changes provided by the new snapshot. It is best to recompile ALL of your application code if possible.<br />
<br />
6) If a system VOC upgrade has been included, then you should login to each account and allow it to upgrade the VOCs.<br />
<br />
7) * * * Much Rejoicing * * *</div>Genebhttps://scarlet.deltasoft.com/index.php?title=Working_with_the_Dev_Branch&diff=1219Working with the Dev Branch2022-01-27T20:01:32Z<p>Geneb: Created page with "==How to obtain a copy of the current development revision== There are two source code "branches" in the git repository for ScarletDME. The first is called "master" and that..."</p>
<hr />
<div>==How to obtain a copy of the current development revision==<br />
<br />
There are two source code "branches" in the git repository for ScarletDME. The first is called "master" and that's where the stable version of ScarletDME currently resides. '''Currently, (as of 01/27/22) the master branch will only build as a 32 bit target.'''<br />
The other branch is called "dev" and is where all the current development work is occurring.<br />
<br />
'''The dev branch may contain untested features and code changes, so please be aware of potential breakage. The developers try their best to submit fairly stable code, but bugs will happen. If you are daring enough to try the latest code, please continue reading.'''<br />
<br />
You can obtain the latest copy of the dev branch by using the below git command:<br />
<pre>git clone --branch dev https://github.com/geneb/ScarletDME.git</pre><br />
<br />
I would recommend that you create a "scarlet-dev" directory and execute the git above git command from there.<br />
<br />
If you find a bug, please check the current list of open [https://github.com/geneb/ScarletDME/issues issues] and open a new issue if what you've found isn't already known. Feel free to add additional information to existing issues if you feel it would help.<br />
<br />
The ScarletDME/info directory contains the change_log.txt file which outlines what has been worked on recently in the dev branch.<br />
<br />
The change log current with the latest snapshot is available here: <br />
http://www.scarletdme.org/downloads/snapshots/change_log.txt<br />
<br />
==How to unpack a snapshot==<br />
<br />
The snapshot is a gzipped tar file. The simplest way to extract the files is to use the following command:<br />
<br />
tar -zxf current-dev-snapshot.tar.gz<br />
<br />
<br />
You can also decompress the file first and then extract the files:<br />
<br />
gunzip current-dev-snapshot.tar.gz<br />
<br />
tar -xf current-dev-snapshot.tar<br />
<br />
<br />
The tar will extract the entire OpenQM bundle and gplsrc root into the current working directory.<br />
<br />
'''Example process:'''<br />
<br />
cd /tmp/<br />
<br />
mkdir /tmp/openqm-snapshot/<br />
<br />
cd /tmp/openqm-snapshot/<br />
<br />
wget http://www.scarletdme.org/downloads/snapshots/current-dev-snapshot.tar.gz<br />
<br />
tar -zxf current-dev-snapshot.tar.gz<br />
<br />
==How to build a new copy of OpenQM GPL from a snapshot==<br />
<br />
First, stop any instances of OpenQM using "qm -stop". Please verify that qm is not running before you attempt to do any of this!<br />
<br />
After extracting the snapshot, simply build the distribution like you would the stable release.<br />
<br />
You will need a C compiler and the 'make' system in order to build.<br />
<br />
Run 'make' from the snapshot root to build the binaries. They will be located under ./bin/ after linking.<br />
<br />
Copy everything except the ./gplsrc/ directory to /usr/qmsys/.<br />
<br />
Create a symlink for the qm command<br />
<pre>ln -s /usr/qmsys/bin/qm /usr/bin/qm </pre><br />
<br />
Create the qmconfig file at /etc/qmconfig. It should look like this:-<br />
<pre><br />
[qm]<br />
ERRLOG=100<br />
QMSYS=/usr/qmsys<br />
MUSTLOCK=0<br />
NETFILES=0<br />
NUMFILES=80<br />
NUMLOCKS=100<br />
NUMUSERS=40<br />
OBJECTS=0<br />
OBJMEM=0<br />
SORTMEM=1024<br />
SORTWORK=<br />
TERMINFO=<br />
DEBUG=4<br />
</pre><br />
<br />
Create an output file for GPL.BP and BP<br />
<pre><br />
mkdir /usr/qmsys/GPL.BP.OUT<br />
mkdir /usr/qmsys/BP.OUT<br />
</pre><br />
<br />
Start QM<br />
<pre><br />
qm -start<br />
</pre><br />
<br />
<br />
<br />
Change to the /usr/qmsys/ directory and run 'qm -internal'. You will need to rebuild the GPL.BP sources, including the QMBASIC compiler. The steps in this process should be strictly followed to avoid the possibility of breaking your QMBASIC compiler and install. This is normally required only when SYSCOM.H is changed, but it is a good general habit to gain if you plan on building snapshots often.<br />
<br />
After logging in using 'qm -internal', under /usr/qmsys/, rebuild the files in the following manner:<br />
<br />
create a VOC entry for CSRC, pointing to ./gplsrc<br />
<pre><br />
:ED VOC CSRC<br />
New record<br />
----: I<br />
0001= F<br />
0002= gplsrc<br />
0003=<br />
Bottom at line 2<br />
----: FI<br />
'CSRC' filed in VOC<br />
:<br />
</pre><br />
<br />
1) BASIC GPL.BP CPROC LOGIN BASIC BCOMP PTERM CATALOG<br />
<br />
2) Exit out of QM<br />
<br />
3) Log back into OpenQM again using "qm -internal"<br />
<br />
4) BASIC GPL.BP *<br />
<br />
5) Recompile any applications that need new features or changes provided by the new snapshot. It is best to recompile ALL of your application code if possible.<br />
<br />
6) * * * Much Rejoicing * * *<br />
<br />
==How to upgrade an existing OpenQM GPL install from a snapshot==<br />
<br />
First, stop any instances of OpenQM using "qm -stop". Please verify that qm is not running before you attempt to do any of this!<br />
<br />
'''If you do not want to include the distributed ACCOUNTS file, then delete the ./ACCOUNTS/ and ./ACCOUNTS.DICT/ directories from the unpacked tar files. If you do not remove these directories and copy everything to /usr/qmsys/ then you will overwrite your existing account configs.'''<br />
<br />
After extracing the snapshot, simply build the distribution like you would the stable release.<br />
<br />
You will need a C compiler and the 'make' system in order to build.<br />
<br />
Run 'make' from the snapshot root to build the binaries. They will be located under ./bin/ after linking.<br />
<br />
Once the binaries are built, copy ./bin/qm to either /usr/bin/ or another user binary directory listed in your environment path.<br />
<br />
Copy everything except the ./gplsrc/ directory to /usr/qmsys/.<br />
<br />
Run 'qm -start' to start OpenQM. <br />
<br />
Change to the /usr/qmsys/ directory and run 'qm -internal'. You will need to rebuild the GPL.BP sources, including the QMBASIC compiler. The steps in this process should be strictly followed to avoid the possibility of breaking your QMBASIC compiler and install. This is normally required only when SYSCOM.H is changed, but it is a good general habit to gain if you plan on building snapshots often.<br />
<br />
After logging in using 'qm -internal', under /usr/qmsys/, rebuild the files in the following manner:<br />
<br />
1) BASIC GPL.BP CPROC LOGIN BASIC BCOMP PTERM CATALOG<br />
<br />
2) Exit out of QM<br />
<br />
3) Log back into OpenQM again using "qm -internal"<br />
<br />
4) BASIC GPL.BP *<br />
<br />
5) Recompile any applications that need new features or changes provided by the new snapshot. It is best to recompile ALL of your application code if possible.<br />
<br />
6) If a system VOC upgrade has been included, then you should login to each account and allow it to upgrade the VOCs.<br />
<br />
7) * * * Much Rejoicing * * *</div>Genebhttps://scarlet.deltasoft.com/index.php?title=Main_Page&diff=1218Main Page2022-01-27T19:48:58Z<p>Geneb: </p>
<hr />
<div>Welcome to ScarletDME.org. [[ScarletDME]] is a OpenSource [[multivalue|MultiValue]] database, a community fork of [[OpenQM]] originally developed by [[Ladybridge]]. This project was founded on the 28th November 2008 to independently develop future versions of [[ScarletDME]] and contribute to [[OpenQM]]. While there are no longer regular official releases from [[Ladybridge]] we aim to support and develop for Scarlet to help our commercial sister, While providing a Free and open platform for Multi value development. <br />
<br />
Submissions to this project must be under the GPL version 2, with the option to use a later version if the licensee wishes. Or they can be licensed under the LGPL if you wish to encourage and allow incorporation into proprietary products. Contributors to [[ScarletDME]] are welcome to submit changes back to [[Rocket Software]] as well, for inclusion in the commercial version of OpenQM. However, we're not aware of a method of doing this now that [[Ladybridge]] no longer owns OpenQM.<br />
<br />
<br />
==For Users==<br />
*[[Downloads]]: Source tarball and package builds for key platforms<br />
*[[Guides & HOWTOs]] - Index of useful guides and HOWTO's on this Wiki<br />
*[[QMBASIC Enhancements]] - QMBASIC features that are custom or were not part of the original GPL release.<br />
*[https://github.com/geneb/scarletdme/issues Github issue tracker] For reporting and tracking bugs or other issues.<br />
*[[Documentation]] - Documented differences from the Commercial Documentation (Check here first, then below)<br />
*[http://www.openqm.org/docs/ Documentation] (Commercial Version)<br />
*General support email group: [http://groups.google.co.uk/group/scarletdme Register] then mailto:scarletdme@googlegroups.com <br />
*Discord: [https://discord.gg/H7MPapC2hK ScarletDME Discord Channel] (Discord links do expire, so if this doesn't work when you need it, please reach out to geneb@deltasoft.com and I'll get you a link!)<br />
<br />
====Supporting Projects====<br />
Various external projects that provide tools for or API's into OpenQM<br />
* [https://web.archive.org/web/20181213030923/http://billabong-services.co.uk/anji/ Billabong Services' Anji] - an open web based file browser and reporter. Eventually to become a RAD system. Pre-alpha grade of code. (link goes to the Wayback Machine copy of the site)<br />
*[[PHP_Native_API|PHP Native API module]]<br />
*[[C++ Wrapper]]<br />
*Steve Bush's [[Cygwin Port]] - Is it worth considering a MinGW port? - Would have to replace some posix bits which MinGW doesnt have.<br />
* [http://www.tridentinfosys.com/ Kevin Powick's Trident Delphi wrapper]<br />
<br />
==For Developers==<br />
For those that want to contribute to OpenQM GPL project.<br />
*Github repository: https://github.com/geneb/ScarletDME - [[HOWTO]] (Deprecated SVN instructions)<br />
*Development email group: [http://www.scarletdme.org/mailman/listinfo/openqm-dev Register] then mailto:openqm-dev@dev.scarletdme.org<br />
*[[Working with the Dev Branch]] - How to obtain, build, and upgrade ScarletDME using the dev branch on github.<br />
*[[QM Client API]] - Documentation and Available API's for the QM remote protocol.<br />
*[[Wish list]] - Things that you want & that we need contributors/devs for (lots of small things)<br />
*[[Dynamic linking]] - Calling objects written in other languages.<br />
*[[Installers]] - Installing scripts/programs or package systems<br />
*[[Commercial submissions]] - Sending stuff to Ladybridge<br />
<br />
== How do I use this site? ==<br />
<br />
If you have a question on USAGE of the community version of Scarlet, then send it to the [http://groups.google.co.uk/group/scarletdme general email support group].<br />
<br />
If you want to discuss DEVELOPMENT of the community version of Scarlet (eg. php5 module) then send it to the [http://www.scarletdme.org/mailman/listinfo/openqm-dev development email group].<br />
<br />
While the email lists are best for getting attention, permanent changes in this wiki will have a longer term impact so feel free to add or change ANYTHING in this wiki.<br />
<br />
=== External Resources ===<br />
* [[Installations]] - Places where GPL OpenQM is in use (I'm attempting to create a new section for this) - http://capersqm.dnsalias.net/<br />
* [http://www.rushflat.co.nz/downloads.shtml Brian Speir's Installation instructions and other downloads ]<br />
* [https://web.archive.org/web/20111223072449/http://openqm.blackflute.com/ Tom Delombard's old QM page. (Wayback Machine Link)] Includes details of the tape utilities and the PHP4 module (C Wrapper) <br />
* [http://sourceforge.net/projects/jd3 JD3] is a socket based server for D3 ported to QM <br />
* [http://www.billabong-services.co.uk/jd3/jd3php.html David Patterson's guide to using PHP with JD3] David's original page has disappeared (unable to contact), so here's the google cache<br />
* [http://www.billabong-services.co.uk/jd3/jd3java.html David Patterson's guide to using Java with JD3] google cache again<br />
<br />
<br />
--[[Administration]]</div>Genebhttps://scarlet.deltasoft.com/index.php?title=Main_Page&diff=1217Main Page2022-01-27T19:47:02Z<p>Geneb: </p>
<hr />
<div>Welcome to ScarletDME.org. [[ScarletDME]] is a OpenSource [[multivalue|MultiValue]] database, a community fork of [[OpenQM]] originally developed by [[Ladybridge]]. This project was founded on the 28th November 2008 to independently develop future versions of [[ScarletDME]] and contribute to [[OpenQM]]. While there are no longer regular official releases from [[Ladybridge]] we aim to support and develop for Scarlet to help our commercial sister, While providing a Free and open platform for Multi value development. <br />
<br />
Submissions to this project must be under the GPL version 2, with the option to use a later version if the licensee wishes. Or they can be licensed under the LGPL if you wish to encourage and allow incorporation into proprietary products. Contributors to [[ScarletDME]] are welcome to submit changes back to [[Rocket Software]] as well, for inclusion in the commercial version of OpenQM. However, we're not aware of a method of doing this now that [[Ladybridge]] no longer owns OpenQM.<br />
<br />
<br />
==For Users==<br />
*[[Downloads]]: Source tarball and package builds for key platforms<br />
*[[Guides & HOWTOs]] - Index of useful guides and HOWTO's on this Wiki<br />
*[[QMBASIC Enhancements]] - QMBASIC features that are custom or were not part of the original GPL release.<br />
*[https://github.com/geneb/scarletdme/issues Github issue tracker] For reporting and tracking bugs or other issues.<br />
*[[Documentation]] - Documented differences from the Commercial Documentation (Check here first, then below)<br />
*[http://www.openqm.org/docs/ Documentation] (Commercial Version)<br />
*General support email group: [http://groups.google.co.uk/group/scarletdme Register] then mailto:scarletdme@googlegroups.com <br />
*Discord: [https://discord.gg/H7MPapC2hK ScarletDME Discord Channel] (Discord links do expire, so if this doesn't work when you need it, please reach out to geneb@deltasoft.com and I'll get you a link!)<br />
<br />
====Supporting Projects====<br />
Various external projects that provide tools for or API's into OpenQM<br />
* [https://web.archive.org/web/20181213030923/http://billabong-services.co.uk/anji/ Billabong Services' Anji] - an open web based file browser and reporter. Eventually to become a RAD system. Pre-alpha grade of code. (link goes to the Wayback Machine copy of the site)<br />
*[[PHP_Native_API|PHP Native API module]]<br />
*[[C++ Wrapper]]<br />
*Steve Bush's [[Cygwin Port]] - Is it worth considering a MinGW port? - Would have to replace some posix bits which MinGW doesnt have.<br />
* [http://www.tridentinfosys.com/ Kevin Powick's Trident Delphi wrapper]<br />
<br />
==For Developers==<br />
For those that want to contribute to OpenQM GPL project.<br />
*Github repository: https://github.com/geneb/ScarletDME - [[HOWTO]] (Deprecated SVN instructions)<br />
*Development email group: [http://www.scarletdme.org/mailman/listinfo/openqm-dev Register] then mailto:openqm-dev@dev.scarletdme.org<br />
*[[Development snapshots]] - How to obtain, build, and upgrade using the dev branch on github.<br />
*[[QM Client API]] - Documentation and Available API's for the QM remote protocol.<br />
*[[Wish list]] - Things that you want & that we need contributors/devs for (lots of small things)<br />
*[[Dynamic linking]] - Calling objects written in other languages.<br />
*[[Installers]] - Installing scripts/programs or package systems<br />
*[[Commercial submissions]] - Sending stuff to Ladybridge<br />
<br />
== How do I use this site? ==<br />
<br />
If you have a question on USAGE of the community version of Scarlet, then send it to the [http://groups.google.co.uk/group/scarletdme general email support group].<br />
<br />
If you want to discuss DEVELOPMENT of the community version of Scarlet (eg. php5 module) then send it to the [http://www.scarletdme.org/mailman/listinfo/openqm-dev development email group].<br />
<br />
While the email lists are best for getting attention, permanent changes in this wiki will have a longer term impact so feel free to add or change ANYTHING in this wiki.<br />
<br />
=== External Resources ===<br />
* [[Installations]] - Places where GPL OpenQM is in use (I'm attempting to create a new section for this) - http://capersqm.dnsalias.net/<br />
* [http://www.rushflat.co.nz/downloads.shtml Brian Speir's Installation instructions and other downloads ]<br />
* [https://web.archive.org/web/20111223072449/http://openqm.blackflute.com/ Tom Delombard's old QM page. (Wayback Machine Link)] Includes details of the tape utilities and the PHP4 module (C Wrapper) <br />
* [http://sourceforge.net/projects/jd3 JD3] is a socket based server for D3 ported to QM <br />
* [http://www.billabong-services.co.uk/jd3/jd3php.html David Patterson's guide to using PHP with JD3] David's original page has disappeared (unable to contact), so here's the google cache<br />
* [http://www.billabong-services.co.uk/jd3/jd3java.html David Patterson's guide to using Java with JD3] google cache again<br />
<br />
<br />
--[[Administration]]</div>Genebhttps://scarlet.deltasoft.com/index.php?title=Main_Page&diff=1216Main Page2022-01-27T19:45:32Z<p>Geneb: </p>
<hr />
<div>Welcome to ScarletDME.org. [[ScarletDME]] is a OpenSource [[multivalue|MultiValue]] database, a community fork of [[OpenQM]] originally developed by [[Ladybridge]]. This project was founded on the 28th November 2008 to independently develop future versions of [[ScarletDME]] and contribute to [[OpenQM]]. While there are no longer regular official releases from [[Ladybridge]] we aim to support and develop for Scarlet to help our commercial sister, While providing a Free and open platform for Multi value development. <br />
<br />
Submissions to this project must be under the GPL version 2, with the option to use a later version if the licensee wishes. Or they can be licensed under the LGPL if you wish to encourage and allow incorporation into proprietary products. Contributors to [[ScarletDME]] are welcome to submit changes back to [[Rocket Software]] as well, for inclusion in the commercial version of OpenQM. However, we're not aware of a method of doing this now that [[Ladybridge]] no longer owns OpenQM.<br />
<br />
<br />
==For Users==<br />
*[[Downloads]]: Source tarball and package builds for key platforms<br />
*[[Guides & HOWTOs]] - Index of useful guides and HOWTO's on this Wiki<br />
*[[QMBASIC Enhancements]] - QMBASIC features that are custom or were not part of the original GPL release.<br />
*[https://github.com/geneb/scarletdme/issues Github issue tracker] For reporting and tracking bugs or other issues.<br />
*[[Documentation]] - Documented differences from the Commercial Documentation (Check here first, then below)<br />
*[http://www.openqm.org/docs/ Documentation] (Commercial Version)<br />
*General support email group: [http://groups.google.co.uk/group/scarletdme Register] then mailto:scarletdme@googlegroups.com <br />
*Discord: [https://discord.gg/H7MPapC2hK ScarletDME Discord Channel] (Discord links do expire, so if this doesn't work when you need it, please reach out to geneb@deltasoft.com and I'll get you a link!)<br />
<br />
====Supporting Projects====<br />
Various external projects that provide tools for or API's into OpenQM<br />
* [https://web.archive.org/web/20181213030923/http://billabong-services.co.uk/anji/ Billabong Services' Anji] - an open web based file browser and reporter. Eventually to become a RAD system. Pre-alpha grade of code. (link goes to the Wayback Machine copy of the site)<br />
*[[PHP_Native_API|PHP Native API module]]<br />
*[[C++ Wrapper]]<br />
*Steve Bush's [[Cygwin Port]] - Is it worth considering a MinGW port? - Would have to replace some posix bits which MinGW doesnt have.<br />
* [http://www.tridentinfosys.com/ Kevin Powick's Trident Delphi wrapper]<br />
<br />
==For Developers==<br />
For those that want to contribute to OpenQM GPL project.<br />
*Github repository: https://github.com/geneb/ScarletDME - [[HOWTO]] (Deprecated SVN instructions)<br />
*Development email group: [http://www.scarletdme.org/mailman/listinfo/openqm-dev Register] then mailto:openqm-dev@dev.scarletdme.org<br />
*[[Development snapshots]] - How to obtain, build, and upgrade using the snapshots.<br />
*[[QM Client API]] - Documentation and Available API's for the QM remote protocol.<br />
*[[Wish list]] - Things that you want & that we need contributors/devs for (lots of small things)<br />
*[[Dynamic linking]] - Calling objects written in other languages.<br />
*[[Installers]] - Installing scripts/programs or package systems<br />
*[[Commercial submissions]] - Sending stuff to Ladybridge<br />
<br />
== How do I use this site? ==<br />
<br />
If you have a question on USAGE of the community version of Scarlet, then send it to the [http://groups.google.co.uk/group/scarletdme general email support group].<br />
<br />
If you want to discuss DEVELOPMENT of the community version of Scarlet (eg. php5 module) then send it to the [http://www.scarletdme.org/mailman/listinfo/openqm-dev development email group].<br />
<br />
While the email lists are best for getting attention, permanent changes in this wiki will have a longer term impact so feel free to add or change ANYTHING in this wiki.<br />
<br />
=== External Resources ===<br />
* [[Installations]] - Places where GPL OpenQM is in use (I'm attempting to create a new section for this) - http://capersqm.dnsalias.net/<br />
* [http://www.rushflat.co.nz/downloads.shtml Brian Speir's Installation instructions and other downloads ]<br />
* [https://web.archive.org/web/20111223072449/http://openqm.blackflute.com/ Tom Delombard's old QM page. (Wayback Machine Link)] Includes details of the tape utilities and the PHP4 module (C Wrapper) <br />
* [http://sourceforge.net/projects/jd3 JD3] is a socket based server for D3 ported to QM <br />
* [http://www.billabong-services.co.uk/jd3/jd3php.html David Patterson's guide to using PHP with JD3] David's original page has disappeared (unable to contact), so here's the google cache<br />
* [http://www.billabong-services.co.uk/jd3/jd3java.html David Patterson's guide to using Java with JD3] google cache again<br />
<br />
<br />
--[[Administration]]</div>Genebhttps://scarlet.deltasoft.com/index.php?title=Subversion_Repository:_HOWTO&diff=1215Subversion Repository: HOWTO2022-01-27T19:42:13Z<p>Geneb: </p>
<hr />
<div>'''NOTE THAT THIS HOWTO NO LONGER APPLIES - IT'S AVAILABLE FOR HISTORICAL REASONS ONLY'''<br />
<br />
'''Important notice''': if you have checked out from gpl.openqm.com (as many people will have) you will need to update your Subversion repository to point to the ScarletDME domain instead. You can do this with the following command, executed at the root of your working copy:<br />
<nowiki> svn switch --relocate https://gpl.openqm.com https://scarletdme.org </nowiki><br />
You can also do this from a GUI such as TortoiseSVN, but you '''must''' use the 'relocate' option; the standard 'switch' command is different and is described below.<br />
<br />
== Introduction ==<br />
<br />
=== Terminology ===<br />
<br />
#Checkout - downloads a copy for the first time<br />
#'''Update''' - downloads your copy with any changes in the repository<br />
#'''Commit''' - uploads any changes you made in your copy to the repository<br />
#Import - upload - can be replaced by a combination of update/commit<br />
<br />
repo - repository<br />
<br />
depo - your copy<br />
<br />
=== Acquiring rights to commit ===<br />
<br />
To commit you must have a username and password which is given by an admin with root perms on gpl.openqm.com or you can choose your own password by sending the output of the following command to an admin ([[Admin_Team]] and look for subversion)<br />
<br />
htpasswd -n yourdesiredusername<br />
<br />
then any gpl.openqm.com server admin (with root or sudo access) can grant user yourdesiredusername access with the following command. It will ask for the password which is hashed password after the : in the output of the above/previous htpasswd command.<br />
<br />
htpasswd /etc/subversion/passwd yourdesiredusername<br />
<br />
Then commit with something like the following. username is usually cached and only required the first time.<br />
<br />
svn --username yourdesiredusername commit<br />
<br />
== Command Line User Interface ==<br />
<br />
Assumes you have already installed Subversion.<br />
<br />
Looks complicated but boils down to issuing two commands. One to checkout the project or to update your already checked project. Two to commit your changes.<br />
<br />
=== Walkthrough ===<br />
<br />
Make a working directory if you don’t have one<br />
<br />
mkdir qmvdb<br />
<br />
OR, if you already checked out a copy of the repo, just change into your working directory<br />
<br />
cd qmvdb<br />
<br />
If you just made the working directory then use svn checkout to get a copy of the project (all branches, tags and trunk of project openqm in this example)<br />
<br />
svn checkout https://www.scarletdme.org/svn/qmvdb/openqm<br />
<br />
OR, if you already checked out a copy of the repo, then best to ensure you are working on the latest version to avoid later work resolving any conflicts with other people's edits.<br />
<br />
svn update<br />
<br />
Find the file you want to work on (dh_ak.c in this example)<br />
<br />
find . -name dh_ak.c<br />
<br />
See the list of alternatives in different branches<br />
<br />
./openqm/tags/release-2.6.6/gplsrc/dh_ak.c<br />
./openqm/branches/workdevbranch1/gplsrc/dh_ak.c<br />
./openqm/trunk/gplsrc/dh_ak.c<br />
<br />
Decide to edit version of the file in the trunk directly. Only put tested changes in the trunk because people expect it to be stable at all times.<br />
<br />
vi ./openqm/trunk/gplsrc/dh_ak.c<br />
<br />
Example edit:<br />
<br />
if (big_dict_rec)<br />
{<br />
/*SB patch from AC from MP/Sep08*/<br />
/*ak_header.itype_ptr = ak_header_size + DH_AK_NODE_SIZE;*/<br />
if (header.file_version < 2)<br />
{<br />
ak_header.itype_ptr = DH_AK_NODE_SIZE + ak_header_size;<br />
}<br />
else<br />
{<br />
ak_header.itype_ptr = 2;<br />
}<br />
} <br />
<br />
Optionally check that nobody else has, since you last got the file, edited and committed the same section that you edited - and reconcile any conflicts interactively if necessary.<br />
<br />
svn update<br />
<br />
Optionally ask subversion to show you a diff of all changes you made in the whole tree<br />
<br />
svn diff<br />
<br />
<pre><br />
Index: openqm/trunk/gplsrc/dh_ak.c<br />
===================================================================<br />
--- openqm/trunk/gplsrc/dh_ak.c (revision 10)<br />
+++ openqm/trunk/gplsrc/dh_ak.c (working copy)<br />
@@ -1892,7 +1892,16 @@<br />
big_dict_rec = (dict_rec_len > AK_CODE_BYTES);<br />
if (big_dict_rec)<br />
{<br />
- ak_header.itype_ptr = ak_header_size + DH_AK_NODE_SIZE;<br />
+ /*SB patch from AC from MP/Sep08*/<br />
+ /*ak_header.itype_ptr = ak_header_size + DH_AK_NODE_SIZE;*/<br />
+ if (header.file_version < 2)<br />
+ {<br />
+ ak_header.itype_ptr = DH_AK_NODE_SIZE + ak_header_size;<br />
+ }<br />
+ else<br />
+ {<br />
+ ak_header.itype_ptr = 2;<br />
+ }<br />
}<br />
else /* Short enough to store in AK header */<br />
{<br />
</pre><br />
<br />
Commit your changes WITH A CONCISE COMMENT ABOUT ITS PURPOSE so people can get a good idea by looking at the log. This is so important that if you don't include a log message, Subversion will ask you for one. It is suggested that you do ''not'' include a message on the command line, so you can use the editor of your choice to write the message. The key advantage to this (other than being able to write multiline comments more easily) is that it shows you *exactly* which files it's going to commit (along with why, if you can read the codes). If you've forgotten something, or are commiting something you didn't mean to, you can just quit the editor and Subversion will ask you if you want to quit. It helps to avoid unnecessary commits and embarrassing log comments. To commit using this method, use<br />
<br />
svn --username yourname commit trunk/gplsrc/dh_ak.c<br />
<br />
or, to write your message on the command line,<br />
<br />
svn --username yourname commit -m "Bug fix for indexing on complex fields in non-VERSION 1 files from MP in Sep08 via AC"<br />
<br />
If you made an edit to a file and then backed out the change, you can easily revert back to the svn version of the file using "revert":<br />
svn revert gplsrc/op_sh.c<br />
<br />
This would replace your copy of op_sh.c with the one from the source repository.<br />
<br />
Note that in order for svn to open your editor, you need to have the SVN_EDITOR environment variable set. You can do this by entering the following command at the shell prompt. Alternately, you can add the command to your .bashrc file so you don't need to remember to re-enter the command each time you log in.<br />
export SVN_EDITOR=<your editor of choice><br />
<br />
== Graphic User Interface - Windows Tortoise ==<br />
<br />
=== Walkthrough ===<br />
<br />
http://tortoisesvn.tigris.org/<br />
<br />
This is a minimal but totally functional how to checkout from, and commit to, gpl.openqm in Windows using the Tortoise Windows Explorer shell extension. Think of Tortoise as a folder sync tool which pops up reconciliation screens where conflicts occur between people's edits.<br />
<br />
The interesting bits of source code management automatically jump out at you later when two people work on the same SECTION of the same file at the same time ie between checkout/update and commit.<br />
<br />
*You commit a file which has also committed by someone else AFTER you checked it out<br />
*You update your depo from repo and someone has committed changes to a file that you have already locally changed.<br />
<br />
In these cases you get presented with opportunity to compare and reconcile the two edits in a neat side by side window.<br />
<br />
=== Other tools===<br />
<br />
Visual Studio - http://ankhsvn.open.collab.net/<br />
<br />
Eclipse - http://subclipse.tigris.org/<br />
<br />
Netbeans supports it natively now too. <Diccon> Bean a life saver. (Can we have a few hints, Diccon?)<br />
<br />
=== Installation === <br />
<br />
http://tortoisesvn.net/downloads<br />
<br />
Might need a reboot<br />
<br />
=== Checking Out ===<br />
<br />
Right click on your desktop and choose SVN CHECKOUT<br />
<br />
Fill in the details<br />
<br />
URL? https://www.scarletdme.org/svn/qmvdb<br />
<br />
Checkout Folder? D:\Documents and settings\steve\Desktop\TESTIT<br />
<br />
Click OK<br />
<br />
Do you want to create the directory? Yes<br />
<br />
Do you want to accept the unsigned certificate? Yes<br />
<br />
Wait while it downloads the whole repository<br />
<br />
Finished: OK<br />
<br />
After you click on the folder or refresh desktop with F5, the new folder TESTIT should have a big green tick over it indicating all synced with the repo<br />
<br />
Subversion puts a hidden folder called .svn in any folder it is managing<br />
<br />
=== Committing ===<br />
<br />
#Open the folder TESTIT<br />
#Create a file called testing.txt anywhere in the folder structure<br />
#Close the folder and notice that it has a big red ! on it showing that something is commitable<br />
#Right click on the TESTIT folder (or indeed any subfolder)<br />
#Choose SVN Commit<br />
#It shows a long list of files that it thinks could be committed - in your case just the testing.txt file - you have to check all files that you want uploaded or check Select All<br />
#It helps to add a message explaining why you are committing<br />
#Click OK<br />
#Enter your committers username and password<br />
#Screen showing upload progress<br />
#Click OK when finished and note that the red ! has changed back into a green tick<br />
<br />
<br />
== Committing Binary Files like VOC/ERRMSG ==<br />
<br />
To subversion, VOC/ERRMSG (and other files? which?) are deemed to be "binary" rather like image files. Unlike ordinary source/text files, parallel edits on binary files from two people cannot (or rather should not) be merged. Conflicts, due to simultaneous edits outside of the repository, can only be resolved by picking one or the other person's file.<br />
<br />
The tempting solution is to make these into directory files but this doesnt work - probably because a) the default file type isnt directory and b) performance.<br />
<br />
The proper solution would be that these files are represented as ordinary directory files in the source code repository and that the required binary files are built thereof during the QM build process. Since only QM can build these files, the build process will first have to build QM and then use QM to build these files.<br />
<br />
If you do not do follow one of the procedures below then when you finally come to UPDATE or COMMIT and someone else has also worked on the file in the meantime then you will be presented with the unpleasant choice of either losing your changes or trashing someone elses - on the all or nothing principle for binary files. Depending on how much work you have dont this could be mildly irritating or extremely inconvenient.<br />
<br />
PRACTICAL SOLUTION FOR NOW<br />
<br />
Do SVN UPDATE just before editing these files and do SVN COMMIT immediately afterwards.<br />
<br />
#Get a lock on the file (or more likely folder) that you want to edit<br />
#SVN UPDATE<br />
#Edit the file<br />
#SVN COMMIT '''or''' release the lock on the file<br />
<br />
By default, a commit releases the lock. If you want to commit but keep the lock, use '--no-unlock' on the command line, or check the checkbox 'keep locks' in TortoiseSVN.<br />
There might be a combined LOCK&UPDATE command but I don't know it.<br />
<br />
Command line<br />
<br />
svn lock files -m "Reason for locking these files"<br />
<br />
Tortoise<br />
<br />
[[image:svnlock.jpg]]<br />
<br />
[[image:svnrelease.jpg]]</div>Genebhttps://scarlet.deltasoft.com/index.php?title=Main_Page&diff=1214Main Page2022-01-27T19:25:35Z<p>Geneb: </p>
<hr />
<div>Welcome to ScarletDME.org. [[ScarletDME]] is a OpenSource [[multivalue|MultiValue]] database, a community fork of [[OpenQM]] originally developed by [[Ladybridge]]. This project was founded on the 28th November 2008 to independently develop future versions of [[ScarletDME]] and contribute to [[OpenQM]]. While there are no longer regular official releases from [[Ladybridge]] we aim to support and develop for Scarlet to help our commercial sister, While providing a Free and open platform for Multi value development. <br />
<br />
Submissions to this project must be under the GPL version 2, with the option to use a later version if the licensee wishes. Or they can be licensed under the LGPL if you wish to encourage and allow incorporation into proprietary products. Contributors to [[ScarletDME]] are welcome to submit changes back to [[Rocket Software]] as well, for inclusion in the commercial version of OpenQM. However, we're not aware of a method of doing this now that [[Ladybridge]] no longer owns OpenQM.<br />
<br />
<br />
==For Users==<br />
*[[Downloads]]: Source tarball and package builds for key platforms<br />
*[[Guides & HOWTOs]] - Index of useful guides and HOWTO's on this Wiki<br />
*[[QMBASIC Enhancements]] - QMBASIC features that are custom or were not part of the original GPL release.<br />
*[https://github.com/geneb/scarletdme/issues Github issue tracker] For reporting and tracking bugs or other issues.<br />
*[[Documentation]] - Documented differences from the Commercial Documentation (Check here first, then below)<br />
*[http://www.openqm.org/docs/ Documentation] (Commercial Version)<br />
*General support email group: [http://groups.google.co.uk/group/scarletdme Register] then mailto:scarletdme@googlegroups.com <br />
*Discord: [https://discord.gg/djzBBbp5 https://discord.gg/djzBBbp5] (Discord links do expire, so if this doesn't work when you need it, please reach out to geneb@deltasoft.com and I'll get you a link!)<br />
<br />
====Supporting Projects====<br />
Various external projects that provide tools for or API's into OpenQM<br />
* [https://web.archive.org/web/20181213030923/http://billabong-services.co.uk/anji/ Billabong Services' Anji] - an open web based file browser and reporter. Eventually to become a RAD system. Pre-alpha grade of code. (link goes to the Wayback Machine copy of the site)<br />
*[[PHP_Native_API|PHP Native API module]]<br />
*[[C++ Wrapper]]<br />
*Steve Bush's [[Cygwin Port]] - Is it worth considering a MinGW port? - Would have to replace some posix bits which MinGW doesnt have.<br />
* [http://www.tridentinfosys.com/ Kevin Powick's Trident Delphi wrapper]<br />
<br />
==For Developers==<br />
For those that want to contribute to OpenQM GPL project.<br />
*Github repository: https://github.com/geneb/ScarletDME - [[HOWTO]] (Deprecated SVN instructions)<br />
*Development email group: [http://www.scarletdme.org/mailman/listinfo/openqm-dev Register] then mailto:openqm-dev@dev.scarletdme.org<br />
*[[Development snapshots]] - How to obtain, build, and upgrade using the snapshots.<br />
*[[QM Client API]] - Documentation and Available API's for the QM remote protocol.<br />
*[[Wish list]] - Things that you want & that we need contributors/devs for (lots of small things)<br />
*[[Dynamic linking]] - Calling objects written in other languages.<br />
*[[Installers]] - Installing scripts/programs or package systems<br />
*[[Commercial submissions]] - Sending stuff to Ladybridge<br />
<br />
== How do I use this site? ==<br />
<br />
If you have a question on USAGE of the community version of Scarlet, then send it to the [http://groups.google.co.uk/group/scarletdme general email support group].<br />
<br />
If you want to discuss DEVELOPMENT of the community version of Scarlet (eg. php5 module) then send it to the [http://www.scarletdme.org/mailman/listinfo/openqm-dev development email group].<br />
<br />
While the email lists are best for getting attention, permanent changes in this wiki will have a longer term impact so feel free to add or change ANYTHING in this wiki.<br />
<br />
=== External Resources ===<br />
* [[Installations]] - Places where GPL OpenQM is in use (I'm attempting to create a new section for this) - http://capersqm.dnsalias.net/<br />
* [http://www.rushflat.co.nz/downloads.shtml Brian Speir's Installation instructions and other downloads ]<br />
* [https://web.archive.org/web/20111223072449/http://openqm.blackflute.com/ Tom Delombard's old QM page. (Wayback Machine Link)] Includes details of the tape utilities and the PHP4 module (C Wrapper) <br />
* [http://sourceforge.net/projects/jd3 JD3] is a socket based server for D3 ported to QM <br />
* [http://www.billabong-services.co.uk/jd3/jd3php.html David Patterson's guide to using PHP with JD3] David's original page has disappeared (unable to contact), so here's the google cache<br />
* [http://www.billabong-services.co.uk/jd3/jd3java.html David Patterson's guide to using Java with JD3] google cache again<br />
<br />
<br />
--[[Administration]]</div>Genebhttps://scarlet.deltasoft.com/index.php?title=Main_Page&diff=1213Main Page2022-01-11T01:24:47Z<p>Geneb: /* For Users */</p>
<hr />
<div>Welcome to ScarletDME.org. [[ScarletDME]] is a OpenSource [[multivalue|MultiValue]] database, a community fork of [[OpenQM]] originally developed by [[Ladybridge]]. This project was founded on the 28th November 2008 to independently develop future versions of [[ScarletDME]] and contribute to [[OpenQM]]. While there are no longer regular official releases from [[Ladybridge]] we aim to support and develop for Scarlet to help our commercial sister, While providing a Free and open platform for Multi value development. <br />
<br />
Submissions to this project must be under the GPL version 2, with the option to use a later version if the licensee wishes. Or they can be licensed under the LGPL if you wish to encourage and allow incorporation into proprietary products. Contributors to [[ScarletDME]] are welcome to submit changes back to [[Rocket Software]] as well, for inclusion in the commercial version of OpenQM. However, we're not aware of a method of doing this now that [[Ladybridge]] no longer owns OpenQM.<br />
<br />
<br />
==For Users==<br />
*[[Downloads]]: Source tarball and package builds for key platforms<br />
*[[Guides & HOWTOs]] - Index of useful guides and HOWTO's on this Wiki<br />
*[[QMBASIC Enhancements]] - QMBASIC features that are custom or were not part of the original GPL release.<br />
*[https://github.com/geneb/scarletdme/issues Github issue tracker] For reporting and tracking bugs or other issues.<br />
*[[Documentation]] - Documented differences from the Commercial Documentation (Check here first, then below)<br />
*[http://www.openqm.org/docs/ Documentation] (Commercial Version)<br />
*General support email group: [http://groups.google.co.uk/group/scarletdme Register] then mailto:scarletdme@googlegroups.com <br />
*Discord: [https://discord.gg/djzBBbp5 https://discord.gg/djzBBbp5] (Discord links do expire, so if this doesn't work when you need it, please reach out to geneb@deltasoft.com and I'll get you a link!)<br />
<br />
====Supporting Projects====<br />
Various external projects that provide tools for or API's into OpenQM<br />
* [http://billabong-services.co.uk/anji Billabong Services' Anji] - an open web based file browser and reporter. Eventually to become a RAD system. Pre-alpha grade of code. <br />
*[[PHP_Native_API|PHP Native API module]]<br />
*[[C++ Wrapper]]<br />
*Steve Bush's [[Cygwin Port]] - Is it worth considering a MinGW port? - Would have to replace some posix bits which MinGW doesnt have.<br />
* [http://www.tridentinfosys.com/ Kevin Powick's Trident Delphi wrapper]<br />
<br />
==For Developers==<br />
For those that want to contribute to OpenQM GPL project.<br />
*Github repository: https://github.com/geneb/ScarletDME - [[HOWTO]] (Deprecated SVN instructions)<br />
*Development email group: [http://www.scarletdme.org/mailman/listinfo/openqm-dev Register] then mailto:openqm-dev@dev.scarletdme.org<br />
*[[Development snapshots]] - How to obtain, build, and upgrade using the snapshots.<br />
*[[QM Client API]] - Documentation and Available API's for the QM remote protocol.<br />
*[[Wish list]] - Things that you want & that we need contributors/devs for (lots of small things)<br />
*[[Dynamic linking]] - Calling objects written in other languages.<br />
*[[Installers]] - Installing scripts/programs or package systems<br />
*[[Commercial submissions]] - Sending stuff to Ladybridge<br />
<br />
== How do I use this site? ==<br />
<br />
If you have a question on USAGE of the community version of Scarlet, then send it to the [http://groups.google.co.uk/group/scarletdme general email support group].<br />
<br />
If you want to discuss DEVELOPMENT of the community version of Scarlet (eg. php5 module) then send it to the [http://www.scarletdme.org/mailman/listinfo/openqm-dev development email group].<br />
<br />
While the email lists are best for getting attention, permanent changes in this wiki will have a longer term impact so feel free to add or change ANYTHING in this wiki.<br />
<br />
=== External Resources ===<br />
* [[Installations]] - Places where GPL OpenQM is in use (I'm attempting to create a new section for this) - http://capersqm.dnsalias.net/<br />
* [http://www.rushflat.co.nz/downloads.shtml Brian Speir's Installation instructions and other downloads ]<br />
* [https://web.archive.org/web/20111223072449/http://openqm.blackflute.com/ Tom Delombard's old QM page. (Wayback Machine Link)] Includes details of the tape utilities and the PHP4 module (C Wrapper) <br />
* [http://sourceforge.net/projects/jd3 JD3] is a socket based server for D3 ported to QM <br />
* [http://www.billabong-services.co.uk/jd3/jd3php.html David Patterson's guide to using PHP with JD3] David's original page has disappeared (unable to contact), so here's the google cache<br />
* [http://www.billabong-services.co.uk/jd3/jd3java.html David Patterson's guide to using Java with JD3] google cache again<br />
<br />
<br />
--[[Administration]]</div>Genebhttps://scarlet.deltasoft.com/index.php?title=Downloads&diff=1212Downloads2022-01-11T01:03:35Z<p>Geneb: /* ScarletDME */</p>
<hr />
<div>Files, sources, packages and apps for ScarletDME/OpenQM<br />
<br />
==ScarletDME==<br />
<br />
Main source code repository: https://github.com/geneb/ScarletDME<br />
<br />
The git command line for getting the full source tree is:<br />
<br />
git clone git://github.com/geneb/ScarletDME.git<br />
<br />
<br />
The "master" branch is for the stable build and the "dev" branch is for current fixes/features.<br />
<br />
==Pre-Built OpenQM Packages==<br />
*RPM package - [http://scarlet.deltasoft.com/downloads/openqm-2.6-6.i386.rpm openqm-2.6-6.i386.rpm]<br />
*Debian Package - [http://scarlet.deltasoft.com/downloads/openqm-gpl_2.6.6_all.deb openqm-gpl_2.6.6_all.deb] (Note: this needs testing for upgrades)<br />
*Debian Package - [http://scarlet.deltasoft.com/downloads/openqm_2.4.17_all.deb openqm_2.4.17_all.deb]<br />
<br />
==OpenQM Source==<br />
Original Ladybridge Source Tarballs<br />
<br />
*[http://scarlet.deltasoft.com/downloads/qmsrc_2-6-6.tgz qmsrc_2-6-6.tgz]<br />
*[http://scarlet.deltasoft.com/downloads/qmsrc_2-4-4.tgz qmsrc_2-4-4.tgz]<br />
<br />
==Applications==<br />
*Coyote PICK webserver - [http://scarlet.deltasoft.com/downloads/qmweb-gpl-2006-03-11.tar.gz qmweb-gpl-2006-03-11.tar.gz] - N.B. The source code for the daemon is missing.</div>Genebhttps://scarlet.deltasoft.com/index.php?title=Main_Page&diff=1211Main Page2022-01-11T01:00:13Z<p>Geneb: </p>
<hr />
<div>Welcome to ScarletDME.org. [[ScarletDME]] is a OpenSource [[multivalue|MultiValue]] database, a community fork of [[OpenQM]] originally developed by [[Ladybridge]]. This project was founded on the 28th November 2008 to independently develop future versions of [[ScarletDME]] and contribute to [[OpenQM]]. While there are no longer regular official releases from [[Ladybridge]] we aim to support and develop for Scarlet to help our commercial sister, While providing a Free and open platform for Multi value development. <br />
<br />
Submissions to this project must be under the GPL version 2, with the option to use a later version if the licensee wishes. Or they can be licensed under the LGPL if you wish to encourage and allow incorporation into proprietary products. Contributors to [[ScarletDME]] are welcome to submit changes back to [[Rocket Software]] as well, for inclusion in the commercial version of OpenQM. However, we're not aware of a method of doing this now that [[Ladybridge]] no longer owns OpenQM.<br />
<br />
<br />
==For Users==<br />
*[[Downloads]]: Source tarball and package builds for key platforms<br />
*[[Guides & HOWTOs]] - Index of useful guides and HOWTO's on this Wiki<br />
*[[QMBASIC Enhancements]] - QMBASIC features that are custom or were not part of the original GPL release.<br />
*[https://github.com/geneb/scarletdme/issues Github issue tracker] For reporting and tracking bugs or other issues.<br />
*[[Documentation]] - Documented differences from the Commercial Documentation (Check here first, then below)<br />
*[http://www.openqm.org/docs/ Documentation] (Commercial Version)<br />
*General support email group: [http://groups.google.co.uk/group/scarletdme Register] then mailto:scarletdme@googlegroups.com <br />
*Discord: [https://discord.gg/cnyvVM https://discord.gg/cnyvVM]<br />
<br />
====Supporting Projects====<br />
Various external projects that provide tools for or API's into OpenQM<br />
* [http://billabong-services.co.uk/anji Billabong Services' Anji] - an open web based file browser and reporter. Eventually to become a RAD system. Pre-alpha grade of code. <br />
*[[PHP_Native_API|PHP Native API module]]<br />
*[[C++ Wrapper]]<br />
*Steve Bush's [[Cygwin Port]] - Is it worth considering a MinGW port? - Would have to replace some posix bits which MinGW doesnt have.<br />
* [http://www.tridentinfosys.com/ Kevin Powick's Trident Delphi wrapper]<br />
<br />
==For Developers==<br />
For those that want to contribute to OpenQM GPL project.<br />
*Github repository: https://github.com/geneb/ScarletDME - [[HOWTO]] (Deprecated SVN instructions)<br />
*Development email group: [http://www.scarletdme.org/mailman/listinfo/openqm-dev Register] then mailto:openqm-dev@dev.scarletdme.org<br />
*[[Development snapshots]] - How to obtain, build, and upgrade using the snapshots.<br />
*[[QM Client API]] - Documentation and Available API's for the QM remote protocol.<br />
*[[Wish list]] - Things that you want & that we need contributors/devs for (lots of small things)<br />
*[[Dynamic linking]] - Calling objects written in other languages.<br />
*[[Installers]] - Installing scripts/programs or package systems<br />
*[[Commercial submissions]] - Sending stuff to Ladybridge<br />
<br />
== How do I use this site? ==<br />
<br />
If you have a question on USAGE of the community version of Scarlet, then send it to the [http://groups.google.co.uk/group/scarletdme general email support group].<br />
<br />
If you want to discuss DEVELOPMENT of the community version of Scarlet (eg. php5 module) then send it to the [http://www.scarletdme.org/mailman/listinfo/openqm-dev development email group].<br />
<br />
While the email lists are best for getting attention, permanent changes in this wiki will have a longer term impact so feel free to add or change ANYTHING in this wiki.<br />
<br />
=== External Resources ===<br />
* [[Installations]] - Places where GPL OpenQM is in use (I'm attempting to create a new section for this) - http://capersqm.dnsalias.net/<br />
* [http://www.rushflat.co.nz/downloads.shtml Brian Speir's Installation instructions and other downloads ]<br />
* [https://web.archive.org/web/20111223072449/http://openqm.blackflute.com/ Tom Delombard's old QM page. (Wayback Machine Link)] Includes details of the tape utilities and the PHP4 module (C Wrapper) <br />
* [http://sourceforge.net/projects/jd3 JD3] is a socket based server for D3 ported to QM <br />
* [http://www.billabong-services.co.uk/jd3/jd3php.html David Patterson's guide to using PHP with JD3] David's original page has disappeared (unable to contact), so here's the google cache<br />
* [http://www.billabong-services.co.uk/jd3/jd3java.html David Patterson's guide to using Java with JD3] google cache again<br />
<br />
<br />
--[[Administration]]</div>Genebhttps://scarlet.deltasoft.com/index.php?title=Commercial_submissions&diff=1210Commercial submissions2022-01-10T23:11:20Z<p>Geneb: </p>
<hr />
<div>In summary you need to print and fax or mail an agreement to Ladybridge before emailing submissions to support@openqm.com<br />
<br />
Full details at: http://www.openqm.com/cgi/lbscgi.exe?X=vve55uaw42&t0=h&t1=devinfo<br />
<br />
Note that the above URL no longer works when checked on January 10th, 2022.</div>Genebhttps://scarlet.deltasoft.com/index.php?title=Ladybridge&diff=1209Ladybridge2022-01-10T23:01:24Z<p>Geneb: </p>
<hr />
<div>[http://www.ladybridge.org http://www.ladybridge.org] - In 2019 Ladybridge sold OpenQM to [https://www.zumasys.com Zumasys ] and in 2021, Zumasys sold OpenQM to [https://www.rocketsoftware.com Rocket Software]</div>Genebhttps://scarlet.deltasoft.com/index.php?title=Main_Page&diff=1208Main Page2022-01-07T16:04:36Z<p>Geneb: </p>
<hr />
<div>Welcome to ScarletDME.org. [[ScarletDME]] is a OpenSource [[multivalue|MultiValue]] database, a community fork of [[OpenQM]] originally developed by [[Ladybridge]]. This project was founded on the 28th November 2008 to independently develop future versions of [[ScarletDME]] and contribute to [[OpenQM]]. While there are no longer regular official releases from [[Ladybridge]] we aim to support and develop for Scarlet to help our commercial sister, While providing a Free and open platform for Multi value development. <br />
<br />
Submissions to this project must be under the GPL version 2, with the option to use a later version if the licensee wishes. Or they can be licensed under the LGPL if you wish to encourage and allow incorporation into proprietary products. Contributors to [[ScarletDME]] are welcome to submit changes back to Ladybridge as well, for inclusion in Commercial QM. See [[Commercial submissions]] for details. We encourage submission to Ladybridge, the founder of this MultiValue database. We do recognize their processes are not as easy as traditional GPL projects. So we simply offer an easier forum for development with less stringent controls on contribution and participation.<br />
<br />
<br />
==For Users==<br />
*[[Downloads]]: Source tarball and package builds for key platforms<br />
*[[Guides & HOWTOs]] - Index of useful guides and HOWTO's on this Wiki<br />
*[[QMBASIC Enhancements]] - QMBASIC features that are custom or were not part of the original GPL release.<br />
*[https://github.com/geneb/scarletdme/issues Github issue tracker] For reporting and tracking bugs or other issues.<br />
*[[Documentation]] - Documented differences from the Commercial Documentation (Check here first, then below)<br />
*[http://www.openqm.org/docs/ Documentation] (Commercial Version)<br />
*General support email group: [http://groups.google.co.uk/group/scarletdme Register] then mailto:scarletdme@googlegroups.com <br />
*Discord: [https://discord.gg/cnyvVM https://discord.gg/cnyvVM]<br />
<br />
====Supporting Projects====<br />
Various external projects that provide tools for or API's into OpenQM<br />
* [http://billabong-services.co.uk/anji Billabong Services' Anji] - an open web based file browser and reporter. Eventually to become a RAD system. Pre-alpha grade of code. <br />
*[[PHP_Native_API|PHP Native API module]]<br />
*[[C++ Wrapper]]<br />
*Steve Bush's [[Cygwin Port]] - Is it worth considering a MinGW port? - Would have to replace some posix bits which MinGW doesnt have.<br />
* [http://www.tridentinfosys.com/ Kevin Powick's Trident Delphi wrapper]<br />
<br />
==For Developers==<br />
For those that want to contribute to OpenQM GPL project.<br />
*Github repository: https://github.com/geneb/ScarletDME - [[HOWTO]] (Deprecated SVN instructions)<br />
*Development email group: [http://www.scarletdme.org/mailman/listinfo/openqm-dev Register] then mailto:openqm-dev@dev.scarletdme.org<br />
*[[Development snapshots]] - How to obtain, build, and upgrade using the snapshots.<br />
*[[QM Client API]] - Documentation and Available API's for the QM remote protocol.<br />
*[[Wish list]] - Things that you want & that we need contributors/devs for (lots of small things)<br />
*[[Dynamic linking]] - Calling objects written in other languages.<br />
*[[Installers]] - Installing scripts/programs or package systems<br />
*[[Commercial submissions]] - Sending stuff to Ladybridge<br />
<br />
== How do I use this site? ==<br />
<br />
If you have a question on USAGE of the community version of Scarlet, then send it to the [http://groups.google.co.uk/group/scarletdme general email support group].<br />
<br />
If you want to discuss DEVELOPMENT of the community version of Scarlet (eg. php5 module) then send it to the [http://www.scarletdme.org/mailman/listinfo/openqm-dev development email group].<br />
<br />
While the email lists are best for getting attention, permanent changes in this wiki will have a longer term impact so feel free to add or change ANYTHING in this wiki.<br />
<br />
=== External Resources ===<br />
* [[Installations]] - Places where GPL OpenQM is in use (I'm attempting to create a new section for this) - http://capersqm.dnsalias.net/<br />
* [http://www.rushflat.co.nz/downloads.shtml Brian Speir's Installation instructions and other downloads ]<br />
* [https://web.archive.org/web/20111223072449/http://openqm.blackflute.com/ Tom Delombard's old QM page. (Wayback Machine Link)] Includes details of the tape utilities and the PHP4 module (C Wrapper) <br />
* [http://sourceforge.net/projects/jd3 JD3] is a socket based server for D3 ported to QM <br />
* [http://www.billabong-services.co.uk/jd3/jd3php.html David Patterson's guide to using PHP with JD3] David's original page has disappeared (unable to contact), so here's the google cache<br />
* [http://www.billabong-services.co.uk/jd3/jd3java.html David Patterson's guide to using Java with JD3] google cache again<br />
<br />
<br />
--[[Administration]]</div>Genebhttps://scarlet.deltasoft.com/index.php?title=Main_Page&diff=1207Main Page2022-01-07T15:08:49Z<p>Geneb: </p>
<hr />
<div>Welcome to ScarletDME.org. [[ScarletDME]] is a OpenSource [[multivalue|MultiValue]] database, a community fork of [[OpenQM]] originally developed by [[Ladybridge]]. This project was founded on the 28th November 2008 to independently develop future versions of [[ScarletDME]] and contribute to [[OpenQM]]. While there are no longer regular official releases from [[Ladybridge]] we aim to support and develop for Scarlet to help our commercial sister, While providing a Free and open platform for Multi value development. <br />
<br />
Submissions to this project must be under the GPL version 2, with the option to use a later version if the licensee wishes. Or they can be licensed under the LGPL if you wish to encourage and allow incorporation into proprietary products. Contributors to [[ScarletDME]] are welcome to submit changes back to Ladybridge as well, for inclusion in Commercial QM. See [[Commercial submissions]] for details. We encourage submission to Ladybridge, the founder of this MultiValue database. We do recognize their processes are not as easy as traditional GPL projects. So we simply offer an easier forum for development with less stringent controls on contribution and participation.<br />
<br />
<br />
==For Users==<br />
*[[Downloads]]: Source tarball and package builds for key platforms<br />
*[[Guides & HOWTOs]] - Index of useful guides and HOWTO's on this Wiki<br />
*[[QMBASIC Enhancements]] - QMBASIC features that are custom or were not part of the original GPL release.<br />
*[https://github.com/geneb/scarletdme/issues Github issue tracker] For reporting and tracking bugs or other issues.<br />
*[[Documentation]] - Documented differences from the Commercial Documentation (Check here first, then below)<br />
*[http://www.openqm.org/docs/ Documentation] (Commercial Version)<br />
*General support email group: [http://groups.google.co.uk/group/scarletdme Register] then mailto:scarletdme@googlegroups.com <br />
*Discord: [https://discord.gg/cnyvVM https://discord.gg/cnyvVM]<br />
<br />
====Supporting Projects====<br />
Various external projects that provide tools for or API's into OpenQM<br />
* [http://billabong-services.co.uk/anji Billabong Services' Anji] - an open web based file browser and reporter. Eventually to become a RAD system. Pre-alpha grade of code. <br />
*[[PHP_Native_API|PHP Native API module]]<br />
*[[C++ Wrapper]]<br />
*Steve Bush's [[Cygwin Port]] - Is it worth considering a MinGW port? - Would have to replace some posix bits which MinGW doesnt have.<br />
* [http://www.tridentinfosys.com/ Kevin Powick's Trident Delphi wrapper]<br />
<br />
==For Developers==<br />
For those that want to contribute to OpenQM GPL project.<br />
*Github repository: https://github.com/geneb/ScarletDME - [[HOWTO]] (Deprecated SVN instructions)<br />
*Development email group: [http://www.scarletdme.org/mailman/listinfo/openqm-dev Register] then mailto:openqm-dev@dev.scarletdme.org<br />
*[[Development snapshots]] - How to obtain, build, and upgrade using the snapshots.<br />
*[[QM Client API]] - Documentation and Available API's for the QM remote protocol.<br />
*[[Wish list]] - Things that you want & that we need contributors/devs for (lots of small things)<br />
*[[Dynamic linking]] - Calling objects written in other languages.<br />
*[[Installers]] - Installing scripts/programs or package systems<br />
*[[Commercial submissions]] - Sending stuff to Ladybridge<br />
<br />
== How do I use this site? ==<br />
<br />
If you have a question on USAGE of the community version of Scarlet, then send it to the [http://groups.google.co.uk/group/scarletdme general email support group].<br />
<br />
If you want to discuss DEVELOPMENT of the community version of Scarlet (eg. php5 module) then send it to the [http://www.scarletdme.org/mailman/listinfo/openqm-dev development email group].<br />
<br />
While the email lists are best for getting attention, permanent changes in this wiki will have a longer term impact so feel free to add or change ANYTHING in this wiki.<br />
<br />
=== External Resources ===<br />
* [[Installations]] - Places where GPL OpenQM is in use (I'm attempting to create a new section for this) - http://capersqm.dnsalias.net/<br />
* [http://www.rushflat.co.nz/downloads.shtml Brian Speir's Installation instructions and other downloads ]<br />
* [http://openqm.blackflute.com/ Tom Delombard's old QM page.] Includes details of the tape utilities and the PHP4 module (C Wrapper) <br />
* [http://sourceforge.net/projects/jd3 JD3] is a socket based server for D3 ported to QM <br />
* [http://www.billabong-services.co.uk/jd3/jd3php.html David Patterson's guide to using PHP with JD3] David's original page has disappeared (unable to contact), so here's the google cache<br />
* [http://www.billabong-services.co.uk/jd3/jd3java.html David Patterson's guide to using Java with JD3] google cache again<br />
<br />
<br />
--[[Administration]]</div>Genebhttps://scarlet.deltasoft.com/index.php?title=Main_Page&diff=1206Main Page2022-01-07T15:07:25Z<p>Geneb: </p>
<hr />
<div>Welcome to ScarletDME.org. [[ScarletDME]] is a OpenSource [[multivalue|MultiValue]] database, a community fork of [[OpenQM]] originally developed by [[Ladybridge]]. This project was founded on the 28th November 2008 to independently develop future versions of [[ScarletDME]] and contribute to [[OpenQM]]. While there are no longer regular official releases from [[Ladybridge]] we aim to support and develop for Scarlet to help our commercial sister, While providing a Free and open platform for Multi value development. <br />
<br />
Submissions to this project must be under the GPL version 2, with the option to use a later version if the licensee wishes. Or they can be licensed under the LGPL if you wish to encourage and allow incorporation into proprietary products. Contributors to [[ScarletDME]] are welcome to submit changes back to Ladybridge as well, for inclusion in Commercial QM. See [[Commercial submissions]] for details. We encourage submission to Ladybridge, the founder of this MultiValue database. We do recognize their processes are not as easy as traditional GPL projects. So we simply offer an easier forum for development with less stringent controls on contribution and participation.<br />
<br />
<br />
==For Users==<br />
*[[Downloads]]: Source tarball and package builds for key platforms<br />
*[[Guides & HOWTOs]] - Index of useful guides and HOWTO's on this Wiki<br />
*[[QMBASIC Enhancements]] - QMBASIC features that are custom or were not part of the original GPL release.<br />
*[https://github.com/geneb/scarletdme/issues Github issue tracker] For reporting and tracking bugs or other issues.<br />
*[[Documentation]] - Documented differences from the Commercial Documentation (Check here first, then below)<br />
*[http://www.openqm.org/docs/ Documentation] (Commercial Version)<br />
*General support email group: [http://groups.google.co.uk/group/scarletdme Register] then mailto:scarletdme@googlegroups.com <br />
*Discord: [https://discord.gg/cnyvVM https://discord.gg/cnyvVM]<br />
<br />
====Supporting Projects====<br />
Various external projects that provide tools for or API's into OpenQM<br />
* [http://billabong-services.co.uk/anji Billabong Services' Anji] - an open web based file browser and reporter. Eventually to become a RAD system. Pre-alpha grade of code. <br />
*[[PHP_Native_API|PHP Native API module]]<br />
*[[C++ Wrapper]]<br />
*Steve Bush's [[Cygwin Port]] - Is it worth considering a MinGW port? - Would have to replace some posix bits which MinGW doesnt have.<br />
* [http://www.tridentinfosys.com/ Kevin Powick's Trident Delphi wrapper]<br />
<br />
==For Developers==<br />
For those that want to contribute to OpenQM GPL project.<br />
*Github repository: https://github.com/geneb/ScarletDME - [[HOWTO]] <br />
*Development email group: [http://www.scarletdme.org/mailman/listinfo/openqm-dev Register] then mailto:openqm-dev@dev.scarletdme.org<br />
*[[Development snapshots]] - How to obtain, build, and upgrade using the snapshots.<br />
*[[QM Client API]] - Documentation and Available API's for the QM remote protocol.<br />
*[[Wish list]] - Things that you want & that we need contributors/devs for (lots of small things)<br />
*[[Dynamic linking]] - Calling objects written in other languages.<br />
*[[Installers]] - Installing scripts/programs or package systems<br />
*[[Commercial submissions]] - Sending stuff to Ladybridge<br />
<br />
== How do I use this site? ==<br />
<br />
If you have a question on USAGE of the community version of Scarlet, then send it to the [http://groups.google.co.uk/group/scarletdme general email support group].<br />
<br />
If you want to discuss DEVELOPMENT of the community version of Scarlet (eg. php5 module) then send it to the [http://www.scarletdme.org/mailman/listinfo/openqm-dev development email group].<br />
<br />
While the email lists are best for getting attention, permanent changes in this wiki will have a longer term impact so feel free to add or change ANYTHING in this wiki.<br />
<br />
=== External Resources ===<br />
* [[Installations]] - Places where GPL OpenQM is in use (I'm attempting to create a new section for this) - http://capersqm.dnsalias.net/<br />
* [http://www.rushflat.co.nz/downloads.shtml Brian Speir's Installation instructions and other downloads ]<br />
* [http://openqm.blackflute.com/ Tom Delombard's old QM page.] Includes details of the tape utilities and the PHP4 module (C Wrapper) <br />
* [http://sourceforge.net/projects/jd3 JD3] is a socket based server for D3 ported to QM <br />
* [http://www.billabong-services.co.uk/jd3/jd3php.html David Patterson's guide to using PHP with JD3] David's original page has disappeared (unable to contact), so here's the google cache<br />
* [http://www.billabong-services.co.uk/jd3/jd3java.html David Patterson's guide to using Java with JD3] google cache again<br />
<br />
<br />
--[[Administration]]</div>Genebhttps://scarlet.deltasoft.com/index.php?title=Main_Page&diff=1205Main Page2020-02-26T17:54:58Z<p>Geneb: </p>
<hr />
<div>Welcome to ScarletDME.org. [[ScarletDME]] is a OpenSource [[multivalue|MultiValue]] database, a community fork of [[OpenQM]] originally developed by [[Ladybridge]]. This project was founded on the 28th November 2008 to independently develop future versions of [[ScarletDME]] and contribute to [[OpenQM]]. While there are no longer regular official releases from [[Ladybridge]] we aim to support and develop for Scarlet to help our commercial sister, While providing a Free and open platform for Multi value development. <br />
<br />
Submissions to this project must be under the GPL version 2, with the option to use a later version if the licensee wishes. Or they can be licensed under the LGPL if you wish to encourage and allow incorporation into proprietary products. Contributors to [[ScarletDME]] are welcome to submit changes back to Ladybridge as well, for inclusion in Commercial QM. See [[Commercial submissions]] for details. We encourage submission to Ladybridge, the founder of this MultiValue database. We do recognize their processes are not as easy as traditional GPL projects. So we simply offer an easier forum for development with less stringent controls on contribution and participation.<br />
<br />
<br />
==For Users==<br />
*[[Downloads]]: Source tarball and package builds for key platforms<br />
*[[Guides & HOWTOs]] - Index of useful guides and HOWTO's on this Wiki<br />
*[[QMBASIC Enhancements]] - QMBASIC features that are custom or were not part of the original GPL release.<br />
*[https://github.com/geneb/scarletdme/issues Github issue tracker] For reporting and tracking bugs or other issues.<br />
*[[Documentation]] - Documented differences from the Commercial Documentation (Check here first, then below)<br />
*[http://www.openqm.org/docs/ Documentation] (Commercial Version)<br />
*General support email group: [http://groups.google.co.uk/group/scarletdme Register] then mailto:scarletdme@googlegroups.com <br />
*Discord: [https://discord.gg/cnyvVM https://discord.gg/cnyvVM]<br />
<br />
====Supporting Projects====<br />
Various external projects that provide tools for or API's into OpenQM<br />
* [http://billabong-services.co.uk/anji Billabong Services' Anji] - an open web based file browser and reporter. Eventually to become a RAD system. Pre-alpha grade of code. <br />
*[[PHP_Native_API|PHP Native API module]]<br />
*[[C++ Wrapper]]<br />
*Steve Bush's [[Cygwin Port]] - Is it worth considering a MinGW port? - Would have to replace some posix bits which MinGW doesnt have.<br />
* [http://www.tridentinfosys.com/ Kevin Powick's Trident Delphi wrapper]<br />
<br />
==For Developers==<br />
For those that want to contribute to OpenQM GPL project.<br />
*Subversion repository: https://scarletdme.org/svn/qmvdb/ - [[HOWTO]] <br />
*Development email group: [http://www.scarletdme.org/mailman/listinfo/openqm-dev Register] then mailto:openqm-dev@dev.scarletdme.org<br />
*[[Development snapshots]] - How to obtain, build, and upgrade using the snapshots.<br />
*[[QM Client API]] - Documentation and Available API's for the QM remote protocol.<br />
*[[Wish list]] - Things that you want & that we need contributors/devs for (lots of small things)<br />
*[[Dynamic linking]] - Calling objects written in other languages.<br />
*[[Installers]] - Installing scripts/programs or package systems<br />
*[[Commercial submissions]] - Sending stuff to Ladybridge<br />
<br />
== How do I use this site? ==<br />
<br />
If you have a question on USAGE of the community version of Scarlet, then send it to the [http://groups.google.co.uk/group/scarletdme general email support group].<br />
<br />
If you want to discuss DEVELOPMENT of the community version of Scarlet (eg. php5 module) then send it to the [http://www.scarletdme.org/mailman/listinfo/openqm-dev development email group].<br />
<br />
While the email lists are best for getting attention, permanent changes in this wiki will have a longer term impact so feel free to add or change ANYTHING in this wiki.<br />
<br />
=== External Resources ===<br />
* [[Installations]] - Places where GPL OpenQM is in use (I'm attempting to create a new section for this) - http://capersqm.dnsalias.net/<br />
* [http://www.rushflat.co.nz/downloads.shtml Brian Speir's Installation instructions and other downloads ]<br />
* [http://openqm.blackflute.com/ Tom Delombard's old QM page.] Includes details of the tape utilities and the PHP4 module (C Wrapper) <br />
* [http://sourceforge.net/projects/jd3 JD3] is a socket based server for D3 ported to QM <br />
* [http://www.billabong-services.co.uk/jd3/jd3php.html David Patterson's guide to using PHP with JD3] David's original page has disappeared (unable to contact), so here's the google cache<br />
* [http://www.billabong-services.co.uk/jd3/jd3java.html David Patterson's guide to using Java with JD3] google cache again<br />
<br />
<br />
--[[Administration]]</div>Genebhttps://scarlet.deltasoft.com/index.php?title=Main_Page&diff=1204Main Page2020-02-26T17:54:09Z<p>Geneb: </p>
<hr />
<div>Welcome to ScarletDME.org. [[ScarletDME]] is a OpenSource [[multivalue|MultiValue]] database, a community fork of [[OpenQM]] originally developed by [[Ladybridge]]. This project was founded on the 28th November 2008 to independently develop future versions of [[ScarletDME]] and contribute to [[OpenQM]]. While there are no longer regular official releases from [[Ladybridge]] we aim to support and develop for Scarlet to help our commercial sister, While providing a Free and open platform for Multi value development. <br />
<br />
Submissions to this project must be under the GPL version 2, with the option to use a later version if the licensee wishes. Or they can be licensed under the LGPL if you wish to encourage and allow incorporation into proprietary products. Contributors to [[ScarletDME]] are welcome to submit changes back to Ladybridge as well, for inclusion in Commercial QM. See [[Commercial submissions]] for details. We encourage submission to Ladybridge, the founder of this MultiValue database. We do recognize their processes are not as easy as traditional GPL projects. So we simply offer an easier forum for development with less stringent controls on contribution and participation.<br />
<br />
<br />
==For Users==<br />
*[[Downloads]]: Source tarball and package builds for key platforms<br />
*[[Guides & HOWTOs]] - Index of useful guides and HOWTO's on this Wiki<br />
*[[QMBASIC Enhancements]] - QMBASIC features that are custom or were not part of the original GPL release.<br />
*[https://github.com/geneb/scarletdme/issues Github issue tracker] For reporting and tracking bugs or other issues.<br />
*[[Documentation]] - Documented differences from the Commercial Documentation (Check here first, then below)<br />
*[http://www.openqm.org/docs/ Documentation] (Commercial Version)<br />
*General support email group: [http://groups.google.co.uk/group/scarletdme Register] then mailto:scarletdme@googlegroups.com <br />
*Discord: [https://discord.gg/cnyvVM]<br />
<br />
====Supporting Projects====<br />
Various external projects that provide tools for or API's into OpenQM<br />
* [http://billabong-services.co.uk/anji Billabong Services' Anji] - an open web based file browser and reporter. Eventually to become a RAD system. Pre-alpha grade of code. <br />
*[[PHP_Native_API|PHP Native API module]]<br />
*[[C++ Wrapper]]<br />
*Steve Bush's [[Cygwin Port]] - Is it worth considering a MinGW port? - Would have to replace some posix bits which MinGW doesnt have.<br />
* [http://www.tridentinfosys.com/ Kevin Powick's Trident Delphi wrapper]<br />
<br />
==For Developers==<br />
For those that want to contribute to OpenQM GPL project.<br />
*Subversion repository: https://scarletdme.org/svn/qmvdb/ - [[HOWTO]] <br />
*Development email group: [http://www.scarletdme.org/mailman/listinfo/openqm-dev Register] then mailto:openqm-dev@dev.scarletdme.org<br />
*[[Development snapshots]] - How to obtain, build, and upgrade using the snapshots.<br />
*[[QM Client API]] - Documentation and Available API's for the QM remote protocol.<br />
*[[Wish list]] - Things that you want & that we need contributors/devs for (lots of small things)<br />
*[[Dynamic linking]] - Calling objects written in other languages.<br />
*[[Installers]] - Installing scripts/programs or package systems<br />
*[[Commercial submissions]] - Sending stuff to Ladybridge<br />
<br />
== How do I use this site? ==<br />
<br />
If you have a question on USAGE of the community version of Scarlet, then send it to the [http://groups.google.co.uk/group/scarletdme general email support group].<br />
<br />
If you want to discuss DEVELOPMENT of the community version of Scarlet (eg. php5 module) then send it to the [http://www.scarletdme.org/mailman/listinfo/openqm-dev development email group].<br />
<br />
While the email lists are best for getting attention, permanent changes in this wiki will have a longer term impact so feel free to add or change ANYTHING in this wiki.<br />
<br />
=== External Resources ===<br />
* [[Installations]] - Places where GPL OpenQM is in use (I'm attempting to create a new section for this) - http://capersqm.dnsalias.net/<br />
* [http://www.rushflat.co.nz/downloads.shtml Brian Speir's Installation instructions and other downloads ]<br />
* [http://openqm.blackflute.com/ Tom Delombard's old QM page.] Includes details of the tape utilities and the PHP4 module (C Wrapper) <br />
* [http://sourceforge.net/projects/jd3 JD3] is a socket based server for D3 ported to QM <br />
* [http://www.billabong-services.co.uk/jd3/jd3php.html David Patterson's guide to using PHP with JD3] David's original page has disappeared (unable to contact), so here's the google cache<br />
* [http://www.billabong-services.co.uk/jd3/jd3java.html David Patterson's guide to using Java with JD3] google cache again<br />
<br />
<br />
--[[Administration]]</div>Genebhttps://scarlet.deltasoft.com/index.php?title=Documentation&diff=1203Documentation2020-02-26T17:37:46Z<p>Geneb: </p>
<hr />
<div>Any features, fixes or changes from the Last Ladybridge GPL release<br />
==Original Documentation==<br />
The link below is the full documentation for the OpenQM 2.6-6 build that the GPL release is based on.<br />
<br />
[http://scarlet.deltasoft.com/downloads/qmdocs_2-6-6.zip OpenQM 2.6-6 Documentation]<br />
<br />
==Differences with OpenQM GPL== <br />
Documentation on any changes since OpenQM 2.6-6 and LadyBridges documentation.<br />
<br />
*QMBASIC Enhancements - QMBASIC features that are custom or were not part of the original GPL release.<br />
<br />
==Developers documentation==<br />
Documentation of the inner workings of ScarletDME. Covers both existing OpenQM design and new features.<br />
<br />
[[Error messages]]<br />
<br />
[[B-Trees]] (no changes, just dev docs)<br />
<br />
[[qmlnxd]] The Server/Daemon that all Client processes communicate/co-ordinate with.</div>Genebhttps://scarlet.deltasoft.com/index.php?title=Guides_%26_HOWTOs&diff=1202Guides & HOWTOs2020-02-26T17:35:43Z<p>Geneb: </p>
<hr />
<div>==Installation==<br />
<br />
=== Fedora ===<br />
[Only applies to OpenQM]<br />
*[http://www.geneb.org/qm/fedora_notes.txt http://www.geneb.org/qm/fedora_notes.txt] - Guide to installing and configuring ScarletDME from source on Fedora (useful scripts and configs)<br />
<br />
=== Ubuntu ===<br />
[Only Applies to OpenQM]<br />
*[http://www.rushflat.co.nz/files/UbuntuInstall.pdf http://www.rushflat.co.nz/files/UbuntuInstall.pdf] Installing the GPL Version of OpenQM on Ubuntu (aimed at Linux newbies)<br />
<br />
==Development==<br />
<br />
*[[Raw I/O]] - By default ScarletDME will modify both input and output character I/O. How to turn this off.<br />
*[[Recompiling ScarletDME]] - How to recompile ScarletDME system C code and BASIC code<br />
*[[Using Git]] - How to use git to check out code and commit it back (Windows and Linux)<br />
*[[Creating your own command]] - Guide to how to add features and commands to ScarletDME<br />
<br />
==Using ScarletDME==<br />
<br />
*[[Using your own editor]] - How to use your favorite editor from within ScarletDME<br />
*[[Nano editor profile]] - A syntax highlight profile for the Nano editor by Marcus Rhodes<br />
<br />
==Common Problems==<br />
*[[Do I have a permission problem?]]<br />
*[[I can't compile anything in GPL.BP!]]<br />
*[[I'm unable to restore my pseudo-tape saves from D3!]]<br />
*[[Problem compiling programs from the BP file in the QMSYS account]]</div>Genebhttps://scarlet.deltasoft.com/index.php?title=Downloads&diff=1201Downloads2020-02-26T17:32:38Z<p>Geneb: </p>
<hr />
<div>Files, sources, packages and apps for ScarletDME/OpenQM<br />
<br />
==ScarletDME==<br />
<br />
Main source code repository: https://github.com/geneb/ScarletDME<br />
<br />
The git command line for getting the full source tree is:<br />
<br />
git clone git://github.com/geneb/ScarletDME.git<br />
<br />
==Pre-Built OpenQM Packages==<br />
*RPM package - [http://scarlet.deltasoft.com/downloads/openqm-2.6-6.i386.rpm openqm-2.6-6.i386.rpm]<br />
*Debian Package - [http://scarlet.deltasoft.com/downloads/openqm-gpl_2.6.6_all.deb openqm-gpl_2.6.6_all.deb] (Note: this needs testing for upgrades)<br />
*Debian Package - [http://scarlet.deltasoft.com/downloads/openqm_2.4.17_all.deb openqm_2.4.17_all.deb]<br />
<br />
==OpenQM Source==<br />
Original Ladybridge Source Tarballs<br />
<br />
*[http://scarlet.deltasoft.com/downloads/qmsrc_2-6-6.tgz qmsrc_2-6-6.tgz]<br />
*[http://scarlet.deltasoft.com/downloads/qmsrc_2-4-4.tgz qmsrc_2-4-4.tgz]<br />
<br />
==Applications==<br />
*Coyote PICK webserver - [http://scarlet.deltasoft.com/downloads/qmweb-gpl-2006-03-11.tar.gz qmweb-gpl-2006-03-11.tar.gz] - N.B. The source code for the daemon is missing.</div>Genebhttps://scarlet.deltasoft.com/index.php?title=Installers&diff=1189Installers2013-08-19T21:22:53Z<p>Geneb: /* Deb */</p>
<hr />
<div>Development of installation assiters or binary distribution packages.<br />
<br />
===RPM===<br />
It exists, it need documenting and making into a auto build process on the gpl.openqm server. Contact [[User:Diccon|Diccon]] for info.<br />
<br />
===Deb===<br />
For Ubuntu, Debian, and other debian based distros.<br />
<br />
Debian package, a classic one exists. It can be done again. [[User:GlenB|GlenB]] is the contact for this.<br />
<br />
A bundle of build and publish scripts, repository formats/files, and various source files can be found [http://scarlet.deltasoft.com/downloads/qmdeb-pkg-files.tgz here]. This bundle includes the source releases of the OpenQM project and all of the files must be rebranded to reflect the ScarletDME project name.<br />
<br />
===Distro neutral script===<br />
This is an idea at the moment, mainley aimed at developers. If you have an install of QM already you might want to quickly setup multiple QM directorys/version on one server, to allow you to play around. <br />
<br />
To achieve this a distro neutral script could be written to se the current dir of QM to be the current running one.<br />
*Move out QM.config in /etc, place an apropriate one for current dir<br />
*check for groups, qm, and qmdev, create if missing. <br />
*move or link to /usr/bin/qm (and other binarys)<br />
<br />
This should be non destructive and able allow reinstantiation of previous installs.</div>Genebhttps://scarlet.deltasoft.com/index.php?title=PHP_Native_API&diff=1188PHP Native API2013-06-25T16:15:28Z<p>Geneb: /* Download */</p>
<hr />
<div>The PHP native API uses a socket connection to directly connect to an open and functioning QM API socket.<br />
<br />
This single PHP script file can be dropped in on any PHP compatible web server and allow developer to use a series of function calls to access a QM Database with all the functionality that the QMClient API allows.<br />
<br />
It is currently in the developing Alpha stages:<br />
<br />
Make sure you have followed the [[QM-API_Server|QM Client Server setup guide]]<br />
<br />
==News==<br />
*[[User:Diccon|Diccon]] 11:05, 6 April 2009 (UTC) Development has been paused until JD3 is fully assessed and it is determined if QMCLient is to continue getting my attention. This lib still works, others are welcome to develop on the SVN repo. Ask for commit access.<br />
* [[User:Diccon|Diccon]] 15:27, 9 March 2009 (UTC) Conditional Handling code is in, needs proper testing. Now have 34/46 command done, QMCall and a few others will be last because they take a bit of time/effort.<br />
*[[User:Diccon|Diccon]] 18:41, 16 February 2009 (UTC) '''Solved''' Fixed this, not 100% sure what was really happening, but i rewrote the way the login packet is constructed, to make it clearer. This fixed it. Go, Play!<br />
*[[User:Diccon|Diccon]] 19:36, 27 January 2009 (UTC) <strike>'''Warning''' Active bug found, i believe username padding is not working, some odd length usernames may cause a QMERROR 3000 for line 902, when trying to write to $LOGINS. I'm working on it.</strike><br />
<br />
==How to use==<br />
[[#Download|Download]] from the SVN from below.<br />
<br />
Place this file in the same directory as the file that intends to use it, or place it in the library path for your PHP configuration.<br />
<br />
In your php code Enter the following line at the top <br />
include "PHPQMLib.php"<br />
<br />
The first you need to call the connect function, something like this;<br />
qmconnect("my.qm.server.com", "4243", "testuser", "testpass", "QMTESTACCOUNT");<br />
or <br />
qmconnect("192.168.1.1", "4243", "testuser", "testpass", "QMTESTACC");<br />
<br />
You can now use the variety of PHPQM functions like qmread(), <br />
qmdelete(), etc as you wish.<br />
When you are done, for tidiness issue a;<br />
qmdisconnect();<br />
command, tidlying closing the socket.<br />
<br />
Each page/script will need to (re)connect. Connection persistence and pooling is <br />
a bit bigger than this simple lib for now.<br />
<br />
Check out qmLastClause() QMPHPClient function to cater for commands<br />
hitting ELSE, LOCKED, etc conditions<br />
<br />
Generally you can follow the QMClient docs in terms of server functionality.<br />
Using the below defines() as what is and is not implemented.<br />
Better PHP specific docs will be written later, when we go Beta<br />
<br />
==Supported Features==<br />
QMPHPClient supports (24/46);<br />
* Qm Quit<br />
* GetError<br />
* Set account<br />
* Open<br />
* Close<br />
* Read<br />
* ReadL (Untested)<br />
* ReadLW (Untested/partial)<br />
* ReadU (Untested)<br />
* ReadUL(Untested/partial)<br />
* Select<br />
* ReadNext<br />
* ClearSelect<br />
* ReadList<br />
* Release<br />
* Write<br />
* WriteU<br />
* Delete<br />
* DeleteU<br />
* Execute<br />
* Respond<br />
* Logon<br />
<br />
==Download==<br />
If you want a copy, it is released under the LGPL (i.e. can be used within commercial products, but is GPL itself). It is available on github here:<br />
<br />
https://github.com/geneb/PHPQMClient<br />
<br />
==Todo Shortlist==<br />
# Design and handle Conditional Execution, e.g. ELSE, LOCKED, ERROR, etc<br />
# Finish implementing all simple commands/function (24/46 Done)<br />
# Clean up error reporting</div>Genebhttps://scarlet.deltasoft.com/index.php?title=Recompiling_ScarletDME&diff=1187Recompiling ScarletDME2013-06-25T15:49:15Z<p>Geneb: Created page with "==Compiling ScarletDME from source== The first step is to "clone into" the git repository that has the ScarletDME source code. If you haven't done this yet, the command is: ..."</p>
<hr />
<div>==Compiling ScarletDME from source==<br />
<br />
The first step is to "clone into" the git repository that has the ScarletDME source code. If you haven't done this yet, the command is:<br />
<br />
git clone git://github.com/geneb/ScarletDME.git<br />
<br />
This will create a directory called ScarletDME and it will contain the full C and BASIC source code tree.<br />
<br />
If you just want to compile and install ScarletDME, it's very simple:<br />
<br />
make <br />
sudo make install<br />
<br />
And you're done! :)<br />
<br />
By default "make install" will place the system in '''/usr/qmsys''', so you'll need to either be root on the system you're using or have access to root privilege commands via "sudo".<br />
<br />
If you do not want the files being installed into '''/usr/qmsys''', you can edit the Makefile and change the line shown below to point where you'd like the installation action to put ScarletDME.<br />
<br />
INSTROOT := /usr/qmsys<br />
<br />
<br />
If you only want to update all the system data files from the source repository, you can use the make target "datafiles". This will copy all the system data into the INSTROOT location. Note that it WILL OVER-WRITE ANY EXISTING DATA! Please use the "datafiles" target with caution.<br />
<br />
If you want to start from a clean slate, there is a make target called "clean" that will remove all the object files from the "gplobj" directory. The make target "distclean" will also remove the compiled binaries as well as the terminfo database. <br />
<br />
The terminfo database can be built by hand with the following command executed from the root of the ScarletDME source directory:<br />
<br />
bin/qmtic -pterminfo terminfo.src<br />
<br />
<br />
----<br />
<br />
<br />
==Recompiling the original GPL OpenQM==<br />
<br />
If you want to recompile OpenQM there are two different sections you need to look at: the C code and the QMBasic code. If you make any changes to the code then you really should run buildgpl again, as this basically rebuilds the system from the ground up.<br />
<br />
If you alter the C code in gplsrc simply run "qm -stop", then buildgpl. This will compile your code and link it into the main routines. Depending upon compiler and library versions you may need to change some of the QM_GCC_OPTIONS in the buildgpl script. Try these in various combinations:<br />
<br />
* remove -Werror<br />
* add -Wno-packed<br />
* add -Wno-pointer-sign<br />
<br />
Recent Ubuntu (11.10) and other distributiuons have moved some of the library locations. You may have to edit the QMLIBS line in the buildgpl script. Try these<br />
<br />
* QMLIBS="-lm -lcrypt -ldl"<br />
* QMLIBS="-Wl,--no-as-needed -lm -lcrypt -ldl"<br />
<br />
If you change the basic programs in GPL.BP, however, you first need to compile them. First login to the sysprog account using "qm - Internal"; this allows you to compile the internal subroutines that would normally throw a compiler error. Then compile your altered routine. As GPL.BP.OUT doesn't exist immediately after an install, I'd suggest avoiding "* CHANGED" unless you actually want to compile them all. Finally exit qm and run .buildgpl. I'm not sure why this is necessary, but without it the changes only appear in the system account; running buildgpl propagates the changes properly.<br />
<br />
Quick checklist:<br />
<br />
After changing some C-code:<br />
<br />
* cd /usr/qmsys<br />
* qm -stop<br />
* ./buildgpl<br />
* qm -start<br />
<br />
After changing Basic code:<br />
<br />
* qm -Internal "BASIC GPL.BP progname"<br />
* ./buildgpl<br />
<br />
Gene and Ashley discovered that there was a missing file that prevented QPROC being recompiled. TODO:- recall and document this.</div>Genebhttps://scarlet.deltasoft.com/index.php?title=Guides_%26_HOWTOs&diff=1186Guides & HOWTOs2013-06-25T15:25:49Z<p>Geneb: /* Development */</p>
<hr />
<div>==Installation==<br />
<br />
=== Fedora ===<br />
*[http://www.geneb.org/qm/fedora_notes.txt http://www.geneb.org/qm/fedora_notes.txt] - Guide to installing and configuring ScarletDME from source on Fedora (useful scripts and configs)<br />
<br />
=== Ubuntu ===<br />
<br />
*[http://www.rushflat.co.nz/files/UbuntuInstall.pdf http://www.rushflat.co.nz/files/UbuntuInstall.pdf] Installing the GPL Version of OpenQM on Ubuntu (aimed at Linux newbies)<br />
<br />
==Development==<br />
<br />
*[[Raw I/O]] - By default ScarletDME will modify both input and output character I/O. How to turn this off.<br />
*[[Recompiling ScarletDME]] - How to recompile ScarletDME system C code and BASIC code<br />
*[[Using Git]] - How to use git to check out code and commit it back (Windows and Linux)<br />
*[[Creating your own command]] - Guide to how to add features and commands to ScarletDME<br />
<br />
==Using ScarletDME==<br />
<br />
*[[Using your own editor]] - How to use your favorite editor from within ScarletDME<br />
*[[Nano editor profile]] - A syntax highlight profile for the Nano editor by Marcus Rhodes<br />
<br />
==Common Problems==<br />
*[[Do I have a permission problem?]]<br />
*[[I can't compile anything in GPL.BP!]]<br />
*[[I'm unable to restore my pseudo-tape saves from D3!]]<br />
*[[Problem compiling programs from the BP file in the QMSYS account]]</div>Genebhttps://scarlet.deltasoft.com/index.php?title=Downloads&diff=1185Downloads2013-06-25T15:24:32Z<p>Geneb: /* Source */</p>
<hr />
<div>Files, sources, packages and apps for ScarletDME/OpenQM<br />
<br />
==Packages==<br />
*RPM package - [http://scarlet.deltasoft.com/downloads/openqm-2.6-6.i386.rpm openqm-2.6-6.i386.rpm]<br />
*Debian Package - [http://scarlet.deltasoft.com/downloads/openqm-gpl_2.6.6_all.deb openqm-gpl_2.6.6_all.deb] (Note: this needs testing for upgrades)<br />
*Debian Package - [http://scarlet.deltasoft.com/downloads/openqm_2.4.17_all.deb openqm_2.4.17_all.deb]<br />
<br />
==Source==<br />
Original Ladybridge Source Tarballs<br />
<br />
*[http://scarlet.deltasoft.com/downloads/qmsrc_2-6-6.tgz qmsrc_2-6-6.tgz]<br />
*[http://scarlet.deltasoft.com/downloads/qmsrc_2-4-4.tgz qmsrc_2-4-4.tgz]<br />
<br />
<br />
For the most recent source tree, please see https://github.com/geneb/ScarletDME<br />
<br />
The git command line for getting the full source tree is:<br />
<br />
git clone git://github.com/geneb/ScarletDME.git<br />
<br />
==Applications==<br />
*Coyote PICK webserver - [http://scarlet.deltasoft.com/downloads/qmweb-gpl-2006-03-11.tar.gz qmweb-gpl-2006-03-11.tar.gz] - N.B. The source code for the daemon is missing.</div>Genebhttps://scarlet.deltasoft.com/index.php?title=Cygwin_Port&diff=1184Cygwin Port2013-06-25T15:06:51Z<p>Geneb: </p>
<hr />
<div>Discussion [http://groups.google.com/group/OpenQMCygwin Google Group] Slow speed/possible poor Cygwin IPC implementation.<br />
<br />
[http://scarlet.deltasoft.com/downloads/openqmcygwin.zip openqmcygwin.zip]<br />
<br />
Note that the qm runtime built here only requires a smallish cygwin1.dll (not the full cygwin install) to provide some posix functionality that is not provided by mingw/msvc.<br />
<br />
<pre><br />
<br />
July 2006<br />
<br />
Here it is. The file is a bit big since I put some screen caps of the<br />
generic cygwin install process to try and get people up to speed quickly.<br />
<br />
http://www.neosys.com/software/openqmcygwin.zip<br />
<br />
I couldn't make a proper install script yet.<br />
<br />
Also I can only get telnet (to qm) working by running xinetd service from a<br />
cygwin command line and not as a proper installed service. I'm pretty<br />
certain that it is a permissions issue. Perhaps someone can explain how to<br />
get the usual inetd daemon running instead of xinetd. The command is<br />
"/usr/sbin/xinetd -d".<br />
<br />
Cheers,<br />
Steve<br />
<br />
INSTALL CHECKLIST<br />
<br />
- install cygwin default (for all users not "just me")<br />
add the following:<br />
- development - GCC compiler<br />
- net - xinetd<br />
- admin - cygrunsrv<br />
- editors - vim<br />
<br />
- unpack openqm distro file to be /usr/qmsys (c:\cygwin\usr\qmsys)<br />
<br />
in cygwin:<br />
cd /usr/qmsys<br />
./buildgpl (should be no errors/warnings except maybe qmconv<br />
doesn't compile)<br />
<br />
create a file /etc/qmconfig containing: (caps required!)<br />
[QM]<br />
QMSYS=/usr/qmsys<br />
NUMUSERS=9<br />
<br />
To enable qmconsole<br />
-------------------<br />
in My Computer properties, Advanced, Environment Variables, Add SYSTEM Env<br />
Variable<br />
- CYGWIN system environment variable to include the word "server" space to<br />
sep other words<br />
then *CLOSE* and reopen all cygwin consoles!<br />
<br />
in cygwin<br />
cygserver-config to install as a service<br />
chmod 666 /var/log/cygserver.log<br />
net start cygserver<br />
or<br />
/usr/sbin/cygserver -d<br />
and read the screen to see that cygserver is running<br />
(nb service permissions may be less than console permissions)<br />
<br />
then<br />
cd /usr/qmsys<br />
bin/qm -start (if you get Bad System Command then close and restart all<br />
cygwin consoles and restart cygserver service)<br />
(it should reply QM has been started<br />
bin/qm (should open a console for you with no login required)<br />
<br />
To enable telnet and client<br />
---------------------------<br />
cd /usr/qmsys<br />
bin/qm -start (if you haven't already done so)<br />
<br />
- copy sample file from this folder (qmclient and qmsrvr) service def files<br />
to /etc/xinetd.d folder<br />
- change to a valid administrator user name embedded in the above files<br />
- dos2unix /etc/xinetd.d/*<br />
<br />
- /etc/services to have lines for qmclient tcp 4242 and qmsrvr tcp 4243<br />
qmsrvr 4242/tcp #OpenQM Telnet Server<br />
qmclient 4243/tcp #OpenQM Client Access<br />
<br />
- start xinetd.d as follows<br />
cd /usr/sbin<br />
./xinetd -d<br />
and read screen log to ensure qmclient and qmsrvr services are loaded<br />
control+c to stop<br />
the following to add as a service<br />
cygrunsrv -I xinetd -p /usr/sbin/xinetd<br />
<br />
look in win application event log if fail to start<br />
/var/log/service log records connections<br />
maybe need to chmod 666 /var/log/servicelog<br />
<br />
telnet localhost 4242<br />
<br />
login with any valid win32 user name and password<br />
for account put qmsys<br />
<br />
DONE! <br />
</pre></div>Genebhttps://scarlet.deltasoft.com/index.php?title=Main_Page&diff=1183Main Page2013-06-25T15:05:33Z<p>Geneb: /* For Users */</p>
<hr />
<div>Welcome to ScarletDME.org. [[ScarletDME]] is a OpenSource [[multivalue|MultiValue]] database, a community fork of [[OpenQM]] originally developed by [[Ladybridge]]. This project was founded on the 28th November 2008 to independently develop future versions of [[ScarletDME]] and contribute to [[OpenQM]]. While there are no longer regular official releases from [[Ladybridge]] we aim to support and develop for Scarlet to help our commercial sister, While providing a Free and open platform for Multi value development. <br />
<br />
Submissions to this project must be under the GPL version 2, with the option to use a later version if the licensee wishes. Or they can be licensed under the LGPL if you wish to encourage and allow incorporation into proprietary products. Contributors to [[ScarletDME]] are welcome to submit changes back to Ladybridge as well, for inclusion in Commercial QM. See [[Commercial submissions]] for details. We encourage submission to Ladybridge, the founder of this MultiValue database. We do recognize their processes are not as easy as traditional GPL projects. So we simply offer an easier forum for development with less stringent controls on contribution and participation.<br />
<br />
<br />
==For Users==<br />
*[[Downloads]]: Source tarball and package builds for key platforms<br />
*[[Guides & HOWTOs]] - Index of useful guides and HOWTO's on this Wiki<br />
*[[QMBASIC Enhancements]] - QMBASIC features that are custom or were not part of the original GPL release.<br />
*[https://github.com/geneb/scarletdme/issues Github issue tracker] For reporting and tracking bugs or other issues.<br />
*[[Documentation]] - Documented differences from the Commercial Documentation (Check here first, then below)<br />
*[http://www.openqm.org/docs/ Documentation] (Commercial Version)<br />
*General support email group: [http://groups.google.co.uk/group/scarletdme Register] then mailto:scarletdme@googlegroups.com <br />
*IRC Chat: irc://irc.efnet.org/openqm or java client http://www.scarletdme.org/chat/<br />
<br />
====Supporting Projects====<br />
Various external projects that provide tools for or API's into OpenQM<br />
* [http://billabong-services.co.uk/anji Billabong Services' Anji] - an open web based file browser and reporter. Eventually to become a RAD system. Pre-alpha grade of code. <br />
*[[PHP_Native_API|PHP Native API module]]<br />
*[[C++ Wrapper]]<br />
*Steve Bush's [[Cygwin Port]] - Is it worth considering a MinGW port? - Would have to replace some posix bits which MinGW doesnt have.<br />
* [http://www.tridentinfosys.com/ Kevin Powick's Trident Delphi wrapper]<br />
<br />
==For Developers==<br />
For those that want to contribute to OpenQM GPL project.<br />
*Subversion repository: https://scarletdme.org/svn/qmvdb/ - [[HOWTO]] <br />
*Development email group: [http://www.scarletdme.org/mailman/listinfo/openqm-dev Register] then mailto:openqm-dev@dev.scarletdme.org<br />
*[[Development snapshots]] - How to obtain, build, and upgrade using the snapshots.<br />
*[[QM Client API]] - Documentation and Available API's for the QM remote protocol.<br />
*[[Wish list]] - Things that you want & that we need contributors/devs for (lots of small things)<br />
*[[Dynamic linking]] - Calling objects written in other languages.<br />
*[[Installers]] - Installing scripts/programs or package systems<br />
*[[Commercial submissions]] - Sending stuff to Ladybridge<br />
<br />
== How do I use this site? ==<br />
<br />
If you have a question on USAGE of the community version of Scarlet, then send it to the [http://groups.google.co.uk/group/scarletdme general email support group].<br />
<br />
If you want to discuss DEVELOPMENT of the community version of Scarlet (eg. php5 module) then send it to the [http://www.scarletdme.org/mailman/listinfo/openqm-dev development email group].<br />
<br />
While the email lists are best for getting attention, permanent changes in this wiki will have a longer term impact so feel free to add or change ANYTHING in this wiki.<br />
<br />
=== External Resources ===<br />
* [[Installations]] - Places where GPL OpenQM is in use (I'm attempting to create a new section for this) - http://capersqm.dnsalias.net/<br />
* [http://www.rushflat.co.nz/downloads.shtml Brian Speir's Installation instructions and other downloads ]<br />
* [http://openqm.blackflute.com/ Tom Delombard's old QM page.] Includes details of the tape utilities and the PHP4 module (C Wrapper) <br />
* [http://sourceforge.net/projects/jd3 JD3] is a socket based server for D3 ported to QM <br />
* [http://www.billabong-services.co.uk/jd3/jd3php.html David Patterson's guide to using PHP with JD3] David's original page has disappeared (unable to contact), so here's the google cache<br />
* [http://www.billabong-services.co.uk/jd3/jd3java.html David Patterson's guide to using Java with JD3] google cache again<br />
<br />
<br />
--[[Administration]]</div>Genebhttps://scarlet.deltasoft.com/index.php?title=Custom_Compiler_Modes&diff=1182Custom Compiler Modes2013-06-25T15:03:22Z<p>Geneb: </p>
<hr />
<div><br />
== ScarletDME/OpenQM GPL Compatibility Compiler Modes ==<br />
<br />
===HEADING.NO.EJECT===<br />
This is provided to function the same as the commercial HEADING.NO.EJECT. When this mode is enabled, the NO.EJECT mode of the QMBasic HEADING statement is set as the default. Automatic page throw, on setting a new heading, is suppressed.<br />
<br />
<br />
===NO.ECHO.DATA=== <br />
This is provided to function the same as the commercial NO.ECHO.DATA. When this mode is enabled, the application will not echo characters to standard out/terminal when being used as a data input method.<br />
<br />
<br />
----<br />
<br />
== ScarletDME/OpenQM GPL Custom Compiler Modes ==<br />
<br />
===NO.CASE.INVERT=== <br />
This mode will cause INPUT and INPUT@ to ignore the case inversion state of PTERM, when the application executes. The state of PTERM is reserved during execution of _INPUT, so the session operates normally outside of the code which has "$mode no.case.invert" specified.</div>Genebhttps://scarlet.deltasoft.com/index.php?title=Downloads&diff=1181Downloads2013-06-25T15:02:28Z<p>Geneb: </p>
<hr />
<div>Files, sources, packages and apps for ScarletDME/OpenQM<br />
<br />
==Packages==<br />
*RPM package - [http://scarlet.deltasoft.com/downloads/openqm-2.6-6.i386.rpm openqm-2.6-6.i386.rpm]<br />
*Debian Package - [http://scarlet.deltasoft.com/downloads/openqm-gpl_2.6.6_all.deb openqm-gpl_2.6.6_all.deb] (Note: this needs testing for upgrades)<br />
*Debian Package - [http://scarlet.deltasoft.com/downloads/openqm_2.4.17_all.deb openqm_2.4.17_all.deb]<br />
<br />
==Source==<br />
Original Ladybridge Source Tarballs<br />
<br />
*[http://scarlet.deltasoft.com/downloads/qmsrc_2-6-6.tgz qmsrc_2-6-6.tgz]<br />
*[http://scarlet.deltasoft.com/downloads/qmsrc_2-4-4.tgz qmsrc_2-4-4.tgz]<br />
<br />
<br />
For the most recent source tree, please see https://github.com/geneb/ScarletDME<br />
<br />
==Applications==<br />
*Coyote PICK webserver - [http://scarlet.deltasoft.com/downloads/qmweb-gpl-2006-03-11.tar.gz qmweb-gpl-2006-03-11.tar.gz] - N.B. The source code for the daemon is missing.</div>Genebhttps://scarlet.deltasoft.com/index.php?title=Guides_%26_HOWTOs&diff=1180Guides & HOWTOs2013-06-25T14:59:54Z<p>Geneb: </p>
<hr />
<div>==Installation==<br />
<br />
=== Fedora ===<br />
*[http://www.geneb.org/qm/fedora_notes.txt http://www.geneb.org/qm/fedora_notes.txt] - Guide to installing and configuring ScarletDME from source on Fedora (useful scripts and configs)<br />
<br />
=== Ubuntu ===<br />
<br />
*[http://www.rushflat.co.nz/files/UbuntuInstall.pdf http://www.rushflat.co.nz/files/UbuntuInstall.pdf] Installing the GPL Version of OpenQM on Ubuntu (aimed at Linux newbies)<br />
<br />
==Development==<br />
<br />
*[[Raw I/O]] - By default ScarletDME will modify both input and output character I/O. How to turn this off.<br />
*[[Recompiling ScarletDME]] - How to recompile ScarletDME system C code and BASIC code<br />
*[[HOWTO|SVN Howto]] - How to use Subversion to check out code and commit it back (Windows and Linux)<br />
*[[Creating your own command]] - Guide to how to add features and commands to ScarletDME<br />
<br />
==Using ScarletDME==<br />
<br />
*[[Using your own editor]] - How to use your favorite editor from within ScarletDME<br />
*[[Nano editor profile]] - A syntax highlight profile for the Nano editor by Marcus Rhodes<br />
<br />
==Common Problems==<br />
*[[Do I have a permission problem?]]<br />
*[[I can't compile anything in GPL.BP!]]<br />
*[[I'm unable to restore my pseudo-tape saves from D3!]]<br />
*[[Problem compiling programs from the BP file in the QMSYS account]]</div>Genebhttps://scarlet.deltasoft.com/index.php?title=Nano_editor_profile&diff=1179Nano editor profile2013-06-25T14:57:13Z<p>Geneb: </p>
<hr />
<div>Here's how I call nano<br />
<br />
EXECUTE '!nano -FHLOSWcdiklmptwxT' : TAB_WDTH : ' -Y pick ' : THE_PATH :<br />
'/' : THE_FILE<br />
<br />
<br />
/etc/nanorc<br />
<br />
<nowiki><br />
## Sample initialization file for GNU nano.<br />
##<br />
## Please note that you must have configured nano with --enable-nanorc<br />
## for this file to be read! Also note that this file should not be in<br />
## DOS or Mac format, and that characters specially interpreted by the<br />
## shell should not be escaped here.<br />
##<br />
## To make sure a value is disabled, use "unset <option>".<br />
##<br />
## For the options that take parameters, the default value is given.<br />
## Other options are unset by default.<br />
##<br />
## Quotes inside string parameters don't have to be escaped with<br />
## backslashes. The last double quote in the string will be treated as<br />
## its end. For example, for the "brackets" option, ""')>]}" will match<br />
## ", ', ), >, ], and }.<br />
<br />
## Marcus: I've tried to modify the key-mapping to be as 'normal' as<br />
## possible, but compromises were required. For example, Esc will<br />
## exit search and replace, but F4 exits nano, not Ctl+F4. My other<br />
## choices may not suite you, but they are easily altered below.<br />
<br />
## Use auto-indentation.<br />
set autoindent<br />
<br />
## Backup files to filename~.<br />
# set backup<br />
<br />
## The directory to put unique backup files in.<br />
# set backupdir ""<br />
<br />
## Do backwards searches by default.<br />
# set backwards<br />
<br />
## Use bold text instead of reverse video text.<br />
# set boldtext<br />
<br />
## The characters treated as closing brackets when justifying<br />
## paragraphs. They cannot contain blank characters. Only closing<br />
## punctuation, optionally followed by closing brackets, can end<br />
## sentences.<br />
##<br />
# set brackets ""')>]}"<br />
<br />
## Do case sensitive searches by default.<br />
# set casesensitive<br />
<br />
## Constantly display the cursor position in the statusbar. Note that<br />
## this overrides "quickblank".<br />
set const<br />
<br />
## Use cut to end of line by default.<br />
set cut<br />
<br />
## Set the line length for wrapping text and justifying paragraphs.<br />
## If fill is 0 or less, the line length will be the screen width less<br />
## this number.<br />
##<br />
# set fill -8<br />
<br />
## Enable ~/.nano_history for saving and reading search/replace strings.<br />
set historylog<br />
<br />
## The opening and closing brackets that can be found by bracket<br />
## searches. They cannot contain blank characters. The former set must<br />
## come before the latter set, and both must be in the same order.<br />
##<br />
# set matchbrackets "(<[{)>]}"<br />
<br />
## Use the blank line below the titlebar as extra editing space.<br />
set morespace<br />
<br />
## Enable mouse support, if available for your system. When enabled,<br />
## mouse clicks can be used to place the cursor, set the mark (with a<br />
## double click), and execute shortcuts. The mouse will work in the X<br />
## Window System, and on the console when gpm is running.<br />
##<br />
set mouse<br />
<br />
## Allow multiple file buffers (inserting a file will put it into a<br />
## separate buffer). You must have configured with --enable-multibuffer<br />
## for this to work.<br />
##<br />
set multibuffer<br />
<br />
## Don't convert files from DOS/Mac format.<br />
set noconvert<br />
<br />
## Don't follow symlinks when writing files.<br />
set nofollow<br />
<br />
## Don't display the helpful shortcut lists at the bottom of the screen.<br />
set nohelp<br />
<br />
## Don't add newlines to the ends of files.<br />
set nonewlines<br />
<br />
## Don't wrap text at all.<br />
set nowrap<br />
<br />
## Set operating directory. nano will not read or write files outside<br />
## this directory and its subdirectories. Also, the current directory<br />
## is changed to here, so any files are inserted from this dir. A blank<br />
## string means the operating directory feature is turned off.<br />
##<br />
# set operatingdir ""<br />
<br />
## Preserve the XON and XOFF keys (^Q and ^S).<br />
set preserve<br />
<br />
## The characters treated as closing punctuation when justifying<br />
## paragraphs. They cannot contain blank characters. Only closing<br />
## punctuation, optionally followed by closing brackets, can end<br />
## sentences.<br />
##<br />
# set punct "!.?"<br />
<br />
## Do quick statusbar blanking. Statusbar messages will disappear after<br />
## 1 keystroke instead of 26. Note that "const" overrides this.<br />
##<br />
# set quickblank<br />
<br />
## The email-quote string, used to justify email-quoted paragraphs.<br />
## This is an extended regular expression if your system supports them,<br />
## otherwise a literal string. Default:<br />
# set quotestr "^([ ]*[#:>\|}])+"<br />
## if you have extended regular expression support, otherwise:<br />
# set quotestr "> "<br />
<br />
## Fix Backspace/Delete confusion problem.<br />
# set rebinddelete<br />
<br />
## Fix numeric keypad key confusion problem.<br />
# set rebindkeypad<br />
<br />
## Do extended regular expression searches by default.<br />
set regexp<br />
<br />
## Make the Home key smarter. When Home is pressed anywhere but at the<br />
## very beginning of non-whitespace characters on a line, the cursor<br />
## will jump to that beginning (either forwards or backwards). If the<br />
## cursor is already at that position, it will jump to the true<br />
## beginning of the line.<br />
# set smarthome<br />
<br />
## Use smooth scrolling as the default.<br />
set smooth<br />
<br />
## Use this spelling checker instead of the internal one. This option<br />
## does not properly have a default value.<br />
##<br />
# set speller "aspell -x -c"<br />
<br />
## Allow nano to be suspended.<br />
set suspend<br />
<br />
## Use this tab size instead of the default; it must be greater than 0.<br />
set tabsize 3<br />
<br />
## Convert typed tabs to spaces.<br />
set tabstospaces<br />
<br />
## Save automatically on exit, don't prompt.<br />
set tempfile<br />
<br />
## Disallow file modification. Why would you want this in an rcfile?<br />
# set view<br />
<br />
## The two single-column characters used to display the first characters<br />
## of tabs and spaces. 187 in ISO 8859-1 (0000BB in Unicode) and 183 in<br />
## ISO-8859-1 (0000B7 in Unicode) seem to be good values for these.<br />
# set whitespace " "<br />
<br />
## Detect word boundaries more accurately by treating punctuation<br />
## characters as parts of words.<br />
set wordbounds<br />
<br />
## Enable the new (EXPERIMENTAL) generic undo code, not just for line<br />
cuts<br />
set undo<br />
<br />
## Enable soft line wrapping (AKA full line display)<br />
# set softwrap<br />
<br />
<br />
## Color setup<br />
##<br />
## Format:<br />
##<br />
## syntax "short description" ["filename regex" ...]<br />
##<br />
## The "none" syntax is reserved; specifying it on the command line is<br />
## the same as not having a syntax at all. The "default" syntax is<br />
## special: it takes no filename regexes, and applies to files that<br />
## don't match any other syntax's filename regexes.<br />
##<br />
## color foreground,background "regex" ["regex"...]<br />
## or<br />
## icolor foreground,background "regex" ["regex"...]<br />
##<br />
## "color" will do case sensitive matches, while "icolor" will do case<br />
## insensitive matches.<br />
##<br />
## Valid colors: white, black, red, blue, green, yellow, magenta, cyan.<br />
## For foreground colors, you may use the prefix "bright" to get a<br />
## stronger highlight.<br />
##<br />
## To use multi-line regexes, use the start="regex" end="regex"<br />
## [start="regex" end="regex"...] format.<br />
##<br />
## If your system supports transparency, not specifying a background<br />
## color will use a transparent color. If you don't want this, be sure<br />
## to set the background color to black or white.<br />
##<br />
## If you wish, you may put your syntaxes in separate files. You can<br />
## make use of such files (which can only include "syntax", "color", and<br />
## "icolor" commands) as follows:<br />
##<br />
## include "/path/to/syntax_file.nanorc"<br />
##<br />
## Unless otherwise noted, the name of the syntax file (without the<br />
## ".nanorc" extension) should be the same as the "short description"<br />
## name inside that file. These names are kept fairly short to make<br />
## them easier to remember and faster to type using nano's -Y option.<br />
##<br />
## All regexes should be extended regular expressions.<br />
<br />
## Key bindings<br />
## Please see nanorc(5) for more details on this<br />
##<br />
## Here are some samples to get you going<br />
##<br />
# bind M-W nowrap main<br />
# bind M-A casesens search<br />
# bind ^S research main<br />
<br />
# Any keys defined in 'all' menus can be superceded in specific menus.<br />
<br />
bind ^C cancel all<br />
bind ^U casesens all<br />
bind M-X exit all<br />
bind F3 searchagain all<br />
bind F2 whereis all<br />
bind ^F whereis all<br />
<br />
# Main screen keys<br />
<br />
bind ^C copytext main<br />
bind ^X cut main<br />
bind F4 exit main<br />
bind ^Q exit main<br />
bind M-] findbracket main<br />
bind M-B firstline main<br />
bind M-H firstline main<br />
bind ^G gotoline main<br />
bind M-/ help main<br />
bind M-I indent main<br />
bind ^O insert main<br />
bind ^N insert main<br />
bind M-E lastline main<br />
bind ^A mark main<br />
bind M-. nextbuf main<br />
bind F10 nohelp main<br />
bind ^P nowrap main<br />
bind M-, prevbuf main<br />
bind ^Y redo main<br />
bind F5 refresh main<br />
bind ^H replace main<br />
bind M-= scrolldown main<br />
bind M-- scrollup main<br />
bind ^V uncut main<br />
bind ^Z undo main<br />
bind ^U unindent main<br />
bind M-U unindent main<br />
bind ^W writeout main<br />
<br />
## Set this if your backspace key sends delete most of the time (2.1.3+)<br />
# bind kdel backspace all<br />
<br />
## Nanorc files<br />
include "/usr/share/nano/nanorc.nanorc"<br />
<br />
## C/C++<br />
include "/usr/share/nano/c.nanorc"<br />
<br />
## Cascading Style Sheets<br />
include "/usr/share/nano/css.nanorc"<br />
<br />
## Debian files<br />
include "/usr/share/nano/debian.nanorc"<br />
<br />
## Gentoo files<br />
include "/usr/share/nano/gentoo.nanorc"<br />
<br />
## HTML<br />
include "/usr/share/nano/html.nanorc"<br />
<br />
## PHP<br />
include "/usr/share/nano/php.nanorc"<br />
<br />
## TCL<br />
include "/usr/share/nano/tcl.nanorc"<br />
<br />
## TeX<br />
include "/usr/share/nano/tex.nanorc"<br />
<br />
## Quoted emails (under e.g. mutt)<br />
include "/usr/share/nano/mutt.nanorc"<br />
<br />
## Patch files<br />
include "/usr/share/nano/patch.nanorc"<br />
<br />
## Manpages<br />
include "/usr/share/nano/man.nanorc"<br />
<br />
## Groff<br />
include "/usr/share/nano/groff.nanorc"<br />
<br />
## Perl<br />
include "/usr/share/nano/perl.nanorc"<br />
<br />
## Python<br />
include "/usr/share/nano/python.nanorc"<br />
<br />
## Ruby<br />
include "/usr/share/nano/ruby.nanorc"<br />
<br />
## Java<br />
include "/usr/share/nano/java.nanorc"<br />
<br />
## AWK<br />
include "/usr/share/nano/awk.nanorc"<br />
<br />
## Assembler<br />
include "/usr/share/nano/asm.nanorc"<br />
<br />
## Bourne shell scripts<br />
include "/usr/share/nano/sh.nanorc"<br />
<br />
## POV-Ray<br />
include "/usr/share/nano/pov.nanorc"<br />
<br />
## XML-type files<br />
include "/usr/share/nano/xml.nanorc"<br />
<br />
## Pick/DataBasic files<br />
include "/usr/share/nano/pick.nanorc"<br />
<br />
</nowiki><br />
<br />
<br />
/usr/share/nano/pick.nanorc<br />
<br />
<nowiki><br />
<br />
## Here is an example for Pick/DataBasic<br />
##<br />
## You'll need to append .pbc to your programs, at least temporarily,<br />
just<br />
## while being edited, because the sytax option (-Y/--syntax=) doesn't<br />
## seem to work.<br />
##<br />
## nano -EFHLOSWcdiklmptwxT3 -o /pathname /pathname/filename.pbc<br />
## nano -EFHLOSWcdiklmptwxT3<br />
-o /home/marcus/Desktop/Stuff/Work/Clients/DAS/DAS/PRIVLIB /home/marcus/Desktop/Stuff/Work/Clients/DAS/DAS/PRIVLIB/AMEX.UPDATES.pbc<br />
## !/usr/bin/nano -EFHLOSWcdiklmptwxT3<br />
-o /home/marcus/Desktop/Stuff/Work/Clients/DAS/DAS/BLIB /home/marcus/Desktop/Stuff/Work/Clients/DAS/DAS/BLIB/BTREE.BROWSE.pbc<br />
<br />
## /usr/bin/nano -EFHLOSWcdiklmptwxT3 -Y pick<br />
-o /home/marcus/qm /home/marcus/qm/works/works/EMV~LIB~V_MAKE_PRIME<br />
<br />
syntax "pick" "\.pbc$"<br />
<br />
<br />
## Default color for everything<br />
# If NOT using local, site-specific, standard var/prog/subroutine-name<br />
highlighting.<br />
<br />
icolor brightgreen ".*"<br />
<br />
<br />
# If using local, site-specific, standard var/prog/subroutine-name<br />
highlighting.<br />
# Color everyithing red by default so any outstanding, unknown terms<br />
stand out.<br />
<br />
#icolor red ".*"<br />
<br />
<br />
## Literal numerals<br />
icolor yellow "(\(|=|#|,|<|\[|-|\+|\*|/|\s)[0-9.]*"<br />
<br />
# If using local, site-specific, standard var/prog/subroutine-name<br />
highlighting, then add them here.<br />
#icolor green "(CUSTOMER(S|)|ORDER(S|)|INVOICE(S|)|PRODUCT(S|))"<br />
<br />
## keywords<br />
icolor blue "@\("<br />
icolor blue "@(AUTHORIZATION|CRTHIGH|CRTWIDE|DAY|FALSE|ID|LOGNAME|MONTH|<br />
PARASENTENCE|RECORD|SELECTED|SENTENCE|TRUE)[,;:\)'\"\s$]*"<br />
icolor blue "@(A|F|I|R|S|SV|T|V)M"<br />
icolor blue "\s(AND|BREAK|BY|CAPTURING|EQ|FROM|GE|GT|IN|LE|LT|MATCHES|<br />
NE|ON|OR|RETURNING|SETTING|STEP|TO|WITH)\s"<br />
icolor blue "(\s)(CASE|DATA|DO|ELSE|LOCKED|THEN)($|\s|;)"<br />
icolor blue "(^|;|\s)(|\$|#)(COPYRIGHT|DEFINE|DEFFUN|EJECT|IFDEF|IFNDEF|<br />
MAP|OPTIONS|PAGE|UNDEFINE)\s"<br />
icolor blue "(^|;|\s)(BEGIN|CASE|CLEARFILE|(CLOSE|OPEN)(SEQ|)|COM(MON|)|<br />
CONVERT|DEL(ETE|)|DIM(ENSION|)|EQU(ATE|)|FOR|IF|INPUT|LOCATE|SELECT(E|N|<br />
V|)|SLEEP)\s"<br />
icolor blue "(^|;|\s)(MAT(READ|WRITE)(U|)|NEXT|PRINT|PROMPT|READNEXT|<br />
RELEASE|(PROC|TCL)(READ|WRITE)|(READ|WRITE)((|V|VU|U)|SEQ|LIST))\s"<br />
icolor blue "(^|;|\s)(CRT|REPEAT)($|\s|;)"<br />
icolor blue "(^|\s)LOOP($|\s|;)"<br />
icolor blue "(^|\s)(WHILE|UNTIL)(\s)"<br />
icolor blue "^\s*(END|NULL)($|\s|;)"<br />
<br />
## Branches<br />
# If NOT using local keyword highlighting, there's no need to reverse<br />
the branches and labels.<br />
icolor red "(^|;|\s)(GO(TO|SUB|)|CALL)\s\s*[A-Z_.0-9]*"<br />
icolor red "(^|;|\s)(EXECUTE|CHAIN|PERFORM)\s"<br />
icolor red "(^|;|\s)(EXIT|CONTINUE|STOP)\s*($|;)"<br />
icolor red "(^|;|\s)(|\$)(INCLUDE|INSERT|CHAIN)\s"<br />
icolor red "(^|;|\s)RETURN($|\s|;|\s\s*(TO|FROM)\s\s*[A-Z_.0-9]*)"<br />
<br />
# If using local keyword highlighting, reverse the branches and labels.<br />
#icolor white,black "(^|;|\s)(GO(TO|SUB|)|CALL)\s\s*[A-Z_.0-9]*"<br />
#icolor white,black "(^|;|\s)(EXECUTE|CHAIN|PERFORM)\s"<br />
#icolor white,black "(^|;|\s)(EXIT|CONTINUE|STOP)\s*($|;)"<br />
#icolor white,black "(^|;|\s)(|\$)(INCLUDE|INSERT|CHAIN)\s"<br />
#icolor white,black "(^|;|\s)RETURN($|\s|;|\s\s*(TO|FROM)\s<br />
\s*[A-Z_.0-9]*)"<br />
<br />
## Functions<br />
icolor blue "(^|;|\s)(CONVERT|LOCATE)\("<br />
icolor blue "(\(|=|/|\*|\+|-|,|:|\s|'|\")(ABS|ALPHA|ACCESS|ASC|ASCII|<br />
ASSIGNED|CHANGE|CHAR|(|D)COUNT|DELETE|FIELD|(I|O)CONV|INDEX|INSERT|INT|<br />
LEN|LOWER|MOD|NOT|NUM|RAISE|RIGHT|SEQ|SPACE|SQRT|STATUS|STR|SYSTEM|SWAP|<br />
TRIM|UPCASE)\("<br />
icolor blue "(\(|=|/|\*|\+|-|,|:|\s|'|\")(DATE|TIME)\(\)"<br />
<br />
## Fix what literal numerals broke, and color operators and such.<br />
icolor blue ",|;|:|<|>|=|#|\(|\)|\[|\]|/|\*|\+|-|!|&"<br />
<br />
## strings<br />
icolor yellow "\"[^\"]*\""<br />
icolor yellow "'[^']*'"<br />
icolor yellow "\\[^\\]*\\"<br />
<br />
## comments<br />
icolor brightblack "(^|^[A-Z_.0-9]*|^[A-Z_.0-9]*:|;)\s*(!|\*).*$"<br />
<br />
## Labels<br />
# If using local keyword highlighting, there's no need to reverse the<br />
branches and labels.<br />
icolor red "^\s*(PROG(RAM|)|SUB(ROUTINE|)|FUN(CTION|))\s\s*[A-Z_.0-9]*"<br />
icolor red "^[A-Z_.0-9]*:"<br />
icolor red "^[0-9]*($|\s|;|:)"<br />
<br />
# If using local keyword highlighting, reverse the branches and labels.<br />
#icolor white,black "^\s*(PROG(RAM|)|SUB(ROUTINE|)|FUN(CTION|))\s<br />
\s*[A-Z_.0-9]*"<br />
#icolor white,black "^[A-Z_.0-9]*:"<br />
#icolor white,black "^[0-9]*($|\s|;|:)"<br />
<br />
## Trailing spaces<br />
icolor black "[ ]*"<br />
icolor ,red "\s*$"<br />
</nowiki></div>Genebhttps://scarlet.deltasoft.com/index.php?title=Nano_editor_profile&diff=1178Nano editor profile2013-06-25T14:53:46Z<p>Geneb: Created page with "======================================================== And here's how I call nano EXECUTE '!nano -FHLOSWcdiklmptwxT' : TAB_WDTH : ' -Y pick ' : THE_PATH : '/' : THE_FILE ..."</p>
<hr />
<div>========================================================<br />
<br />
And here's how I call nano<br />
<br />
EXECUTE '!nano -FHLOSWcdiklmptwxT' : TAB_WDTH : ' -Y pick ' : THE_PATH :<br />
'/' : THE_FILE<br />
<br />
========================================================<br />
<br />
<br />
<br />
/etc/nanorc<br />
<nowiki><br />
## Sample initialization file for GNU nano.<br />
##<br />
## Please note that you must have configured nano with --enable-nanorc<br />
## for this file to be read! Also note that this file should not be in<br />
## DOS or Mac format, and that characters specially interpreted by the<br />
## shell should not be escaped here.<br />
##<br />
## To make sure a value is disabled, use "unset <option>".<br />
##<br />
## For the options that take parameters, the default value is given.<br />
## Other options are unset by default.<br />
##<br />
## Quotes inside string parameters don't have to be escaped with<br />
## backslashes. The last double quote in the string will be treated as<br />
## its end. For example, for the "brackets" option, ""')>]}" will match<br />
## ", ', ), >, ], and }.<br />
<br />
## Marcus: I've tried to modify the key-mapping to be as 'normal' as<br />
## possible, but compromises were required. For example, Esc will<br />
## exit search and replace, but F4 exits nano, not Ctl+F4. My other<br />
## choices may not suite you, but they are easily altered below.<br />
<br />
## Use auto-indentation.<br />
set autoindent<br />
<br />
## Backup files to filename~.<br />
# set backup<br />
<br />
## The directory to put unique backup files in.<br />
# set backupdir ""<br />
<br />
## Do backwards searches by default.<br />
# set backwards<br />
<br />
## Use bold text instead of reverse video text.<br />
# set boldtext<br />
<br />
## The characters treated as closing brackets when justifying<br />
## paragraphs. They cannot contain blank characters. Only closing<br />
## punctuation, optionally followed by closing brackets, can end<br />
## sentences.<br />
##<br />
# set brackets ""')>]}"<br />
<br />
## Do case sensitive searches by default.<br />
# set casesensitive<br />
<br />
## Constantly display the cursor position in the statusbar. Note that<br />
## this overrides "quickblank".<br />
set const<br />
<br />
## Use cut to end of line by default.<br />
set cut<br />
<br />
## Set the line length for wrapping text and justifying paragraphs.<br />
## If fill is 0 or less, the line length will be the screen width less<br />
## this number.<br />
##<br />
# set fill -8<br />
<br />
## Enable ~/.nano_history for saving and reading search/replace strings.<br />
set historylog<br />
<br />
## The opening and closing brackets that can be found by bracket<br />
## searches. They cannot contain blank characters. The former set must<br />
## come before the latter set, and both must be in the same order.<br />
##<br />
# set matchbrackets "(<[{)>]}"<br />
<br />
## Use the blank line below the titlebar as extra editing space.<br />
set morespace<br />
<br />
## Enable mouse support, if available for your system. When enabled,<br />
## mouse clicks can be used to place the cursor, set the mark (with a<br />
## double click), and execute shortcuts. The mouse will work in the X<br />
## Window System, and on the console when gpm is running.<br />
##<br />
set mouse<br />
<br />
## Allow multiple file buffers (inserting a file will put it into a<br />
## separate buffer). You must have configured with --enable-multibuffer<br />
## for this to work.<br />
##<br />
set multibuffer<br />
<br />
## Don't convert files from DOS/Mac format.<br />
set noconvert<br />
<br />
## Don't follow symlinks when writing files.<br />
set nofollow<br />
<br />
## Don't display the helpful shortcut lists at the bottom of the screen.<br />
set nohelp<br />
<br />
## Don't add newlines to the ends of files.<br />
set nonewlines<br />
<br />
## Don't wrap text at all.<br />
set nowrap<br />
<br />
## Set operating directory. nano will not read or write files outside<br />
## this directory and its subdirectories. Also, the current directory<br />
## is changed to here, so any files are inserted from this dir. A blank<br />
## string means the operating directory feature is turned off.<br />
##<br />
# set operatingdir ""<br />
<br />
## Preserve the XON and XOFF keys (^Q and ^S).<br />
set preserve<br />
<br />
## The characters treated as closing punctuation when justifying<br />
## paragraphs. They cannot contain blank characters. Only closing<br />
## punctuation, optionally followed by closing brackets, can end<br />
## sentences.<br />
##<br />
# set punct "!.?"<br />
<br />
## Do quick statusbar blanking. Statusbar messages will disappear after<br />
## 1 keystroke instead of 26. Note that "const" overrides this.<br />
##<br />
# set quickblank<br />
<br />
## The email-quote string, used to justify email-quoted paragraphs.<br />
## This is an extended regular expression if your system supports them,<br />
## otherwise a literal string. Default:<br />
# set quotestr "^([ ]*[#:>\|}])+"<br />
## if you have extended regular expression support, otherwise:<br />
# set quotestr "> "<br />
<br />
## Fix Backspace/Delete confusion problem.<br />
# set rebinddelete<br />
<br />
## Fix numeric keypad key confusion problem.<br />
# set rebindkeypad<br />
<br />
## Do extended regular expression searches by default.<br />
set regexp<br />
<br />
## Make the Home key smarter. When Home is pressed anywhere but at the<br />
## very beginning of non-whitespace characters on a line, the cursor<br />
## will jump to that beginning (either forwards or backwards). If the<br />
## cursor is already at that position, it will jump to the true<br />
## beginning of the line.<br />
# set smarthome<br />
<br />
## Use smooth scrolling as the default.<br />
set smooth<br />
<br />
## Use this spelling checker instead of the internal one. This option<br />
## does not properly have a default value.<br />
##<br />
# set speller "aspell -x -c"<br />
<br />
## Allow nano to be suspended.<br />
set suspend<br />
<br />
## Use this tab size instead of the default; it must be greater than 0.<br />
set tabsize 3<br />
<br />
## Convert typed tabs to spaces.<br />
set tabstospaces<br />
<br />
## Save automatically on exit, don't prompt.<br />
set tempfile<br />
<br />
## Disallow file modification. Why would you want this in an rcfile?<br />
# set view<br />
<br />
## The two single-column characters used to display the first characters<br />
## of tabs and spaces. 187 in ISO 8859-1 (0000BB in Unicode) and 183 in<br />
## ISO-8859-1 (0000B7 in Unicode) seem to be good values for these.<br />
# set whitespace " "<br />
<br />
## Detect word boundaries more accurately by treating punctuation<br />
## characters as parts of words.<br />
set wordbounds<br />
<br />
## Enable the new (EXPERIMENTAL) generic undo code, not just for line<br />
cuts<br />
set undo<br />
<br />
## Enable soft line wrapping (AKA full line display)<br />
# set softwrap<br />
<br />
<br />
## Color setup<br />
##<br />
## Format:<br />
##<br />
## syntax "short description" ["filename regex" ...]<br />
##<br />
## The "none" syntax is reserved; specifying it on the command line is<br />
## the same as not having a syntax at all. The "default" syntax is<br />
## special: it takes no filename regexes, and applies to files that<br />
## don't match any other syntax's filename regexes.<br />
##<br />
## color foreground,background "regex" ["regex"...]<br />
## or<br />
## icolor foreground,background "regex" ["regex"...]<br />
##<br />
## "color" will do case sensitive matches, while "icolor" will do case<br />
## insensitive matches.<br />
##<br />
## Valid colors: white, black, red, blue, green, yellow, magenta, cyan.<br />
## For foreground colors, you may use the prefix "bright" to get a<br />
## stronger highlight.<br />
##<br />
## To use multi-line regexes, use the start="regex" end="regex"<br />
## [start="regex" end="regex"...] format.<br />
##<br />
## If your system supports transparency, not specifying a background<br />
## color will use a transparent color. If you don't want this, be sure<br />
## to set the background color to black or white.<br />
##<br />
## If you wish, you may put your syntaxes in separate files. You can<br />
## make use of such files (which can only include "syntax", "color", and<br />
## "icolor" commands) as follows:<br />
##<br />
## include "/path/to/syntax_file.nanorc"<br />
##<br />
## Unless otherwise noted, the name of the syntax file (without the<br />
## ".nanorc" extension) should be the same as the "short description"<br />
## name inside that file. These names are kept fairly short to make<br />
## them easier to remember and faster to type using nano's -Y option.<br />
##<br />
## All regexes should be extended regular expressions.<br />
<br />
## Key bindings<br />
## Please see nanorc(5) for more details on this<br />
##<br />
## Here are some samples to get you going<br />
##<br />
# bind M-W nowrap main<br />
# bind M-A casesens search<br />
# bind ^S research main<br />
<br />
# Any keys defined in 'all' menus can be superceded in specific menus.<br />
<br />
bind ^C cancel all<br />
bind ^U casesens all<br />
bind M-X exit all<br />
bind F3 searchagain all<br />
bind F2 whereis all<br />
bind ^F whereis all<br />
<br />
# Main screen keys<br />
<br />
bind ^C copytext main<br />
bind ^X cut main<br />
bind F4 exit main<br />
bind ^Q exit main<br />
bind M-] findbracket main<br />
bind M-B firstline main<br />
bind M-H firstline main<br />
bind ^G gotoline main<br />
bind M-/ help main<br />
bind M-I indent main<br />
bind ^O insert main<br />
bind ^N insert main<br />
bind M-E lastline main<br />
bind ^A mark main<br />
bind M-. nextbuf main<br />
bind F10 nohelp main<br />
bind ^P nowrap main<br />
bind M-, prevbuf main<br />
bind ^Y redo main<br />
bind F5 refresh main<br />
bind ^H replace main<br />
bind M-= scrolldown main<br />
bind M-- scrollup main<br />
bind ^V uncut main<br />
bind ^Z undo main<br />
bind ^U unindent main<br />
bind M-U unindent main<br />
bind ^W writeout main<br />
<br />
## Set this if your backspace key sends delete most of the time (2.1.3+)<br />
# bind kdel backspace all<br />
<br />
## Nanorc files<br />
include "/usr/share/nano/nanorc.nanorc"<br />
<br />
## C/C++<br />
include "/usr/share/nano/c.nanorc"<br />
<br />
## Cascading Style Sheets<br />
include "/usr/share/nano/css.nanorc"<br />
<br />
## Debian files<br />
include "/usr/share/nano/debian.nanorc"<br />
<br />
## Gentoo files<br />
include "/usr/share/nano/gentoo.nanorc"<br />
<br />
## HTML<br />
include "/usr/share/nano/html.nanorc"<br />
<br />
## PHP<br />
include "/usr/share/nano/php.nanorc"<br />
<br />
## TCL<br />
include "/usr/share/nano/tcl.nanorc"<br />
<br />
## TeX<br />
include "/usr/share/nano/tex.nanorc"<br />
<br />
## Quoted emails (under e.g. mutt)<br />
include "/usr/share/nano/mutt.nanorc"<br />
<br />
## Patch files<br />
include "/usr/share/nano/patch.nanorc"<br />
<br />
## Manpages<br />
include "/usr/share/nano/man.nanorc"<br />
<br />
## Groff<br />
include "/usr/share/nano/groff.nanorc"<br />
<br />
## Perl<br />
include "/usr/share/nano/perl.nanorc"<br />
<br />
## Python<br />
include "/usr/share/nano/python.nanorc"<br />
<br />
## Ruby<br />
include "/usr/share/nano/ruby.nanorc"<br />
<br />
## Java<br />
include "/usr/share/nano/java.nanorc"<br />
<br />
## AWK<br />
include "/usr/share/nano/awk.nanorc"<br />
<br />
## Assembler<br />
include "/usr/share/nano/asm.nanorc"<br />
<br />
## Bourne shell scripts<br />
include "/usr/share/nano/sh.nanorc"<br />
<br />
## POV-Ray<br />
include "/usr/share/nano/pov.nanorc"<br />
<br />
## XML-type files<br />
include "/usr/share/nano/xml.nanorc"<br />
<br />
## Pick/DataBasic files<br />
include "/usr/share/nano/pick.nanorc"<br />
<br />
</nowiki><br />
<br />
<br />
/usr/share/nano/pick.nanorc<br />
<nowiki><br />
## Here is an example for Pick/DataBasic<br />
##<br />
## You'll need to append .pbc to your programs, at least temporarily,<br />
just<br />
## while being edited, because the sytax option (-Y/--syntax=) doesn't<br />
## seem to work.<br />
##<br />
## nano -EFHLOSWcdiklmptwxT3 -o /pathname /pathname/filename.pbc<br />
## nano -EFHLOSWcdiklmptwxT3<br />
-o /home/marcus/Desktop/Stuff/Work/Clients/DAS/DAS/PRIVLIB /home/marcus/Desktop/Stuff/Work/Clients/DAS/DAS/PRIVLIB/AMEX.UPDATES.pbc<br />
## !/usr/bin/nano -EFHLOSWcdiklmptwxT3<br />
-o /home/marcus/Desktop/Stuff/Work/Clients/DAS/DAS/BLIB /home/marcus/Desktop/Stuff/Work/Clients/DAS/DAS/BLIB/BTREE.BROWSE.pbc<br />
<br />
## /usr/bin/nano -EFHLOSWcdiklmptwxT3 -Y pick<br />
-o /home/marcus/qm /home/marcus/qm/works/works/EMV~LIB~V_MAKE_PRIME<br />
<br />
syntax "pick" "\.pbc$"<br />
<br />
<br />
## Default color for everything<br />
# If NOT using local, site-specific, standard var/prog/subroutine-name<br />
highlighting.<br />
<br />
icolor brightgreen ".*"<br />
<br />
<br />
# If using local, site-specific, standard var/prog/subroutine-name<br />
highlighting.<br />
# Color everyithing red by default so any outstanding, unknown terms<br />
stand out.<br />
<br />
#icolor red ".*"<br />
<br />
<br />
## Literal numerals<br />
icolor yellow "(\(|=|#|,|<|\[|-|\+|\*|/|\s)[0-9.]*"<br />
<br />
# If using local, site-specific, standard var/prog/subroutine-name<br />
highlighting, then add them here.<br />
#icolor green "(CUSTOMER(S|)|ORDER(S|)|INVOICE(S|)|PRODUCT(S|))"<br />
<br />
## keywords<br />
icolor blue "@\("<br />
icolor blue "@(AUTHORIZATION|CRTHIGH|CRTWIDE|DAY|FALSE|ID|LOGNAME|MONTH|<br />
PARASENTENCE|RECORD|SELECTED|SENTENCE|TRUE)[,;:\)'\"\s$]*"<br />
icolor blue "@(A|F|I|R|S|SV|T|V)M"<br />
icolor blue "\s(AND|BREAK|BY|CAPTURING|EQ|FROM|GE|GT|IN|LE|LT|MATCHES|<br />
NE|ON|OR|RETURNING|SETTING|STEP|TO|WITH)\s"<br />
icolor blue "(\s)(CASE|DATA|DO|ELSE|LOCKED|THEN)($|\s|;)"<br />
icolor blue "(^|;|\s)(|\$|#)(COPYRIGHT|DEFINE|DEFFUN|EJECT|IFDEF|IFNDEF|<br />
MAP|OPTIONS|PAGE|UNDEFINE)\s"<br />
icolor blue "(^|;|\s)(BEGIN|CASE|CLEARFILE|(CLOSE|OPEN)(SEQ|)|COM(MON|)|<br />
CONVERT|DEL(ETE|)|DIM(ENSION|)|EQU(ATE|)|FOR|IF|INPUT|LOCATE|SELECT(E|N|<br />
V|)|SLEEP)\s"<br />
icolor blue "(^|;|\s)(MAT(READ|WRITE)(U|)|NEXT|PRINT|PROMPT|READNEXT|<br />
RELEASE|(PROC|TCL)(READ|WRITE)|(READ|WRITE)((|V|VU|U)|SEQ|LIST))\s"<br />
icolor blue "(^|;|\s)(CRT|REPEAT)($|\s|;)"<br />
icolor blue "(^|\s)LOOP($|\s|;)"<br />
icolor blue "(^|\s)(WHILE|UNTIL)(\s)"<br />
icolor blue "^\s*(END|NULL)($|\s|;)"<br />
<br />
## Branches<br />
# If NOT using local keyword highlighting, there's no need to reverse<br />
the branches and labels.<br />
icolor red "(^|;|\s)(GO(TO|SUB|)|CALL)\s\s*[A-Z_.0-9]*"<br />
icolor red "(^|;|\s)(EXECUTE|CHAIN|PERFORM)\s"<br />
icolor red "(^|;|\s)(EXIT|CONTINUE|STOP)\s*($|;)"<br />
icolor red "(^|;|\s)(|\$)(INCLUDE|INSERT|CHAIN)\s"<br />
icolor red "(^|;|\s)RETURN($|\s|;|\s\s*(TO|FROM)\s\s*[A-Z_.0-9]*)"<br />
<br />
# If using local keyword highlighting, reverse the branches and labels.<br />
#icolor white,black "(^|;|\s)(GO(TO|SUB|)|CALL)\s\s*[A-Z_.0-9]*"<br />
#icolor white,black "(^|;|\s)(EXECUTE|CHAIN|PERFORM)\s"<br />
#icolor white,black "(^|;|\s)(EXIT|CONTINUE|STOP)\s*($|;)"<br />
#icolor white,black "(^|;|\s)(|\$)(INCLUDE|INSERT|CHAIN)\s"<br />
#icolor white,black "(^|;|\s)RETURN($|\s|;|\s\s*(TO|FROM)\s<br />
\s*[A-Z_.0-9]*)"<br />
<br />
## Functions<br />
icolor blue "(^|;|\s)(CONVERT|LOCATE)\("<br />
icolor blue "(\(|=|/|\*|\+|-|,|:|\s|'|\")(ABS|ALPHA|ACCESS|ASC|ASCII|<br />
ASSIGNED|CHANGE|CHAR|(|D)COUNT|DELETE|FIELD|(I|O)CONV|INDEX|INSERT|INT|<br />
LEN|LOWER|MOD|NOT|NUM|RAISE|RIGHT|SEQ|SPACE|SQRT|STATUS|STR|SYSTEM|SWAP|<br />
TRIM|UPCASE)\("<br />
icolor blue "(\(|=|/|\*|\+|-|,|:|\s|'|\")(DATE|TIME)\(\)"<br />
<br />
## Fix what literal numerals broke, and color operators and such.<br />
icolor blue ",|;|:|<|>|=|#|\(|\)|\[|\]|/|\*|\+|-|!|&"<br />
<br />
## strings<br />
icolor yellow "\"[^\"]*\""<br />
icolor yellow "'[^']*'"<br />
icolor yellow "\\[^\\]*\\"<br />
<br />
## comments<br />
icolor brightblack "(^|^[A-Z_.0-9]*|^[A-Z_.0-9]*:|;)\s*(!|\*).*$"<br />
<br />
## Labels<br />
# If using local keyword highlighting, there's no need to reverse the<br />
branches and labels.<br />
icolor red "^\s*(PROG(RAM|)|SUB(ROUTINE|)|FUN(CTION|))\s\s*[A-Z_.0-9]*"<br />
icolor red "^[A-Z_.0-9]*:"<br />
icolor red "^[0-9]*($|\s|;|:)"<br />
<br />
# If using local keyword highlighting, reverse the branches and labels.<br />
#icolor white,black "^\s*(PROG(RAM|)|SUB(ROUTINE|)|FUN(CTION|))\s<br />
\s*[A-Z_.0-9]*"<br />
#icolor white,black "^[A-Z_.0-9]*:"<br />
#icolor white,black "^[0-9]*($|\s|;|:)"<br />
<br />
## Trailing spaces<br />
icolor black "[ ]*"<br />
icolor ,red "\s*$"<br />
</nowiki></div>Genebhttps://scarlet.deltasoft.com/index.php?title=Guides_%26_HOWTOs&diff=1177Guides & HOWTOs2013-06-25T14:48:28Z<p>Geneb: /* Using OpenQM */</p>
<hr />
<div>==Installation==<br />
<br />
=== Fedora ===<br />
*[http://www.geneb.org/qm/fedora_notes.txt http://www.geneb.org/qm/fedora_notes.txt] - Guide to installing and configuring QM from source on Fedora (useful scripts and configs)<br />
<br />
=== Ubuntu ===<br />
<br />
*[http://www.rushflat.co.nz/files/UbuntuInstall.pdf http://www.rushflat.co.nz/files/UbuntuInstall.pdf] Installing the GPL Version of OpenQM on Ubuntu (aimed at Linux newbies)<br />
<br />
==Development==<br />
<br />
*[[Raw I/O]] - By default QM will modify both input and output character I/O. How to turn this off.<br />
*[[Recompiling QM]] - How to recompile QM's system C code and BASIC code<br />
*[[HOWTO|SVN Howto]] - How to use Subversion to check out code and commit it back (Windows and Linux)<br />
*[[Creating your own command]] - Guide to how to add features and commands to QM<br />
<br />
==Using OpenQM==<br />
<br />
*[[Using your own editor]] - How to use your favorite editor from within OpenQM<br />
*[[Nano editor profile]] - A syntax highlight profile for the Nano editor by Marcus Rhodes<br />
<br />
==Common Problems==<br />
*[[Do I have a permission problem?]]<br />
*[[I can't compile anything in GPL.BP!]]<br />
*[[I'm unable to restore my pseudo-tape saves from D3!]]<br />
*[[Problem compiling programs from the BP file in the QMSYS account]]</div>Genebhttps://scarlet.deltasoft.com/index.php?title=Downloads&diff=1176Downloads2013-06-25T03:10:34Z<p>Geneb: </p>
<hr />
<div>Files, sources, packages and apps for OpenQM<br />
<br />
==Packages==<br />
*RPM package - [http://scarlet.deltasoft.com/downloads/openqm-2.6-6.i386.rpm openqm-2.6-6.i386.rpm]<br />
*Debian Package - [http://scarlet.deltasoft.com/downloads/openqm-gpl_2.6.6_all.deb openqm-gpl_2.6.6_all.deb] (Note: this needs testing for upgrades)<br />
*Debian Package - [http://scarlet.deltasoft.com/downloads/openqm_2.4.17_all.deb openqm_2.4.17_all.deb]<br />
<br />
==Source==<br />
Original Ladybridge Source Tarballs<br />
<br />
*[http://scarlet.deltasoft.com/downloads/qmsrc_2-6-6.tgz qmsrc_2-6-6.tgz]<br />
*[http://scarlet.deltasoft.com/downloads/qmsrc_2-4-4.tgz qmsrc_2-4-4.tgz]<br />
<br />
<br />
For the most recent source tree, please see https://github.com/geneb/ScarletDME<br />
<br />
==Applications==<br />
*Coyote PICK webserver - [http://scarlet.deltasoft.com/downloads/qmweb-gpl-2006-03-11.tar.gz qmweb-gpl-2006-03-11.tar.gz] - N.B. The source code for the daemon is missing.</div>Genebhttps://scarlet.deltasoft.com/index.php?title=Downloads&diff=1175Downloads2013-06-25T03:02:29Z<p>Geneb: </p>
<hr />
<div>Files, sources, packages and apps for OpenQM<br />
<br />
==Packages==<br />
*RPM package - [http://scarlet.deltasoft.com/downloads/openqm-2.6-6.i386.rpm openqm-2.6-6.i386.rpm]<br />
*Debian Package - [http://scarlet.deltasoft.com/downloads/openqm-gpl_2.6.6_all.deb openqm-gpl_2.6.6_all.deb] (Note: this needs testing for upgrades)<br />
*Debian Package - [http://scarlet.deltasoft.com/downloads/openqm_2.4.17_all.deb openqm_2.4.17_all.deb]<br />
<br />
==Source==<br />
Original Ladybridge Source Tarballs<br />
<br />
*[http://scarlet.deltasoft.com/downloads/qmsrc_2-6-6.tgz qmsrc_2-6-6.tgz]<br />
*[http://scarlet.deltasoft.com/downloads/qmsrc_2-4-4.tgz qmsrc_2-4-4.tgz]<br />
<br />
<br />
For latest build, issue this command in Linux for OpenQMVDB build ('''''Recommended''''')<br />
svn checkout https://scarletdme.org/svn/qmvdb/openqm/trunk/<br />
''(Requires subversion client)''<br />
<br />
==Applications==<br />
*Coyote PICK webserver - [http://scarlet.deltasoft.com/downloads/qmweb-gpl-2006-03-11.tar.gz qmweb-gpl-2006-03-11.tar.gz] - N.B. The source code for the daemon is missing.</div>Genebhttps://scarlet.deltasoft.com/index.php?title=User:MikeRyder&diff=1173User:MikeRyder2013-06-25T00:35:16Z<p>Geneb: Creating user page for new user.</p>
<hr />
<div>Antique PICK developer<br />
I owned a company which sold R83 / D3 / AP solutions to builder's merchants, electrical wholesalers and timber merchants.<br />
I sold that and worked for Temenos developing and implementing banking systems using jBase and Universe<br />
Currently working on RESTful web applications using this DB as the service provider when I am not rushing off to fix some banking system somewhere.<br />
I want to find a medium to publish my results.</div>Genebhttps://scarlet.deltasoft.com/index.php?title=User_talk:MikeRyder&diff=1174User talk:MikeRyder2013-06-25T00:35:16Z<p>Geneb: Welcome!</p>
<hr />
<div>'''Welcome to ''ScarletDME''!'''<br />
We hope you will contribute much and well.<br />
You will probably want to read the [[Help:Contents|help pages]].<br />
Again, welcome and have fun! [[User:Geneb|Geneb]] ([[User talk:Geneb|talk]]) 17:35, 24 June 2013 (PDT)</div>Genebhttps://scarlet.deltasoft.com/index.php?title=User_talk:Bob_Little&diff=1172User talk:Bob Little2013-06-25T00:34:39Z<p>Geneb: Welcome!</p>
<hr />
<div>'''Welcome to ''ScarletDME''!'''<br />
We hope you will contribute much and well.<br />
You will probably want to read the [[Help:Contents|help pages]].<br />
Again, welcome and have fun! [[User:Geneb|Geneb]] ([[User talk:Geneb|talk]]) 17:34, 24 June 2013 (PDT)</div>Genebhttps://scarlet.deltasoft.com/index.php?title=User:Bob_Little&diff=1171User:Bob Little2013-06-25T00:34:38Z<p>Geneb: Creating user page for new user.</p>
<hr />
<div>I've been a multivalue database developer since 1990.<br />
I have experience with several flavors of Pick: Ultimate, Ult Plus, AP, D3, UniVerse, UniData, OpenQM, jBase.<br />
Also have experience in Java, C, C++, HTML, Javascript, Perl, PHP, Java Server Faces and MySQL. I have developed various methods for linking MV databases with other systems and databases, developed complete systems for processing data from major internet data aggregators.<br />
<br />
I have worked in various roles from help desk to developer, team lead and applications architect.<br />
I've also had my own website development business creating websites for local entertainment acts. I created a fully database driven multimedia website constructed with PHP, HTML, Javascript and Adobe Flash.</div>Genebhttps://scarlet.deltasoft.com/index.php?title=Documentation&diff=1170Documentation2013-06-25T00:30:54Z<p>Geneb: /* Original Documentation */</p>
<hr />
<div>Any features, fixes or changes from the Last Ladybridge GPL release<br />
==Original Documentation==<br />
The link below is the full documentation for the OpenQM 2.6-6 build that the GPL release is based on.<br />
<br />
[http://scarlet.deltasoft.com/downloads/qmdocs_2-6-6.zip OpenQM 2.6-6 Documentation]<br />
<br />
==Differences with OpenQM GPL== <br />
Documentation on any changes since OpenQM 2.6-6 and LadyBridges documentation.<br />
<br />
*QMBASIC Enhancements - QMBASIC features that are custom or were not part of the original GPL release.<br />
<br />
==Developers documentation==<br />
Documentation of the inner workings of Scarlet. Covers both existing OpenQM design and new features.<br />
<br />
[[Error messages]]<br />
<br />
[[B-Trees]] (no changes, just dev docs)<br />
<br />
[[qmlnxd]] The Server/Daemon that all Client processes communicate/co-ordinate with.</div>Genebhttps://scarlet.deltasoft.com/index.php?title=Main_Page&diff=1169Main Page2013-06-25T00:18:14Z<p>Geneb: </p>
<hr />
<div>Welcome to ScarletDME.org. [[ScarletDME]] is a OpenSource [[multivalue|MultiValue]] database, a community fork of [[OpenQM]] originally developed by [[Ladybridge]]. This project was founded on the 28th November 2008 to independently develop future versions of [[ScarletDME]] and contribute to [[OpenQM]]. While there are no longer regular official releases from [[Ladybridge]] we aim to support and develop for Scarlet to help our commercial sister, While providing a Free and open platform for Multi value development. <br />
<br />
Submissions to this project must be under the GPL version 2, with the option to use a later version if the licensee wishes. Or they can be licensed under the LGPL if you wish to encourage and allow incorporation into proprietary products. Contributors to [[ScarletDME]] are welcome to submit changes back to Ladybridge as well, for inclusion in Commercial QM. See [[Commercial submissions]] for details. We encourage submission to Ladybridge, the founder of this MultiValue database. We do recognize their processes are not as easy as traditional GPL projects. So we simply offer an easier forum for development with less stringent controls on contribution and participation.<br />
<br />
<br />
==For Users==<br />
*[[Downloads]]: Source tarball and package builds for key platforms<br />
*[[Guides & HOWTOs]] - Index of useful guides and HOWTO's on this Wiki<br />
*[[QMBASIC Enhancements]] - QMBASIC features that are custom or were not part of the original GPL release.<br />
*[http://www.scarletdme.org/bugzilla Bugzilla] reporting and tracking bugs:<br />
*[[Documentation]] - Documented differences from the Commercial Documentation (Check here first, then below)<br />
*[http://www.openqm.org/docs/ Documentation] (Commercial Version)<br />
*General support email group: [http://groups.google.co.uk/group/scarletdme Register] then mailto:scarletdme@googlegroups.com <br />
*IRC Chat: irc://irc.efnet.org/openqm or java client http://www.scarletdme.org/chat/<br />
<br />
====Supporting Projects====<br />
Various external projects that provide tools for or API's into OpenQM<br />
* [http://billabong-services.co.uk/anji Billabong Services' Anji] - an open web based file browser and reporter. Eventually to become a RAD system. Pre-alpha grade of code. <br />
*[[PHP_Native_API|PHP Native API module]]<br />
*[[C++ Wrapper]]<br />
*Steve Bush's [[Cygwin Port]] - Is it worth considering a MinGW port? - Would have to replace some posix bits which MinGW doesnt have.<br />
* [http://www.tridentinfosys.com/ Kevin Powick's Trident Delphi wrapper]<br />
<br />
==For Developers==<br />
For those that want to contribute to OpenQM GPL project.<br />
*Subversion repository: https://scarletdme.org/svn/qmvdb/ - [[HOWTO]] <br />
*Development email group: [http://www.scarletdme.org/mailman/listinfo/openqm-dev Register] then mailto:openqm-dev@dev.scarletdme.org<br />
*[[Development snapshots]] - How to obtain, build, and upgrade using the snapshots.<br />
*[[QM Client API]] - Documentation and Available API's for the QM remote protocol.<br />
*[[Wish list]] - Things that you want & that we need contributors/devs for (lots of small things)<br />
*[[Dynamic linking]] - Calling objects written in other languages.<br />
*[[Installers]] - Installing scripts/programs or package systems<br />
*[[Commercial submissions]] - Sending stuff to Ladybridge<br />
<br />
== How do I use this site? ==<br />
<br />
If you have a question on USAGE of the community version of Scarlet, then send it to the [http://groups.google.co.uk/group/scarletdme general email support group].<br />
<br />
If you want to discuss DEVELOPMENT of the community version of Scarlet (eg. php5 module) then send it to the [http://www.scarletdme.org/mailman/listinfo/openqm-dev development email group].<br />
<br />
While the email lists are best for getting attention, permanent changes in this wiki will have a longer term impact so feel free to add or change ANYTHING in this wiki.<br />
<br />
=== External Resources ===<br />
* [[Installations]] - Places where GPL OpenQM is in use (I'm attempting to create a new section for this) - http://capersqm.dnsalias.net/<br />
* [http://www.rushflat.co.nz/downloads.shtml Brian Speir's Installation instructions and other downloads ]<br />
* [http://openqm.blackflute.com/ Tom Delombard's old QM page.] Includes details of the tape utilities and the PHP4 module (C Wrapper) <br />
* [http://sourceforge.net/projects/jd3 JD3] is a socket based server for D3 ported to QM <br />
* [http://www.billabong-services.co.uk/jd3/jd3php.html David Patterson's guide to using PHP with JD3] David's original page has disappeared (unable to contact), so here's the google cache<br />
* [http://www.billabong-services.co.uk/jd3/jd3java.html David Patterson's guide to using Java with JD3] google cache again<br />
<br />
<br />
--[[Administration]]</div>Genebhttps://scarlet.deltasoft.com/index.php?title=Problem_compiling_programs_from_the_BP_file_in_the_QMSYS_account&diff=1168Problem compiling programs from the BP file in the QMSYS account2012-06-22T17:29:23Z<p>Geneb: </p>
<hr />
<div>If you try compiling a program in BP from the QMSYS account, you may get this error:<br />
<br />
:BASIC BP PCL<br />
DATA part of the file already exists<br />
<br />
Unable to open newly created output file<br />
<br />
:<br />
<br />
Check to see if the BP.OUT directory exists under /usr/qmsys (or where ever you've installed ScarletDME/OpenQM).<br />
<br />
If it doesn't exist, shutdown ScarletDME/OpenqM and create it:<br />
<br />
1. sudo mkdir /usr/qmsys/BP.OUT<br />
2. sudo chmod 775 /usr/qmsys/BP.OUT<br />
3. sudo chown qmsys.qmusers /usr/qmsys/BP.OUT<br />
<br />
Restart ScarletDME/OpenQM and you should be good to go.</div>Genebhttps://scarlet.deltasoft.com/index.php?title=Problem_compiling_programs_from_the_BP_file_in_the_QMSYS_account&diff=1167Problem compiling programs from the BP file in the QMSYS account2012-06-22T17:28:48Z<p>Geneb: </p>
<hr />
<div>If you try compiling a program in BP from the QMSYS account, you may get this error:<br />
<br />
:BASIC BP PCL<br />
DATA part of the file already exists<br />
<br />
Unable to open newly created output file<br />
<br />
:<br />
<br />
Check to see if the BP.OUT directory exists under /usr/qmsys (or where ever you've installed ScarletDME/OpenQM).<br />
<br />
if it doesn't exist, shutdown ScarletDME/OpenqM and create it:<br />
1. sudo mkdir /usr/qmsys/BP.OUT<br />
2. sudo chmod 775 /usr/qmsys/BP.OUT<br />
3. sudo chown qmsys.qmusers /usr/qmsys/BP.OUT<br />
<br />
Restart ScarletDME/OpenQM and you should be good to go.</div>Genebhttps://scarlet.deltasoft.com/index.php?title=Problem_compiling_programs_from_the_BP_file_in_the_QMSYS_account&diff=1166Problem compiling programs from the BP file in the QMSYS account2012-06-22T17:21:31Z<p>Geneb: New page: If you try compiling a program in BP from the QMSYS account, you may get this error: :BASIC BP PCL DATA part of the file already exists Unable to open newly created output file : Check...</p>
<hr />
<div>If you try compiling a program in BP from the QMSYS account, you may get this error:<br />
<br />
:BASIC BP PCL<br />
DATA part of the file already exists<br />
<br />
Unable to open newly created output file<br />
<br />
:<br />
<br />
Check to see if the BP.OUT directory exists under /usr/qmsys (or where ever you've installed ScarletDME/OpenQM).<br />
<br />
if it doesn't, create it. chown it to the qmsys user and group - chown qmsys.qmusers BP.OUT and then change the permissions<br />
to 775 (read/write/execute for user & group, read/write for world).</div>Genebhttps://scarlet.deltasoft.com/index.php?title=Guides_%26_HOWTOs&diff=1165Guides & HOWTOs2012-06-22T17:11:44Z<p>Geneb: /* Common Problems */</p>
<hr />
<div>==Installation==<br />
<br />
=== Fedora ===<br />
*[http://www.geneb.org/qm/fedora_notes.txt http://www.geneb.org/qm/fedora_notes.txt] - Guide to installing and configuring QM from source on Fedora (useful scripts and configs)<br />
<br />
=== Ubuntu ===<br />
<br />
*[http://www.rushflat.co.nz/files/UbuntuInstall.pdf http://www.rushflat.co.nz/files/UbuntuInstall.pdf] Installing the GPL Version of OpenQM on Ubuntu (aimed at Linux newbies)<br />
<br />
==Development==<br />
<br />
*[[Raw I/O]] - By default QM will modify both input and output character I/O. How to turn this off.<br />
*[[Recompiling QM]] - How to recompile QM's system C code and BASIC code<br />
*[[HOWTO|SVN Howto]] - How to use Subversion to check out code and commit it back (Windows and Linux)<br />
*[[Creating your own command]] - Guide to how to add features and commands to QM<br />
<br />
==Using OpenQM==<br />
<br />
*[[Using your own editor]] - How to use your favorite editor from within OpenQM<br />
<br />
==Common Problems==<br />
*[[Do I have a permission problem?]]<br />
*[[I can't compile anything in GPL.BP!]]<br />
*[[I'm unable to restore my pseudo-tape saves from D3!]]<br />
*[[Problem compiling programs from the BP file in the QMSYS account]]</div>Genebhttps://scarlet.deltasoft.com/index.php?title=AK-index_segfault&diff=1164AK-index segfault2012-06-22T14:06:46Z<p>Geneb: /* Scope of problem */</p>
<hr />
<div>==Scope of problem==<br />
I've tried to reproduce this bug, and it appears to be fixed in the 2.6-6 release of the GPL OpenQM GPL. Hence it should also be fixed in the CVS, but nobody has checked yet.<br />
<br />
''' As of 22Jun12, this bug has been verified as fixed in the current source tree (Revision 98). '''<br />
<br />
==Steps to reproduce==<br />
<br />
Create a file called TESTFILE with a dictionary entry F1 of:<br />
1: D<br />
2: 1<br />
3: <br />
4: F1<br />
5: 5R<br />
6: S<br />
<br />
Now run this program to get some data in:<br />
<nowiki><br />
open "TESTFILE" to file else stop<br />
<br />
for i = 1 to 2000<br />
data = i<br />
write data to file, "rec":i<br />
next i<br />
<br />
data = ''<br />
for i = 2001 to 2100<br />
write data to file, "rec":i<br />
next i<br />
<br />
end<br />
</nowiki><br />
<br />
Now<br />
SELECT TESTFILE WITH F1 > 1500<br />
works fine;<br />
CREATE-INDEX TESTFILE F1<br />
BUILD-INDEX TESTFILE F1<br />
SELECT TESTFILE WITH F1 > 1500<br />
Segfault.</div>Genebhttps://scarlet.deltasoft.com/index.php?title=Main_Page&diff=1163Main Page2012-06-21T13:14:42Z<p>Geneb: </p>
<hr />
<div>Welcome to ScarletDME.org. [[ScarletDME]] is a OpenSource [[multivalue|MultiValue]] database, a community fork of [[OpenQM]] originally developed by [[Ladybridge]]. This project was founded on the 28th November 2008 to independently develop future versions of [[ScarletDME]] and contribute to [[OpenQM]]. While there are no longer regular official releases from [[Ladybridge]] we aim to support and develop for Scarlet to help our commercial sister, While providing a Free and open platform for Multi value development. <br />
<br />
Submissions to this project must be under the GPL version 2, with the option to use a later version if the licensee wishes. Or they can be licensed under the LGPL if you wish to encourage and allow incorporation into proprietary products. Contributors to [[ScarletDME]] are welcome to submit changes back to Ladybridge as well, for inclusion in Commercial QM. See [[Commercial submissions]] for details. We encourage submission to Ladybridge, the founder of this MultiValue database. We do recognise their processes are not as easy as traditional GPL projects. So we simply offer an easier forum for development with less stringent controls on contribution and participation.<br />
<br />
The server is a kvm virtual machine located in a high-bandwidth datacentre in Amsterdam, Netherlands. It is hosted by [[User:SteveB|SteveB]] who maintains a daily backup to a secondary datacentre in Amsterdam. If you can provide a stable high bandwidth backup mirror, please contact him.<br />
<br />
'''This server is DOWN/SLOW around 04:00GMT nightly for 15mins while backing up.'''<br />
<br />
'''Note that the security certificate for the site was originally issued to gpl.openqm.com. If your browser or SVN complains about a certificate error and you see the host name as gpl.openqm.com, please add the cert or allow the exception. This will be rectified as quickly as possible.'''<br />
<br />
==For Users==<br />
*[[Downloads]]: Source tarball and package builds for key platforms<br />
*[[Guides & HOWTOs]] - Index of useful guides and HOWTO's on this Wiki<br />
*[[QMBASIC Enhancements]] - QMBASIC features that are custom or were not part of the original GPL release.<br />
*[http://www.scarletdme.org/bugzilla Bugzilla] reporting and tracking bugs:<br />
*[[Documentation]] - Documented differences from the Commercial Documentation (Check here first, then below)<br />
*[http://www.openqm.org/docs/ Documentation] (Commercial Version)<br />
*General support email group: [http://groups.google.co.uk/group/scarletdme Register] then mailto:scarletdme@googlegroups.com <br />
*IRC Chat: irc://irc.efnet.org/openqm or java client http://www.scarletdme.org/chat/<br />
<br />
====Supporting Projects====<br />
Various external projects that provide tools for or API's into OpenQM<br />
* [http://billabong-services.co.uk/anji Billabong Services' Anji] - an open web based file browser and reporter. Eventually to become a RAD system. Pre-alpha grade of code. <br />
*[[PHP_Native_API|PHP Native API module]]<br />
*[[C++ Wrapper]]<br />
*Steve Bush's [[Cygwin Port]] - Is it worth considering a MinGW port? - Would have to replace some posix bits which MinGW doesnt have.<br />
* [http://www.tridentinfosys.com/ Kevin Powick's Trident Delphi wrapper]<br />
<br />
==For Developers==<br />
For those that want to contribute to OpenQM GPL project.<br />
*Subversion repository: https://scarletdme.org/svn/qmvdb/ - [[HOWTO]] <br />
*Development email group: [http://www.scarletdme.org/mailman/listinfo/openqm-dev Register] then mailto:openqm-dev@dev.scarletdme.org<br />
*[[Development snapshots]] - How to obtain, build, and upgrade using the snapshots.<br />
*[[QM Client API]] - Documentation and Available API's for the QM remote protocol.<br />
*[[Wish list]] - Things that you want & that we need contributors/devs for (lots of small things)<br />
*[[Dynamic linking]] - Calling objects written in other languages.<br />
*[[Installers]] - Installing scripts/programs or package systems<br />
*[[Commercial submissions]] - Sending stuff to Ladybridge<br />
<br />
== How do I use this site? ==<br />
<br />
If you have a question on USAGE of the community version of Scarlet, then send it to the [http://groups.google.co.uk/group/scarletdme general email support group].<br />
<br />
If you want to discuss DEVELOPMENT of the community version of Scarlet (eg. php5 module) then send it to the [http://www.scarletdme.org/mailman/listinfo/openqm-dev development email group].<br />
<br />
While the email lists are best for getting attention, permanent changes in this wiki will have a longer term impact so feel free to add or change ANYTHING in this wiki.<br />
<br />
=== External Resources ===<br />
* [[Installations]] - Places where GPL OpenQM is in use (I'm attempting to create a new section for this) - http://capersqm.dnsalias.net/<br />
* [http://www.rushflat.co.nz/downloads.shtml Brian Speir's Installation instructions and other downloads ]<br />
* [http://openqm.blackflute.com/ Tom Delombard's old QM page.] Includes details of the tape utilities and the PHP4 module (C Wrapper) <br />
* [http://sourceforge.net/projects/jd3 JD3] is a socket based server for D3 ported to QM <br />
* [http://www.billabong-services.co.uk/jd3/jd3php.html David Patterson's guide to using PHP with JD3] David's original page has disappeared (unable to contact), so here's the google cache<br />
* [http://www.billabong-services.co.uk/jd3/jd3java.html David Patterson's guide to using Java with JD3] google cache again<br />
<br />
<br />
--[[Administration]]</div>Geneb