-
Posts
38,265 -
Joined
-
Days Won
170
Content Type
Profiles
Forums
Events
Gallery
Downloads
Everything posted by Pete Dowson
-
Braking with offset 0xbc4
Pete Dowson replied to metamarty's topic in FSUIPC Support Pete Dowson Modules
Which one downloaded last week? 4.60a is the one available on the Schiratti site, but 4.638 and 4.667 are available here, in the Download Links subforum. This is why I always need the version number. "Latest version" is only the latest one you've seen. Well, writing to 0BC4 and OBC6 certainly works fine here. There's something else going on there. Here's a log (this is from 4.667). You can see that values written to 0BC4/6, being in the range 0-16k, are scaled automatically to the -16k to +16k range used by the AXIS controls. You can also see that applying more brake pressure is instant, but releases pressure over time when you reduce the value. You'll also notice that the read-back figure is not the same as the written figure, as noted in red in the FSUIPC4 Offsets Status document.. With 0BC4/0BC6 there should be no need to continually write -- the pressure is maintained -- unless of course it is getting overridden by real joystick inputs. But joystick inputs are only noticed if they change. Maybe you have an insufficient dead zone on your real toe brakes, or they have bad jitters? You might need to disable the toe brakes whilst autobraking, using offset 341A. (However, I note you said earlier that dosabling the toe brakes didn't help in any case). 107922 Monitor IPC:0BC4 (U16) = 0 107922 Monitor IPC:0BC6 (U16) = 0 165500 Monitor IPC:0BC4 (U16) = 2560 165500 Monitor IPC:0BC6 (U16) = 5120 165547 *** AXIS: Cntrl= 66387 (0x00010353), Param= -11305 (0xffffd3d7) AXIS_LEFT_BRAKE_SET 165547 *** AXIS: Cntrl= 66388 (0x00010354), Param= -6226 (0xffffe7ae) AXIS_RIGHT_BRAKE_SET 165563 Monitor IPC:0BC4 (U16) = 2539 165563 SimRead: 0BC4="BRAKE LEFT POSITION" FLT64: 0.154977708179 165563 Monitor IPC:0BC6 (U16) = 2057 165563 SimRead: 0BC6="BRAKE RIGHT POSITION" FLT64: 0.125566153788 215954 Monitor IPC:0BC4 (U16) = 16383 215954 Monitor IPC:0BC6 (U16) = 8192 215985 *** AXIS: Cntrl= 66387 (0x00010353), Param= 16383 (0x00003fff) AXIS_LEFT_BRAKE_SET 215985 *** AXIS: Cntrl= 66388 (0x00010354), Param= 0 (0x00000000) AXIS_RIGHT_BRAKE_SET 216016 Monitor IPC:0BC4 (U16) = 16384 216016 SimRead: 0BC4="BRAKE LEFT POSITION" FLT64: 1.00000023656 216016 Monitor IPC:0BC6 (U16) = 4423 216016 SimRead: 0BC6="BRAKE RIGHT POSITION" FLT64: 0.269976674151 241188 Monitor IPC:0BC6 (U16) = 0 241297 *** AXIS: Cntrl= 66388 (0x00010354), Param= -1639 (0xfffff999) AXIS_RIGHT_BRAKE_SET 241313 Monitor IPC:0BC6 (U16) = 3801 241313 SimRead: 0BC6="BRAKE RIGHT POSITION" FLT64: 0.231983809931 241360 *** AXIS: Cntrl= 66388 (0x00010354), Param= -3277 (0xfffff333) AXIS_RIGHT_BRAKE_SET 241375 Monitor IPC:0BC6 (U16) = 3178 241375 SimRead: 0BC6="BRAKE RIGHT POSITION" FLT64: 0.193990736397 241438 *** AXIS: Cntrl= 66388 (0x00010354), Param= -4915 (0xffffeccd) AXIS_RIGHT_BRAKE_SET 241454 Monitor IPC:0BC6 (U16) = 2556 241454 SimRead: 0BC6="BRAKE RIGHT POSITION" FLT64: 0.155997662863 241485 *** AXIS: Cntrl= 66388 (0x00010354), Param= -6554 (0xffffe666) AXIS_RIGHT_BRAKE_SET 241516 Monitor IPC:0BC6 (U16) = 1933 241516 SimRead: 0BC6="BRAKE RIGHT POSITION" FLT64: 0.117958202479 241547 *** AXIS: Cntrl= 66388 (0x00010354), Param= -8192 (0xffffe000) AXIS_RIGHT_BRAKE_SET 241563 Monitor IPC:0BC6 (U16) = 1310 241563 SimRead: 0BC6="BRAKE RIGHT POSITION" FLT64: 0.0799853349197 241610 *** AXIS: Cntrl= 66388 (0x00010354), Param= -9830 (0xffffd99a) AXIS_RIGHT_BRAKE_SET 241625 Monitor IPC:0BC6 (U16) = 1048 241625 SimRead: 0BC6="BRAKE RIGHT POSITION" FLT64: 0.0639882826973 241672 *** AXIS: Cntrl= 66388 (0x00010354), Param= -11469 (0xffffd333) AXIS_RIGHT_BRAKE_SET 241688 Monitor IPC:0BC6 (U16) = 786 241688 SimRead: 0BC6="BRAKE RIGHT POSITION" FLT64: 0.0479911935129 241735 *** AXIS: Cntrl= 66388 (0x00010354), Param= -13107 (0xffffcccd) AXIS_RIGHT_BRAKE_SET 241750 Monitor IPC:0BC6 (U16) = 524 241750 SimRead: 0BC6="BRAKE RIGHT POSITION" FLT64: 0.0319941412904 241797 *** AXIS: Cntrl= 66388 (0x00010354), Param= -14745 (0xffffc667) AXIS_RIGHT_BRAKE_SET 241813 Monitor IPC:0BC6 (U16) = 262 241813 SimRead: 0BC6="BRAKE RIGHT POSITION" FLT64: 0.0159970706161 241875 *** AXIS: Cntrl= 66388 (0x00010354), Param= -16384 (0xffffc000) AXIS_RIGHT_BRAKE_SET 241891 Monitor IPC:0BC6 (U16) = 0 241891 SimRead: 0BC6="BRAKE RIGHT POSITION" FLT64: 0 252188 Monitor IPC:0BC4 (U16) = 0 252297 *** AXIS: Cntrl= 66387 (0x00010353), Param= 14744 (0x00003998) AXIS_LEFT_BRAKE_SET 252313 Monitor IPC:0BC4 (U16) = 14842 252329 SimRead: 0BC4="BRAKE LEFT POSITION" FLT64: 0.905902503814 252360 *** AXIS: Cntrl= 66387 (0x00010353), Param= 13106 (0x00003332) AXIS_LEFT_BRAKE_SET 252375 Monitor IPC:0BC4 (U16) = 13302 252375 SimRead: 0BC4="BRAKE LEFT POSITION" FLT64: 0.811919807106 252422 *** AXIS: Cntrl= 66387 (0x00010353), Param= 11468 (0x00002ccc) AXIS_LEFT_BRAKE_SET 252438 Monitor IPC:0BC4 (U16) = 11763 252454 SimRead: 0BC4="BRAKE LEFT POSITION" FLT64: 0.717936633561 252485 *** AXIS: Cntrl= 66387 (0x00010353), Param= 9829 (0x00002665) AXIS_LEFT_BRAKE_SET 252500 Monitor IPC:0BC4 (U16) = 10223 252500 SimRead: 0BC4="BRAKE LEFT POSITION" FLT64: 0.623953936852 252547 *** AXIS: Cntrl= 66387 (0x00010353), Param= 8191 (0x00001fff) AXIS_LEFT_BRAKE_SET 252563 Monitor IPC:0BC4 (U16) = 8683 252563 SimRead: 0BC4="BRAKE LEFT POSITION" FLT64: 0.529984114747 252610 *** AXIS: Cntrl= 66387 (0x00010353), Param= 6553 (0x00001999) AXIS_LEFT_BRAKE_SET 252641 Monitor IPC:0BC4 (U16) = 7831 252641 SimRead: 0BC4="BRAKE LEFT POSITION" FLT64: 0.477993546944 252672 *** AXIS: Cntrl= 66387 (0x00010353), Param= 4914 (0x00001332) AXIS_LEFT_BRAKE_SET 252704 Monitor IPC:0BC4 (U16) = 6979 252704 SimRead: 0BC4="BRAKE LEFT POSITION" FLT64: 0.425939618472 252750 *** AXIS: Cntrl= 66387 (0x00010353), Param= 3276 (0x00000ccc) AXIS_LEFT_BRAKE_SET 252766 Monitor IPC:0BC4 (U16) = 6127 252766 SimRead: 0BC4="BRAKE LEFT POSITION" FLT64: 0.373949109342 252813 *** AXIS: Cntrl= 66387 (0x00010353), Param= 1638 (0x00000666) AXIS_LEFT_BRAKE_SET 252829 Monitor IPC:0BC4 (U16) = 5275 252829 SimRead: 0BC4="BRAKE LEFT POSITION" FLT64: 0.321958600212 252860 *** AXIS: Cntrl= 66387 (0x00010353), Param= 0 (0x00000000) AXIS_LEFT_BRAKE_SET 252875 Monitor IPC:0BC4 (U16) = 4423 252875 SimRead: 0BC4="BRAKE LEFT POSITION" FLT64: 0.269976674151 252938 *** AXIS: Cntrl= 66387 (0x00010353), Param= -1639 (0xfffff999) AXIS_LEFT_BRAKE_SET 252954 Monitor IPC:0BC4 (U16) = 3801 252954 SimRead: 0BC4="BRAKE LEFT POSITION" FLT64: 0.231983809931 253000 *** AXIS: Cntrl= 66387 (0x00010353), Param= -3277 (0xfffff333) AXIS_LEFT_BRAKE_SET 253016 Monitor IPC:0BC4 (U16) = 3178 253016 SimRead: 0BC4="BRAKE LEFT POSITION" FLT64: 0.193990736397 253063 *** AXIS: Cntrl= 66387 (0x00010353), Param= -4915 (0xffffeccd) AXIS_LEFT_BRAKE_SET 253079 Monitor IPC:0BC4 (U16) = 2556 253079 SimRead: 0BC4="BRAKE LEFT POSITION" FLT64: 0.155997662863 253110 *** AXIS: Cntrl= 66387 (0x00010353), Param= -6554 (0xffffe666) AXIS_LEFT_BRAKE_SET 253141 Monitor IPC:0BC4 (U16) = 1933 253141 SimRead: 0BC4="BRAKE LEFT POSITION" FLT64: 0.117958202479 253172 *** AXIS: Cntrl= 66387 (0x00010353), Param= -8192 (0xffffe000) AXIS_LEFT_BRAKE_SET 253188 Monitor IPC:0BC4 (U16) = 1310 253188 SimRead: 0BC4="BRAKE LEFT POSITION" FLT64: 0.0799853349197 253235 *** AXIS: Cntrl= 66387 (0x00010353), Param= -9830 (0xffffd99a) AXIS_LEFT_BRAKE_SET 253250 Monitor IPC:0BC4 (U16) = 1048 253250 SimRead: 0BC4="BRAKE LEFT POSITION" FLT64: 0.0639882826973 253297 *** AXIS: Cntrl= 66387 (0x00010353), Param= -11469 (0xffffd333) AXIS_LEFT_BRAKE_SET 253329 Monitor IPC:0BC4 (U16) = 786 253329 SimRead: 0BC4="BRAKE LEFT POSITION" FLT64: 0.0479911935129 253360 *** AXIS: Cntrl= 66387 (0x00010353), Param= -13107 (0xffffcccd) AXIS_LEFT_BRAKE_SET 253375 Monitor IPC:0BC4 (U16) = 524 253375 SimRead: 0BC4="BRAKE LEFT POSITION" FLT64: 0.0319941412904 253422 *** AXIS: Cntrl= 66387 (0x00010353), Param= -14745 (0xffffc667) AXIS_LEFT_BRAKE_SET 253438 Monitor IPC:0BC4 (U16) = 262 253438 SimRead: 0BC4="BRAKE LEFT POSITION" FLT64: 0.0159970706161 253485 *** AXIS: Cntrl= 66387 (0x00010353), Param= -16384 (0xffffc000) AXIS_LEFT_BRAKE_SET 253500 Monitor IPC:0BC4 (U16) = 0 253500 SimRead: 0BC4="BRAKE LEFT POSITION" FLT64: 0 You also said "recently, my autobrake system failed. It is no longer activating the brakes", so i assume your code worked once. So what changed? Regards Pete -
To get full AI Traffic identity strings by VB
Pete Dowson replied to Telly's topic in FSUIPC Support Pete Dowson Modules
Okay. Let's see what could be wrong: 19373719 WRITE0 D004, 4 bytes: 01 00 00 00 This says you want the Tail Number ... right? 19373719 READ0 D008, 4 bytes: BA FB 8D 01 19373719 WRITE0 D00C, 4 bytes: 25 00 00 00 This doesn't really look right to me. Unless the traffic is being injected into FSUIPC from another program (like Squawkbox), all of the FS traffic IDs are negative numbers (or, in an unsigned variable, very large numbers like 0xFFFFFC28). How are you reading the Traffic IDs? I suspect the error lies there. You can use my TrafficLook utility to view details including the ID but bear in mind that the program NEGATES the ID so that it displays neatly as a number. So, for instance, FFFFFFC28 shows there as 928 (0xFFFFFC28 = -928 in decimal). If you read details for a non-existent AI aircraft you get zeroes. Regards Pete -
Faulty Install of FSUIPC4.DLL ?
Pete Dowson replied to MajikthiseD's topic in FSUIPC Support Pete Dowson Modules
It actually searches all the folders for the current user name. This has been working fine for the four or five years that an installer has been in use for FSUIPC, but just recently (for some reason) a couple of users found that this didn't work for them. You are actually only the third! I don't understand why, or what's changed, but the revised installer (for 4.638) supplied in the Download Links subforum covers all users correctly now. Please try that. You can always cut and paste the log into your message here. If you mean the Install log, that will be fine -- after you try 4.638 -- but if you mean the run-time FSUIPC4.LOG file, then if you have one of those it means the Install worked okay. Regards Pete -
Freezing up randomly
Pete Dowson replied to bugman38313's topic in FSUIPC Support Pete Dowson Modules
If you wish, you could also paste the FSUIPC log file contents into a message here, and I'll check that it looks okay from FSUIPC's point of view. Close FS first. The file is in the FS Modules folder. Regards Pete -
FSC 9 - FSX - FSUIPC 4.6
Pete Dowson replied to Whiteflag's topic in FSUIPC Support Pete Dowson Modules
It doesn't matter. It's only a facility in case you think you have registration problems. No. You can run the Installer as many times as you wish. Regards Pete -
Problem with fsupic v. 6.4667
Pete Dowson replied to Signalman's topic in FSUIPC Support Pete Dowson Modules
There's no difference between 4.661 and 4.667 until it is running and has actually been used for one of the few additions and changes made -- just the last few items on the changes list. I suspect it's one of the SimConnect loading glitches which should disappear after a couple of retries. It's a well-known bug in SimConnect before the SP1 FSX update, but it was never properly fixed. Check the Log file in the Modules folder: is it for 4.661 or 4.667? If still 4.661 then FSUIPC 4.667 has never actually been run and it is certainly that loading glitch. If there is actually a 4.667 log, please show it to me. No. there's 4.60a, the earliest supported version, and 4.638. But 4.667 will become 4.70 in a couple of weeks and then it will be the only supported version. Regards Pete -
FSUIPC troubles in FSX
Pete Dowson replied to Todd Moore's topic in FSUIPC Support Pete Dowson Modules
Sorry, I don't know. Your best bet is the PMDG forum. Maybe the PMDG aircraft needs a version of SimConnect which is faulty in your FSX installation. You might need to obtain a SimConnect log and check it -- instructions for getting logs are provided in the FAQ subforum here. But please don't ask me to check PMDG access to SimConnect, I wouldn't know how to do that. Regards Pete -
Braking with offset 0xbc4
Pete Dowson replied to metamarty's topic in FSUIPC Support Pete Dowson Modules
0BC4 and 0BC6 show the value FS itself has for the brake values -- writing to them sends it to FS, but reading them reads it from FS. Of course how it does this depends on what Flight Simulator you are using. Unfortunately you don't mention either the version number of FSUIPC nor even the version of FS, so I cannot really comment further. Not sure why 0BC4 and 0BC6 don't get reset to 0 -- possibly, if you are talking about FSX, it is because they were at 0 before and so SimConnect doesn't send the new value because there is no new value. But the action of setting 0 instead of the value you request sounds like either a brake failure has been set (certainly possible via SimConnect, or even, probably, via FSUIPC offset 0B63), or the brakes are disconnected either via FSUIPC (see offset 341A) or directly by some other add-on intercepting the controls. Regards Pete -
Problem with Offset 333C
Pete Dowson replied to BlueLiquidCell's topic in FSUIPC Support Pete Dowson Modules
I managed to get things up and running earlier than I expected, so I've made the change to clear 333C. Please try it -- the updated WideClient is now in the Download Links subforum. Regards Pete -
I thought I explained? Why is it worrying? If you really want to know the complete ins and outs of what it is doing, please set "Log=DebugAll" in the [user] section of the client INI file, and wade through the first 20 seconds of the resulting Log file. Incidentally, it isn't anywhere near 20 seconds on any of my systems, so it must be very system dependent, and probably more controlled by what is happening in the FS side of the equation. Regards Pete
-
Bug or my mistake in 3.989y?
Pete Dowson replied to The Tall Guy's topic in FSUIPC Support Pete Dowson Modules
Okay. Updated versions are now up in the Download Links subforum. I'm reasonably certain that the interlocks on the Timer Cancel will fix your problem, but since I cannot make it fail here I am dependent on your confirmation for that. On the POV testing, I added the ipc.readPOV function, which returns 0 or 32-39 as appropriate, but whilst I was in theat area of code I saw it was easy enough also to extend the ipc.testbutton facility to handle buttons 32-39 as well. So you have two ways now. That part of the update is all tested. Regards Pete -
That's okay. When you have a lot of puzzles on your mind it is easy to miss things in front of you! ;-) Er ... it is installed in the FSUIPC Documents folder, inside the FS Modules folder, when you install FSUIPC. It's always been part of the FSUIPC package, not the SDK. Good. Hope it all works as you wish it to! Regards Pete
-
Bug or my mistake in 3.989y?
Pete Dowson replied to The Tall Guy's topic in FSUIPC Support Pete Dowson Modules
Just got my development system usable. Not my real comfort settings, yet, but I'll sort the bits and pieces out as I go. I'll look at adding "readPOV" later today. Meanwhile: In order to get your Lua running I had to change lines 418 and 423, changing "Button" to "ActionButton", else it failed on the following line saying "action" was a nil value. Here's the log for that: 249500 LUA: gameController: Started 249500 LUA: Button:initialize: Pairing button 'shiftbutton9' for joystick '1' 249500 LUA: ActionButton:initialize: Setting up action button 0 249500 LUA: Button:initialize: Pairing button 'button0' for joystick '1' 249515 LUA: ActionButton:actionIf: Setting '[unconditional]' action for 'CLICK-PRESS' on button 0 249515 LUA: ActionButton:actionIf: Setting 'shiftbutton9' action for 'CLICK-PRESS' on button 0 249515 LUA: ActionButton:initialize: Setting up action button 1 249515 LUA: Button:initialize: Pairing button 'button1' for joystick '1' 249515 LUA: ActionButton:actionIf: Setting '[unconditional]' action for 'CLICK-REPEAT-FAST' on button 1 249515 LUA: ActionButton:actionIf: Setting 'shiftbutton9' action for 'CLICK-PRESS' on button 1 249515 LUA: ActionButton:initialize: Setting up action button 2 249515 LUA: Button:initialize: Pairing button 'button2' for joystick '1' 249515 LUA: ActionButton:actionIf: Setting '[unconditional]' action for 'CLICK-PRESS' on button 2 249515 LUA: ActionButton:actionIf: Setting '[unconditional]' action for 'HOLD-REPEAT' on button 2 249515 LUA: ActionButton:actionIf: Setting 'shiftbutton9' action for 'CLICK-PRESS' on button 2 249515 LUA: ActionButton:initialize: Setting up action button 3 249515 LUA: Button:initialize: Pairing button 'button3' for joystick '1' 249515 LUA: ActionButton:actionIf: Setting '[unconditional]' action for 'CLICK-PRESS' on button 3 249515 LUA: ActionButton:actionIf: Setting '[unconditional]' action for 'HOLD-REPEAT' on button 3 249515 LUA: ActionButton:initialize: Setting up action button 4 249515 LUA: Button:initialize: Pairing button 'button4' for joystick '1' 249515 LUA: ActionButton:actionIf: Setting '[unconditional]' action for 'CLICK-PRESS' on button 4 249515 LUA: ActionButton:actionIf: Setting '[unconditional]' action for 'HOLD-ONCE' on button 4 249515 LUA: ActionButton:actionIf: Setting 'shiftbutton9' action for 'CLICK-PRESS' on button 4 249515 LUA: ActionButton:actionIf: Setting 'shiftbutton9' action for 'HOLD-ONCE' on button 4 249515 LUA: ActionButton:initialize: Setting up action button 5 249515 LUA: Button:initialize: Pairing button 'button5' for joystick '1' 249515 LUA: ActionButton:actionIf: Setting '[unconditional]' action for 'CLICK-PRESS' on button 5 249515 LUA: ActionButton:actionIf: Setting 'shiftbutton9' action for 'CLICK-PRESS' on button 5 249515 LUA: ActionButton:actionIf: Setting 'shiftbutton9' action for 'HOLD-ONCE' on button 5 249515 LUA: Button:initialize: Pairing button 'button6' for joystick '1' 249515 *** LUA Error: E:\FSX\Modules\gameController.lua:419: attempt to call method 'action' (a nil value) Once running, it was okay -- no errors when I pressed by Joystick's Button 0. So I guess that whilst being intermittent -- or rather timing dependent -- the timing is just right on your system for it to look consistent. Here's the relevant part of the log: 524906 LUA: Button.pressOrRelease: Button '0 is state '1' 524906 LUA: 524906 LUA: ActionButton:press: Testing button '0' 524906 LUA: ShiftButton:isTriggered: 'shiftbutton9' is 'FALSE' 524906 LUA: ActionButton:pressAction: Performing button 0's action for '[unconditional]' 524906 LUA: ActionButton.startTimer: Timer started 524906 LUA: Button:doAction: No action for 'CLICK-REPEAT-FAST' 524906 LUA: Button:doAction: No action for 'CLICK-REPEAT' 524906 LUA: Button:doAction: Performing action 'CLICK-PRESS' 524906 LUA: Button.invokeFunc: f is type 'function' 524906 LUA: doControl: Sending control '65860' 524937 LUA: Button.pressOrRelease: Button '0 is state '1' 524937 LUA: Button.pressOrRelease: Button '0 is state '1' 524937 LUA: Button.pressOrRelease: Button '0 is state '1' 524937 LUA: Button.pressOrRelease: Button '0 is state '1' 524937 LUA: Button.pressOrRelease: Button '0 is state '1' 524937 LUA: Button.pressOrRelease: Button '0 is state '1' 524937 LUA: Button.pressOrRelease: Button '0 is state '1' 524937 LUA: Button.pressOrRelease: Button '0 is state '1' 524937 LUA: Button.pressOrRelease: Button '0 is state '1' 524937 LUA: Button.pressOrRelease: Button '0 is state '1' 524953 LUA: Button.pressOrRelease: Button '0 is state '1' 524953 LUA: Button.pressOrRelease: Button '0 is state '1' 524953 LUA: Button.pressOrRelease: Button '0 is state '1' 524953 LUA: Button.pressOrRelease: Button '0 is state '1' 524953 LUA: Button.pressOrRelease: Button '0 is state '1' 524953 LUA: Button.pressOrRelease: Button '0 is state '1' 524953 LUA: Button.pressOrRelease: Button '0 is state '1' 525187 LUA: Button.pressOrRelease: Button '0 is state '0' 525187 LUA: 525187 LUA: ActionButton:release: Releaseing button '0' 525187 LUA: ActionButton.endTimer: Timer stopped I'll tighten up the interlocks with a couple of small Critical Sections and provide an update for you to test. If the readPOV is easy enough I'll include that too. Regards Pete -
Freezing up randomly
Pete Dowson replied to bugman38313's topic in FSUIPC Support Pete Dowson Modules
Sorry, I've no idea what ASCARS is doing. You'll need to ask the author of that program. It isn't a message from FSUIPC itself. One thought, though -- if you run FSX "as administrator" for any reason, all FSUIPC-using programs must also be run "as administrator". Regards Pete -
I'm not sure why 3D versus 2D makes any difference. "Mouse macros" don't use the mouse or its position. They replace the use of the mouse once FSUIPC has detected what happen when the mouse is used. I don't remember mentioning Lua. I mentioned "L:Vars", which is short for "Local Variables". There are facilities in FSUIPC for finding out about local variables -- even an assignable control to list them. True, you would probably need a Lua plug-in to write to them, but that's no where near the first step. Didn't I suggest the solution to that? Assign the button to one of the Offset controls so that it changes the offset in a way you can detect in your program. You seem to miss half of what I write. Offsets 66C0 to 66FF are for any use you want to put them to. That's why I mentioned them. Of course you can use them to detect your button. Just assign your button to change the offset as you wish. This is what the Offset controls, in the drop-down assignments list is for !!!!! There is no "mis-use". Sorry to have to repeat myself, but you seem to be ignoring the things you can do, even though I point them out. Regards Pete
-
what type offsets ,how do you tell?
Pete Dowson replied to Ron Buchwald's topic in FSUIPC Support Pete Dowson Modules
I'm afraid all that is a kind of gibberish to me. I'm not a VB person. I'm glad it works for you. Regards Pete -
what type offsets ,how do you tell?
Pete Dowson replied to Ron Buchwald's topic in FSUIPC Support Pete Dowson Modules
Intel-type processors, like those made by Intel and AMD, which are the brains of your PC or Laptop. The ones FS runs on. I didn't write PM, but when they use the XXXX.Y notation they mean bit Y in offset XXXX. So the size is 1 bit. However, to access that bit necessitates a shift and an AND (to clear it or test it) or an OR (to set it). Individual bits aren't addressable. When PM provides the length instead (as does my offsets list), then 1 = 1 byte = 8 bits = 1 BYTE 2 = 2 bytes = 16 bits = 1 WORD 4 = 4 bytes = 32 bits = 1 DWORD 8 = 8 bytes = 64 bits = 1 QWORD In floating point there a 4 and 8 byte versions, 4 = FLOAT, 8 = DOUBLE And strings are simply BYTE arrays, with one character in each byte. A string can be any length, and, as per C/C++ practice, are usually (but not always) terminated by a zero byte. I believe this is completely different in VB however. You usually need to read and write strings in FS as byte arrays, not VB strings. No. Regards Pete -
what type offsets ,how do you tell?
Pete Dowson replied to Ron Buchwald's topic in FSUIPC Support Pete Dowson Modules
No, you can't just make them up. They may be in use already. The 66C0-66FF ones are free for individual use, but if you want to release software using offsets for others to use you need to get some specificaly assigned. Just email me (petedowson@btconnect.com) with the number of bytes you need, and I'll assign them. Please try to be compact -- there's only a finite range. Offsets are just bytes in memory. You can use them singly, in pairs or whatever, as you wish. It is up to your programming needs. Bit arrays? Really? Are they supported as a data type in VB? Wow. The underlying code must use Shifts, And's and Or's to access the bits because no Intel processor types supports such a type directly. Regards Pete -
FSUIPC Client DLL for .NET - Version 2.0
Pete Dowson replied to Paul Henty's topic in FSUIPC Client DLL for .NET
Is this a question about "FSUIPC Client DLL for .NET - Version 2.0" (i.e. this thread)? If so I'll wait for the author to answer. If not, please re-post in a new, properly titled, thread in the Support Forum. (You are lucky i spotted the message -- I don't normally visit other folks' threads). Regards Pete -
not able to buy fsuipc+wide fs for fsx boundle
Pete Dowson replied to europa345's topic in FSUIPC Support Pete Dowson Modules
I just looked. Seems pretty obvious. Select it in the little drop-down top right of page, called "Select Package" -- the choice is "Single License" or "Together with ...". Pete -
Questions about setting the weather
Pete Dowson replied to Malfoy's topic in FSUIPC Support Pete Dowson Modules
Probably not. In fact certainly not, in FSX, but there is an option control in FSUIPC3 for FS9 and before. See the Options control section in the SDK's "FSUIPC for Programmers" document. Note that those facilities have probably been disused for many years. They were part of a set of facilities to allow writers of "game" or "adventure" scenarios to force some level of anti-cheating control over their users. Since Adventure Programming Language (APL) was withdrawn, replaced now by Missions, that's not been useful really. Regards Pete -
Bug or my mistake in 3.989y?
Pete Dowson replied to The Tall Guy's topic in FSUIPC Support Pete Dowson Modules
Not at present, no. As I said, you'd need a "readPOV(joystick#)" function. It should be reasonably easy to add. The need hadn't occurred to me before -- like many of the Lua library functions it would be a result of a request like now. I shall add it, but it will have to wait a few days because I'm only half-way through a re-build process due to a catastrophic disk crash on my development PC (only the third disk crash I've had at all, as far as I can recall). Ah, okay. I'm concerned now, then, that it doesn't work as expected. Correct. It is the same code. There's only one place where function name strings are processed. The "cancel" removes the string name of the timer function from the internal data on that Lua thread -- zeroes it -- so that when the next timer interrupt for it occurs the cancellation is detected and the related event will never fire again. I think this is all interlocked, but I'll check to see whether there's any chance of a timer event being triggered and the cancel occurring between that and the Lua thread being woken to receive it. The fact that there's no line number in the error report seems to suggest this possibility, for sure. Odd, though. If that's the case one would expect it to be intermittent, not solid -- unless possibly your timer interval is very short? Ah, no - 50mSecs. Not short at all. Don't worry. I'll be tracking my C code more than your Lua code! ;-) It will be later this week -- after I've finished rebuilding my development environment. Do you need it first for FSUIPC4, FSUIPC3 or WideClient? Thanks & Regards Pete -
Problem with Offset 333C
Pete Dowson replied to BlueLiquidCell's topic in FSUIPC Support Pete Dowson Modules
No, 337E is just as good (and I see I actually documented it for such use). I'll update WideClient later this week, or maybe next. I'm rebuilding the contents of my main development PC at present after a disk crash which occurred just before I went on holiday! Regards Pete -
No data transfer to WideClient
Pete Dowson replied to Rouslan's topic in FSUIPC Support Pete Dowson Modules
See the errors: It is these which indicate something wrong with the connection. These sorts of problems are almost always indicative of a bad cable or network hardware problem. There's a small chance it could be driver or driver settings. If you have the network hardware set to auto-negotiate try setting it to fixed full duplex mode -- or vice versa. Possibly uninstalling the ethernet interface hardware (in the Device manager) and re-installing might help. Or try forcing it to update its driver. Regards Pete -
Isn't it accessible either via mouse macro or L:var methods? This is where I'm not seeing the picture. Is this a programmable interface? Are you writing a program to interface both to FSUIPC and to this other program? You can assign the buttons to anything which you can detect. If you have decided you must write a program to do it, you could use the Offset Byte SetBits and Offset Byte Clearbits controls to change bits in a user byte offset, such as 66C0 (offsets 66C0 to 66FF are assigned for users). I would still like to know a bit more. There aren't many aircraft add-ons which are not amenable to some sort of assignment method or another. Regards Pete