开云体育

ctrl + shift + ? for shortcuts
© 2025 开云体育

Re: NESTED SUBROUTINES

 

[...]
main -> sub1 -> sub2 -> sub1 -> main
How do you have your subroutine linkage designed? Simple saving of return register? If so, then that's your problem.

Sub1 saves its return to main, but as soon as sub2 then calls sub1, sub1 saves its return to sub2, wiping out (overlaying/destroying) its previously saved return to main. End result is when sub2 returns back to ITS caller (sub1), sub1 then ends up returning back to sub2 again, not main.

You need to use some type of "stack" approach. You need to maintain some type of "nesting level" value that is incremented upon entry and decremented upon exit, which is used to index into an array of return addresses (i.e. the "stack") so you can return back to the correct caller depending on the nesting level.

--
"Fish" (David B. Trout)
Software Development Laboratories

mail: fish@...


NESTED SUBROUTINES

 

I am looking for documentation/examples of how to nest
multiple layers of subroutines in DOS/VS ASM.

I can do one-nesting, but if I try to nest two levels

main -> sub1 -> sub2 -> sub1 -> main

the system seems to hang or loop.? Trying to figure
it out for an app that I am writing.

Cheers
tom c


Re: BUFF40 jcl/documentation Fortran

 

Hi,

I managed to get BUFF40S to work. It probably will not work on
DOS/VS. I used DOS/360. You need to define a very small supervisor.
It seems it can't be bigger then 16K. BUFF40 does some LH to load
pointers to data, if they end up being over 16K they get sign
extended and will cause an address exception. Note this will not
work under POWER.

