Pennock's Fiero Forum
  Technical Discussion & Questions - Archive
  3100 v6 engine swap (Page 4)

T H I S   I S   A N   A R C H I V E D   T O P I C
  

Email This Page to Someone! | Printable Version

This topic is 6 pages long:  1   2   3   4   5   6 
Previous Page | Next Page
3100 v6 engine swap by redneck56
Started on: 10-24-2006 01:14 PM
Replies: 219
Last post by: redneck56 on 05-09-2007 12:56 AM
redneck56
Member
Posts: 181
From: iowa
Registered: Oct 2006


Feedback score: N/A
Leave feedback

Rate this member

Report this Post11-26-2006 10:55 PM Click Here to See the Profile for redneck56Send a Private Message to redneck56Direct Link to This Post
HI this is what l think will work still some thing i can not find the right pin to the 3100 c1 or c2
just do not know what im looking at or to mach up with
hear is what i can up with if wrong please tell that pin to use on the c1 c2 so it will be right
thanks for all of your help

IF YOU CAN SEE WHAT I HAVE DONE OR TRYING TO DO
========================================================================================
Fiero C203 Connector ###### +++++ 3100 === PCM C1 C2 ++++++

Pin Wire Color Circuit Description PIN WIRE
A == Tan/Blk==== Upshift Indicator Lamp control feed ****************** *********N/A-NO
B == Org Fuel=== Pump fused 12v + power supply from fusebox****** *******8==DK GRN/WHT
C == Brn/Wht=== Service Engine Soon lamp control feed *********??????
D == Lt Blu==== A/C Request (12v + when A/C is selected at HVAC head)****35=DK GRN/WHT
E.== Tan===== Oil Gauge sender circuit feed **************** 70BRN==OR=C2-7 BRN/WHT
F == Pnk/Blk=== Fused ECM Ign 12v power supply (ECM Fuse)**19=PNK=C500**E3 ??????
G == Yel ===== VSS High *********************6==YEL===
H == Brn===== VSS 2000ppm feed to Fiero ECM from speedo===N/A-NO
J == Pnk ====== TBI Injector 1 fused 12v IGN power******* CAN NOT FIND PIN OUTPUT????
K == Pnk===== TBI Injector 2 fused 12v IGN power***** NOT SHURE WHAT PINOUT??????
L == Tan/Wht=== 12v + power feed to Fuel Pump from relay** LEAVE TO FUEL PUMP
M == Blk===== VSS/Speedo Ground (connect to engine ground)*** GROUND*****
N == Blk===== A/C Relay Clutch 12v + power feed (hot when HVAC is on A/C)*LOST?????
P == Ppl===== TCC Brake Switch feed (N/C; hot in run) **22*BRN OR 28*TAN/BLK
R == Ppl ===== VSS Low *********** NEED THE BUFFER CIRCUIT NEED TO MAKE????

===============================================================================

Fiero C500 Connector (engine harness)
Pin Wire Color Circuit Description
A1== Blk==== ====Trunk Release Feed********************* NO CHANGE
A2 == Blk======== Engine Ground************************ NO CHANGE
A4 == Yel==== ====Starter Solenoid Control (auto trans) 3100 TRNS NOT SAME WIRE
B3 == Brn========Generator Control (batt ind lamp)*******SAME I THINK
C1 == Dk Blu======Backup lamps fused 12v + IGN feed******NO CHANGE
C2 == Dk Grn/Yel== Temp Gauge sender feed**********C2--52--YEL ????????
C3 == Wht==== ===Tach feed***NEED IGN MOD CAN NOY FIND PIN N/O?? 53WHT??
D1 == Dk Grn/Wht== Fan Request (coolant temp switch)****32 DK GRN ?? OR 31 DK BLU/WHT
D2== Lt Grn/Blk Fan== Request (models with 2 speed fan) ???????????????
D3 == Dk Grn "Hot"== =temp warning ind lamp feed
E1 == Lt Grn Backup== lamps control feed from trans SAME
E2 == Ppl===== === Starter Solenoid Control (manual trans) SAME I THINK
E3 == Pnk ========Ign B+ power feed for Coil******?????????
IP: Logged
redneck56
Member
Posts: 181
From: iowa
Registered: Oct 2006


Feedback score: N/A
Leave feedback

Rate this member

