Running APL\360 on OS/360-MVT 21.8F: MVT for APL Version 2.00 available

classic Classic list List threaded Threaded
61 messages Options
1234
Reply | Threaded
Open this post in threaded view
|

Re: APL keyboard stickers

Hercules390 - General mailing list
On 18 November 2014 13:01, Tony Harminc <[hidden email]> wrote:
> Continuing a 2+ year old thread.

Sorry - only one year old.

Tony H.
Reply | Threaded
Open this post in threaded view
|

Re: APL keyboard stickers

Hercules390 - General mailing list
In reply to this post by Hercules390 - General mailing list
Tony Harminc [hidden email] [hercules-390] wrote:

> Continuing a 2+ year old thread... While tidying up some stuff at
> home, I came across an almost original sheet of APL keyboard stickers
> that I had used as a bookmark years ago. Actually I remember that I
> had lent the book to a friend, and he returned it with apologies after
> keeping it for at least five years, and *that* was at least 20 years
> ago, so...
>
> This is GX20-1783-2 "APL TERMINAL CHARACTERS", which is the sticker
> set mentioned in the APL General Information manual on bitsavers.
> These are for the 2741 (and maybe 2740 and 1050?) terminals, and are
> meant to go on the front of the keys. I don't know what changed in the
> -2 version.
>
> Anyway - I imagine the glue is well dried out by now, but I have
> uploaded a scan of the sheet to Yahoo if anyone is interested.
>
> Tony H.

Thanks for that, very interesting. Kudos also to John Savard, who
discusses APL layouts (among many other things) at
http://www.quadibloc.com/comp/kybint.htm

I suppose the obvious question to ponder is whether anybody does
laser-printable stick-on sheets (I suspect the two requirements are
incompatible), or whether one has to use something like Copydex.

--
Mark Morgan Lloyd
markMLl .AT. telemetry.co .DOT. uk

