[Search for users] [Overall Top Noters] [List of all Conferences] [Download this site]

Conference hydra::amiga_v1

Title:AMIGA NOTES
Notice:Join us in the *NEW* conference - HYDRA::AMIGA_V2
Moderator:HYDRA::MOORE
Created:Sat Apr 26 1986
Last Modified:Wed Feb 05 1992
Last Successful Update:Fri Jun 06 1997
Number of topics:5378
Total number of notes:38326

730.0. "FSII update/analog joystick" by NAC::VISSER () Mon Sep 21 1987 11:13

    I received a newsletter from subLogic last week detailing an update
    for Flight Simulator II for the Amiga.  Among the changes are misc.
    bug fixes, removal of copy protection, and analog joystick support.
    The newsletter contained a well written editorial on copy protection
    and subLogic's new policy in this regard, which amounts to removal
    of copy protection as the opportunity arises.  A Western Europe
    scenery disk was introduced.  
    
    Does anyone have any experience with analog joysticks on the Amiga?
    Over the weekend I picked up a nice Suncom analog joystick for
    IBM/Apple II application with the intention of using it on the Amiga.
    Reverse engineering it revealed the function of the IBM/Apple selector
    switch, as well as the pin-out of the male 9 pin D-subminiature
    connector; there are also a 15 pin D-sub adapter and a 16 pin DIP
    included.  Besides the fact that that the 9 pin connector is the
    wrong gender for the Amiga controller ports, the connections are
    wrong also.  I checked the Amiga hardware manual and devised an
    assingment that makes sense to me, but still wonder if there is
    a convention for this device for the Amiga.  I would appreciate
    any help offered.	Thanks,	John
