I'm playing around with the personal versions of QM and Accuterm, and
I'm having difficulty achieving proper colour displays on the Accuterm
display. If I connect Accuterm to mvBASE, then I the colour display is
fine. Therefore, I have to conclude the problem is with the terminal
definitions that come with QM rather than with Accuterm.
If I use one of the Accuterm VT terminal definitions that come with QM,
then the background colour is only displayed on behind output text -
the background colour cannot be applied to the whole screen. (Yes, I
know that the QM manual notes that some terminals display this
behaviour, but that doesn't help me).
For example, try typing:
term colour white,red
If I use the PICK PC Monitor in Accuterm (which I use in mvBASE and can
control colour as I expect it) and the ibm-pc terminfo definition, then
I can't change colour at all from within QM. Looking at the
terminfo.src file, I can see that there are no definition strings for
setf and setb .
Questions:
* Does anyone have a modified terminfo definition for ibm-pc that
includes definition strings for setf and setb
* Is there an alternative QM terminfo and Accuterm terminal setting
that allows me to fully control colour.
I can't be the only person who has struck this. How have other people
dealt with it? (Other than by using Accuterm's GUI features to bypass
this problem completely!).
Thanks,
Brian Speirs
I dare say Martin will weigh in with a response tonight (strange, but he
seems to like working while I'm at the pub....), but in the mean-time...
At 17:51 09/02/06 -0800, you wrote:
>Hi,
>
>I'm playing around with the personal versions of QM and Accuterm, and
>I'm having difficulty achieving proper colour displays on the Accuterm
>display.
><snip>
Martin's in the middle of a huge colour exercise at the moment - screen
based reports with your choice of colours for headings, column headings,
detail lines, subtotals, total, etc... and in testing (OpenQM 2.3-5 &
AccuTerm) t'other day I found that the "normal" colours don't give much of
a change away from black whereas the "BRIGHT" colours give what would be
expected. Martin's explanation of this, the last that he told me, was
that this appears to be a "AccuTerm problem".....
However, that doesn't seem to be *your* problem, and alI I can say in
response to that is that (a) AccuTerm colours for various
foreground/background combinations from "AccuTerm Settings" work, (b) the
AccuTerm "Private Commands" ESC:STX A and or B work, and (c) the QMBasic
@(-37,x) and @(-38,x) combinations work for us - and have done since QM
1.something (vt100-at termtype) up to now (vt420-at termtype).
I've just tried your "term colour white,red" and I get a "setting 8,5"
displayed and the result is a grey background and a black foreground
(starting from a white background and black foreground)!!!!! Seems like
you've found a hole in the floor .... but it is winter over there in t'Old
Dart, and everything's "grey" anyway.....
Having said that, I''ve never had any problems with colours (other than
mentioned here) using either AccuTerm's "Settings", their ESC:STX:A/B or
OpenQM's @(-37,..)/@(-38,..) although the numbers to use for the same
colour in the last two instances can be different.... Never had a need to
use "term colour...."
My suggestion: Try the vt420-at termtype, but not until Martin's given
some response to your "term colour ...." findings
>--
>No virus found in this incoming message.
>Checked by AVG Anti-Virus.
>Version: 7.1.375 / Virus Database: 267.15.4/255 - Release Date: 09/02/06
Regards,
Bruce Nichol
Talon Computer Services
ALBURY NSW 2640
Australia
Tel: +61 (0)411149636
Fax: +61 (0)260232119
If it ain't broke, fix it till it is!
--
No virus found in this outgoing message.
Checked by AVG Anti-Virus.
Version: 7.1.375 / Virus Database: 267.15.4/255 - Release Date: 09/02/06
> ...the background colour is only displayed on behind output text -
> the background colour cannot be applied to the whole screen.
This is simply how AccuTerm works (in common with many other emulators). I
know it can be annoying. I would really like clear screen, for example, to
paint the current background colour over the whole screen. Some emulators
do, others do not.
> If I use the PICK PC Monitor in Accuterm (which I use in mvBASE and can
> control colour as I expect it) and the ibm-pc terminfo definition, then
> I can't change colour at all from within QM. Looking at the
> terminfo.src file, I can see that there are no definition strings for
> setf and setb .
I suggest that you take this up with AccuTerm support. They may be able to
supply a better terminfo definition and they may have a solution to the
"whole screen colour" problem too.
Bruce Nichol's comments about colour in the query processor are true but not
really relevant to your problem. Certainly, the colour palette of AccuTerm
is a bit dull by default though you can adjust it.
Martin Phillips, Ladybridge Systems
I've tried using BASIC to change the colours and essentially get the
same results - the colours change - but only for the printed text - not
the entire background. That was using the vt420-at terminal type in QM
and vt420 in accuterm. I also tried using both the @(-37, x) / @(-38,
x) method and the ESC:STX:A/B:colour:CR methods. The colours came up
different with each method, but in each case the colours only applied
to the printed text.
I'll keep playing with it, and see what I come up with.
By the way, it may be winter in the Northern Hemisphere, but I'm only
just over the ditch from you. The sky is blue outside, and its time to
put the computer away!
Cheers,
Brian
I've now recognised your problem.....
The only way I can find to get the "whole of screen background" to change
that I can find with OpenQM/AccuTerm is to use the AccuTerm
"Settings".. I've only ever wanted the text presented "highlighted" on the
same background so I've had no problems.
Is there a way, surely there must be a way, to "mechanise" the AccuTerm
"Setting" colours.......ie, 240 for black on while, 252 for red on white,
172 for red on green, etc....That does give "whole of screen" backgrounds
Taking your "term colour red,white" a bit further, I've run past that again
but using the BRIGHT colours and the colours are as would be expected. As
Martin says, AccuTerm's palette is a "bit dull" for the ordinary colours,
in as much it's an understatement as they all appear black in foreground on
grey (supposedly white) background.... but as you say, only backgrounding
for the entered/displayed text....
>--
>No virus found in this incoming message.
>Checked by AVG Anti-Virus.
>Version: 7.1.375 / Virus Database: 267.15.6/257 - Release Date: 10/02/06
Regards,
Bruce Nichol
Talon Computer Services
ALBURY NSW 2640
Australia
Tel: +61 (0)411149636
Fax: +61 (0)260232119
If it ain't broke, fix it till it is!
--
No virus found in this outgoing message.
Checked by AVG Anti-Virus.
Version: 7.1.375 / Virus Database: 267.15.6/257 - Release Date: 10/02/06
> Is there a way, surely there must be a way, to "mechanise" the AccuTerm
> "Setting" colours.......ie, 240 for black on while, 252 for red on white,
> 172 for red on green, etc....That does give "whole of screen" backgrounds
I will take this up with AccuTerm support and publish the reply.
Martin Phillips, Ladybridge Systems
The way AccuTerm handles the screen background color is dependent on
the terminal emulation in use. Also, AccuTerm's colors are intimately
connected with the display attributes. The "normal" attribute defines
the screen's background color. When you look in the Colors tab of the
settings, there is a "change" button next to the color sample for every
attribute. Click the "normal" attribute "change" button to select the
background color for the screen. This is the color used to clear the
screen, under most terminal types. PC Monitor emulation, which does not
(yet) have terminal definitions for QM, is special, in that the
background color currently in effect is used when the screen is
cleared, or when a new row scrolls onto the bottom of the screen. This
behavior is consistent with the actual terminals being emulated.
The current color is used for displaying any characters received from
the host. It does not affect the entire screen (except in the case of
PC Montor when erasing the screen). You can select the current
foreground/background colors in several ways. You can always use the
native visual attribute commands, like reverse video or underline. The
colors chosen are the ones defined on the Colors tab of the settings
dialog. You can also use the AccuTerm private commands mentioned by
Bruce (ESC STX A, ESC STX B) which are documented in the AccuTerm
Programmers Guide. Also, the ANSI and PC Monitor emulations have native
commands (escape seqnences) for selecting foreground/background color.
To set the entire background to the current color, you would need fill
the screen with spaces.
AccuTerm uses a palette of 16 colors for all foreground and background
colors. The default palette is similar to the original IBM-PC color
monitor colors, and consists of 8 light colors, and 8 darker colors.
The palette can be customized.
By using AccuTerm's scripting feature, you can change nearly any
setting or property of the screen. This includes the colors that are
mapped to the visual attributes, including the "normal" attribute. The
Session object has a Colors property that associates a
foreground/background color with each display attribute (the Settings
object includes the same property - you can use either one). The
Programmers Guide, AccuTerm Object Reference chapter, describes the
Colors property. Basically, the property acts like an array, with the
index selecting the desired attribute (0 for normal, 4 for reverse,
etc.), and the value being composed of two 4-bit numbers for the
foreground and background color. The manual includes a table showing
the color indexes - just add the index for the desired foreground color
and the index of the desired background color.
You can execute a script from the host, by enclosing the script code
inside an escape sequence. The escape sequence for launching a script
is documented in the Programmers Guide, in the AccuTerm Programming
chapter. For example, to use a script to set the background color for
the Normal attribute to Cyan, and the foreground color to Dark Blue,
you could use the following script:
SCRIPT = 'InitSession.Colors(0) = 177'
PRINT CHAR(27) : CHAR(2) : 'P' : SCRIPT : CHAR(13) :
Note here that Dark Blue foreground is 1, Cyan background is 176, hence
the combined color value is 176 + 1 = 177. Colors() index 0 is the
"normal" attribute.
After running this script, simply clear the screen, and it will take on
the new bakground color.
I hope this helps explain whats going on here. Hopefully, someone (me?)
will be able to create a terminfo definition for the PC Monitor, and
you could switch back to that emulation, since it works the way you are
used to.
Thanks,
Peter Schellenbach
We've been using PC emuluation for a long time in mvBASE, and it only
took a a little playing with the IBM-PC definition in the CURSOR file
to get colours displaying correctly in mvBASE. That is why I was
expecting similar behaviour in QM.
Yes, I have found that I can send the Accuterm codes to change colour
using the Pick PC emulation, but I would prefer to use the "standard"
QM codes, as this makes the code a little more transportable.
Thanks for the reply, and I'll look forward to an Accuterm enhancement
for the ibm-pc definition at some stage in the future!
In the meantime, I'll continue playing so that I fully understand both
Accuterm and QM.
Cheers,
Brian Speirs
drwxr-xr-x 2 strimble qmusers 4096 Feb 13 17:48 ./
drwxr-xr-x 9 root root 4096 Feb 3 18:31 ../
-rw------- 1 strimble qmusers 248 Feb 3 18:09 .bash_history
-rw-r--r-- 1 strimble qmusers 24 Feb 3 16:01 .bash_logout
-rw-r--r-- 1 strimble qmusers 229 Feb 3 17:52 .bash_profile
-rw-r--r-- 1 strimble qmusers 124 Feb 3 16:01 .bashrc
-rw-r--r-- 1 root root 229 Feb 13 17:41 profile
In QM at TCL:
list path:/home/strimble
path:/home/strimble
profile
steve
2 record(s) listed
'.bash_profile' not found
'.bash_logout' not found
'.bashrc' not found
'.bash_history' not found
Notice the items QM indicates as 'not found'
Using the editor:
:ed path:/home/strimble .bash_profile
path:/home/strimble .bash_profile
New record
----:
Notice 'New record'
Does QM have a 'problem' with '.' files ??
Also, how would I set up a 'q-pointer' to reference '/home/strimble' in my
VOC ?
Thanks in advance,
Steve Trimble
============================================
Computerized Data Management, Inc.
PO Box 13403
Maumelle, AR 72113
(501) 803-0974 9:00am - 6:00pm CST
cd...@swbell.net
I have always wondered about file name "mangling" in QM directory files
as well. QM obviously does some stuff, but I am curious as to what it
is trying to accomplish and whether and if there are documented rules on
how stuff gets shuffled around. Did this behaviour come from Prime, or
is it a holdover reflecting Windows filename restrictions.
Some sort of "transparent" mode might be appropriate (something like
mark.mapping) as well.
--
--------------------------------------------------------------------
Doug Dumitru 800-470-2756 (610-237-2000)
EasyCo LLC do...@easyco.com http://easyco.com
--------------------------------------------------------------------
In order to allow directory files to store records with any record id, QM
(just like UV) mangles the names if they contain invalid characters. Thus, I
can write a record called ORDERS/2005 even though this is invalid at the o/s
level. Everything looks fine from inside QM though you have to know about
name mangling if you want to access this data from outside.
The problem comes when you try to use a directory file as a way to read
directories that were not created by QM. We will not recognise items that
clash with the name mangling rules.
> Some sort of "transparent" mode might be appropriate (something like
> mark.mapping) as well.
It should be possible to add a mode to turn off name mangling for an open
file though this will have problems such as the query processor seeing
different names than a QMBasic SELECT. Probably needs abit of thought
before we do anything.
Incidentally, in the 17 years that I have used UniVerse, I have never heard
anyone complain about the same "feature" in UV.
Martin Phillips, Ladybridge Systems
Not sure if it is in the docs or not. In the code here is how it works.
in op_dio3.c
map_t1_id()
if FirstCharacter = "." then replace with "%d"
if FirstCharacter = "~" then replace with "%t"
after this test and replace 1:1 the following characters
* A
, C
= E
> G
< L
% P
/ S
+ V
: X
; Y
? Z
\ B
" Q
I suspect that most of the name mangling occurs because of windows.
Unix filesystems are much more forgiving of filenames than windows.
There is actually at least one windows mangling that is not done that
probably should be. In windows, it does not appear to be legal to have
a filename than ends in a space. Just mentioning it.
In unix, all of these characters, except /, are legal in filenames. The
shell might make the file a bit hard to type, but the names are legal
anyway. You can even create filenames in unix that have control
chacters. I have seen worms build filenames with backspaces (char 8)
and tabs (char 9) embedded in. The filesystem handles them just fine.
Some utilities barf, which is why the worms are playing these games.
If I had a vote (which I don't), I would rather have the mangling only
happen on Windows and let Unix systems run more transparently. You
would still need to quote '/', but you could leave everything else
alone. If a user needed to migrate a directory from Windows to Unix,
(or vice versa) a simple BASIC program in QM/Unix could convert the
directory names before or after the transfer from Windows.
> Are the mangling rules platform independent?
>
> --
> Ashley Chapman
> Billabong Services Ltd
--