Offline
Psydney, Australia
bucky wrote:

Ah, it turns out it's not really a bug, just something you have to deal with. I posted a thread about it here-
http://8bitcollective.com/forums/viewtopic.php?id=10361

The best way to avoid unstable tempos is to not bother with tempo (Fxx) commands and simply use the global speed settings. Doesn't quite give you a lot of freedom, I know!

Is there a way to encourage famitracker to be as uneven as possible. For experimentation's sake? big_smile

Offline
WOW MAN!
tRasH cAn maN wrote:

Theoretically speaking. would this be the case also if the clock would be an external one? Say a sync signal via the expansion port.

I'd say no, to a certain extent.

A clock-source for the refresh can come from anywhere really. It's just common to refresh at the same speed the screen is refreshed at which, if you want stable tempos, means your limited to multiples of (on NTSC) 60hz.

Of course, in reality it's probably fucking difficult to do the external clock source but I'd be willing to give it a try (later)...

smile

Offline
philly
neilbaldwin wrote:
KeFF wrote:

midisync would be heart

I would love to but I (currently) wouldn't know where to even start.

A mad idea I was thinking of (and I don't even know if such a thing exists or is possible) would be an optical CV-to-MIDI gadget that you could point at a particular area of the screen and I would flash a small white square on screen in time with the refresh rate of the song. Then these pulses could be turned into MIDI clock (with some smoothing) and so NTRQ would be MIDI master clock to your slave devices.

That's probably insane I know big_smile

big_smile


Unfortunately I can't find the article on it, but I know it came from here-
http://little-scale.blogspot.com/

Offline
Los Angeles

Couldn't you use the second controller jack as a midi sync port? The hardware sounds cake. I don't know what the NES limitations are though.

Offline
WOW MAN!

@ Bucky: hah hah, that's amazing! big_smile

Offline
WOW MAN!

I've just got NTRQ making sound again after I deemed it necessary to rewrite the player code.

I'm my own worst enemy at times smile

Offline
WOW MAN!

Just a quick post to keep you abreast with progress.

Took me quite a while to bug-test the new player code but it's much better now. Previously I'd tried to be clever and write the player code using a big mess of conditional assembly so that I could avoid using indexing and benefit massively from the CPU saving. It was working but the code got so bit that I was in danger of using a whole ROM bank for the player! Given that I've got quite a lot of future plans for NTRQ development this was an unacceptable situation so I bit the bullet and wrote it in a more traditional way (the programmers amongst you will know what I mean). This has meant that the player refresh code does take more CPU time but it's not bad at all. Well, I'm not really the most efficient coder so I'm sure there's plenty of room for improvement.

Plenty of new features have gone in now such as;

- delay command for notes/key-offs as discussed in the other thread.
- master volume & master volume fade command
- override duty table setting from pattern
- a "terminate pattern" command which can be used to end a pattern early before it's natural end
- changed the way notes are entered for DPCM
- added start offset to DPCM
- added loop function to DPCM
- added detune to pitch table commands

Before embarking on rewriting the sections of the manual that are now out-of-date I thought I'd better have a try at making another song from scratch - this always throws up those quirks and bugs that you don't get from more focused feature testing. I was listening to New Order at the time so I tried to do a NES cover of Bizarre Love Triangle. It turned out pretty good (well, i only did the main backing/tune and the vocal melody for the first couple of verses) and NTRQ felt pretty smooth to operate big_smile

A few things came up though so I've added a couple of features that help massively;

- pressing START always plays the song from the start
- holding B+A and pressing start sets a marker to start the song from (and plays it from there)
- holding B and pressing start plays the song from the marker
- holding SELECT and pressing START plays and loops the current (editing) song step

and these are "global" keys so it doesn't matter what editing window you are in.

I've also totally redesigned the layout of my CHR bank. I'm now able to display text in inverse (I removed redundant letters and stuff so squeezed enough space). I've already added a couple of uses for this already e.g. the line you are currently editing in the song or pattern is highlighted with inverse and it looks smart. I'm going to have a think of how to use this more in the editors.

Something that did become apparent from making the last song was that I needed a real rethink about the ability to copy and paste in the song editor. You've probably seen copy/paste in action for the patterns in some of the old videos but I never really had the same features for the song editor. You could duplicate a step or you could duplicate a whole song but that was it. WIth the newly added inverse characters I had given myself a way to be able to mark sections of the song and paste (overwrite) or insert that section somewhere else in the song.

And that's what I'm in the middle of doing. I've got the marking function working (but it needs more testing) and also the ability to insert an arbitrary number of steps into an existing song (previously you could only do one at a time with the insert/delete song line function). Just need to screw all that together and I should have a pretty nice copy/paste song lines feature.

Then the rewriting of the manual :S

Right, back to the assembler!

big_smile

Offline
Central-ish VA

Neil, a mere forum post cannot properly express my thanks and absolute amazement.  Thanks for the wonderful gift!  I cannot wait to see this get released, NTRQ is going to be outstanding.

The play marker you mentioned above is an interesting concept.  So this then means you can play a) from the start b) from the beginning of your current chain (we'll call it), and c) from a certain marked note?  Or is c) from a certain chain or something?  I'm interested in knowing how that works exactly, very clever.

Last edited by Beverage (Jan 24, 2010 3:18 pm)

Offline
WOW MAN!
Beverage wrote:

Neil, a mere forum post cannot properly express my thanks and absolute amazement.  Thanks for the wonderful gift!  I cannot wait to see this get released, NTRQ is going to be outstanding.

The play marker you mentioned above is an interesting concept.  So this then means you can play a) from the start b) from the beginning of your current chain (we'll call it), and c) from a certain marked note?  Or is c) from a certain chain or something?  I'm interested in knowing how that works exactly, very clever.

smile thank you!

Yeah, the difference is subtle. Say you have a song that has 20 steps in it (or chains, I think it's different terminology for a similar concept) and you just want to work on the last 5 steps;

1) put a jump command on step 20 to jump back to step 15
2) put the cursor on step 15 in the song editor and press B+A+START

