Home AMX User Forum NetLinx Studio

Any ideas?

I am working on a satellite xm music module but ran into an issue where it isn't updating the information correctly but only when the index rolls back around to 1.

Here is the code can anyone help me with what I am missing
PROGRAM_NAME='Music'
(***********************************************************)
(***********************************************************)
(*  FILE_LAST_MODIFIED_ON: 04/05/2006  AT: 09:00:25        *)
(***********************************************************)
(* System Type : NetLinx                                   *)
(***********************************************************)
(* REV HISTORY:                                            *)
(***********************************************************)
(*
    $History: $

    06/23/2008
    
    Channel Names are updating correctly
    
    Channel Numbers aren't updating with the name - fixed
    Channel Descriptions aren't updating with the name - fixed
    
    The information isn't updating when the index number returns to 1 using either the page up, down or back buttons

*)
(***********************************************************)
(*          DEVICE NUMBER DEFINITIONS GO BELOW             *)
(***********************************************************)
DEFINE_DEVICE

dvTP		=	10001:1:1
dvDevice	=	5001:1:1

(***********************************************************)
(*               CONSTANT DEFINITIONS GO BELOW             *)
(***********************************************************)
DEFINE_CONSTANT

Integer nMusic_Selection_Buttons[]=
{
    1,		/// Selection 1
    2,		/// Selection 2
    3,		/// Selection 3
    4,		/// Selection 4
    5,		/// Selection 5
    6,		/// Selection 6
    7,		/// Selection 7
    8		/// Selection 8
}

Integer nMusic_VText_Fields[]=
{
    601,	/// Nav Field 1
    602,	/// Nav Field 2
    603,	/// Nav Field 3
    604,	/// Nav Field 4
    605,	/// Nav Field 5
    606,	/// Nav Field 6
    607,	/// Nav Field 7
    608		/// Nav Field 8
}

Integer nMusic_VText_Description_Field[]=
{
    609		/// Description Field
}

Integer nMusic_Navigation_Buttons[]=
{
    610,	/// Page Up
    611,	/// Back
    612		/// Page Down
}

(***********************************************************)
(*              DATA TYPE DEFINITIONS GO BELOW             *)
(***********************************************************)
DEFINE_TYPE

Structure Music_Presets
{
    Char Channel_Number[3]
    Char Channel_Name[25]
    Char Channel_Description[500]
}

(***********************************************************)
(*               VARIABLE DEFINITIONS GO BELOW             *)
(***********************************************************)
DEFINE_VARIABLE

Volatile Integer nButton

Volatile Integer nNumber1
Volatile Integer nNumber2
Volatile Integer nNumber3

Persistent Integer nIndex

Persistent Music_Presets sChannels[72]
(***********************************************************)
(*               LATCHING DEFINITIONS GO BELOW             *)
(***********************************************************)
DEFINE_LATCHING

(***********************************************************)
(*       MUTUALLY EXCLUSIVE DEFINITIONS GO BELOW           *)
(***********************************************************)
DEFINE_MUTUALLY_EXCLUSIVE

([dvTP,nMusic_Selection_Buttons[1]] .. [dvTP,nMusic_Selection_Buttons[8]])
(***********************************************************)
(*        SUBROUTINE/FUNCTION DEFINITIONS GO BELOW         *)
(***********************************************************)
(* EXAMPLE: DEFINE_FUNCTION <RETURN_TYPE> <NAME> (<PARAMETERS>) *)
(* EXAMPLE: DEFINE_CALL '<NAME>' (<PARAMETERS>) *)


Define_Function sDebug(Char sMsg[])
{
    Send_String 0,"'Music Presets Debug :: ',sMsg"
}

Define_Function Index_Tracking(Integer nIndex)
{
    Local_Var Integer nCount
    
    Switch(nIndex)
    {
	Case 1:
	{
	    For(nCount = 1; nCount < 9; nCount ++)
	    {
		Send_Command dvTP ,"'^TXT-',Itoa(nMusic_VText_Fields[nCount]),',0,',(sChannels[nCount].Channel_Name)"
	    }
	    sDebug("' Line :: ',Itoa(__Line__),' nIndex = ',Itoa(nIndex)")
	    Break
	}
	Case 2:
	{
	    For(nCount = 1; nCount < 9; nCount ++)
	    {
		Send_Command dvTP ,"'^TXT-',Itoa(nMusic_VText_Fields[nCount]),',0,',(sChannels[nCount+8].Channel_Name)"
		sChannels[nCount].Channel_Number = sChannels[nCount+8].Channel_Number
		sChannels[nCount].Channel_Description = sChannels[nCount+8].Channel_Description
	    }
	    sDebug("' Line :: ',Itoa(__Line__),' nIndex = ',Itoa(nIndex)")
	    Break
	}
	Case 3:
	{
	    For(nCount = 1; nCount < 9; nCount ++)
	    {
		Send_Command dvTP ,"'^TXT-',Itoa(nMusic_VText_Fields[nCount]),',0,',(sChannels[nCount+16].Channel_Name)"
		sChannels[nCount].Channel_Number = sChannels[nCount+16].Channel_Number
		sChannels[nCount].Channel_Description = sChannels[nCount+16].Channel_Description
	    }
	    sDebug("' Line :: ',Itoa(__Line__),' nIndex = ',Itoa(nIndex)")
	    Break
	}
	Case 4:
	{
	    For(nCount = 1; nCount < 9; nCount ++)
	    {
		Send_Command dvTP ,"'^TXT-',Itoa(nMusic_VText_Fields[nCount]),',0,',(sChannels[nCount+24].Channel_Name)"
		sChannels[nCount].Channel_Number = sChannels[nCount+24].Channel_Number
		sChannels[nCount].Channel_Description = sChannels[nCount+24].Channel_Description
	    }
	    sDebug("' Line :: ',Itoa(__Line__),' nIndex = ',Itoa(nIndex)")
	    Break
	}
	Case 5:
	{
	    For(nCount = 1; nCount < 9; nCount ++)
	    {
		Send_Command dvTP ,"'^TXT-',Itoa(nMusic_VText_Fields[nCount]),',0,',(sChannels[nCount+32].Channel_Name)"
		sChannels[nCount].Channel_Number = sChannels[nCount+32].Channel_Number
		sChannels[nCount].Channel_Description = sChannels[nCount+32].Channel_Description
	    }
	    sDebug("' Line :: ',Itoa(__Line__),' nIndex = ',Itoa(nIndex)")
	    Break
	}
	Case 6:
	{
	    For(nCount = 1; nCount < 9; nCount ++)
	    {
		Send_Command dvTP ,"'^TXT-',Itoa(nMusic_VText_Fields[nCount]),',0,',(sChannels[nCount+40].Channel_Name)"
		sChannels[nCount].Channel_Number = sChannels[nCount+40].Channel_Number
		sChannels[nCount].Channel_Description = sChannels[nCount+40].Channel_Description
	    }
	    sDebug("' Line :: ',Itoa(__Line__),' nIndex = ',Itoa(nIndex)")
	    Break
	}
	Case 7:
	{
	    For(nCount = 1; nCount < 9; nCount ++)
	    {
		Send_Command dvTP ,"'^TXT-',Itoa(nMusic_VText_Fields[nCount]),',0,',(sChannels[nCount+48].Channel_Name)"
		sChannels[nCount].Channel_Number = sChannels[nCount+48].Channel_Number
		sChannels[nCount].Channel_Description = sChannels[nCount+48].Channel_Description
	    }
	    sDebug("' Line :: ',Itoa(__Line__),' nIndex = ',Itoa(nIndex)")
	    Break
	}
	Case 8:
	{
	    For(nCount = 1; nCount < 9; nCount ++)
	    {
		Send_Command dvTP ,"'^TXT-',Itoa(nMusic_VText_Fields[nCount]),',0,',(sChannels[nCount+56].Channel_Name)"
		sChannels[nCount].Channel_Number = sChannels[nCount+56].Channel_Number
		sChannels[nCount].Channel_Description = sChannels[nCount+56].Channel_Description
	    }
	    sDebug("' Line :: ',Itoa(__Line__),' nIndex = ',Itoa(nIndex)")
	    Break
	}
	Case 9:
	{
	    For(nCount = 1; nCount < 9; nCount ++)
	    {
		Send_Command dvTP ,"'^TXT-',Itoa(nMusic_VText_Fields[nCount]),',0,',(sChannels[nCount+64].Channel_Name)"
		sChannels[nCount].Channel_Number = sChannels[nCount+64].Channel_Number
		sChannels[nCount].Channel_Description = sChannels[nCount+64].Channel_Description
	    }
	    sDebug("' Line :: ',Itoa(__Line__),' nIndex = ',Itoa(nIndex)")
	    Break
	}
    }
}