T.RTitleUserPersonal
Name
DateLines
730.1UPDATE PROCEDURE??POLAR::GOSLINGKANATA MFG I.S.Mon Sep 21 1987 12:1512
       re: .0
       
       What are the specifics regarding the update process.  I haven't
       seen the newsletter yet (although I'm a registered owner).  
       
       It's a long way to Canada via Cessna :-)
       
       Thanks
       
       Art
       
730.2update procedureNAC::VISSERMon Sep 21 1987 13:155
    The instructions are to mail in your original disk, ver. 1.0 (mine's
    1.01), don't send any manuals(!), and the new disk would be sent
    as soon as they receive yours.  I sent mine in last Wednesday (so
    I'm grounded), and I'll let you know when I receive the new one.
     I also sent a note asking about the joysticks.
730.3more dopeNAC::VISSERMon Sep 21 1987 18:145
    another possible issue for Amiga analog sticks versus IBM/Apple
    II is the resistance range of the control pots: the one I bought
    measures 0 to about 270K Ohms;  Commmodore's spec is 528K maximum,
    recommended 470k +/- 10%.
    Any ideas?
730.4Off we go, ...NAC::VISSERMon Oct 05 1987 14:572
    Got the update, modified IBM/AppleII stick; works great!  Any
    questions, contact me.  Regards, John
730.5please post!MPGS::BAEDERTue Oct 06 1987 19:544
    ok, I'll bite...post details on conversions, etc.
    
    scott.
    
730.6O.K.NAC::VISSERThu Oct 08 1987 16:242
    Sorry, just got back from a standards meeting.  I'l try to post
    by the weekend.	John
730.7Analog joystick connectionsNAC::VISSERMon Dec 21 1987 10:5025
    So sorry for the long delay, but here are the basics:
    
    Using an IBM compatible analog joystick, change the connector or
    make an adapter according to the contact mapping below:
    
    NOTE: DO THIS AT YOUR OWN RISK.  I ACCEPT NO RESPONSIBILITY FOR
    ANY DAMAGE YOU DO TO YOUR COMPUTER, JOYSTICK, OR YOURSELF AS A RESULT
    OF THIS INFORMATION.
    
      AMIGA  Joystick
    
    	3	7
    	4	1
    	5	8
    	7	2
    	8	3
    	9	5

    
    If you have an APPLE II/IBM stick, make sure its set for IBM mode.
    Works great for me, esppecially the spring stick forces and trim
    controls.  I recently found out that many real aircraft provide
    for elevator trim in exactly this manner, that is, by connecting
    springs to the control column.  Happy landings!
    John
730.8More on analog sticks pleasePOLAR::GOSLINGKANATA MFG I.S.Mon Dec 21 1987 12:5512
       John, 
       
       Not knowing anything about analog joysticks and IBM compatible
       ones in particular, could you please provide a make/model number
       that I could look for.
       
       Another question - How would you rank the improvement in control
       of the aircraft over the normal mouse or non-analog stick - ie: is
       it worth the money?
       
       Thanks - Art
       
730.9how to doNAC::VISSERMon Dec 21 1987 15:3026
re.: .8
    
First, about aircraft control.  The difference is absolutely astounding!  I
just couldn't do it with the mouse, or the digital stick, probably because I
don't expect to displace the control, but rather to apply pressure to it.  The
result is that while I could never land (maybe once, on the grass next to the
runway), now I can put her down from almost anywhere.  I've even tried aborting
a takeoff from about 150' and turned more than 90 degrees to a good dead stick
landing.  I only wish they had a tail dragger so I could try wheel landings. 
    
The joystick I have is a Suncom TAC1+.  On the box was the model number
SFC-090, printed with the warranty information.  I've seen several Suncom
sticks in the stores from time to time, and the one I really wanted, but
couldn't find when I went to buy it, had thumbwheels on the bottom of the base
so you could selectively disable the x and y springs, to allow the stick to
flop around.  This would be the preferred mode for a "mouse stick" control as a
workbench pointer.  For flying you want the spring force, and the one I got,
with the springs always engaged, is fine.  I bought it at Lechmere on sale for
about $20.00.  Its usually $30.00.  I made the adapter for the Amiga with one
each male and female 9 contact D-sub. connectors with short "cross-over" wires
between.  I installed jackscrews on the connector the goes to the stick cord so
the adapter can't be installed in the Amiga, in reverse (it won't work, may
hurt, that way).  Alternately, I could have amputated the cord's molded on
connector and installed a new one, but I hate custom hardware.  If you need
help, let me know. John 
    
730.10Great stuff!STAR::BANKSIn Search of MediocrityMon Dec 21 1987 15:3221
    I really appreciate the directions for making an adapto-plug for
    an analog joystick.
    
    I can *pretty* reliably land the plane in FSII, but rarely where
    I want to.  And, the only way I can do that is with keyboard control,
    and that's so sluggish that I have to plan things *real* far back
    in advance.
    
    Trouble with FSII (both the version I bought and the updated version
    on sceneriy disk #11) is that when there's a lot of detail to update,
    it does so at the expense of response to the input.device.  The
    really nasty edge of this, of course, is that the closer you get
    to the ground, the more scenery there is to update, so the slower
    the response to the mouse and keyboard.  I punch a couple of ">"
    keys to adjust the rudder, and sometimes it's a second later before
    the program sees the characters.
    
    Ever since I'd have FSII, I've wanted real badly to try it with
    an analog joystick.  Now, with thanks to NAC::VISSER, I can.
    
    Of course, that doesn't mean I'm going to be any better at it. :-)
730.11how to flyNAC::VISSERMon Dec 21 1987 15:5015
    Another thing occurred to me after reading reply 10: it helps to
    know how to fly!  The best single source on how to fly is
    Langenweische's classic "Stick and Rudder", available at most flight
    school shops and pilot's shops at small airports, as well as any
    good bookstore.  Two good tips from the book that work well in 
    FS II:
    
    1. the throttle is the up/down control.
    2. the elevator is the speed control.
    
    Using these tips, decide on an approach/landing speed and hold it
    constant with the elevator.  Make the plane come down by reducing
    power (usually to idle).
    Happy (on-airport) landings!
    John
730.12analog supportERLANG::SLACKMon Dec 21 1987 17:034
    Is special software needed to support the analog joystick?  Does
    this come with FSII or do you have a PD routine for it?
    Or what?
    
730.13New Stick on the market ?30781::HARVEYMon Dec 21 1987 17:169
    
    
    	Has anyone seen a ad ( Byte ? ) showing a semi real control
    wheel and throttle joystick? I was waiting for a flight at the
    airport and noticed the ad. It said that it supported the IBM pc
    and the Atari ST and would be supporting the Amiga soon. Has anyone
    tried this unit out or has any comments on it? 
    
    tnx Renis
730.14NAC::VISSERMon Dec 21 1987 17:3210
    re.: .12, .13
    The "special software" is the updated version of FS II.  I got mine
    back in October, and it included anaolg stick support, no copy
    protection, etc.  
    I just saw the control yoke in a store in Santa Clara, Ca. called
    Frye's.  Its a beautifully made device which is actually an analog
    joystick with nice "stick force" springs, fire buttons on top of
    the "ram's horns"  and a slide pot for the throttle.  You would
    need a new driver from Sublogic to take advantage of the throttle
    control.  The price was about $110.00.  Kinda steep for a joystick.
730.15Control stick setup at LechmereCIMNET::KYZIVATPaul KyzivatMon Dec 21 1987 17:3523
>   < Note 730.13 by 30781::HARVEY >
>    
>    	Has anyone seen a ad ( Byte ? ) showing a semi real control
>    wheel and throttle joystick? I was waiting for a flight at the
>    airport and noticed the ad. It said that it supported the IBM pc
>    and the Atari ST and would be supporting the Amiga soon. Has anyone
>    tried this unit out or has any comments on it? 
>    
	Just this last weekend I have been seeing a control setup like the one
	described above.  I saw it at Lechmere yesterday.  I couldn't tell from
	the info on the box whether it would work with the Amiga.  It did
	mention being configurable in some way.

	Not owning (or planning to own) flight simulator, I didn't notice the
	price.


	On the analog joystick interface: once rewired, is it compatible with
	the digital joystick?  In other words, can it be used for all the
	various games which take standard joysticks?  The junk joysticks I have
	barely work for something as simple as PacMan.

Paul
730.16Duhhhhh...LEDS::ACCIARDIMon Dec 21 1987 22:0414
    
    Could someone please post a list of which pin corresponds to which
    wire color on the Suncom analog joystick?  I foolishly demolished
    the male 9-pin D connector trying to find out (I didn't have a
    continuity tester, so I was just going to look and see).
    
    Also, just for us dumb folk, could someone sketch which pin is which
    on the 9-pin D connector?  Mine aren't numbered, and I don't have
    a connector expert nearby.
    
    Thanks.
                                                               
    Ed.
    
730.17joystick pinoutNAC::VISSERTue Dec 22 1987 13:5645
O.K. sports fans, here it is:

Looking into the joystick connector, with the row of 5 pins horizontally
across the top, pin 1 is top left, pin 5 is top right, pin 6 is bottom left,
and pin 9 is bottom right.  The Suncom internal wire color mapping for my
stick is:
              color           comment
	1	BROWN 		button
	2	ORANGE          pot common
	3	GREEN           switch common
	4	NC
	5	WHITE           pot wiper
	6	NC
	7	BLACK           button
	8	BLUE            pot wiper
	9	NC

NOTES:
1. NC means "no connection"
2. remember there is a Apple/IBM mode switch on the stick; there is more
circuitry involved in the joystick than is indicated here.  I would post
my reverse-engineered schematic, but not only do I think that I made at
least one error, but some may consider the schematic to be "intellectual
property" of Suncom.  See the adaptor in a previous reply for application
to the Amiga.

Amiga joystick connector:

	1	unused
	2	unused
	3	button 1
	4	button 2
	5	POT X
	6	unused
	7	+5V
	8	GND
	9	POT Y

NOTE:
1. I think the Amiga docs may have swapped the X and Y designations.


	The analog joystick won't function as a digital stick for programs
requiring a digital stick.  
    
730.18grovel grovel...LEDS::ACCIARDITue Dec 22 1987 14:1212
    Thanks John.  I feel like a real jerk (probably because I am a jerk)
    but I just realized that the numbering would be a mirror image from
    the male to the female arrangements.
    
    I actually WAS able to relate a given pin to a wire color, but when
    I wired it up, it acted brain damaged.  I hope I didn't damage either
    the Amiga or the oystick.
    
    Thanks again.
    
    Ed.
    
730.19NAC::VISSERTue Dec 22 1987 14:145
    Ed, 
    	Maybe my info on connections contains an error; I don't have
    very good notes on it, I'll check.  I'll try to post an end to end
    pin list.
730.20!LEDS::ACCIARDIWed Dec 23 1987 17:5532
    Zowie!!  This analog stick opens up whole new worlds!  I always
    assumed that I just had a few mis-wired ganglia or stray neural
    paths in my gray matter, since I never had much success in flying
    FS][.  This new stick has infinite resolution, instantaneous response,
    blah blah....  thanks a million John.
    
    On the remote chance that there is someone out there who is marginally
    dumber than myself, here's how I wired it... (Suncom Tac 1+)
    
    Carefully hack off the standard connector on the joystick with a
    dull axe.  You'll find six severed wires colored black, brown, blue,
    orange, green and white.
    
    Looking into the Amiga male game port (sounds worse than it really
    is) you'll see the following pin arrangement.  Just get a female
    9-pin D connector and wire as follows...
    
    
    			             Blk    Brn    Blu
    		        1      2      3      4      5
                    -------------------------------------
    		    \	*      *      *      *      *   /
                     \                                 /
                      \    *      *      *      *     /
                       \-----------------------------/
                           6      7      8      9
                                Orng    Grn    Wht
    
    That's all there is to it.  Have a ball.
    
    Ed.
    
730.21absolutely amazing differenceFIGS::BANKSIn Search of MediocrityTue Dec 29 1987 15:5439
    Well, here's another pat on the back for NAC::VISSER:
    
    Used to be, when I ran FS II, I could land the plane pretty reliably,
    but it'd be a long drawn out process, with an equally long and drawn
    out landing approach.  If I wanted to go so far as land on a runway,
    it'd be even more work, then only on those runways for which the
    simulator provided an ILS beacon (or whatever they're called). 
    Even then, as often as not, I'd end up landing on a patch of ground
    parallel to the intended runway.
    
    In retrospect, I find most of this was due to how cruddy it was
    trying to control the plane with a mouse and/or keypad strokes.
    The closer the plane would get to the ground, the slower I'd go,
    causing the plane to respond more slowly (as you'd expect).  In
    addition, the closer you'd get to the ground, the more stuff there'd
    be for the program to update in the window, so the response to the
    input.device would start getting lumpy.  Because of this, I resorted
    to lining up with the runway several miles back, and just coasting
    in from altitude to the airport.  I could get the landing ok, but
    lining up so exactly from several miles back don't always make it.
    
    Last night I went out and got an analog joystick.  Wasn't a TAC1,
    because they were out, so I got a Kraft instead.  Half an hour to
    wire up a pair of connectors as shown previously, and another half
    an hour to remember/figure out that I have to type a "J" to get
    the analog joystick to work (didn't have the documentation handy).
    
    After that, I was able to update my landing procedures as follows:
    
    1. Fly around and look for a runway that looks good.
    
    2. Land on it.

    Didn't crash once.  Didn't miss the runway once.  Felt almost like
    I had the program under control for the first time.  Worked first
    time, every time.
    
    All is right in the world.
    ;-)
730.22:-)FIGS::BANKSIn Search of MediocrityTue Dec 29 1987 15:575
    Oh yeah,
    
    I will have to admit, though, that now, the simulated passengers
    must be getting lots bigger cases of motion sickness than they used
    to...
730.23LEDS::ACCIARDITue Dec 29 1987 16:358
    Isn't it amazing how much more responsive the entire screen seems
    to be?  Used to be that you'd move the mouse and a little while
    later the screen would scroll.  Now, you can watch the screen bob
    up and down in real time as you wiggle the joystick back and forth.
    
    If only Genie's multiplayer Air Warrior supported analog joysticks!
    
    Ed.
730.24Bug found in V1.1 of FS-IICOOKIE::WECKERA wholly owned subsidiary of DECThu Dec 31 1987 20:1320
Well.. Abel's came through and I am now the proud owner of V1.1. I also got
the Suncom analog joystick and it works fine (with the previously posted
rewiring).

HOWEVER... if you load the disk into memory (VD0:) and then try to run it
(``fs2'' as the documentation tells you) it works fine UNLESS you started
with an interlaced workbench. In that case, the right edge of the screen is
missing and the mouse hotspot is halfway down the right side of the arrow!!!

I know all about ``SETLACE'' for make a non-interlaced screen otherwise, but
is there a kludge around that will make an interlaced scrren non-interlaced
(without rebooting)????

OTHERWISE the ram feature is pretty useless for me since I only run interlaced.

Anbody have any help?

Thanks!
dave

730.25laceWB.arcLEDS::ACCIARDIFri Jan 01 1988 08:2911
    Look in LEDS3::USER6:[ACCIARDI.AMIGA] for LACEWB.arc.
    
    This short file (3700+ bytes) will allow you to toggle from 200
    lines to 400 lines and back again from Workbench or CLI.
    
    I haven't used this very much, so I can't say whether or not it
    will help. But I have tried to run FSII in 200 line interlaced mode.
    FSII kicks the Amiga back into 200 line non-interlaced during
    the boot process.
    
    Ed.
730.26LACEWB did the trick!COOKIE::WECKERA wholly owned subsidiary of DECFri Jan 01 1988 16:3429
re:	.25

Thanks ED! Works great. This is what I do:

	1) Changed my kickbench disk to check if the file DF1:fs2 exists
	   and VD0:fs2 does NOT exist. If this is the case copy all root
	   directory files up from DF1: to VD0: (I added LACEWB to the
	   FS-II disk.

	2) Now I come up like normal. If I want to play with FS-II I just
	   say: "LACEWB ; FS2" (While in the shell and sitting in VD0:)

	3) I'm up right away.

