Groups keyboard shortcuts have been updated
Dismiss
See shortcuts

Universe @(-n) issue

441 views
Skip to first unread message

Mike Yates

unread,
Aug 20, 2024, 12:30:37 PM8/20/24
to Pick and MultiValue Databases
Is anyone proficient in Universe for Unix terminal types?
I managed to install Personal Universe in the Crostini Linux container of my Chromebook - maybe a first. 
I am trying to port my Pick Explorer back into Universe (lost my original) and it fell over at the first hurdle - cursor control. Also input of the arrow keys. I created my directory with the zero (Universe-type) option, perhaps I should have chosen Pick-compatible. Any ideas?

Wol

unread,
Aug 20, 2024, 4:01:25 PM8/20/24
to mvd...@googlegroups.com
I thought the @() variables were fairly consistent across flavours.
Cursor positioning is iirc @(x,y):

I never used inbuilt commands to trap cursor keys, but you can use
(iirc) "INPUT var,-1" to find out if there's anything in the input
buffer - if you just "input var" it reads until a carriage return, if
you add the -1 it fills the input buffer with whatever is available and
returns immediately. It's then down to you to interpret what you've got.

I do seem to recall there are some ways to trap and receive escape
sequences (such as cursor movement, but I never used them.

Cheers,
Wol

Mike Yates

unread,
Aug 21, 2024, 7:27:23 AM8/21/24
to mvd...@googlegroups.com
Hi Wol
Trapping arrow keys is easy with CHR = KEYIN() where, if you get ESC, (CHAR(27), you ignore the next character but the third is 'a' for up, 'b' for down, etc.

Mike Yates            Cowley, Middlesex, England

--
You received this message because you are subscribed to
the "Pick and MultiValue Databases" group.
To post, email to: mvd...@googlegroups.com
To unsubscribe, email to: mvdbms+un...@googlegroups.com
For more options, visit http://groups.google.com/group/mvdbms
---
You received this message because you are subscribed to a topic in the Google Groups "Pick and MultiValue Databases" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/mvdbms/3NEFIAojxpM/unsubscribe.
To unsubscribe from this group and all its topics, send an email to mvdbms+un...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/mvdbms/0231c05f-43a2-4893-9c0d-02b3af15e530%40youngman.org.uk.

Mike Yates

unread,
Sep 10, 2024, 12:07:52 PM9/10/24
to Pick and MultiValue Databases
I'm still stuck on this, including @(x,y), in Personal Universe. I've tried all term-types and Pick Compatibility.
Anyone got any experience of this?

James A

unread,
Sep 10, 2024, 1:08:54 PM9/10/24
to mvd...@googlegroups.com

Stuck on what exactly; there’s not much to go on.

 

What have you tried? Have you tried KEYIN as suggested? What is @(x,y) returning? Have you done something like this to see? Do the results change with different term types? Etc.

 

>CT DSI.BP T

 

     T

0001

0002   X = @(10,20)

0003   for i = 1 to len(X)

0004    crt seq(X[i,1])

0005   next i

0006

 

>R T

27

91

50

49

59

49

49

72

> 

 

 

 

You received this message because you are subscribed to the Google Groups "Pick and MultiValue Databases" group.
To unsubscribe from this group and stop receiving emails from it, send an email to mvdbms+un...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/mvdbms/3a75a9c1-16a1-4a9c-a662-2283a67c33c5n%40googlegroups.com.

Mike Yates

unread,
Sep 10, 2024, 2:18:22 PM9/10/24
to mvd...@googlegroups.com
I suggested KEYIN() to Wol - it is not my issue.
Nor is any "return" from @(x,y).
That function positions text at x,y and should make the cursor jump to that position. Running SD64 in my particular terminal, it works fine, but there is no sign of any cursor movement in Personal Universe for Linux. I have used it ten years ago in full Universe.

Mike Yates            Cowley, Middlesex, England

James A

unread,
Sep 10, 2024, 2:23:54 PM9/10/24
to mvd...@googlegroups.com

should make the cursor jump to that position”

 

It ‘makes the cursor jump’ by sending a characters sequence to your terminal emulator; so what it returns IS what is controlling your cursor; so it helps to know what ‘@’ is returning: thus the loop to output the ‘SEQ’ of each character.

 

Then if you know what your terminal emulator expects, you can see why it’s not working.

 

 

 

Steven Martin Trimble

unread,
Sep 10, 2024, 2:35:03 PM9/10/24
to mvd...@googlegroups.com
couple of other questions:
a) is the Personal Universe on Windows or Linux?
b) what terminal software package are you using?
c) show us result of the verb: TERM

