From a1b54c58e054ad7adf1c4b609dc978f558dad3af Mon Sep 17 00:00:00 2001
From: James Meyer <james.meyer@operamail.com>
Date: Tue, 4 Jun 2013 14:50:23 -0500
Subject: system-templates:  Fixed firefly lirc mapping.  config files provided
 by RacerX Also add xbmc.xml for xbmc lirc mapping.

refs #908
closes #908
---
 abs/core/system-templates/PKGBUILD                 |   2 +-
 .../ATI/snapstream_firefly_all/lircrc-snapstrm.txt | 655 +++++++--------------
 .../remotes/ATI/snapstream_firefly_all/xbmc.xml    |  38 ++
 .../ATI/snapstream_firefly_ch1/lircrc-snapstrm.txt | 655 +++++++--------------
 .../remotes/ATI/snapstream_firefly_ch1/xbmc.xml    |  38 ++
 .../ATI/snapstream_firefly_ch2/lircrc-snapstrm.txt | 655 +++++++--------------
 .../remotes/ATI/snapstream_firefly_ch2/xbmc.xml    |  38 ++
 .../ATI/snapstream_firefly_ch3/lircrc-snapstrm.txt | 655 +++++++--------------
 .../remotes/ATI/snapstream_firefly_ch3/xbmc.xml    |  38 ++
 .../ATI/snapstream_firefly_ch4/lircrc-snapstrm.txt | 655 +++++++--------------
 .../remotes/ATI/snapstream_firefly_ch4/xbmc.xml    |  38 ++
 .../ATI/snapstream_firefly_ch5/lircrc-snapstrm.txt | 655 +++++++--------------
 .../remotes/ATI/snapstream_firefly_ch5/xbmc.xml    |  38 ++
 .../ATI/snapstream_firefly_ch6/lircrc-snapstrm.txt | 655 +++++++--------------
 .../remotes/ATI/snapstream_firefly_ch6/xbmc.xml    |  38 ++
 15 files changed, 1716 insertions(+), 3137 deletions(-)
 mode change 100644 => 100755 abs/core/system-templates/templates/remotes/ATI/snapstream_firefly_all/lircrc-snapstrm.txt
 create mode 100644 abs/core/system-templates/templates/remotes/ATI/snapstream_firefly_all/xbmc.xml
 create mode 100644 abs/core/system-templates/templates/remotes/ATI/snapstream_firefly_ch1/xbmc.xml
 create mode 100644 abs/core/system-templates/templates/remotes/ATI/snapstream_firefly_ch2/xbmc.xml
 create mode 100644 abs/core/system-templates/templates/remotes/ATI/snapstream_firefly_ch3/xbmc.xml
 create mode 100644 abs/core/system-templates/templates/remotes/ATI/snapstream_firefly_ch4/xbmc.xml
 create mode 100644 abs/core/system-templates/templates/remotes/ATI/snapstream_firefly_ch5/xbmc.xml
 create mode 100644 abs/core/system-templates/templates/remotes/ATI/snapstream_firefly_ch6/xbmc.xml

diff --git a/abs/core/system-templates/PKGBUILD b/abs/core/system-templates/PKGBUILD
index 9a20d2c..0c1dbeb 100755
--- a/abs/core/system-templates/PKGBUILD
+++ b/abs/core/system-templates/PKGBUILD
@@ -1,6 +1,6 @@
 pkgname=system-templates
 pkgver=2.0
-pkgrel=24
+pkgrel=25
 conflicts=( )
 pkgdesc="Templates used for system configuration"
 depends=()
diff --git a/abs/core/system-templates/templates/remotes/ATI/snapstream_firefly_all/lircrc-snapstrm.txt b/abs/core/system-templates/templates/remotes/ATI/snapstream_firefly_all/lircrc-snapstrm.txt
old mode 100644
new mode 100755
index e918011..064e72d
--- a/abs/core/system-templates/templates/remotes/ATI/snapstream_firefly_all/lircrc-snapstrm.txt
+++ b/abs/core/system-templates/templates/remotes/ATI/snapstream_firefly_all/lircrc-snapstrm.txt
@@ -5,586 +5,345 @@
 #
 # Modified from Jarod Wilson's which came from Jeff Campbell's
 # By Brad Templeton
+# Modified to use the Firefly's Unique Buttons by Ryan Schmitz
+# Updated by RacerX for Linhes 8.0
 
-
-# Here we have the jump point commands.  They only work if you have
-# defined function keys for these jump points.  For me the most
-# common command is the menu of recordings, so I put that on "videos"
-# even though that's counter-intuitive
+  # Remote Numbers 0-9
 
 begin
-prog = mythtv
-button = TV
-repeat = 3
-config = F5
+  prog = mythtv
+  button = 0
+  repeat = 3
+  config = 0
 end
 
 begin
-prog = mythtv
-button = Videos
-repeat = 3
-config = F2
+  prog = mythtv
+  button = 1
+  repeat = 3
+  config = 1
 end
 
-# Not yet defined
 begin
-prog = mythtv
-button = Music
-repeat = 3
-config = Up
+  prog = mythtv
+  button = 2
+  repeat = 3
+  config = 2
 end
 
-# Given another function for now, I don't use mythgallery
 begin
-prog = mythtv
-button = Pictures
-repeat = 3
-config = F
+  prog = mythtv
+  button = 3
+  repeat = 3
+  config = 3
 end
 
 begin
-prog = mythtv
-button = Guide
-repeat = 3
-config = F3
+  prog = mythtv
+  button = 4
+  repeat = 3
+  config = 4
 end
 
-# I stuck the "todo" list on here as Myth has no radio function
 begin
-prog = mythtv
-button = Radio
-repeat = 3
-config = F4
+  prog = mythtv
+  button = 5
+  repeat = 3
+  config = 5
 end
 
 begin
-prog = mythtv
-button = UP
-repeat = 3
-config = Up
+  prog = mythtv
+  button = 6
+  repeat = 3
+  config = 6
 end
 
 begin
-prog = mythtv
-button = DOWN
-repeat = 3
-config = Down
+  prog = mythtv
+  button = 7
+  repeat = 3
+  config = 7
 end
 
 begin
-prog = mythtv
-button = LEFT
-repeat = 3
-config = Left
+  prog = mythtv
+  button = 8
+  repeat = 3
+  config = 8
 end
 
 begin
-prog = mythtv
-button = RIGHT
-repeat = 3
-config = Right
+  prog = mythtv
+  button = 9
+  repeat = 3
+  config = 9
 end
 
-# Channel Up
+  # Escape/Back/Exit
 begin
-prog = mythtv
-button = Channel-UP
-repeat = 3
-config = Up
+  prog = mythtv
+  button = BACK
+  config = Esc
 end
 
-# Channel Down
+  # OK/Select
 begin
-prog = mythtv
-button = Channel-DOWN
-repeat = 3
-config = Down
+  prog = mythtv
+  button = ENT
+  config = pace
 end
 
-# OK/Select
+  # Volumn Up
 begin
-prog = mythtv
-button = Ok
-config = Space
+  prog = mythtv
+  button = VOL+
+  repeat = 3
+  config = F11
 end
 
-# Play
+  # Volumn Down
 begin
-prog = mythtv
-button = Play
-config = Return
+  prog = mythtv
+  button = VOL-
+  repeat = 3
+  config = F10
 end
 
-# Stop
+  # Mute
 begin
-prog = mythtv
-button = Stop
-config = I
+  prog = mythtv
+  button = MUTE
+  repeat = 3
+  config = |
 end
 
-# Escape/Exit/Back
+  # Firefly
 begin
-prog = mythtv
-button = BACK
-config = Esc
+  prog = mythtv
+  button = FIREFLY
+  repeat = 3
+  config = F8
 end
 
-# Power Off/Exit
+  # Channel Up
 begin
-prog = mythtv
-button = POWER
-config = Esc
+  prog = mythtv
+  button = CH+
+  repeat = 3
+  config = Up
 end
 
-
-# Pause
+  # Channel Down
 begin
-prog = mythtv
-button = Pause
-repeat = 3
-config = P
+  prog = mythtv
+  button = CH-
+  repeat = 3
+  config = Down
 end
 
-# Mute
+  # Info
 begin
-prog = mythtv
-button = Mute
-repeat = 3
-config = |
+  prog = mythtv
+  button = INFO
+  repeat = 3
+  config = I
 end
 
-# Fast forward (30 sec default)
+  # change tuners
 begin
-prog = mythtv
-button = Rewind
-repeat = 3
-config = PgUp
+  prog = mythtv
+  button = OPTION
+  repeat = 3
+  config = Y
 end
 
-# Rewind (10 sec default)
+  # Up
 begin
-prog = mythtv
-button = Forward
-repeat = 3
-config = PgDown
+  prog = mythtv
+  button = UP
+  repeat = 3
+  config = Up
 end
 
-# Skip forward (10 min default)
+  # Left
 begin
-prog = mythtv
-button = Next
-repeat = 3
-config = End
+  prog = mythtv
+  button = LEFT
+  repeat = 3
+  config = Left
 end
 
-# Skip backward (10 min default)
+  # Down
 begin
-prog = mythtv
-button = Previous
-repeat = 3
-config = Home
+  prog = mythtv
+  button = DOWN
+  repeat = 3
+  config = Down
 end
 
-# Record
+  # Right
 begin
-prog = mythtv
-button = Record
-repeat = 3
-config = R
+  prog = mythtv
+  button = RIGHT
+  repeat = 3
+  config = Right
 end
 
-# Delete
+  # Ok/Select
 begin
-prog = mythtv
-button = Red
-repeat = 3
-config = D
+  prog = mythtv
+  button = OK
+  config = space
 end
 
-# Decrease play speed
+  # Menu
 begin
-prog = mythtv
-button = Green
-repeat = 3
-config = J
+  prog = mythtv
+  button = MENU
+  repeat = 3
+  config = M
 end
 
-# Display EPG while in live TV,
-# View selected show while in EPG
+  # Escape/Exit/Back
 begin
-prog = mythtv
-button = Menu
-repeat = 3
-config = M
+  prog = mythtv
+  button = EXIT
+  config = Esc
 end
 
-# Scroll up
+  # Record
 begin
-prog = mythtv
-button = Volume-UP
-repeat = 3
-config = F11
+  prog = mythtv
+  button = REC
+  repeat = 3
+  config = R
 end
 
-# Scroll down
+  # Play
 begin
-prog = mythtv
-button = Volume-DOWN
-repeat = 3
-config = F10
+  prog = mythtv
+  button = PLAY
+  config = Return
 end
 
-# Bring up OSD info
+  # Stop
 begin
-prog = mythtv
-button = Go
-repeat = 3
-config = I
+  prog = mythtv
+  button = STOP
+  config = Esc
 end
 
-# Change display aspect ratio
+  # Rewind
 begin
-prog = mythtv
-button = Prev-Channel
-repeat = 3
-config = W
+  prog = mythtv
+  button = FWD
+  repeat = 3
+  config = PgDown
 end
 
-# double speed watch
+  # Fast Forward
 begin
-prog = mythtv
-button = Yellow
-repeat = 3
-config = J
+  prog = mythtv
+  button = REW
+  repeat = 3
+  config = PgUp
 end
 
-# change tuners
-#begin
-#prog = mythtv
-#button = hash
-#repeat = 3
-#config = Y
-#end
-
-# Bring up Time stretch
+  # Skip Backward
 begin
-prog = mythtv
-button = Blue
-repeat = 3
-config = Y
+  prog = mythtv
+  button = PREV
+  repeat = 3
+  config = home
 end
 
-# Numbers 0-9
-
+  # Skip Forward
 begin
-prog = mythtv
-button = 0
-repeat = 3
-config = 0
+  prog = mythtv
+  button = NEXT
+  repeat = 3
+  config = End
 end
 
+  # Pause
 begin
-prog = mythtv
-button = 1
-repeat = 3
-config = 1
+  prog = mythtv
+  button = Pause
+  repeat = 3
+  config = P
 end
 
+  # Delete
 begin
-prog = mythtv
-button = 2
-repeat = 3
-config = 2
+  prog = mythtv
+  button = A
+  repeat = 3
+  config = D
 end
 
+  # Decrease Playback Speed
 begin
-prog = mythtv
-button = 3
-repeat = 3
-config = 3
+  prog = mythtv
+  button = B
+  repeat = 3
+  config = J
 end
 
+  # Double Playback Speed
 begin
-prog = mythtv
-button = 4
-repeat = 3
-config = 4
+  prog = mythtv
+  button = C
+  repeat = 3
+  config = J
 end
 
+  # Time Stretch
 begin
-prog = mythtv
-button = 5
-repeat = 3
-config = 5
+  prog = mythtv
+  button = D
+  repeat = 3
+  config = Y
 end
 
-begin
-prog = mythtv
-button = 6
-repeat = 3
-config = 6
-end
+  ### Jump Points need to match config in mythweb keybindings
 
+  # Myth Music
 begin
-prog = mythtv
-button = 7
-repeat = 3
-config = 7
+  prog = mythtv
+  button = Music
+  repeat = 3
+  config = F4
 end
 
+  # Live TV
 begin
-prog = mythtv
-button = 8
-repeat = 3
-config = 8
+  prog = mythtv
+  button = TV
+  repeat = 3
+  config = F5
 end
 
+  # Myth Video Gallery
 begin
-prog = mythtv
-button = 9
-repeat = 3
-config = 9
+  prog = mythtv
+  button = VIDEO
+  repeat = 3
+  config = F2
 end
 
-
-### MPlayer lirc setup
-
-# Show OSD
-begin
-prog = mplayer
-button = MENU
-repeat = 3
-config = osd
-end
-
-# Pause playback
+  # Myth Image Gallery
 begin
-prog = mplayer
-button = PAUSE
-repeat = 3
-config = pause
+  prog = mythtv
+  button = PHOTOS
+  repeat = 3
+  config = F
 end
 