Report this Post11-27-2006 12:33 PM Click Here to See the Profile for redneck56Send a Private Message to redneck56Direct Link to This Post
HELP wire swap wiring and motor is form 1996 lumina 3100 just cant find the right pin out to mach the 3100
wires to the c203 c500 pluge
l have posted some pages if that will help
the post befor is what i think it should some i just do not no where they go all help welcome



IP: Logged
FIEROFLYER
Member
Posts: 3974
From:
Registered: Oct 2002


Feedback score:    (13)
Leave feedback





Total ratings: 180
Rate this member

Report this Post11-27-2006 02:49 PM Click Here to See the Profile for FIEROFLYERSend a Private Message to FIEROFLYERDirect Link to This Post
Lets see
C203 A-not used on auto tranny
B-+12 volts to fuel pump relay
C-SES lamp or MIL control from PCM CI pin 25
D-
E- oil pressure from sending unit
F-ECm ign power to PCM C1 pin 19
G-speedo feed to speedo from PCM C1 pin 13 DK green
H-not used any more

J-only V6 cars use both fuses
K-
L- fuel pump feed o/p from fuel pump relay to fuel pump
M- run to chassis ground
N-
P-TCC i/p from brake switch to PCM C1 pin 67
R-run to chassis ground

PCM C1 pin 15 is serial data feed to data link connector
PCM C1 31 and 32 are for the coolant fan they put out a ground to the relays

[This message has been edited by FIEROFLYER (edited 11-27-2006).]

IP: Logged
FIEROFLYER
Member
Posts: 3974
From:
Registered: Oct 2002


Feedback score:    (13)
Leave feedback





Total ratings: 180
Rate this member

Report this Post11-27-2006 03:11 PM Click Here to See the Profile for FIEROFLYERSend a Private Message to FIEROFLYERDirect Link to This Post

FIEROFLYER

3974 posts
Member since Oct 2002
Fuel pump relay use the newer style used on the 3100
pin 85 is grounded
pin 86 is connected to PCM C1 pin 8
pin 87 is connected to C203 pin B and oil pressure sensor pin C Pink wire
pin 30 is connected to C203 pin L and oil pressure sensor pin D Gray wire
this will feed the Fiero fuel pump through C L into the harness and back out through Fiero factory wiring. I am going by my diagrams for the 96 Beretta so hopefully the PCM pins match. I guess I should of kept a copy of the Lumina ones after all. Dan
IP: Logged
redneck56
Member
Posts: 181
From: iowa
Registered: Oct 2006


Feedback score: N/A
Leave feedback

Rate this member

Report this Post11-28-2006 01:33 AM Click Here to See the Profile for redneck56Send a Private Message to redneck56Direct Link to This Post
First off l want to thank you for time and help.
l now it takes a lot of time to help some one like me
that is slow on geting some of this stuff
1st ?? from your post i will take it that i got some of it right?
l will change what l did to what was in your post ok?
one wire at a time
IP: Logged
redneck56
Member
Posts: 181
From: iowa
Registered: Oct 2006


Feedback score: N/A
Leave feedback

Rate this member

Report this Post11-28-2006 12:19 PM Click Here to See the Profile for redneck56Send a Private Message to redneck56Direct Link to This Post

redneck56

181 posts
Member since Oct 2006
Are all the c500 pin out the same as posted ???
what changes will i need to make?????
IP: Logged
redneck56
Member
Posts: 181
From: iowa
Registered: Oct 2006


Feedback score: N/A
Leave feedback

Rate this member

Report this Post11-28-2006 02:06 PM Click Here to See the Profile for redneck56Send a Private Message to redneck56Direct Link to This Post

redneck56

181 posts
Member since Oct 2006
DAN on my c1 c2 3100 pin outs i have on pin outs on mine above 80 wires stop at pin 74???
where dose this {{ PCM C1 pin 15 is serial data feed to data link connector }} go to on the c203 c500??
?? will i need my old oil unit an put it on my 3100?? my gauges pegs out when starts??
IP: Logged
redneck56
Member
Posts: 181
From: iowa
Registered: Oct 2006


Feedback score: N/A
Leave feedback

Rate this member

