Hi Tony,
Yeah, Lookup stores a list of constants at compile time, these can not be changed at a runtime. Instead you could use an array and a couple of index variables pointing into this array. Something likeCompletely untested but illustrates one possible aproach. Another is to use the EEPROM (data/read/write) or even the program memory (readcode/writecode) to store and retreive the playlist, that way you can have it persistant.Code:PlayListMaximumLength CON 128 PlayList VAR BYTE[PlayListMaximumLength] PlayPointer VAR BYTE AddPointer VAR BYTE Song VAR BYTE AddPointer = 0 'Start adding songs from beginning of list PlayPointer = 0 'Start playing songs from beginning of list ' Initilise playlist. Song = 3 : Gosub AddSong Song = 3 : Gosub AddSong Song = 6 : Gosub AddSong Song = 1 : Gosub AddSong Song = 1 : Gosub AddSong Song = 1 : Gosub AddSong Song = 0 : Gosub Addsong ' Song=0 indicates end of list. PlaySong: While PlayList[PlayPointer] <> 0 ' Do your thing here. ' Play the song. ' Check user inputs and GOSUB routines to add or manipulate the playlist. PlayPointer = PlayPointer + 1 'Next song in list. WEND PlayPointer = 0 'Start over. Goto PlaySong AddSong: PlayList[AddPointer] = Song AddPointer = AddPointer + 1 If AddPointer = (PlayListMaximumLength - 1) THEN AddPointer = 0 'Wrap around and start over at the beginning of the list. RETURN
/Henrik.




Bookmarks