Jump to content
The simFlight Network Forums


  • Content Count

  • Joined

  • Last visited

Everything posted by JohnS737

  1. Mike I have developed and published an application that may be able to help you here. You should be able to get it from http://www.schiratti.com/starkie. It is a programming environment based on a subset of C, with extensions that allow you to define FSUIPC variables. e.g. You define a variable such as "int altitude at $4000", taking the figures from Pete's documentation. It will generate diagnostic output that you can control using printf. The output goes to a tabbed page in the same program. If you have any questions, please post an answer to this board. p.s. I have been working on en
  2. On a related topic, according to popular legend, when Shell found oil in the UK North Sea, they named their first field AUK, and where planning to name subsequent fields, BUK, CUK etc.. However, in an amazing lack of foresight, nobody thought they'd get as far as F, and by that time it was too late, so since AUK was a seabird, and the oilfields were at sea, they decided to name the fields after birds (e.g. Brent, Cormorant, etc...)
  3. Pete Enrico has already set up the web page. As he points out though, we probably need a good name for this project. I called it FSA because it's version A. Any better ideas? http://www.schiratti.com/starkie p.s. I don't know what to do about support yet. john.starkie at ntlworld.com will do for now.
  4. Pete I missed your reply (in another post) on Friday afternoon, so I'll ask Enrico later in the week (and maybe extend the feature set in the meantime). I can't post it here. Its 560Kb (including docs).
  5. Pete Thanks. Will do. I'll send it Monday morning. p.s. The code I supplied has a bug, as some of the variables are two bytes long. They should have been 'shortint' s. Have a nice weekend. I hear it's snowing in the UK.
  6. Here's a way to do it using my FSUIPC compiler/interpreter This will work if you hit control X. Assume you want to pause 10,000 metres before you get to waypoint 7. Wait until you've crossed waypoint 6. Wait until you're within 10,000 metres of the next waypoint Pause Coded as follows: int current_waypoint at 0x616C; int pause_control at 0x0262; int wp_distance at 0x60EC; key(Control,'X'){ while(current_waypoint < 6) wait(1); while(wp_distance < 10000) wait(1); pause_control = 1; } I now have this application ready for release, but do not have access to a website. If a
  7. Pete, Apologies for any confusion. 600C is seconds since midnight. 6190 is the time at which the waypoint was crossed (zulu time, in seconds since midnight) 61B8 is the number of seconds since some arbitary starting point, divided by 5 61B0 is the time at which 61B8 was last updated (zulu time, in seconds since midnight) I'm confident that when 61B8 is incremented, some other variables are also adjusted, I just haven't yet found out which ones they are. Cheers JohnS
  8. Pete int GPS_6190 at $6190; // Time when waypoint was crossed, int GPS_61B0 at $61B0; // Time of last update, see 61B8 int GPS_61B8 at $61B8; // Counter, incremented once every five seconds 6168 is a counter, it is incremented by one every five seconds. From what I remember, it starts at zero. When the counter is incremented, the time is copied into 61B0 (seconds since midnight). 6190 is the time the last waypoint was crossed. I don't know if this is set when 61B8 is updated or at the exact second. I've sent a copy of the program to jon@scruffyduck.co.uk, and am aiming for a fu
  9. Pete, Here are some FSUIPC variables in the GPS area int GPS_600C at $600C; // Zulu time in seconds since midnight float GPS_6068 at $6068; // Track Error (TKE), in radians float GPS_60EC at $60EC; // Distance to next waypoint, in metres float GPS_60F4 at $60F4; // Distance between previous and next waypoint, in metres float GPS_610C at $610C; // Course to Set (CTS), in radians char GPS_6137[5] at $6137; // Flightplan destination airport char GPS_6140[8] at $6140; // Approach name char GPS_6154[8] at $6154; // Approach transition name int GPS_6190 at $6190; // Time when waypoint wa
  10. Pete I don't want to release this for use on unregistered copies of FSUIPC to protect you. It could act as a back door to FSUIPC, especially if I implement the interpreter as a DLL (which I'm planning to do). That way, you pass the compiled code to the DLL, which drives FSUIPC and provides text feedback via callbacks. The program is in a workable state now. It doesn't have a full C implementation yet, but I'm working on it. It supports mixed integer/floating point arithmetic, printf (%s, %x, %f and %d only), if, else, while, pointers, arrays, functions (with parameters), returns, #includ
  11. I am working on a compiler/interpreter that will execute FSUIPC commands. The language is based on C with a few extensions. Here is an example int Gear_Control at 0x0BE8; // See Pete's Programming Guide GearUp(){ Gear_Control = 0; // Raise landing gear } // // The 'Key' function is a built in language extension that // allows us to respond to FS input. In this case, it executes // when it receives a Control G from FS // key(Control,'G'){ GearUp(); } So far, the language has functions, parameters, mixed integer and floating point arithmetic, program control (if then else).
  • 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.