Report this Post11-29-2006 02:27 AM Click Here to See the Profile for redneck56Send a Private Message to redneck56Direct Link to This Post
lost what is this on 1996 3100 PCM C1 pin 15 is serial data feed to data link connector
and where to put it thanks
IP: Logged
FIEROFLYER
Member
Posts: 3974
From:
Registered: Oct 2002


Feedback score:    (13)
Leave feedback





Total ratings: 180
Rate this member

Report this Post11-29-2006 09:04 AM Click Here to See the Profile for FIEROFLYERSend a Private Message to FIEROFLYERDirect Link to This Post
Take the OBD II data link connector from the 3100 donor and mount it in the stock Fiero location. Run the tan wire serial data from C1 pin 15 to the tan wire on the connector, do the same with the wire from C1 pin 39 class II data. The connector will also need grounds and a battery feed tap into the cig lighter orange wire for this. If done right you will be able to do full OBD II scans of your PCM. Dan
IP: Logged
redneck56
Member
Posts: 181
From: iowa
Registered: Oct 2006


Feedback score: N/A
Leave feedback

Rate this member

Report this Post11-30-2006 12:35 AM Click Here to See the Profile for redneck56Send a Private Message to redneck56Direct Link to This Post
Thanks will do that
I have started to cut the wiring
Can i use the cruise contorol from the 3100 lumina in my fiero as mine dose not have it?????????????
IP: Logged
redneck56
Member
Posts: 181
From: iowa
Registered: Oct 2006


Feedback score: N/A
Leave feedback

Rate this member

Report this Post11-30-2006 11:34 AM Click Here to See the Profile for redneck56Send a Private Message to redneck56Direct Link to This Post

redneck56

181 posts
Member since Oct 2006
Can i use the cruise contorol from the 3100 lumina in my fiero as mine dose not have it?????????????
or is that just more trouble than what is worth??
IP: Logged
PFF
System Bot
FIEROFLYER
Member
Posts: 3974
From:
Registered: Oct 2002


Feedback score:    (13)
Leave feedback





Total ratings: 180
Rate this member

Report this Post11-30-2006 01:00 PM Click Here to See the Profile for FIEROFLYERSend a Private Message to FIEROFLYERDirect Link to This Post
I have played around with using the newer cruise on cars with out cruise but it never seems to operate correctly. No problem using on cars that already have cruise. Dan
IP: Logged
redneck56
Member
Posts: 181
From: iowa
Registered: Oct 2006


Feedback score: N/A
Leave feedback

Rate this member

Report this Post12-01-2006 12:08 AM Click Here to See the Profile for redneck56Send a Private Message to redneck56Direct Link to This Post
As i was working on the wiring a new problem came up What to do about the shifter ??
Fiero 3 auto to 4 auto what needs to be changed to work????
IP: Logged
Rickady88GT
Member
Posts: 10649
From: Central CA
Registered: Dec 2002


Feedback score: N/A
Leave feedback





Total ratings: 202
Rate this member

Report this Post12-01-2006 12:53 AM Click Here to See the Profile for Rickady88GTSend a Private Message to Rickady88GTDirect Link to This Post
 
quote
Originally posted by redneck56:

As i was working on the wiring a new problem came up What to do about the shifter ??
Fiero 3 auto to 4 auto what needs to be changed to work????



I took out the shifter and cut one extra notch in the shifter "cogs" for the extra gear. It lined up for the 4T60E and the 4T65E perfectly. Then the shifter boot is is your only problem. It will get tight in park and 1st. But will work OK. You just wont get to see 4 3 2 1 on the shifter. It will read 3 2 1 -.

The little square that the arrow is pointing to is a cut out that has not been completely removed. I took the pic just before the dermal tool totally cut the notch out.


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

[This message has been edited by Rickady88GT (edited 12-01-2006).]

IP: Logged
Rickady88GT
Member
Posts: 10649
From: Central CA
Registered: Dec 2002


Feedback score: N/A
Leave feedback





Total ratings: 202
Rate this member

Report this Post12-01-2006 01:04 AM Click Here to See the Profile for Rickady88GTSend a Private Message to Rickady88GTDirect Link to This Post

Rickady88GT

10649 posts
Member since Dec 2002
 
quote
Originally posted by FIEROFLYER:

I have played around with using the newer cruise on cars with out cruise but it never seems to operate correctly. No problem using on cars that already have cruise. Dan