-# Skip ahead a minute if playing
-# If paused, resume playing
-begin
-prog = mplayer
-button = PLAY
-repeat = 3
-config = seek +1
-end
-
-# Stop playback and exit
-begin
-prog = mplayer
-button = Back
-repeat = 3
-config = quit
-end
-
-# Mute
-begin
-prog = mplayer
-button = MUTE
-repeat = 3
-config = mute
-end
-
-# Seek back 10 seconds
-begin
-prog = mplayer
-button = LEFT
-repeat = 3
-config = seek -7
-end
-
-# Seek forward 30 seconds
-begin
-prog = mplayer
-button = RIGHT
-repeat = 3
-config = seek +30
-end
 
-# Quit
 begin
-prog = mplayer
-button = EXIT
-repeat = 3
-config = quit
+  prog = irexec
+  button = HELP
+  config = env DISPLAY=:0 xdotool key alt+h
+  flags = quit
 end
-
-# Seek forward 10 minutes
-begin
-prog = mplayer
-button = SKIP
-repeat = 3
-config = seek +600
-end
-
-# Seek backward 10 minutes
-begin
-prog = mplayer
-button = REPLAY
-repeat = 3
-config = seek -600
-end
-
-# Toggle full-screen
-begin
-prog = mplayer
-button = FULL
-repeat = 3
-config = vo_fullscreen
-end
-
-### Xine lirc setup
-
-begin
-prog = xine
-button = PLAY
-repeat = 3
-config = Play
-end
-
-begin
-prog = xine
-button = STOP
-repeat = 3
-config = Stop
-end
-
-begin
-prog = xine
-button = OFF
-repeat = 3
-config = Quit
-end
-
-begin
-prog = xine
-button = PAUSE
-repeat = 3
-config = Pause
-end
-
-begin
-prog = xine
-button = CH+
-repeat = 3
-config = EventUp
-end
-
-begin
-prog = xine
-button = CH-
-repeat = 3
-config = EventDown
-end
-
-begin
-prog = xine
-button = VOL-
-repeat = 3
-config = EventLeft
-end
-
-begin
-prog = xine
-button = VOL+
-repeat = 3
-config = EventRight
-end
-
-begin
-prog = xine
-button = OK
-repeat = 3
-config = EventSelect
-end
-
-begin
-prog = xine
-button = BACK
-repeat = 3
-config = Menu
-end
-
-begin
-prog = xine
-button = FFW
-repeat = 3
-#config = SpeedFaster
-config = SeekRelative+60
-end
-
-begin
-prog = xine
-button = REW
-repeat = 3
-#config = SpeedSlower
-config = SeekRelative-60
-end
-
-begin
-prog = xine
-button = FULL
-repeat = 3
-config = Volume+
-end
-
-begin
-prog = xine
-button = BLANK
-repeat = 3
-config = Volume-
-end
-
-begin
-prog = xine
-button = MUTE
-repeat = 3
-config = Mute
-end
-
-begin
-prog = xine
-button = MENU
-repeat = 3
-config = RootMenu
-end
-
-begin
-prog = xine
-button = SKIP
-repeat = 3
-config = EventNext
-end
-
-begin
-prog = xine
-button = REPLAY
-repeat = 3
-config = EventPrior
-end
-
-begin
-prog = xine
-button = GO
-repeat = 3
-config = OSDStreamInfos
-end
-
-begin
-prog = xine
-button = RED
-repeat = 3
-config = Quit
-end
-
-begin
-prog = xine
-button = RED
-repeat = 3
-config = Quit
-end
\ No newline at end of file
diff --git a/abs/core/system-templates/templates/remotes/ATI/snapstream_firefly_all/xbmc.xml b/abs/core/system-templates/templates/remotes/ATI/snapstream_firefly_all/xbmc.xml
new file mode 100644
index 0000000..64dc7df
--- /dev/null
+++ b/abs/core/system-templates/templates/remotes/ATI/snapstream_firefly_all/xbmc.xml
@@ -0,0 +1,38 @@
+<lircmap>
+<remote device="Snapstream_Firefly">
+ <pause>PAUSE</pause>
+ <stop>STOP</stop>
+ <forward>FWD</forward>
+ <reverse>REW</reverse>
+ <left>LEFT</left>
+ <right>RIGHT</right>
+ <up>UP</up>
+ <down>DOWN</down>
+ <select>OK</select>
+ <pageplus>CH+</pageplus>
+ <pageminus>CH-</pageminus>
+ <back>EXIT</back>
+ <menu>MENU</menu>
+ <title>PLAY</title>
+ <info>INFO</info>
+ <skipplus>NEXT</skipplus>
+ <skipminus>PREV</skipminus>
+ <display>MAXI</display>
+ <start>FIREFLY</start>
+ <record>REC</record>
+ <volumeplus>VOL+</volumeplus>
+ <volumeminus>VOL-</volumeminus>
+ <mute>MUTE</mute>
+ <power>CLOSE</power>
+ <one>1</one>
+ <two>2</two>
+ <three>3</three>
+ <four>4</four>
+ <five>5</five>
+ <six>6</six>
+ <seven>7</seven>
+ <eight>8</eight>
+ <nine>9</nine>
+ <zero>0</zero>
+</remote>
+</lircmap>
diff --git a/abs/core/system-templates/templates/remotes/ATI/snapstream_firefly_ch1/lircrc-snapstrm.txt b/abs/core/system-templates/templates/remotes/ATI/snapstream_firefly_ch1/lircrc-snapstrm.txt
index e918011..064e72d 100644
--- a/abs/core/system-templates/templates/remotes/ATI/snapstream_firefly_ch1/lircrc-snapstrm.txt
+++ b/abs/core/system-templates/templates/remotes/ATI/snapstream_firefly_ch1/lircrc-snapstrm.txt
@@ -5,586 +5,345 @@
 #
 # Modified from Jarod Wilson's which came from Jeff Campbell's
 # By Brad Templeton
+# Modified to use the Firefly's Unique Buttons by Ryan Schmitz
+# Updated by RacerX for Linhes 8.0
 
-
-# Here we have the jump point commands.  They only work if you have
-# defined function keys for these jump points.  For me the most
-# common command is the menu of recordings, so I put that on "videos"
-# even though that's counter-intuitive
+  # Remote Numbers 0-9
 
 begin
-prog = mythtv
-button = TV
-repeat = 3
-config = F5
+  prog = mythtv
+  button = 0
+  repeat = 3
+  config = 0
 end
 
 begin
-prog = mythtv
-button = Videos
-repeat = 3
-config = F2
+  prog = mythtv
+  button = 1
+  repeat = 3
+  config = 1
 end
 
-# Not yet defined
 begin
-prog = mythtv
-button = Music
-repeat = 3
-config = Up
+  prog = mythtv
+  button = 2
+  repeat = 3
+  config = 2
 end
 
-# Given another function for now, I don't use mythgallery
 begin
-prog = mythtv
-button = Pictures
-repeat = 3
-config = F
+  prog = mythtv
+  button = 3
+  repeat = 3
+  config = 3
 end
 
 begin
-prog = mythtv
-button = Guide
-repeat = 3
-config = F3
+  prog = mythtv
+  button = 4
+  repeat = 3
+  config = 4
 end
 
-# I stuck the "todo" list on here as Myth has no radio function
 begin
-prog = mythtv
-button = Radio
-repeat = 3
-config = F4
+  prog = mythtv
+  button = 5
+  repeat = 3
+  config = 5
 end
 
 begin
-prog = mythtv
-button = UP
-repeat = 3
-config = Up
+  prog = mythtv
+  button = 6
+  repeat = 3
+  config = 6
 end
 
 begin
-prog = mythtv
-button = DOWN
-repeat = 3
-config = Down
+  prog = mythtv
+  button = 7
+  repeat = 3
+  config = 7
 end
 
 begin
-prog = mythtv
-button = LEFT
-repeat = 3
-config = Left
+  prog = mythtv
+  button = 8
+  repeat = 3
+  config = 8
 end
 
 begin
-prog = mythtv
-button = RIGHT
-repeat = 3
-config = Right
+  prog = mythtv
+  button = 9
+  repeat = 3
+  config = 9
 end
 
-# Channel Up
+  # Escape/Back/Exit
 begin
-prog = mythtv
-button = Channel-UP
-repeat = 3
-config = Up
+  prog = mythtv
+  button = BACK
+  config = Esc
 end
 
-# Channel Down
+  # OK/Select
 begin
-prog = mythtv
-button = Channel-DOWN
-repeat = 3
-config = Down
+  prog = mythtv
+  button = ENT
+  config = pace
 end
 
-# OK/Select
+  # Volumn Up
 begin
-prog = mythtv
-button = Ok
-config = Space
+  prog = mythtv
+  button = VOL+
+  repeat = 3
+  config = F11
 end
 
-# Play
+  # Volumn Down
 begin
-prog = mythtv
-button = Play
-config = Return
+  prog = mythtv
+  button = VOL-
+  repeat = 3
+  config = F10
 end
 
-# Stop
+  # Mute
 begin
-prog = mythtv
-button = Stop
-config = I
+  prog = mythtv
+  button = MUTE
+  repeat = 3
+  config = |
 end
 
-# Escape/Exit/Back
+  # Firefly
 begin
-prog = mythtv
-button = BACK
-config = Esc
+  prog = mythtv
+  button = FIREFLY
+  repeat = 3
+  config = F8
 end
 
-# Power Off/Exit
+  # Channel Up
 begin
-prog = mythtv
-button = POWER
-config = Esc
+  prog = mythtv
+  button = CH+
+  repeat = 3
+  config = Up
 end
 
-
-# Pause
+  # Channel Down
 begin
-prog = mythtv
-button = Pause
-repeat = 3
-config = P
+  prog = mythtv
+  button = CH-
+  repeat = 3
+  config = Down
 end
 
-# Mute
+  # Info
 begin
-prog = mythtv
-button = Mute
-repeat = 3
-config = |
+  prog = mythtv
+  button = INFO
+  repeat = 3
+  config = I
 end
 
-# Fast forward (30 sec default)
+  # change tuners
 begin
-prog = mythtv
-button = Rewind
-repeat = 3
-config = PgUp
+  prog = mythtv
+  button = OPTION
+  repeat = 3
+  config = Y
 end
 
-# Rewind (10 sec default)
+  # Up
 begin
-prog = mythtv
-button = Forward
-repeat = 3
-config = PgDown
+  prog = mythtv
+  button = UP
+  repeat = 3
+  config = Up
 end
 
-# Skip forward (10 min default)
+  # Left
 begin
-prog = mythtv
-button = Next
-repeat = 3
-config = End
+  prog = mythtv
+  button = LEFT
+  repeat = 3
+  config = Left
 end
 
-# Skip backward (10 min default)
+  # Down
 begin
-prog = mythtv
-button = Previous
-repeat = 3
-config = Home
+  prog = mythtv
+  button = DOWN
+  repeat = 3
+  config = Down
 end
 
-# Record
+  # Right
 begin
-prog = mythtv
-button = Record
-repeat = 3
-config = R
+  prog = mythtv
+  button = RIGHT
+  repeat = 3
+  config = Right
 end
 
-# Delete
+  # Ok/Select
 begin
-prog = mythtv
-button = Red
-repeat = 3
-config = D
+  prog = mythtv
+  button = OK
+  config = space
 end
 
-# Decrease play speed
+  # Menu
 begin
-prog = mythtv
-button = Green
-repeat = 3
-config = J
+  prog = mythtv
+  button = MENU
+  repeat = 3
+  config = M
 end
 
-# Display EPG while in live TV,
-# View selected show while in EPG
+  # Escape/Exit/Back
 begin
-prog = mythtv
-button = Menu
-repeat = 3
-config = M
+  prog = mythtv
+  button = EXIT
+  config = Esc
 end
 
-# Scroll up
+  # Record
 begin
-prog = mythtv
-button = Volume-UP
-repeat = 3
-config = F11
+  prog = mythtv
+  button = REC
+  repeat = 3
+  config = R
 end
 
-# Scroll down
+  # Play
 begin
-prog = mythtv
-button = Volume-DOWN
-repeat = 3
-config = F10
+  prog = mythtv
+  button = PLAY
+  config = Return
 end
 
-# Bring up OSD info
+  # Stop
 begin
-prog = mythtv
-button = Go
-repeat = 3
-config = I
+  prog = mythtv
+  button = STOP
+  config = Esc
 end
 
-# Change display aspect ratio
+  # Rewind
 begin
-prog = mythtv
-button = Prev-Channel
-repeat = 3
-config = W
+  prog = mythtv
+  button = FWD
+  repeat = 3
+  config = PgDown
 end
 
-# double speed watch
+  # Fast Forward
 begin
-prog = mythtv
-button = Yellow
-repeat = 3
-config = J
+  prog = mythtv
+  button = REW
+  repeat = 3
+  config = PgUp
 end
 
-# change tuners
-#begin
-#prog = mythtv
-#button = hash
-#repeat = 3
-#config = Y
-#end
-
-# Bring up Time stretch
+  # Skip Backward
 begin
-prog = mythtv
-button = Blue
-repeat = 3
-config = Y
+  prog = mythtv
+  button = PREV
+  repeat = 3
+  config = home
 end
 
-# Numbers 0-9
-
+  # Skip Forward
 begin
-prog = mythtv
-button = 0
-repeat = 3
-config = 0
+  prog = mythtv
+  button = NEXT
+  repeat = 3
+  config = End
 end
 
+  # Pause
 begin
-prog = mythtv
-button = 1
-repeat = 3
-config = 1
+  prog = mythtv
+  button = Pause
+  repeat = 3
+  config = P
 end
 
+  # Delete
 begin
-prog = mythtv
-button = 2
-repeat = 3
-config = 2
+  prog = mythtv
+  button = A
+  repeat = 3
+  config = D
 end
 
+  # Decrease Playback Speed
 begin
-prog = mythtv
-button = 3
-repeat = 3
-config = 3
+  prog = mythtv
+  button = B
+  repeat = 3
+  config = J
 end
 
+  # Double Playback Speed
 begin
-prog = mythtv
-button = 4
-repeat = 3
-config = 4
+  prog = mythtv
+  button = C
+  repeat = 3
+  config = J
 end
 
+  # Time Stretch
 begin