Unfortunately two things I haven't been able to change yet:

	1) Why do you have to save RAM to DF0: (why can't I give a
	   device name like VD0:).

	2) Too bad a ``QUIT'' from FS-II will cause a reboot. Otherwise
	   switching in and out would be almost instantaneous.

Side item:	What's the highest score anyones gotten in WW-I mode?
		Any good hints?


Thanks for the help.. (and back to the simulator).. dave


730.27Multi-Player anyone?COOKIE::WECKERA wholly owned subsidiary of DECFri Jan 01 1988 16:3611
Anyone interested in multi-player mode?
Anyone have the host program for a VAX?
Anyone have the communications specs (before I reverse engineer it)?


I'm thinking of writing a host program so that we could fly over the E-net.
Anybody interested?


dave

730.28Count me in!LOWLIF::DAVISThat&#039;s not a BUG, it&#039;s a FEATURE!Fri Jan 01 1988 22:596
Wow!  Great!  Awesome!  Stupendous!  Wonderful! and various other exclamatory
expressions.  Flying on the E-net would be great!

				It's got my vote...

						...richard
730.29Oh well....COOKIE::WECKERA wholly owned subsidiary of DECMon Jan 04 1988 16:0613
re:	.27

I spoke with subLOGIC and (after finally getting through to engineering) found
out that the ``greater than two planes in multi-player'' mode is really only
a dream at this point. There IS no protocol yet or any host programs of any
sort and they don't even have a guesstimate for it.

