Jump to content
IGNORED

Another tracker application for the 2600


igorski81

Recommended Posts

While we're all (rightfully!) awaiting the easter release of Kylearan's TIATracker I'd like to share a small application I wrote. While TIATracker is a much more mature product, this application might be of interest to those who have experience dealing with Slocum's Music Kit/Sequencer Kit (I've noticed the naming hasn't been very consistent).

 

Slocum Tracker is a web based interface for the aforementioned Sequencer Kit. Even though Slocum's documentation is of a high standard and the text based writing of songs a simple enough solution, the workflow is quite spartan. At least in the sense that if your goal is to quickly compose music, the writing of binary codes and the declaring of pattern lists at multiple levels can be cumbersome.

 

Slocum Tracker looks and behaves like many trackers do, offering the possibility to store and revisit your projects, provides hotkeys for quick sculpting of patterns as well as a state history and lists all features of Slocum's Sequencer Kit in easily accessible pulldown menus. Once you're satisfied with your work and want to listen to your patterns, you hit the "export" button to generate the required code for use with Sequencer Kit. You can then assemble the Atari program like before.

 

The tracker is geared towards composers who aren't comfortable enough with writing for Sequencer Kit directly. Homebrew developers can now call in the help of musical friends to deliver a soundtrack while they can rely on the tried and tested performance of Sequencer Kit to ensure that their game / demo is making optimal use of the Atari's available resources.

 

A short video demonstration :

 

 

 

You can run Slocum Tracker directly using any modern web browser by navigating here.

 

Would be interested in seeing if it can be of any help to you guys as I basically wrote it to speed up proceedings when enjoying some downright edgy TIA tones :)

Edited by igorski81
  • Like 8
Link to comment
Share on other sites

Awesome! I'm really glad somebody *finally* releases a (usable) tracker for Paul Slocum's music player. My music player and tracker have a slightly different goal (more flexible and powerful, but at the same time needing a bit more resources), so having multiple options is always good!

I will give a talk on VCS music, player routines and trackers at Revision demoparty during Easter (announcement is here, scroll down a bit), and I'll make sure to include your tracker in the overview of available tools. :)

Edited by Kylearan
Link to comment
Share on other sites

Thanks for the kind words ! I actually missed the initial announcement of your tracker and was a bit bummed that similar tools would be released around the same time haha :D But like you said, they are two very different utilities and I'm looking forward to the amplitude controls and more varied "auto" patterns, TIA music should be getting a whole lot more interesting!

Link to comment
Share on other sites

I am having trouble with clicking and adding something. Here I am trying to add "kick" to 13. The only way I have been able to do it is tabbing 13 times until I come back to that slot, and then enter will accept it.

 

post-7074-0-94103200-1458011545_thumb.png

 

 

I sure would like to be able to hear the tune without exporting it. Nonetheless thank you for making it. :)

Link to comment
Share on other sites

I am having trouble with clicking and adding something. Here I am trying to add "kick" to 13. The only way I have been able to do it is tabbing 13 times until I come back to that slot, and then enter will accept it.

 

attachicon.gifeditor.png

 

 

I sure would like to be able to hear the tune without exporting it. Nonetheless thank you for making it. :)

 

 

Just out of curiosity, what web browser are you using ? The note entry input are standard select boxes which behave differently across browsers (on Chrome and Safari you can use the space bar to open them, tab to jump between them and the arrow keys/first letter of an option to select it, in Firefox on the other hand...). I think I will just have to put in the extra effort to make this a custom component so it behaves consistently across browsers. Since I'm asking question anyways ( :P), what do you mean by tabbing 13 times ? To get to slot 13 ? You should be able to directly click on the slot or use the arrow keys to navigate there...

 

Maybe we can use this space to think up how the interface should work ? I'm currently considering :

 

  • clicking on a slot will jump to the slot (currently it also opens the note entry popup)
  • double clicking on a slot will open the note entry popup (so will <spacebar> for the currently highlighted slot)
  • in the note entry popup: you can open each of the selection windows using space, or directly type the first letter/number of one of the options
  • upon selection the focus will automatically jump to the next selection (so for speed you could add a bass note in A3 with an accent by typing : B, A, 3, A and hitting enter
  • if the option of your choice is selected by default, simply press <tab> to jump to the next option

 

Or do you have suggestions for a faster workflow ? The application is open for improvements :)

Edited by igorski81
Link to comment
Share on other sites

Just released it's a bit strange to have no confirm button in the note entry window as there is no way to add a note on a tablet ! I wouldn't say that working with this tracker on a tablet is the most likely usage scenario, but hell, we can at least try to make it work as best as possible :P

 

I have updated the tracker, the URL remains the same : http://www.igorski.nl/experiment/slocum-tracker

 

I have noticed that not only do the native HTML <select> boxes behave differently across browsers, but also across operating systems (Chrome on OS X handled keyboard shortcuts quite differently than the same version under Windows 7 does...) ! As such I have replaced the default HTML components with a custom component so I could ensure that all keyboard / mouse behaviour works consistently.

 