-prog = mythtv
-button = 5
-repeat = 3
-config = 5
+  prog = mythtv
+  button = D
+  repeat = 3
+  config = Y
 end
 
-begin
-prog = mythtv
-button = 6
-repeat = 3
-config = 6
-end
+  ### Jump Points need to match config in mythweb keybindings
 
+  # Myth Music
 begin
-prog = mythtv
-button = 7
-repeat = 3
-config = 7
+  prog = mythtv
+  button = Music
+  repeat = 3
+  config = F4
 end
 
+  # Live TV
 begin
-prog = mythtv
-button = 8
-repeat = 3
-config = 8
+  prog = mythtv
+  button = TV
+  repeat = 3
+  config = F5
 end
 
+  # Myth Video Gallery
 begin
-prog = mythtv
-button = 9
-repeat = 3
-config = 9
+  prog = mythtv
+  button = VIDEO
+  repeat = 3
+  config = F2
 end
 
-
-### MPlayer lirc setup
-
-# Show OSD
-begin
-prog = mplayer
-button = MENU
-repeat = 3
-config = osd
-end
-
-# Pause playback
+  # Myth Image Gallery
 begin
-prog = mplayer
-button = PAUSE
-repeat = 3
-config = pause
+  prog = mythtv
+  button = PHOTOS
+  repeat = 3
+  config = F
 end
 
-# Skip ahead a minute if playing
-# If paused, resume playing
-begin
-prog = mplayer
-button = PLAY
-repeat = 3
-config = seek +1
-end
-
-# Stop playback and exit
-begin
-prog = mplayer
-button = Back
-repeat = 3
-config = quit
-end
-
-# Mute
-begin
-prog = mplayer
-button = MUTE
-repeat = 3
-config = mute
-end
-
-# Seek back 10 seconds
-begin
-prog = mplayer
-button = LEFT
-repeat = 3
-config = seek -7
-end
-
-# Seek forward 30 seconds
-begin
-prog = mplayer
-button = RIGHT
-repeat = 3
-config = seek +30
-end
 
-# Quit
 begin
-prog = mplayer
-button = EXIT
-repeat = 3
-config = quit
+  prog = irexec
+  button = HELP
+  config = env DISPLAY=:0 xdotool key alt+h
+  flags = quit
 end
-
-# Seek forward 10 minutes
-begin
-prog = mplayer
-button = SKIP
-repeat = 3
-config = seek +600
-end
-
-# Seek backward 10 minutes
-begin
-prog = mplayer
-button = REPLAY
-repeat = 3
-config = seek -600
-end
-
-# Toggle full-screen
-begin
-prog = mplayer
-button = FULL
-repeat = 3
-config = vo_fullscreen
-end
-
-### Xine lirc setup
-
-begin
-prog = xine
-button = PLAY
-repeat = 3
-config = Play
-end
-
-begin
-prog = xine
-button = STOP
-repeat = 3
-config = Stop
-end
-
-begin
-prog = xine
-button = OFF
-repeat = 3
-config = Quit
-end
-
-begin
-prog = xine
-button = PAUSE
-repeat = 3
-config = Pause
-end
-
-begin
-prog = xine
-button = CH+
-repeat = 3
-config = EventUp
-end
-
-begin
-prog = xine
-button = CH-
-repeat = 3
-config = EventDown
-end
-
-begin
-prog = xine
-button = VOL-
-repeat = 3
-config = EventLeft
-end
-
-begin
-prog = xine
-button = VOL+
-repeat = 3
-config = EventRight
-end
-
-begin
-prog = xine
-button = OK
-repeat = 3
-config = EventSelect
-end
-
-begin
-prog = xine
-button = BACK
-repeat = 3
-config = Menu
-end
-
-begin
-prog = xine
-button = FFW
-repeat = 3
-#config = SpeedFaster
-config = SeekRelative+60
-end
-
-begin
-prog = xine
-button = REW
-repeat = 3
-#config = SpeedSlower
-config = SeekRelative-60
-end
-
-begin
-prog = xine
-button = FULL
-repeat = 3
-config = Volume+
-end
-
-begin
-prog = xine
-button = BLANK
-repeat = 3
-config = Volume-
-end
-
-begin
-prog = xine
-button = MUTE
-repeat = 3
-config = Mute
-end
-
-begin
-prog = xine
-button = MENU
-repeat = 3
-config = RootMenu
-end
-
-begin
-prog = xine
-button = SKIP
-repeat = 3
-config = EventNext
-end
-
-begin
-prog = xine
-button = REPLAY
-repeat = 3
-config = EventPrior
-end
-
-begin
-prog = xine
-button = GO
-repeat = 3
-config = OSDStreamInfos
-end
-
-begin
-prog = xine
-button = RED
-repeat = 3
-config = Quit
-end
-
-begin
-prog = xine
-button = RED
-repeat = 3
-config = Quit
-end
\ No newline at end of file
diff --git a/abs/core/system-templates/templates/remotes/ATI/snapstream_firefly_ch1/xbmc.xml b/abs/core/system-templates/templates/remotes/ATI/snapstream_firefly_ch1/xbmc.xml
new file mode 100644
index 0000000..64dc7df
--- /dev/null
+++ b/abs/core/system-templates/templates/remotes/ATI/snapstream_firefly_ch1/xbmc.xml
@@ -0,0 +1,38 @@
+<lircmap>
+<remote device="Snapstream_Firefly">
+ <pause>PAUSE</pause>
+ <stop>STOP</stop>
+ <forward>FWD</forward>
+ <reverse>REW</reverse>
+ <left>LEFT</left>
+ <right>RIGHT</right>
+ <up>UP</up>
+ <down>DOWN</down>
+ <select>OK</select>
+ <pageplus>CH+</pageplus>
+ <pageminus>CH-</pageminus>
+ <back>EXIT</back>
+ <menu>MENU</menu>
+ <title>PLAY</title>
+ <info>INFO</info>
+ <skipplus>NEXT</skipplus>
+ <skipminus>PREV</skipminus>
+ <display>MAXI</display>
+ <start>FIREFLY</start>
+ <record>REC</record>
+ <volumeplus>VOL+</volumeplus>
+ <volumeminus>VOL-</volumeminus>
+ <mute>MUTE</mute>
+ <power>CLOSE</power>
+ <one>1</one>
+ <two>2</two>
+ <three>3</three>
+ <four>4</four>
+ <five>5</five>
+ <six>6</six>
+ <seven>7</seven>
+ <eight>8</eight>
+ <nine>9</nine>
+ <zero>0</zero>
+</remote>
+</lircmap>
diff --git a/abs/core/system-templates/templates/remotes/ATI/snapstream_firefly_ch2/lircrc-snapstrm.txt b/abs/core/system-templates/templates/remotes/ATI/snapstream_firefly_ch2/lircrc-snapstrm.txt
index e918011..064e72d 100644
--- a/abs/core/system-templates/templates/remotes/ATI/snapstream_firefly_ch2/lircrc-snapstrm.txt
+++ b/abs/core/system-templates/templates/remotes/ATI/snapstream_firefly_ch2/lircrc-snapstrm.txt
@@ -5,586 +5,345 @@
 #
 # Modified from Jarod Wilson's which came from Jeff Campbell's
 # By Brad Templeton
+# Modified to use the Firefly's Unique Buttons by Ryan Schmitz
+# Updated by RacerX for Linhes 8.0
 
-
-# Here we have the jump point commands.  They only work if you have
-# defined function keys for these jump points.  For me the most
-# common command is the menu of recordings, so I put that on "videos"
-# even though that's counter-intuitive
+  # Remote Numbers 0-9
 
 begin
-prog = mythtv
-button = TV
-repeat = 3
-config = F5
+  prog = mythtv
+  button = 0
+  repeat = 3
+  config = 0
 end
 
 begin
-prog = mythtv
-button = Videos
-repeat = 3
-config = F2
+  prog = mythtv
+  button = 1
+  repeat = 3
+  config = 1
 end
 
-# Not yet defined
 begin
-prog = mythtv
-button = Music
-repeat = 3
-config = Up
+  prog = mythtv
+  button = 2
+  repeat = 3
+  config = 2
 end
 
-# Given another function for now, I don't use mythgallery
 begin
-prog = mythtv
-button = Pictures
-repeat = 3
-config = F
+  prog = mythtv
+  button = 3
+  repeat = 3
+  config = 3
 end
 
 begin
-prog = mythtv
-button = Guide
-repeat = 3
-config = F3
+  prog = mythtv
+  button = 4
+  repeat = 3
+  config = 4
 end
 
-# I stuck the "todo" list on here as Myth has no radio function
 begin
-prog = mythtv
-button = Radio
-repeat = 3
-config = F4
+  prog = mythtv
+  button = 5
+  repeat = 3
+  config = 5
 end
 
 begin
-prog = mythtv
-button = UP
-repeat = 3
-config = Up
+  prog = mythtv
+  button = 6
+  repeat = 3
+  config = 6
 end
 
 begin
-prog = mythtv
-button = DOWN
-repeat = 3
-config = Down
+  prog = mythtv
+  button = 7
+  repeat = 3
+  config = 7
 end
 
 begin
-prog = mythtv
-button = LEFT
-repeat = 3
-config = Left
+  prog = mythtv
+  button = 8
+  repeat = 3
+  config = 8
 end
 
 begin
-prog = mythtv
-button = RIGHT
-repeat = 3
-config = Right
+  prog = mythtv
+  button = 9
+  repeat = 3
+  config = 9
 end
 
-# Channel Up
+  # Escape/Back/Exit
 begin
-prog = mythtv
-button = Channel-UP
-repeat = 3
-config = Up
+  prog = mythtv
+  button = BACK
+  config = Esc
 end
 
-# Channel Down
+  # OK/Select
 begin
-prog = mythtv
-button = Channel-DOWN
-repeat = 3
-config = Down
+  prog = mythtv
+  button = ENT
+  config = pace
 end
 
-# OK/Select
+  # Volumn Up
 begin
-prog = mythtv
-button = Ok
-config = Space
+  prog = mythtv
+  button = VOL+
+  repeat = 3
+  config = F11
 end
 
-# Play
+  # Volumn Down
 begin
-prog = mythtv
-button = Play
-config = Return
+  prog = mythtv
+  button = VOL-
+  repeat = 3
+  config = F10
 end
 
-# Stop
+  # Mute
 begin
-prog = mythtv
-button = Stop
-config = I
+  prog = mythtv
+  button = MUTE
+  repeat = 3
+  config = |
 end
 
-# Escape/Exit/Back
+  # Firefly
 begin
-prog = mythtv
-button = BACK
-config = Esc
+  prog = mythtv
+  button = FIREFLY
+  repeat = 3
+  config = F8
 end
 
-# Power Off/Exit
+  # Channel Up
 begin
-prog = mythtv
-button = POWER
-config = Esc
+  prog = mythtv
+  button = CH+
+  repeat = 3
+  config = Up
 end
 
-
-# Pause
+  # Channel Down
 begin
-prog = mythtv
-button = Pause
-repeat = 3
-config = P
+  prog = mythtv
+  button = CH-
+  repeat = 3
+  config = Down
 end
 
-# Mute
+  # Info
 begin
-prog = mythtv
-button = Mute
-repeat = 3
-config = |
+  prog = mythtv
+  button = INFO
+  repeat = 3
+  config = I
 end
 
-# Fast forward (30 sec default)
+  # change tuners
 begin
-prog = mythtv
-button = Rewind
-repeat = 3
-config = PgUp
+  prog = mythtv
+  button = OPTION
+  repeat = 3
+  config = Y
 end
 
-# Rewind (10 sec default)
+  # Up
 begin
-prog = mythtv
-button = Forward
-repeat = 3
-config = PgDown
+  prog = mythtv
+  button = UP
+  repeat = 3
+  config = Up
 end
 
-# Skip forward (10 min default)
+  # Left
 begin
-prog = mythtv
-button = Next
-repeat = 3
-config = End
+  prog = mythtv
+  button = LEFT
+  repeat = 3
+  config = Left
 end
 
-# Skip backward (10 min default)
+  # Down
 begin
-prog = mythtv
-button = Previous
-repeat = 3
-config = Home
+  prog = mythtv
+  button = DOWN
+  repeat = 3
+  config = Down
 end
 
-# Record
+  # Right
 begin
-prog = mythtv
-button = Record
-repeat = 3
-config = R
+  prog = mythtv
+  button = RIGHT
+  repeat = 3
+  config = Right
 end
 
-# Delete
+  # Ok/Select
 begin
-prog = mythtv
-button = Red
-repeat = 3
-config = D
+  prog = mythtv
+  button = OK
+  config = space
 end
 
-# Decrease play speed
+  # Menu
 begin
-prog = mythtv
-button = Green
-repeat = 3
-config = J
+  prog = mythtv
+  button = MENU
+  repeat = 3
+  config = M
 end
 
-# Display EPG while in live TV,
-# View selected show while in EPG
+  # Escape/Exit/Back
 begin
-prog = mythtv
-button = Menu
-repeat = 3
-config = M
+  prog = mythtv
+  button = EXIT
+  config = Esc
 end
 
-# Scroll up
+  # Record
 begin
-prog = mythtv
-button = Volume-UP
-repeat = 3
-config = F11
+  prog = mythtv
+  button = REC
+  repeat = 3
+  config = R
 end
 
-# Scroll down
+  # Play
 begin
-prog = mythtv
-button = Volume-DOWN
-repeat = 3
-config = F10
+  prog = mythtv
+  button = PLAY
+  config = Return
 end
 
-# Bring up OSD info
+  # Stop
 begin
-prog = mythtv
-button = Go
-repeat = 3
-config = I
+  prog = mythtv
+  button = STOP
+  config = Esc
 end
 
-# Change display aspect ratio
+  # Rewind
 begin
-prog = mythtv
-button = Prev-Channel
-repeat = 3
-config = W
+  prog = mythtv
+  button = FWD
+  repeat = 3
+  config = PgDown
 end
 
-# double speed watch
+  # Fast Forward
 begin
