D

2019-06-25 Thread glen herrmannsfeldt
Someone wrote: > Thought it was a double word > As in DS D It is a doubleword, specifically a long (64 bit) floating point type. And yes, DS D and DS 0D are commonly used when floating point is not intended. And as Fortran programmers would know, E is the short (32 bit)

debuggers

2018-08-06 Thread glen herrmannsfeldt
Bernd wrote: > We also had a self-written batch debugger, which relied completely on > S0C1 and SPIE to do its instrumentation and implement the breakpoints; > at least in the first version. Reminds me of a debugger I used with Orvyl/370 in S/370 days. I believe it used SVC 255 for

S0C1

2018-08-06 Thread glen herrmannsfeldt
Shmuel (Seymour J.) Metz wrote: > No; it is guarantied to generate a program 001 interrupt. > You only get an ABEND S0C1 if there is no SPIE/ESPIE exit. I suspect that some use S0C1 as shorthand, and as you note incorrect, description for program interrupt 1.j It might be that some SPIE

local labels

2018-08-05 Thread Glen
I believe that some DEC assemblers allow local labels of the form d$ where d is a digit from 0 to 9. Local labels need to be unique between any two normal labels. References to them would, then, only work between those same labels. -- glen

Re: Count Words?

2018-06-14 Thread glen herrmannsfeldt
Nothing against discussions on how to write fast code, but I don’t believe that this is normally necessary. About 20 years ago, I was counting words, not just how many, but how many of each word, on gigabytes of text. (Full text US patents for two years.) I did it in Java (with JIT compiler

Re: SDWA - SDWACMPC conversion

2018-04-16 Thread glen herrmannsfeldt
ight be used, that could be a problem. In addition, note the trial execution required when the translate table crosses a page boundary. But most likely more time has been spent discussing the efficiency than lost by any inefficiencies in the macro. —glen

tail recursion

2018-02-07 Thread Glen
Someone wrote:   "yes, I Had to do the Same, when I implemented Quicksort in REXX, because    the OS/2 Implementation of REXX only supported some 32 nesting Levels." The usual way to write recursive quicksort is to take advantage of tail recursion. Each call will generate two recursive

OOP

2018-02-06 Thread Glen
Someone wrote:   "OOP is, I think, quite a bit more than a calling standard - it boils down to an abstracted thought process that you simply cannot do in Assembler. As noted however, you an certainly write a dynamite compiler in HLASM that compiles a OOP language. " You can write OOP in

Re: Fair comparison C vs HLASM

2018-01-31 Thread Glen
On January 31, 2018 at 8:06 AM Kirk Wolf wrote: On Tue, Jan 30, 2018 at 9:39 PM, Jon Perryman wrote: C is a byte by byte language. Anything not hidden in a primitive or function must be processed byte by byte. In primitives and functions, the compiler can choose how to implement it. The point

Re: Fair comparison C vs HLASM

2018-01-31 Thread Glen
The 360/20 has MVC and CLC, but, strangely, not LR. (You can use SR and AR instead, so no need for LR.)

Re: Fair comparison C vs HLASM

2018-01-25 Thread Glen
On January 25, 2018 at 10:57 AM Bernd Oppolzer wrote: (snip) I would like to add: Mainframe ASSEMBLER IMHO is the only Assembler language (or the only instruction set) where humans can write reasonably programs in. All other Assemblers or instruction sets lack the same user friendliness and

Re: Fair comparison C vs HLASM

2018-01-25 Thread Glen
ler evaluated the whole thing at compile time (very slowly) and at run time printed out the precomputed value (fast). If Fortran H could do it 40 years ago, C compilers should do it today. (But I don't know that Fortran H did loop evaluation.) -- glen

Re: Load module

2017-11-14 Thread glen herrmannsfeldt
> Yes. My question was "In a called module, how do we determine > if it was called dynamically or statically” The whole design, since OS/360, is that you don’t. If you want to know, pass an argument to the load module that has a different value for the dynamic case. Using LINK, your module is

Re: Load module

2017-11-12 Thread glen herrmannsfeldt
> Sorry for the confusion caused. I strongly agree this is a basic question > and I too understand the Static, all the loads will be loaded in to main > memory and the load will be placed in to the main memory during execution > time, Dynamic. We can give Call macro and Load macro for the same. My

Re: Branch table

2015-10-02 Thread glen herrmannsfeldt
You need No, this loads R14 from an address near the beginning of memory. Pretty sneaky calling it R4, but the value is 4, so the result is actually L R14,4 or more precisely L R14,4(0,0) (unless you are on a PDP-10, where the registers are addressable as the first 16 locations in memory). -- glen

Re: local labels

2015-07-02 Thread glen herrmannsfeldt
://bitsavers.trailing-edge.com/pdf/dec/pdp11/rsx11/RSX11M_V2/DEC-11-OIMRA-A-D_MACRO_75.pdf -- glen

360/20 instruction macros

2015-05-26 Thread glen herrmannsfeldt
OK, here are the macros as I use them, with the test for host machine removed. They come from the HRTPB360 program that is part of HASP. Note that OS/360 assemblers support BAS and BASR, possibly for the 360/67. -- glen

BASR

2015-05-25 Thread glen herrmannsfeldt
believe these are from the 360/67. There are some other diagnoses. I believe one jumps to a specified address in microcode, but the useful addresses aren't well documented. More are for the later serial numbers, with microcode in core. -- glen

unusual instructions

2015-05-21 Thread glen herrmannsfeldt
of the other RR instructions. PACK, UNPK, MVO, ZAP, AP, SP, CP, MP, DP so full decimal arithmetic. MVI, MVN, MVZ, CLI, MVC, CLC, NI, OI, ED, BR, B, BASR, BAS. and then the model 20 specific: XIO, TIOB, HPR, SPSW. -- glen

360/20 instructions

2015-05-21 Thread glen herrmannsfeldt
assemblers.) The macros seem to still work with new assemblers. -- glen

absolute addressing, continued

2015-05-20 Thread glen herrmannsfeldt
such things, the PSW in the 360/20 does have an A bit, and I have run some decimal instructions with it set. -- glen

absolute addressing

2015-05-18 Thread glen herrmannsfeldt
: USING XXX,0,1 to see if it subtracts 4096, and generates displacements from register 1. -- glen

absolute addressing example doesn't work

2015-05-15 Thread glen herrmannsfeldt
it doesn't subtract 1000 from the displacements. -- glen

USING 0,0

2015-05-15 Thread glen herrmannsfeldt
don't see. This is my first time trying to assemble for absolute addresses. -- glen

Intel Virtualization

2015-03-25 Thread glen herrmannsfeldt
. If not for rentals of S/360, it might not have had the wait state. -- glen

Re: CE key

2015-03-12 Thread glen herrmannsfeldt
Here are pictures of the key switch: https://commons.wikimedia.org/wiki/File:Customer_Engineer_Key_Switch_for_IBM_S-360_computer,_view_1.JPG https://commons.wikimedia.org/wiki/File:Customer_Engineer_Key_Switch_for_IBM_S-360_computer,_view_2.JPG

new instructions (was: LZRG ...)

2015-03-11 Thread glen herrmannsfeldt
to do with bitwise AND and OR and most hardware. (Though you have to be able to get floating point values in a place where you can do bitwise operations.) -- glen

CE key

2015-03-11 Thread glen herrmannsfeldt
I wonder if anyone knows where to find CE keys for S/360 CPUs. thanks, -- glen

Re: CE key

2015-03-11 Thread glen herrmannsfeldt
. thanks, -- glen

Decimal intructions, was: Redesigning POps.

2014-11-14 Thread glen herrmannsfeldt
. -- glen

Reference summary for 360/20

2014-11-14 Thread glen herrmannsfeldt
The mention of instruction sets and green cards reminds me, does anyone have a (scan of) a 360/20 Reference Summary? Some places indicate that it might be yellow or red. -- glen

Trial execution

2014-05-21 Thread glen herrmannsfeldt
operands before any data is modified, and can generate the page fault interrupt at that time. -- glen

architecture book

2014-02-17 Thread glen herrmannsfeldt
to be available in the paperback international version for a lower price, and used in the hardback not so much more. -- glen

Re: OT: SI units and precision

2014-01-06 Thread glen herrmannsfeldt
are in hex. -- glen

Re: Why is division by zero permitted?

2013-10-23 Thread glen herrmannsfeldt
From C28-6514-5 on bitsavers, on page 16: Division by zero is permitted and yields a zero result. After that, (and presumably also earlier) it has to stay that way as code (macros) might depend on that. There is no reason given. -- glen

Re: handling a remainder form a DP

2013-07-18 Thread glen herrmannsfeldt
convert the already computed remainder by muliplying it by 1 (SRP) and then dividing it by the original divisor, 3, to get remainder 1. That is, considering the shift, 0. remainder 0.0001. -- glen

Re: Instruction Lists/Counts.

2013-02-15 Thread glen herrmannsfeldt
, not so bad. Since S/360 through z/ use different opcodes for different addressing modes of the same instruction, do you count those as separate instructions, or just one? (Compare to VAX, where there is an opcode byte and address mode byte.) -- glen

Re: OPSYN self execution

2013-01-18 Thread glen herrmannsfeldt
the \def operator. Now, what happens if OPSYN is OPSYNed? -- glen

more than one base register

2012-06-04 Thread glen herrmannsfeldt
the branch around the csect name. But, why the DS 0H instead of putting the label on the LM? -- glen

DS 0H

2012-06-04 Thread glen herrmannsfeldt
, in the general case I agree. It just seemed unneeded in this specific case. -- glen

bit masking

2012-05-28 Thread glen herrmannsfeldt
of bytes to IC and STC the boundary byte. -- glen

Re: MNEMONICS

2012-02-13 Thread glen herrmannsfeldt
, but the decrement and skip/jump are usual. Note that on the PDP-10, the JUMP instruction doesn't jump, the JUMPA instruction actually does, but usually JRST is used instead. -- glen

Underscore character

2012-01-12 Thread glen herrmannsfeldt
do that. -- glen

Re: FORTRAN II functions

2012-01-08 Thread glen herrmannsfeldt
and positive zero compare as equal. It is only with tests like SIGN(X) in Fortran that you can detect negative zero. Many years ago, I learned that the CALL/OS Fortran compiler (or, more likely, library) would print +0.0 if given a negative zero. No sign was printed for positive zero. -- glen

Fortran II functions

2012-01-07 Thread glen herrmannsfeldt
a negative floating point zero.) The arithmetic IF is still in Fortran, though its use is discourage and it is, I believe, on the obsolescence list. -- glen

calling convention

2011-10-14 Thread glen herrmannsfeldt
between C and other languages. -- glen

Re: EDIT instruction

2011-09-02 Thread glen herrmannsfeldt
, there are system that allow for dynamic reconfiguration, the hardware equivalent of self-modifying code! -- glen

Instruction selection

2011-08-30 Thread glen herrmannsfeldt
contribution to the CPU usage. (Most likely even in 1963.) Decisions that make sense one year might not the next. The S/360 instructions have done well over the years. -- glen

Re: CDS and alignment question

2010-08-17 Thread glen herrmannsfeldt
. On the other hand, consider all the wasted bits in even offset branch instructions. -- glen