Re: Review My Program

2015-12-12 Thread Fred van der Windt
You don't really need any code in the loadmodule at all, it only needs to contain the table (preceded a header that contains things like the table length, row length or whatever you need. Than you can do: WORKING-STORAGE SECTION. 01 FNC-PTR FUNCTION-POINTER. 01 PTR REDEFINES FNC-PTR POINTER.

Re: Elegant code to extract length+data fields? A small challenge.

2015-06-16 Thread Fred van der Windt
Here is a solution that works if we know we can access up to three bytes of memory after the last length field. That is, if we can always use Load to get the length field from memory: L R1,(,R14) R1 = Integer plus trailing junk LHI R15,4 S R15,0(,Rn) R15 = 4-length

Re: ASSEMBLER-LIST Digest - 21 Mar 2015 to 22 Mar 2015 (#2015-35)

2015-03-23 Thread Fred . van . der . Windt
Regular expressions is the most god-awful piece of clap-trap garbage I have ever laid my eyes on. Yeah for you PC programmers! Groans of disbelief from us mainframe programmers at the obtuse, obfuscating gibberish that RE is and that we will be forced into learning. We'll have to

Re: SIMD instructions uses; was Re: LZRG??? ....

2015-03-12 Thread Fred . van . der . Windt
On Mar 12, 2015, at 18:31, Gary Weinhold weinh...@dkl.com wrote: Tom Ross didn't explain it, but did say the compiler developer was quite enthusiastic about it. So we have to write a COBOL program, get the new compiler to generate the code, get a z13 and run z/XDC to see what the

Re: LZRG??? Does this mean that 56-bit addressing is a thing?

2015-03-12 Thread Fred . van . der . Windt
Pages 7 to 8 of this presentation: https://share.confex.com/share/124/webprogram/Session16609.html Evidently the code with SIMD instructions is the equivalent of what the millicode does for SRST, but I may have misinterpreted what was said. Using the millicoded instruction is evidently

Re: LZRG??? Does this mean that 56-bit addressing is a thing?

2015-03-11 Thread Fred . van . der . Windt
When Dan Greiner used to present new hardware instructions at SHARE, he used to mention some had uses in micro/millicode. He talked about instructions he had personally pushed for because he could see performance benefits by using them in millicode. Those of us attending couldn't think

Re: John Ehrman Assembler Book

2015-02-08 Thread Fred . van . der . Windt
Looks very impressive. I can't imagine how much work John put into this. Amazing. Fred! - ATTENTION: The information in this electronic mail message is private and confidential, and only intended for the addressee. Should you

Re: signoff

2014-12-30 Thread Fred . van . der . Windt
Sorry to see you go. Feels like the end of an era... Fred! - ATTENTION: The information in this electronic mail message is private and confidential, and only intended for the addressee. Should you receive this message by mistake, you

Re: Redesigning the Principles of Operation Manual

2014-11-16 Thread Fred . van . der . Windt
I think the PoP should be split in two documents. The instructions descriptions would form PoO Volume I, the other chapters PoO Volume II (or the other way around). The 'other' chapters are fine just the way the are and a PDF seems a good way to distribute the information. The description of

Re: Redesigning the Principles of Operation Manual

2014-11-15 Thread Fred . van . der . Windt
format does not work as a PDF (or similar format). It does, if you print it. Ok, You're probably right but is printing the pdf really the common way to use the document..? - ATTENTION: The information in this electronic mail

Re: Redesigning the Principles of Operation Manual

2014-11-14 Thread Fred . van . der . Windt
Could't agreement more: the two columns are a nightmare. They may have just fine in the printed edition 20 years ago but they are no good in an electronic version... I'm puzzled by the strong reactions this thread evokes. To me it is so obvious that the current format does not work as a PDF

Re: How to assign length of generated instructions to macro variable?

2014-08-19 Thread Fred . van . der . Windt
That is my intent. I'm asking for an address in (dynamically allocated) storage (RX-type address) and a length that the macro is allowed to use at that address. I want to make sure the code the macro generates does not write beyond that area. If the area is to short, I want to inform the

Re: Convert to base64 help (Cross posted from IBM-Main)

2014-08-08 Thread Fred . van . der . Windt
The internet sites use an ASCII or UTF representation of the text string you enter, the mainframe uses EBCDIC. The base64 result will differ because the source string has a different binary content. Sent from my iPhone On 8 aug. 2014, at 15:55, Ward, Mike S mw...@ssfcu.org wrote: Hello

Re: The rationale for using macros i

2014-07-29 Thread Fred . van . der . Windt
Thus I agree completely with EJ. You are not overly concerned about someone reading what command you entered (as they would likely be doing so only if analyzing a dump or trying to figure out what command was actually entered that did something you did not appreciate). But you should be

Re: The rationale for using macros i

2014-07-24 Thread Fred . van . der . Windt
And in principle I much prefer the communication between invoker and macro te be as explicit as possible. I see no value at all in allowing the programmer to omit one or two letters (or any amount) from the value of a keyword. The time saved by not having to press those few keys cannot

Re: MVCL

2014-05-21 Thread Fred van der Windt
I did a few timing test with MVCOS when it was introduced but it was so shockingly slow that I never touched it again. Many times slower than any construction based on MVCL or an executed MVC. Might be worth to have another look at it to see if it is faster these days. Fred! Sent from my

Re: Carmine Cannatello's book

2014-01-02 Thread Fred van der Windt
Well, I guess your still just the first person even though you sent your address several times...Sent from my new iPadOn Jan 2, 2014, at 21:43, "Kurt LeBesco" klebe...@gmail.com wrote:It is Jan 2 not Apr 1 right?On Jan 2, 2014 3:39 PM, "Kurt LeBesco" klebe...@gmail.com wrote:AgainOn Jan 2, 2014

Re: XML Parser in HLASM?

2013-07-25 Thread Fred van der Windt
Anything wrong with System XML? Perfectly feasible to use from HLASM. Cheers, Martin Yes, and extremely efficient if you implement a String ID exit. But it's called *z/OS* XML System Services so it might not available under zUnix? Fred!

Re: wish? for two new instructions.

2013-06-27 Thread Fred van der Windt
As we had been using the stack storage concept since the late 1970's, with a suite of entry, exit, call and DSA macros, it was relatively easy to make all of our assembler programs LE-compliant for our 1998 release. For most assembler programmers, however, the thought of LE seems akin to

Re: Good Performing Code (Was: Millicode Instructions)

2013-04-18 Thread Fred van der Windt
I understand also that unconditional branches are faster than conditional branches. So, which is faster: BNZ LABEL Branch most frequent or: BZ*+8fall through most frequent B LABEL Unconditional It might seem naïve but I would assume that 1 branch

Re: Good Performing Code (Was: Millicode Instructions)

2013-04-18 Thread Fred van der Windt
The two newest processors (z196 and zEC12) do out-of-order processing. Does that mean that we do not need to 'intermingle' instructions because the processor will do it for us? Fred! Sent from my new iPad On Apr 18, 2013, at 17:05, Phil Smith III li...@akphs.com wrote: John Ehrman wrote:

Re: Happy Gilmore (was Length question)

2013-04-15 Thread Fred van der Windt
One commentlets keep our discussions, professional and technical. Couldn't agree more. And it is also worth remembering that not all subscribers are native speakers. Posts that must be decoded with a dictionary aren't very helpful. Fred!

Re: Happy Gilmore (was Length question)

2013-04-15 Thread Fred van der Windt
Binyamin Dissen bdis...@dissensoftware.com http://www.dissensoftware.com Director, Dissen Software, Bar Grill - Israel Dissen Software, Bar Grill?! That *is* an unusual combination... Fred! - ATTENTION: The information in this

Re: Shifting The High Order Bits

2013-03-28 Thread Fred van der Windt
What about MVZ? Sent from my new iPad On Mar 28, 2013, at 21:23, esst...@juno.com esst...@juno.com wrote: Hi, does anyone have a routine, or event know an instruction that would shift the high order bits of n bytes either 8 bits of 4 bits to the left as a unit: for example X

Re: Shifting The High Order Bits

2013-03-28 Thread Fred van der Windt
Combined with an And-instruction to clear the zones in the last one or two bytes (pending on the amount you want to shift)... Sent from my new iPad On Mar 28, 2013, at 21:54, Fred van der Windt fred.van.der.wi...@mail.ing.nl wrote: What about MVZ? Sent from my new iPad On Mar 28, 2013

Re: Base registers

2012-06-18 Thread Fred van der Windt
All your bases are belong to us ? For great justice. Fred! - ATTENTION: The information in this electronic mail message is private and confidential, and only intended for the addressee. Should you receive this message by mistake,

Re: How good is the EX instruction?

2012-01-17 Thread Fred van der Windt
Having the CLC near the EX helps for cache. I also like to assemble it in-line because the right USINGs apply. We noticed that it is attractive to run over the CLC (with the length byte 0 as assembled) and then EX behind your back to do the real thing. More attractive than branch over the

Re: 128-bit arithmetic

2012-01-10 Thread Fred van der Windt
No use of the TIME macro need or should figure in this operation. Any leap-second corrections would, for example, be washed out by the subtraction: (T + L) - (t + L) = T + L - t - L = T - t. Why all this pother? And even if a leapsecond was inserted between the start- and endtime the

Re: Is a byte printable?

2011-12-29 Thread Fred van der Windt
The first paragraph of your post comes very close to a description of a (table-driven) Translate and Test, TRT, instruction. Use one instead of a hand-coded loop. It will be much faster and prettier. Use TROO: TROO can scan the string, copy it to the destination buffer and stop at

TYPECHECK(NOMAGNITUDE)

2011-12-28 Thread Fred van der Windt
I want to use MVI to assign the low byte of value that is larger than 255. This results in an ASMA031E error message: ** ASMA031E Invalid immediate or mask field I tried to use ACONTROL to circumvent this issue: PUSH ACONTROL ACONTROL TYPECHECK(NOMAGNITUDE) MVI

Re: TYPECHECK(NOMAGNITUDE)

2011-12-28 Thread Fred van der Windt
ACONTROL TYPECHECK(NOMAGNITUDE) As far as I understand this should instruct the assembler not to check the magnitude of the immediate value NOMAGNITUDE Specifies that the assembler not perform magnitude validation of signed immediate-data fields of machine instruction operands MVI does

Re: TYPECHECK(NOMAGNITUDE)

2011-12-28 Thread Fred van der Windt
It seems that you want an option like AUTOTRUNC rather than a TYPECHECK sub-option, which is intended to reduce confusion about what one might expect from different forms of immediate operand in some instructions. Whatever the name, I want to be able to code for example: MVI

Re: ASM Program to copy a file

2011-12-10 Thread Fred van der Windt
Yup, But the last time I tried it MVCOS was (much) slower than an EXecuted MVC. Don't remember how it compared to a MVCL(E). But it xould help out if you might need to move more than 256 bytes but not more than 4096 bytes. Fred! Sent from my iPad On Dec 10, 2011, at 21:01, Steve Comstock

Re: Edit instruction

2011-08-30 Thread Fred van der Windt
The comfort or discomfort of the ASSEMBLER programmers is not significant in this context, in my believe. Due to pipelining and cache issues, clever compilers will sooner or later outperform hand-written ASSEMBLER programs. The z196 is able to 'reorder' instructions for execution. Doesn't

Re: Pipeline question

2011-08-15 Thread Fred van der Windt
I need 27 instructions (maybe more because of two JO after TROT) see end of this post. But I am sure this code is faster than what was used before. The simple relation 256 input bytes processed by 27 instructions to create 192 bytes - should speed up the whole precess by a factor (even if

Re: Pipeline question

2011-08-13 Thread Fred van der Windt
Thanks, I'll run it when I'm back at work and report back the results. Fred! Sent from my iPhone On 13 aug. 2011, at 20:31, Martin Trübner mar...@pi-sysprog.de wrote: Fred, Code is in private mail -- Martin Pi_cap_CPU - all you ever need around MWLC/SCRT/CMT in z/VSE more at

Pipeline question

2011-08-09 Thread Fred van der Windt
This is a small part of code from a routine that decodes Base64 encoded data: DOFROM=(R2,) LGR0,0(,R4) Load 8 source bytes LAR4,8(,R4) R4 past 8 source bytes RISBG R0,R0,06,11,02aaa0ccc0ddd0eee0fff0ggg0hhh0 RISBG R0,R0,12,17,04

Re: Pipeline question

2011-08-09 Thread Fred van der Windt
it took me some time to actualy get what you do (not BASE64 - but the RISBG) my guess it is the RISBG itself which is very slow and apparently not very pipeline-freindly (and I have no idea about the reasons). How about using this LR1,0(,R4) Load 4 source bytes

Re: Pipeline question

2011-08-09 Thread Fred van der Windt
Ah, It seems I mangled the code a bit while copying it from the mainframe via notepad to Outlook (the asymmetry is a clue). The correct code is: DOFROM=(R2,) LMG R0,R1,0(,R4) Load 16 source bytes LAR4,16(,R4) RISBG R0,R0,06,11,02aaa0ccc0ddd0eee0fff0ggg0hhh0 RISBG

Re: No Subject

2011-07-26 Thread Fred van der Windt
Smarter phising, I'd guess. They now monitor the lists and determine whose id to spoof. Then post with that id in order to make people think it is legit. Not that much smarter: the mannen-tassen in the url is Dutch for Man purses. Would anybody in this group be that interested in man purses?

Re: philosopy question: use LE HLASM?

2011-07-06 Thread Fred van der Windt
I'd say it depends which part of USS you are intending to use and if you are intending linking to anything else. 99% of the services can be straight assembler with no need for the aggravation of LE. We use it for message queues, shared memory and sockets without any problems.

CPU Serialnumber

2011-03-28 Thread Fred van der Windt
I finished scanning the MVS Data Areas manuals for 'serial number' and found this: PSA.PSAPCCAV - PCCA PCCA.PCCACPID contains the serial number Seems I found what I was looking for? Fred! - ATTENTION: The information in this

Re: CPU Serialnumber

2011-03-28 Thread Fred van der Windt
I finished scanning the MVS Data Areas manuals for 'serial number' and found this: PSA.PSAPCCAV - PCCA PCCA.PCCACPID contains the serial number Seems I found what I was looking for? Ah, but WHICH serial number? How many digits? Cheers, Martin This field has a 12 digit CPU serial

Re: CPU Serialnumber

2011-03-28 Thread Fred van der Windt
We have a C function that creates UUIDs and it uses CSRSI. Works without problems. No ASSEMBLER needed, and no privileged instructions. That is kind of funny: we want to replace the C function we currently use. It's the last bit of C we have and it doesn't even meet the UUID type I

Re: ASSEMBLER-LIST Digest - 19 Jan 2011 to 20 Jan 2011 (#2011-10)

2011-01-21 Thread Fred van der Windt
I guess you're one step ahead of most of the inflexible ones (young and old). They haven't made this observation yet. Many may never see it this way Fred! Sent from my iPad On Jan 21, 2011, at 7:21, John Walker jwalker...@yahoo.com wrote: IF the younguns HAVE to have it THEIR way or they

CFC and UPT

2010-12-08 Thread Fred van der Windt
On Mon, 9 Nov 2009 16:44:12 -0600, Michael Stack li...@kcats.org wrote: This may help: http://www.kcats.org/share/sort/slides/SortAst.pdf . At the same SHARE meeting, Tom Harper gave a complementary session on how to implement the instructions. Mike Can somebody point me to that second

Re: CFC and UPT

2010-12-08 Thread Fred van der Windt
Thanks to Walt, Bob and Tom for sending me the document. I appreciate it a lot. Fred! Sent from my iPad On Dec 8, 2010, at 17:23, Walt Farrell wfarr...@us.ibm.com wrote: On Wed, 8 Dec 2010 04:26:47 -0500, Fred van der Windt fred.van.der.wi...@mail.ing.nl wrote: On Mon, 9 Nov 2009 16:44:12

SPM bug

2010-12-03 Thread Fred van der Windt
The syntax for AND and OR operators in the Strcutured Programming Macros is differs slightly between the UNTIL= and WHILE= options of the DO macro and every other SPM macro that supports conditions. This is not only very confusing but I was just bitten by the fact that the DO macro may silently

Re: SPM bug

2010-12-03 Thread Fred van der Windt
:But why is this error not properly signalled? Because it wasn't coded to do it. Anyway, I asked the 'right person in our organization' to report it to IBM as a bug in the HLASM Toolkit. Fred! - ATTENTION: The information in

Re: SPM bug

2010-12-03 Thread Fred van der Windt
Ouch! Otiose tokens should not be silently ignored. Would: DO UNTIL=((CR,R1,LT,R2),AND,(CR,R3,LT,R4)) .. have produced the intended result? Yes it does: DO UNTIL=((CR,R1,LT,R2),AND,(CR,R3,LT,R4)) +...@lb2 DC 0H : : ENDDO +...@lb3

Re: SPM bug

2010-12-03 Thread Fred van der Windt
Trouble comes when the SPMs are used by people who do not/cannot write macro definitions. Ah. So if I code a macro invocation with parameters that do not meet the documented specification of that macro, but the macro ignores the incorrect parameters and uses the remaining parameters to

Re: Instruction Set Architecture (Subject: corrected)

2010-09-09 Thread Fred van der Windt
Well As demonstrated by this very discussion the first form will baffle just about any programmer. And the 'missing' comma is (at least with us) a bad habit as well. LAR3,-4(R2) Set R3 to 4 less than R2 or: LAR3,4092(R1,R2) Set R3 to 4 less than R2

Re: Why do I get ASMA323W on LLILF?

2010-09-09 Thread Fred van der Windt
But you can only walk 4095 meters, can't you? Way short of the circumference of the globe. but you forget scale. Assume circumference is 4096 units and apply the above In this case the circumference is 2147483648 steps. So 4095 steps isn't going to get me very far. Unless you would want

Re: Instruction Set Architecture

2010-09-08 Thread Fred van der Windt
I'm surprised that this would assemble. R:F 0 20 USING TEST5,R15 21 * 4810 F0100001022 LHR1,=H'-4096' R:1 FFF000 23 USING -4096,R1 0004 4120 F004

Re: Why do I get ASMA323W on LLILF?

2010-09-08 Thread Fred van der Windt
close, but no cigar. Addres arithmetic wraps. And if you wrap nearly all the way around, you effectively end up with an address slightly lower than the starting point. To my mind, this is *effectively* subtraction, even when *technicall* the processor performed addition. If you walk forward

Re: The new POO (Props / ProP ) is available

2010-09-06 Thread Fred van der Windt
What if I can't sign in with my current IBM ID? If your IBM ID is over 32 characters or contains an @ symbol, it may not give you access to certain password-protected parts of ibm.com. This is a known, temporary condition, where a shorter, simpler IBM ID is required to access those areas

Re: The new POO (Props / ProP ) is available

2010-09-06 Thread Fred van der Windt
I was able to download it last night. I didn't know about rapidshare; so I Googled and went to the sight and uploaded the doc; you can find it at: http://rapidshare.com/files/417022215/SA22-7832-08.pdf but it can only be downloaded 10 times! I'm trying to set up one of their free

Re: Efficient Memory List

2010-08-23 Thread Fred van der Windt
3) The binary search from step 1 indicates where the new entry should be inserted. To add the entry to the list, individual entries are moved one at a time (to avoid overlapping moves) to open a spot in the list for the new entry. Store the list starting at the end of the memory area. That