-prog = mythtv
-button = Yellow
-repeat = 3
-config = J
+  prog = mythtv
+  button = REW
+  repeat = 3
+  config = PgUp
 end
 
-# change tuners
-#begin
-#prog = mythtv
-#button = hash
-#repeat = 3
-#config = Y
-#end
-
-# Bring up Time stretch
+  # Skip Backward
 begin
-prog = mythtv
-button = Blue
-repeat = 3
-config = Y
+  prog = mythtv
+  button = PREV
+  repeat = 3
+  config = home
 end
 
-# Numbers 0-9
-
+  # Skip Forward
 begin
-prog = mythtv
-button = 0
-repeat = 3
-config = 0
+  prog = mythtv
+  button = NEXT
+  repeat = 3
+  config = End
 end
 
+  # Pause
 begin
-prog = mythtv
-button = 1
-repeat = 3
-config = 1
+  prog = mythtv
+  button = Pause
+  repeat = 3
+  config = P
 end
 
+  # Delete
 begin
-prog = mythtv
-button = 2
-repeat = 3
-config = 2
+  prog = mythtv
+  button = A
+  repeat = 3
+  config = D
 end
 
+  # Decrease Playback Speed
 begin
-prog = mythtv
-button = 3
-repeat = 3
-config = 3
+  prog = mythtv
+  button = B
+  repeat = 3
+  config = J
 end
 
+  # Double Playback Speed
 begin
-prog = mythtv
-button = 4
-repeat = 3
-config = 4
+  prog = mythtv
+  button = C
+  repeat = 3
+  config = J
 end
 
+  # Time Stretch
 begin
-prog = mythtv
-button = 5
-repeat = 3
-config = 5
+  prog = mythtv
+  button = D
+  repeat = 3
+  config = Y
 end
 
-begin
-prog = mythtv
-button = 6
-repeat = 3
-config = 6
-end
+  ### Jump Points need to match config in mythweb keybindings
 
+  # Myth Music
 begin
-prog = mythtv
-button = 7
-repeat = 3
-config = 7
+  prog = mythtv
+  button = Music
+  repeat = 3
+  config = F4
 end
 
+  # Live TV
 begin
-prog = mythtv
-button = 8
-repeat = 3
-config = 8
+  prog = mythtv
+  button = TV
+  repeat = 3
+  config = F5
 end
 
+  # Myth Video Gallery
 begin
-prog = mythtv
-button = 9
-repeat = 3
-config = 9
+  prog = mythtv
+  button = VIDEO
+  repeat = 3
+  config = F2
 end
 
-
-### MPlayer lirc setup
-
-# Show OSD
-begin
-prog = mplayer
-button = MENU
-repeat = 3
-config = osd
-end
-
-# Pause playback
+  # Myth Image Gallery
 begin
-prog = mplayer
-button = PAUSE
-repeat = 3
-config = pause
+  prog = mythtv
+  button = PHOTOS
+  repeat = 3
+  config = F
 end
 
-# Skip ahead a minute if playing
-# If paused, resume playing
-begin
-prog = mplayer
-button = PLAY
-repeat = 3
-config = seek +1
-end
-
-# Stop playback and exit
-begin
-prog = mplayer
-button = Back
-repeat = 3
-config = quit
-end
-
-# Mute
-begin
-prog = mplayer
-button = MUTE
-repeat = 3
-config = mute
-end
-
-# Seek back 10 seconds
-begin
-prog = mplayer
-button = LEFT
-repeat = 3
-config = seek -7
-end
-
-# Seek forward 30 seconds
-begin
-prog = mplayer
-button = RIGHT
-repeat = 3
-config = seek +30
-end
 
-# Quit
 begin
-prog = mplayer
-button = EXIT
-repeat = 3
-config = quit
+  prog = irexec
+  button = HELP
+  config = env DISPLAY=:0 xdotool key alt+h
+  flags = quit
 end
-
-# Seek forward 10 minutes
-begin
-prog = mplayer
-button = SKIP
-repeat = 3
-config = seek +600
-end
-
-# Seek backward 10 minutes
-begin
-prog = mplayer
-button = REPLAY
-repeat = 3
-config = seek -600
-end
-
-# Toggle full-screen
-begin
-prog = mplayer
-button = FULL
-repeat = 3
-config = vo_fullscreen
-end
-
-### Xine lirc setup
-
-begin
-prog = xine
-button = PLAY
-repeat = 3
-config = Play
-end
-
-begin
-prog = xine
-button = STOP
-repeat = 3
-config = Stop
-end
-
-begin
-prog = xine
-button = OFF
-repeat = 3
-config = Quit
-end
-
-begin
-prog = xine
-button = PAUSE
-repeat = 3
-config = Pause
-end
-
-begin
-prog = xine
-button = CH+
-repeat = 3
-config = EventUp
-end
-
-begin
-prog = xine
-button = CH-
-repeat = 3
-config = EventDown
-end
-
-begin
-prog = xine
-button = VOL-
-repeat = 3
-config = EventLeft
-end
-
-begin
-prog = xine
-button = VOL+
-repeat = 3
-config = EventRight
-end
-
-begin
-prog = xine
-button = OK
-repeat = 3
-config = EventSelect
-end
-
-begin
-prog = xine
-button = BACK
-repeat = 3
-config = Menu
-end
-
-begin
-prog = xine
-button = FFW
-repeat = 3
-#config = SpeedFaster
-config = SeekRelative+60
-end
-
-begin
-prog = xine
-button = REW
-repeat = 3
-#config = SpeedSlower
-config = SeekRelative-60
-end
-
-begin
-prog = xine
-button = FULL
-repeat = 3
-config = Volume+
-end
-
-begin
-prog = xine
-button = BLANK
-repeat = 3
-config = Volume-
-end
-
-begin
-prog = xine
-button = MUTE
-repeat = 3
-config = Mute
-end
-
-begin
-prog = xine
-button = MENU
-repeat = 3
-config = RootMenu
-end
-
-begin
-prog = xine
-button = SKIP
-repeat = 3
-config = EventNext
-end
-
-begin
-prog = xine
-button = REPLAY
-repeat = 3
-config = EventPrior
-end
-
-begin
-prog = xine
-button = GO
-repeat = 3
-config = OSDStreamInfos
-end
-
-begin
-prog = xine
-button = RED
-repeat = 3
-config = Quit
-end
-
-begin
-prog = xine
-button = RED
-repeat = 3
-config = Quit
-end
\ No newline at end of file
diff --git a/abs/core/system-templates/templates/remotes/ATI/snapstream_firefly_ch2/xbmc.xml b/abs/core/system-templates/templates/remotes/ATI/snapstream_firefly_ch2/xbmc.xml
new file mode 100644
index 0000000..64dc7df
--- /dev/null
+++ b/abs/core/system-templates/templates/remotes/ATI/snapstream_firefly_ch2/xbmc.xml
@@ -0,0 +1,38 @@
+<lircmap>
+<remote device="Snapstream_Firefly">
+ <pause>PAUSE</pause>
+ <stop>STOP</stop>
+ <forward>FWD</forward>
+ <reverse>REW</reverse>
+ <left>LEFT</left>
+ <right>RIGHT</right>
+ <up>UP</up>
+ <down>DOWN</down>
+ <select>OK</select>
+ <pageplus>CH+</pageplus>
+ <pageminus>CH-</pageminus>
+ <back>EXIT</back>
+ <menu>MENU</menu>
+ <title>PLAY</title>
+ <info>INFO</info>
+ <skipplus>NEXT</skipplus>
+ <skipminus>PREV</skipminus>
+ <display>MAXI</display>
+ <start>FIREFLY</start>
+ <record>REC</record>
+ <volumeplus>VOL+</volumeplus>
+ <volumeminus>VOL-</volumeminus>
+ <mute>MUTE</mute>
+ <power>CLOSE</power>
+ <one>1</one>
+ <two>2</two>
+ <three>3</three>
+ <four>4</four>
+ <five>5</five>
+ <six>6</six>
+ <seven>7</seven>
+ <eight>8</eight>
+ <nine>9</nine>
+ <zero>0</zero>
+</remote>
+</lircmap>
diff --git a/abs/core/system-templates/templates/remotes/ATI/snapstream_firefly_ch3/lircrc-snapstrm.txt b/abs/core/system-templates/templates/remotes/ATI/snapstream_firefly_ch3/lircrc-snapstrm.txt
index e918011..064e72d 100644
--- a/abs/core/system-templates/templates/remotes/ATI/snapstream_firefly_ch3/lircrc-snapstrm.txt
+++ b/abs/core/system-templates/templates/remotes/ATI/snapstream_firefly_ch3/lircrc-snapstrm.txt
@@ -5,586 +5,345 @@
 #
 # Modified from Jarod Wilson's which came from Jeff Campbell's
 # By Brad Templeton
+# Modified to use the Firefly's Unique Buttons by Ryan Schmitz
+# Updated by RacerX for Linhes 8.0
 
-
-# Here we have the jump point commands.  They only work if you have
-# defined function keys for these jump points.  For me the most
-# common command is the menu of recordings, so I put that on "videos"
-# even though that's counter-intuitive
+  # Remote Numbers 0-9
 
 begin
-prog = mythtv
-button = TV
-repeat = 3
-config = F5
+  prog = mythtv
+  button = 0
+  repeat = 3
+  config = 0
 end
 
 begin
-prog = mythtv
-button = Videos
-repeat = 3
-config = F2
+  prog = mythtv
+  button = 1
+  repeat = 3
+  config = 1
 end
 
-# Not yet defined
 begin
-prog = mythtv
-button = Music
-repeat = 3
-config = Up
+  prog = mythtv
+  button = 2
+  repeat = 3
+  config = 2
 end
 
-# Given another function for now, I don't use mythgallery
 begin
-prog = mythtv
-button = Pictures
-repeat = 3
-config = F
+  prog = mythtv
+  button = 3
+  repeat = 3
+  config = 3
 end
 
 begin
-prog = mythtv
-button = Guide
-repeat = 3
-config = F3
+  prog = mythtv
+  button = 4
+  repeat = 3
+  config = 4
 end
 
-# I stuck the "todo" list on here as Myth has no radio function
 begin
-prog = mythtv
-button = Radio
-repeat = 3
-config = F4
+  prog = mythtv
+  button = 5
+  repeat = 3
+  config = 5
 end
 
 begin
-prog = mythtv
-button = UP
-repeat = 3
-config = Up
+  prog = mythtv
+  button = 6
+  repeat = 3
+  config = 6
 end
 
 begin
-prog = mythtv
-button = DOWN
-repeat = 3
-config = Down
+  prog = mythtv
+  button = 7
+  repeat = 3
+  config = 7
 end
 
 begin
-prog = mythtv
-button = LEFT
-repeat = 3
-config = Left
+  prog = mythtv
+  button = 8
+  repeat = 3
+  config = 8
 end
 
 begin
-prog = mythtv
-button = RIGHT
-repeat = 3
-config = Right
+  prog = mythtv
+  button = 9
+  repeat = 3
+  config = 9
 end
 
-# Channel Up
+  # Escape/Back/Exit
 begin
-prog = mythtv
-button = Channel-UP
-repeat = 3
-config = Up
+  prog = mythtv
+  button = BACK
+  config = Esc
 end
 
-# Channel Down
+  # OK/Select
 begin
-prog = mythtv
-button = Channel-DOWN
-repeat = 3
-config = Down
+  prog = mythtv
+  button = ENT
+  config = pace
 end
 
-# OK/Select
+  # Volumn Up
 begin
-prog = mythtv
-button = Ok
-config = Space
+  prog = mythtv
+  button = VOL+
+  repeat = 3
+  config = F11
 end
 
-# Play
+  # Volumn Down
 begin
-prog = mythtv
-button = Play
-config = Return
+  prog = mythtv
+  button = VOL-
+  repeat = 3
+  config = F10
 end
 
-# Stop
+  # Mute
 begin
-prog = mythtv
-button = Stop
-config = I
+  prog = mythtv
+  button = MUTE
+  repeat = 3
+  config = |
 end
 
-# Escape/Exit/Back
+  # Firefly
 begin
-prog = mythtv
-button = BACK
-config = Esc
+  prog = mythtv
+  button = FIREFLY
+  repeat = 3
+  config = F8
 end
 
-# Power Off/Exit
+  # Channel Up
 begin
-prog = mythtv
-button = POWER
-config = Esc
+  prog = mythtv
+  button = CH+
+  repeat = 3
+  config = Up
 end
 
-
-# Pause
+  # Channel Down
 begin
-prog = mythtv
-button = Pause
-repeat = 3
-config = P
+  prog = mythtv
+  button = CH-
+  repeat = 3
+  config = Down
 end
 
-# Mute
+  # Info
 begin
-prog = mythtv
-button = Mute
-repeat = 3
-config = |
+  prog = mythtv
+  button = INFO
+  repeat = 3
+  config = I
 end
 
-# Fast forward (30 sec default)
+  # change tuners
 begin
-prog = mythtv
-button = Rewind
-repeat = 3
-config = PgUp
+  prog = mythtv
+  button = OPTION
+  repeat = 3
+  config = Y
 end
 
-# Rewind (10 sec default)
+  # Up
 begin
-prog = mythtv
-button = Forward
-repeat = 3
-config = PgDown
+  prog = mythtv
+  button = UP
+  repeat = 3
+  config = Up
 end
 
-# Skip forward (10 min default)
+  # Left
 begin
-prog = mythtv
-button = Next
-repeat = 3
-config = End
+  prog = mythtv
+  button = LEFT
+  repeat = 3
+  config = Left
 end
 
-# Skip backward (10 min default)
+  # Down
 begin
-prog = mythtv
-button = Previous
-repeat = 3
-config = Home
+  prog = mythtv
+  button = DOWN
+  repeat = 3
+  config = Down
 end
 
-# Record
+  # Right
 begin
-prog = mythtv
-button = Record
-repeat = 3
-config = R
+  prog = mythtv
+  button = RIGHT
+  repeat = 3
+  config = Right
 end
 
-# Delete
+  # Ok/Select
 begin
-prog = mythtv
-button = Red
-repeat = 3
-config = D
+  prog = mythtv
+  button = OK
+  config = space
 end
 
