Flight Simulator FS1 T-80 for Model I (/CMD) -subLOGIC (1980)

These are all pretty much identical

Version "M" - Supports Joystick (allegedly)

Ira Goldklang
www.trs-80.com

-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=

************* FS1 *************
        BY SUBLOGIC

YOU ARE THE PILOT OF A SOPWITH CAMEL IN WWI.
YOUR MISSION IS TO KILL ALL GERMAN PLANES (5 OF THEM)
AND BOMB THEIR FUEL DEPOT.

COMMANDS:
  "DFG" MOVE RUDDER TO THE LEFT, MIDDLE, AND RIGHT
  RESPECTIVELY.
  "U" RAISES LANDING GEAR AND CONVERTS DISPLAY TO AN
  UPPER-SCALE VIEW.
  "D" LOWERS LANDING GEAR AND CONVERTS DISPLAY TO A
  DOWN-SCALE VIEW.
  "X" DROPS BOMBS. (USED WHEN OVER THE ENEMY FUEL DEPOT
  SHOWN AS A DOT ON THE GROUND)
  "SPACE BAR" FIRES MACHINE GUNS WHEN HELD DOWN, OR
  SINGLE SHOT WHEN TAPPED.
  "[" GIVES AN OUT OF THE COCPIT 3D VIEW.
  "\" GIVES A RADAR DISPLAY VIEW.
  "^" INCREASES THRUST.
  "]" DECREASES THRUST.
  "T" LOWERS FLAPS.
  "B" RAISES FLAPS.

HERE IS A ROUGH MAP OF THE AREA..

    N
    [
  W]-^E
    \
    S

     ********************************
     !    !    !    !    !    !    !
     !  @ !    !    !    !    ! YB !
     -------------------------------
     !    !    !    !    !    !    !
     !    ! EB !    !    !    !    !
     -------------------------------


   "****"=MOUNTAIN CHAIN
   "!"=SECTOR DIVIDERS
   "-"=SECTOR DIVIDERS
   "EB"=ENEMY BASE
   "@"=ENEMY FUEL DEPOT
   "YB"=YOUR BASE
  THIS IS JUST THE VERY NORTH PORTION OF THE MAP.
  THERE IS A CIVILIAN AIRPORT SOMEWHERE TO THE SOUTH.
  WHEN YOU START, YOU WILL BE ON THE RUNWAY AT YOUR BASE
  LOOKING WEST.

I WOULD RECOMMEND HITTING "U" BEFORE TAKING OFF, IT LETS
YOU USE THE MOUNTAINS AS A GUIDE.
AFTER YOU HAVE KILLED ALL ENEMY PLANES, YOU MAY REFUEL
AND GET MORE AMMO BY RETURNING TO YOUR BASE AND HITTING
"S" WHEN OVER THE SMALL BUILDING ON THE RUNWAY-PAD.
TO SHOOT ENEMY PLANES, YOU MUST FIRST BE LOOKING OUT
OF THE COCPIT (NOT RADAR VIEW) AND WAIT UNTILL "ENEMY
IN RANGE" FLASHES ON THE SCREEN.

ONE LAST NOTE. HITTING "W" DECARES WAR. (NO POINTS ARE
GIVEN IF A PEARL HARBOR TYPE ATTACK IS MADE!)

HAVE FUN!


                    JOHN PYLES

-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=

              SUBLOGIC'S FS1 FLIGHT SIMULATOR

              Software review by Roxton Baker
             Box 8272, APO San Francisco, 96555

     This is a superb program.  It is so innovative and advanced that it must
be praised in parts; its whole effect is beyond comparison with any existing
TRS-80 software.  First, FS1 is a highly realistic simulation of small
aircraft flight.  It combines with that a sophisticated, ingenious, and
breathtaking 3-D graphics display.  Finally it provides an exciting and
challenging real-time dogfight game.  In any one of these aspects FS1 must be
rated well ahead of its competition.  Indeed for the graphics display it has
no competition.  Without duplicating the excellent 35-page manual that
Sublogic provides it would be difficult to describe and evaluate the many
features of this program.  I read the manual and could only say "this program
does all that?".  Yes it does.  While not pretending to convey the sense of
action and dimension that you'll find in FS1, I will try to explain its
setting and mechanics as they appear to a novice user.