// ASSGN SYS012,X'191' <---- Disk for BUFF40S file.
// ASSGN SYS013,X'00C' <---- Where to get input from
// DLBL BUFF40S,'BUFF40.SPOOL.FILE',0,SD
// EXTENT SYS012,WRK14A,,,1100,1000 <- 10 to 1000
// UPSI 10000000 <--- Needed for format spool file.
// EXEC TSTFORT
$COMPILE
< Program goes here>
$EXECUTE
< Data goes here>
< Repeat COMPILE/EXECUTE as needed>
$COMPILEX
/*
/&

Compile supports the following options:

T=# number of seconds to allow to compile
P=# number of pages of output to allow
C=# number of input cards allowed.
E=# number of errors to allow.
L=1 enable listing.

Defaults: T=20,P=5,C=50,E=25,L=1

Many thanks to Rene Ferland for helping with how to define a
file in DOS.

Rich

-
==========================================================================
Richard Cornwell
rich@...

LinkedIn:
==========================================================================


Re: BUFF40 jcl/documentation Fortran

 

Hi,

I got it to start. It needs a file BUFF40S with between 10 and 100
cylinders. I am not sure how to create files on DOS yet. If anyone
can provide the JCL to make this. It directly calls $$BOPEN on the
file.

The first line of the job should be $COMPILE ????? starting after
column 10.

Rich


"There is no doc other than what you find in the source code.
BUFF40 is a student "compile & go" system designed for high
performance on small programs. It does not generate an object deck.
The language supported is also a slight variant on standard FORTRAN
IV (for example, in a few cases blanks are significant, whereas in
proper FORTRAN IV they never are). This was done in order to catch
and try to correct many common student errors and allow execution
to proceed. This was from a time when a student would typically
submit his program on punch cards and get output back the next day,
so it was frustrating to make a simple typo and have no execution."
Yes, as I said back in 2007, there is no doc other than the source
code. But there is a lot of info in that very tight source, and the
line-by-line comments are pretty good if you have experience in that
dense style of code.

On Tue, Sep 27, 2022 at 2:36 PM Tom Chandler <tchandler48@...>
wrote:

I have BUFF40 compiling and linking via dos/vs. Does anyone have
any jcl and/or documentation on how to run and use this code.
By the way, I wouldn't say "compiling and linking" about BUFF40,
unless you are talking about building it. It's very much a compile
and go system - the FORTRAN is compiled into storage and executed
there. There is no object deck produced, and so nothing to link.

I had thought a couple of people said they had got BUFF40 running not
too long after I posted the source, but re-reading, I'm not sure
anyone actually got beyond compiling it. :-( Perhaps you can be the
first!

Tony H.




--
==========================================================================
Richard Cornwell
rich@...

LinkedIn:
==========================================================================


Re: BUFF40 jcl/documentation Fortran

 

On Sun, 2 Oct 2022 at 17:14, Joe Monk <joemonk64@...> wrote:
From an old yahoo groups message:

"There is no doc other than what you find in the source code. BUFF40 is
a student "compile & go" system designed for high performance on small
programs. It does not generate an object deck. The language supported
is also a slight variant on standard FORTRAN IV (for example, in a few
cases blanks are significant, whereas in proper FORTRAN IV they never
are). This was done in order to catch and try to correct many common
student errors and allow execution to proceed. This was from a time
when a student would typically submit his program on punch cards and
get output back the next day, so it was frustrating to make a simple
typo and have no execution."

Yes, as I said back in 2007, there is no doc other than the source code. But there is a lot of info in that very tight source, and the line-by-line comments are pretty good if you have experience in that dense style of code.

On Tue, Sep 27, 2022 at 2:36 PM Tom Chandler <tchandler48@...> wrote:
I have BUFF40 compiling and linking via dos/vs.? Does anyone have
any jcl and/or documentation on how to run and use this code.

By the way, I wouldn't say "compiling and linking" about BUFF40, unless you are talking about building it. It's very much a compile and go system - the FORTRAN is compiled into storage and executed there. There is no object deck produced, and so nothing to link.

I had thought a couple of people said they had got BUFF40 running not too long after I posted the source, but re-reading, I'm not sure anyone actually got beyond compiling it. :-( Perhaps you can be the first!

Tony H.


Re: BUFF40 jcl/documentation Fortran

 

开云体育

>This was from a time when a student would typically submit his program on punch cards and
>get output back the next day,

?

Such luxury. I had to put coding forms in the post. It was Fortran II so things like

?

F=G*10

?

Usually fails……

?

Dave

?

From: [email protected] <[email protected]> On Behalf Of Joe Monk
Sent: 02 October 2022 22:14
To: [email protected]
Subject: Re: [H390-DOSVS] BUFF40 jcl/documentation Fortran

?

From an old yahoo groups message:

?

"There is no doc other than what you find in the source code. BUFF40 is
a student "compile & go" system designed for high performance on small
programs. It does not generate an object deck. The language supported
is also a slight variant on standard FORTRAN IV (for example, in a few
cases blanks are significant, whereas in proper FORTRAN IV they never
are). This was done in order to catch and try to correct many common
student errors and allow execution to proceed. This was from a time
when a student would typically submit his program on punch cards and
get output back the next day, so it was frustrating to make a simple
typo and have no execution."

?

Joe

?

On Tue, Sep 27, 2022 at 2:36 PM Tom Chandler <tchandler48@...> wrote:

I have BUFF40 compiling and linking via dos/vs.? Does anyone have
any jcl and/or documentation on how to run and use this code.

Thank you
tom c


Re: BUFF40 jcl/documentation Fortran

 

From an old yahoo groups message:

"There is no doc other than what you find in the source code. BUFF40 is
a student "compile & go" system designed for high performance on small
programs. It does not generate an object deck. The language supported
is also a slight variant on standard FORTRAN IV (for example, in a few
cases blanks are significant, whereas in proper FORTRAN IV they never
are). This was done in order to catch and try to correct many common
student errors and allow execution to proceed. This was from a time
when a student would typically submit his program on punch cards and
get output back the next day, so it was frustrating to make a simple
typo and have no execution."

Joe

On Tue, Sep 27, 2022 at 2:36 PM Tom Chandler <tchandler48@...> wrote:
I have BUFF40 compiling and linking via dos/vs.? Does anyone have
any jcl and/or documentation on how to run and use this code.

Thank you
tom c


Re: BUFF40 jcl/documentation Fortran

 

开云体育

I’d really like to help you Tom but I can’t find my documentation.

?

This is a paragraph from my webpage that I wrote for my 50th anniversary at SRU.

?

The first computer usage by students was in 1970 for FORTRAN classes.? Their programs were compiled with a stand-alone program called RAX.? We had to shutdown DOS in order to??RAX.? Later we acquired BUFF40, a fast FORTRAN compiler from the State University of New York at Buffalo.? It ran in DOS/360.

?

I don’t remember for sure but I think there might have been a WATFOR or WATFIV compiler that would run on DOS that came after BUFF40.

?

/Fran Hensler at Slippery Rock University of Pennsylvania USA for 52 years??????

mailto:RockFox@...?? ?

?????????????????"Yes, Virginia, there is a Slippery Rock"

?

?

From: [email protected] <[email protected]> On Behalf Of Tom Chandler
Sent: Tuesday, September 27, 2022 3:36 PM
To: [email protected]
Subject: [H390-DOSVS] BUFF40 jcl/documentation Fortran

?

I have BUFF40 compiling and linking via dos/vs.? Does anyone have
any jcl and/or documentation on how to run and use this code.

Thank you
tom c


BUFF40 jcl/documentation Fortran

 

I have BUFF40 compiling and linking via dos/vs.? Does anyone have
any jcl and/or documentation on how to run and use this code.

Thank you
tom c


Re: IBM 370/130 + DOS/VS

 

Many thanks Fish!
Best Regards
Roberto


Re: IBM 370/130 + DOS/VS

 

Roberto Sancho Villa wrote:

[...]
I've released a new Control Panel for IBM 370/138
()
That is SO COOL!!! :)))

--
"Fish" (David B. Trout)
Software Development Laboratories

mail: fish@...


IBM 370/130 + DOS/VS

 

Hi Guys

?

I’ve released a new Control Panel for IBM 370/138 ()

?

It includes the bugfixes done by Richard Cornwell in his Sims repo.

Now simulator can sysgen and boot DOS/VS

?

As usual, ready to run packages are available.

Best Regards

Roberto


Re: PL-360

 

Hi Tom,

You mentioned that you would upload a copy of PL-360 if any interest.

I am certainly interested so please upload the zip file mentioned.

Best regards,

Steen


Re: DOS/VSE & VM SQL Issue

 

开云体育

I would suggest that because the local VSE database is being used, ?IUCV is definitely NOT being used. ?Whether it CAN be used is an unanswered question. ?Or how to enable it within the database client implementation.

Harold Grovesteen

On Fri, 2022-05-20 at 05:48 -0700, Jim Snellen wrote:

I’m not an expert either, in fact, most of my background is in applications. I only dabble in systems.?

I really don’t know if IUCV is being used. Sorry, I cannot expand on APPLID in the ARISDIRD macro. ?I was hoping that someone out there has experience with using SQL in a VM/VSE environment. The settings I have specified is the result of pouring through the manuals.?


Re: DOS/VSE & VM SQL Issue

 

I’m not an expert either, in fact, most of my background is in applications. I only dabble in systems.?

I really don’t know if IUCV is being used. Sorry, I cannot expand on APPLID in the ARISDIRD macro. ?I was hoping that someone out there has experience with using SQL in a VM/VSE environment. The settings I have specified is the result of pouring through the manuals.?


Re: DOS/VSE & VM SQL Issue

 

开云体育

I am not a VSE nor VM expert. ?I have a lot of communications experience. ?While you have AUTHORIZED the database client (on a VSE virtual machine) access to the database server via IUCV in another virtual machine, is the database client actually using IUCV?

I ask this question because the term APPLID as I understand it implies a VTAM based communication. ?In light of the fact that the server on VSE is being used, can you expand on the meaning of the term APPLID as used in the context of the ARISDIRD.A macro?

Harold Grovesteen

On Wed, 2022-05-18 at 18:02 -0700, Jim Snellen wrote:

[Edited Message Follows]

i have a SQL database running on both VSE and VM.? I can access the VSE db server via a preprocessed, compiled, and cataloged batch program.? I can also access the VM db via ISQL or a COBOL program that has been preprocessed, compiled, and executed under CMS.? The documentation suggests I should be able to access the VM db server from a VSE batch program, however, all of my attempts have failed, and I keep getting data from the VSE db.? I will work on the online (CICS) access later but would welcome any suggestions or tips!

I am working with the sample tables on both systems.? The COBOL programs were provided by IBM to test the respective installations.? I have changed the last name on one of the sample tables (EMPLOYEE) on VM to determine if I am accessing the correct db when executing the VSE batch job which simply prints a telephone listing report. Since both databases are named SQLDBA, (somewhate confusing for me) I'm using the settings below:
FOR VM:
USER SQLMACH SQLMACH 64M 128M G?? ? ? ? ? ? ? ? ? ?
OPTION MAXCONN 26? ? ? ? ? ? ? ?
IUCV ALLOW? ? ? ? ? ? ? ? ? ? ??
IUCV *IDENT SQLDBA GLOBAL? ? ? ?
etc.
USER VSEVM VSE 256M 256M G?
IUCV SQLMACH?<<---- ?? allows IUCV communication to SQLMACH ??
etc.

FOR VSE:
SET XPCC TARGET SQLMACH TO APPCVM TARGET SQLDBA? ?<<---- specified during IPL

ARISDIRD.A DB2 for VSE Database Directory
??
*TPN? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??
*|? ? APPLID? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??
*|? ? |? ? ? ? SYSDEFAULT * = system default? ? ? ? ? ? ? ? ? ? ? ? ? ??
*|? ? |? ? ? ? |DBNAME? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??
*|? ? |? ? ? ? ||? ? ? ? ? ? ? ? ? PDEFAULT? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
*|? ? |? ? ? ? ||? ? ? ? ? ? ? ? ? |? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??
*|? ? |? ? ? ? ||? ? ? ? ? ? ? ? ? |? PRIVLEGE? ? ? ? ? ? ? ? ? ? ? ? ??
*|? ? |? ? ? ? ||? ? ? ? ? ? ? ? ? |? | SYSID? ? ? ? ? ? ? ? ? ? ? ? ? ?
*|? ? |? ? ? ? ||? ? ? ? ? ? ? ? ? |? | |? ? REMTPN? ? ? ? ? ? ? ? ? ? ?
*|? ? |? ? ? ? ||? ? ? ? ? ? ? ? ? |? | |? ? |? ? ? ? ? ? ? ? ? ? ? ? ??
*? ? ? ? ? ? 1? 1? ? ? ? ? ? ? ? 3 33 3 4? 4 4? ? ? ? ? ? ? ? ? ? ? ? ??
*2..._7......4_.7................4_67_9_1..4_6..........................
? ? ? SQLMACH? *SQLDBA? ? ? ? ? ? ? ? ? ? ? ? ? ??<<---- added to ARISDIRD macro? ? ? ? ? ? ? ? ? ? ?
?÷6DB SYSARI00? SQLDS? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?

What am I missing and/or what is in error?

TITLE INCORRECT, SHOULD BE VSE & VM ISSUE
? ? ? ? ? ??
? ? ? ? ? ? ? ? ? ? ??


DOS/VSE & VM SQL Issue

 
Edited

i have a SQL database running on both VSE and VM.? I can access the VSE db server via a preprocessed, compiled, and cataloged batch program.? I can also access the VM db via ISQL or a COBOL program that has been preprocessed, compiled, and executed under CMS.? The documentation suggests I should be able to access the VM db server from a VSE batch program, however, all of my attempts have failed, and I keep getting data from the VSE db.? I will work on the online (CICS) access later but would welcome any suggestions or tips!

I am working with the sample tables on both systems.? The COBOL programs were provided by IBM to test the respective installations.? I have changed the last name on one of the sample tables (EMPLOYEE) on VM to determine if I am accessing the correct db when executing the VSE batch job which simply prints a telephone listing report. Since both databases are named SQLDBA, (somewhate confusing for me) I'm using the settings below:
FOR VM:
USER SQLMACH SQLMACH 64M 128M G?? ? ? ? ? ? ? ? ? ?
OPTION MAXCONN 26? ? ? ? ? ? ? ?
IUCV ALLOW? ? ? ? ? ? ? ? ? ? ??
IUCV *IDENT SQLDBA GLOBAL? ? ? ?
etc.
USER VSEVM VSE 256M 256M G?
IUCV SQLMACH?<<---- ?? allows IUCV communication to SQLMACH ??
etc.

FOR VSE:
SET XPCC TARGET SQLMACH TO APPCVM TARGET SQLDBA? ?<<---- specified during IPL

ARISDIRD.A DB2 for VSE Database Directory
??
*TPN? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??
*|? ? APPLID? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??
*|? ? |? ? ? ? SYSDEFAULT * = system default? ? ? ? ? ? ? ? ? ? ? ? ? ??
*|? ? |? ? ? ? |DBNAME? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??
*|? ? |? ? ? ? ||? ? ? ? ? ? ? ? ? PDEFAULT? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
*|? ? |? ? ? ? ||? ? ? ? ? ? ? ? ? |? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??
*|? ? |? ? ? ? ||? ? ? ? ? ? ? ? ? |? PRIVLEGE? ? ? ? ? ? ? ? ? ? ? ? ??
*|? ? |? ? ? ? ||? ? ? ? ? ? ? ? ? |? | SYSID? ? ? ? ? ? ? ? ? ? ? ? ? ?
*|? ? |? ? ? ? ||? ? ? ? ? ? ? ? ? |? | |? ? REMTPN? ? ? ? ? ? ? ? ? ? ?
*|? ? |? ? ? ? ||? ? ? ? ? ? ? ? ? |? | |? ? |? ? ? ? ? ? ? ? ? ? ? ? ??
*? ? ? ? ? ? 1? 1? ? ? ? ? ? ? ? 3 33 3 4? 4 4? ? ? ? ? ? ? ? ? ? ? ? ??
*2..._7......4_.7................4_67_9_1..4_6..........................
? ? ? SQLMACH? *SQLDBA? ? ? ? ? ? ? ? ? ? ? ? ? ??<<---- added to ARISDIRD macro? ? ? ? ? ? ? ? ? ? ?
?÷6DB SYSARI00? SQLDS? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?

What am I missing and/or what is in error?

TITLE INCORRECT, SHOULD BE VSE & VM ISSUE
? ? ? ? ? ??
? ? ? ? ? ? ? ? ? ? ??


Re: PL-360

 

On Sat, May 14, 2022 at 5:19 AM Steen Hansen <steenshansen@...> wrote:

Thanks for the clarification. I had the impression that PL/360 was an IBM product.
Don't confuse PL/360 with PL/S et al.

PL/360 has an Algol-ish syntax, and PL/S has essentially that of PL/I.

Tony H.


Re: PL-360

 

it was available from IBM as a Type III program contributed by Stanford.

Joe

On Sat, May 14, 2022 at 4:19 AM Steen Hansen <steenshansen@...> wrote:
Thanks for the clarification. I had the impression that PL/360 was an IBM product.

Best regards,

Steen


Re: PL-360

 

Thanks for the clarification. I had the impression that PL/360 was an IBM product.

Best regards,

Steen