I will probably build a little "pass through" program so that at least 2
people can fly with each other over the network. Will keep everyone posted
in a seperate note (when/if) it happens.

dave

730.30ANGORA::SMCAFEESteve McAfeeMon Jan 04 1988 16:352
    
    Could this be done for Air Warrier?  Are the sources on Genie?
730.31Giving up on ENET/Multiplayer (for now)COOKIE::WECKERA wholly owned subsidiary of DECWed Jan 06 1988 18:3021
re:	.27

Oh well... the best laid plans....

I finally got an ULTRIX/DECnet program up and running that will pass raw
(binary) data back and forth from terminals over the net. I thought I was
done except... nothing worked!

After much brain sweat I finally figured out what was going on. The !@#$%s
at SubLogic are using "break" as their start of packet signal. This means
that if you are runnig on a LAT, you blow up because the "break" gets you
back to local mode.

If you are running directly into the host (via modem) everything appears
to work OK, but you never get anything from the other plane... since the
network is only passing "real" characters (the "break"s get dropped).

I don't feel that there is enough of a call for this (for now) to continue.
If anyone wants to pick up the gauntlet (VMS or ULTRIX) let me know and I'll
be happy to send you the program so far (only 2 pages of C code).

730.32Ode to Enet/MultiplayerLOWLIF::DAVISThat&#039;s not a BUG, it&#039;s a FEATURE!Thu Jan 07 1988 11:1218
Hi Dave, sorry its turning out to be such an ordeal.  It sounded like a 
great idea!  I have a couple of comments/questions:

