Build #68 contains a lot of improvements I made in the last two weeks for the song menu page and the phrase/song mode.
Phrase mode is the one I prefer to use, as it allows me to prepare pattern sets and to switch betweem them interactively while the sequencer is playing.
Song mode is the traditional mode you know
There is a slight incompatibility when you’ve used song position jumps in the past. The target position is now stored in the G0 parameter. But this change allowed me to introduce two new song actions: jump song and dump mixer map.
From the ChangeLog:
o in song menu page, there is now a better seperation between
"Phrase" and "Song" mode.
It can be switched between these two different modes by pressing
the SONG button multiple times. The SONG LED will flash when the
sequencer is in Phrase mode.
Definition of Phrase Mode: a song is used as "pattern set storage"
You can define a set of 4 patterns (G1/G2/G3/G4) for each song position.
You can link one or more mixer maps to a phrase.
The sequencer changes to a new pattern set immediately, or
synchronized to the beat (selectable in options menu), once a new
phrase has been selected. This can be done with GP encoder #2 (Phrase A1, A2,
A3, ..., A7, B1, B2, ... -> 128 phrases).
In addition, the phrase A1, B1, C1, ... P1 can be directly
triggered with the GP buttons when the cursor flashes below the
"Phrase" menu item (second item in the menu).
Quick selection: press LAYER B button (see below)
The usage of GP buttons is propably the most prefered, as it
allows you to quickly change between different pattern sets
while the sequencer is playing w/o temporary selecting other sets
which are between them with a rotary encoder.
Phrases can also be combined with one or more mixer maps. In this case
the first step (A1, B1, C1, ...) has to be assigned to a Mixer Map
Action (see below), whose content will be dumped out. The sequencer
will go to the next song position, and check for a Mixer Map
again. Once it has reached a position with a pattern set, it will
change to the new set and give back control over pattern changes
to the user.
Definition of Song Mode: similar to Phrase mode, each song
position holds a pattern set. In addition, following actions
can be defined:
o STOP: will stop the sequencer once this position is reached
o PLAY (x 1): plays the pattern set for one measure and
thereafter jumps to the next position
o LOOP (-> x 2 .. x16): loops the position 2 .. 16 times
and thereafter jumps to the next position
o JUMP POSITION (-> A1 .. -> P8): will jump to the given position
o JUMP SONG (-> S 1 .. -> S16): will jump to the given song
o SELECT MIXER MAP (-> 1..128): selects a mixer map and dumps
the content. Continues with the next song position
Shortcut buttons: within the Song Menu Page, most menu items can
be selected very quickly with the TRACK and LAYER buttons.
o TRACK 1: sets cursor to G1 item - you can now change the pattern with
the GP buttons or with the datawheel
o TRACK 2/3/4: like above, but for G2/G3/G4 item
o LAYER A: sets the cursor to the Song item - you can now change
the song with the GP buttons or with the datawheel
o LAYER B: sets the cursor to the Phrase/Pos item
GP buttons select 1 of 16 phrases/positions in steps of 8
Datawheel selects 1 of 128 phrases/positions
o LAYER C: only in Song Mode: selects the Action item
o new option: when the sequencer is running in song mode, the edited song
position can now automatically follow the song.
This optional function, which might disturb an edit session, can be
enabled in the options menu (F1->Opt., within this menu,
press select button to reach the "FollowSong" option)
o there is now a check during the initialisation for the PIC derivative.
Execution from any other PIC than PIC18F4620 is gracefully prevented.
You will see a message on screen, and a MIDI event "EE <devid[2:0]> <devid2[9:3]>
is sent to notify about the wrong PIC
[/code]
You will also notice, that main.asm has vanished.
Now only setup\_\*.asm files are available anymore - this is to make clear, that main.asm was my own setup with special hardware settings (it's now in setup\_tk.asm)