? I had cruse in my 3100 SFI and took out ALL the old vacuum crap and put in the new servo type cruse. The wires from the cruse stalk worked perfectly with the new servo. Even the color codes on the GM wire diagrams were the same after nearly 10 years between them. Just get the cruse stalk and run the wires to the new servo. If it is wired right it will work great.

IP: Logged
redneck56
Member
Posts: 181
From: iowa
Registered: Oct 2006


Feedback score: N/A
Leave feedback

Rate this member

Report this Post12-01-2006 07:51 PM Click Here to See the Profile for redneck56Send a Private Message to redneck56Direct Link to This Post
PLEASE HELP got wiring done? now will run 5 sec stops restart 5sec stops fuel pump is runing
was runing be for i wired it to my c203 WHAT did i do wrong ????????
IP: Logged
redneck56
Member
Posts: 181
From: iowa
Registered: Oct 2006


Feedback score: N/A
Leave feedback

Rate this member

Report this Post12-02-2006 01:25 PM Click Here to See the Profile for redneck56Send a Private Message to redneck56Direct Link to This Post
l was hoping to get by with out it .But i have rewired it back in and it runs and starts
my oil gauge pigs out when the car is runing something i did worng??????
IP: Logged
redneck56
Member
Posts: 181
From: iowa
Registered: Oct 2006


Feedback score: N/A
Leave feedback

Rate this member

Report this Post12-02-2006 09:03 PM Click Here to See the Profile for redneck56Send a Private Message to redneck56Direct Link to This Post

redneck56

181 posts
Member since Oct 2006
Will i have to use my old oil senc. or will the one from the 3100 work some how or just tee and try both???
how to wire it in and the tack help??????
IP: Logged
redneck56
Member
Posts: 181
From: iowa
Registered: Oct 2006


Feedback score: N/A
Leave feedback

Rate this member

Report this Post12-03-2006 12:30 PM Click Here to See the Profile for redneck56Send a Private Message to redneck56Direct Link to This Post
Do i wire the tack off of the coil what wire or will it come off the pcm what wire??????
IP: Logged
FIEROFLYER
Member
Posts: 3974
From:
Registered: Oct 2002


Feedback score:    (13)
Leave feedback





Total ratings: 180
Rate this member

Report this Post12-03-2006 04:40 PM Click Here to See the Profile for FIEROFLYERSend a Private Message to FIEROFLYERDirect Link to This Post
Wire the tach off of the coil and if your oil pressure gauge is pegging you probably have the wrong sensor it is for an idiot light instead of a gauge. Dan
IP: Logged
redneck56
Member
Posts: 181
From: iowa
Registered: Oct 2006


Feedback score: N/A
Leave feedback

Rate this member

Report this Post12-03-2006 06:31 PM Click Here to See the Profile for redneck56Send a Private Message to redneck56Direct Link to This Post
thanks tack is working but at idle reads 1500 .
when i rev the motor up will stop about 2500 i know this should be about 4000 or more wrong wire from the coil???


OIL will read ok if i use old oil sensor put air to and read right
IP: Logged
PFF
System Bot
redneck56
Member
Posts: 181
From: iowa
Registered: Oct 2006


Feedback score: N/A
Leave feedback

Rate this member

Report this Post12-04-2006 12:04 AM Click Here to See the Profile for redneck56Send a Private Message to redneck56Direct Link to This Post
this it what my tack reads at idle



96 3100 does it have a rev limiter or some thing that shut it back down to below 5000 rpm help/?

[This message has been edited by redneck56 (edited 12-04-2006).]

IP: Logged
redneck56
Member
Posts: 181
From: iowa
Registered: Oct 2006


Feedback score: N/A
Leave feedback

Rate this member

Report this Post12-04-2006 01:05 PM Click Here to See the Profile for redneck56Send a Private Message to redneck56Direct Link to This Post

redneck56

181 posts
Member since Oct 2006


Had to wire this back in to get it to work
IP: Logged
FIEROFLYER
Member
Posts: 3974
From:
Registered: Oct 2002


Feedback score:    (13)
Leave feedback





Total ratings: 180
Rate this member

Report this Post12-04-2006 06:00 PM Click Here to See the Profile for FIEROFLYERSend a Private Message to FIEROFLYERDirect Link to This Post
Now your Fiero does have a V6 tach in it, if so it should work fine so then you probably have got the tach wired wrong at the ignition module. Dan
IP: Logged
redneck56
Member
Posts: 181
From: iowa
Registered: Oct 2006


