Jump to content
The simFlight Network Forums

Chris Brett

  • Content Count

  • Joined

  • Last visited

Community Reputation

0 Neutral

About Chris Brett

  • Rank
  • Birthday 01/01/1970

Contact Methods

  • Website URL

Profile Information

  • Location
    London, UK
  1. Hi Pete, Thanks for your reply. Those values you suggest may prove useful indeed - if they can be made available via FSUIPC (still using FS2004 at the mo!) that would be great. That, combined with AoA info and G info, may allow me to derive the information I need, at least for some phases of flight. Purpose of this is to get an accurate manouvre and stall speed (min speed/barber pole) indication on electronic flight instruments. Alternatively, is there a known stalling (max) AoA variable for current flight conditions, together with actual AoA variable at the present flight moment? Maybe
  2. Hi all, Just wondering of there is an offset providing the aircraft's current calculated stall speed in KIAS? Can't seem to find reference to anything that might be useful to determine this. Chris
  3. The solution is to read this: http://forums.simflight.com/viewtopic.php?t=8906 and take particular note of point 5 listed under "What you get if you pay". Essentially, unless you have registered (ie. paid) to license your copy of FSUIPC, then only "allowed" programs ("accredited" in Pete parlance) will be able to use FSUIPC to get/set data, like you are trying to do. Without registering & paying for your copy of FSUIPC, you can't do what you want to do. Unless you apply to Pete for a freeware access / developer's key, assuming you are going to develop freeware that is. Those are the
  4. The VB example code in the SDK contains a good example of how to read data from FS. The Timer1_Timer() procedure shows how to obtain the FS time (hours mins and secs) and display them. You don't even need to do anything, just run the code. However, if you'd like an even simpler example, try this. I added a Command button onto the form of the UIPCHello demo program (mine was called Command6 but yours many be different, so modify as necessary): Private Sub Command6_Click() Dim i_APactive As Integer Dim dwResult As Long Call FSUIPC_Read(&H7BC, 4, VarPtr(i_APactive), dwResult)
  5. Post the code you are using to extract the information from FS, there may be an oddity there. If you are making many calls to UIPC every timer event, use only one _Process call rather than _Read/_Process, _Read/_Process. Also, given you are driving external hardware, it may be a hardware update delay rather than a software delay. Have you tried updating a simple label caption on the form window with the UIPC-obtained result of the slip indication and comparing how frequently that label gets updated? There must also be some conversion between the UIPC value received and the output required
  6. Anyone found offset locations for control of the individual sound volumes provided under "Options | Settings | Sound..." in FS2002/4? Specifically the contol of the engine volume level I'm looking for. Seen offset 3B88 but appears only relevant to recipricating engines, not jets. Chris
  7. Richard, In addition to Doug's much more correct answer, you can cheat a little if you want and use the Hex() VB function, which takes the integer value and returns a string as the hex value of that integer. You will have to perform string conversions to integer or float types as you require so it's less efficient if you are doing many of these calls, but will do the job. Hence, in your example, Hex(8592) returns "2190". Similarly, you can use Str() for the opposite way round, to make an integer to hex value, although this might only be used for debug purposes. Str(&H2190) gives 8592,
  8. From Pete's freeware keys thread: The name of the exe is Squawkbox. Check you spelled it correctly. Not "squawbox". Chris
  9. It would appear that the Currency data type is inappropriate for this. Try this instead. I'm sure this is not the most efficient method (I'm not that active in VB programming these days) but it works: In General.bas declare this: Public Type LLCoordinates dwLo As Long dwHi As Long End Type In main code block: Private Sub Command2_Click() Dim dwResult As Long Dim FSLatitude As LLCoordinates Dim ACLatitude As Double Call FSUIPC_Read(&H560, 8, VarPtr(FSLatitude), dwResult) Call FSUIPC_Process(dwResult) If FSLatitude.dwHi >= 0 Then ACLatitude = FSLati
  10. Do people not read information put before them? The ONLY people that will have to pay for FSUIPC are commercial software developers who require FSUIPC interprocess communciation facilities to have their products communicate with FS. Freeware authors do not pay anything to have their products use FSUIPC - they just apply to Pete for a free code that they can distribute with their product and that will allow it to run on anyone's machine. So I ask simply: what exactly is everyone's problem with FSUIPC being a commercial product to commercial developers, and a freeware product to freeware deve
  11. Erik, No, you don't have to buy your own license! You, personally, would only buy a license if you required to use the *extra* FSUIPC functions that it can provide, ie. the joystick facilities, button mapping etc etc. If you do not require these functions or don't know what I'm talking about, you don't need a license, as an end user, and you can use freeware and commercial products that use FSUIPC without any problem whatsoever. In other words, no different to how you as an end user of a freeware or commercial product stand today using same product. Below follows my understanding of Pete'
  12. It might be OK, although if you are planning on doing this with the standard GUI Windows graphics calls then it might well be slow on a P233. That said, a half second update rate might be OK - try an experiment and see. Bitmap resolution, and needle bitmap size/memory will also affect update rate. There are other more efficient ways to make your own "virtual gauges" but if you are not too familiar with VB or programming in general, I'd stick to your idea and give it a try first. Chris
  13. Richard, Using the FSUIPC SDK "Hello" example from my VB conversion of the SDK, replace the code in the "Private Sub Timer1_Timer()" function as follows: Private Sub Timer1_Timer() Dim dwResult As Long Dim iIAS128 As Long Dim fIAS As Single Call FSUIPC_Read(&H2BC, 4, VarPtr(iIAS128), dwResult) Call FSUIPC_Process(dwResult) fIAS = iIAS128 / 128 lblClock.Caption = "IAS is " & fIAS End Sub There are various other posts on this forum concerning the basics of reading and writing to various locations within FSUIPC from VB, it might be worth clicking on Search and browsin
  14. Or you could do (pseudo code): if value from IPC > 32737 then VS := value - 65535 else VS := value; ... in the absence of knowing what the VB equivalent of a signed word is. It's a bit crude but it'll do the job. Chris
  • 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.