¿ªÔÆÌåÓý

CMS BREXX Question #VMCE


 

Which of these functions does BREXX on VM not have?

ea = bitand(substr(diag('8C'),1,1),'40'x) = '40'x;
?
I'm getting the following which isn't very helpful.

? ? 15 *-* ea = bitand(substr(diag('8C'),1,1),'40'x) = '40'x;
Error 43 running GRAPH1, line 15: Routine not found
?
My knowledge of REXX, that still resides in what is left of my brain, is from the 90s, so I'm sure I'm missing something.
?
?... Mark S.


 

On Sat, Sep 28, 2024 at 14:31 Mark A. Stevens via <marXtevens=[email protected]> wrote:
Which of these functions does BREXX on VM not have?

ea = bitand(substr(diag('8C'),1,1),'40'x) = '40'x;

BREXX doesn't have either DIAG() or DIAGRC().

Ross



 

Today is not my day to be programming REXX, it seems.
?
Another REXX question. If I quote a label, it fails. If I don't use quotes, it works, regardless of whether the label is lowercase, or uppercase.
?
graphdem
? ?281 *-* ? signal 'IOS'
Error 19.4 running GRAPH1, line 281: String or symbol expected after SIGNAL keyword; found "IOS"
?
I have a "signal exit;" at line 23, but I get this, and can't figure out where the 'L0' is coming from, as that string is nowhere to be found in the code. The "exit:" label exists.

? ? 23 *-* signal l0;
Error 16.1 running graphdem, line 23: Label "L0" not found
Ready(20016); T=0.23/0.23 12:44:48
?
?... Mark S.
?


 

On Sat, Sep 28, 2024 at 01:52 PM, Ross Patterson wrote:
BREXX doesn't have either DIAG() or DIAGRC().
Well, darn it. That hurts.
?
?... Mark S.


 

On Sat, Sep 28, 2024 at 15:03 Mark A. Stevens via <marXtevens=[email protected]> wrote:
If I quote a label, it fails.

That is a bug.? SIGNAL should accept either a symbol or a literal.

If I don't use quotes, it works, regardless of whether the label is lowercase, or uppercase.

That is correct.? Labels are not case-sensitive.? TRL2 even has this example:

signal bill;
...
Bill: say 'Hi!'


I have a "signal exit;" at line 23, but I get this, and can't figure out where the 'L0' is coming from, as that string is nowhere to be found in the code.

That qualifies as "weird".? I've never seen that happen in any Rexx version, including BREXX.? I have some Rexx programs that use SIGNAL extensively, and BREXX runs them just fine.

Ross


 

On Sat, Sep 28, 2024 at 02:27 PM, Ross Patterson wrote:
?
That is a bug.? SIGNAL should accept either a symbol or a literal.
Is that one of the SIGNAL challenges you have found and documented, to be worked on? Or do I need to add it?
?
?... Mark S.


 

On Sat, Sep 28, 2024 at 02:27 PM, Ross Patterson wrote:
I have a "signal exit;" at line 23, but I get this, and can't figure out where the 'L0' is coming from, as that string is nowhere to be found in the code.
?
That qualifies as "weird".? I've never seen that happen in any Rexx version, including BREXX.? I have some Rexx programs that use SIGNAL extensively, and BREXX runs them just fine.
?
Would SIGNAL TRACE help me track that down. It's been ages, and this BREXX trips me up every time I think I know what is going on.
?
?... Mark S.


 