Feedback score: N/A
Leave feedback

Rate this member

Report this Post12-05-2006 01:09 AM Click Here to See the Profile for redneck56Send a Private Message to redneck56Direct Link to This Post
Is there some way to tell ???
i got my dash from ebay a year a go . dont rember.
IP: Logged
FIEROFLYER
Member
Posts: 3974
From:
Registered: Oct 2002


Feedback score:    (13)
Leave feedback





Total ratings: 180
Rate this member

Report this Post12-05-2006 08:42 AM Click Here to See the Profile for FIEROFLYERSend a Private Message to FIEROFLYERDirect Link to This Post
I would check first to make sure you connected to the right spot on the ignition module. If it is a 4 cyl tach it would always read very high around double of what it should, unless the tach itself is no good. Dan
IP: Logged
redneck56
Member
Posts: 181
From: iowa
Registered: Oct 2006


Feedback score: N/A
Leave feedback

Rate this member

Report this Post12-06-2006 12:59 AM Click Here to See the Profile for redneck56Send a Private Message to redneck56Direct Link to This Post

the blue arrow on that pluge is where i put my tack wire to it is a white wire

in the next pic is the other end of the coil pack it is the power pluge
if i unpluge it car will not start no spark .so l think i have it on the right wire??????


IP: Logged
FIEROFLYER
Member
Posts: 3974
From:
Registered: Oct 2002


Feedback score:    (13)
Leave feedback





Total ratings: 180
Rate this member

Report this Post12-06-2006 09:19 AM Click Here to See the Profile for FIEROFLYERSend a Private Message to FIEROFLYERDirect Link to This Post
I would try another tach to see if that is the problem. Dan
IP: Logged
redneck56
Member
Posts: 181
From: iowa
Registered: Oct 2006


Feedback score: N/A
Leave feedback

Rate this member

Report this Post12-07-2006 01:15 AM Click Here to See the Profile for redneck56Send a Private Message to redneck56Direct Link to This Post
l have one try it after get all the rest done.
?? do i need to find the wires for the radiator fan ???
IP: Logged
redneck56
Member
Posts: 181
From: iowa
Registered: Oct 2006


Feedback score: N/A
Leave feedback

Rate this member

Report this Post12-08-2006 12:48 AM Click Here to See the Profile for redneck56Send a Private Message to redneck56Direct Link to This Post
How do wire in the temp gauge to the 3100????/
IP: Logged
FIEROFLYER
Member
Posts: 3974
From:
Registered: Oct 2002


Feedback score:    (13)
Leave feedback





Total ratings: 180
Rate this member

Report this Post12-08-2006 10:27 AM Click Here to See the Profile for FIEROFLYERSend a Private Message to FIEROFLYERDirect Link to This Post
Not quite sure if the Lumina gauges are computer fed like the Grand Am and such are by 96 but if they are the best way is to use a 3 pin coolant sensor with two pins for the PCM and the third for the gauge. On most there is three wires a black for chassis ground or sensor ground depending on car, a yellow which feeds the PCM and a green which is for the gauge which would be fed to the gauge through C500 pin C2. Dan
IP: Logged
PFF
System Bot
redneck56
Member
Posts: 181
From: iowa
Registered: Oct 2006


Feedback score: N/A
Leave feedback

Rate this member

Report this Post12-08-2006 01:40 PM Click Here to See the Profile for redneck56Send a Private Message to redneck56Direct Link to This Post
????? will that let the radiator fan come on and off like it should????
IP: Logged
FIEROFLYER
Member
Posts: 3974
From:
Registered: Oct 2002


Feedback score:    (13)
Leave feedback





Total ratings: 180
Rate this member

Report this Post12-08-2006 01:52 PM Click Here to See the Profile for FIEROFLYERSend a Private Message to FIEROFLYERDirect Link to This Post
The rad fan is controlled by the PCM as long as it is getting its proper feed it will turn on your coolant fan. Personally I do not trust sensors so on my car the fan comes on with the ignition. Dan
IP: Logged
redneck56
Member
Posts: 181
From: iowa
Registered: Oct 2006


Feedback score: N/A
Leave feedback

Rate this member

