RAMUPD.EXE Documentation Version 1.00 /***************************************************************************** N O T I C E This program has been donated to the Satallite "underground". If you wish to make copies and distribute them then, by all means go ahead... With one condition - DO NOT DISTRIBUTE PATCHED VERSIONS! Not only would you be voilating this request, but the patches may adversly affect the program. Many of the picture strings are finiky and if changed could crash the system, possibly even destroying (a small chance, but possible) the ram writer file. If you find this program to be useful and wish to support further development projects then please make a donation... you make the call as to how much or what you wish to donate. VC Software Technologies P.O. Box 819, Hamilton HM CX Bermuda Enjoy. /***************************************************************************** This utility was designed so as to minimize patching errors each month when you change RAM.WTR. This utility will allow you to make Monthly Key changes as well as Seed Key changes. Before giving a brief explanation of the utility here is a list of the files that should be present: RAMUPD.CFG --- Contains Configuration screen info. File is created if it does not exist... Not supplied with program. RAMUPD.EXE --- Main program RAMUPD.DOC --- This help RAM.WTR --- USER SUPPLIED ram writer (ver 2.4, 2.6, 3.0 or 3.1). RAM.WTR is not supplied with this program. /***************************************************************************** MONTHLY KEY UPDATE Allows you to change the various monthly ram settings: Month and Service ID: (Note 2.4 and 2.6 usually have a separate service ID at location 0247h, you will need to manually set this) Key Select bytes. Tier Mask. Subscriber Cyphertect codes. Note, there are entries for both odd and even months. Spares: The offsets are defined in the configuration. These spares are for special uses such as the .... (???) use your imagination. Offsets into RAM.WTR (ram writer) are defined in Configuration Setup /***************************************************************************** SEED KEY UPDATE This will allow you to change the IDs and seed keys as well as the backup IDs and seed keys. If using this on a system where there are no backup seeds then leave backup id offset in the configuration at FFFF. Offsets into RAM.WTR (ram writer) are defined in Configuration Setup /***************************************************************************** CONFIGURATION SETUP Filename - This is the DOS path and filename of the loader file. Normally this is called RAM.WTR but can be changed to any name you wish. HOWEVER, if you give a name of a file that does not exist then you will not be able to do any key updates. Configuration settings are saved in a file, RAMUPD.CFG. If RAMUPD.CFG does not exist when you start RAMUPD.EXE then it is created for you with the following defaults: ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ Configuration Setup ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ» º All Offsets in Hex º º Filename RAM.WTR º º EVEN MONTH ODD MONTH º º Month Offset (1) 0100 Month Offset (1) 0163 º º Month Offset (2) 0119 Month Offset (2) 017C º º Month Offset (3) FFFF Month Offset (3) FFFF º º Key Select Offset 0102 Key Select Offset 0165 º º Tier Offset 0107 Tier Offset 016A º º Sub. Cat Offset 010E Sub. Cat Offset 0171 º º Seed Key Offsets º º ID Offset 0235 Backup ID Offset 2E20 º º 00 2000 02 2010 00 2E00 02 2E10 º º 01 2008 03 2018 01 2E08 03 2E18 º º Spare Offsets º º Spare 1 FFFF Spare 3 FFFF Spare 5 FFFF º º Spare 2 FFFF Spare 4 FFFF Spare 6 FFFF º ºF3 - Restore, F5 - Del Line, F6 - Del EOL, F10 - Accept, Esc - Quit º ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ If the environment variable RAMUPD is set then RAMUPD.EXE will get RAMUPD.CFG from that path. ie if RAMUPD is not set in the environment table then RAMUPD.CFG will be placed or found in the current directory. However if it is set then RAMUPD.CFG will be taken from where you specify. ie SET RAMUPD=C:\RAMUPD.CFG will use RAMUPD.CFG from the root directory. SET RAMUPD=TEMP will use the file TEMP instead. This environment variable, if used, will normally be placed in the AUTOEXEC.BAT file for boot-up. /***************************************************************************** KEYBOARD WIZARD KEYS This option will calculate the monthly working codes based upon the primary seed keys. Requires that COMMAND.COM and WIZARD.EXE be in the DOS PATH or in the current working directory. Easiest way is to have WIZARD in your working directory if you do not use sub-directories or are unsure of the PATH variable. Requires a minimum of 2 available clusters for work files. (A cluster is the minmum disk allocation spaces :- 20 Mb == 8k cluster 10 Mb == 4k floppy (360) == 1k 1.2M == 512 Since this option requires disk space to create temporary work files I have added another environment variable setting. If TEMP is set then this will point to the disk/directory where the intermediary files are to be located. For example, suppose you have a RAM disk. You use this RAM disk for temporary files and do not worry if they are lost when power is shut off. Also, RAM disks are FAST! Let's suppose you have a RAM disk called H: This disk is what we will use for intermediary files. So, in you AUTOEXEC.BAT file you will have: SET TEMP=H:\ or SET TEMP=H: Naturally you could also use this: SET TEMP=A: NOTE: Some other programs use TEMP as an environment variable. Make sure that both applications are referring to a path, not a specific file! /***************************************************************************** CALCULATE CYPHERTEXT Calculates the cyphertext keys based upon a set of working keys. It will use the key select bytes and tier mask already in the monthly key areas. The cyphertext keys are automatically placed in the monthly key areas. The user is required to know the monthly working keys (plaintext) for the option to work. This is most easily accomplished by using a loader file that has correct info in it. Use it to calculate the working keys then change the configuration for the new file and then immediately do the cyphertext calculation. It uses whatever tier mask and key select bytes that are in the monthly key areas. The last 2 digits of the working key entry are not used, but must be filled. I suggest using the month number in that place. ie 29, 2A or 2B. If you use a valid loader to first calculate the working keys you will see what I mean. /***************************************************************************** DOS COMMAND Runs a user supplied DOS command. If the command is left blank then a copy of COMMAND.COM is run. Any problems, contact VC Software Technologies P.O. Box 819, Hamilton HM CX Bermuda (809)-292-6337 after 5:00pm EST. COMMON ERRORS: COMMAND.COM MUST be present to calculate WIZARD codes and cyphertext codes! I am currently searching for the author of DESCALC so that I may incorporate those routines directly into RAMUPD.EXE /***************************************************************************** Program Specifics: Compiler : MicroSoft 5.1 Add-on Library: Vermont Creative Software - Vermont Views Libray Support: Shadow routines supplied courtesy of David M. Yancich Memory Model : Large Source Modules: ASCTOBY.C ; Converts string to byte string (hex string) BYTOASC.C ; Converts byte string to string representation CALCTEXT.C ; Calculates cyphertext CONFIG.C ; Reads configuration files and screen DESCALC.C ; Calculates KEYBOARD WIZARD codes DOS.C ; Executes a DOS program DWK.C ; Display WIZARD keys, calld from DESCALC.C FLD_TYPE.C ; VV module for hexadecimal integers GWK.C ; Get WIZARD keys, called from CALCTEXT.C HE.C ; New VV field type, Hexadecimal strings MENU.C ; Main menu MONTHLY.C ; Monthly update screen module NOWRITE.C ; Confirms users desire to abort any modifications PUTUNSH.C ; Support fm -beg -end functions for shadows RAMUPD.C ; Main routine, sets ^C and call main menu READKEYS.C ; Reads RAM.WTR file and writes it SEEDS.C ; Seed key form SHADOW.C ; Shadow support VV_VALMS.C ; New VV messages Source is available upon request, but a donation would be appreciated.  º º Sp Downloaded From P-80 International Information Systems 304-744-2253