Wouldn't 'SET PORT BREAK REMOTE' at the Local> prompt cause your program
to receive the break?

>If you are running directly into the host (via modem) everything appears
>to work OK, but you never get anything from the other plane... since the
>network is only passing "real" characters (the "break"s get dropped).

You mean you can't send the break character across the network link?  What
about sending a ESCape sequence of some sort and then translating it back
at the other end?  Is that feasible at all?

					Just curious,

					...richard

730.33Still tryingCOOKIE::WECKERA wholly owned subsidiary of DECThu Jan 07 1988 12:5043
re:	.32
>Wouldn't 'SET PORT BREAK REMOTE' at the Local> prompt cause your program
>to receive the break?

Yes it would BUT:

	1)	It requires LAT privilages.
	2)	It would change the physical port.. since we are on a 64 rotor
		system that would mean if I got cut off, some poor sh**k would
		get stuck with a line where break wouldn't work.

>>If you are running directly into the host (via modem) everything appears
>>to work OK, but you never get anything from the other plane... since the
>>network is only passing "real" characters (the "break"s get dropped).
>
>You mean you can't send the break character across the network link?  What
>about sending a ESCape sequence of some sort and then translating it back
>at the other end?  Is that feasible at all?

Exactly... I just don't want to write the protocol (and the code).