Report this Post12-08-2006 02:20 PM Click Here to See the Profile for redneck56Send a Private Message to redneck56Direct Link to This Post
some where i read that it will burn the motor up in the fan?
my old fan was going bad so i used the one from the Lumina runs better and less amps
coolant sensor has just 2 wires from it just looked .lt dose go to the pcm
IP: Logged
redneck56
Member
Posts: 181
From: iowa
Registered: Oct 2006


Feedback score: N/A
Leave feedback

Rate this member

Report this Post12-09-2006 02:06 AM Click Here to See the Profile for redneck56Send a Private Message to redneck56Direct Link to This Post
how hot will the pcm get???
i want to mount it where the old ecm was.
IP: Logged
FIEROFLYER
Member
Posts: 3974
From:
Registered: Oct 2002


Feedback score:    (13)
Leave feedback





Total ratings: 180
Rate this member

Report this Post12-09-2006 09:19 AM Click Here to See the Profile for FIEROFLYERSend a Private Message to FIEROFLYERDirect Link to This Post
Lets just say I have been running my fan with the ignition for over three years now with no problem. Most of the 3800SC swaps I do if the PCM gets programmed I get the fan temps lowered to turn the fan on earlier. Unfortunately there is not that kind of support for other GM PCM's.
The PCM does not heat up and is perfectly fine mounted in the old location only problem us due to size you loose the storage space in the console. Dan
IP: Logged
redneck56
Member
Posts: 181
From: iowa
Registered: Oct 2006


Feedback score: N/A
Leave feedback

Rate this member

Report this Post12-09-2006 06:20 PM Click Here to See the Profile for redneck56Send a Private Message to redneck56Direct Link to This Post
Just looked and was looking at the wrong pluge coolant sensor have 3 wires from it then it should work right?
IP: Logged
redneck56
Member
Posts: 181
From: iowa
Registered: Oct 2006


Feedback score: N/A
Leave feedback

Rate this member

Report this Post12-10-2006 11:58 AM Click Here to See the Profile for redneck56Send a Private Message to redneck56Direct Link to This Post
What do l do with tran plugs as you can see fiero pluge
how to hook it up to the bottom pic


tran is 4t65-e
IP: Logged
FIEROFLYER
Member
Posts: 3974
From:
Registered: Oct 2002


Feedback score:    (13)
Leave feedback





Total ratings: 180
Rate this member

Report this Post12-10-2006 04:55 PM Click Here to See the Profile for FIEROFLYERSend a Private Message to FIEROFLYERDirect Link to This Post
Cut off the Fiero tranny plug and splice in the proper wires from the new tranny plug. They both have the neutral start switch and reverse lights in them. Dan
IP: Logged
82-T/A [At Work]
Member
Posts: 24350
From: Florida USA
Registered: Aug 2002


Feedback score: (1)
Leave feedback





Total ratings: 200
Rate this member

Report this Post12-10-2006 06:30 PM Click Here to See the Profile for 82-T/A [At Work]Send a Private Message to 82-T/A [At Work]Direct Link to This Post
 
quote
Originally posted by redneck56:

Thank sending you a email thanks for the help
hear is a pic of what i have started
my 3100



Oh man... have some pride. You should clean that sucker up and paint it before you put it into the Fiero. It won't cost you but a few hours and the cost of paint. The installation will be much CLEANER for both you and the car, and it will look nicer.

But I have to ask though... if you're going through ALL that trouble, why not try to get a 3400 V6?

------------------
Todd,
2006 Pontiac Solstice
2004 Volkswagen Beetle Convertible (Wife's Car)
2002 Ford Crown Victoria LX
1987 Pontiac Fiero SE / V6 (3.2) 5-Speed
1984 Pontiac Fiero 2m4 SE
1984 Porsche 944 5-Speed
1981 Pontiac TransAm (Olds 455BB)
1973 Volkswagen Type-2 Transporter

IP: Logged
Previous Page | Next Page

This topic is 6 pages long:  1   2   3   4   5   6 


All times are ET (US)

T H I S   I S   A N   A R C H I V E D   T O P I C
  

Contact Us | Back To Main Page

Advertizing on PFF | Fiero Parts Vendors
PFF Merchandise | Fiero Gallery
Real-Time Chat | Fiero Related Auctions on eBay



Copyright (c) 1999, C. Pennock