[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Dos 3.3 Launcher???



Doktor DynaSoar writes ...
> 
> rubywand@swbell.net sent bitwaves which read:
> }
> }     If you decide to try DOSLauncher, etc. to run DOS 3.3 wares from
> }your hard disk, it's a good idea to check each program to be sure it does
> }no direct disk writes.
> 
> Going to tell them how to go about this?
>

     Okay. First, you know about your own programs. If all disk I/O is via 
the usual DOS commands (like SAVE), then you are not doing any direct writes.

     Non-commercial programs which have no reason to store information, like 
simple arcades with no High Scores record or Game Save, are unlikely to write 
anything directly to disk. One check is to write-protect the diskette and 
play the game. If it does not bomb or do a lot of clattering while attempting 
a disk access, it probably does not attempt any direct writes.

     Another fairly good check is to list the program under Program Writer 
and Search for any CALLs and & routines. If all CALLs are to monitor routines 
($F800 or higher); and, you can account for any & commands (e.g. they play 
music, etc.); and, any expected Game Saves, Pic Saves, etc. are accounted for 
by standard DOS 3.3 commands, then, there are probably no direct writes.

     If, via the above checks, a program seems free of direct writes except 
for CALLs to the $300 area, then, you will need to account for these CALLS. 
Often, they will be for sound effects, special screen-clears, and/or KB-input 
processing.

     Via the above checks, quite a few programs will seem free of direct 
writes except for CALLs to code BLOADed somewhere before or after the 
program. You will need to account for these CALLs.

     Any program which does CALLs to the Text Page area ($400-$700) is very 
suspect as is any program which does CALLs and/or PEEKs and POKEs to 
addresses which fall inside the range occupied by the program. 

     Any program you cannot list and which saves information to disk is 
suspect. This includes any games, word processors, and educational wares 
which save scores, record position of an adventure party, maintain a progress 
record, do document backups, etc.. 

     Any program with REMs filled with 'garbage', evidence of hidden lines, 
or which otherwise seems to behave oddly when listed is suspect.

     Any commercial program, especially games, educational programs, and word 
processors, and any supposedly deprotected commercial program is suspect.

     Any program which automatically reboots upon a Reset is very suspect.

     About the only way to verify that some "suspect" program does not do 
direct writes is go to the monitor and account for the functions of machine 
code routines. Just noting than no JMPs or JSR's go to the usual DOS 
locations does not protect against custom disk R/W routines which can be 
located in all sorts of places.  

Note: If code is in the Text Page or any other area which is automatically 
changed when the program is halted you will need custom firmware to do an 
auto-move of these areas upon Reset. In fact, you may need to check such 
areas at different times in the game, etc..

One alternative to a special auto-move is to look for and view the code 
that you believe is going into the Text Page, etc. on diskette using a 
utility like the Copy ][+ Sector Editor. This does not, however, guarantee 
that the code is not greatly modified after being loaded by the program.


     If any of the above conveys the impression that some wares are trapped 
specifically in order to mess up disks of users who copy or in any way modify 
the wares, it is because this is the case. Many other wares do direct writes 
in order to speed-up game play, make a word processor's operation more 
'transparent and user-friendly, and for other good reasons. There are, in 
short, lots of DOS 3.3 'icebergs' waiting to sink your hard disk. 

    So; if you did not write a DOS 3.3 program yourself or do not have some 
guarantee from the program's producer or an experienced user of the program 
on hard disk, then, either list the program and check the code or forget 
about launching it from hard disk.


Rubywand