A method for playing a song in a handheld device is disclosed. A visual representation for a plurality of musical components is provided. The visual representation includes a plurality of lanes, with each lane corresponding to one of the musical components.
User input is received for one or more musical components, and musical characteristics corresponding to the musical components are modified in accordance with the
user input. In order to modify musical characteristics corresponding to a particular musical component, the user selects the particular lane corresponding to the particular musical component. A first
user input may be received to modify musical characteristics corresponding to a particular musical component, and the user enters a first level of the visual representation beneath the particular lane and provides
user input to modify the musical characteristics corresponding to the particular musical component. A second user input may be received, and in response to the second user input, at least a second level of the visual representation is entered beneath the first level. Program instructions may be executed, and one or more music composition algorithms may be applied to song data in accordance with a song
data structure to generate music output for the song. The visual representation may include an animated display synchronized with one or more of the musical components. Modifications to musical data corresponding to a particular musical component may be accompanied by a change in a visual effect corresponding to the modifications to the musical characteristics.