HALLOGRAM PUBLISHING
SHOPPING CARTSITE MAPCONTACT USPRODUCTS
HOMEBARCODESDEVELOPER TOOLSUSER TOOLSTRAINING
Valkyrie FAQ

  1. How do I protect my own programs from Valkyrie?
  2. Can Valkyrie recover library code?
  3. How can I tell which libraries were used to create an EXE file?
  4. What about C or Assembly code?
  5. What will I get back?
  6. Isn't it illegal?
  7. When is Valkyrie going to support Blinker 3.x/4.x?
  8. When is Valkyrie going to support Clipper 5.3?
  9. Do you have a FOX decompiler?

How do I protect my own programs from Valkyrie?

  1. Use a different language
  2. Use Secure5 for Clipper
  3. This topic is covered in detail in the Valkyrie User Guide

Back to Beginning


Can Valkyrie recover library code?

Libraries are simply files that contain pre-compiled objects, whether PRG files compiled with CLIPPER.EXE, C files compiled with a C compiler, ASM files compiled with an assembler, or others. The OBJ files are simply grouped together in the library (LIB) file for ease of use. Aside from that, there is no difference between the code from a library and code from a PRG file that you compile and link yourself.

Valkyrie will decompile any Clipper routine in the EXE file, whether it came from a standalone PRG or from a library. In fact, there is no way to determine whether a particular routine was placed in the EXE from a library or form a separate OBJ file.

In short, Clipper code from a library will get decompiled just like an other Clipper code. Non-Clipper code from a library will not be decompiled.

Back to Beginning


How can I tell which libraries were used to create an EXE file?

Short answer: You can't.

Long answer: Sometimes you can make a pretty good guess if you happen to be familiar with the names of the routines in a particular library. Often, vendors of a commercial library will name their functions with a standard prefix to avoid clashes with other libraries. This is no guarantee that a function really did come from that library, however, since anyone can name a function anything they want, whether or not some library already has a function with that name.

Your best bet is to “ask around” at user groups or on a large public forum, such as CompuServe or a USENET group.

Back to Beginning


What about C or Assembly Code?

Valkyrie cannot decompile C or Assembly code. The Valkyrie Externals Window gives you a list of each "external," or non-Clipper, routine in the program. You can also see where they are used in the Clipper code, and their absolute offset in the EXE file.

Back to Beginning


What will I get back?

Short answer: Clipper source code.

Long answer: It depends on whether the program was compiled with Clipper S87 or with Clipper 5.x.

Clipper S87 is fairly straightforward: you will get back source code practically identical to the original code. Things like comments, indentation, and, in some cases, source file structure, may be different, but for the most part, it will be the same code as in the original PRG files.

CA-Clipper 5 is a different, and more difficult problem. With the addition of STATIC and LOCAL variables, a preprocessor, code blocks, etc., it is much more difficult, if not impossible, to get back the exact code. Valkyrie will create names for the STATIC and LOCAL variables if it has to (STATIC1, LOCAL1, etc.), although it can get the original names of the file was compiled with DEBUG information. Valkyrie can also undo many of the “standard” preprocessor definitions, such as those found in STD.CH. Macros defined in custom CH files will not get “un-preprocessed”.

Back to Beginning


Isn't this illegal?

Yes, if you are decompiling a program which is covered by copyright law.

Yes, if you are decompiling a program which has a license that expressly forbids decompilation.

Please Note: the makers of Valkyrie are programmers, not lawyers. If you have any questions or doubts about the legality of what you are thinking of doing with Valkyrie, we strongly advise you to obtain qualified legal counsel before proceeding.

Back to Beginning


When is Valkyrie going to support Blinker 3.x/4.x?

This is a very important matter to the developers and they are hard at work on this issue right now. They have solved many individual cases for customers who have submitted their files to them on their BBS. The problems are with Blinker Dual and Extended modes, which are more difficult to unravel than “normal” EXE files.

If you have a file which you need to decompile NOW and it is Blinker 3.x or greater Dual or Extended Mode, contact us and we will see if the developer already has a solution.

Back to Beginning


When is Valkyrie going to support Clipper 5.3?

Like most software houses, the Valkyrie developers handle problems according to the “noise level” each generates. To date, there have been very few requests for Clipper 5.3 support compared to the number of people who need Blinker 3.x support. As a result, the developers are currently working on the bigger problem first. When Blinker 3.x/4.x is handled, their very next priority will be Clipper 5.3.

5/98: Supports CA-Clipper 5.0 through 5.2 (Will not work with CA-Clipper 5.3)

Back to Beginning


Do you have a FOX decompiler?

Yes. ReFox is available from HALLoGRAM.

Back to Beginning


Return to Valkyrie Main Page
What People are saying about Valkyrie


Return Policy: Due to the nature of this product and the manufacturer's licensing terms, Valkyrie cannot be returned, exchanged or refunded for any reason. Defective product may be exchanged for the same product directly through the manufacturer.
Valkyrie..........$395


Home || Shopping Cart || Site Map || Newsletter/Blog
Search HALLoGRAM || Request More Information
CALL TOLL FREE 1-866-340-3404

©Copyright 1998 HALLoGRAM Publishing, Aurora CO. All Rights Reserved.
All products mentioned in this site are trademarks of their respective owners.