On Sat, Sep 28, 2024 at 09:03 PM, Mark A. Stevens wrote:
I have a "signal exit;" at line 23, but I get this, and can't figure out where the 'L0' is coming from, as that string is nowhere to be found in the code. The "exit:" label exists.
Do you use VM/370 Community Edition V1R1.2 ? Is your VM size < 16 MB ? Is fix not applied to your system ?
?
On Sat, Sep 14, 2024 at 02:39 PM, Martin Scheffler wrote:
I am preparing to distribute a bleeding edge preview of EE which can be loaded in high memory using RESLIB.
?
It is very important to understand the difference between STATIC and DYNAMIC linking against the GCC library.
?
DYNAMIC linking only works if issue has been solved on your installation of VM/370 Community Edition V1R1.2 , otherwise EE and bREXX will malfunction in unpredictable ways.
BREXX ? ?TEXT ? ? Y2 ?is dynamically linked and will malfunction in unpredictable ways (= "weird") if above conditions are met.
?
Set VM size to 16 MB as a quick workaround.
?
Martin
?
listfile brexx text * (l iso ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??
Filename Filetype Fm ?Format ? ?Recs Blocks ? ? Date ? ?Time ? Label ??
BREXX ? ?TEXT ? ? Y2 ?F ? ?80 ? 4471 ? ?448 ?2022-07-11 11:34 ?MNT19E ?
Ready; ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??
?


 

On Sat, Sep 28, 2024 at 03:16 PM, Martin Scheffler wrote:
Is fix not applied to your system ?
I have to look, but I don't think I have applied this patch. We match (below), so I will try the 16MB workaround.
?
listfile brexx text * (l iso
Filename Filetype Fm ?Format ? ?Recs Blocks ? ? Date ? ?Time ? Label
BREXX ? ?TEXT ? ? Y2 ?F ? ?80 ? 4471 ? ?448 ?2022-07-11 11:34 ?MNT19E
Ready; T=0.01/0.01 14:20:42
?
?... Mark S.


 

On Sat, Sep 28, 2024 at 15:46 Mark A. Stevens via <marXtevens=[email protected]> wrote:
On Sat, Sep 28, 2024 at 02:27 PM, Ross Patterson wrote:
?
That is a bug.? SIGNAL should accept either a symbol or a literal.
Is that one of the SIGNAL challenges you have found and documented, to be worked on? Or do I need to add it?

It is now ?

Ross


 

On Sat, Sep 28, 2024 at 03:16 PM, Martin Scheffler wrote:
Set VM size to 16 MB as a quick workaround.
I tried the workaround. No fix for the L0 error ...

cp define storage 16m
STORAGE = 16384K
DMKDSP450W CP ENTERED; DISABLED WAIT PSW '00020000 00000000'
IPL 190 CLEAR PARM AUTOCR
VM Community Edition V1 R1.2
DMSACC723I Y (19E) R/O
Segment GCCLIB is not loaded because virtual machine memory is in use.
DMSACC723I U (19D) R/O
DMSACC723I B (5E5) R/O
DMSACC723I C (195) R/O
XMAS 195 WORK DISK R/O
DMSACC723I E (194) R/O
DMSACC723I T (196) R/O
DMSACC723I R (193) R/O
Ready; T=0.01/0.01 14:26:29
graphdem
? ? 15 *-* ea = bitand(substr(diag('8C'),1,1),'40'x) = '40'x;
Error 43 running GRAPH1, line 15: Routine not found
? ? 23 *-* signal l0;
Error 16.1 running graphdem, line 23: Label "L0" not found
Ready(20016); T=0.25/0.26 14:26:38
?
?... Mark S.


 

On Sat, Sep 28, 2024 at 10:33 PM, Mark A. Stevens wrote:
I tried the workaround. No fix for the L0 error ...
Can you post the complete source ? I could run it to check if I see the "L0 error" too.
?
Martin


 

On Sat, Sep 28, 2024 at 03:33 PM, Mark A. Stevens wrote:
I tried the workaround. No fix for the L0 error ...
Also tried a different label, to no positive effect. Still at 16M, too.

Ready; T=0.28/0.29 14:40:29
type graph1 exec a 20 25
?
say 'Screen is too small. Must be at least 32 lines.';
signal outahere;
end;
/*
* Get data from calling EXEC: *
* X. data for x-axis. *
?
Ready; T=0.01/0.01 14:40:37
graphdem
? ? 15 *-* ea = bitand(substr(diag('8C'),1,1),'40'x) = '40'x;
Error 43 running GRAPH1, line 15: Routine not found
? ? 23 *-* signal l0;
Error 16.1 running graphdem, line 23: Label "L0" not found
Ready(20016); T=0.25/0.26 14:40:47
?
?... Mark S.


 

This is not something that I can run on my (untouched) system.
?
Martin


 

On Sat, Sep 28, 2024 at 03:39 PM, Martin Scheffler wrote:
Can you post the complete source ? I could run it to check if I see the "L0 error" too.
I will create a VMARC of the files and post in the Files section as soon as I can manage.
?
?... Mark S.


 

Mark, you run into GRAPHDEM EXEC line 23, a label "L0" is not defined there
?
Martin
?
Ready; T=0.01/0.01 23:21:00 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??
GRAPHDEM ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
? ? 15 *-* ea = bitand(substr(diag('8C'),1,1),'40'x) = '40'x; ? ? ??
Error 43 running GRAPH1, line 15: Routine not found ? ? ? ? ? ? ? ??
? ? 23 *-* signal l0; ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??
Error 16.1 running GRAPHDEM, line 23: Label "L0" not found ? ? ? ? ?
Ready(20016); T=0.27/0.28 23:21:03 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
q stor ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
STORAGE = 16384K ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
Ready; T=0.01/0.01 23:21:07 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??
id ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
MECAFF ? AT VM370CE ?VIA RSCS ? ? 23:21:17 09/28/24 GMT ? ? SATURDAY
Ready; T=0.01/0.01 23:21:17 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??
? ?GRAPHDEM EXEC ? ? A1 ? ? ??
?====> all/l0 ? ? ? ? ? ? ? ??
? ? 0 * * * Top of File * * *?
? ?23 signal l0; ? ? ? ? ? ? ?
? ?78 * * * End of File * * *?


 

On Sat, Sep 28, 2024 at 06:40 PM, Martin Scheffler wrote:
Mark, you run into GRAPHDEM EXEC line 23, a label "L0" is not defined there
Martin,
?
THANK YOU! I was not looking at GRAPHDEM.
?
?... Mark S.


 

What is the equivalent for & since BREXX doesn't like that? This drives me nuts, since I expect this to work. By-the-bye, the & works on VM/SP 5 at SDF.org.
?
Ready; T=0.13/0.22 21:17:13
GRAPHDEM
? ? 52 *-* ?= 'ATTRY1' & attry1 ?= ' '
Error 13 running GRAPH1, line 52: Invalid character in program

?... Mark S.


 

On Sun, Sep 29, 2024 at 12:37 Mark A. Stevens via <marXtevens=[email protected]> wrote:
What is the equivalent for & since BREXX doesn't like that? This drives me nuts, since I expect this to work. By-the-bye, the & works on VM/SP 5 at SDF.org.
?
Ready; T=0.13/0.22 21:17:13
GRAPHDEM
? ? 52 *-* ?= 'ATTRY1' & attry1 ?= ' '
Error 13 running GRAPH1, line 52: Invalid character in program

Without having checked, I'll guess it's the not-sign character that's the problem.? You can replace "?="?with "<>". ?

The Rexx language got its start in an EBCDIC environment.? Every ?implementation written by anyone except Mike Cowlishaw got its start in an ASCII environment, where there is no?not-sign character.? Dealing with that has been a compatibility issue ever since.

Ross


 

On Sun, Sep 29, 2024 at 11:50 AM, Ross Patterson wrote:
Without having checked, I'll guess it's the not-sign character that's the problem.? You can replace "?="?with "<>". ?
I figured it was the & as I was in an EBCDIC environment (VM/370 CE).
?
I tried changing them with EE.
?
change /?=/ /<>/ * *
?
It changed one to blanks and quit. I was thinking earlier, this is not my day. Now I'm beginning to think this is not my week. Sorry to be whining.
?
I guess I will transfer the EXEC to Linux, edit it there and transfer back.
?
?... Mark S.