[Opinions above are the author's, not those of his employers or colleagues]
Reply | Threaded
Open this post in threaded view
|

Re: Running APL\360 on OS/360-MVT 21.8F: MVT for APL Version 2.00 available

Hercules390 - General mailing list

Something has changed with the HAO since the last Hercules build I used, so the
scripts for APL\360 no longer work.

Unfortunately I don't know how to tell what version I had before, other than it is
a sandhawk-master with files inside the zip dated 07/04/2013.  When I run that
hercules it just announces itself as 4.00.

I've had that source laying around for some time.  Just built it again a few days ago
and it does work correctly.

So I decided to try this with the latest 4.0 today from github and I'm getting some error messages I don't understand.

I'm guessing something has changed in the processing of the "hao cmd script"
but I don't have a clue what to change.

<<<
HHC02260I Script 1: begin processing file scripts/automatic_linux.rc
HHC01603I hao tgt IEE101A
HHC00077I The target was placed at index 0
HHC01603I hao cmd script scripts/jobnames
HHC00072E The command cmd given, but the command tgt was expected
HHC01603I hao tgt IKJ019I
HHC00077I The target was placed at index 0
HHC01603I hao cmd script scripts/sess
HHC00072E The command cmd given, but the command tgt was expected
HHC01603I hao tgt IEE334I
HHC00077I The target was placed at index 0
HHC01603I hao cmd script scripts/poweroff
HHC00072E The command cmd given, but the command tgt was expected
HHC01603I hao tgt APL     APL HAS
HHC00077I The target was placed at index 0
HHC01603I hao cmd script scripts/client_linux
HHC00072E The command cmd given, but the command tgt was expected
>>>

Bill
Reply | Threaded
Open this post in threaded view
|

Re: Running APL\360 on OS/360-MVT 21.8F: MVT for APL Version 2.00 available

Hercules390 - General mailing list
Hi Bill
 

 APL\360 will work with the Hercules version that comes with it _only_... It would be quite an effort to get it to work with any other version of Hercules -- and then: Why would one want to do this? It wouldn't bring the slightest advantage, neither in terms of functionality nor in terms of performance.
 

 Cheers

 Jürgen

---In [hidden email], <wrljet@...> wrote :

 Something has changed with the HAO since the last Hercules build I used, so the
scripts for APL\360 no longer work.

Unfortunately I don't know how to tell what version I had before, other than it is
a sandhawk-master with files inside the zip dated 07/04/2013.  When I run that
hercules it just announces itself as 4.00.

I've had that source laying around for some time.  Just built it again a few days ago
and it does work correctly.

So I decided to try this with the latest 4.0 today from github and I'm getting some error messages I don't understand.

I'm guessing something has changed in the processing of the "hao cmd script"
but I don't have a clue what to change.

<<<
HHC02260I Script 1: begin processing file scripts/automatic_linux.rc
HHC01603I hao tgt IEE101A
HHC00077I The target was placed at index 0
HHC01603I hao cmd script scripts/jobnames
HHC00072E The command cmd given, but the command tgt was expected
HHC01603I hao tgt IKJ019I
HHC00077I The target was placed at index 0
HHC01603I hao cmd script scripts/sess
HHC00072E The command cmd given, but the command tgt was expected
HHC01603I hao tgt IEE334I
HHC00077I The target was placed at index 0
HHC01603I hao cmd script scripts/poweroff
HHC00072E The command cmd given, but the command tgt was expected
HHC01603I hao tgt APL     APL HAS
HHC00077I The target was placed at index 0
HHC01603I hao cmd script scripts/client_linux
HHC00072E The command cmd given, but the command tgt was expected
 >>>

 Bill

Reply | Threaded
Open this post in threaded view
|

Re: Running APL\360 on OS/360-MVT 21.8F: MVT for APL Version 2.00 available

Hercules390 - General mailing list
Jürgen,

Why?  For "hack value".

 For what it's worth, I've applied your patches to several other Hercules versions along the way
(just for the heck of it) and it worked fine.  I've even run it from a Raspberry Pi Zero.

Are your patches related to this HAO script problem and why it doesn't work with the
latest 4.0 trunk?

Bill

---In [hidden email], <winkelmann@...> wrote :

 Hi Bill
 

 APL\360 will work with the Hercules version that comes with it _only_... It would be quite an effort to get it to work with any other version of Hercules -- and then: Why would one want to do this? It wouldn't bring the slightest advantage, neither in terms of functionality nor in terms of performance.
 

 Cheers

 Jürgen





Reply | Threaded
Open this post in threaded view
|

Re: Running APL\360 on OS/360-MVT 21.8F: MVT for APL Version 2.00 available

Hercules390 - General mailing list
Hi Bill
 

 good to read you succeeded on other Hercules versions .
 

 My statement was about what the APL\360 package, which in fact is an appliance, supports. And that's just the Hercules version that comes with it. Of course I packaged the stuff with all source patches I created back then, and it's clear that applying these patches to other Hercules versions has a fair chance to work, as long as those Hercules versions don't differ too much from the base I used. But the point is, that I can't guarantee that this works, nor can I support this.
 

 So, basically you've now reached the point where current Hercules versions differ too much from the old base for my patches to work. Sad to say: So, you'll have to rework them if you want to continue going down this road, be it for the heck of it or not .
 

 Hint: First thing I would cross check would be the console telnet server.... I made many modifications there to get the APL\360 specific look and feel of the terminal to work and I'd really be surprised if that still worked with the new telnet handling that was introduced into Hyperion roughly a year ago.
 

 Cheers
 Jürgen

---In [hidden email], <wrljet@...> wrote :


 Jürgen,

Why?  For "hack value".

 For what it's worth, I've applied your patches to several other Hercules versions along the way
(just for the heck of it) and it worked fine.  I've even run it from a Raspberry Pi Zero.

Are your patches related to this HAO script problem and why it doesn't work with the
latest 4.0 trunk?

Bill

---In [hidden email], <winkelmann@...> wrote :

 Hi Bill
 

 APL\360 will work with the Hercules version that comes with it _only_... It would be quite an effort to get it to work with any other version of Hercules -- and then: Why would one want to do this? It wouldn't bring the slightest advantage, neither in terms of functionality nor in terms of performance.
 

 Cheers

 Jürgen






Reply | Threaded
Open this post in threaded view
|

Re: Running APL\360 on OS/360-MVT 21.8F: MVT for APL Version 2.00 available

Hercules390 - General mailing list
In reply to this post by Hercules390 - General mailing list
---In [hidden email], <wrljet@...> wrote :

> So I decided to try this with the latest 4.0
> today from github and I'm getting some
> error messages I don't understand.

> HHC01603I hao tgt IEE101A
> HHC00077I The target was placed at index 0
> HHC01603I hao cmd script scripts/jobnames
> HHC00072E The command cmd given, but the command tgt was expected

I compared the latest Hyperion
hao_cmd() to 3.07 and can't see
any significant change:

C:\scratch>diff -w one.txt two.txt
16c16
<     logmsg(HHCAO017E);
---
>     WRMSG(HHC00071, "E", "command", HAO_MAXRULE);
24c24
<     logmsg(HHCAO017E);
---
>     WRMSG(HHC00072, "E", "cmd", "tgt");
32c32
<     logmsg(HHCAO018E);
---
>     WRMSG(HHC00073, "E", "command");
41c41
<     logmsg(HHCA0026E);
---
>     WRMSG(HHC00078, "E");
51c51
<       logmsg(HHCAO019E, j);
---
>       WRMSG(HHC00076, "E", "command", "target", j);
63c63
<     logmsg(HHCAO015E, strerror(ENOMEM));
---
>     WRMSG(HHC00075, "E", "strdup()", strerror(ENOMEM));
68c68
<   logmsg(HHCAO020I, i);
---
>   WRMSG(HHC00077, "I", "command", i);

C:\scratch>



Also nothing much in hao_tgt:

C:\scratch>diff -w three.txt four.txt
18c18
<     logmsg(HHCAO010E);
---
>     WRMSG(HHC00071, "E", "target", HAO_MAXRULE);
28c28
<       logmsg(HHCAO011E);
---
>       WRMSG(HHC00072, "E", "tgt", "cmd");
37c37
<     logmsg(HHCAO012E);
---
>     WRMSG(HHC00073, "E", "target");
47c47
<       logmsg(HHCAO013E);
---
>       WRMSG(HHC00074, "E", j);
53c53
<   rc = regcomp(&ao_preg[i], arg, 0);
---
>   rc = regcomp(&ao_preg[i], arg, REG_EXTENDED);
62c62
<     logmsg(HHCAO014E, work);
---
>     WRMSG(HHC00075, "E", "regcomp()", work);
73c73
<       logmsg(HHCAO021E, i);
---
>       WRMSG(HHC00076, "E", "target", "command", i);
86c86
<     logmsg(HHCAO015E, strerror(ENOMEM));
---
>     WRMSG(HHC00075, "E", "strdup()", strerror(ENOMEM));
91c91
<   logmsg(HHCAO016I, i);
---
>   WRMSG(HHC00077, "I", "target", i);

C:\scratch>




I was surprised to see this bit of code
in hao_tgt() though (in both versions):

/* find a free slot */
  for(i = 0; ao_tgt[i] && i < HAO_MAXRULE; i++)

I expected to see a ";" at the end of that line
(as we see in hao_cmd()). But it should
work anyway.

Also, I have no idea how this code in
hao_tgt() 3.07 works:

/* check if not command is expected */
  for(j = 0; j < HAO_MAXRULE; j++)
  {
    if(ao_tgt[j] && !ao_cmd[j])
    {
      release_lock(&ao_lock);
      logmsg(HHCAO011E);
      return;
    }
  }

Same code is in Hyperion, and will
produce the error message you saw:

/* check if not command is expected */
  for(j = 0; j < HAO_MAXRULE; j++)
  {
    if(ao_tgt[j] && !ao_cmd[j])
    {
      release_lock(&ao_lock);
      WRMSG(HHC00072, "E", "tgt", "cmd");
      return;
    }
  }

But as I said, I expected that to equally
fail in 3.07, but 3.07 is somehow
working.

BFN. Paul.
Reply | Threaded
Open this post in threaded view
|

Re: Running APL\360 on OS/360-MVT 21.8F: MVT for APL Version 2.00 available

Hercules390 - General mailing list
---In [hidden email], <kerravon86@...> wrote :

> Same code is in Hyperion, and will
> produce the error message you saw:
 
Specifically this bit:

> if(ao_tgt[j] && !ao_cmd[j])

It seems to me that it is checking
that if there is any tgt without a
corresponding cmd, it will fail.
But the latest tgt will not have a
cmd yet!

However, now I get it.

It prevents another tgt command
coming through when there has
been no intervening "cmd".

So no idea what's going wrong.

BFN. Paul.
Reply | Threaded
Open this post in threaded view
|

Re: Running APL\360 on OS/360-MVT 21.8F: MVT for APL Version 2.00 available

Hercules390 - General mailing list
I just noticed, build that works includes a msg about the HAO thread starting:

HHC02260I Script 1: begin processing file scripts/automatic_linux.rc
HHC01603I hao tgt IEE101A
HHC00100I Thread id A9DEDB40, prio  0, name Hercules Automatic Operator started
HHC00077I The target was placed at index 0
HHC01603I hao cmd script scripts/jobnames
HHC00077I The command was placed at index 0

The new build that does not work doesn't have that msg.

There's a change to hao.c along the way:

From:

  if(!logger_status())
  {
    haotid = 0;
    return NULL;
  }

  WRMSG(HHC00100, "I", thread_id(), get_thread_priority(0), "Hercules Automatic Operator");

To:

  if(!logger_isactive())
  {
    haotid = 0;
    return NULL;
  }

  WRMSG(HHC00100, "I", thread_id(), get_thread_priority(0), "Hercules Automatic Operator");
Reply | Threaded
Open this post in threaded view
|

Re: Running APL\360 on OS/360-MVT 21.8F: MVT for APL Version 2.00 available

Hercules390 - General mailing list
Hi Bill
 

 The Hercules version that comes with the APL\360 package is based on a Sandhawk snapshot from 11/30/2012, shortly before Sandhawk became Hyperion. As opposed to Spinhawk (the 3.xx quality release line maintained by Roger Bowler) the old Sandhawk already included much (not all) of the HAO functionality of the later Hyperion, in particular running HAO in an independent thread, which produces upon startup the message you observed.
 

 Sandhawk's HAO functionality was a prerequisite for the automation framework I created for APL\360. So, you are observing here an incompatibility between Spinhawk and Hyperion/Sandhawk. My automation framework (neither in the APL\360 appliance, nor in the more recent TK4- MVS 3.8j appliance) never worked satisfactorily with Spinhawk, which was back in 2012 a main reason why I resorted to the somewhat risky Sandhawk development snapshot.
 

 So, apparently, you are intermixing different problems here: HAO problems with APL\360 are clearly to be expected when running on a Spinhawk based (3.xx) version of Hercules. This can never have worked since day one of the APL\360 appliance until today.
 

 So, the various builds you got to work must have been based on Hyperion snapshots. And my saying from yesterday referred to Hyperion, not to Spinhawk: To adapt the APL\360 appliance to work with a current Hyperion snapshot will most probably need a rework of the console/telnet related patches I created in 2012.
 

 I don't see a need doing this (and consequently will not do it) because it doesn't bring a usable advantage to the appliance's functionality or performance. However, if you want to do it (for the heck of it or for whichever other reason) then by all means: Do it! However, it wouldn't be a bad idea to feed back your reworked versions of the patches and your build experiences to the Hercules community, for example in the files section of this forum .

 

 Cheers
 Jürgen

---In [hidden email], <wrljet@...> wrote :


 I just noticed, build that works includes a msg about the HAO thread starting:

HHC02260I Script 1: begin processing file scripts/automatic_linux.rc
HHC01603I hao tgt IEE101A
HHC00100I Thread id A9DEDB40, prio  0, name Hercules Automatic Operator started
HHC00077I The target was placed at index 0
HHC01603I hao cmd script scripts/jobnames
HHC00077I The command was placed at index 0

The new build that does not work doesn't have that msg.

There's a change to hao.c along the way:

From:

  if(!logger_status())
  {
    haotid = 0;
    return NULL;
  }

  WRMSG(HHC00100, "I", thread_id(), get_thread_priority(0), "Hercules Automatic Operator");

To:

  if(!logger_isactive())
  {
    haotid = 0;
    return NULL;
  }

  WRMSG(HHC00100, "I", thread_id(), get_thread_priority(0), "Hercules Automatic Operator");
Reply | Threaded
Open this post in threaded view
|

Re: Running APL\360 on OS/360-MVT 21.8F: MVT for APL Version 2.00 available

Hercules390 - General mailing list
Fish substantially re-wrote the console telnet code so re-working patches may be challenging…

 

Dave

 

From: [hidden email] [mailto:[hidden email]]
Sent: 09 February 2017 08:52
To: [hidden email]
Subject: [hercules-390] Re: Running APL\360 on OS/360-MVT 21.8F: MVT for APL Version 2.00 available

 






Hi Bill

 

The Hercules version that comes with the APL\360 package is based on a Sandhawk snapshot from 11/30/2012, shortly before Sandhawk became Hyperion. As opposed to Spinhawk (the 3.xx quality release line maintained by Roger Bowler) the old Sandhawk already included much (not all) of the HAO functionality of the later Hyperion, in particular running HAO in an independent thread, which produces upon startup the message you observed.

 

Sandhawk's HAO functionality was a prerequisite for the automation framework I created for APL\360. So, you are observing here an incompatibility between Spinhawk and Hyperion/Sandhawk. My automation framework (neither in the APL\360 appliance, nor in the more recent TK4- MVS 3.8j appliance) never worked satisfactorily with Spinhawk, which was back in 2012 a main reason why I resorted to the somewhat risky Sandhawk development snapshot.

 

So, apparently, you are intermixing different problems here: HAO problems with APL\360 are clearly to be expected when running on a Spinhawk based (3.xx) version of Hercules. This can never have worked since day one of the APL\360 appliance until today.

 

So, the various builds you got to work must have been based on Hyperion snapshots. And my saying from yesterday referred to Hyperion, not to Spinhawk: To adapt the APL\360 appliance to work with a current Hyperion snapshot will most probably need a rework of the console/telnet related patches I created in 2012.

 

I don't see a need doing this (and consequently will not do it) because it doesn't bring a usable advantage to the appliance's functionality or performance. However, if you want to do it (for the heck of it or for whichever other reason) then by all means: Do it! However, it wouldn't be a bad idea to feed back your reworked versions of the patches and your build experiences to the Hercules community, for example in the files section of this forum   <https://s.yimg.com/ok/u/assets/img/emoticons/emo3.gif> .

 

Cheers

Jürgen

---In [hidden email] <mailto:[hidden email]> , <wrljet@... <mailto:wrljet@...> > wrote :

I just noticed, build that works includes a msg about the HAO thread starting:

HHC02260I Script 1: begin processing file scripts/automatic_linux.rc
HHC01603I hao tgt IEE101A
HHC00100I Thread id A9DEDB40, prio  0, name Hercules Automatic Operator started
HHC00077I The target was placed at index 0
HHC01603I hao cmd script scripts/jobnames
HHC00077I The command was placed at index 0

The new build that does not work doesn't have that msg.

There's a change to hao.c along the way:

From:

  if(!logger_status())
  {
    haotid = 0;
    return NULL;
  }

  WRMSG(HHC00100, "I", thread_id(), get_thread_priority(0), "Hercules Automatic Operator");

To:

  if(!logger_isactive())
  {
    haotid = 0;
    return NULL;
  }

  WRMSG(HHC00100, "I", thread_id(), get_thread_priority(0), "Hercules Automatic Operator");








Reply | Threaded
Open this post in threaded view
|

Re: Running APL\360 on OS/360-MVT 21.8F: MVT for APL Version 2.00 available

Hercules390 - General mailing list
Exactly my saying, Dave
 

 Cheers
 Jürgen

---In [hidden email], <dave.g4ugm@...> wrote :


 Fish substantially re-wrote the console telnet code so re-working patches may be challenging…
 
 Dave
 
 From: [hidden email] [mailto:[hidden email]]
Sent: 09 February 2017 08:52
To: [hidden email]
Subject: [hercules-390] Re: Running APL\360 on OS/360-MVT 21.8F: MVT for APL Version 2.00 available


 
 



 Hi Bill
 
 The Hercules version that comes with the APL\360 package is based on a Sandhawk snapshot from 11/30/2012, shortly before Sandhawk became Hyperion. As opposed to Spinhawk (the 3.xx quality release line maintained by Roger Bowler) the old Sandhawk already included much (not all) of the HAO functionality of the later Hyperion, in particular running HAO in an independent thread, which produces upon startup the message you observed.
 
 Sandhawk's HAO functionality was a prerequisite for the automation framework I created for APL\360. So, you are observing here an incompatibility between Spinhawk and Hyperion/Sandhawk. My automation framework (neither in the APL\360 appliance, nor in the more recent TK4- MVS 3.8j appliance) never worked satisfactorily with Spinhawk, which was back in 2012 a main reason why I resorted to the somewhat risky Sandhawk development snapshot.
 
 So, apparently, you are intermixing different problems here: HAO problems with APL\360 are clearly to be expected when running on a Spinhawk based (3.xx) version of Hercules. This can never have worked since day one of the APL\360 appliance until today.
 
 So, the various builds you got to work must have been based on Hyperion snapshots. And my saying from yesterday referred to Hyperion, not to Spinhawk: To adapt the APL\360 appliance to work with a current Hyperion snapshot will most probably need a rework of the console/telnet related patches I created in 2012.
 
 I don't see a need doing this (and consequently will not do it) because it doesn't bring a usable advantage to the appliance's functionality or performance. However, if you want to do it (for the heck of it or for whichever other reason) then by all means: Do it! However, it wouldn't be a bad idea to feed back your reworked versions of the patches and your build experiences to the Hercules community, for example in the files section of this forum .
 

 Cheers

 Jürgen

---In [hidden email] mailto:[hidden email], <wrljet@... mailto:wrljet@...> wrote :

 I just noticed, build that works includes a msg about the HAO thread starting:

HHC02260I Script 1: begin processing file scripts/automatic_linux.rc
HHC01603I hao tgt IEE101A
HHC00100I Thread id A9DEDB40, prio  0, name Hercules Automatic Operator started
HHC00077I The target was placed at index 0
HHC01603I hao cmd script scripts/jobnames
HHC00077I The command was placed at index 0

The new build that does not work doesn't have that msg.

There's a change to hao.c along the way:

From:

  if(!logger_status())
  {
    haotid = 0;
    return NULL;
  }

  WRMSG(HHC00100, "I", thread_id(), get_thread_priority(0), "Hercules Automatic Operator");

To:

  if(!logger_isactive())
  {
    haotid = 0;
    return NULL;
  }

  WRMSG(HHC00100, "I", thread_id(), get_thread_priority(0), "Hercules Automatic Operator");

 



 



Reply | Threaded
Open this post in threaded view
|

Re: Running APL\360 on OS/360-MVT 21.8F: MVT for APL Version 2.00 available

Hercules390 - General mailing list
Jürgen Winkelmann wrote:
> Dave Wade wrote:
>
> > Fish substantially re-wrote the console telnet code so
> > re-working patches may be challenging...
>
> Exactly my saying, Dave

If you could explain in simple words what changes are needed I'd be happy to make them.  The new telnet code is actually quite easy to work with once you get used to it.  It was after all designed (not by me!) to be extensible and easily customizable while still ensuring adherence to the protocol.

--
"Fish" (David B. Trout)
Software Development Laboratories
http://www.softdevlabs.com
mail: [hidden email]




Reply | Threaded
Open this post in threaded view
|

Re: Running APL\360 on OS/360-MVT 21.8F: MVT for APL Version 2.00 available

Hercules390 - General mailing list

 Hi Fish
 

 no problem at all: I didn't say that you should change anything at the new telnet code. I simply predicted Bill (and later on Dave articulated the same prediction) that adapting the APL\360 variant of console.c to the current Hyperion wouldn't be as trivial as his apparently successful earlier attempts. So, once again, no need to change anything for me...
 

 Cheers
 Jürgen

---In [hidden email], <david.b.trout@...> wrote :


 Jürgen Winkelmann wrote:
 > Dave Wade wrote:
 >
 > > Fish substantially re-wrote the console telnet code so
 > > re-working patches may be challenging...
 >
 > Exactly my saying, Dave
 
 If you could explain in simple words what changes are needed I'd be happy to make them. The new telnet code is actually quite easy to work with once you get used to it. It was after all designed (not by me!) to be extensible and easily customizable while still ensuring adherence to the protocol.
 
 --
 "Fish" (David B. Trout)
 Software Development Laboratories
 http://www.softdevlabs.com http://www.softdevlabs.com
 mail: fish@... mailto:fish@...
Reply | Threaded
Open this post in threaded view
|

Re: Running APL\360 on OS/360-MVT 21.8F: MVT for APL Version 2.00 available

Hercules390 - General mailing list

 I found the reason the HAO for APL\360 doesn't work with the newer code.

I'm definitely not asking for any changes.  I'm new to all this and don't yet understand
how it is intended to be used.  But, that said, perhaps someone in-the-known might look over
what I've found, just in case it is a bug.

What I described here was done debugging with Visual Studio.

The HAO line  "hao cmd script scripts/jobnames"  gives the error msg:

"HHC00072E The command cmd given, but the command tgt was expected"

Because hao_initialize() is called for every command, wiping out ao_tgt[] from the previous command.  Because of this code:

/* initialise hao */
  if(!haotid && !hao_initialize())
      WRMSG(HHC01404, "S");

Which does an early exit from the 'if' because haotid is NULL.

haotid is NULL because of code in hao_thread():

if(!logger_isactive())
  {
    haotid = 0;
    return NULL;
  }

Which returns NULL because the logger isn't running.

And, ultimately, the logger isn't running because of a change to impl.c which
turns off -d mode and skips starting the logger.  Previous to this change,
logger_init() was always called.

<<<
Change:  11/24/2015
SHA-1: 79a0a17354d9f5ca9ce6032d3448aad3fca59ce2

* Fix impl.c to process arguments early so that flags are set correctly.

This implements daemon mode as it should be.

Still a number of problems (sigsevs), but it is unclear which are due
to this fix and what if due to my environment, so we stash this for now.


    /* Set the daemon_mode flag indicating whether we running in
       background/daemon mode or not (meaning both stdout/stderr
       are redirected to a non-tty device). Note that this flag
       needs to be set before logger_init gets called since the
       logger_logfile_write function relies on its setting.
    */
    if (!isatty(STDERR_FILENO) && !isatty(STDOUT_FILENO))
        sysblk.daemon_mode = 1;       /* Leave -d intact             */

    /* Initialize the logmsg pipe and associated logger thread.
       This causes all subsequent logmsg's to be redirected to
       the logger facility for handling by virtue of stdout/stderr
       being redirected to the logger facility.
    */
    if (!sysblk.daemon_mode) logger_init();


  >>>

-Bill

Reply | Threaded
Open this post in threaded view
|

Re: Running APL\360 on OS/360-MVT 21.8F: MVT for APL Version 2.00 available

Hercules390 - General mailing list
---In [hidden email], <wrljet@...> wrote :

> What I described here was done debugging with Visual Studio.

Thanks for your effort in debugging.

From what you describe, this bug
should be visible for everyone, all
they need to do is start Hercules,
and before even IPLing they just
need to type:

hao tgt xxx
hao cmd yyy

and they should see the problem,
is that correct?

If so, which versions of Hercules
should show the problem?

BFN. Paul.
Reply | Threaded
Open this post in threaded view
|

Re: Running APL\360 on OS/360-MVT 21.8F: MVT for APL Version 2.00 available

Hercules390 - General mailing list
Paul,

The APL\360 setup, as original, used the Hercules -d command line switch.
Not fully understanding how this all works, I also have used -d.

If -d is left off, then things "just work" and the system runs as expected,
with the exception of showing the PSW and command input lines.
It IPLs and processes the scripts for input.

(Then gets to the point of needing the APL patches for the terminal, etc. which is expected,
and is not the issue here)

But with -d, then the problem can be demonstrated as you suggest.

version.c(778)    HHC01413I Hercules version 4.0.0.8707-g6fe56dc4-modified (4.0.0.8708)
version.c(790)    HHC01414I (C) Copyright 1999-2016 by Roger Bowler, Jan Jaeger, and others
version.c(802)    HHC01414I Commit 6fe56dc4e0422d8be24ba9bfe46f804ad109a4d3.
version.c(815)    HHC01414I After commit:  3 added/modified/deleted files.  2 untracked files.
...
script.c(913)     HHC02260I Script 1: begin processing file <stdin>
cmdtab.c(433)     HHC90000D DBG: RC = 0
hao tgt xxx
cmdtab.c(679)     HHC01603I hao tgt xxx
hao.c(276)        HHC00077I The target was placed at index 0
cmdtab.c(433)     HHC90000D DBG: RC = 0
hao cmd yyy
cmdtab.c(679)     HHC01603I hao cmd yyy
hao.c(309)        HHC00072E The command cmd given, but the command tgt was expected
cmdtab.c(433)     HHC90000D DBG: RC = 0


Bill
 

---In [hidden email], <kerravon86@...> wrote :

 ---In [hidden email] mailto:[hidden email], <wrljet@...> wrote :
 
 > What I described here was done debugging with Visual Studio.
 
 Thanks for your effort in debugging.
 
 From what you describe, this bug
 should be visible for everyone, all
 they need to do is start Hercules,
 and before even IPLing they just
 need to type:
 
 hao tgt xxx
 hao cmd yyy
 
 and they should see the problem,
 is that correct?
 
 If so, which versions of Hercules
 should show the problem?
 
 BFN. Paul.

Reply | Threaded
Open this post in threaded view
|

Re: Running APL\360 on OS/360-MVT 21.8F: MVT for APL Version 2.00 available

Hercules390 - General mailing list
---In [hidden email], <wrljet@...> wrote :

> But with -d, then the problem can be
> demonstrated as you suggest.

> version.c(778)    HHC01413I Hercules version 4.0.0.8707-g6fe56dc4-modified (4.0.0.8708)

> cmdtab.c(679)     HHC01603I hao tgt xxx
> hao.c(276)        HHC00077I The target was placed at index 0

> cmdtab.c(679)     HHC01603I hao cmd yyy
> hao.c(309)        HHC00072E The command cmd given, but the command tgt was expected


Hi Bill.

Thanks for documenting that. Can you
also confirm whether this problem only
exists on Hyperion or whether it also
occurs on Hercules 3.12 and 3.07?

Thanks. Paul.
Reply | Threaded
Open this post in threaded view
|

Re: Running APL\360 on OS/360-MVT 21.8F: MVT for APL Version 2.00 available

Hercules390 - General mailing list
In reply to this post by Hercules390 - General mailing list
Bill wrote:

> I found the reason the HAO for APL\360 doesn't work with
> the newer code.
>
> I'm definitely not asking for any changes.  I'm new to all
> this and don't yet understand how it is intended to be used.
> But, that said, perhaps someone in-the-know might look over
> what I've found, just in case it is a bug.
<snip>

I have looked over your analysis and it is definitely a bug.

While I have no idea how the current team(?) of Hyperion developers responsible for maintaining the OFFICIAL Hyperion development repository intend to address it, I myself have recently completed a series of commits to my UNOFFICIAL Fish-Git Hyperion fork that fixes the problem:

   https://github.com/Fish-Git/hyperion


--
"Fish" (David B. Trout)
Software Development Laboratories
http://www.softdevlabs.com
mail: [hidden email]




Reply | Threaded
Open this post in threaded view
|

Re: Running APL\360 on OS/360-MVT 21.8F: MVT for APL Version 2.00 available

Hercules390 - General mailing list
In reply to this post by Hercules390 - General mailing list
Paul,

The biggest reason for the -d problem went in with this commit to Hyperion:

Change:  11/24/2015
SHA-1: 79a0a17354d9f5ca9ce6032d3448aad3fca59ce2

(Fish has fixed the whole thing on his fork.)

I've never tried it with 3.07 or 3.12, as the APL\360 mods were applied to a sandhawk.

Bill

 

---In [hidden email], <kerravon86@...> wrote :

 ---In [hidden email] mailto:[hidden email], <wrljet@...> wrote :
 
 > But with -d, then the problem can be
 > demonstrated as you suggest.
 
 > version.c(778) HHC01413I Hercules version 4.0.0.8707-g6fe56dc4-modified (4.0.0.8708)
 
 > cmdtab.c(679) HHC01603I hao tgt xxx
 > hao.c(276) HHC00077I The target was placed at index 0
 
 > cmdtab.c(679) HHC01603I hao cmd yyy
 > hao.c(309) HHC00072E The command cmd given, but the command tgt was expected
 
 
 Hi Bill.
 
 Thanks for documenting that. Can you
 also confirm whether this problem only
 exists on Hyperion or whether it also
 occurs on Hercules 3.12 and 3.07?
 
 Thanks. Paul.

1234