Now the song will play 15 to 20 in a loop. If you stop the song, pressing B+START will play the 15 to 20 loop again.

If you just want to listen to the same song step over and over, lets say step 17;

1) put the cursor on step 17 and press SELECT+START

and the song will just loop step 17 until you press stop.

BUT, you still have step 15 marked so you can play 15-20 again just by pressing B+START. Or set a new start point by moving to, say step 10 and pressing B+A+START again. Or play the song from the first step at any time with just START (the marker remains until you set it to a different point).

Offline
Stockholm

Wow, amazing update!

I like the play song-options, sounds like a flexible idea. In fact, I like everything you've mentioned in this update smile

Offline
WOW MAN!

Another update for y'all.

I think, finally, I've got the Song Arranger copy-n-paste functions working properly. It's been a horrible, horrible job: so many permutations of conditions had to be trapped and catered for because, and I know from all the testing I did before it was working correctly, it's one area where it is (was!) possible to really screw up your song file :S

More testing to be done though. It's a powerful feature but it also need to make you confident enough to use it.

See, copying and pasting in the Patterns was relatively straight-forward because the Patterns are a fixed and known quantity. Like having two egg boxes, one with 16 eggs in and the other with 16 empty holes: no matter what combination of eggs you take out of the first box you know they'll fit into the other one. However, the Song Length is not fixed (of course!) and so it gets a hell of a lot more complicated to paste data around.

The best feature is that you can either insert the marked block of song data somewhere else in your song (or another song) or you can paste over existing song steps. Makes fleshing out the framework of a song an absolute doddle now big_smile

Unfortunately the bad news is I have totally run out of ROM space in the bank where the editor sits. sad

Need a major reorganisation/optimisation session ASAP.

Offline
WOW MAN!

Oh shit, yeah! Something I forgot to mention in the previous update.

On the back of an idea I had, a good friend of mine has wrote an NTRQ data compressor. This is for finished songs so won't help with squeezing more out of the battery RAM while you're working (but I'm working on that too). My idea being that you can squeeze an NTRQ song bank (that's the 8kb battery file containing 8 songs) down pretty small. Then if you're making your own ROM/player, you could store loads of compressed NTRQ files in ROM and decompress them to battery RAM to play them - no need to worry about banks/data relocation because NTRQ expects the data to be in battery RAM.

From some tests, for example the Billy Jean tune I did a while back, the compressor gets that file down to about 1k. I've still got to translate the C decompressor to 6502 but it's a pretty simple algorithm (even I can understand it) so it shouldn't be too difficult.

Offline
Geneva, NY

Neil, you should call this Bunny Tracker.

Offline
WOW MAN!
bleo wrote:

Neil, you should call this Bunny Tracker.

Maybe my brain is fried but.....I don't get it?

smile

Offline

I think it might be referencing Piggy Tracker. wink

Offline
Geneva, NY
neilbaldwin wrote:
bleo wrote:

Neil, you should call this Bunny Tracker.

Maybe my brain is fried but.....I don't get it?

smile

You're being very undude, Neil... wink

OK, how about Fawn Tracker? "Da Fino" for short?  Like an Irish Monk? 

Your thinking about this case has become so uptight.