-# Decrease play speed
+  # Menu
 begin
-prog = mythtv
-button = Green
-repeat = 3
-config = J
+  prog = mythtv
+  button = MENU
+  repeat = 3
+  config = M
 end
 
-# Display EPG while in live TV,
-# View selected show while in EPG
+  # Escape/Exit/Back
 begin
-prog = mythtv
-button = Menu
-repeat = 3
-config = M
+  prog = mythtv
+  button = EXIT
+  config = Esc
 end
 
-# Scroll up
+  # Record
 begin
-prog = mythtv
-button = Volume-UP
-repeat = 3
-config = F11
+  prog = mythtv
+  button = REC
+  repeat = 3
+  config = R
 end
 
-# Scroll down
+  # Play
 begin
-prog = mythtv
-button = Volume-DOWN
-repeat = 3
-config = F10
+  prog = mythtv
+  button = PLAY
+  config = Return
 end
 
-# Bring up OSD info
+  # Stop
 begin
-prog = mythtv
-button = Go
-repeat = 3
-config = I
+  prog = mythtv
+  button = STOP
+  config = Esc
 end
 
-# Change display aspect ratio
+  # Rewind
 begin
-prog = mythtv
-button = Prev-Channel
-repeat = 3
-config = W
+  prog = mythtv
+  button = FWD
+  repeat = 3
+  config = PgDown
 end
 
-# double speed watch
+  # Fast Forward
 begin
-prog = mythtv
-button = Yellow
-repeat = 3
-config = J
+  prog = mythtv
+  button = REW
+  repeat = 3
+  config = PgUp
 end
 
-# change tuners
-#begin
-#prog = mythtv
-#button = hash
-#repeat = 3
-#config = Y
-#end
-
-# Bring up Time stretch
+  # Skip Backward
 begin
-prog = mythtv
-button = Blue
-repeat = 3
-config = Y
+  prog = mythtv
+  button = PREV
+  repeat = 3
+  config = home
 end
 
-# Numbers 0-9
-
+  # Skip Forward
 begin
-prog = mythtv
-button = 0
-repeat = 3
-config = 0
+  prog = mythtv
+  button = NEXT
+  repeat = 3
+  config = End
 end
 
+  # Pause
 begin
-prog = mythtv
-button = 1
-repeat = 3
-config = 1
+  prog = mythtv
+  button = Pause
+  repeat = 3
+  config = P
 end
 
+  # Delete
 begin
-prog = mythtv
-button = 2
-repeat = 3
-config = 2
+  prog = mythtv
+  button = A
+  repeat = 3
+  config = D
 end
 
+  # Decrease Playback Speed
 begin
-prog = mythtv
-button = 3
-repeat = 3
-config = 3
+  prog = mythtv
+  button = B
+  repeat = 3
+  config = J
 end
 
+  # Double Playback Speed
 begin
-prog = mythtv
-button = 4
-repeat = 3
-config = 4
+  prog = mythtv
+  button = C
+  repeat = 3
+  config = J
 end
 
+  # Time Stretch
 begin
-prog = mythtv
-button = 5
-repeat = 3
-config = 5
+  prog = mythtv
+  button = D
+  repeat = 3
+  config = Y
 end
 
-begin
-prog = mythtv
-button = 6
-repeat = 3
-config = 6
-end
+  ### Jump Points need to match config in mythweb keybindings
 
+  # Myth Music
 begin
-prog = mythtv
-button = 7
-repeat = 3
-config = 7
+  prog = mythtv
+  button = Music
+  repeat = 3
+  config = F4
 end
 
+  # Live TV
 begin
-prog = mythtv
-button = 8
-repeat = 3
-config = 8
+  prog = mythtv
+  button = TV
+  repeat = 3
+  config = F5
 end
 
+  # Myth Video Gallery
 begin
-prog = mythtv
-button = 9
-repeat = 3
-config = 9
+  prog = mythtv
+  button = VIDEO
+  repeat = 3
+  config = F2
 end
 
-
-### MPlayer lirc setup
-
-# Show OSD
-begin
-prog = mplayer
-button = MENU
-repeat = 3
-config = osd
-end
-
-# Pause playback
+  # Myth Image Gallery
 begin
-prog = mplayer
-button = PAUSE
-repeat = 3
-config = pause
+  prog = mythtv
+  button = PHOTOS
+  repeat = 3
+  config = F
 end
 
-# Skip ahead a minute if playing
-# If paused, resume playing
-begin
-prog = mplayer
-button = PLAY
-repeat = 3
-config = seek +1
-end
-
-# Stop playback and exit
-begin
-prog = mplayer
-button = Back
-repeat = 3
-config = quit
-end
-
-# Mute
-begin
-prog = mplayer
-button = MUTE
-repeat = 3
-config = mute
-end
-
-# Seek back 10 seconds
-begin
-prog = mplayer
-button = LEFT
-repeat = 3
-config = seek -7
-end
-
-# Seek forward 30 seconds
-begin
-prog = mplayer
-button = RIGHT
-repeat = 3
-config = seek +30
-end
 
-# Quit
 begin
-prog = mplayer
-button = EXIT
-repeat = 3
-config = quit
+  prog = irexec
+  button = HELP
+  config = env DISPLAY=:0 xdotool key alt+h
+  flags = quit
 end
-
-# Seek forward 10 minutes
-begin
-prog = mplayer
-button = SKIP
-repeat = 3
-config = seek +600
-end
-
-# Seek backward 10 minutes
-begin
-prog = mplayer
-button = REPLAY
-repeat = 3
-config = seek -600
-end
-
-# Toggle full-screen
-begin
-prog = mplayer
-button = FULL
-repeat = 3
-config = vo_fullscreen
-end
-
-### Xine lirc setup
-
-begin
-prog = xine
-button = PLAY
-repeat = 3
-config = Play
-end
-
-begin
-prog = xine
-button = STOP
-repeat = 3
-config = Stop
-end
-
-begin
-prog = xine
-button = OFF
-repeat = 3
-config = Quit
-end
-
-begin
-prog = xine
-button = PAUSE
-repeat = 3
-config = Pause
-end
-
-begin
-prog = xine
-button = CH+
-repeat = 3
-config = EventUp
-end
-
-begin
-prog = xine
-button = CH-
-repeat = 3
-config = EventDown
-end
-
-begin
-prog = xine
-button = VOL-
-repeat = 3
-config = EventLeft
-end
-
-begin
-prog = xine
-button = VOL+
-repeat = 3
-config = EventRight
-end
-
-begin
-prog = xine
-button = OK
-repeat = 3
-config = EventSelect
-end
-
-begin
-prog = xine
-button = BACK
-repeat = 3
-config = Menu
-end
-
-begin
-prog = xine
-button = FFW
-repeat = 3
-#config = SpeedFaster
-config = SeekRelative+60
-end
-
-begin
-prog = xine
-button = REW
-repeat = 3
-#config = SpeedSlower
-config = SeekRelative-60
-end
-
-begin
-prog = xine
-button = FULL
-repeat = 3
-config = Volume+
-end
-
-begin
-prog = xine
-button = BLANK
-repeat = 3
-config = Volume-
-end
-
-begin
-prog = xine
-button = MUTE
-repeat = 3
-config = Mute
-end
-
-begin
-prog = xine
-button = MENU
-repeat = 3
-config = RootMenu
-end
-
-begin
-prog = xine
-button = SKIP
-repeat = 3
-config = EventNext
-end
-
-begin
-prog = xine
-button = REPLAY
-repeat = 3
-config = EventPrior
-end
-
-begin
-prog = xine
-button = GO
-repeat = 3
-config = OSDStreamInfos
-end
-
-begin
-prog = xine
-button = RED
-repeat = 3
-config = Quit
-end
-
-begin
-prog = xine
-button = RED
-repeat = 3
-config = Quit
-end
\ No newline at end of file
diff --git a/abs/core/system-templates/templates/remotes/ATI/snapstream_firefly_ch3/xbmc.xml b/abs/core/system-templates/templates/remotes/ATI/snapstream_firefly_ch3/xbmc.xml
new file mode 100644
index 0000000..64dc7df
--- /dev/null
+++ b/abs/core/system-templates/templates/remotes/ATI/snapstream_firefly_ch3/xbmc.xml
@@ -0,0 +1,38 @@
+<lircmap>
+<remote device="Snapstream_Firefly">
+ <pause>PAUSE</pause>
+ <stop>STOP</stop>
+ <forward>FWD</forward>
+ <reverse>REW</reverse>
+ <left>LEFT</left>
+ <right>RIGHT</right>
+ <up>UP</up>
+ <down>DOWN</down>
+ <select>OK</select>
+ <pageplus>CH+</pageplus>
+ <pageminus>CH-</pageminus>
+ <back>EXIT</back>
+ <menu>MENU</menu>
+ <title>PLAY</title>
+ <info>INFO</info>
+ <skipplus>NEXT</skipplus>
+ <skipminus>PREV</skipminus>
+ <display>MAXI</display>
+ <start>FIREFLY</start>
+ <record>REC</record>
+ <volumeplus>VOL+</volumeplus>
+ <volumeminus>VOL-</volumeminus>
+ <mute>MUTE</mute>
+ <power>CLOSE</power>
+ <one>1</one>
+ <two>2</two>
+ <three>3</three>
+ <four>4</four>
+ <five>5</five>
+ <six>6</six>
+ <seven>7</seven>
+ <eight>8</eight>
+ <nine>9</nine>
+ <zero>0</zero>
+</remote>
+</lircmap>
diff --git a/abs/core/system-templates/templates/remotes/ATI/snapstream_firefly_ch4/lircrc-snapstrm.txt b/abs/core/system-templates/templates/remotes/ATI/snapstream_firefly_ch4/lircrc-snapstrm.txt
index e918011..064e72d 100644
--- a/abs/core/system-templates/templates/remotes/ATI/snapstream_firefly_ch4/lircrc-snapstrm.txt
+++ b/abs/core/system-templates/templates/remotes/ATI/snapstream_firefly_ch4/lircrc-snapstrm.txt
@@ -5,586 +5,345 @@
 #
 # Modified from Jarod Wilson's which came from Jeff Campbell's
 # By Brad Templeton
+# Modified to use the Firefly's Unique Buttons by Ryan Schmitz
+# Updated by RacerX for Linhes 8.0
 
-
-# Here we have the jump point commands.  They only work if you have
-# defined function keys for these jump points.  For me the most
-# common command is the menu of recordings, so I put that on "videos"
-# even though that's counter-intuitive
+  # Remote Numbers 0-9
 
 begin
-prog = mythtv
-button = TV
-repeat = 3
-config = F5
+  prog = mythtv
+  button = 0
+  repeat = 3
+  config = 0
 end
 
 begin
-prog = mythtv
-button = Videos
-repeat = 3
-config = F2
+  prog = mythtv
+  button = 1
+  repeat = 3
+  config = 1
 end
 
-# Not yet defined
 begin
-prog = mythtv
-button = Music
-repeat = 3
-config = Up
+  prog = mythtv
+  button = 2
+  repeat = 3
+  config = 2
 end
 
-# Given another function for now, I don't use mythgallery
 begin
-prog = mythtv
-button = Pictures
-repeat = 3
-config = F
+  prog = mythtv
+  button = 3
+  repeat = 3
+  config = 3
 end
 
 begin
-prog = mythtv
-button = Guide
-repeat = 3
-config = F3
+  prog = mythtv
+  button = 4
+  repeat = 3
+  config = 4
 end
 
-# I stuck the "todo" list on here as Myth has no radio function
 begin
-prog = mythtv
-button = Radio
-repeat = 3
-config = F4
+  prog = mythtv
+  button = 5
+  repeat = 3
+  config = 5
 end
 
 begin
-prog = mythtv
-button = UP
-repeat = 3
-config = Up
+  prog = mythtv
+  button = 6
+  repeat = 3
+  config = 6
 end
 
 begin
-prog = mythtv
-button = DOWN
-repeat = 3
-config = Down
+  prog = mythtv
+  button = 7
+  repeat = 3
+  config = 7
 end
 
 begin
-prog = mythtv
-button = LEFT
-repeat = 3
-config = Left
+  prog = mythtv
+  button = 8
+  repeat = 3
+  config = 8
 end
 
 begin
-prog = mythtv
-button = RIGHT
-repeat = 3
-config = Right
+  prog = mythtv
+  button = 9
+  repeat = 3
+  config = 9
 end
 
-# Channel Up
+  # Escape/Back/Exit
 begin
-prog = mythtv
-button = Channel-UP
-repeat = 3
-config = Up
+  prog = mythtv
+  button = BACK
+  config = Esc
 end
 
-# Channel Down
+  # OK/Select
 begin
-prog = mythtv
-button = Channel-DOWN
-repeat = 3
-config = Down
+  prog = mythtv
+  button = ENT
+  config = pace
 end
 
-# OK/Select
+  # Volumn Up
 begin
-prog = mythtv
-button = Ok
-config = Space
+  prog = mythtv
+  button = VOL+
+  repeat = 3
+  config = F11
 end
 
-# Play
+  # Volumn Down
 begin
-prog = mythtv
-button = Play
-config = Return
+  prog = mythtv
+  button = VOL-
+  repeat = 3
+  config = F10
 end
 
-# Stop
+  # Mute
 begin
-prog = mythtv
-button = Stop
-config = I
+  prog = mythtv
+  button = MUTE
+  repeat = 3
+  config = |
 end
 
-# Escape/Exit/Back
+  # Firefly
 begin
-prog = mythtv
-button = BACK
-config = Esc
+  prog = mythtv
+  button = FIREFLY
+  repeat = 3
+  config = F8
 end
 
-# Power Off/Exit
+  # Channel Up
 begin
-prog = mythtv
-button = POWER
-config = Esc
+  prog = mythtv
+  button = CH+
+  repeat = 3
+  config = Up
 end
 
-
-# Pause
+  # Channel Down
 begin
-prog = mythtv
-button = Pause
-repeat = 3
-config = P
+  prog = mythtv
+  button = CH-
+  repeat = 3
+  config = Down
 end
 