HOWEVER... after trying to go MODEM-MODEM last night (direct dial) we (Brad
	   Morgan and I) found that even though you set the program to 2400
	   baud, during certain menu selections it slips back into 1200 baud
	   mode!!!

	   We never did get it to work.. we got as far as coordinate transfer
	   but never saw the other plane. Our guess is that "send aircraft"
	   switches the machine back into 1200 BAUD mode.

=== NEWS FLASH ===

Brad just walked in (after talking to SubLogic). If the modems at both end
are not Hayes compatible.. FORGET IT!! (They (SubLogic) won't even acknowledge
a problem!).

I understand this since the program sends things like "+++" everytime you
try to talk to the modem (no way to turn it off).

We'll keep trying (SubLogic is supposed to call us back.. we'll see)

dave

730.34SubLoc protocol is SubDEC!LOWLIF::DAVISThat&#039;s not a BUG, it&#039;s a FEATURE!Thu Jan 07 1988 18:378
Sounds to me like it's time SubLogic to come up with FS III with a new modem
protocol!  For what it's worth:  a friend and I can hook our amigas (his:
1000, mine: 2000) together directly and run at 57,600 baud with no probs.
That is, "send aircraft" doesn't reset the _amiga_ to 1200 baud anyway.

I doubt that helps much, but good luck guys!

							...richard
730.35OFF WE GO, INTO THE WILD BLUE YONDERPOLAR::GOSLINGKANATA MFG I.S.Tue Jan 19 1988 10:3216
       The skies (or more importantly the airfields) are save again!
       
       I finally got an analog stick (Kraft KC3), kludged a cable as per
       .7 (2 female connectors) and took off into the wild blue yonder -
       for the first time feeling in control.  On the first flight, after
       gaining some altitude, I was able to do a quick 180, line up on
       the runway, and land - what a feeling....
       
       "Playing" the WWI scenario is even fun - now that I can actually
       sight in on the enemy and blast them!
       
       Thanks to all those who provided pin outs and the like.
       
       Art
       
730.36LATNCY::MORGANBrad MorganFri Jan 22 1988 02:5360
I purchased a CH products Mach II Joystick (IBM PC version).  This joystick
has two switches on the top for disabling the X spring and/or the Y spring,
rotary extra-fine electrical trims, and two buttons.  (The Mach III has 3
buttons, one on the stick, for only a few dollars more). 

This joystick comes with a 15-pin male d-connector.  The IBM PC pin
assignments for this connector are: 

1, 8, 9, 15	+5
2, 7, 10, 14	Normally open buttons
					2, 7 = 1st Buttons
					10, 14 = 2nd Buttons

3, 6, 11, 13	Resistors (100K ohms)
					3 = 1st X, 6 = 1st Y,
					11 = 2nd X, 13 = 2nd Y
4, 5, 12	Ground

One side of the linear wound resistor is tied to +5, the other end floats
and the wiper is connected to the resistor pins. 

The wire colors, 15-pin assignments, and Amiga 9-pin assignments (for FS2)
are:

Color	15-PIN	9-PIN(AMIGA)    Amiga Function

Orange    2	     3		Orange Button
White     7          4          Black Button
Black     6          5          X
Blue	  1          7          +5
Green     4          8          Ground
Brown     3          9          Y
Shield   12

Clever readers will note from the above that X & Y in the joystick are
reversed.  The next reply contains a BASIC program I wrote to read the
hardware registers associated with the gameports as I had problems getting
my joystick to work. 

A previous comment about the Amiga hardware documentation being wrong is
incorrect.  The joystick X & Y are stored in a 16-bit word in the same
manner as the mouse X & Y.  As the above program shows, the Amiga hardware
pin assignment and the location of X & Y are consistent and correct as
documented, but FS2 reverses X & Y.  This is a common mistake made by
programmers switching between the 68000 and the 8086 (or VAX)!

In addition, the Amiga hardware documentation calls for resistors up to
528K (nominal 470K +/- 10%) and again the above program shows that the
~100K ohms of the IBM PC specification joystick uses ~1/5 of the available
8-bit Amiga range (0-50 out of 0-255). 

FS2 is hard-coded to accept these small values.  A "proper" Amiga joystick
will not work!  If you have problems with your analog joystick try changing
the center values with the trim pots.  I adjusted my joystick using the
above program to have a symmetrical range (0-50, center 25) in both X & Y
and the FS2 control surface indicators would oscillate wildly when I
toggled to the analog joystick ("J" key).  Re-adjusting to a center of
about 16 caused much better behavior although a hard right stick now
sometimes "overflows" to a hard left stick! 