CDMI
Steven Trimble
(501) 772-3450 cell/text


Wols Lists

unread,
Sep 10, 2024, 4:55:24 PM9/10/24
to mvd...@googlegroups.com
On 10/09/2024 19:34, Steven Martin Trimble wrote:
> couple of other questions:
> a) is the Personal Universe on Windows or Linux?
> b) what terminal software package are you using?
> c) show us result of the verb: TERM

I think (C) could be the answer - if you've not got TERM set, then UV
won't know what to print.

The two UV verbs I know for that are GET.TERM.TYPE and SET.TERM.TYPE.

What terminal emulation is your terminal emulator set to? It's quite
likely set to xterm, but could be set to vt100, but you need to make
sure your terminal emulator and UV agree.

It's ages ago, but I wrote the full PT100/PT250 terminal definitions for
wIntegrate (VMark deleted chunks and messed them up - "why do we have
more than one sequence for characters sent by a terminal to us?" -
because you have no control (nor does the user always) over what is sent
to you!)

One thing I did have control over, is if UV prints the <esc>E sequence
to a terminal, it should respond with an identity string. So I
configured our emulator to respond appropriately, our assorted terminals
already did, and my users never had to worry about getting terminal
types right, because it all got sorted as they logged in. I fixed their
default printers the same sort of way ...

Cheers,
Wol

Mike Yates

unread,
Sep 11, 2024, 1:13:10 PM9/11/24
to Pick and MultiValue Databases
>TERM
            Terminal Printer

Page width:       79     132
Page depth:       24      66
Page skip :        0
LF delay  :        0
FF delay  :        2
Backspace :      127
xterm-256color
>RUN BP T
>CT BP T

     T
0001 x = @(10,20)
0002 FOR I = 1 TO LEN(x)
0003 CRT SEQ(x[I,1])
0004 NEXT I
>
There is NO output from @(10,20)
a) it is in Linux (Crostini, as I said above)
b) the terminal is the normal Linux console. With SD64 it responds to vt100 escapes, as does "xterm" stated in the default TERM output.
c) see above

John Martinetti

unread,
Sep 11, 2024, 1:39:42 PM9/11/24
to Pick and MultiValue Databases
Hello Mike -

Your terminal type is set to "xterm" in whatever terminal you are using on your chromebook, possible and xterm but most likely whatever "terminal" program comes installed on the Chromebook.    I've found that setting that to "vt220" is usually a better option, it may be why you're having trouble with cursor control.
I would consider starting a UniVerse shell from the terminal something like this:

$ /usr/bin/bash -c "export TERM=vt200 && /uv/bin/uv" 

^ that above should set the TERM variable appropriately in a new bash shell & start UniVerse
I would expect that the TERM command from TCL should then show "vt220" as the terminal.

As to whether that will resolve your cursor-control issues, not sure, but I've already seen "xterm" as a terminal-type behave kinda wonky on UniVerse.

Good luck -

Mike Yates

unread,
Sep 11, 2024, 1:59:21 PM9/11/24
to Pick and MultiValue Databases
This shows that te SYS.TERMINALS file is set correctly.
Surely there should be output from "x = @(10,20) ?

>CT SYS.TERMINALS VT100.IKBIND

     VT100.IKBIND
0001 **************************************************************************
     *****
0002 *
0003 *
0004 *  VT100.IKBIND
0005 *  GTI Input - function key bindings description file for VT100
0006 *
0007 *
0008 *
0009 *       (c) Copyright 2001 IBM Inc. - All Rights Reserved
0010 *       This is unpublished proprietary source code of IBM Inc.
0011 *       The copyright notice above does not evidence any actual or intende
     d
0012 *       publication of such source code.
0013 *
0014 **************************************************************************
     *****
