Re: [U2] srs4uv.com status [Was: Corrupted object in global catalog]
I wrote a decompiler for R83, never marketed it, just used it for my own play and insight. -Original Message- From: Gyle Iverson To: u2-users Sent: Sat, Jan 5, 2013 12:29 pm Subject: Re: [U2] srs4uv.com status [Was: Corrupted object in global catalog] You are spot on Ian. It was a fun and tedious exercise. And you are right. The internals of each interpreter and its op codes are quite different. I wanted to answer the same question of how does one thing turn into another. And, can I reverse that? The first decompiler was for Prime INFORMATION in 1982. There wasn't documentation available to me per se. However, looking through their compiled libraries you could glean the names of the op codes. Returning the statements and functions was straight forward. Recovering the logical structure of the program was the heavy lift. Way back then, what discussions I could find on logical structure recovery all said it was impossible. I discovered a way to take the distinct graph patterns associated with each compiled structure and reconstruct the original structure. That was a fun puzzle. Still today, most decompilers only return GOTO-filled source code. I always insisted on no-GOTOs (unless the original code was a pile of spaghetti originally) and there was no other way to reconstruct the program. The UniVerse decompiler came out in 1992. VMark was nice enough to leave a lot of useful information in some C language header files distributed with the product. I briefly looked at doing a UniData decompiler and never found sufficient time to dedicate to cracking that. Lee Leitner had a UniData decompiler on the market for a while. -Original Message- From: u2-users-boun...@listserver.u2ug.org [mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of McGowan, Ian Sent: Friday, January 04, 2013 8:00 PM To: U2 Users List Subject: Re: [U2] srs4uv.com status [Was: Corrupted object in global catalog] Seems like a fun, if tedious, exercise in understanding the internals of compiled code. Surely different between ud and uv, given their lineage. Are there any tools or documentation available to give a head start? Does the debugger leak any information on the internals? It comes down to the question of how does: # cat IAN.TEST PRINT "HELLO" Turn into: # od -c _IAN.TEST 000 001 ? ÿ ÿ \0 p \0 001 \0 \0 \0 \0 \0 \0 \0 \0 020 \0 003 \0 001 \0 \0 \0 0 \0 \0 \0 \0 \0 \0 \0 040 / i n f o / D E V E L / B P . D 060 E V / I A N . T E S T \0 - 1 \0 H 100 E L L O \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 120 \0 004 \0 033 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 140 \0 005 \0 002 \0 \0 \0 034 ÿ ÿ ÿ ÿ \0 \0 \0 \0 160 \0 004 \0 005 \0 \0 \0 037 \0 \0 \0 \0 \0 \0 \0 \0 200 001 214 \0 001 \0 001 \0 005 \0 \0 \0 020 \0 001 \0 , 220 \0 001 \0 020 \0 002 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 -Original Message- From: u2-users-boun...@listserver.u2ug.org [mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of David Wolverton Sent: Friday, January 04, 2013 3:11 PM To: 'U2 Users List' Subject: Re: [U2] srs4uv.com status [Was: Corrupted object in global catalog] Question on the Source Code Recovery -- is the logic such that it could be 'open sourced' or GPL'd? Or is there another way to do the source recovery? That is, were the mechanics sold to Rocket Software Professional Services? If not, could they be sold to another company is someone wanted to keep the product active? While I don't have a need now, I like to think there is a place to go for 'the unthinkable' if it happened! Just wondering!! I don't know the circumstances that led to withdrawing this service -- I would think it would rarely be needed, but when it was, would be invaluable. Seems a loss if it's now got to be re-written from scratch!! -Original Message- From: u2-users-boun...@listserver.u2ug.org [mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of Gyle Iverson Sent: Thursday, January 03, 2013 7:04 AM To: u2-users@listserver.u2ug.org Subject: [U2] srs4uv.com status [Was: Corrupted object in global catalog] Thanks for your comments David. I left http://srs4uv.com/ on-line for now. The hosting expires 2012/02/21 and the domain expires 2012/02/28. I added a Donate button to the main page in case people want to keep the site around and the links to it from breaking. Otherwise, the site vanishes next month. Gyle ___ U2-Users mailing list U2-Users@listserver.u2ug.org http://listserver.u2ug.org/mailman/listinfo/u2-users - IMPORTANT NOTICE: This message is intended only for the addressee and may contain confidential, privileged information. If you are
Re: [U2] srs4uv.com status [Was: Corrupted object in global catalog]
You are spot on Ian. It was a fun and tedious exercise. And you are right. The internals of each interpreter and its op codes are quite different. I wanted to answer the same question of how does one thing turn into another. And, can I reverse that? The first decompiler was for Prime INFORMATION in 1982. There wasn't documentation available to me per se. However, looking through their compiled libraries you could glean the names of the op codes. Returning the statements and functions was straight forward. Recovering the logical structure of the program was the heavy lift. Way back then, what discussions I could find on logical structure recovery all said it was impossible. I discovered a way to take the distinct graph patterns associated with each compiled structure and reconstruct the original structure. That was a fun puzzle. Still today, most decompilers only return GOTO-filled source code. I always insisted on no-GOTOs (unless the original code was a pile of spaghetti originally) and there was no other way to reconstruct the program. The UniVerse decompiler came out in 1992. VMark was nice enough to leave a lot of useful information in some C language header files distributed with the product. I briefly looked at doing a UniData decompiler and never found sufficient time to dedicate to cracking that. Lee Leitner had a UniData decompiler on the market for a while. -Original Message- From: u2-users-boun...@listserver.u2ug.org [mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of McGowan, Ian Sent: Friday, January 04, 2013 8:00 PM To: U2 Users List Subject: Re: [U2] srs4uv.com status [Was: Corrupted object in global catalog] Seems like a fun, if tedious, exercise in understanding the internals of compiled code. Surely different between ud and uv, given their lineage. Are there any tools or documentation available to give a head start? Does the debugger leak any information on the internals? It comes down to the question of how does: # cat IAN.TEST PRINT "HELLO" Turn into: # od -c _IAN.TEST 000 001 ? ÿ ÿ \0 p \0 001 \0 \0 \0 \0 \0 \0 \0 \0 020 \0 003 \0 001 \0 \0 \0 0 \0 \0 \0 \0 \0 \0 \0 040 / i n f o / D E V E L / B P . D 060 E V / I A N . T E S T \0 - 1 \0 H 100 E L L O \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 120 \0 004 \0 033 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 140 \0 005 \0 002 \0 \0 \0 034 ÿ ÿ ÿ ÿ \0 \0 \0 \0 160 \0 004 \0 005 \0 \0 \0 037 \0 \0 \0 \0 \0 \0 \0 \0 200 001 214 \0 001 \0 001 \0 005 \0 \0 \0 020 \0 001 \0 , 220 \0 001 \0 020 \0 002 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 -Original Message- From: u2-users-boun...@listserver.u2ug.org [mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of David Wolverton Sent: Friday, January 04, 2013 3:11 PM To: 'U2 Users List' Subject: Re: [U2] srs4uv.com status [Was: Corrupted object in global catalog] Question on the Source Code Recovery -- is the logic such that it could be 'open sourced' or GPL'd? Or is there another way to do the source recovery? That is, were the mechanics sold to Rocket Software Professional Services? If not, could they be sold to another company is someone wanted to keep the product active? While I don't have a need now, I like to think there is a place to go for 'the unthinkable' if it happened! Just wondering!! I don't know the circumstances that led to withdrawing this service -- I would think it would rarely be needed, but when it was, would be invaluable. Seems a loss if it's now got to be re-written from scratch!! -Original Message- From: u2-users-boun...@listserver.u2ug.org [mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of Gyle Iverson Sent: Thursday, January 03, 2013 7:04 AM To: u2-users@listserver.u2ug.org Subject: [U2] srs4uv.com status [Was: Corrupted object in global catalog] Thanks for your comments David. I left http://srs4uv.com/ on-line for now. The hosting expires 2012/02/21 and the domain expires 2012/02/28. I added a Donate button to the main page in case people want to keep the site around and the links to it from breaking. Otherwise, the site vanishes next month. Gyle ___ U2-Users mailing list U2-Users@listserver.u2ug.org http://listserver.u2ug.org/mailman/listinfo/u2-users - IMPORTANT NOTICE: This message is intended only for the addressee and may contain confidential, privileged information. If you are not the intended recipient, you may not use, copy or disclose any information contained in the message. If you have received this message in error, please notify the sender by reply e-mail and delete the message. ___ U2-Users mailing lis
Re: [U2] srs4uv.com status [Was: Corrupted object in global catalog]
It would make more sense if you escape every char in the header :) I suspect that "1" is not a one at all, but rather part of a command to either do a Print, or do a Store. -Original Message- From: McGowan, Ian To: U2 Users List Sent: Fri, Jan 4, 2013 8:00 pm Subject: Re: [U2] srs4uv.com status [Was: Corrupted object in global catalog] Seems like a fun, if tedious, exercise in understanding the internals of compiled code. Surely different between ud and uv, given their lineage. Are there any tools or documentation available to give a head start? Does the debugger leak any information on the internals? It comes down to the question of how does: # cat IAN.TEST PRINT "HELLO" Turn into: # od -c _IAN.TEST 000 001 ? ÿ ÿ \0 p \0 001 \0 \0 \0 \0 \0 \0 \0 \0 020 \0 003 \0 001 \0 \0 \0 0 \0 \0 \0 \0 \0 \0 \0 040 / i n f o / D E V E L / B P . D 060 E V / I A N . T E S T \0 - 1 \0 H 100 E L L O \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 120 \0 004 \0 033 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 140 \0 005 \0 002 \0 \0 \0 034 ÿ ÿ ÿ ÿ \0 \0 \0 \0 160 \0 004 \0 005 \0 \0 \0 037 \0 \0 \0 \0 \0 \0 \0 \0 200 001 214 \0 001 \0 001 \0 005 \0 \0 \0 020 \0 001 \0 , 220 \0 001 \0 020 \0 002 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 -Original Message- From: u2-users-boun...@listserver.u2ug.org [mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of David Wolverton Sent: Friday, January 04, 2013 3:11 PM To: 'U2 Users List' Subject: Re: [U2] srs4uv.com status [Was: Corrupted object in global catalog] Question on the Source Code Recovery -- is the logic such that it could be 'open sourced' or GPL'd? Or is there another way to do the source recovery? That is, were the mechanics sold to Rocket Software Professional Services? If not, could they be sold to another company is someone wanted to keep the product active? While I don't have a need now, I like to think there is a place to go for 'the unthinkable' if it happened! Just wondering!! I don't know the circumstances that led to withdrawing this service -- I would think it would rarely be needed, but when it was, would be invaluable. Seems a loss if it's now got to be re-written from scratch!! -Original Message- From: u2-users-boun...@listserver.u2ug.org [mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of Gyle Iverson Sent: Thursday, January 03, 2013 7:04 AM To: u2-users@listserver.u2ug.org Subject: [U2] srs4uv.com status [Was: Corrupted object in global catalog] Thanks for your comments David. I left http://srs4uv.com/ on-line for now. The hosting expires 2012/02/21 and the domain expires 2012/02/28. I added a Donate button to the main page in case people want to keep the site around and the links to it from breaking. Otherwise, the site vanishes next month. Gyle ___ U2-Users mailing list U2-Users@listserver.u2ug.org http://listserver.u2ug.org/mailman/listinfo/u2-users - IMPORTANT NOTICE: This message is intended only for the addressee and may contain confidential, privileged information. If you are not the intended recipient, you may not use, copy or disclose any information contained in the message. If you have received this message in error, please notify the sender by reply e-mail and delete the message. ___ U2-Users mailing list U2-Users@listserver.u2ug.org http://listserver.u2ug.org/mailman/listinfo/u2-users ___ U2-Users mailing list U2-Users@listserver.u2ug.org http://listserver.u2ug.org/mailman/listinfo/u2-users
Re: [U2] srs4uv.com status [Was: Corrupted object in global catalog]
Seems like a fun, if tedious, exercise in understanding the internals of compiled code. Surely different between ud and uv, given their lineage. Are there any tools or documentation available to give a head start? Does the debugger leak any information on the internals? It comes down to the question of how does: # cat IAN.TEST PRINT "HELLO" Turn into: # od -c _IAN.TEST 000 001 ? ÿ ÿ \0 p \0 001 \0 \0 \0 \0 \0 \0 \0 \0 020 \0 003 \0 001 \0 \0 \0 0 \0 \0 \0 \0 \0 \0 \0 040 / i n f o / D E V E L / B P . D 060 E V / I A N . T E S T \0 - 1 \0 H 100 E L L O \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 120 \0 004 \0 033 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 140 \0 005 \0 002 \0 \0 \0 034 ÿ ÿ ÿ ÿ \0 \0 \0 \0 160 \0 004 \0 005 \0 \0 \0 037 \0 \0 \0 \0 \0 \0 \0 \0 200 001 214 \0 001 \0 001 \0 005 \0 \0 \0 020 \0 001 \0 , 220 \0 001 \0 020 \0 002 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 -Original Message- From: u2-users-boun...@listserver.u2ug.org [mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of David Wolverton Sent: Friday, January 04, 2013 3:11 PM To: 'U2 Users List' Subject: Re: [U2] srs4uv.com status [Was: Corrupted object in global catalog] Question on the Source Code Recovery -- is the logic such that it could be 'open sourced' or GPL'd? Or is there another way to do the source recovery? That is, were the mechanics sold to Rocket Software Professional Services? If not, could they be sold to another company is someone wanted to keep the product active? While I don't have a need now, I like to think there is a place to go for 'the unthinkable' if it happened! Just wondering!! I don't know the circumstances that led to withdrawing this service -- I would think it would rarely be needed, but when it was, would be invaluable. Seems a loss if it's now got to be re-written from scratch!! -Original Message- From: u2-users-boun...@listserver.u2ug.org [mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of Gyle Iverson Sent: Thursday, January 03, 2013 7:04 AM To: u2-users@listserver.u2ug.org Subject: [U2] srs4uv.com status [Was: Corrupted object in global catalog] Thanks for your comments David. I left http://srs4uv.com/ on-line for now. The hosting expires 2012/02/21 and the domain expires 2012/02/28. I added a Donate button to the main page in case people want to keep the site around and the links to it from breaking. Otherwise, the site vanishes next month. Gyle ___ U2-Users mailing list U2-Users@listserver.u2ug.org http://listserver.u2ug.org/mailman/listinfo/u2-users - IMPORTANT NOTICE: This message is intended only for the addressee and may contain confidential, privileged information. If you are not the intended recipient, you may not use, copy or disclose any information contained in the message. If you have received this message in error, please notify the sender by reply e-mail and delete the message. ___ U2-Users mailing list U2-Users@listserver.u2ug.org http://listserver.u2ug.org/mailman/listinfo/u2-users
Re: [U2] srs4uv.com status [Was: Corrupted object in global catalog]
I don't desire to give the technology away. Anyone interested in purchasing or licensing the technology should contact me directly. Last year I recovered one program. Not enough activity to keep my interest. While we all appreciate the potential value of having the service, it is no longer economically viable. Connected by DROID on Verizon Wireless -Original message- From: David Wolverton To: 'U2 Users List' Sent: 2013 Jan, Fri, 4 23:11:16 GMT+00:00 Subject: Re: [U2] srs4uv.com status [Was: Corrupted object in global catalog] Question on the Source Code Recovery -- is the logic such that it could be 'open sourced' or GPL'd? Or is there another way to do the source recovery? That is, were the mechanics sold to Rocket Software Professional Services? If not, could they be sold to another company is someone wanted to keep the product active? While I don't have a need now, I like to think there is a place to go for 'the unthinkable' if it happened! Just wondering!! I don't know the circumstances that led to withdrawing this service -- I would think it would rarely be needed, but when it was, would be invaluable. Seems a loss if it's now got to be re-written from scratch!! -Original Message- From: u2-users-boun...@listserver.u2ug.org [mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of Gyle Iverson Sent: Thursday, January 03, 2013 7:04 AM To: u2-users@listserver.u2ug.org Subject: [U2] srs4uv.com status [Was: Corrupted object in global catalog] Thanks for your comments David. I left http://srs4uv.com/ on-line for now. The hosting expires 2012/02/21 and the domain expires 2012/02/28. I added a Donate button to the main page in case people want to keep the site around and the links to it from breaking. Otherwise, the site vanishes next month. Gyle ___ U2-Users mailing list U2-Users@listserver.u2ug.org http://listserver.u2ug.org/mailman/listinfo/u2-users ___ U2-Users mailing list U2-Users@listserver.u2ug.org http://listserver.u2ug.org/mailman/listinfo/u2-users
[U2] srs4uv.com status [Was: Corrupted object in global catalog]
This was a commercial product that was at one time successful. And I am guessing here is no longer used much for whatever reason, hence the need for donations to keep the site going. Most of the time I have seen recovery it is because a programmer left the company or changed a program and deleted the source code by accident. That is why I cannot live without version control. I just go back a version or two to get the "working" source using our Eclipse based editor and Subversion. No more BP.OLD, no more MyProgram.01-12-2012, no more other archive directories, and no more pulling source off of a QA or test machine. One time, a digression, I had get the source code off a customer machine to get a working copy. Oh boy am I glad those days are behind me. And to those companies that are not shipping source to your customers, those customers better have a stable third party that is saving off the source code for them in case of emergencies. Regards, Doug www.u2logic.com/tools.html "Real editors with real version control" ___ U2-Users mailing list U2-Users@listserver.u2ug.org http://listserver.u2ug.org/mailman/listinfo/u2-users
Re: [U2] srs4uv.com status [Was: Corrupted object in global catalog]
This was a commercial product that was at one time successful. And I am guessing here is no longer used much for whatever reason, hence the need for donations to keep the site going. Most of the time I have seen recovery it is because a programmer left the company or changed a program and deleted the source code by accident. That is why I cannot live without version control. I just go back a version or two to get the "working" source using our Eclipse based editor and Subversion. No more BP.OLD, no more MyProgram.01-12-2012, no more other archive directories, and no more pulling source off of a QA or test machine. One time, a digression, I had get the source code off a customer machine to get a working copy. Oh boy am I glad those days are behind me. And to those companies that are not shipping source to your customers, those customers better have a stable third party that is saving off the source code for them in case of emergencies. Regards, Doug www.u2logic.com/tools.html "Real editors with real version control" ___ U2-Users mailing list U2-Users@listserver.u2ug.org http://listserver.u2ug.org/mailman/listinfo/u2-users
Re: [U2] srs4uv.com status [Was: Corrupted object in global catalog]
Question on the Source Code Recovery -- is the logic such that it could be 'open sourced' or GPL'd? Or is there another way to do the source recovery? That is, were the mechanics sold to Rocket Software Professional Services? If not, could they be sold to another company is someone wanted to keep the product active? While I don't have a need now, I like to think there is a place to go for 'the unthinkable' if it happened! Just wondering!! I don't know the circumstances that led to withdrawing this service -- I would think it would rarely be needed, but when it was, would be invaluable. Seems a loss if it's now got to be re-written from scratch!! -Original Message- From: u2-users-boun...@listserver.u2ug.org [mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of Gyle Iverson Sent: Thursday, January 03, 2013 7:04 AM To: u2-users@listserver.u2ug.org Subject: [U2] srs4uv.com status [Was: Corrupted object in global catalog] Thanks for your comments David. I left http://srs4uv.com/ on-line for now. The hosting expires 2012/02/21 and the domain expires 2012/02/28. I added a Donate button to the main page in case people want to keep the site around and the links to it from breaking. Otherwise, the site vanishes next month. Gyle ___ U2-Users mailing list U2-Users@listserver.u2ug.org http://listserver.u2ug.org/mailman/listinfo/u2-users
[U2] srs4uv.com status [Was: Corrupted object in global catalog]
Thanks for your comments David. I left http://srs4uv.com/ on-line for now. The hosting expires 2012/02/21 and the domain expires 2012/02/28. I added a Donate button to the main page in case people want to keep the site around and the links to it from breaking. Otherwise, the site vanishes next month. Gyle -Original Message- From: u2-users-boun...@listserver.u2ug.org [mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of Hona, David Sent: Wednesday, January 02, 2013 9:47 PM To: U2 Users List Subject: Re: [U2] [UV]Corrupted object in global catalog Here's some options for you... 1. Verify it is cataloged in Global Catalog The subroutine !EXIST subroutine was created for Prime INFORMATION compatibility and does a simple check to verify the program is catalogued only. Check out the source code in UV account APP.PROGS, EXIST. 2. Verify Object code matches The VCATALOG verb is also used to verify the compiled object in your BP object file and the Global Catalog space are the same. (Interestingly, on my UV11.1.9/AIX system, VCATALOG isn't working! :-( ). 3. Extract detailed object code header data Finally, writing your own custom verification utility combining VLIST verb and/or Gyle Iversons' excellent (NB: I understand he will soon close down this website) SRS.UV.HEADER subroutine to extract header information from the global catdir and your BP object file for comparison purposes. URL: http://www.srs4uv.com/srs_uv_header.htm ___ U2-Users mailing list U2-Users@listserver.u2ug.org http://listserver.u2ug.org/mailman/listinfo/u2-users