-# Mute
+  # Info
 begin
-prog = mythtv
-button = Mute
-repeat = 3
-config = |
+  prog = mythtv
+  button = INFO
+  repeat = 3
+  config = I
 end
 
-# Fast forward (30 sec default)
+  # change tuners
 begin
-prog = mythtv
-button = Rewind
-repeat = 3
-config = PgUp
+  prog = mythtv
+  button = OPTION
+  repeat = 3
+  config = Y
 end
 
-# Rewind (10 sec default)
+  # Up
 begin
-prog = mythtv
-button = Forward
-repeat = 3
-config = PgDown
+  prog = mythtv
+  button = UP
+  repeat = 3
+  config = Up
 end
 
-# Skip forward (10 min default)
+  # Left
 begin
-prog = mythtv
-button = Next
-repeat = 3
-config = End
+  prog = mythtv
+  button = LEFT
+  repeat = 3
+  config = Left
 end
 
-# Skip backward (10 min default)
+  # Down
 begin
-prog = mythtv
-button = Previous
-repeat = 3
-config = Home
+  prog = mythtv
+  button = DOWN
+  repeat = 3
+  config = Down
 end
 
-# Record
+  # Right
 begin
-prog = mythtv
-button = Record
-repeat = 3
-config = R
+  prog = mythtv
+  button = RIGHT
+  repeat = 3
+  config = Right
 end
 
-# Delete
+  # Ok/Select
 begin
-prog = mythtv
-button = Red
-repeat = 3
-config = D
+  prog = mythtv
+  button = OK
+  config = space
 end
 
-# Decrease play speed
+  # Menu
 begin
-prog = mythtv
-button = Green
-repeat = 3
-config = J
+  prog = mythtv
+  button = MENU
+  repeat = 3
+  config = M
 end
 
-# Display EPG while in live TV,
-# View selected show while in EPG
+  # Escape/Exit/Back
 begin
-prog = mythtv
-button = Menu
-repeat = 3
-config = M
+  prog = mythtv
+  button = EXIT
+  config = Esc
 end
 
-# Scroll up
+  # Record
 begin
-prog = mythtv
-button = Volume-UP
-repeat = 3
-config = F11
+  prog = mythtv
+  button = REC
+  repeat = 3
+  config = R
 end
 
-# Scroll down
+  # Play
 begin
-prog = mythtv
-button = Volume-DOWN
-repeat = 3
-config = F10
+  prog = mythtv
+  button = PLAY
+  config = Return
 end
 
-# Bring up OSD info
+  # Stop
 begin
-prog = mythtv
-button = Go
-repeat = 3
-config = I
+  prog = mythtv
+  button = STOP
+  config = Esc
 end
 
-# Change display aspect ratio
+  # Rewind
 begin
-prog = mythtv
-button = Prev-Channel
-repeat = 3
-config = W
+  prog = mythtv
+  button = FWD
+  repeat = 3
+  config = PgDown
 end
 
-# double speed watch
+  # Fast Forward
 begin
-prog = mythtv
-button = Yellow
-repeat = 3
-config = J
+  prog = mythtv
+  button = REW
+  repeat = 3
+  config = PgUp
 end
 
-# change tuners
-#begin
-#prog = mythtv
-#button = hash
-#repeat = 3
-#config = Y
-#end
-
-# Bring up Time stretch
+  # Skip Backward
 begin
-prog = mythtv
-button = Blue
-repeat = 3
-config = Y
+  prog = mythtv
+  button = PREV
+  repeat = 3
+  config = home
 end
 
-# Numbers 0-9
-
+  # Skip Forward
 begin
-prog = mythtv
-button = 0
-repeat = 3
-config = 0
+  prog = mythtv
+  button = NEXT
+  repeat = 3
+  config = End
 end
 
+  # Pause
 begin
-prog = mythtv
-button = 1
-repeat = 3
-config = 1
+  prog = mythtv
+  button = Pause
+  repeat = 3
+  config = P
 end
 
+  # Delete
 begin
-prog = mythtv
-button = 2
-repeat = 3
-config = 2
+  prog = mythtv
+  button = A
+  repeat = 3
+  config = D
 end
 
+  # Decrease Playback Speed
 begin
-prog = mythtv
-button = 3
-repeat = 3
-config = 3
+  prog = mythtv
+  button = B
+  repeat = 3
+  config = J
 end
 
+  # Double Playback Speed
 begin
-prog = mythtv
-button = 4
-repeat = 3
-config = 4
+  prog = mythtv
+  button = C
+  repeat = 3
+  config = J
 end
 
+  # Time Stretch
 begin
-prog = mythtv
-button = 5
-repeat = 3
-config = 5
+  prog = mythtv
+  button = D
+  repeat = 3
+  config = Y
 end
 
-begin
-prog = mythtv
-button = 6
-repeat = 3
-config = 6
-end
+  ### Jump Points need to match config in mythweb keybindings
 
+  # Myth Music
 begin
-prog = mythtv
-button = 7
-repeat = 3
-config = 7
+  prog = mythtv
+  button = Music
+  repeat = 3
+  config = F4
 end
 
+  # Live TV
 begin
-prog = mythtv
-button = 8
-repeat = 3
-config = 8
+  prog = mythtv
+  button = TV
+  repeat = 3
+  config = F5
 end
 
+  # Myth Video Gallery
 begin
-prog = mythtv
-button = 9
-repeat = 3
-config = 9
+  prog = mythtv
+  button = VIDEO
+  repeat = 3
+  config = F2
 end
 
-
-### MPlayer lirc setup
-
-# Show OSD
-begin
-prog = mplayer
-button = MENU
-repeat = 3
-config = osd
-end
-
-# Pause playback
+  # Myth Image Gallery
 begin
-prog = mplayer
-button = PAUSE
-repeat = 3
-config = pause
+  prog = mythtv
+  button = PHOTOS
+  repeat = 3
+  config = F
 end
 
-# Skip ahead a minute if playing
-# If paused, resume playing
-begin
-prog = mplayer
-button = PLAY
-repeat = 3
-config = seek +1
-end
-
-# Stop playback and exit
-begin
-prog = mplayer
-button = Back
-repeat = 3
-config = quit
-end
-
-# Mute
-begin
-prog = mplayer
-button = MUTE
-repeat = 3
-config = mute
-end
-
-# Seek back 10 seconds
-begin
-prog = mplayer
-button = LEFT
-repeat = 3
-config = seek -7
-end
-
-# Seek forward 30 seconds
-begin
-prog = mplayer
-button = RIGHT
-repeat = 3
-config = seek +30
-end
 
-# Quit
 begin
-prog = mplayer
-button = EXIT
-repeat = 3
-config = quit
+  prog = irexec
+  button = HELP
+  config = env DISPLAY=:0 xdotool key alt+h
+  flags = quit
 end
-
-# Seek forward 10 minutes
-begin
-prog = mplayer
-button = SKIP
-repeat = 3
-config = seek +600
-end
-
-# Seek backward 10 minutes
-begin
-prog = mplayer
-button = REPLAY
-repeat = 3
-config = seek -600
-end
-
-# Toggle full-screen
-begin
-prog = mplayer
-button = FULL
-repeat = 3
-config = vo_fullscreen
-end
-
-### Xine lirc setup
-
-begin
-prog = xine
-button = PLAY
-repeat = 3
-config = Play
-end
-
-begin
-prog = xine
-button = STOP
-repeat = 3
-config = Stop
-end
-
-begin
-prog = xine
-button = OFF
-repeat = 3
-config = Quit
-end
-
-begin
-prog = xine
-button = PAUSE
-repeat = 3
-config = Pause
-end
-
-begin
-prog = xine
-button = CH+
-repeat = 3
-config = EventUp
-end
-
-begin
-prog = xine
-button = CH-
-repeat = 3
-config = EventDown
-end
-
-begin
-prog = xine
-button = VOL-
-repeat = 3
-config = EventLeft
-end
-
-begin
-prog = xine
-button = VOL+
-repeat = 3
-config = EventRight
-end
-
-begin
-prog = xine
-button = OK
-repeat = 3
-config = EventSelect
-end
-
-begin
-prog = xine
-button = BACK
-repeat = 3
-config = Menu
-end
-
-begin
-prog = xine
-button = FFW
-repeat = 3
-#config = SpeedFaster
-config = SeekRelative+60
-end
-
-begin
-prog = xine
-button = REW
-repeat = 3
-#config = SpeedSlower
-config = SeekRelative-60
-end
-
-begin
-prog = xine
-button = FULL
-repeat = 3
-config = Volume+
-end
-
-begin
-prog = xine
-button = BLANK
-repeat = 3
-config = Volume-
-end
-
-begin
-prog = xine
-button = MUTE
-repeat = 3
-config = Mute
-end
-
-begin
-prog = xine
-button = MENU
-repeat = 3
-config = RootMenu
-end
-
-begin
-prog = xine
-button = SKIP
-repeat = 3
-config = EventNext
-end
-
-begin
-prog = xine
-button = REPLAY
-repeat = 3
-config = EventPrior
-end
-
-begin
-prog = xine
-button = GO
-repeat = 3
-config = OSDStreamInfos
-end
-
-begin
-prog = xine
-button = RED
-repeat = 3
-config = Quit
-end
-
-begin
-prog = xine
-button = RED
-repeat = 3
-config = Quit
-end
\ No newline at end of file
diff --git a/abs/core/system-templates/templates/remotes/ATI/snapstream_firefly_ch4/xbmc.xml b/abs/core/system-templates/templates/remotes/ATI/snapstream_firefly_ch4/xbmc.xml
new file mode 100644
index 0000000..64dc7df
--- /dev/null
+++ b/abs/core/system-templates/templates/remotes/ATI/snapstream_firefly_ch4/xbmc.xml
@@ -0,0 +1,38 @@
+<lircmap>
+<remote device="Snapstream_Firefly">
+ <pause>PAUSE</pause>
+ <stop>STOP</stop>
+ <forward>FWD</forward>
+ <reverse>REW</reverse>
+ <left>LEFT</left>
+ <right>RIGHT</right>
+ <up>UP</up>
+ <down>DOWN</down>
+ <select>OK</select>
+ <pageplus>CH+</pageplus>
+ <pageminus>CH-</pageminus>
+ <back>EXIT</back>
+ <menu>MENU</menu>
+ <title>PLAY</title>
+ <info>INFO</info>
+ <skipplus>NEXT</skipplus>
+ <skipminus>PREV</skipminus>
+ <display>MAXI</display>
+ <start>FIREFLY</start>
+ <record>REC</record>
+ <volumeplus>VOL+</volumeplus>
+ <volumeminus>VOL-</volumeminus>
+ <mute>MUTE</mute>
+ <power>CLOSE</power>
+ <one>1</one>
+ <two>2</two>
+ <three>3</three>
+ <four>4</four>
+ <five>5</five>
+ <six>6</six>
+ <seven>7</seven>
+ <eight>8</eight>
+ <nine>9</nine>
+ <zero>0</zero>
+</remote>
+</lircmap>
diff --git a/abs/core/system-templates/templates/remotes/ATI/snapstream_firefly_ch5/lircrc-snapstrm.txt b/abs/core/system-templates/templates/remotes/ATI/snapstream_firefly_ch5/lircrc-snapstrm.txt
index e918011..064e72d 100644
--- a/abs/core/system-templates/templates/remotes/ATI/snapstream_firefly_ch5/lircrc-snapstrm.txt
+++ b/abs/core/system-templates/templates/remotes/ATI/snapstream_firefly_ch5/lircrc-snapstrm.txt
@@ -5,586 +5,345 @@
 #
 # Modified from Jarod Wilson's which came from Jeff Campbell's
 # By Brad Templeton
+# Modified to use the Firefly's Unique Buttons by Ryan Schmitz
+# Updated by RacerX for Linhes 8.0
 
-
-# Here we have the jump point commands.  They only work if you have
-# defined function keys for these jump points.  For me the most
-# common command is the menu of recordings, so I put that on "videos"
-# even though that's counter-intuitive
+  # Remote Numbers 0-9
 
 begin
-prog = mythtv
-button = TV
-repeat = 3
-config = F5
+  prog = mythtv
+  button = 0
+  repeat = 3
+  config = 0
 end
 
 begin
-prog = mythtv
-button = Videos
-repeat = 3
-config = F2
+  prog = mythtv
+  button = 1
+  repeat = 3
+  config = 1
 end
 
-# Not yet defined
 begin
-prog = mythtv
-button = Music
-repeat = 3
-config = Up
+  prog = mythtv
+  button = 2
+  repeat = 3
+  config = 2
 end
 
-# Given another function for now, I don't use mythgallery
 begin
-prog = mythtv
-button = Pictures
-repeat = 3
-config = F
+  prog = mythtv
+  button = 3
+  repeat = 3
+  config = 3
 end
 
 begin
-prog = mythtv
-button = Guide
-repeat = 3
-config = F3
+  prog = mythtv
+  button = 4
+  repeat = 3
+  config = 4
 end
 
-# I stuck the "todo" list on here as Myth has no radio function
 begin
-prog = mythtv
-button = Radio
-repeat = 3
-config = F4
+  prog = mythtv
+  button = 5
+  repeat = 3
+  config = 5
 end
 
 begin
-prog = mythtv
-button = UP
-repeat = 3
-config = Up
+  prog = mythtv
+  button = 6
+  repeat = 3
+  config = 6
 end
 
 begin
-prog = mythtv
-button = DOWN
-repeat = 3
-config = Down
+  prog = mythtv
+  button = 7
+  repeat = 3
+  config = 7
 end
 
 begin
-prog = mythtv
-button = LEFT
-repeat = 3
-config = Left
+  prog = mythtv
+  button = 8
+  repeat = 3
+  config = 8
 end
 
 begin
-prog = mythtv
-button = RIGHT
-repeat = 3
-config = Right
+  prog = mythtv
+  button = 9
+  repeat = 3
+  config = 9
 end
 
-# Channel Up
+  # Escape/Back/Exit
 begin