730.37BASIC program to read GAMEPORTSLATNCY::MORGANBrad MorganFri Jan 22 1988 03:05118
REM
REM   Read the hardware registers associated with the Gameports.
REM   B.S. Morgan
REM
REM   Library command needed to define WaitTOF.  Copy GRAPHICS.BMAP
REM   from the EXTRAS:basicdemos directory if you don't put this program
REM   in that directory.
REM
   LIBRARY "df1:graphics.library"
REM
   PRINT "Answer the following guestions with a Y or N."
   PRINT "After the program starts, Hit any key to quit."
   PRINT "(Y to next may cause a GURU on exit)"
   INPUT "Use Basic functions on Gameport 0? ", p0$
   p0$ = UCASE$(p0$)
   PRINT "(Y to next causes screen to flash but no harm done)"
   INPUT "Write POTGO (read proportional joysticks)? ", pgo$
   pgo$ = UCASE$(pgo$)
REM
REM   Clear the screen.
REM
   PRINT CHR$(12)
REM
REM   The following should be: b& = &hdff000
REM
   b& = 14675968&
REM
REM   The following should be: f& = &hbfe001
REM
   f& = 12574721&
REM
REM   Wait for beginning of frame.
REM
10 CALL WaitTOF
REM
REM   Read Proportional input registers.
REM
   p0y = PEEK(b&+&H12)
   p0x = PEEK(b&+&H13)
   p1y = PEEK(b&+&H14)
   p1x = PEEK(b&+&H15)
REM
REM   Read the right mouse (and unused mouse) buttons from POTGOR
REM
   d1y = (PEEK(b&+&H16) AND &H40) / &H40
   d1x = (PEEK(b&+&H16) AND &H10) / &H10
   d0y = (PEEK(b&+&H16) AND &H4) / &H4
   d0x = (PEEK(b&+&H16) AND &H1) / &H1
REM
REM   Write the proportional start bit.
REM   This causes the system to think the right mouse button
REM   is being pressed and released.  The screen flashes but 
REM   there seem to be no ill effects.
REM
   IF pgo$ = "Y" THEN POKEW b&+&H34,1
REM
REM   Read the fire buttons from PRA of the odd 8520.
REM
   f1 = (PEEK(f&) AND &H80) / &H80
   f0 = (PEEK(f&) AND &H40) / &H40
REM
REM   Read the Joystick / Mouse Counters.
REM
   j0y = PEEK(b&+&HA)
   j0x = PEEK(b&+&HB)
   j1y = PEEK(b&+&HC)
   j1x = PEEK(b&+&HD)
REM
REM   Use the basic functions to read a digital joystick in Port 0.
REM   These functions seem to upset the mouse permanently.
REM   The GURU will visit after the program exits.
REM
   IF p0$ = "Y" THEN
      s0 = STICK(0)
      s1 = STICK(1)
   END IF
REM
REM   Use the basic functions to read a digital joystick in Port 1.
REM
   s2 = STICK(2)
   s3 = STICK(3)
REM
REM   Output the results.
REM
   LOCATE 1,1
   PRINT "        Fire  MseX  MseY  DtrX  DtrY  PotX  PotY� StkX  StkY  "
   PRINT "Port 0";
   PRINT USING "  ####";f0;
   PRINT USING "  ####";j0x;
   PRINT USING "  ####";j0y;
   PRINT USING "  ####";d0x;
   PRINT USING "  ####";d0y;
   PRINT USING "  ####";p0x;
   PRINT USING "  ####";p0y;
   PRINT USING "  ####";s0;
   PRINT USING "  ####";s1;
   PRINT
   PRINT "Port 1";
   PRINT USING "  ####";f1;
   PRINT USING "  ####";j1x;
   PRINT USING "  ####";j1y;
   PRINT USING "  ####";d1x;
   PRINT USING "  ####";d1y;
   PRINT USING "  ####";p1x;
   PRINT USING "  ####";p1y;
   PRINT USING "  ####";s2;
   PRINT USING "  ####";s3;
   PRINT
REM
REM   Check for keyboard input.
REM
   a$ = INKEY$
   IF a$ = "" GOTO 10
REM
REM   Attempt to fix the problem of using STICK(0) and STICK(1).
REM
   IF p0$ = "Y" THEN m = MOUSE(0)
   END