THE ACTION OF FS1

 You are the pilot of a small plane, similar in performance to a WW I British
Sopwith Camel.  Your world is a 6x6 grid of mile squares.  Starting at your
airbase, the runway stretching away from you in true perspective, you push the
engine to full throttle and raise the elevators.  The plane gains speed down
the runway, the center-lines run past more quickly and soon you lift off.  As
the runway falls away below and the horizon drops, a mountain range appears on
your right.  The instruments show a stable heading and a steady climb.  You
press the U key to get the upper-level view.  At two thousand feet or so you
might ease the stick forward (press T).  The nose dips and you see a panoramic
view of the countryside grid moving below you - again all in true perspective.
In the far distance you may discern the German airbase and fuel depot.  Bear
in mind that the graphics resolution on our TRS is miserably deficient for
service like this.  Even the finest graphics software will require some
experience and imagination on your part.  Partly for this reason your first
impression of the perspective view may be one of confusion, and attempts to
navigate by it impossible.  Don't give up.  Flying around will continually
develop your ability to make sense of the view until you not only find it
quite adequate but preferable even for navigation over the "radar screen"
view.  The radar view is a new feature of the TRS-80 Flight Simulator (the
Apple version doesn't have it) and is activated with the down-arrow key.  It
shows you, as if from far above, the silhouette of your plane moving over the
ground.  There is no perspective here and you can clearly see exactly where
you're flying.  The beginner can explore the world using only this view and it
is also very useful when taxiing at your airbase, dropping bombs, and checking
on enemy fighters.  The sophistication of Sublogic's graphics package is
evident from the fact that if FS1 had ONLY this flat auxiliary view it would
still be well ahead of the pack.  Once familiar with the world and the view,
you might briefly put the stick forward again and turn the rudder (with F or
H) to go into a spin.  The landscape fills your view and begins to whirl by at
a crazy angle.  Your airspeed climbs.  Pull the stick back with B and reverse
the rudder - the whirling slows and you level off.  The instruments stabilize,
and the ground below again stretches away in flat squares to the mountain
range.  Jog the rudder to achieve a straight course and just let it fly.  The
grid squares below you unfold until the last one is gone and you are flying
over - nothing.  Turn back towards land and you will see your square little
world sitting like an island in the sea, still in true perspective.  Amazing.
The point here is that the 3-D graphics system is capable of handling even
extreme operations without breaking down.  Only by flying far away from the
world can you cause the program to lose track of your position and wrap-around
or move you randomly.  During aerial maneuvers, even wild ones, it does not
fail.  The TRS-80 resolution may be poor but the information is always there.
I never thought our little computer was capable of such performance and can
only repeat that this is truly fine software.


THE AERIAL DOGFIGHT GAME

There is a game in here too.  Declare war with the W key and you may attack
the Germans with your machine-guns and bombs.  They have five fighters, of
four different types.  Each type has different capabilities, and the pilots'
skills and the orders they follow differ as well.  They will rise to meet you
as you approach.  Occasional use of the radar view is helpful here in
determining their distance from you; due to the poor TRS-80 resolution the
individual planes are never seen as anything more than single graphics blocks.
You see them this way against the spinning landscape as you turn and dive to
bring them in range of your guns.  A score is kept of the number of fighters
you destroy and the number of bomb hits you achieve (with the X key) on the
fuel depot.  Should you survive more than one mission you may return to your
airbase and taxi to the service area for more fuel, bombs, and ammo.  The
manual speaks as if it is actually possible to shoot down a number of fighters
without being destroyed yourself.  I trust it is not referring only to the
Apple version.  I've been lucky to knock down even one enemy before the others
get behind me and shoot my plane full of holes, whereupon I crash.  I have
also not yet been able to hit the fuel depot with a bomb.  Probably it is just
a matter of needing more experience and better tactics.  I would suggest to
the author a "practice" mode wherin one could take on single fighters of his
choice or make trial bomb runs without enemy planes around.  Also sound
effects for machine-guns firing, bullets striking, bombs exploding and
aircraft crashing would greatly add to the fun.  These last would be almost
trivial additions to this program.


THE SIMULATION

The actual flight simulation done by FS1 deserves more explanation.  Many
variables are accounted for and the computations are done with great accuracy.
The manual gives this impressive list of the factors considered by the
program:

        Aircraft attitude
        Lift per Bernoulli's equation
        Lift due to angle of attack
        Forward push due to prop thrust
        Forward or rearward pull of gravity
        Downward pull of gravity
        Drag (induced)
        Drag (parasitic)
        Lift loss in turns
        Aircraft momentum (linear)
        Aircraft momentum (polar)
        Lessening of lift and drag due to altitude
        Side forces due to banking
        Stalls due to high angle of attack
        Fixed-pitch prop thrust efficiency and prop stalling
        Structural failure due to excessive G forces
        Ground steering (by aircraft wheels)

The program also calculates the plane position to the nearest tenth of an
inch, its velocity to the nearest 0.006 MPH and its heading to the nearest 0.2
degrees.  All of this really does seem to work.  You do lose altitude in turns
on the FS1, and if you try to climb above 18,000 feet you'll find that (just
as in a real Camel) the air becomes too thin to climb further.  Going into a
very steep dive and developing too much airspeed is dangerous because you may
not be able to pull out without tearing the wings off.  Conventional maneuvers
in FS1 appear to work correctly and I can only assume that the puzzling things
that do sometimes occur are also realistic.  For example in a long dive at a
German plane I sometimes note that my rudder controls are markedly less
effective than normal.  This temporary effect disappears with a change in
aircraft attitude and, possibly, a decrease in airspeed.  Perhaps a pilot
could explain this; to me it is part of the learning process that FS1 puts you
through.  I never had any appreciation of flying a plane until I put a few
hours into FS1.  Now at least I understand how it differs in principle from,
say, driving a car.  In FS1 steering on the ground is exactly like driving.
By itself this would be a significant program since the perspective view is
still available and, along with the radar view, can access via the D key a
low-level data base that gives a much more detailed picture of what's on the
ground (but only around your airbase).  Steerable wheels replace the rudder
action and with those, the throttle and the brakes you can taxi anywhere.  At
your airbase you can see the runway markers and service area rotate around you
as you steer the plane.  It's fun just learning to taxi into the service area.
The FS1 craft also has a number of instruments, all of which are quite well
done.  Most important are the altimeter, the compass, the turn rate indicator
and the airspeed gauge.  Learning to use these provides the key to flying the
plane successfully.  The turn rate indicator tells you how fast you are
turning right or left and is very useful when you can't accurately judge from
the scenery.  Don't neglect it as I did at first.  The compass is a necessity
when there are no landmarks in sight, which is often since most of the grid
squares are completely blank.  A few more landmarks might assist in orienting
the beginner.  On the other hand too much scenery would confuse the graphics
even more, and it may be that more experienced FS1 pilots can easily roll a
bit and see where they are.  As with the other aspects of this program it is
difficult to imagine any real improvements - it has already been so well
thought out.


