Jump to content
The simFlight Network Forums

Re-installed FSUIPC .ini file gives crazy results


Recommended Posts

FS9 on XP, CH yoke, quad and pedals, buttons and axes and calibration with FSUIPC (no Control Manager).

I did a format and re-install and dropped in the saved .ini file, and ........chaos. I have no controls. The non-aircraft specific basic buttons and axes setup bears no relation to that programmed (I have yet to install addon aircraft so don`t yet know about those) and even the default cockpit view is out of whack - looking upwards instead of forwards (moving the hatswitch brings a brief flash of another view but stays on the upward view).

If I remove the .ini the default cockpit view is correct but of course I still have no controls.

In the FS assignments screen I see the CH hardware in the dropdown box

I was wondering what I might have missed. Is there something else I should have saved?

Link to comment
Share on other sites

I did a format and re-install and dropped in the saved .ini file, and ........chaos. I have no controls. The non-aircraft specific basic buttons and axes setup bears no relation to that programmed

I expect your controls are plugged into different USB ports, or Windows has simply decided to renumber them for some other reason.

I was wondering what I might have missed. Is there something else I should have saved?

No. Unfortunately the way in which Windows assigns ID numbers to different USB-connected devices is, er, rather obscure. If you reinstall Windows or change your machine it is quite likely that the joystick numbers (not the button or axis identities themselves) change.

I have exactly the same problem with the COMx port number for my USB-to-Serial adapter on my PFC controls. If I make a change somewhere to the hardware, Windows decides to reassign the COM port numbers. Had me puzzled for a while. I know it happens if you move your devices around to different USB sockets, but I really expected them to stay the same when they weren't even disconnected!

You have some choices here, one of these three:

!. Probably the best if you can do it, try to find the plug-in arrangement for your devices which gives the same joystick numbers as before. Then everything should work, as before.

2. Find the new joystick numbers, compared to the old, and edit them all in the FSUIPC INI file. This affects all of the Axes and Buttons sections.

3. Delete the whole set of Axes and Buttons sections in FSUIPC INI and start assigning again. (Ugh?)

For the first two, if you want me to identify the original joystick numbers for different axes please paste the [Axes] section of your INI file here. For the current joystick numbers just go into Axes or Button assignments and see what numbers you get for Joy# for each device.

If this sort of thing happened a lot I would consider adding a translation table section to the INI file, so, once you found which was what you could say "joystick 1 is really 3", etc, and have FSUIPC simply automatically convert internally. However, this only solves the editing problem, not the real one, that of identifying what is where.

FS itself uses DirectInput and identifies devices by name and a strange concoction of digits representing manufacturers and models. It is complex and involves a load of stuff in the Registry. Before FS used DirectInput it had similar problems with assignments when you moved stuff about (or Windows did it for you). The original joystick interface which FSUIPC still uses is remarkably simple and efficient and I'd really rather not change to DirectInput for those reasons.

Regards

Pete

Link to comment
Share on other sites

  • 2 weeks later...
If this sort of thing happened a lot I would consider adding a translation table section to the INI file, so, once you found which was what you could say "joystick 1 is really 3", etc, and have FSUIPC simply automatically convert internally.

well, this happens now for the xxst time (6?9?)

not upgrading hardware, i think it happened because of a BIOS flash

so, "consider adding a translation table section to the INI file" would be a welcome addition indeed, vis-a-vis lets-see-what-MS-assignes-this-time

thx mt

Link to comment
Share on other sites

well, this happens now for the xxst time (6?9?)

not upgrading hardware, i think it happened because of a BIOS flash

I really meant "happened to a lot of people", which, apparently, it doesn't. I am amazed that you somehow manage to get all the joystick numbers changed 6 or 9 times! That would have really made a horrible mess of Flight Simulator assignments too, before they changed over to DirectInput. Even now, if two or more of the devices are actually the same type then they can get swapped even in DirectInput mode.

so, "consider adding a translation table section to the INI file" would be a welcome addition indeed, vis-a-vis lets-see-what-MS-assignes-this-time

I'll put it on my list. But it would still need the user (i.e. you) to determine which number became which other number. There's no safe way of doing it automatically without changing over to DirectInput throughout and using device names (or more likely "GUIDs", in the INI file at least -- like FS does) instead of joystick numbers.

I might just be able to provide a number = name list in the INI file to make the job a bit easier though. Don't know yet.

Regards

Pete

Link to comment
Share on other sites

I am amazed that you somehow manage to get all the joystick numbers changed 6 or 9 times!

I have moved FSX from 1st to 2nd to 3rd computer over time and changed Yokes and Rudders etc, and OS is XP or Vista and now Vista64, and Motherboards have different USB ports, and added a 'convenient' 4xHub to a front Port, and every time the INI goes haywire.

At the moment I connect 1. Yoke (12buttons) 2. Rudder (3axis) 3. CHTrottleQ (6buttons/6sliders) 4. MS FF Joystick (9buttons)

Presently my Yoke and Joystick thought it time to change # (#1-#3 swapped)

I have a INI containing 1337 lines / 6 AC types (and growing) / and with 'compound', 'flagged' and 'widefs' buttons

I just find/replaced most #1-#3 - and of course I missed something somewhere, that I still have to trace

this describes my problem

But it would still need the user (i.e. you) to determine which number became which other number.

I might just be able to provide a number = name list in the INI file to make the job a bit easier though. Don't know yet.

THAT's a great Idea

"Yoke"=3

"Joystick"=1

etc

something like this

would defeat the MS Tombola eternally ;)

grtz

mt

Link to comment
Share on other sites

I might just be able to provide a number = name list in the INI file to make the job a bit easier though. Don't know yet.

THAT's a great Idea

"Yoke"=3

"Joystick"=1

etc

something like this

would defeat the MS Tombola eternally ;)

No, I didn't mean quite like that, though that's another idea -- rather more ambitious, though.

I meant simply to list the name provided in the Registry for the device, which would presumably be something like the one FS displays.

A way of having pseudo-numbers/names for the joysticks might be interesting, though. However, because of the way all the code is designed there's no real way I can have full names in each parameter line. But possibly you could, for example, nominate joystick device 0 as "A", 4 as "B", 1 as "C"or whatever, and then see those A-Z names appear in the Dialogues instead of the numbers currently shown. Then you just change the assignment of the letters to numbers to change things around. This might be clearer than re-mapping numbers, which would tend to confuse things.

If I can extract the proper device names I could still add the list of which number is which device name, to make re-assignment to the letters easier.

I don't think I'll have time to do any of this till after Christmas now, but I'll make notes.

Regards

Pete

Link to comment
Share on other sites

  • 2 weeks later...

would like to bring something to your attention

when I unhooked my Controllers, and forgot about it when firing up FSX

FSUIPC will now erase lines, also because a "Joystick Not Found" issue,

and replaces instances with 'A' or 'B' and the likes with // ERROR lines

fortunately I backedup my fsuipc.ini - most of the times, I will - , because it looked like a tornado went through the file

it ran out of // ERROR lines, because I have such a big .ini file, and it ran out of steam / I suppose :D

any chance of mitigating this harsh treatment of an oversight :?:

if one forgets to backup, that version is a goner

thx mt

Link to comment
Share on other sites

when I unhooked my Controllers, and forgot about it when firing up FSX

FSUIPC will now erase lines

Actually, it would have done before if it had cause to update the INI file (for instance, because you made some assignment change). All that has happened is that now it needs to match up the letters to the numbers, and automatically writes the stuff back when it sees a change, as it has in fact.

fortunately I backedup my fsuipc.ini - most of the times, I will - , because it looked like a tornado went through the file

it ran out of // ERROR lines, because I have such a big .ini file, and it ran out of steam / I suppose :D

Sorry, I don't understand that part? The only ERROR lines I'm creating for this are those mentioning a missing joystick in the new "JoyNames" section. Can you tell me more about what you experienced? There should have been no other changes except that plus the loss of Axis assignments in the [Axes] section((s). I'd like to be able to resolve the latter if I can figure out a way.

any chance of mitigating this harsh treatment of an oversight :?:

I'm not sure how I can do it at present. This isn't directly a result of the new facilities, but certainly a possible consequence which exacerbates an existing situation. What happens is that the internal axis tables are constructed using only those entries which are to be scanned. Any producing an error (such as for a missing device) are excluded from the table -- if I don't do this, it causes internal errors when calling Windows and things become inefficient. (I hate inefficiency). Maybe I can mark them rather than eliminate them. I'll see.

Anyway, I'll have to think about in when I get back -- I'm away from tonight until 29th December. I've made a note. But I need to know more about this greater problem you seem to describe. I've seen no elimination or errors in the Buttons or Calibration sections. It should only affect the Axes sections, and the errors against the assignments to missing joysticks in the JoyNames section.

Regards

Pete

Link to comment
Share on other sites

when I unhooked my Controllers, and forgot about it when firing up FSX

FSUIPC will now erase lines, also because a "Joystick Not Found" issue,

and replaces instances with 'A' or 'B' and the likes with // ERROR lines

Okay, I had a chance, before I go, to do some testing.

The ONLY lines it currently erases are those in the [Axes] sections. I've found a way to avert that -- look out for 3.857 or 4.412 later today.

The [buttons] section lines with the Error message (this error:

<< ERROR 16! Line ignored >>

are NOT erased, at least they aren't erased here. On the contrary, like all errors in the Buttons section, just the error message is automatically erased for you when the cause of the problem is fixed -- i.e. if it is a syntax error, when it is edited, or, as in this case, when the joystick reference (A, B, C or whatever) is again valid. The main part of each line remains (and in fact, of course, is still valid with the Error Message as that is regarded as a comment).

Please tell me if you've found it different from this. It is the way errors in the Buttons section are notified, but no deletions there are EVER made -- at least never intentionally, and I can't make them erase here!

if one forgets to backup, that version is a goner

Only the Axes assignments in the current version. I am fixing that now. There won't be an error message there -- that's in the JoyNames section -- but the line is ignored and retained.

[LATER]

Okayplease try 3.857 or 4.412, available now!

Regards

Pete

Link to comment
Share on other sites

<< ERROR 16! Line ignored >>

are NOT erased, at least they aren't erased here.

were here

some 15+ first button lines, replaced with an something like "<>" cant remember which

and looked too awfull to save :D

Okayplease try 3.857 or 4.412, available now!

will do, thx

Link to comment
Share on other sites

<< ERROR 16! Line ignored >>

are NOT erased, at least they aren't erased here.

were here

some 15+ first button lines, replaced with an something like "<>" cant remember which

and looked too awfull to save

There's no code whatsoever in any part of FSUIPC which REPLACES a line with an error. The whole point of the Error message (together with an error number, which are indexed in the documentation) is to help folks debug their button programming. if the line was replaced that would be futile!

This meachanism, to add and remove error messages at the ends of lines, has been working and provided in FSUIPC's Buttons sections for many years, and it have NEVER to my knowledge EVER replaced the parameters about which it is informing you of the error!

I've done lots of tests on this. The ERROR message is APPENDED to the end of the line, and it is ignored (erased) next time the file is read if the reason for the error has been fixed.

If you have any other result, please do NOT simply delete it and write letters complaining, but show me, because if it is truly occurring then as far as I can see you must have a different version of FSUIPC than one I've ever had! :-(

:? :( :? :( :?

please try 3.857 or 4.412, available now!

will do, thx

Neither of those will change the business of appending error messages to Button lines. That's a good, working mechanism, and I'm not about to mess with it after it's been working well for years, at least not without any evidence apart from your horrified say so! :-(

Pete

Link to comment
Share on other sites

Hi

tested 4409 and 4412

it's the Conditionals and then it runs out of steam, seems

attached ZIP with FSUIPC4.4412ERRORS.ini FSUIPC4.4409ERRORS..ini FSUIPC4.ini

for the full views

it's only at the beginning

pardon my hectic programming, lots of comments & logic out of sequence, but it does work :mrgreen:

Happy Christmas and Variations

mt

[JoyNames]

AutoAssignLetters=No

A=

B=

C=

D=

[General]

History=9D7WXEMJKUKYKTLXA60LZ

MouseWheelTrim=No

ok

..

ok

[buttons]

ButtonRepeat=40

;//P0 Saitek Yoke 1-20 23-51

;SPOT views

;VC 0-view

1=CP << ERROR 12! Line ignored >>

2=CP << ERROR 12! Line ignored >>

3=CP << ERROR 12! Line ignored >>

4=CP << ERROR 12! Line ignored >>

5=CP << ERROR 12! Line ignored >>

6=CP << ERROR 12! Line ignored >>

7=CP << ERROR 12! Line ignored >>

8=CP << ERROR 12! Line ignored >>

9=CP << ERROR 12! Line ignored >>

;F11 0-view =W0366= 0_airborn 1_onground

10=W0366=1 CP << ERROR 12! Line ignored >>

11=W0366=1 CP << ERROR 12! Line ignored >>

12=W0366=1 CP << ERROR 12! Line ignored >>

13=W0366=1 CP << ERROR 12! Line ignored >>

14=W0366=1 CP << ERROR 12! Line ignored >>

15=

16=W0366=1 CP << ERROR 12! Line ignored >>

17=W0366=1 CP << ERROR 12! Line ignored >>

28=W0366=1 CP << ERROR 12! Line ignored >>

19=W0366=1 CP << ERROR 12! Line ignored >>

20=W0366=1 CP << ERROR 12! Line ignored >>

21=W0366=1 CP << ERROR 12! Line ignored >>

;=CP(+A,10)A,0,K38,9 ;shft Up

22=W0366=0 CP << ERROR 12! Line ignored >>

23=RA,2,C65656,0 ;ZOOM_OUT 65656 << ERROR 16! Line ignored >>

24=RA,3,C65655,0 ;ZOOM_IN 65655 << ERROR 16! Line ignored >>

25=CR << ERROR 12! Line ignored >>

26=CR << ERROR 12! Line ignored >>

27=;CP(+A,8)A,5,K54,9 ;shft 6

28=;CU(+A,8)A,5,K54,9

29=CR << ERROR 12! Line ignored >>

30=CR << ERROR 12! Line ignored >>

31=CR << ERROR 12! Line ignored >>

32=CR << ERROR 12! Line ignored >>

33=CP << ERROR 12! Line ignored >>

34=CP << ERROR 12! Line ignored >>

35=CR << ERROR 12! Line ignored >>

36=CR << ERROR 12! Line ignored >>

37=CR << ERROR 12! Line ignored >>

38=CR << ERROR 12! Line ignored >>

39=PA,8,K120,8 ;mode1 << ERROR 16! Line ignored >>

40=PA,9,K121,8 ;mode2 << ERROR 16! Line ignored >>

41=PA,10,K122,8 ;mode3 << ERROR 16! Line ignored >>

42=PA,14,C66389,0 ;TOGGLE_AIRCRAFT_EXIT 66389 //24=RA,14,C65896,0 ;AP SPEED << ERROR 16! Line ignored >>

43=PA,15,C66389,0 ;TOGGLE_AIRCRAFT_EXIT 66389 //25=RA,15,C65897,0 ;AP SPEED << ERROR 16! Line ignored >>

44=PA,15,K50,8 ;TOGGLE_AIRCRAFT_EXIT CARGO "2" << ERROR 16! Line ignored >>

47=PA,18,K51,9 ;51 3 on main keyboard << ERROR 16! Line ignored >>

48=PA,19,K53,9 ;50 2 on main keyboard << ERROR 16! Line ignored >>

49=

50=RA,20,C65966,0 ;THROTTLE1_DECR 65966 << ERROR 16! Line ignored >>

51=UA,20,C65967,0 ;THROTTLE1_CUT 65967 << ERROR 16! Line ignored >>

52=RA,21,C65971,0 ;THROTTLE2_DECR 65971 << ERROR 16! Line ignored >>

53=UA,21,C65972,0 ;THROTTLE2_CUT 65972 << ERROR 16! Line ignored >>

54=RA,22,C65771,0 ;PROP_PITCH_DECR 65771 << ERROR 16! Line ignored >>

55=UA,22,C65772,0 ;PROP_PITCH_HI 65772 << ERROR 16! Line ignored >>

82=PA,12,C65729,0 ;VOR on stopwatch << ERROR 16! Line ignored >>

83=PA,13,C65724,0 ;APP on stopwatch << ERROR 16! Line ignored >>

;// P1 Saitek Rudder

;NOTHING to do

;=U1,0,K38,9 ;???????? 38 Up arrow SHFT

;// P2 CH Throttle Quad

100=PC,0,C65860,0 ;AUTO_THROTTLE_ARM 65860 << ERROR 16! Line ignored >>

101=PC,1,K70,10 ;F ctrl << ERROR 16! Line ignored >>

102=PC,2,C66113,0 ;66113 AP_PANEL_SPEED_OFF << ERROR 16! Line ignored >>

103=PC,3,C66112,0 ;66112 AP_PANEL_SPEED_ON << ERROR 16! Line ignored >>

104=PC,4,C65815,0 ;66107 AP_PANEL_HEADING_OFF << ERROR 16! Line ignored >>

105=PC,5,C65807,0 << ERROR 16! Line ignored >>

106=PC,6,C66103,0 << ERROR 16! Line ignored >>

107=PC,7,C65726,0 << ERROR 16! Line ignored >>

etc

ABOVE PART in the ORIGINAL

[buttons]

ButtonRepeat=40

;//P0 Saitek Yoke 1-20 23-51

;SPOT views

;VC 0-view

1=CP(+A,8)A,0,K189,8 ;minus

2=CP(+A,8)A,0,K189,8

3=CP(+A,8)A,0,K189,8

4=CP(+A,8)A,0,K189,8

5=CP(+A,8)A,0,K189,8

6=CP(+A,8)A,0,K189,8

7=CP(+A,8)A,0,K189,8

8=CP(+A,8)A,0,K189,8

9=CP(+A,8)A,0,K32,10 ;ctrl space

;F11 0-view =W0366= 0_airborn 1_onground

10=W0366=1 CP(+A,10)A,0,K8,8 ;backspace

11=W0366=1 CP(+A,10)A,0,K32,10 ;ctrl space

12=W0366=1 CP(+A,10)A,0,K189,8 ;minus

13=W0366=1 CP(+A,10)A,0,K189,8

14=W0366=1 CP(+A,10)A,0,K189,8

15=

16=W0366=1 CP(+A,10)A,0,K38,9 ;shft Up

17=W0366=1 CP(+A,10)A,0,K38,9 ;shft Up

28=W0366=1 CP(+A,10)A,0,K38,9 ;shft Up

19=W0366=1 CP(+A,10)A,0,K38,9 ;shft Up

20=W0366=1 CP(+A,10)A,0,K38,9 ;shft Up

21=W0366=1 CP(+A,10)A,0,K38,9 ;shft Up

;=CP(+A,10)A,0,K38,9 ;shft Up

22=W0366=0 CP(+A,10)A,0,K32,10 ;ctrl space ;AIRBORNE Spot View

23=RA,2,C65656,0 ;ZOOM_OUT 65656

24=RA,3,C65655,0 ;ZOOM_IN 65655

25=CR(+A,8)A,4,C65607,0 ;65607 ELEV_TRIM_DN ;CP(+A,8)A,4,K53,9 ;shft 2

26=CR(+A,8)A,5,C65615,0 ;trimUP ;CU(+A,8)A,4,K53,9

27=;CP(+A,8)A,5,K54,9 ;shft 6

28=;CU(+A,8)A,5,K54,9

29=CR(+A,9)A,4,C65607,0 ;65607 ELEV_TRIM_DN

30=CR(+A,9)A,5,C65615,0 ;trimUP

31=CR(+A,10)A,4,C65607,0 ;trimDown

32=CR(+A,10)A,5,C65615,0 ;trimUP

33=CP(+A,9)A,7,K87,9 ;if panel SHFT-W

34=CP(+A,9)A,6,K87,8 ;if panel W

35=CR(+A,10)A,7,K39,9 ;if F11 SHFT-RightArrow

36=CR(+A,10)A,6,K37,9 ;if F11 SHFT-LeftArrow

37=CR(+A,8)A,7,K39,9 ;if VC SHFT-RightArrow

38=CR(+A,8)A,6,K37,9 ;if VC SHFT-LeftArrow

39=PA,8,K120,8 ;mode1

40=PA,9,K121,8 ;mode2

41=PA,10,K122,8 ;mode3

42=PA,14,C66389,0 ;TOGGLE_AIRCRAFT_EXIT 66389 //24=RA,14,C65896,0 ;AP SPEED

43=PA,15,C66389,0 ;TOGGLE_AIRCRAFT_EXIT 66389 //25=RA,15,C65897,0 ;AP SPEED

44=PA,15,K50,8 ;TOGGLE_AIRCRAFT_EXIT CARGO "2"

47=PA,18,K51,9 ;51 3 on main keyboard

48=PA,19,K53,9 ;50 2 on main keyboard

49=

50=RA,20,C65966,0 ;THROTTLE1_DECR 65966

51=UA,20,C65967,0 ;THROTTLE1_CUT 65967

52=RA,21,C65971,0 ;THROTTLE2_DECR 65971

53=UA,21,C65972,0 ;THROTTLE2_CUT 65972

54=RA,22,C65771,0 ;PROP_PITCH_DECR 65771

55=UA,22,C65772,0 ;PROP_PITCH_HI 65772

82=PA,12,C65729,0 ;VOR on stopwatch

83=PA,13,C65724,0 ;APP on stopwatch

;// P1 Saitek Rudder

;NOTHING to do

;=U1,0,K38,9 ;???????? 38 Up arrow SHFT

;// P2 CH Throttle Quad

100=PC,0,C65860,0 ;AUTO_THROTTLE_ARM 65860

101=PC,1,K70,10 ;F ctrl

102=PC,2,C66113,0 ;66113 AP_PANEL_SPEED_OFF

103=PC,3,C66112,0 ;66112 AP_PANEL_SPEED_ON

104=PC,4,C65815,0 ;66107 AP_PANEL_HEADING_OFF

105=PC,5,C65807,0

106=PC,6,C66103,0

107=PC,7,C65726,0

108=PC,8,K90,8 ; Z (CHtq)

109=PC,9,K90,8 ; Z (CHtq)

110=PC,10,K65,10 ;A ctrl Approach

111=PC,11,C65752,0 ;PARKING_BRAKES 65752

FSUIPCModules.rar

Link to comment
Share on other sites

tested 4409 and 4412

it's the Conditionals and then it runs out of steam, seems

Not sure what you mean by "runs out of steam". You said that before.

But from the little here I see that the Error notifications were never tested on conditionals. Hmmm. Interesting. Thanks.

attached ZIP with FSUIPC4.4412ERRORS.ini FSUIPC4.4409ERRORS..ini FSUIPC4.ini

I can't find a ZIP, only a "RAR", whatever that is. I don't have a program which understands "RAR". Can you not ZIP things at all? If so, please send to petedowson@btconnect.com.

Pete

Link to comment
Share on other sites

I can't find a ZIP, only a "RAR", whatever that is. I don't have a program which understands "RAR". Can you not ZIP things at all? If so, please send to petedowson@btconnect.com.

Okay, I need to get this done before I disappear in the morning, so I found a utility which seems to open RAR's okay. You shouldn't call them ZIPs though -- none of my unzippers like them!

I must say your reaction was rather over the top. Looking through the "corrupted" INI, the only nasty parts really are

(a) it loses the statement about which named joystick is which assigned letter. That's a (new) silly error which I can rectify easily, and

(b) it seems to plonk the error message in the wrong place for Conditionals (CP, CR types), thus losing the rest of the line. This affected about 30 or less of your Button lines -- all of the non-conditionals were okay.

That second error must have been in there for many years. Strange it's not been discovered before, but I'll fix it now. I'll also clarify the error to say "missing joystick", as in the JoyNames section.

I still don't understand your statement "run out of steam". From the files you uploaded it seems that every button line referring to a now removed joystick has the same Error reported against it. Please, can you enlighten me as to what you really mean by that?

I should be able to get revised versions uploaded tonight, in the wee hours! ;-)

Regards

Pete

Link to comment
Share on other sites

I should be able to get revised versions uploaded tonight, in the wee hours! ;-)

Okay. Fixed that long-standing error with the Error messages on Conditionals, and also retained the names of joysticks when disconnected.

I decided not to put the error message for a missing joystick on every affected button line. You'll just need to check the JoyNames section.

Versions 3.858 and 4.413, now available above.

Happy Christmas!

Pete

Link to comment
Share on other sites

  • 2 weeks later...

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use. Guidelines Privacy Policy We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.