730.38ConfusedGILBRT::BEAUREGARDRoger Beauregard SHR1-3Thu Apr 21 1988 14:3656
    I'm ready to give up!
    I bought a Kraft KC3 analog joystick a while back and
    dissasembled/rewired it. I worked fine (FS][) until I recently tried to
    add the caps so it would work for jet. Now I can't get it to work
    even on FS][ anymore.
    
    Preveously, I hadn't bothered to connect pins 3 and 4 of the amiga
    port since FS][ didn't really use a fire button. Since then I
    disconnected all the wires and was begining to do a major overhaul.
    There is a switch which selects either IBM or APPLE. I connected
    the swich so I could select the fire function to be either on the
    joy stick or on the controller body. In doing this I really didn't
    pay attention to where the +5 and ground were going. After looking
    the circuit over this is what I come up with.
    
       nc                 nc
        |                  |
        /                  /
        \                  \
  X ----/                  /____ y 
  pot   \                  \     pot      (both pots ~43Kohm at stick center)
        /                  /
        |                  |
        |                  |
        0------------------0----------  +5v
        |                  |
        |                  |
       ----               ----
        /\                 /\
       /  \               /  \
       ----               ----
         |                  |
         |                  |
         \                  \
         / 560 ohms         /    560 ohms
         \                  \
         /                  /
         |_______ switch    |________  switch 
         |        output    |          output
          | momentary        |  momentary
          | switch           |  switch
         |                  |
         |                  |
        gnd                gnd
               
    
Assuming I drew the circuit correct, What's the problem? Pins 3 and 4 of
the amiga port are pulled up with 27K(?) resistors. I not quite sure the
purpose of the diodes in this application either. Any help would be appreciated.
Remember, This joystick did work at one time, but since I disconnected all
the internal wires, I not sure I am back at the original circuit configuration.

Bear in mind I've now added 1�F caps across the potentiometers.
The symptoms are; horizontal motion approximately works, Vertical motions
is unstable and I'm unable to go above center in FS][.

730.39add caps fo Jet?NAC::VISSERThu Apr 21 1988 16:085
    re.:  >   add the caps so it would work for jet. 
    
    Did I miss something?  What do you mean add the caps?
    
    John
730.40GILBRT::BEAUREGARDRoger Beauregard SHR1-3Thu Apr 21 1988 16:116
I think the source was PLINK, but somewhere I heard that caps had to be added
across the pots in order to prevent oscillation.


Roger

730.41NAC::VISSERThu Apr 21 1988 16:122
    What value and type of capacitor, and where do you put them?
    John
730.42should workGILBRT::BEAUREGARDRoger Beauregard SHR1-3Thu Apr 21 1988 16:2215
a 1.0�F ceramic cap. 
From the wiper to the +5v 
                                +5v ---0-------0
                                       |       |
                                       |       |
				       |      ___
                                       |      ---
                                       \       |
                                       /       |
                                       \ <-----0----  output
                                       /
                                       \
                                       /
                                       |
                                       |
730.43LEDS::ACCIARDIThu Apr 21 1988 16:3611
    Actually, I used a .1 uf cap, not a 1.0 uf.  I put one each across
    the X and Y trim pots.  Worked like a charm.
    
    On the Suncom joystick, I had to center the horizontal trim pot,
    but the vertical trim pot had to be pulled all the way back.  After
    making these adjustments and starting the game, hit ^J to activate
    the joystick.  If the video puck isn't centered in it's little box,
    center it with the trim pots and hit ^J a few more times.
    
    Ed.
    
730.44Jet with analog joystick?NAC::VISSERThu Apr 21 1988 16:404
    How about some detail on Jet; or did I miss that somewhere else
    in Amiga Notes?
    
    John
730.45LEDS::ACCIARDIThu Apr 21 1988 17:1024
    OK, here's the story... first, go read all the notes on Jet!.
    
    It turns out the the very first version of Jet! for the Amiga has
    (undocumented) support for analog joysticks.  If you have a later
    version, the support is gone.  Sorry, I don't know how to tell an
    early release from a recent one.  I have an early one. :^)
                                                             
    The analog support in Jet! is somewhat different than that in FSII
    in that the analog stick will not work properly unless the caps
    are added as per 730.41-730.43 and the trimpots are carefully adjusted.
    
    I recently called SubLogic and told them that the analog stick support
    in Jet! was a little flaky.  They acted surprised and told me that
    there WAS NO analog stick routines in Amiga Jet!  I suspect(ed)
    that they fibbed to me, since it definitely works!  They claimed
    that they tried to get someone to build an Amiga analog joystick
    for them, but they couldn't do it economically for the relatively
    small volumes involved.
    
    Anyway, if you bought Jet! within a few weeks of it's arrival, you
    probably have the first release.
    
    Ed