THE VALUE OF FS1

At $25 Flight Simulator is not inexpensive.  It will however provide you with
quite a few hours of enjoyment, will amaze you with its graphics, and will
teach the non-pilot a good deal about flying.  Many highly-touted TRS-80 game
and graphics programs cost $15 and provide almost no value after five minutes.
Some provide no value at all.  Relatively speaking FS1 is a bargain.  If you
have the money, and the copy-protection (see below) doesn't bother you, buy
FS1.  You will be getting the most advanced software available for the TRS-80.
There is nothing else like it.  This is the kind of program that some people
might buy an Apple just to run, and Sublogic could very well market it at
$150.  You can order from:

                   Sublogic Inc.
                   Box V
                   Savoy, Illinois
                             61874
                   (217) 359-8482


INSIDE FLIGHT SIMULATOR

One of the reasons FS1 is so unique is because Sublogic has used the 3-D
graphics package that they sell separately for S-100 and Apple computers.  I
think that this package allows the programmer to specify an object or a scene
in terms of a database of points.  By then specifying an observer's location
in three-dimensional space (x,y,z), the programmer can have the graphics
package do all the rotational calculations necessary to display the scene as
that observer would see it.  To build a flight simulator, then, one need only
keep track of where the airplane is and which way it is angled.  Passing this
information to the graphics package and calling for a display at regular
intervals will generate the moving 3-D effect.  This is speculation, but
certainly there is a database table in FS1 which could be changed to change
the world over which you fly.  Also, the characteristics of the plane you are
flying could be changed.  This appeals to me; I'd like to try an F-14 against
those Fokkers.