It's still open to debate whether this is the most user friendly means to edit a note, but it now works like this :

 

In the pattern editor overview:

  • (single) clicking anywhere in a pattern will jump the cursor to that slot
  • double clicking will open the note entry editor for the clicked slot, when navigating using the keyboard the same happens when hitting <enter> or <space> on the currently highlighted slot

In the note entry popup:

  • Hitting <space> will open/close the options list for the currently focused selection component.
  • By using up/down or left/right you are able to page through the available options.
  • By typing the first character of an option, you will jump immediately to that option (type the same letter multiple times if multiple options begin with the same letter (for instance: snare, snare2, square and saw))
  • By hitting <enter> you will confirm the selection of the currently selected options list and jump to the next list
  • By hitting <tab> you will jump to the next list
  • By hitting <shift>+<tab> you will jump back to the previous list
  • If there are no options to select (for instance percussive sounds will not have a pitch or octave selection) <tab> will jump over these "disabled" options
  • Hitting enter in the last list (the accent selection) will close the window and add the note in the active pattern at the selected slot
  • Hitting <esc> in an open select list will close the list. Hitting <esc> when no select list is opened, will close the note entry popup.
  • Everything can also be selected using the mouse should you choose to do so.

Could you guys give it a try and see if this works better for you ?

Edited by igorski81
Link to comment
Share on other sites

The enter key works now. :)

 

 

I do wish I was able to hear the music as I composed it. Ideally some type of editor where the music could be put in a continuous loop of say 16 or 32 slots, and I could update it while it is playing. Exporting would come later.

 

 

It would also be good to have a system where you click the slot you want to update, and then do a single click for your choice (or press escape for no change). The choices would be pre-defined like this for example:

 

post-7074-0-76141300-1458409034_thumb.png

 

 

As you can probably tell I don't know anything about music. I'm a user who just wants to be able to experiment something quickly, tweaking it until it sounds right. In any case thank you for the work you have already done.

Link to comment
Share on other sites

I do wish I was able to hear the music as I composed it. Ideally some type of editor where the music could be put in a continuous loop of say 16 or 32 slots, and I could update it while it is playing. Exporting would come later.

 

It would also be good to have a system where you click the slot you want to update, and then do a single click for your choice (or press escape for no change). The choices would be pre-defined like this for example:

 

 

I do like your idea of having a simplified selection. Something where the user for instance selects percussion and can immediately choose between kick, hat, snare, snare2 and optionally with an accent. I'll have to ponder how to do a decent note overview for any of the waveform types.

 

I'm tempted to build a rudimentary audio sequencer in there. With rudimentary I mean that it will not attempt to emulate the sound of the TIA as that is beside its purpose, but perhaps use simple square waves (at the correct TIA pitch though!) and noise to render the melodic and percussive contents, just so you can have a melodic and rhythmic reference while entering the notes.

  • Like 1
Link to comment
Share on other sites

Thumbs up for relasing this. One of the reasons I have not released anything on VCS in 2 years is that music was impossible to get even though I know a number of chip tune musicians. Last year I had contacted them for yet another not really releasd VCS tracker to get some feedback. And being a coder I was suprised how different musicians see and use a tracker compared to myself.

 

I try to map it to your tracker as food for thought:

- Having freely copyable pattern is good. The musicians typically don't give the pattern name/number by which they reuse them. Also they don't start by creating patterns, instead patterns are was is emerging automatically as they compose. That also why most of them hate fixed pattern lengths. Yet, here the limit is in the Slocum player and one can life with it of course.

- All input should be possible via keys without using the mouse. I have not seen a single one of them using a mouse. They expect they can "play" the tune like they would on a real instrument/piano/keyboard. Of course here the limitation is that your player separated input phase & playing phase, but that is intentional (to keep implementation effort in a reasonable range). Still "double click" & dropdown menus are about the "strangest thing" they can think of. I know it because the other tracker consistet almost completely of dropdowns.

- Normally one would assign an instrument to a channel for a certain period just enter the notes. So maybe a mode whhere the instrument is copied automatically by default would good.

Link to comment
Share on other sites

Addition comments:

- @Kylearan/igorski81: As for the missing demo tune, why not for a start convert the existing tune that are available in Slocrum player source format? They are include in my sources which are available for download here

http://www.wudsn.com...atari2600/demos

- Load and Save to local file would be good (then I could even help with converting into the format)

- Export as song.h is good for a coder, but too cumbersome for a musiciaon. Since in your case the player is fixed, it would be very easy to create a template ROM (with max. song length). The an "export as .bin" could just poke the speed/song/instruments, pattterns at the right location and offer it as download. This way people only need to install Stella and associate the file extension for it. If you need help in creatin the ROM /export, let me now.

