Can someone help me regarding information about the Digitracker sample format?
I'm curious what it looks like, how big is the header and what must it contain etc.?
I've tried opening a sample in a hex editor of course, but I can't be sure exactly where header-data ends and sample-data starts.
I've also tried opening the sample as ASCII with BASIC and plotting it. But here I stumble across a problem. For some reason I'm told EOF is met only after about 297 bytes, even though it is a 3200 bytes file. Looking at the graph part that does gets plotted + the byte at offset 297 in a hex editor, it looks like this occurs just as the value becomes zero. Don't know if this is a coincident though.
When I try loading my Digitracker sample in Milkytracker, it's like there's part of another sample included in the end of the sample. What's even more weird about this is that this sample is signed. So the Digitracker sample at first are located in the upper half of the spectrum only, while that weird other sample uses both the upper part and lower part.
I'd like to be able to manipulate my sample from BASIC, e.g. to reduce noise and such, or maybe even create samples with code. So I need to know about the Digitracker sample format.
Any help appreciated.
Attached is the sample I'm using for testing. It's a bassdrum, so I've renamed the file to "BASSDRUM.SMP".
(It was saved from Digitracker as "--------.SMP" which can be seen in the header).
Ascii file aren't that easy to read, because Basic will think the byte &1a means "eof"... In asm we can read as long as an error doesn't occur, but in Basic I don't know how to do this.
Trg.Aks
... And maybe asking Prodatron himself would be quicker :).
Ah well, that explains it then.
But I suppose it would still be possible to write a sample file from basic at least then.
Thanks
I don't know if this can be any help, but Prodatron also did a PC version of Digitrakker (DOS version).
Warning : both version are not maintened anymore so I personnaly would avoid using these tools...
I used Digitrakker a lot on PC, but trust me, they have nothing in common. Digitrakker samples are packed, contrary to the CPC version.
Alright. I've heard from Prodatron. He says:
Quote
The Digitracker sample format is quite simple:
8 bytes: "DT-SAMP1"
1 word: sample length
1 word: repeat start
1 word: repeat length (<=2 means no repeat)
[sample length] bytes: sample data
The sample data is 7bit unsigned (so #40 is the zero-level, #00 minimum, #7f maximum).
Generating SMPs in Basic should be quite simple, you can write the data with OPENOUT"..." and PRINT CHR$(code); statements.
The sample "BASSDRUM.SMP" I posted in this thread has apparently been modified by ManageDsk at some point, so we can't use that one for much in regards of studying the format. Digitracker doesn't write any Amsdos-Headers, but "BASSDRUM.SMP" does have one, which is not valid for the SMP format.
Warning ! Do not make any misunderstanding.
A file can have an "Amsdos" header or not (in which case it it considered as "Ascii" file). But the data of the file itself may be consisting of a header (the 13 bytes given by PDT). When manipulating a file with managedsk, make sure that no header is added when importing to a DSK, or when exporting from a DSK (the option is just below the main window). It's exactly like manipulating a SKS file, as I use ASCII file too.
Small addition to the info about Digitracker samples.
Quote
There will probably be a problem with small samples of e.g. 127 bytes.
The reason is the following: The core-mixer-routine, which is rendering the output-stream out of the three channel-samples, doesn't test, if the end of a sample is reached, as this would require too much CPU time and would lower the frequency and so the quality a lot. So only every 1/50 second the player tests, if the end of a sample has been reached or passed. Depending on the frequency much more than 127 bytes of a sample have been processed, until the player checks for the end. I guess a sample should be at least 1000 bytes or so.
Quote from: mr_lou on 15:56, 02 June 10
Small addition to the info about Digitracker samples.
Do you mind if I add this info to the Digitracker wiki page?
Of course not.