Define_Function GoTo_Channel(Integer nButton)
{
    nNumber1 =	Atoi(Left_String((sChannels[nButton].Channel_Number),1))
    nNumber2 =	Atoi(Mid_String((sChannels[nButton].Channel_Number),2,1))
    nNumber3 =	Atoi(Right_String((sChannels[nButton].Channel_Number),1))
    
    sDebug("' Line :: ',Itoa(__Line__),' Numbers : ',Itoa(nNumber1),Itoa(nNumber2),Itoa(nNumber3)")
}
(***********************************************************)
(*                STARTUP CODE GOES BELOW                  *)
(***********************************************************)
DEFINE_START

nIndex = 1
(***********************************************************)
(*                THE EVENTS GO BELOW                      *)
(***********************************************************)
DEFINE_EVENT

Data_Event[dvTP]
{
    Online:
    {
	Local_Var Integer nCount
	
	Index_Tracking(nIndex)
    }
}

Data_Event[0:1:0]
{
    Online:
    {
	sChannels[1].Channel_Number = '801'
	sChannels[1].Channel_Name = 'The 40s'
	sChannels[1].Channel_Description = 'Take a ride on the Savoy Express for the biggest hit songs from the 40s including the big band recordings of the Swing Era and the greatest standards to come out during the first half of the 20th century. Plus, listen for coverage of the news and big events of this historical era.'
	
	sChannels[2].Channel_Number = '802'
	sChannels[2].Channel_Name = 'The 50s'
	sChannels[2].Channel_Description = 'Relive the roots of rock and rolls earliest days or follow the hit parade and the pre-rock sounds of Doo Wop, Rock-a-Billy, early R&B and the Swinging Sounds of the Las Vegas "Rat Pack" era. The 50s captures all the great American music.'
	
	sChannels[3].Channel_Number = '803'
	sChannels[3].Channel_Name = 'The 60s'
	sChannels[3].Channel_Description = 'The times they were a changin and it caused a revolution in music. The 60s re-creates the decade. Its 60s pop culture re-visited, including the surfin tunes, R&B and "girl groups," the British invasion, the Woodstock era and Wolfman Jack every night!'
	
	sChannels[4].Channel_Number = '804'
	sChannels[4].Channel_Name = 'The 70s'
	sChannels[4].Channel_Description = 'The 70s takes you back to the days of Watergate, bell bottoms and pet rocks. Your favorite AM radio stations were moving to FM and the music was wider than ever. The 70s captures it all from singer songwriters and great classic rock to the best R&B, soul and disco, plus Casey Kasems original American Top 40 countdowns every weekend.'
	
	sChannels[5].Channel_Number = '805'
	sChannels[5].Channel_Name = 'The 80s'
	sChannels[5].Channel_Description = 'The "Totally awesome" 80s 8 is like listening to one of the great Top 40 radio stations of the time, complete with great air personalities and those jingles you grew to love. The 80s covers it all...rock, rhythm and pop complete with the hair bands and everything that launched the MTV music generation and Casey Kasems 80s countdowns every weekend.'
	
	sChannels[6].Channel_Number = '806'
	sChannels[6].Channel_Name = 'The 90s'
	sChannels[6].Channel_Description = 'The 90s covers all the "Gen X" hits. The channel is as diverse as the decade was and plays everything from grunge rock to boy bands plus everything in between.'
	
	sChannels[7].Channel_Number = '807'
	sChannels[7].Channel_Name = 'Oprah & Friends'
	sChannels[7].Channel_Description = 'The Oprah & Friends XM channel inspires listeners to live their best lives with the help of Oprah and her specialized team of hand-picked advisors. Her "dream team" includes Gayle King, Dr. Oz, Bob Greene, Nate Berkus, Jean Chatzky, Dr. Robin Smith, Dr. Maya Angelou, Peter Walsh and Marianne Williamson. '
	
	sChannels[8].Channel_Number = '808'
	sChannels[8].Channel_Name = 'America'
	sChannels[8].Channel_Description = 'America focuses on the history and the tradition of country music plus a blatant dose of patriotism and a sense of pride in what America stands for. America plays some newer music as well from traditional country stars and mixes in a lot of the history and stories behind the songs.'
	
	sChannels[9].Channel_Number = '809'
	sChannels[9].Channel_Name = 'US Country'
	sChannels[9].Channel_Description = 'US Country picks up where America leaves off. This channel celebrates the careers of the biggest country superstars that arrived in the late 80s and brought country music to the forefront of American culture. US Country has no DJs and very few interruptions...just great country music 24/7.'
	
	sChannels[10].Channel_Number = '810'
	sChannels[10].Channel_Name = 'X Country'
	sChannels[10].Channel_Description = 'Cross Country brings you a musical landscape that blends the genres of folk, rock, country and blues creating a sonic space that is something akin to the birth of rock and roll. Youll hear honky tonk, Western swing, folk rock, swamp rock and Southern boogie among other styles from the red-hot Americana music scene.'
	
	sChannels[11].Channel_Number = '811'
	sChannels[11].Channel_Name = 'Willies Place'
	sChannels[11].Channel_Description = 'Willie Nelson is the proprietor and executive producer of the honky tonk that never closes with cowboy coffee, cold beer and colas. Theres a nickel jukebox and a cast of characters from the bartender to the yellow school bus that gets folks home safely.'
	
	sChannels[12].Channel_Number = '812'
	sChannels[12].Channel_Name = 'Bluegrass Junction'
	sChannels[12].Channel_Description = 'Bluegrass Junction is the home of Steam Powered Radio, bringing you the earliest bluegrass recordings mixed in with the latest efforts from the next generation with deep respect for those who brought us to the dance.'
	
	sChannels[13].Channel_Number = '813'
	sChannels[13].Channel_Name = 'The Village'
	sChannels[13].Channel_Description = 'From the ballads of early American songwriters to the contemporary masters of folk, The Village presents music of protest and political change and the voice of communities passed from generation to generation. Youll hear all the styles and feelings that make up the rich tapestry known as folk.'
	
	sChannels[14].Channel_Number = '814'
	sChannels[14].Channel_Name = 'Highway 16'
	sChannels[14].Channel_Description = 'Highway 16 is your home for Todays Top Country Hits featuring the latest from country musics biggest stars and hot new artists. Youll also hear in-depth, exclusive interviews with all of todays hit makers, including XM World Premieres of new album releases and intimate introductions to hot country newcomers!'
	
	sChannels[15].Channel_Number = '816'
	sChannels[15].Channel_Name = 'Top 20 on 20'
	sChannels[15].Channel_Description = 'Top 20 on 20 is the worlds first fully interactive hit music experience playing just the songs you vote for! For whats hot right this second...just interact with 20 on 20...its all that matters!'
	
	sChannels[16].Channel_Number = '817'
	sChannels[16].Channel_Name = 'XM Hitlist'
	sChannels[16].Channel_Description = 'While 20 on 20 plays just the fresh, new music, XM Hitlist plays all of todays hit music plus the biggest pop, rock and rhythmic hits from the past ten years...nothing but hits on the XM Hitlist.'
	
	sChannels[17].Channel_Number = '818'
	sChannels[17].Channel_Name = 'Flight 26'
	sChannels[17].Channel_Description = 'Flight 26 plays a great mix of modern hits from the 90s and now. All the new music you love without the rap or teen music mixed with the best modern pop hits from the past fifteen years.'
	
	sChannels[18].Channel_Number = '819'
	sChannels[18].Channel_Name = 'The Heart'
	sChannels[18].Channel_Description = 'The Heart plays the biggest love songs and lite rock favorites from the 60s through today. This is the perfect place to relax, unwind and lose the stress.'
	
	sChannels[19].Channel_Number = '820'
	sChannels[19].Channel_Name = 'Escape'
	sChannels[19].Channel_Description = 'Escape plays instrumental arrangements of the great popular melodies from the past 60 years, along with an occasional vocal recording of a melody with a message.'
	
	sChannels[20].Channel_Number = '821'
	sChannels[20].Channel_Name = 'The Blend'
	sChannels[20].Channel_Description = 'A great blend of music from the 70s through today...nothing too sleepy and never any rap or hard rock, The Blend plays the biggest superstars of pop music from the past 30 years...its the musical soundtrack of your life.'
	
	sChannels[21].Channel_Number = '822'
	sChannels[21].Channel_Name = 'Cinemagic'
	sChannels[21].Channel_Description = 'Cinemagic invites listeners to escape into the audio presentations of movies. Relive your favorite movies by listening to the music and some of the most memorable scenes from those films.'
	
	sChannels[22].Channel_Number = '823'
	sChannels[22].Channel_Name = 'On Broadway'
	sChannels[22].Channel_Description = 'No matter where you live, On Broadway brings Broadway to you. Youll hear the best from Broadway, off-Broadway, national tours, Londons West End and movie musicals, plus youll hear directly from the people who create and appear in musicals and plays.'
	
	sChannels[23].Channel_Number = '824'
	sChannels[23].Channel_Name = 'U-Pop'
	sChannels[23].Channel_Description = 'U-Pop plays the biggest hits on the planet. Youll hear todays hit music from England, France, Sweden, Ireland, Belgium and the rest of Europe mixed with J-Pop from Japan, Afro-pop and Latin American Hits.'
	
	sChannels[24].Channel_Number = '825'
	sChannels[24].Channel_Name = 'The Heat'
	sChannels[24].Channel_Description = 'The Heat is XMs home for hip hop, R&B and Top 40 crossovers. This is the music thats selling across America and burning up the charts.'
	
	sChannels[25].Channel_Number = '826'
	sChannels[25].Channel_Name = 'The Message'
	sChannels[25].Channel_Description = 'Its music with a positive message. The Message plays a bright mix of Christian pop hits from the 80s through today...refreshing, sonically rich and family-friendly.'
	
	sChannels[26].Channel_Number = '827'
	sChannels[26].Channel_Name = 'Spirit'
	sChannels[26].Channel_Description = 'Glory is what gospel is all about...the glory of its inspirational message and the sheer glorious sound of the music. Let your heart soar with your favorite gospel recordings of all time on Spirit.'
	
	sChannels[27].Channel_Number = '828'
	sChannels[27].Channel_Name = 'Enlighten'
	sChannels[27].Channel_Description = 'Southern gospels roots go back more than a century with a rich history based on four-part harmony. Enlighten features family groups, trios, quartets and soloists from a wide range of Southern gospel artists. The church doors are always open on Enlighten.'
	
	sChannels[28].Channel_Number = '829'
	sChannels[28].Channel_Name = 'The Torch'
	sChannels[28].Channel_Description = 'The Torch plays contemporary rock hits with a positive message. Plus, we mix in Christian rock favorites from the past 15 years. Its "Jesus Music" for the 21st century.'
	
	sChannels[29].Channel_Number = '830'
	sChannels[29].Channel_Name = 'Boneyard'
	sChannels[29].Channel_Description = 'This is the heyday of the 80s hard rock, the European hard rock bands, their American counterparts, 80s hair bands plus all the new tunes from those artists. Mix it all together with a slightly bent and irreverent attitude and you have Da Boneyard.'
	
	sChannels[30].Channel_Number = '831'
	sChannels[30].Channel_Name = 'XMU'
	sChannels[30].Channel_Description = 'XMU plays whats next...now! Imagine your favorite college radio station. Add a couple of satellites, national coverage and a litany of music that you will only discover...and thats XMU. Its indie pop, indie rock, electronic, down-tempo and underground hip-hop.'
	
	sChannels[31].Channel_Number = '832'
	sChannels[31].Channel_Name = 'XM Cafe'
	sChannels[31].Channel_Description = 'Growing up doesnt mean growing old but it does increase your enjoyment of more challenging rock artists. If your ear can discern the difference, come to the XM Cafe, where a mellow approach to modern adult alternative music lives.'
	
	sChannels[32].Channel_Number = '833'
	sChannels[32].Channel_Name = 'Top Tracks'
	sChannels[32].Channel_Description = 'These are the killer cuts that rocked America during the 1960s and 70s. Top Tracks plays nothing but the biggest classic rock hits that shaped a generation.'
	
	sChannels[33].Channel_Number = '834'
	sChannels[33].Channel_Name = 'Ethel'
	sChannels[33].Channel_Description = 'Ethel is where new alternative rock lives...the biggest hits from the newest modern rock superstars mixed with 90s flashbacks.'
	
	sChannels[34].Channel_Number = '835'
	sChannels[34].Channel_Name = 'Squizz'
	sChannels[34].Channel_Description = 'Squizz is new rock for the extreme generation...hard alternative in the post-grunge era fusing metal-rap-funk-world with aggressive, heavy guitars. Youll hear the pioneers of new rock right through todays emerging artists.'
	
	sChannels[35].Channel_Number = '836'
	sChannels[35].Channel_Name = 'The Loft'
	sChannels[35].Channel_Description = 'The Loft is an intelligent, eclectic mix of tunes by singer-songwriters who can craft a good lyric then put it across. Its a broad range of styles and subjects, but nothing so loud or so fast that it gets between you and the words. Just song after well-crafted song, including many you cant hear anywhere else.'
	
	sChannels[36].Channel_Number = '837'
	sChannels[36].Channel_Name = 'Big Tracks'
	sChannels[36].Channel_Description = 'From mullets to air guitars, Big Tracks picks up where Top Tracks leaves off...these are the biggest classic rock hits from the mid 70s through the early 90s.'
	
	sChannels[37].Channel_Number = '838'
	sChannels[37].Channel_Name = 'Lucy'
	sChannels[37].Channel_Description = 'Lucy plays the biggest songs in the history of alternative music...over 25 years of songs that shaped a generation. Youll hear the biggest modern rock hits of today mixed with classics from the 80s and 90s.'
	
	sChannels[38].Channel_Number = '839'
	sChannels[38].Channel_Name = 'Fred'
	sChannels[38].Channel_Description = 'Fred is an audio history of alternative music. We take you from the early roots of Alternative, through the New Wave of the 80s into the early 90s...music long since banished from FM radio stations.'
	
	sChannels[39].Channel_Number = '840'
	sChannels[39].Channel_Name = 'Deep Tracks'
	sChannels[39].Channel_Description = 'Forget everything you knew about classic rock. Deep Tracks goes deeper &madsh; playing the nuggets rarely heard on FM radio...the landmark songs, the lost gems and classic concerts from the 60s through the 70s. Plus, exclusive weekly shows with Bob Dylan, Tom Petty and the Grateful Dead.'
	
	sChannels[40].Channel_Number = '841'
	sChannels[40].Channel_Name = 'Liquid Metal'
	sChannels[40].Channel_Description = 'Liquid Metal is industrial-strength metal undiluted for the masses. Torturously hard and loud, XMLM delivers the juice painfully and without compromise.'
	
	sChannels[41].Channel_Number = '842'
	sChannels[41].Channel_Name = 'Soul Street'
	sChannels[41].Channel_Description = 'Soul Street is a celebration of the Motown, Stax and Atlantic record labels...vintage soul and classic R&B. From James Brown to Aretha Franklin, Soul Street plays all the great music from the 60s and early 70s.'
	
	sChannels[42].Channel_Number = '843'
	sChannels[42].Channel_Name = 'Suite 62'
	sChannels[42].Channel_Description = 'The big stars of R&B live in the Suite. Suite 62 plays the latest R&B hits mixed with classic R&B ballads, slow jams and the smooth, polished sounds from the 80s and 90s.'
	
	sChannels[43].Channel_Number = '844'
	sChannels[43].Channel_Name = 'The Groove'
	sChannels[43].Channel_Description = 'R&B is the international language of partying and The Groove goes back in the day every day with all the great R&B headliners from the mid 70s through the 80s. Youll hear a great mix of R&B, funk, dance and party music along with some songs you forgot you knew.'
	
	sChannels[44].Channel_Number = '845'
	sChannels[44].Channel_Name = 'The Rhyme'
	sChannels[44].Channel_Description = 'Fans of hip-hop culture unite! Snoop Dogg takes you on a journey through the first 25 years of hip-hop...everything from breakbeats to gangsta, Jazz rap to turntablism. Hear how the music progressed and changed through the years, and relive the decades that defined hip-hop for you.'
	
	sChannels[45].Channel_Number = '846'
	sChannels[45].Channel_Name = 'Raw'
	sChannels[45].Channel_Description = 'Raw is real hip-hop, mixtape-style radio in its purest...nothing but uncut, uncensored hip-hop and lots of fresh music, plus exclusive weekly shows hosted by Ludacris, Paul Wall, Chamillionaire and Trick Daddy. If its hot on the streets, its on Raw.'
	
	sChannels[46].Channel_Number = '847'
	sChannels[46].Channel_Name = 'The City'
	sChannels[46].Channel_Description = 'The City is the nations premiere R&B channel that funnels the urban vibe into one City. Youll hear fresh, new hip-hop and R&B including mix shows, new music features and exclusive interviews with the artists who make the music.'
	
	sChannels[47].Channel_Number = '848'
	sChannels[47].Channel_Name = 'Special X'
	sChannels[47].Channel_Description = 'Special X is traditional radios worst nightmare...a collection of the most bizarre and often worst music ever recorded. So pathetic...its brilliant. A clearly deranged channel, Special X will take any sane mind to new depths of artistic insanity.'
	
	sChannels[48].Channel_Number = '850'
	sChannels[48].Channel_Name = 'Real Jazz'
	sChannels[48].Channel_Description = 'Real Jazz plays swingin straight-ahead jazz...everything from classic jazz, traditional New Orleans-style jazz, the women of jazz and live concerts from the Blue Note and Jazz at Lincoln Center. This is swingin jazz true to its core and rooted in the deepest recesses of hard-core blues.'
	
	sChannels[49].Channel_Number = '851'
	sChannels[49].Channel_Name = 'Watercolors'
	sChannels[49].Channel_Description = 'Cool, Contemporary Jazz instrumentals and hip vocals create a muted musical backdrop of sophistication on Watercolors. These groovy sounds expand the boundaries of smooth to not only seduce and relax but to engage and inspire.'
	
	sChannels[50].Channel_Number = '852'
	sChannels[50].Channel_Name = 'Beyond Jazz'
	sChannels[50].Channel_Description = 'This is the worlds only authentic modern jazz radio station. Beyond Jazz plays the greats of the jazz fusion era, the stars of modern electric and acoustic jazz, the new jazz singers, the jazzy jambands, acid jazz, techno-jazz and whatever jazz has to offer in the future.'
	
	sChannels[51].Channel_Number = '853'
	sChannels[51].Channel_Name = 'High Standards'
	sChannels[51].Channel_Description = 'The Great American Songbook, High Standards celebrates the incomparable American song style under the leadership of radio personality Jonathan Schwartz from our New York studios at Jazz at Lincoln Center. High Standards provides an unmatched showcase for the music and lyrics that have earned these songs a special place in the world of music.'
	
	sChannels[52].Channel_Number = '854'
	sChannels[52].Channel_Name = 'Bluesville'
	sChannels[52].Channel_Description = 'Bluesville is like a beginning course in art history. We play music of the forefathers and mothers from the 20s and 30s and we play the most contemporary blues acts of today, without forgetting all the great artists in between.'
	
	sChannels[53].Channel_Number = '855'
	sChannels[53].Channel_Name = 'Fine Tuning'
	sChannels[53].Channel_Description = 'Fine Tuning plays the worlds most interesting music. Theres a method to the freeform nature at Fine Tuning. Some fans say we sound like their home music library. Others love the abstract and eclectic balance. Youll hear great players and superb melodies from around the genres and around the world done by key and programmed just for your taste.'
	
	sChannels[54].Channel_Number = '856'
	sChannels[54].Channel_Name = 'Audio Visions'
	sChannels[54].Channel_Description = 'Audio Visions is a place of peace in a sometimes too-crazy world. Its a visit to a beautiful world where you are surrounded by nature, inspired by poetry, filled with joy, and soothed by dreamy, flowing, electronic, and acoustic music and voices.'
	
	sChannels[55].Channel_Number = '857'
	sChannels[55].Channel_Name = 'XM Chill'
	sChannels[55].Channel_Description = 'XM Chill takes you on a voyage into the Chill zone...a place that pulses with exotic and cerebral music known as smooth electronica. A European phenomenon that is finally emerging in North America, XM Chill is beyond a channel...its an experience in sound.'
	
	sChannels[56].Channel_Number = '858'
	sChannels[56].Channel_Name = 'The Move'
	sChannels[56].Channel_Description = 'The Move is on the pulse of whats happening in clubland today. Its a collection of active DJs and producers who travel the world and play dance music in every corner of the globe. Youll hear house, progressive, drum and bass, and downtempo/chill every Sunday.'
	
	sChannels[57].Channel_Number = '859'
	sChannels[57].Channel_Name = 'BPM'
	sChannels[57].Channel_Description = 'BPM plays pure, mainstream dance music...the biggest remixes and club hits from all over America, plus some pop and Top 40 crossovers. This is the music you hear in stadiums and arenas and at the hottest clubs coast to coast.'
	
	sChannels[58].Channel_Number = '860'
	sChannels[58].Channel_Name = 'The System'
	sChannels[58].Channel_Description = 'Taking a trip into The System will blow your mind, expand your musical boundaries and create a listening experience that you will never forget. Trance, Breaks, Progressive...its electronic dance music presented in a way that is uncompromising, pure, relentless, and international.'
	
	sChannels[59].Channel_Number = '861'
	sChannels[59].Channel_Name = 'Chrome'
	sChannels[59].Channel_Description = 'Break out the bell bottoms and get ready for Chrome...nothing but the biggest disco hits from the late 70s plus some classic dance, funk and freestyle from the 80s. Its like walking right in to Studio 54!'
	
	sChannels[60].Channel_Number = '862'
	sChannels[60].Channel_Name = 'World Zone'
	sChannels[60].Channel_Description = 'Music has no borders. Neither does World Zone. Some of the most compelling music youve never heard is here. We scout it from sources around the globe...Ireland, Brazil, Pakistan, India, Cuba, Japan and Mexico. Listen for new features on popular music from different regions of the world, international soul, Caribbean rhythms and contemporary Folk Music.'
	
	sChannels[61].Channel_Number = '863'
	sChannels[61].Channel_Name = 'The Joint'
	sChannels[61].Channel_Description = 'The Joint is where the past, present, and future of reggae music resides. Youll hear roots reggae, ska, rock steady, dancehall, dub on your daily trip to Jamaica.'
	
	sChannels[62].Channel_Number = '864'
	sChannels[62].Channel_Name = 'XM Classics'
	sChannels[62].Channel_Description = 'All genres and all eras of classical music are offered in a style that mixes unassuming authority with genuine friendliness and enthusiasm. XM Classics strives to inform, entertain and inspire, believing without apology that music is one of the greatest gifts that humankind has bestowed upon itself.'
	
	sChannels[62].Channel_Number = '865'
	sChannels[62].Channel_Name = 'VOX'
	sChannels[62].Channel_Description = 'XM Vox presents the human voice across the range of over a century of recorded sound and 2000 years of music. Well take you from the sung prayer of ancient chant to the spectacle of grand opera from the exaltation of cathedral choirs to the quiet melancholy of the solo singer.'
	
	sChannels[63].Channel_Number = '866'
	sChannels[63].Channel_Name = 'XM Pops'
	sChannels[63].Channel_Description = 'XM Pops is classical music for everyone...the classical music you know, even if you dont think you know classical music. These are the biggest names in classical music history, and their best pieces of music.'
	
	sChannels[64].Channel_Number = '867'
	sChannels[64].Channel_Name = 'Radio Disney'
	sChannels[64].Channel_Description = 'This party rocks with the music that kids and tweens want to hear! The biggest new stars share center stage as pop music, novelty oldies and movie and television favorites are combined with hilarious interaction from kids coast to coast. Plus, fantasy prizes and amazing edutainment features!'
	
	sChannels[65].Channel_Number = '868'
	sChannels[65].Channel_Name = 'XM Kids'
	sChannels[65].Channel_Description = 'XM Kids reaches kids and families all over America with award-winning original content blended with a music mix of the most popular kids movie and TV soundtracks and all the best childrens recording artists. The sensibilities are family-friendly but the presentation style is always done with a wink and nod to Mom and Dad, who are always along for the ride!'
	
	sChannels[66].Channel_Number = '879'
	sChannels[66].Channel_Name = 'The Virus'
	sChannels[66].Channel_Description = 'Beware ... this is radio like youve never heard it before. Irreverent, uncensored, so good you wont want to stop listening. Opie and Anthony in the morning with Ron and Fez in the afternoon.'
	
	sChannels[67].Channel_Number = ''
	sChannels[67].Channel_Name = ''
	sChannels[67].Channel_Description = ''
	
	sChannels[68].Channel_Number = ''
	sChannels[68].Channel_Name = ''
	sChannels[68].Channel_Description = ''
	
	sChannels[69].Channel_Number = ''
	sChannels[69].Channel_Name = ''
	sChannels[69].Channel_Description = ''
	
	sChannels[70].Channel_Number = ''
	sChannels[70].Channel_Name = ''
	sChannels[70].Channel_Description = ''
	
	sChannels[71].Channel_Number = ''
	sChannels[71].Channel_Name = ''
	sChannels[71].Channel_Description = ''
	
	sChannels[72].Channel_Number = ''
	sChannels[72].Channel_Name = ''
	sChannels[72].Channel_Description = ''
	
    }
}


