// chunk5's instrument panel and radio routines (DrawHeading .. // ClampAltitudeOnTouchdown in src/chunk5.s): headings, compass, NAV / // COM / transponder / DME readouts, VOR bearings and needles, RPM, // altimeter pose, airspeed, slip/skid and the station geometry. #ifndef CHUNK5_PANEL_H #define CHUNK5_PANEL_H #include #include void chunk5AnimateVOR2Needle(void); // CheckForAbort: false when instrument bit 7 of $FC is clear (the // caller returns immediately). bool chunk5CheckForAbort(void); // ComputeStationDelta: X = station slot offset; deviation in $B6/$B7. // Returns the carry its final subtract leaves (UpdateADFIndicator // chains an SBC on it). bool chunk5ComputeStationDelta(uint8_t slot); // ComputeStationDistance (LA4D2): result in $BE/$BF. void chunk5ComputeStationDistance(void); void chunk5DrawAllRadios(void); void chunk5DrawCarbHeatAndLights(void); void chunk5DrawCom1(void); void chunk5DrawDME(void); void chunk5DrawHeading(void); void chunk5DrawMagCompass(void); void chunk5DrawNav1(void); void chunk5DrawNav2(void); void chunk5DrawOMI(void); void chunk5DrawRPM(void); void chunk5DrawVOR1(void); void chunk5DrawVOR1IndicatorChanges(void); void chunk5DrawVOR2(void); void chunk5DrawVOR2IndicatorChanges(void); void chunk5DrawXPNDR(void); void chunk5RequestNAV1Lookup(void); void chunk5RequestNAV2Lookup(void); // Set3DigitString: ValueForString into the 3-byte string at `str`. void chunk5Set3DigitString(uint16_t str); void chunk5UpdateAirspeedDerivedValue(void); void chunk5UpdateAltimeterPose(void); void chunk5UpdateMagneticHeading(void); void chunk5UpdateSlipSkid(void); void chunk5UpdateVOR1Bearing(void); void chunk5UpdateVOR2Bearing(void); #endif