- I assume the "BPM" and pitches refer to the NTSC/Hz Mode. Actually all left VCS coders are in PAL land. So the abbility to switch that would be nice. It'll affect the piches and the replay speed (not sure if Paul described that in his docs). Also the player can be easily adapted to allow for different BPM with a minor modification. That offers more freedom for the musiciation, but cna make is hard to use the tune in a demo, since then the song counters are no longer aligned to the frame counts.

Link to comment
Share on other sites

  • 2 weeks later...

Thanks alot.

Do you have to save before switching between patterns? Even though I think I did, it would have old stuff when i switched between them.

I messed up the auto hat pattern and opened an old version of the tune but it didn't change the pattern.

After messing around with it for a couple hours I couldn't undo, or do anything else, fortunately I could save and reload the page, but then I could choose between opening two files called demo4, both different and both had different stuff I had allready changed.

 

I still managed to create a pretty cool short loop using only one channel.

song.bin

Link to comment
Share on other sites

Thanks alot.

Do you have to save before switching between patterns? Even though I think I did, it would have old stuff when i switched between them.

I messed up the auto hat pattern and opened an old version of the tune but it didn't change the pattern.

After messing around with it for a couple hours I couldn't undo, or do anything else, fortunately I could save and reload the page, but then I could choose between opening two files called demo4, both different and both had different stuff I had allready changed.

 

I still managed to create a pretty cool short loop using only one channel.

 

Awesomesauce :)

 

About your comments: you don't have to save when switching between patterns. Saving is only necessary if you'd wish to close your browser / switch projects. Regarding your issues with the undo/redo and duplicate songs I'm in the process of revising that code.

 

As a matter of fact, I will temporarily park the "slocum"-bit of the project. I am currently building upon the tracker core and will make a standalone application that allows people to create any type of music within their browser, it will feature :

 

  • Actual audio output!
  • Ability to draw waveforms and use these as the wave table source for synthesizers
  • Ability to design synthesizers with ADSR envelopes and output chains
  • Ability to hook up a MIDI keyboard and record the note output into the tracker
  • Ability to use MIDI keyboard for live playback of the synthesizer instruments
  • Ability to save songs to local files (and import them from local files)
  • Another revision of note input (it can currently be done solely using keyboard shortcuts, but can benefit from some optimizations)

 

After that has been completed, Slocum tracker will inherit all of the above (I see no need to make the audio output actually sound like the 2600, the audio should in that case act as a guide omitting the need for frequent exporting to the emulator).

 

 

Addition comments:

- @Kylearan/igorski81: As for the missing demo tune, why not for a start convert the existing tune that are available in Slocrum player source format? They are include in my sources which are available for download here

http://www.wudsn.com...atari2600/demos

- Load and Save to local file would be good (then I could even help with converting into the format)

- Export as song.h is good for a coder, but too cumbersome for a musiciaon. Since in your case the player is fixed, it would be very easy to create a template ROM (with max. song length). The an "export as .bin" could just poke the speed/song/instruments, pattterns at the right location and offer it as download. This way people only need to install Stella and associate the file extension for it. If you need help in creatin the ROM /export, let me now.

- I assume the "BPM" and pitches refer to the NTSC/Hz Mode. Actually all left VCS coders are in PAL land. So the abbility to switch that would be nice. It'll affect the piches and the replay speed (not sure if Paul described that in his docs). Also the player can be easily adapted to allow for different BPM with a minor modification. That offers more freedom for the musiciation, but cna make is hard to use the tune in a demo, since then the song counters are no longer aligned to the frame counts.

 

 

Thanks for the pointers. The BPM values are indeed NTSC. I'll consider adding a PAL switch.

 

I am very curious about the in-application ROM export, can we continue discussing the possiblities on that in a PM ?

Edited by igorski81
Link to comment
Share on other sites

  • 4 weeks later...

Just a little bump for those still interested: as stated in my previous post I am focusing on the trackers core before returning to the Atari 2600-ishness of it all.

 

The first beta is now online here : http://igorski.nl/experiment/efflux and features:

 

actual sound output

shapeable synthesizer sounds / wave tables

support for MIDI input (Google Chrome only)

instant note input using keyboard shortcuts

import / export of songs

live recording of songs (Google Chrome only)

revised UI (I took some pointers from Omegamatrix on note input :) )

 

Once the application is stable, I will continue with Slocum Tracker which will then inherit the features mentioned above, though with only two available channels and no synthesis shaping options but hardwired saw and square-type sounds (which shouldn't be a true emulation of the TIA, but helpful enough to give you an idea of what you're composing before exporting it as a .bin)

 

YouTube promo video

Edited by igorski81
  • Like 1
Link to comment
Share on other sites

  • 2 weeks later...

 

I am very curious about the in-application ROM export, can we continue discussing the possiblities on that in a PM ?

PM sent based on the original Music Kit 2 which I assume you use. With the modification all variables (tempot, high hat settings) are at fixed offsets in the ROM and you cna just replace them there like you replace in the source. song1/2/pattern are reserved to the maximum size and also have fixed offsets. Looking forward to see this grow,

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...