-prog = mythtv
-button = Channel-UP
-repeat = 3
-config = Up
+  prog = mythtv
+  button = BACK
+  config = Esc
 end
 
-# Channel Down
+  # OK/Select
 begin
-prog = mythtv
-button = Channel-DOWN
-repeat = 3
-config = Down
+  prog = mythtv
+  button = ENT
+  config = pace
 end
 
-# OK/Select
+  # Volumn Up
 begin
-prog = mythtv
-button = Ok
-config = Space
+  prog = mythtv
+  button = VOL+
+  repeat = 3
+  config = F11
 end
 
-# Play
+  # Volumn Down
 begin
-prog = mythtv
-button = Play
-config = Return
+  prog = mythtv
+  button = VOL-
+  repeat = 3
+  config = F10
 end
 
-# Stop
+  # Mute
 begin
-prog = mythtv
-button = Stop
-config = I
+  prog = mythtv
+  button = MUTE
+  repeat = 3
+  config = |
 end
 
-# Escape/Exit/Back
+  # Firefly
 begin
-prog = mythtv
-button = BACK
-config = Esc
+  prog = mythtv
+  button = FIREFLY
+  repeat = 3
+  config = F8
 end
 
-# Power Off/Exit
+  # Channel Up
 begin
-prog = mythtv
-button = POWER
-config = Esc
+  prog = mythtv
+  button = CH+
+  repeat = 3
+  config = Up
 end
 
-
-# Pause
+  # Channel Down
 begin
-prog = mythtv
-button = Pause
-repeat = 3
-config = P
+  prog = mythtv
+  button = CH-
+  repeat = 3
+  config = Down
 end
 
-# Mute
+  # Info
 begin
-prog = mythtv
-button = Mute
-repeat = 3
-config = |
+  prog = mythtv
+  button = INFO
+  repeat = 3
+  config = I
 end
 
-# Fast forward (30 sec default)
+  # change tuners
 begin
-prog = mythtv
-button = Rewind
-repeat = 3
-config = PgUp
+  prog = mythtv
+  button = OPTION
+  repeat = 3
+  config = Y
 end
 
-# Rewind (10 sec default)
+  # Up
 begin
-prog = mythtv
-button = Forward
-repeat = 3
-config = PgDown
+  prog = mythtv
+  button = UP
+  repeat = 3
+  config = Up
 end
 
-# Skip forward (10 min default)
+  # Left
 begin
-prog = mythtv
-button = Next
-repeat = 3
-config = End
+  prog = mythtv
+  button = LEFT
+  repeat = 3
+  config = Left
 end
 
-# Skip backward (10 min default)
+  # Down
 begin
-prog = mythtv
-button = Previous
-repeat = 3
-config = Home
+  prog = mythtv
+  button = DOWN
+  repeat = 3
+  config = Down
 end
 
-# Record
+  # Right
 begin
-prog = mythtv
-button = Record
-repeat = 3
-config = R
+  prog = mythtv
+  button = RIGHT
+  repeat = 3
+  config = Right
 end
 
-# Delete
+  # Ok/Select
 begin
-prog = mythtv
-button = Red
-repeat = 3
-config = D
+  prog = mythtv
+  button = OK
+  config = space
 end
 
-# Decrease play speed
+  # Menu
 begin
-prog = mythtv
-button = Green
-repeat = 3
-config = J
+  prog = mythtv
+  button = MENU
+  repeat = 3
+  config = M
 end
 
-# Display EPG while in live TV,
-# View selected show while in EPG
+  # Escape/Exit/Back
 begin
-prog = mythtv
-button = Menu
-repeat = 3
-config = M
+  prog = mythtv
+  button = EXIT
+  config = Esc
 end
 
-# Scroll up
+  # Record
 begin
-prog = mythtv
-button = Volume-UP
-repeat = 3
-config = F11
+  prog = mythtv
+  button = REC
+  repeat = 3
+  config = R
 end
 
-# Scroll down
+  # Play
 begin
-prog = mythtv
-button = Volume-DOWN
-repeat = 3
-config = F10
+  prog = mythtv
+  button = PLAY
+  config = Return
 end
 
-# Bring up OSD info
+  # Stop
 begin
-prog = mythtv
-button = Go
-repeat = 3
-config = I
+  prog = mythtv
+  button = STOP
+  config = Esc
 end
 
-# Change display aspect ratio
+  # Rewind
 begin
-prog = mythtv
-button = Prev-Channel
-repeat = 3
-config = W
+  prog = mythtv
+  button = FWD
+  repeat = 3
+  config = PgDown
 end
 
-# double speed watch
+  # Fast Forward
 begin
-prog = mythtv
-button = Yellow
-repeat = 3
-config = J
+  prog = mythtv
+  button = REW
+  repeat = 3
+  config = PgUp
 end
 
-# change tuners
-#begin
-#prog = mythtv
-#button = hash
-#repeat = 3
-#config = Y
-#end
-
-# Bring up Time stretch
+  # Skip Backward
 begin
-prog = mythtv
-button = Blue
-repeat = 3
-config = Y
+  prog = mythtv
+  button = PREV
+  repeat = 3
+  config = home
 end
 
-# Numbers 0-9
-
+  # Skip Forward
 begin
-prog = mythtv
-button = 0
-repeat = 3
-config = 0
+  prog = mythtv
+  button = NEXT
+  repeat = 3
+  config = End
 end
 
+  # Pause
 begin
-prog = mythtv
-button = 1
-repeat = 3
-config = 1
+  prog = mythtv
+  button = Pause
+  repeat = 3
+  config = P
 end
 
+  # Delete
 begin
-prog = mythtv
-button = 2
-repeat = 3
-config = 2
+  prog = mythtv
+  button = A
+  repeat = 3
+  config = D
 end
 
+  # Decrease Playback Speed
 begin
-prog = mythtv
-button = 3
-repeat = 3
-config = 3
+  prog = mythtv
+  button = B
+  repeat = 3
+  config = J
 end
 
+  # Double Playback Speed
 begin
-prog = mythtv
-button = 4
-repeat = 3
-config = 4
+  prog = mythtv
+  button = C
+  repeat = 3
+  config = J
 end
 
+  # Time Stretch
 begin
-prog = mythtv
-button = 5
-repeat = 3
-config = 5
+  prog = mythtv
+  button = D
+  repeat = 3
+  config = Y
 end
 
-begin
-prog = mythtv
-button = 6
-repeat = 3
-config = 6
-end
+  ### Jump Points need to match config in mythweb keybindings
 
+  # Myth Music
 begin
-prog = mythtv
-button = 7
-repeat = 3
-config = 7
+  prog = mythtv
+  button = Music
+  repeat = 3
+  config = F4
 end
 
+  # Live TV
 begin
-prog = mythtv
-button = 8
-repeat = 3
-config = 8
+  prog = mythtv
+  button = TV
+  repeat = 3
+  config = F5
 end
 
+  # Myth Video Gallery
 begin
-prog = mythtv
-button = 9
-repeat = 3
-config = 9
+  prog = mythtv
+  button = VIDEO
+  repeat = 3
+  config = F2
 end
 
-
-### MPlayer lirc setup
-
-# Show OSD
-begin
-prog = mplayer
-button = MENU
-repeat = 3
-config = osd
-end
-
-# Pause playback
+  # Myth Image Gallery
 begin
-prog = mplayer
-button = PAUSE
-repeat = 3
-config = pause
+  prog = mythtv
+  button = PHOTOS
+  repeat = 3
+  config = F
 end
 
-# Skip ahead a minute if playing
-# If paused, resume playing
-begin
-prog = mplayer
-button = PLAY
-repeat = 3
-config = seek +1
-end
-
-# Stop playback and exit
-begin
-prog = mplayer
-button = Back
-repeat = 3
-config = quit
-end
-
-# Mute
-begin
-prog = mplayer
-button = MUTE
-repeat = 3
-config = mute
-end
-
-# Seek back 10 seconds
-begin
-prog = mplayer
-button = LEFT
-repeat = 3
-config = seek -7
-end
-
-# Seek forward 30 seconds
-begin
-prog = mplayer
-button = RIGHT
-repeat = 3
-config = seek +30
-end
 
-# Quit
 begin
-prog = mplayer
-button = EXIT
-repeat = 3
-config = quit
+  prog = irexec
+  button = HELP
+  config = env DISPLAY=:0 xdotool key alt+h
+  flags = quit
 end
-
-# Seek forward 10 minutes
-begin
-prog = mplayer
-button = SKIP
-repeat = 3
-config = seek +600
-end
-
-# Seek backward 10 minutes
-begin
-prog = mplayer
-button = REPLAY
-repeat = 3
-config = seek -600
-end
-
-# Toggle full-screen
-begin
-prog = mplayer
-button = FULL
-repeat = 3
-config = vo_fullscreen
-end
-
-### Xine lirc setup
-
-begin
-prog = xine
-button = PLAY
-repeat = 3
-config = Play
-end
-
-begin
-prog = xine
-button = STOP
-repeat = 3
-config = Stop
-end
-
-begin
-prog = xine
-button = OFF
-repeat = 3
-config = Quit
-end
-
-begin
-prog = xine
-button = PAUSE
-repeat = 3
-config = Pause
-end
-
-begin
-prog = xine
-button = CH+
-repeat = 3
-config = EventUp
-end
-
-begin
-prog = xine
-button = CH-
-repeat = 3
-config = EventDown
-end
-
-begin
-prog = xine
-button = VOL-
-repeat = 3
-config = EventLeft
-end
-
-begin
-prog = xine
-button = VOL+
-repeat = 3
-config = EventRight
-end
-
-begin
-prog = xine
-button = OK
-repeat = 3
-config = EventSelect
-end
-
-begin
-prog = xine
-button = BACK
-repeat = 3
-config = Menu
-end
-
-begin
-prog = xine
-button = FFW
-repeat = 3
-#config = SpeedFaster
-config = SeekRelative+60
-end
-
-begin
-prog = xine
-button = REW
-repeat = 3
-#config = SpeedSlower
-config = SeekRelative-60
-end
-
-begin
-prog = xine
-button = FULL
-repeat = 3
-config = Volume+
-end
-
-begin
-prog = xine
-button = BLANK
-repeat = 3
-config = Volume-
-end
-
-begin
-prog = xine
-button = MUTE
-repeat = 3
-config = Mute
-end
-
-begin
-prog = xine
-button = MENU
-repeat = 3
-config = RootMenu
-end
-
-begin
-prog = xine
-button = SKIP
-repeat = 3
-config = EventNext
-end
-
-begin
-prog = xine
-button = REPLAY
-repeat = 3
-config = EventPrior
-end
-
-begin
-prog = xine
-button = GO
-repeat = 3
-config = OSDStreamInfos
-end
-
-begin
-prog = xine
-button = RED
-repeat = 3
-config = Quit
-end
-
-begin
-prog = xine
-button = RED
-repeat = 3
-config = Quit
-end
\ No newline at end of file
diff --git a/abs/core/system-templates/templates/remotes/ATI/snapstream_firefly_ch5/xbmc.xml b/abs/core/system-templates/templates/remotes/ATI/snapstream_firefly_ch5/xbmc.xml
new file mode 100644
index 0000000..64dc7df
--- /dev/null
+++ b/abs/core/system-templates/templates/remotes/ATI/snapstream_firefly_ch5/xbmc.xml
@@ -0,0 +1,38 @@
+<lircmap>
+<remote device="Snapstream_Firefly">
+ <pause>PAUSE</pause>
+ <stop>STOP</stop>
+ <forward>FWD</forward>
+ <reverse>REW</reverse>
+ <left>LEFT</left>
+ <right>RIGHT</right>
+ <up>UP</up>
+ <down>DOWN</down>
+ <select>OK</select>
+ <pageplus>CH+</pageplus>
+ <pageminus>CH-</pageminus>
+ <back>EXIT</back>
+ <menu>MENU</menu>
+ <title>PLAY</title>
+ <info>INFO</info>
+ <skipplus>NEXT</skipplus>
+ <skipminus>PREV</skipminus>
+ <display>MAXI</display>
+ <start>FIREFLY</start>
+ <record>REC</record>
+ <volumeplus>VOL+</volumeplus>
+ <volumeminus>VOL-</volumeminus>
+ <mute>MUTE</mute>
+ <power>CLOSE</power>
+ <one>1</one>
+ <two>2</two>
+ <three>3</three>
+ <four>4</four>
+ <five>5</five>
+ <six>6</six>
+ <seven>7</seven>
+ <eight>8</eight>
+ <nine>9</nine>
+ <zero>0</zero>
+</remote>
+</lircmap>
diff --git a/abs/core/system-templates/templates/remotes/ATI/snapstream_firefly_ch6/lircrc-snapstrm.txt b/abs/core/system-templates/templates/remotes/ATI/snapstream_firefly_ch6/lircrc-snapstrm.txt
index e918011..064e72d 100644
--- a/abs/core/system-templates/templates/remotes/ATI/snapstream_firefly_ch6/lircrc-snapstrm.txt
+++ b/abs/core/system-templates/templates/remotes/ATI/snapstream_firefly_ch6/lircrc-snapstrm.txt
@@ -5,586 +5,345 @@
 #
 # Modified from Jarod Wilson's which came from Jeff Campbell's
 # By Brad Templeton
+# Modified to use the Firefly's Unique Buttons by Ryan Schmitz
+# Updated by RacerX for Linhes 8.0
 
-
-# Here we have the jump point commands.  They only work if you have
-# defined function keys for these jump points.  For me the most
-# common command is the menu of recordings, so I put that on "videos"
-# even though that's counter-intuitive
+  # Remote Numbers 0-9
 
 begin
-prog = mythtv
-button = TV
-repeat = 3
-config = F5
+  prog = mythtv
+  button = 0
+  repeat = 3
+  config = 0
 end
 
 begin
-prog = mythtv
-button = Videos
-repeat = 3
-config = F2
+  prog = mythtv
+  button = 1
+  repeat = 3
+  config = 1
 end
 
-# Not yet defined
 begin
-prog = mythtv
-button = Music
-repeat = 3
-config = Up
+  prog = mythtv
+  button = 2
+  repeat = 3
+  config = 2
 end
 
