patrick@ISM780.UUCP (08/13/85)
Does anyone know how to bypass the Lotus 1-2-3 copyright notice, and their arrogant insistence that I read it, and "Press any key to Continue", before I can get on with my work? I am trying to put together a system which involves using 1-2-3 in batch (unattended, non-interactive) mode - I can invoke it under the control of my UNIX system. The auto-start worksheet and auto-start macro capabilities provide just what I need, but the whole process is frustrated if someone has to stand by the PC keyboard just to press a single key. I've tried redirecting input to 1-2-3, and also forcing a carriage-return into the keyboard buffer. No luck. (They seem to clear the buffer before waiting for a key). Patrick Curran Interactive Systems Corp Santa Monica, CA decvax!cca!ima!patrick {uscvax|ucla-vax|vortex}!ism780!patrick
gjs@faust.UUCP (08/14/85)
I use ProKey to automatically get past 1-2-3's initial screen and get on with real work. I do this by defining an "auto execute" ProKey macro which waits a couple of seconds, then "presses" RETURN. The macro is invoked via a DOS command line immediately before invoking 123: prokey 123.pro/r /[alt0] 123 This makes ProKey read macro definitions from file 123.pro, then execute the macro named alt0. This same macro and command line will work with any program with an initial screen, such as Symphony, Framework, etc. If you're invoking 123 from batch, you might consider using ProKey macros instead of 123 macros, because the former can reside in a separate file which can be used with many spreadsheets. SuperKey has capabilities nearly identical to those above. I have no connection with ProKey or SuperKey except as a satisfied customer. Opinions expressed here are not necessarily those of Intermetrics, or even mine. -- George Snyder -- Intermetrics Inc. -- inmet!gjs --
brown@nicmad.UUCP (08/15/85)
In article <31300003@ISM780.UUCP> patrick@ISM780.UUCP writes: > >Does anyone know how to bypass the Lotus 1-2-3 copyright notice, and >their arrogant insistence that I read it, and "Press any key to >Continue", before I can get on with my work? I am assuming that you don't have 1-2-3 on a hard disk. Because if you do I am assuming that you have the master diskette in drive A:. You could always use debug to bypass the protection scheme, so that you can use it on a hard disk, without the master diskette (a copyright question that really hasn't been answered by the Supreme Court). But, to answer your question, the only way to do it is to use debug to go into the 123.EXE code and jump around the keyboard call. It is an annoying 'feature' that needs to be skipped. Maybe I'll look into it. -- Mr. Video {seismo!uwvax!|!decvax|!ihnp4}!nicmad!brown
patrick@ISM780.UUCP (08/16/85)
Thanks for the suggestions guys, but I'm not there yet. I can't use a "keyboard enhancer" because the need for backward compatibility with previously-existing software (PC/IX) precluded the use of BIOS to read the keyboard. Why? Because Microsoft in their wisdom seem to have decided that no-one will ever want to use the "5" key on the numeric keypad (in its non-numlock mode). BIOS refuses to return this value to me. There's a gap in the table of "Auxilliary Byte Values" where this code should be (cursor left returns 75 and cursor right returns 77). You can hold down the 5 key till you drop, but the BIOS won't return a 76. Anyone from Microsoft care to explain this to me? Unfortunately this key is the HELP key for the PC/IX editor, and I couldn't reassign it. So, no BIOS, and no nifty keyboard enhancers. As to disassembly, and cracking the copy protection (I assume that the sign-on message is part of the copy protection scheme), there's not much I can say in a public forum; I'll restrict myself to a discussion of the general principles. As someone who is responsible for developing a PC product which has cost a lot of money, I fully understand the urge to protect such an investment by protecting the resulting software. However, our product is not copy protected. I wouldn't have the nerve to tell my customers that they couldn't install it on a hard disk, or that they could not back up _every_ portion of it for their own protection. We will sell site licenses, and will assume that our (corporate) customers will abide by the terms of those licenses. I admit that the decision would have been much more difficult if we were selling single copies to the general public. Our product is designed to be used in conjunction with 123 and other popular PC packages. If 123 were capable of purely batch-type operations, I could download data from my host system, manipulate it with 123, and ship the resulting report back up to the host for distribution by electronic mail. All of this without human intervention (I could take a coffee break while the machines did their stuff). As it is, I must stand by the PC, ready to "Press any Key to Continue". So, in order to protect their own investment in software development, Lotus have implemented a copy-protection scheme which makes our product a little less useful, and hence reduces the returns on _our_ investment in software development. I would gladly exchange this copy of 123 for one which was copy-protected in any other way, but which allowed me to perform true batch operations. Anyone from Lotus want to take me up on this? Where are these dongles you keep talking about? I'll take one now.
brown@nicmad.UUCP (08/18/85)
In article <31300005@ISM780.UUCP> patrick@ISM780.UUCP writes: >As to disassembly, and cracking the copy protection (I assume that the >sign-on message is part of the copy protection scheme), there's not >much I can say in a public forum; I'll restrict myself to a discussion >of the general principles. The 1-2-3 sign-on screen, which contains the copyright notice and to press a key to continue, is NOT part of the copy protection scheme. I am in the process of looking for the subroutine that prints/looks for the key press. It is not much fun going over code when you can't print it. But, I will find it sooner or later. It does seem that even if I did tell you what three bytes to change in the 1-2-3 code, you would probably have a hard time getting your customers to let you do it. Also, there appear to be at least two, if not three, different versions of 1-2-3. So, it would make it even harder to get them to change the code. >So, in order to protect their own investment in software development, >Lotus have implemented a copy-protection scheme which makes our product a >little less useful, and hence reduces the returns on _our_ investment in >software development. The copy protection scheme, as I said above, has nothing to do with the copyright notice, etc. -- Mr. Video {seismo!uwvax!|!decvax|!ihnp4}!nicmad!brown
brown@nicmad.UUCP (08/18/85)
In article <321@nicmad.UUCP> brown@nicmad.UUCP (Mr. Video) writes: >In article <31300005@ISM780.UUCP> patrick@ISM780.UUCP writes: >>As to disassembly, and cracking the copy protection (I assume that the >>sign-on message is part of the copy protection scheme), there's not >>much I can say in a public forum; I'll restrict myself to a discussion >>of the general principles. > >The 1-2-3 sign-on screen, which contains the copyright notice and to press >a key to continue, is NOT part of the copy protection scheme. I am in the >process of looking for the subroutine that prints/looks for the key press. >It is not much fun going over code when you can't print it. But, I will >find it sooner or later. Well, it is sooner than I thought. I found the CALL for the copyright notice. The fix that I am going to give is for the '*' version of 1A. In the notice it says 'Release 1A' and right below that, centered, is a '*'. This is the version that the fix pertains to. This fix DOES NOT remove the copy protection, it only stops the displaying of the copyright notice and stops the entry of any key. Here are the steps involved: 1. REN 123.EXE 123.XXX 2. DEBUG 123.XXX 3. U 4F2 It should say CALL 0456. If not, do not continue, wrong version. 4. E 4F2 90 90 90 5. W 6. Q 7. REN 123.XXX 123.EXE I have mine fixed up and that is the way I will use it from now on. -- Mr. Video {seismo!uwvax!|!decvax|!ihnp4}!nicmad!brown
gmv@cbuxc.UUCP (Mike Vrbanac) (08/21/85)
Subject: Re: Lotus 1-2-3 question In-Reply-To: your article <31300005@ISM780.UUCP> Direct mail didn't work out, so I'm posting my reply.... Patrick: I just put up the new version of Lotus Symphony, v1.1. You might be interested to know that it no longer requires the user to hit a carriage return after the logo screen is displayed. It simply sits there for a few seconds, and then takes off. The spreadsheet in Symphony is even more powerful than 1-2-3, although Symphony is a larger program, hence less memory is available for the sheet. V1.1 has a sparse matrix memory allocation algoritm, so memory is better utilized. I think many of these features will be in 1-2-3 v2 due out this fall. I don't know if 1-2-3 will automatically continue after its logo or not. As an aside, I've been *very* impressed with the World of Lotus on CompuServ. There is a direct e-mail to Lotus support, and they get the right answers quickly. -- +--------------+------------------------+-----------------+ | Mike Vrbanac | AT&T Bell Laboratories | Columbus, Ahiya | +--------------+------------------+-----------------------+ | Unix: {cbosgd|ihnp4}!cbuxc!gmv | CompuServ: 76054,113 | +---------------------------------+-----------------------+
dms@chinet.UUCP (Dave Slocum) (08/22/85)
Patch to bypass copyright notice (and 'press any key to continue'), for Lotus 123, version 1A. Patch by Dave Slocum, 8/21/85. THIS PATCH APPLIES ONLY TO 123.EXE, VERSION 1A, dated 06/07/83, length 89856. THERE MAY BE MORE THAN ONE VERSION 1A. THE RELEVANT VERSION HAS NO ASTERISK ON THE BANNER SCREEN. Make sure the tests below are met before continuing with the patch. D>ren 123.exe 123x D>debug 123x -r AX=xxxx BX=0001 CX=5F00 etc.. ; length must be 15f00 -u 49d,49f xxxx:049D E85106 CALL 0AF1 ; this must match -u 4c8,4ca xxxx:04C8 E8A316 CALL 1B6E ; this must match -a 49d xxxx:049D nop xxxx:049E nop xxxx:049F nop xxxx:04A0 ; press <enter> -a 4c8 xxxx:04C8 nop xxxx:04C9 nop xxxx:04CA nop xxxx:04CB ; press <enter> -w Writing 15F00 bytes -q D>ren 123x 123.exe Dave Slocum UUCP: ihnp4!chinet!dms BBS: Gene Plantz' Chicago IBBS, ID0095.
gjs@faust.UUCP (08/22/85)
> I can't use a "keyboard enhancer" because the need for backward > compatibility with previously-existing software (PC/IX) precluded the > use of BIOS to read the keyboard. Why? Because Microsoft in their > wisdom seem to have decided that no-one will ever want to use the "5" > key on the numeric keypad (in its non-numlock mode). BIOS refuses to > return this value to me. I'm not sure how you're bypassing BIOS from BATCH and/or Unix(tm Bell Labs). ProKey 4.0 lets you redefine the "5" on the numeric keypad, as well as many other keys that you wouldn't think possible. These keys can also be invoked by other macros, because they have unique ProKey names, such as <ctr> for the "5", and <k*> for the "*" on the numeric pad. Using such a scheme might be easier that convincing your users to patch their copies of 1-2-3. -- George Snyder -- Intermetrics Inc. -- inmet!gjs --
patrick@ISM780.UUCP (08/24/85)
Thanks to those who posted patches for the 123 sign-on screen. I tried the one supplied by "Mr. Video" and it worked just fine. As to keyboard enhancers, I found George Snyder's note interesting. If Prokey does allow reassignment of the numeric 5 key, then they must be taking over the hardware interrupt (I know of no other way to determine that this key has been pressed). We too take over this interrupt, and interpret the keyboard scan codes directly. (The fact that we can run the PC software under the control of a UNIX system is irrelevant for the purpose of this discussion.) By the way, another reason we couldn't use BIOS is that we make heavy use of ALT numeric-keypad combinations. Because these can be used to enter ASCII values directly, their values aren't returned by BIOS until the ALT key is released. This makes it very difficult to enter several of these key combinations in quick succession. I assume that keyboard enhancers function only with application software which reads the keyboard via INT 16, and that they take over this interrupt so that they can perform macro expansions on the raw key-stroke data retrieved from the hardware. This implies that if I could _guarantee_ that my users have Prokey, I could direct them to define the appropriate values for the "hidden keys", and use INT 16 myself to retrieve keystrokes. Of course I can guarantee no such thing, and even if I could this wouldn't be very user-friendly, so I have to read the hardware. It seems that there's no way I can provide compatibility with RAM- resident software (such as ProKey or Sidekick) if that software takes over the keyboard interupt vector; we can't both service those interrupts. (I could provide alternative mechanisms of reading the keyboard, and allow the user to configure the system appropriately, but this sounds like more trouble than it's worth.) On the other hand I could probably make our stuff more compatible with software which uses INT 16 to read the keyboard, if we coded our keyboard routine in the form of a replacement for that interrupt, and ensured that it returned all the "legal" values in addition to the "invisible" values which the BIOS refuses to return. Presumably the RAM-resident software would then call my INT 16, and never know the difference. Does this make any sense? Am I missing anything? Does anyone know exactly how Prokey, Sidekick, etc. manage the keyboard? How about the Microsoft or Mouse-Systems mice? Patrick Curran INTERACTIVE Systems Corp. decvax!cca!ima!patrick {uscvax|ucla-vax|vortex}!ism780!patrick