Button_Event[dvTP,nMusic_Navigation_Buttons]
{
    Push:
    {
	nButton = Get_Last(nMusic_Navigation_Buttons)
	
	Switch(nButton)
	{
	    Case 1:
	    {
		nIndex = nIndex - 1
		Break
	    }
	    Case 2:
	    {
		nIndex = nIndex * 0 + 1
		Break
	    }
	    Case 3:
	    {
		nIndex = nIndex + 1
		Break
	    }
	    
	}
	Wait 10
	{
	    Index_Tracking(nIndex)
	}
    }
}

Button_Event[dvTP,nMusic_Selection_Buttons]
{
    Push:
    {
	nButton = Get_Last(nMusic_Selection_Buttons)
	
	Send_Command dvTP ,"'^TXT-',Itoa(nMusic_VText_Description_Field[1]),',0,',(sChannels[nButton].Channel_Description)"
	
	On[dvTp,nButton]
	
	GoTo_Channel(nButton)
    }
}

(***********************************************************)
(*            THE ACTUAL PROGRAM GOES BELOW                *)
(***********************************************************)
DEFINE_PROGRAM

If(nIndex < 1) {nIndex = 9}
If(nIndex > 9) {nIndex = 1}
(***********************************************************)
(*                     END OF PROGRAM                      *)
(*        DO NOT PUT ANY CODE BELOW THIS COMMENT           *)
(***********************************************************)