-# Given another function for now, I don't use mythgallery
 begin
-prog = mythtv
-button = Pictures
-repeat = 3
-config = F
+  prog = mythtv
+  button = 3
+  repeat = 3
+  config = 3
 end
 
 begin
-prog = mythtv
-button = Guide
-repeat = 3
-config = F3
+  prog = mythtv
+  button = 4
+  repeat = 3
+  config = 4
 end
 
-# I stuck the "todo" list on here as Myth has no radio function
 begin
-prog = mythtv
-button = Radio
-repeat = 3
-config = F4
+  prog = mythtv
+  button = 5
+  repeat = 3
+  config = 5
 end
 
 begin
-prog = mythtv
-button = UP
-repeat = 3
-config = Up
+  prog = mythtv
+  button = 6
+  repeat = 3
+  config = 6
 end
 
 begin
-prog = mythtv
-button = DOWN
-repeat = 3
-config = Down
+  prog = mythtv
+  button = 7
+  repeat = 3
+  config = 7
 end
 
 begin
-prog = mythtv
-button = LEFT
-repeat = 3
-config = Left
+  prog = mythtv
+  button = 8
+  repeat = 3
+  config = 8
 end
 
 begin
-prog = mythtv
-button = RIGHT
-repeat = 3
-config = Right
+  prog = mythtv
+  button = 9
+  repeat = 3
+  config = 9
 end
 
-# Channel Up
+  # Escape/Back/Exit
 begin
-prog = mythtv
-button = Channel-UP
-repeat = 3
-config = Up
+  prog = mythtv
+  button = BACK
+  config = Esc
 end
 
-# Channel Down
+  # OK/Select
 begin
-prog = mythtv
-button = Channel-DOWN
-repeat = 3
-config = Down
+  prog = mythtv
+  button = ENT
+  config = pace
 end
 
-# OK/Select
+  # Volumn Up
 begin
-prog = mythtv
-button = Ok
-config = Space
+  prog = mythtv
+  button = VOL+
+  repeat = 3
+  config = F11
 end
 
-# Play
+  # Volumn Down
 begin
-prog = mythtv
-button = Play
-config = Return
+  prog = mythtv
+  button = VOL-
+  repeat = 3
+  config = F10
 end
 
-# Stop
+  # Mute
 begin
-prog = mythtv
-button = Stop
-config = I
+  prog = mythtv
+  button = MUTE
+  repeat = 3
+  config = |
 end
 
-# Escape/Exit/Back
+  # Firefly
 begin
-prog = mythtv
-button = BACK
-config = Esc
+  prog = mythtv
+  button = FIREFLY
+  repeat = 3
+  config = F8
 end
 
-# Power Off/Exit
+  # Channel Up
 begin
-prog = mythtv
-button = POWER
-config = Esc
+  prog = mythtv
+  button = CH+
+  repeat = 3
+  config = Up
 end
 
-
-# Pause
+  # Channel Down
 begin
-prog = mythtv
-button = Pause
-repeat = 3
-config = P
+  prog = mythtv
+  button = CH-
+  repeat = 3
+  config = Down
 end
 
-# Mute
+  # Info
 begin
-prog = mythtv
-button = Mute
-repeat = 3
-config = |
+  prog = mythtv
+  button = INFO
+  repeat = 3
+  config = I
 end
 
-# Fast forward (30 sec default)
+  # change tuners
 begin
-prog = mythtv
-button = Rewind
-repeat = 3
-config = PgUp
+  prog = mythtv
+  button = OPTION
+  repeat = 3
+  config = Y
 end
 
-# Rewind (10 sec default)
+  # Up
 begin
-prog = mythtv
-button = Forward
-repeat = 3
-config = PgDown
+  prog = mythtv
+  button = UP
+  repeat = 3
+  config = Up
 end
 
-# Skip forward (10 min default)
+  # Left
 begin
-prog = mythtv
-button = Next
-repeat = 3
-config = End
+  prog = mythtv
+  button = LEFT
+  repeat = 3
+  config = Left
 end
 
-# Skip backward (10 min default)
+  # Down
 begin
-prog = mythtv
-button = Previous
-repeat = 3
-config = Home
+  prog = mythtv
+  button = DOWN
+  repeat = 3
+  config = Down
 end
 
-# Record
+  # Right
 begin
-prog = mythtv
-button = Record
-repeat = 3
-config = R
+  prog = mythtv
+  button = RIGHT
+  repeat = 3
+  config = Right
 end
 
-# Delete
+  # Ok/Select
 begin
-prog = mythtv
-button = Red
-repeat = 3
-config = D
+  prog = mythtv
+  button = OK
+  config = space
 end
 
-# Decrease play speed
+  # Menu
 begin
-prog = mythtv
-button = Green
-repeat = 3
-config = J
+  prog = mythtv
+  button = MENU
+  repeat = 3
+  config = M
 end
 
-# Display EPG while in live TV,
-# View selected show while in EPG
+  # Escape/Exit/Back
 begin
-prog = mythtv
-button = Menu
-repeat = 3
-config = M
+  prog = mythtv
+  button = EXIT
+  config = Esc
 end
 
-# Scroll up
+  # Record
 begin
-prog = mythtv
-button = Volume-UP
-repeat = 3
-config = F11
+  prog = mythtv
+  button = REC
+  repeat = 3
+  config = R
 end
 
-# Scroll down
+  # Play
 begin
-prog = mythtv
-button = Volume-DOWN
-repeat = 3
-config = F10
+  prog = mythtv
+  button = PLAY
+  config = Return
 end
 
-# Bring up OSD info
+  # Stop
 begin
-prog = mythtv
-button = Go
-repeat = 3
-config = I
+  prog = mythtv
+  button = STOP
+  config = Esc
 end
 
-# Change display aspect ratio
+  # Rewind
 begin
-prog = mythtv
-button = Prev-Channel
-repeat = 3
-config = W
+  prog = mythtv
+  button = FWD
+  repeat = 3
+  config = PgDown
 end
 
-# double speed watch
+  # Fast Forward
 begin
-prog = mythtv
-button = Yellow
-repeat = 3
-config = J
+  prog = mythtv
+  button = REW
+  repeat = 3
+  config = PgUp
 end
 
-# change tuners
-#begin
-#prog = mythtv
-#button = hash
-#repeat = 3
-#config = Y
-#end
-
-# Bring up Time stretch
+  # Skip Backward
 begin
-prog = mythtv
-button = Blue
-repeat = 3
-config = Y
+  prog = mythtv
+  button = PREV
+  repeat = 3
+  config = home
 end
 
-# Numbers 0-9
-
+  # Skip Forward
 begin
-prog = mythtv
-button = 0
-repeat = 3
-config = 0
+  prog = mythtv
+  button = NEXT
+  repeat = 3
+  config = End
 end
 
+  # Pause
 begin
-prog = mythtv
-button = 1
-repeat = 3
-config = 1
+  prog = mythtv
+  button = Pause
+  repeat = 3
+  config = P
 end
 
+  # Delete
 begin
-prog = mythtv
-button = 2
-repeat = 3
-config = 2
+  prog = mythtv
+  button = A
+  repeat = 3
+  config = D
 end
 
+  # Decrease Playback Speed
 begin
-prog = mythtv
-button = 3
-repeat = 3
-config = 3
+  prog = mythtv
+  button = B
+  repeat = 3
+  config = J
 end
 
+  # Double Playback Speed
 begin
-prog = mythtv
-button = 4
-repeat = 3
-config = 4
+  prog = mythtv
+  button = C
+  repeat = 3
+  config = J
 end
 
+  # Time Stretch
 begin
-prog = mythtv
-button = 5
-repeat = 3
-config = 5
+  prog = mythtv
+  button = D
+  repeat = 3
+  config = Y
 end
 
-begin
-prog = mythtv
-button = 6
-repeat = 3
-config = 6
-end
+  ### Jump Points need to match config in mythweb keybindings
 
+  # Myth Music
 begin
-prog = mythtv
-button = 7
-repeat = 3
-config = 7
+  prog = mythtv
+  button = Music
+  repeat = 3
+  config = F4
 end
 
+  # Live TV
 begin
-prog = mythtv
-button = 8
-repeat = 3
-config = 8
+  prog = mythtv
+  button = TV
+  repeat = 3
+  config = F5
 end
 
+  # Myth Video Gallery
 begin
-prog = mythtv
-button = 9
-repeat = 3
-config = 9
+  prog = mythtv
+  button = VIDEO
+  repeat = 3
+  config = F2
 end
 
-
-### MPlayer lirc setup
-
-# Show OSD
-begin
-prog = mplayer
-button = MENU
-repeat = 3
-config = osd
-end
-
-# Pause playback
+  # Myth Image Gallery
 begin
-prog = mplayer
-button = PAUSE
-repeat = 3
-config = pause
+  prog = mythtv
+  button = PHOTOS
+  repeat = 3
+  config = F
 end
 
-# Skip ahead a minute if playing
-# If paused, resume playing
-begin
-prog = mplayer
-button = PLAY
-repeat = 3
-config = seek +1
-end
-
-# Stop playback and exit
-begin
-prog = mplayer
-button = Back
-repeat = 3
-config = quit
-end
-
-# Mute
-begin
-prog = mplayer
-button = MUTE
-repeat = 3
-config = mute
-end
-
-# Seek back 10 seconds
-begin
-prog = mplayer
-button = LEFT
-repeat = 3
-config = seek -7
-end
-
-# Seek forward 30 seconds
-begin
-prog = mplayer
-button = RIGHT
-repeat = 3
-config = seek +30
-end
 
-# Quit
 begin
-prog = mplayer
-button = EXIT
-repeat = 3
-config = quit
+  prog = irexec
+  button = HELP
+  config = env DISPLAY=:0 xdotool key alt+h
+  flags = quit
 end
-
-# Seek forward 10 minutes
-begin
-prog = mplayer
-button = SKIP
-repeat = 3
-config = seek +600
-end
-
-# Seek backward 10 minutes
-begin
-prog = mplayer
-button = REPLAY
-repeat = 3
-config = seek -600
-end
-
-# Toggle full-screen
-begin
-prog = mplayer
-button = FULL
-repeat = 3
-config = vo_fullscreen
-end
-
-### Xine lirc setup
-
-begin
-prog = xine
-button = PLAY
-repeat = 3
-config = Play
-end
-
-begin
-prog = xine
-button = STOP
-repeat = 3
-config = Stop
-end
-
-begin
-prog = xine
-button = OFF
-repeat = 3
-config = Quit
-end
-
-begin
-prog = xine
-button = PAUSE
-repeat = 3
-config = Pause
-end
-
-begin
-prog = xine
-button = CH+
-repeat = 3
-config = EventUp
-end
-
-begin
-prog = xine
-button = CH-
-repeat = 3
-config = EventDown
-end
-
-begin
-prog = xine
-button = VOL-
-repeat = 3
-config = EventLeft
-end
-
-begin
-prog = xine
-button = VOL+
-repeat = 3
-config = EventRight
-end
-
-begin
-prog = xine
-button = OK
-repeat = 3
-config = EventSelect
-end
-
-begin
-prog = xine
-button = BACK
-repeat = 3
-config = Menu
-end
-
-begin
-prog = xine
-button = FFW
-repeat = 3
-#config = SpeedFaster
-config = SeekRelative+60
-end
-
-begin
-prog = xine
-button = REW
-repeat = 3
-#config = SpeedSlower
-config = SeekRelative-60
-end
-
-begin
-prog = xine
-button = FULL
-repeat = 3
-config = Volume+
-end
-
-begin
-prog = xine
-button = BLANK
-repeat = 3
-config = Volume-
-end
-
-begin
-prog = xine
-button = MUTE
-repeat = 3
-config = Mute
-end
-
-begin
-prog = xine
-button = MENU
-repeat = 3
-config = RootMenu
-end
-
-begin
-prog = xine
-button = SKIP
-repeat = 3
-config = EventNext
-end
-
-begin
-prog = xine
-button = REPLAY
-repeat = 3
-config = EventPrior
-end
-
-begin
-prog = xine
-button = GO
-repeat = 3
-config = OSDStreamInfos
-end
-
-begin
-prog = xine
-button = RED
-repeat = 3
-config = Quit
-end
-
-begin
-prog = xine
-button = RED
-repeat = 3
-config = Quit
-end
\ No newline at end of file
diff --git a/abs/core/system-templates/templates/remotes/ATI/snapstream_firefly_ch6/xbmc.xml b/abs/core/system-templates/templates/remotes/ATI/snapstream_firefly_ch6/xbmc.xml
new file mode 100644
index 0000000..64dc7df
--- /dev/null
+++ b/abs/core/system-templates/templates/remotes/ATI/snapstream_firefly_ch6/xbmc.xml
@@ -0,0 +1,38 @@
+<lircmap>
+<remote device="Snapstream_Firefly">
+ <pause>PAUSE</pause>
+ <stop>STOP</stop>
+ <forward>FWD</forward>
+ <reverse>REW</reverse>
+ <left>LEFT</left>
+ <right>RIGHT</right>
+ <up>UP</up>
+ <down>DOWN</down>
+ <select>OK</select>
+ <pageplus>CH+</pageplus>
+ <pageminus>CH-</pageminus>
+ <back>EXIT</back>
+ <menu>MENU</menu>
+ <title>PLAY</title>
+ <info>INFO</info>
+ <skipplus>NEXT</skipplus>
+ <skipminus>PREV</skipminus>
+ <display>MAXI</display>
+ <start>FIREFLY</start>
+ <record>REC</record>
+ <volumeplus>VOL+</volumeplus>
+ <volumeminus>VOL-</volumeminus>
+ <mute>MUTE</mute>
+ <power>CLOSE</power>
+ <one>1</one>
+ <two>2</two>
+ <three>3</three>
+ <four>4</four>
+ <five>5</five>
+ <six>6</six>
+ <seven>7</seven>
+ <eight>8</eight>
+ <nine>9</nine>
+ <zero>0</zero>
+</remote>
+</lircmap>
-- 
cgit v0.12