0015 *
0016 *       Maintenence log - insert most recent change descriptions at top
0017 *
0018 *       Date.... GTAR# WHO Description....................................
Press any key to continue...
     .....
0019 *       10/19/01       LKS Taken from HPU
0020 **************************************************************************
     ****/
0021 *
0022                                          \* FINISH
0023 \eOP          \* PF1                     \* HELP
0024 \b            \* BACKSPACE               \* BACKSPACE
0025 \e[D          \* Cursor Left             \* CURSOR.LEFT
0026 \e[C          \* Cursor Right            \* CURSOR.RIGHT
0027 \e[A          \* Cursor Up               \* PREV.LINE
0028 \e[B          \* Cursor Down             \* NEXT.LINE
0029                                          \*
0030                                          \*
0031 \eOQ          \* PF2                     \* PREV.PAGE
0032 \eOR          \* PF3                     \* NEXT.PAGE
0033 \eOS          \* PF4                     \* BEGIN.LINE
0034                                          \* END.LINE
0035 \eOp          \* Num Pad 0               \* NEXT.WORD
0036 \eOq          \* Num Pad 1               \* PREV.WORD
0037 \t            \* TAB                     \* TAB
0038                                          \* BACKTAB
0039                                          \* SET.TAB
Press any key to continue...
0040 \eOn          \* Num Pad .               \* INSERT.CHAR
0041                                          \* INSERT.LINE
0042                                          \* TOGGLE.OVERLAY
0043                                          \* INSERT.RECORD
0044                                          \* DELETE.CHAR
0045                                          \* DELETE.LINE
0046                                          \* DELETE.BLOCK
0047                                          \*
0048 \eOr          \* Num Pad 2               \* FORWARD.SEARCH
0049                                          \* QUERY.REPLACE
0050                                          \*
0051                                          \* COPY.BLOCK
0052                                          \* SAVE.RECORD
0053                                          \* FORMAT
0054                                          \*
0055                                          \*
0056 \eOs          \* Num Pad 3               \* OOPS OR YANK
0057 \eOt          \* Num Pad 4               \* GOTO.LINE
0058                                          \*
0059                                          \* TOGGLE.INDENT
0060                                          \* MARK
0061                                          \* DISPLAY.POSITION
0062                                          \*
Press any key to continue...
0063                                          \*
0064                                          \* RESTORE.DELETED
0065                                          \*
0066                                          \*
0067                                          \* BEGIN.MACRO
0068                                          \* BEGIN.BUFFER
0069 \eOy          \* Num Pad 9               \* COMMAND
0070                                          \* NEXT.BUFFER
0071 \eOu          \* Num Pad 5               \* CANCEL
0072 \eOv          \* Num Pad 6               \* TRUNCATE.LINE
0073                                          \*
0074                                          \* PERFORM
0075                                          \*
0076                                          \*
0077 \eOw          \* Num Pad 7               \* TWIDDLE
0078 \eOx          \* Num Pad 8               \* DELETE.WORD
0079                                          \* REVERSE.SEARCH
0080                                          \*
0081                                          \* REFRESH.SCREEN
0082 \eOm          \* Num Pad -               \* UPPERCASE.WORD
0083                                          \* LOWERCASE.WORD
0084                                          \* CAPINITIAL.WORD
0085                                          \* REEXECUTE
Press any key to continue...
0086                                          \* STAMP
0087                                          \* SPOOL
0088                                          \* GET.RECORD
0089                                          \* WRITE.RECORD
0090                                          \* EXECUTE.MACRO
0091                                          \* TOGGLE.NUMBERS
0092                                          \* CLEAR.TABS
0093                                          \* END.MACRO
0094                                          \* EXCHANGE.MARK
0095                                          \* END.BUFFER
0096                                          \* TOGGLE.CASE
0097                                          \* LIST.BUFFERS
0098                                          \* LIST.DELETES
0099                                          \* LIST.SELECTS
0100                                          \* RESERVED
0101                                          \* DISPLAY.SELECT
0102                                          \* BLOCK.REPLACE
0103 \e\e          \* <ESC> <ESC>             \* PREFIX
>CT SYS.TERMINALS VT100.ITDESC

     VT100.ITDESC
0001 **************************************************************************
     *****
0002 *
0003 *
0004 *  VT100.ITDESC, PI/open Group, 12/14/88
0005 *  GTI Output - @-Functions description file for VT100
0006 *
0007 *
0008 *
0009 *       (c) Copyright 2001 IBM Inc. - All Rights Reserved
0010 *       This is unpublished proprietary source code of IBM Inc.
0011 *       The copyright notice above does not evidence any actual or intende
     d
0012 *       publication of such source code.
0013 *
0014 **************************************************************************
     *****
0015 *
0016 *       Maintenence log - insert most recent change descriptions at top
0017 *
0018 *       Date.... GTAR# WHO Description....................................
Press any key to continue...
     .....
0019 *       10/19/01       LKS Taken from HPU
0020 **************************************************************************
     ****/
0021 *
0022 VT100
0023 \e=
0024 80
0025 24
0026 0
0027 \e[%i%d;%dH
0028 \e[2J\e[0;0H
0029 \e[0;0H
0030 \e[J
0031 \e[K
0032 \e[5m
0033 \e[0m
0034
0035
0036 \e[1D
0037 \e[1A
0038
0039
Press any key to continue...
0040 \e[7m
0041 \e[0m
0042 \e[4m
0043 \e[0m
0044 \e[A\eE\e[%dC
0045 RETURN
0046 Press <RETURN> to continue...
0047 Output suppressed.
0048 0
0049 1
0050 ^@
0051                                        \* reserved
0052                                        \* reserved
0053                                        \* reserved
0054                                        \* reserved
0055                                        \* reserved
0056                                        \* reserved
0057                                        \* reserved
0058                                        \* insert line                @(-17
     )
0059                                        \* delete line                @(-18
     )
0060                                        \* insert char                @(-19
Press any key to continue...
     )
0061                                        \* set insert/replace mode    @(-20
     )
0062                                        \* reset insert/replace mode  @(-21
     )
0063                                        \* delete char                @(-22
     )
0064                                        \* aux port on                @(-23
     )
0065                                        \* aux port off               @(-24
     )
0066                                        \* transparent aux port on    @(-25
     )
0067                                        \* transparent aux port off   @(-26
     )
0068                                        \* aux delay time             @(-27
     )
0069                                        \* print screen               @(-28
     )
0070                                        \* 80 column mode             @(-29
     )
0071                                        \* 132 column mode            @(-30
     )
Press any key to continue...
0072                                        \* reset inhibit cursor       @(-31
     )
0073                                        \* set inhibit cursor         @(-32
     )
0074 \e[%dB                                 \* cursor down                @(-33
     )
0075 \e[%dC                                 \* cursor forward             @(-34
     )
0076                                        \* set video attributes       @(-35
     )
0077                                        \* reserved
0078                                        \* set foreground color       @(-37
     )
0079                                        \* set background color       @(-38
     )
0080 \e(B\e)0^N                             \* start line graphics        @(-39
     )
0081 ^O                                     \* end line graphics          @(-40
     )
0082 %ln}q}x}l}k}m}j}w}t}u}v}%              \* line graphics chars        @(-41
     )
0083
0084
Press any key to continue...
0085
0086
0087
0088
0089
0090
0091
0092
0093
0094
0095
0096
0097 \e=
0098 \e>
0099
0100
0101
0102
0103
0104
0105
0106
0107
Press any key to continue...
0108
0109
0110
0111
0112
0113
0114
0115 ?
0116 \e[0m
0117 \e[7m
>

Mike Yates

unread,
Sep 11, 2024, 2:07:22 PM9/11/24
to Pick and MultiValue Databases
I've tried  myatescbk@penguin:~/uv$ /usr/bin/bash -c TERM=vt200 && /usr/uv/bin/uv
but still:
Backspace :      127
xterm-256color
>TERM VT200

>TERM
            Terminal Printer

Page width:       79     132
Page depth:       24      66
Page skip :        0
LF delay  :        0
FF delay  :        2
Backspace :      127
VT200
>RUN BP T
LEN = "0"
>

Mike Yates

unread,
Sep 11, 2024, 2:13:00 PM9/11/24
to Pick and MultiValue Databases
Works in SD64:-
:BASIC BP T
Compiling BP T
WARNING: Final END statement is missing
0 error(s)
Compiled 1 program(s) with no errors
:RUN BP T
LEN = "8"

27
91
50
49
59
49
49
72
:

Mike Yates

unread,
Sep 11, 2024, 2:17:29 PM9/11/24
to Pick and MultiValue Databases
I forgot to add (SD64)
:TERM
Page width: 120
Page depth: 36
Device    : linux
:

John Martinetti

unread,
Sep 12, 2024, 9:03:50 AM9/12/24
to mvd...@googlegroups.com
Hi Mike -

Make sure you're specifying "vt220",  I dont think there is a terminal type "vt200" but I could be wrong.  You could also try using "vt100" which is about as generic as you can get.

The quoting here is critical for this command, I would use double-quotes on the command portion of the argument as such:

$ /usr/bin/bash -c "export TERM=vt220 && /usr/uv/bin/uv"

^ this should start a bash shell & run the "export TERM=vt220" command FIRST.  If and only if the export command succeeds does it start the UniVerse shell.
  you can validate that with the TERM command but you could also shell-out with the SH command and check the environmental variable TERM by doing a "echo $TERM" command from the Unix shell.

You could take the above in pieces like this as well:

$ /usr/bin/bash      #<--  start a new bash shell
$ export TERM=vt220  #<-- export the TERM variable to vt220
$ echo $TERM         #<-- this should show the terminal set to "vt220" and not "xterm"
$ /usr/uv/bin/uv     #<-- now start UniVerse and check the terminal type with the "TERM" TCL command.


Again, I'm not sure this will have any bearing on your cursor-control issues but it does seem likely that the "xterm" terminal type isn't well supported by UniVerse & a more familiar terminal type should behave better.  I could also be way off-base, I'm more a Unix guy than a PICK guy.

Good luck!



--
You received this message because you are subscribed to
the "Pick and MultiValue Databases" group.
To post, email to: mvd...@googlegroups.com
To unsubscribe, email to: mvdbms+un...@googlegroups.com
For more options, visit http://groups.google.com/group/mvdbms
---
You received this message because you are subscribed to the Google Groups "Pick and MultiValue Databases" group.
To unsubscribe from this group and stop receiving emails from it, send an email to mvdbms+un...@googlegroups.com.


--
John Martinetti
Linux Administrator
Alliance One Inc.

Mike Yates

unread,
Sep 14, 2024, 2:38:52 PM9/14/24
to Pick and MultiValue Databases
myatescbk@penguin:~/uv$ bash -c TERM=vt220 && /usr/uv/bin/uv
UniVerse Command Language 11.4
Copyright Rocket Software, Inc. or its affiliates, All Rights Reserved 1985-2023
uv logged on: Sat Sep 14 19:37:10 2024


>TERM
            Terminal Printer

Page width:       79     132
Page depth:       24      66
Page skip :        0
LF delay  :        0
FF delay  :        2
Backspace :      127
xterm-256color
>TERM VT220

>TERM
            Terminal Printer

Page width:       79     132
Page depth:       24      66
Page skip :        0
LF delay  :        0
FF delay  :        2
Backspace :      127
VT220

>RUN BP T
LEN = "0"
>

Mike Yates

unread,
Sep 14, 2024, 2:42:56 PM9/14/24
to Pick and MultiValue Databases
There seems to be a "deeper" reason it doesn't work.
VT220 is definitely set up:-
SORT SYS.TERMINALS 07:40:59pm  14 Sep 2024  PAGE    1
SYS.TERMINALS.................

AIXTERM-M.IKBIND
AIXTERM-M.ITDESC
AIXTERM.IKBI
AIXTERM.ITDESC
FR200.IKBIND
FR200.ITDESC
FUNDAMENTAL.IKBIND
HP.IKBIND
HP.ITDESC
IBM3151.IKBIND
IBM3151.ITDESC
MIC5510.IKBIND
MIC5510.ITDESC
PICK.ITMAP
PROTOTYPE
PROTOTYPE.IKBIND
REALITY.ITMAP
SUN.IKBIND
SUN.ITDESC
TAB15.IKBIND

Press any key to continue...
SORT SYS.TERMINALS 07:41:00pm  14 Sep 2024  PAGE    2
SYS.TERMINALS.................

TAB15.ITDESC
TERMINAL_1.IKBIND
TERMINAL_1.ITDESC
TERMINAL_10.IKBIND
TERMINAL_10.ITDESC
TERMINAL_2.IKBIND
TERMINAL_2.ITDESC
TERMINAL_3.IKBIND
TERMINAL_3.ITDESC
TERMINAL_4.ITDESC
TERMINAL_5.IKBIND
TERMINAL_5.ITDESC
TERMINAL_6.ITDESC
TERMINAL_7.IKBIND
TERMINAL_7.ITDESC
TERMINAL_8.IKBIND
TERMINAL_8.ITDESC
TERMINAL_9.ITDESC
TK4105.IKBIND
TK4105.ITDESC

Press any key to continue...
SORT SYS.TERMINALS 07:41:02pm  14 Sep 2024  PAGE    3
SYS.TERMINALS.................

TK4105.ITINIT
TV924.IKBIND
TV924.ITDESC
TV925.IKBIND
TV950.IKBIND
TV950.ITDESC
TV970.IKBIND
TV970.ITDESC
ULTIMATE.ITMAP
UTERM-MONO.IKBIND
UTERM-MONO.ITDESC
UTERM.IKBIND
UTERM.ITDESC
UV.ITMAP
VP60.IKBIND
VP60.ITDESC
VP90.IKBIND
VP90.ITDESC
VT100.IKBIND
VT100.ITDESC

Press any key to continue...
SORT SYS.TERMINALS 07:41:02pm  14 Sep 2024  PAGE    4
SYS.TERMINALS.................

VT220.IKBIND
VT220.ITDESC
VT300.ITDESC
VT52.IKBIND
VT52.ITDESC
WY50.IKBIND
WY50.ITDESC
WY99GT.ITDESC

68 records listed.
>

Wol

unread,
Sep 14, 2024, 3:25:57 PM9/14/24
to mvd...@googlegroups.com
On 14/09/2024 19:42, Mike Yates wrote:
> There seems to be a "deeper" reason it doesn't work.
> VT220 is definitely set up:-
> SORT SYS.TERMINALS 07:40:59pm  14 Sep 2024  PAGE    1
> SYS.TERMINALS.................

I thought it weird you were complaining that vt220 didn't work, and then
you shared the vt100 definition.

Are the vt220 files actually set up?

Certainly I wouldn't trust them to be set up correctly ... vt100 yes
because it was such a common terminal, but if people were using TERM
VT100 to drive vt220 terminals, why would VMark/Ardent/IBM/Rocket bother
fixing the vt220 driver files? ime they wouldn't.

Cheers,
Wol

Mike Yates

unread,
Sep 14, 2024, 3:37:25 PM9/14/24
to mvd...@googlegroups.com
If you read the thread, I tried vt100 but Jon Martinetti suggested vt220

Mike Yates            Cowley, Middlesex, England

--
You received this message because you are subscribed to
the "Pick and MultiValue Databases" group.
To post, email to: mvd...@googlegroups.com
To unsubscribe, email to: mvdbms+un...@googlegroups.com
For more options, visit http://groups.google.com/group/mvdbms
---
You received this message because you are subscribed to a topic in the Google Groups "Pick and MultiValue Databases" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/mvdbms/3NEFIAojxpM/unsubscribe.
To unsubscribe from this group and all its topics, send an email to mvdbms+un...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/mvdbms/164e531e-d803-4085-8c19-31c339a90fdb%40youngman.org.uk.

John Martinetti

unread,
Sep 15, 2024, 9:54:36 AM9/15/24
to mvd...@googlegroups.com
I did suggest vt220 because anecdotally,  I've had better luck with vt220 emulation in our specific environment.  
You might need to try and sample other types of emulation if you're still not seeing the results you expect.


You received this message because you are subscribed to the Google Groups "Pick and MultiValue Databases" group.
To unsubscribe from this group and stop receiving emails from it, send an email to mvdbms+un...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/mvdbms/CAASr%3D6mzAPCx38-ernqY0AnDGXKoEARuqw_FVQSAubcnk8MqyA%40mail.gmail.com.

Mike Yates

unread,
Sep 15, 2024, 12:32:47 PM9/15/24
to mvd...@googlegroups.com
FYI 
I've uninstalled and re-installed Personal Universe.
I set up my personal folder in "Pick Compatibility" mode.
I tried WY50 and VT100 term-types.
I still get LEN= "0" from running BP T.



--
Mike Yates          Cowley   Middlesex   England

Nivethan T

unread,
Sep 17, 2024, 10:18:45 AM9/17/24
to Pick and MultiValue Databases
Not sure if this will double post now as I don't see my previous message.

I am able to get a LEN of 8 running the test routine. I'm using putty with my TERM set to xterm.

I have /usr/share/terminfo/x/xterm and when I remove this file, then I can duplicate the LEN showing as 0.

I think you can get the terminfo files from ncurses/ncurses-devel possibly. Otherwise, I could upload my terminfo copy somewhere and drop a link.

Wols Lists

unread,
Sep 17, 2024, 3:51:14 PM9/17/24
to mvd...@googlegroups.com
On 17/09/2024 15:18, Nivethan T wrote:
> I think you can get the terminfo files from ncurses/ncurses-devel
> possibly. Otherwise, I could upload my terminfo copy somewhere and drop
> a link.

terminfo is also in ScarletDME. It's a pretty standard Unix utility so
you'll find it all over the place.

Cheers,
Wol

Steven Martin Trimble

unread,
Sep 17, 2024, 5:40:34 PM9/17/24
to mvd...@googlegroups.com
my example that follows involves:
a) Rocky Linux 9.4 (Blue Onyx)
b) AccuTerm SSH (connecting to Rocky)
c) AccuTerm terminal emulation of 'vt100'
d) running ScarletDME or commercial QM

linux terminal info on Rocky is:
[root@rockyL9 qm]# cd /usr/share/terminfo
drwxr-xr-x.   2 root root 4096 Jun  4 17:22 v
(that v at the end is for vt100 terminal definition)

In ScarletDME and commercial QM, Ladybridge has:
ls -la /usr/qmsys
drwxrwxr-x. 20 qmsys qmusers   168 Jun  9 09:08  terminfo
-rwxrwxr-x.  1 qmsys qmusers 63392 Jun  9 09:08  terminfo.src

So, in my situation with ScarletDME or commercial QM, the terminfo attributes and definition come from:
/usr/qmsys/terminfo/v    (the compiled binary definition)
/usr/qmsys/terminfo.src  (the source so you can change / fix stuff)

I connect via AccuTerm SSH and log into Rocky Linux
My root account does NOT set any terminal type, but AccuTerm sends the host type of vt100
so, logged in as root, I type:
echo $TERM
which returns:
vt100

So, in my case (ScarletDME or commercial QM)
After logging in, I:
cd /usr/qmsys
qm
[ ScarletDME Rev 2.6-6   Copyright Ladybridge Systems, 2007 ]
Welcome to ScarletDME!  Multi-Value for the masses, not the classes.
This program is free software and is supplied with ABSOLUTELY NO WARRANTY.
You are welcome to modify or redistribute this software subject to certain
conditions.  For details type CONFIG GPL.
---
I now type:
TERM VT100
I now type:
TERM (which returns)
Page width: 80
Page depth: 24
Device    : vt100

The width and depth along with a screen emulation (vt100) have been stored in the AccuTerm emulation software.

here is BP T
1: CRT @(-1)
2: CRT @(10,20):\hi I am @(10,20)\
3: X = @(10,20)
4: CRT \len(X) = \:LEN(X)
5: FOR I = 1 TO LEN(X)
6:  CRT SEQ(X[I,1])
7: NEXT I
8: END

here are the results of:
RUN BP T


          hi I am @(10,20)
len(X) = 8

27
91
50
49
59
49
49
72

I hope this helps.
good luck,

CDMI
Steven Trimble
(501) 772-3450 cell/text

--
You received this message because you are subscribed to
the "Pick and MultiValue Databases" group.
To post, email to: mvd...@googlegroups.com
To unsubscribe, email to: mvdbms+un...@googlegroups.com
For more options, visit http://groups.google.com/group/mvdbms
---
You received this message because you are subscribed to the Google Groups "Pick and MultiValue Databases" group.
To unsubscribe from this group and stop receiving emails from it, send an email to mvdbms+un...@googlegroups.com.

Mike Yates

unread,
Sep 26, 2024, 12:53:59 PM9/26/24
to mvd...@googlegroups.com
Hi T
Many thanks for your suggestion.
I've finally had time to try the Personal Universe again.
I tried a few more term-types, confirming that they existed in /lib/terminfo ( symlinked in /usr/share/terminfo ) and still got LEN = "0"
Then I did "sudo mv /lib/terminfo/v/vt100 . " and in SD64 did
:TERM
Page width: 120
Page depth: 36
Device    : vt100
:RUN BP T
LEN = "8"

27
91
50
49
59
49
49
72
:
So it looks as if neither SD64 nor Universe are dependent on the system terminfo in my system: Linux Crostini (Debian) on ChromeOS.

Have fun
Mike

Mike Yates

unread,
Oct 12, 2024, 6:01:36 AM10/12/24
to Pick and MultiValue Databases
Looks as if I'll have to wait for the opportunity to try Personal Universe in "proper" Linux.
Cannot get to the bottom of this "term" issue. 
Any ideas?

Jim Idle

unread,
Oct 12, 2024, 9:20:38 AM10/12/24
to mvd...@googlegroups.com
Just download the free jBASE - we spent quite some time making such things "just work". 

Joe Goldthwaite

unread,
Oct 12, 2024, 12:49:23 PM10/12/24
to mvd...@googlegroups.com
Where would someone download it from? There are some sketchy sites or Rocket's evaluation copy but that was all I could find.

Mike Yates

unread,
Oct 12, 2024, 1:15:07 PM10/12/24
to mvd...@googlegroups.com
Yes, it's now known as the evaluation copy of Universe.
Licensed for one user.

--
You received this message because you are subscribed to
the "Pick and MultiValue Databases" group.
To post, email to: mvd...@googlegroups.com
To unsubscribe, email to: mvdbms+un...@googlegroups.com
For more options, visit http://groups.google.com/group/mvdbms
---
You received this message because you are subscribed to a topic in the Google Groups "Pick and MultiValue Databases" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/mvdbms/3NEFIAojxpM/unsubscribe.
To unsubscribe from this group and all its topics, send an email to mvdbms+un...@googlegroups.com.

Christopher Jeune

unread,
Oct 12, 2024, 1:58:57 PM10/12/24
to mvd...@googlegroups.com
What sketchy sites do you  recommend?

--
You received this message because you are subscribed to
the "Pick and MultiValue Databases" group.
To post, email to: mvd...@googlegroups.com
To unsubscribe, email to: mvdbms+un...@googlegroups.com
For more options, visit http://groups.google.com/group/mvdbms
---
You received this message because you are subscribed to the Google Groups "Pick and MultiValue Databases" group.
To unsubscribe from this group and stop receiving emails from it, send an email to mvdbms+un...@googlegroups.com.

Mike Yates

unread,
Oct 12, 2024, 2:41:53 PM10/12/24
to mvd...@googlegroups.com
It is still free on Rocket's site - I think you need a non-gmail "professional" address - I use gmx.co.uk

You received this message because you are subscribed to a topic in the Google Groups "Pick and MultiValue Databases" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/mvdbms/3NEFIAojxpM/unsubscribe.
To unsubscribe from this group and all its topics, send an email to mvdbms+un...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/mvdbms/CACHAbR1WjexvKMzGj_gDX50ijzAUfqQSyc_GFn%3DFor%2B68RkMgg%40mail.gmail.com.

Optimus01010101

unread,
Oct 12, 2024, 2:58:52 PM10/12/24
to Pick and MultiValue Databases
Yeah, I would love to get a free copy of jBASE. Let us know where we can get it.

Joe Goldthwaite

unread,
Oct 12, 2024, 4:02:11 PM10/12/24