Virtual CoPilot: Difference between revisions

Jump to navigation Jump to search
m
mNo edit summary
Line 360: Line 360:
     |author=<nowiki>Hooray</nowiki>
     |author=<nowiki>Hooray</nowiki>
     |date=<nowiki>Wed Sep 22</nowiki>
     |date=<nowiki>Wed Sep 22</nowiki>
  }}
}}
== Porting FGFSCoPilot to Nasal ==
{{FGCquote
  | I applaud you for actually considering the port now! I'd suggest to use a Nasal sub module, so that you can easily structure your code and use separate Nasal source files for the main features: [[Nasal_scripting_language#Nasal_sub_modules]]
  |{{cite web |url=http://forum.flightgear.org/viewtopic.php?p=153769#p153769
    |title=<nowiki>Re: Porting FGFSCopilot over to XML/Nasal</nowiki>
    |author=<nowiki>Hooray</nowiki>
    |date=<nowiki>Wed Mar 21</nowiki>
  }}
}}
{{FGCquote
  | I've already started work on the Nasal portion.  That was before I even read your post.  I'd say I got about an eighth done right now.  I've been having a lack of focus today....  Otherwise, I probably would have had the whole thing done in the few hours I spent on it.  It's got several functions - mainly for all the different phases of flight.  I think I'll just finish what I have for now, and test it.  At least I know what's suppose to go where in the dialog.
  |{{cite web |url=http://forum.flightgear.org/viewtopic.php?p=153775#p153775
    |title=<nowiki>Re: Porting FGFSCopilot over to XML/Nasal</nowiki>
    |author=<nowiki>redneck</nowiki>
    |date=<nowiki>Wed Mar 21</nowiki>
  }}
}}
{{FGCquote
  |The whole idea of "sub modules" is just to allow code to be loaded "on demand", so that users can decide if they want to load certain code (think local weather) or not - in part, this is also meant to allow users to allow users to improve frame rate, i.e. by reducing the pressure on the Nasal garbage collector. This is because all *.nas files in $FG_ROOT/Nasal will be loaded by default, including many timers and listeners. The added advantage of sub modules is that your code can be split up into several different files, which will be loaded in the same namespace automatically.
  |{{cite web |url=http://forum.flightgear.org/viewtopic.php?p=153803#p153803
    |title=<nowiki>Re: Porting FGFSCopilot over to XML/Nasal</nowiki>
    |author=<nowiki>Hooray</nowiki>
    |date=<nowiki>Thu Mar 22</nowiki>
  }}
}}
{{FGCquote
  |The broader functionality of the V.copilot is interesting and one seeks to contribute towards an FGFS generic design. Optimistically (or me just being naive), any teknikal and syntax problem is relatively easy to resolve; when the underlying design issues are addressed. One can always substitute alternative tekniq and code if the current one proves to be too trouble-some.
  |{{cite web |url=http://forum.flightgear.org/viewtopic.php?p=154083#p154083
    |title=<nowiki>Re: Porting FGFSCopilot over to XML/Nasal</nowiki>
    |author=<nowiki>awexome</nowiki>
    |date=<nowiki>Mon Mar 26</nowiki>
  }}
}}
{{FGCquote
  |However, there is need for a design focus, and a few related questions may help (me, for one  :)  :
* For this V.copilot, Is there a particular purpose for having some of the various info on the gui (e.g., aircraft type, fuel, cruise alt. and airport info)?  Such info could be reliably accessed from the prop. tree and route-manager; and in doing so, one minimises data entry errors and data duplication.
* How would the various nav. selections be useful for the V.copilot operation? Any relation to course-tracking, landing and radio nav. setup?
* What particular functions (e.g., FREDA checks, etc.) are being performed by this V.copilot implementation?
* Are the autopilot locks (see,in your 'nasal' code) applicable to other AC types? (I will be posting a generic FGFS autopilot helper module that is relevant, and may be useful, in this context.
On a related issue, I have made the V.copilot setup (base design from the 787-8 menu) accessible via the CDU
  |{{cite web |url=http://forum.flightgear.org/viewtopic.php?p=154083#p154083
    |title=<nowiki>Re: Porting FGFSCopilot over to XML/Nasal</nowiki>
    |author=<nowiki>awexome</nowiki>
    |date=<nowiki>Mon Mar 26</nowiki>
   }}
   }}
}}
}}

Navigation menu