THE COPY-PROTECTION

This thinking immediately brings up the one real complaint I have about the
FS1 program tape - it is copy-protected.  Sublogic doesn't want you giving
copies away to each of your 250 friends.  Apparently they would also prefer
that you not share the cost with even one other friend.  That's their
prerogative but I question the fact that they do not mention the
copy-protection in their ads.  Master tapes can wear out and/or be eaten by
the CTR-80 recorder.  I've had both happen.  A year or two from now who will
replace this $25 tape?  Also, many people who buy FS1 will be disk owners and
every one of them will be unpleasantly surprised to find that the standard
utilities DCV, TDISK, and LMOFFSET won't put it on disk.  Finally, the
copy-protection makes it difficult to change the program.  It's too bad that
the time and effort spent on this protection (and paid for by the customer)
wasn't put towards better things.  Because, like most other such schemes, this
one is easily defeated and serves only to greatly inconvenience the purchaser
who DOESN'T have lots of friends to help him break it.  Since it is never
mentioned in the ads, though, it doesn't affect sales - a real benefit.  As I
needed to run from disk and I may wish to modify Flight Simulator I developed
the program of Fig. 1.  Requiring 32K, it will assist you in putting FS1 onto
disk as a standard /CMD file.  A byproduct of this was the program of Fig. 2
which will allow a Level II 16K owner to backup the master FS1 tape.  The use
of these two programs is described below.  Remember that there is no guarantee
they'll work on the version of FS1 you receive.  My advice is:  if the
copy-protection concerns you at all, tell Sublogic that you won't buy until
it's removed.  A few dozen letters to that effect may change their minds.


PUTTING FLIGHT SIMULATOR ON DISK

Before starting, load the FS1 master tape a few times so that you know the
correct volume setting for it.  Then make sure your disk has at least 15 grans
of free space.  Under Disk Basic set Memory Size to 48896 and type in the
program of Fig. 1.  Check it and RUN it.  If the DATA statements have any
errors in them the message "BAD CHECKSUM" will appear.  When the program is
correct SAVE it onto disk.  You will now need a very-good-quality blank tape
on which an "intermediate" non-runnable copy of FS1 will be stored.  Still in
Basic, type:  SYSTEM <ENTER>   /48896 <ENTER>.  This will execute the machine
language program just POKEd in.  The first prompt you see will be to start the
FS1 master tape running in the cassette recorder.  Rewind it to the beginning
and put it in PLAY.  As the master tape is read in most of the code will be
displayed in the upper right corner.  When it is all in the next prompt will
appear for you to put the blank tape in the recorder and set up to RECORD.
The tape will start moving immediately.  Once it's going press <ENTER>.  The
intermediate copy of FS1 will be written onto the blank tape.  Again the
characters will be seen in the corner.  At the end of the dump the disk will
boot-up.  Rewind the intermediate tape to the beginning and type BASIC2
<ENTER> to get into Level II.  Just press <ENTER> for Memory Size.  Now use
the SYSTEM command etc. to load the intermediate tape just as if it were the
master FS1 tape.  If you get an error during the load, press RESET to boot the
disk and start again from the BASIC2 entry.  At the end of a successful load
the disk will again boot-up.  In DOS now, type:

DUMP FS1/CMD (START=X'8357',END=X'B480',TRA=X'8357')  <ENTER>

Don't omit the two required blanks in the DUMP command; one after DUMP and one
after /CMD.  Also note that Newdos/80 has a much simpler DUMP syntax - check
your manual.   When the disk stops running it will have a copy of FS1 on it
that you can run by typing  FS1 <ENTER>.

Those interested in modifying the program will know how to take it from here.
The FS1 code is self-modifying and very complex.  Here's a few notes on what I
have found, and you might also refer to Richard Vanderburgh's article in one
of The Alternate Source's recent "BTI" publications.  The routine at 72F8H
that writes the border on the screen is erased once it is used.  At 4AEBH and
518FH are routines that will unpredictably modify memory (read: erase
everything) when called.  It is best to simply put a C9H at these two
locations.  The main keyboard scan routine seems to be at 4A75H - it may be
possible to patch in added features here.  "IN RANGE" is printed at 5176H,
"STALL" at 4D0EH.  The area 4407H-4475H (at least) is used for variables
storage.  If you succeed in finding and modifying the data base I'd like to
hear about it.