TIA

Comments

  • Spire_JeffSpire_Jeff Posts: 1,917
    I think the problem might be because you are not setting the sChannels[nIndex].Channel_Number and .Channel_Description values in Case 1 of the Index_Tracking function.

    If you are interested, I simplified the Index_Tracking function a little... It should accomplish the same thing and it's a little easier to troubleshoot:
    Define_Function Index_Tracking(Integer nIndex)
    {
        Local_Var Integer nCount
    		STACK_VAR INTEGER nValue;
        
    		nValue = (nIndex - 1) * 8;
    		
     		For(nCount = 1; nCount < 9; nCount ++)
    		{
    			Send_Command dvTP ,"'^TXT-',Itoa(nMusic_VText_Fields[nCount]),',0,',(sChannels[nCount+nValue].Channel_Name)"
    			sChannels[nCount].Channel_Number = sChannels[nCount+nValue].Channel_Number
    			sChannels[nCount].Channel_Description = sChannels[nCount+nValue].Channel_Description
    		}
    		sDebug("' Line :: ',Itoa(__Line__),' nIndex = ',Itoa(nIndex)")
    
    }
    

    Let me know if this suggestion fixed it.

    Jeff
  • ondrovicondrovic Posts: 217
    i will give it a try and let you know thanks
  • ondrovicondrovic Posts: 217
    No luck, still not changing once the index is set back to 1.
  • Spire_JeffSpire_Jeff Posts: 1,917
    I think I got it. Change the function below to:
    Define_Function Index_Tracking(Integer nIndex)
    {
        Local_Var Integer nCount
    		STACK_VAR INTEGER nValue;
        
    		nValue = (nIndex - 1) * 8;
    		
     		For(nCount = 1; nCount < 9; nCount ++)
    		{
    			Send_Command dvTP ,"'^TXT-',Itoa(nMusic_VText_Fields[nCount]),',0,',(sChannels[nCount+nValue].Channel_Name)"
    		}
    		sDebug("' Line :: ',Itoa(__Line__),' nIndex = ',Itoa(nIndex)")
    
    }
    

    I'm not sure why you were doing the
    sChannels[nCount].Channel_Number = sChannels[nCount+nValue].Channel_Number
    sChannels[nCount].Channel_Description = sChannels[nCount+nValue].Channel_Description
    but that was overwriting the channel information for the first 8 channels to be the current displayed channel info.... which is fine until you want to display the original 8 channels. :)

    If for some reason, you need to track what is currently displayed, you need to create a new variable to hold this info.

    Jeff
  • ondrovicondrovic Posts: 217
    Jeff,

    Now none of the information is changing when going to a new index.

    That was why I was using the

    sChannels[nCount].Channel_Number = sChannels[nCount+nValue].Channel_Number
    sChannels[nCount].Channel_Description = sChannels[nCount+nValue].Channel_Description
  • Spire_JeffSpire_Jeff Posts: 1,917
    Ok, one second. I just need to find out where you are sending the information to the touch panel.

    Jeff.
  • Spire_JeffSpire_Jeff Posts: 1,917
    Ok, you need to add/change the following:
    Button_Event[dv_TP,nMusic_Selection_Buttons]
    {
        Push:
        {
    			STACK_VAR Integer nValue;
    	nButton = Get_Last(nMusic_Selection_Buttons)
    	
    	nValue = (nIndex - 1) * 8;
    	
    	Send_Command dv_TP ,"'^TXT-',Itoa(nMusic_VText_Description_Field[1]),',0,',(sChannels[nButton + nValue].Channel_Description)"
    	
    	On[dv_TP,nButton]
    	
    	GoTo_Channel(nButton)
        }
    }
    
    This will display the correct description.

    Also, change this just in case:
    Button_Event[dv_TP,nMusic_Navigation_Buttons]
    {
        Push:
        {
    	nButton = Get_Last(nMusic_Navigation_Buttons)
    	
    	Switch(nButton)
    	{
    	    Case 1:
    	    {
    			if(nIndex>1)
    				nIndex = nIndex - 1
    			else 
    				nIndex = 1
    		Break
    	    }
    	    Case 2:
    	    {
    		nIndex = 1
    		Break
    	    }
    	    Case 3:
    	    {
    				if(nIndex <9)
    					nIndex = nIndex + 1
    				else
    					nIndex = 9
    		Break
    	    }
    	    
    	}
    	Wait 10
    	{
    	    Index_Tracking(nIndex)
    	}
        }
    }
    

    As for the other stuff, it should display correctly based on what I'm looking at. Can you enable the internal diagnostics and let me see the output?

    Jeff
  • ondrovicondrovic Posts: 217
    here is my diagnostics all the info except the channel numbers are populating when the index number changes
    Line      1 (09:43:58):: Music Presets Debug ::  Line :: 141 Numbers : 801
    Line      2 (09:44:01):: Music Presets Debug ::  Line :: 141 Numbers : 802
    Line      3 (09:44:02):: Music Presets Debug ::  Line :: 141 Numbers : 803
    Line      4 (09:44:04):: Music Presets Debug ::  Line :: 141 Numbers : 804
    Line      5 (09:44:06):: Music Presets Debug ::  Line :: 141 Numbers : 805
    Line      6 (09:44:07):: Music Presets Debug ::  Line :: 141 Numbers : 806
    Line      7 (09:44:08):: Music Presets Debug ::  Line :: 141 Numbers : 807
    Line      8 (09:44:10):: Music Presets Debug ::  Line :: 141 Numbers : 808
    Line      9 (09:44:12):: Music Presets Debug ::  Line :: 131 nIndex = 2
    Line     10 (09:44:16):: Music Presets Debug ::  Line :: 141 Numbers : 801
    Line     11 (09:44:17):: Music Presets Debug ::  Line :: 141 Numbers : 802
    Line     12 (09:44:21):: Music Presets Debug ::  Line :: 141 Numbers : 803
    Line     13 (09:44:23):: Music Presets Debug ::  Line :: 141 Numbers : 804
    Line     14 (09:44:24):: Music Presets Debug ::  Line :: 141 Numbers : 805
    Line     15 (09:44:26):: Music Presets Debug ::  Line :: 141 Numbers : 806
    Line     16 (09:44:28):: Music Presets Debug ::  Line :: 141 Numbers : 807
    Line     17 (09:44:29):: Music Presets Debug ::  Line :: 141 Numbers : 808
    Line     18 (09:44:31):: Music Presets Debug ::  Line :: 131 nIndex = 3
    Line     19 (09:44:35):: Music Presets Debug ::  Line :: 141 Numbers : 801
    Line     20 (09:44:36):: Music Presets Debug ::  Line :: 141 Numbers : 802
    Line     21 (09:44:36):: Music Presets Debug ::  Line :: 141 Numbers : 802
    Line     22 (09:44:38):: Music Presets Debug ::  Line :: 141 Numbers : 803
    Line     23 (09:44:39):: Music Presets Debug ::  Line :: 141 Numbers : 804
    Line     24 (09:44:40):: Music Presets Debug ::  Line :: 141 Numbers : 805
    Line     25 (09:44:41):: Music Presets Debug ::  Line :: 141 Numbers : 806
    Line     26 (09:44:42):: Music Presets Debug ::  Line :: 141 Numbers : 807
    Line     27 (09:44:43):: Music Presets Debug ::  Line :: 141 Numbers : 808
    Line     28 (09:44:45):: Music Presets Debug ::  Line :: 131 nIndex = 4
    Line     29 (09:44:45):: Music Presets Debug ::  Line :: 141 Numbers : 801
    Line     30 (09:44:46):: Music Presets Debug ::  Line :: 141 Numbers : 802
    Line     31 (09:44:47):: Music Presets Debug ::  Line :: 141 Numbers : 803
    Line     32 (09:44:47):: Music Presets Debug ::  Line :: 141 Numbers : 804
    Line     33 (09:44:48):: Music Presets Debug ::  Line :: 141 Numbers : 805
    Line     34 (09:44:48):: Music Presets Debug ::  Line :: 141 Numbers : 806
    Line     35 (09:44:49):: Music Presets Debug ::  Line :: 141 Numbers : 807
    Line     36 (09:44:50):: Music Presets Debug ::  Line :: 141 Numbers : 808
    Line     37 (09:44:51):: Music Presets Debug ::  Line :: 131 nIndex = 5
    Line     38 (09:44:52):: Music Presets Debug ::  Line :: 141 Numbers : 801
    Line     39 (09:44:53):: Music Presets Debug ::  Line :: 141 Numbers : 802
    Line     40 (09:44:53):: Music Presets Debug ::  Line :: 141 Numbers : 803
    Line     41 (09:44:54):: Music Presets Debug ::  Line :: 141 Numbers : 804
    Line     42 (09:44:55):: Music Presets Debug ::  Line :: 141 Numbers : 805
    Line     43 (09:44:55):: Music Presets Debug ::  Line :: 141 Numbers : 806
    Line     44 (09:44:56):: Music Presets Debug ::  Line :: 141 Numbers : 807
    Line     45 (09:44:56):: Music Presets Debug ::  Line :: 141 Numbers : 808
    Line     46 (09:44:59):: Music Presets Debug ::  Line :: 131 nIndex = 6
    Line     47 (09:45:00):: Music Presets Debug ::  Line :: 141 Numbers : 801
    Line     48 (09:45:01):: Music Presets Debug ::  Line :: 141 Numbers : 802
    Line     49 (09:45:01):: Music Presets Debug ::  Line :: 141 Numbers : 803
    Line     50 (09:45:02):: Music Presets Debug ::  Line :: 141 Numbers : 804
    Line     51 (09:45:02):: Music Presets Debug ::  Line :: 141 Numbers : 805
    Line     52 (09:45:03):: Music Presets Debug ::  Line :: 141 Numbers : 806
    Line     53 (09:45:03):: Music Presets Debug ::  Line :: 141 Numbers : 807
    Line     54 (09:45:04):: Music Presets Debug ::  Line :: 141 Numbers : 808
    Line     55 (09:45:05):: Music Presets Debug ::  Line :: 131 nIndex = 7
    Line     56 (09:45:06):: Music Presets Debug ::  Line :: 141 Numbers : 801
    Line     57 (09:45:06):: Music Presets Debug ::  Line :: 141 Numbers : 802
    Line     58 (09:45:07):: Music Presets Debug ::  Line :: 141 Numbers : 803
    Line     59 (09:45:07):: Music Presets Debug ::  Line :: 141 Numbers : 804
    Line     60 (09:45:09):: Music Presets Debug ::  Line :: 141 Numbers : 805
    Line     61 (09:45:09):: Music Presets Debug ::  Line :: 141 Numbers : 806
    Line     62 (09:45:10):: Music Presets Debug ::  Line :: 141 Numbers : 807
    Line     63 (09:45:10):: Music Presets Debug ::  Line :: 141 Numbers : 808
    Line     64 (09:45:13):: Music Presets Debug ::  Line :: 131 nIndex = 8
    Line     65 (09:45:14):: Music Presets Debug ::  Line :: 141 Numbers : 801
    Line     66 (09:45:15):: Music Presets Debug ::  Line :: 141 Numbers : 802
    Line     67 (09:45:15):: Music Presets Debug ::  Line :: 141 Numbers : 803
    Line     68 (09:45:16):: Music Presets Debug ::  Line :: 141 Numbers : 804
    Line     69 (09:45:16):: Music Presets Debug ::  Line :: 141 Numbers : 805
    Line     70 (09:45:17):: Music Presets Debug ::  Line :: 141 Numbers : 806
    Line     71 (09:45:17):: Music Presets Debug ::  Line :: 141 Numbers : 807
    Line     72 (09:45:19):: Music Presets Debug ::  Line :: 141 Numbers : 808
    Line     73 (09:45:20):: Music Presets Debug ::  Line :: 131 nIndex = 9
    Line     74 (09:45:21):: Music Presets Debug ::  Line :: 141 Numbers : 801
    Line     75 (09:45:22):: Music Presets Debug ::  Line :: 141 Numbers : 802
    Line     76 (09:45:24):: Music Presets Debug ::  Line :: 141 Numbers : 804
    Line     77 (09:45:26):: Music Presets Debug ::  Line :: 141 Numbers : 803
    

    Here is the diagnostics from the index change
    Line      1 (10:03:41):: Music Presets Debug ::  Line :: 131 nIndex = 1 nCount = 9 nValue = 0
    Line      2 (10:03:43):: Music Presets Debug ::  Line :: 131 nIndex = 2 nCount = 9 nValue = 8
    Line      3 (10:03:46):: Music Presets Debug ::  Line :: 131 nIndex = 3 nCount = 9 nValue = 16
    Line      4 (10:03:47):: Music Presets Debug ::  Line :: 131 nIndex = 4 nCount = 9 nValue = 24
    Line      5 (10:03:49):: Music Presets Debug ::  Line :: 131 nIndex = 5 nCount = 9 nValue = 32
    Line      6 (10:03:51):: Music Presets Debug ::  Line :: 131 nIndex = 6 nCount = 9 nValue = 40
    Line      7 (10:03:53):: Music Presets Debug ::  Line :: 131 nIndex = 7 nCount = 9 nValue = 48
    Line      8 (10:03:56):: Music Presets Debug ::  Line :: 131 nIndex = 8 nCount = 9 nValue = 56
    Line      9 (10:03:58):: Music Presets Debug ::  Line :: 131 nIndex = 9 nCount = 9 nValue = 64
    
  • Spire_JeffSpire_Jeff Posts: 1,917
    Oops, forgot to adjust the channels by the index value:
    Define_Function GoTo_Channel(Integer nButton)
    {
    		STACK_VAR INTEGER nValue;
        
    		nValue = (nIndex - 1) * 8;
    
    
        nNumber1 =	Atoi(Left_String((sChannels[nButton+nValue].Channel_Number),1))
        nNumber2 =	Atoi(Mid_String((sChannels[nButton+nValue].Channel_Number),2,1))
        nNumber3 =	Atoi(Right_String((sChannels[nButton+nValue].Channel_Number),1))
        
        sDebug("' Line :: ',Itoa(__Line__),' Numbers : ',Itoa(nNumber1),Itoa(nNumber2),Itoa(nNumber3)")
    }
    

    See if that clears it up.

    Jeff
  • ondrovicondrovic Posts: 217
    Thanks a million that fixed it
  • ondrovicondrovic Posts: 217
    One more issue

    I have the description like this but I guess it is hitting the max length for the send_command. Any ideas on how to best grab the complete description and send it to the touch panel address?
    sChannels[1].Channel_Number = '801'
    sChannels[1].Channel_Name = 'The 40s'
    sChannels[1].Channel_Description = 'Take a ride on the Savoy Express for the biggest hit songs from the 40s including the big band recordings of the Swing Era and the greatest standards to come out during the first half of the 20th century. Plus, listen for coverage of the news and big events of this historical era.'
    

    TIA
  • jjamesjjames Posts: 2,908
  • ondrovicondrovic Posts: 217
    jjames wrote: »

    Thanks got it working now
  • ondrovicondrovic Posts: 217
    Is there a "'^BAT-' command for G3 panels? If not any ideas on how to appending the text for a G3 panel?

    Thanks
  • jjamesjjames Posts: 2,908
    ondrovic wrote: »
    Is there a "'^BAT-' command for G3 panels? If not any ideas on how to appending the text for a G3 panel?

    Thanks

    From the TPD3 History:
    TPDesign3 v3.13
    29 April 1999

    Button-by-button programming description / identification

    Allows a method for documenting the programming to be assigned
    to each touch panel button in a project file. Is accessible
    through both a menu item and a popup menu, and saved to disk
    file only (not downloaded to panel, or uploaded from a panel).
    Provides a method for setting the programming description for
    a group of buttons to the same description. Provides a method
    for appending the same text to the existing description for a
    group of buttons.
    Provides a simple map identifying which
    multi-selected button is being acted upon at the current time,
    with the ability to hide or show that map. Provides the ability
    to navigate through multi-selected buttons acting on them one
    at a time. Provides the ability to assign an identifier to a
    button or group of buttons (40 characters maximum). Provides the
    ability to append the same text to a button identifier for a group
    of buttons (40 characters maximum).
    But I can't find a command. Maybe something a setting in TPD3? I don't know.

    I think the problem that we encounter with very long strings is that the panel can only accept x amount of characters in a particular command, not that a panel can't display that many characters. Whenever you send a TXT command, it erases what's in the panel's memory (I'm assuming), and replaces it with the text being sent. the BAT command probably keeps whats in there, and just adds to it. I don't know of a way for this to work in G3 though.

    I'd call Tech Support for this one if I were you.
  • ondrovicondrovic Posts: 217
    Will do Ill report back with what I find
  • ondrovicondrovic Posts: 217
    This was all i could find under TPDesign 3's help file
    The Button Programming Description allows you to provide property identifiers/information relating to a specific button or to all buttons of a specific type. The Programming Description allows you to Replace information previously applied to a specific button. Also, the option to Append is available. This allows adding information to an existing button type.
    
    Replace ? Replaces all values previously assigned to this button.
    
    Append ? Add the current information to existing information for this button.
    
    Button Identifier ? Identifies the type of button (SETUP, VIDEO WINDOW, etc.).
    
    Lock Identifier ? Lock the identifier for this button and not allow changing the type button.
    
    Enter programming specific details here ? Place specific programming commands or macros relating to this button.
    
    Show ? Produces a right-side extension of this window that displays the buttons position on the touch panel page.
    
    <<Previous ? Revert back to the previous button defined on the panel page.
    
    Next>> ? Go to the next button in the sequence on the panel page.
    
    Apply to All ? Apply this data to all buttons of this type.
    
    OK ? Accept the information inputted in this window.
    
    Cancel ? Discard all data inputted in this window.
    
    
    See Also . . .
    External Button Properties 
    External Buttons 
    
    ?Copyright 2004, AMX Corporation
    
  • ondrovicondrovic Posts: 217
    There is no way to do this according to Tech Support
  • ondrovicondrovic Posts: 217
    DMS with Variable Text

    Has anyone found a work around for the old DMS keypads ( 5.16 firmware ) if sending variable text that you dont have to reselect the page to get the updated variable text?
  • jjamesjjames Posts: 2,908
    ondrovic wrote: »
    Has anyone found a work around for the old DMS keypads ( 5.16 firmware ) if sending variable text that you dont have to reselect the page to get the updated variable text?
    Not I, but golly . . . G3 panels, old DMS keypads . . . sounds like it's time for an upgrade. :)
  • ericmedleyericmedley Posts: 4,177
    jjames wrote: »
    Not I, but golly . . . G3 panels, old DMS keypads . . . sounds like it's time for an upgrade. :)

    We have a couple clients who are still using theirs. They upgraded the processor but kept all the old interface devices. It was hideous. No amount of begging or pleading would work.

    I'm okay with using the older stuff. Like most art, the key is to work with the limitations and ask no more than what the thing can give. If you demand all the bells and whistles of the new stuff from the old, you're bound for trouble.
  • ondrovicondrovic Posts: 217
    jjames wrote: »
    Not I, but golly . . . G3 panels, old DMS keypads . . . sounds like it's time for an upgrade. :)

    No doubt but these are systems that work, just the programmer that did most of these jobs is gone and didn't write the modules / code to be upgradeable over time so I am having to rewrite some of them
Sign In or Register to comment.