     if beacon != data.LastBeacon.marker {
       // We have had a beacon change!
       newData.LastBeacon = (beacon, drawing.time.total, 0)
-      if beacon != .None {
-        PlayBeaconMarkerSound(beacon)
-      }
     } else {
       newData.LastBeacon = (beacon, data.LastBeacon.time, drawing.time.total - data.LastBeacon.time)
     }
+    // Update our 'status of marker' struct if it is set
+    if let mStat = markerIndicator {
+      markerIndicator = (mStat.marker, mStat.time, drawing.time.total-mStat.time)
+    }
     // Assign the new data structure
     data = newData
+  }
+  
+  private func HandleBeaconSounds()
+  {
+    if let indicator = markerIndicator {
+      // Is it time to stop this?
+      if data.LastBeacon.marker != indicator.marker
+        && IsInSound(indicator.marker, time: indicator.elapsed){
+        innerMarkerAudio?.stop()
+        middleMarkerAudio?.stop()
+        outerMarkerAudio?.stop()
+        markerIndicator = nil
+      }
+    } else {
+      // Should we be playing a sound then?
+      if data.LastBeacon.marker != .None {
+        PlayBeaconMarkerSound(data.LastBeacon.marker)
+        markerIndicator = (data.LastBeacon.marker, CACurrentMediaTime(), 0)
+      }
+    }
   }
   
   private func PlayBeaconMarkerSound(beacon : BeaconMarker) {

//    data.BeaconBearing = 30
//    data.RunwayHeading = data.Heading

    drawCompass()
    drawNeedleNDB()
    drawCourseNeedle()

      backgroundColor: Color4(0,0,0,1), fontName: "Menlo", fontColor: Color4(1,1,1,1))
    boldText = tools.textRenderer("Menlo-Bold")
    super.init(tools: tools, settings: set)
    
    innerMarkerAudio = try? AVAudioPlayer(contentsOfURL: NSBundle.mainBundle().URLForResource("inner", withExtension: "wav")!)
    middleMarkerAudio = try? AVAudioPlayer(contentsOfURL: NSBundle.mainBundle().URLForResource("middle", withExtension: "wav")!)
    outerMarkerAudio = try? AVAudioPlayer(contentsOfURL: NSBundle.mainBundle().URLForResource("outer", withExtension: "wav")!)
    
    let d : GLfloat = 0.8284271247461902
    // Inner loop