BACKING UP THE FS1 MASTER TAPE  (16K LEVEL II)

Before starting, load the FS1 master tape a few times so that you know the
correct volume setting for it.  Then enter Basic with a Memory Size of 32512.
Type in the program of Fig. 2, check it and RUN it.  If there is an error in
the DATA statements the message "BAD CHECKSUM" will appear.  When the program
is correct, CSAVE it.  Then at the READY prompt type  SYSTEM <ENTER>  /32512
<ENTER>.  This will execute the machine language program just POKEd in.  The
first prompt will ask you to start the FS1 master tape running in the cassette
recorder.  Rewind it to the beginning and put it in PLAY.  As the code is read
in all but the first characters will appear in the upper right corner.  At the
end of the load a second prompt will appear for you to put the blank tape in
the recorder and set up to RECORD.  The tape will start moving immediately.
Once it's going press <ENTER>.  The backup copy of FS1 will be written onto
the blank cassette.


THE PROGRAMS:

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
10 REM  MEMORY SIZE MUST BE 48896
20 FOR J=0 TO 198
30 READ D
40 CK=CK+D
50 POKE -16640+J,D
60 NEXT J
70 IF CK<>18640 THEN PRINT"BAD CHECKSUM" : END
80 PRINT"SAVE THIS PROGRAM"
90 PRINT"THEN USE   SYSTEM   /48896   TO EXECUTE THE ML CODE"
100 DATA 243,205,201,1,33,81,191,205,207,68,175,205,18,2
110 DATA 1,203,40,33,0,160,205,150,2,205,53,2,119,198,1
120 DATA 50,63,60,43,11,120,177,32,241,1,16,1,17,0,161
130 DATA 33,0,160,237,184,33,240,159,54,0,43,16,251,33
140 DATA 152,191,34,155,119,33,0,0,34,135,119,34,136,119
150 DATA 33,128,91,34,230,160,195,96,191,83,84,65,82,84
160 DATA 32,70,83,49,32,84,65,80,69,13,33,128,191,205
170 DATA 207,68,205,73,0,205,135,2,33,0,161,1,203,41,126
180 DATA 50,63,60,205,100,2,43,11,120,177,32,243,199,83
190 DATA 84,65,82,84,32,82,69,67,79,82,68,73,78,71,32,60
200 DATA 69,78,84,69,82,62,13,1,128,49,17,0,131,33,0,67
210 DATA 237,176,1,24,0,17,87,131,33,175,191,237,176,199
220 DATA 243,1,48,49,17,102,67,33,102,131,237,176,195
230 DATA 102,67,243,49,0,98,62,67,205,156,73

      Fig. 1:  Program to put Flight Simulator on disk

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -


- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
10 REM MEMORY SIZE MUST BE SET AT 32512
20 FOR J=0 TO 124
30 READ D
40 CK=CK+D
50 POKE 32512+J,D
60 NEXT J
70 IF CK<>10846 THEN PRINT"BAD CHECKSUM" : END
80 PRINT"CSAVE THIS PROGRAM."
90 PRINT"THEN USE   SYSTEM   /32512    TO MAKE THE COPY."
100 DATA 243,205,201,1,33,91,127,205,167,40,175,205,18,2
110 DATA 1,203,40,33,0,122,205,150,2,205,53,2,119,198,1
120 DATA 50,63,60,43,11,120,177,32,241,1,16,1,17,0,123
130 DATA 33,0,122,237,184,33,240,121,54,0,43,16,251,33
140 DATA 109,127,205,167,40,205,73,0,205,135,2,33,0,123
150 DATA 1,203,41,126,50,63,60,205,100,2,43,11,120,177
160 DATA 32,243,195,204,6,83,84,65,82,84,32,70,83,49,32
170 DATA 77,65,83,84,69,82,13,0,65,78,89,32,75,69,89,32
180 DATA 84,79,32,68,85,77,80,0

 Fig.  2:  Program to backup the Flight Simulator master tape 
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
