Category : Files from Magazines
Archive   : CUJ9206.ZIP
Filename : 1006028A

 
Output of file : 1006028A contained in archive : CUJ9206.ZIP
// TESTPROG.C
//
//
// This program demonstrates the use of hardware locks (using
// FAKELOCK to simulate the hardware lock). TESTPROG has four
// functions, two of which (func2 and func3) are designed to be
// used frequently when running TESTPROG. TESTPROG calls FAKELOCK
// when the TESTPROG starts and every time func2 and func3 are called.
//
// The program TESTLOCK was used to determine what values FAKELOCK
// would return for the given parameters.
//
// The function CALL_LOCK calls FAKELOCK.
// CALL_LOCK gives TESTPROG a uniform response to failing
// the hardware lock test. Instead of just exiting the program,
// CALL_LOCK gives the user the chance to restore the lock
// and continue. This was done so that any data in memory
// might be saved before the program returned to DOS.

#include
#include
#include "fakelock.h"

// function prototypes
void CALL_LOCK( char *incode );
void func1( char* msg );
void func2( char* msg );
void func3( char* msg );
void func4( char* msg );

void main( void )
{
CALL_LOCK( "abcdefgh" );

func1( "\nfirst time in function 1" );
func2( "\nfirst time in function 2" );
func3( "\nfirst time in function 3" );
func2( "\nsecond time in function 2" );
func2( "\nthird time in function 2" );
func3( "\nsecond time in function 3" );
func2( "\nfourth time in function 2" );
func4( "\nfirst time in function 4" );

printf("\nProgram finished normally");
};

void func1( char* msg )
{
printf("%s", msg );
};

void func2( char* msg )
{
CALL_LOCK( "abcdefgh" );
printf("%s", msg );
};

void func3( char* msg )
{
CALL_LOCK( "abcdefgh" );
printf("%s", msg );
};

void func4( char* msg )
{
char test[96];

printf("\nEnter any lock parameter you want (only 'abcdefgh'"
" will find lock): ");
gets( test );
CALL_LOCK( test );
printf("%s", msg );
};

void CALL_LOCK( char *incode )
{
int key;
char lock[96];
int results = 0;

printf("\nWhich lock is to be called (1 or 2): ");
gets( lock );
key = atoi( lock );

while (results != 19334)
{
if ( (results = FAKELOCK( incode, key )) != 19334 )
{
printf("FAKE LOCK returned %d, that did not match the known key",
results );
printf("\nEnter another lock to try (0 to exit to DOS, or 1 or 2): ");
gets( lock );
key = atoi( lock );

if ( key == 0 )
{
printf("Program ended because it could not find hardware lock");
exit( 0 );
}
}
}
return;
}


  3 Responses to “Category : Files from Magazines
Archive   : CUJ9206.ZIP
Filename : 1006028A

  1. Very nice! Thank you for this wonderful archive. I wonder why I found it only now. Long live the BBS file archives!

  2. This is so awesome! 😀 I’d be cool if you could download an entire archive of this at once, though.

  3. But one thing that puzzles me is the “mtswslnkmcjklsdlsbdmMICROSOFT” string. There is an article about it here. It is definitely worth a read: http://www.os2museum.com/wp/mtswslnk/