| |
Format name
: Noisepacker v3
Created by : Twins / Phenomena (1991)
Sources :
* own MODs converted with the packer (sent by Gryzor !)
* tons of intros/demos/musicdisks ...
Lotsa similarities with NP2 ... . Some reorder
in the sample headers and the repacking of the notes. Heh, a track is
no more always 192 bytes long ... it can even be only 1 byte !
|
OFFSET
|
SIZE (bytes)
|
COMMENT
|
|
0
2
4
6
|
2
2
2
2
|
- Number of sample + $C
- Size of pattern list (/2 to get real size)
- ?!?
- track data size
|
The following is repeated NOS times
with 16 bytes description for one sample
|
8
Ch
Eh
Fh
10h
14h
16h
|
4
2
1
1
4
2
2
|
- ?!? (looks like it's always four 00h ...)
- Sample Size / 2
- Finetune (0 -> F) (U sure gryzor ???)
- Volume (0->40h)
- ?!? (looks like it's always four 00h ...)
- Loop Size / 2
- Loop Start / 2
|
|
?!?
?!?
?!?
?!?
-
-
-
-
-
-
-
-
|
2
2
?!?
?!?
-
-
-
-
-
-
-
-
|
- Size of pattern list (again !?)
- ?!?
- Pattern list (words) (*8)
- Track list per pattern. 2 bytes for one track address and then,
8 bytes for one pattern. Since the track datas begin right after,
you have to add TDA (track data address). This TDA is the number
of bytes you'll have read AFTER this list. You can calculate it
if you want ... that way: 8 + (NumberOfSample*16) + 4 + (PatternListSize*2)
|
Beware because this list is reversed !. Meaning that one pattern first
contains the address of its track 4, then of track 3 ...
|
TDA
|
?!?
|
- Track datas. Each track is saved
after another and the maximum size 192 (C0h) bytes long |
Each track consists of 64 notes, 1 or 3 bytes each
Note Packing :
* case 1:
- description bit set to 0
/
/ sample number
| / \
| | |
0000 0000 0000 0000 0000 0000
| | | | | |
\ / \/ \ /
relative effect effect
note nbr parameter
|
* case 2:
- description bit set to 1
/
|
0000 0000
| |
\ /
number of empty row (substract this value to 80h !)
|
First bit of 'relative note number' and lst of 'sample number' are
the same bit ... but a note number is *2, so this bit is never used
by the note number
The Arpeggio effect is remapped to the effect number #8
The Volume slide effect is remapped to the effect number #7 BUT with
signed value !! (7FE -> A01). Now, don't forget to place correctly the
slide up ... so when converting just donc forget to <<4 ! (704 -> A40)
The Vibrato + Volume slide effect (6) is signed !. So, same as volume
slide : 6FA -> 606 and 604 -> 640
The Portamento + Volume slide effect (5) is signed !. So, same as
volume slide : 5FA -> 506 and 504 -> 540
The set filter command (E0) is changed (EFF -> E01)
The pattern jump 'seems' to be *2 and starts at FC !. So jump to pattern
0 is BFC, to pattern 1 BFE, to pattern 2 B00 etc. ...
relative note number: (Protracker)
C-1 to B-1 : 856,808,762,720,678,640,604,570,538,508,480,453
C-2 to B-2 : 428,404,381,360,339,320,302,285,269,254,240,226
C-3 to B-3 : 214,202,190,180,170,160,151,143,135,127,120,113
|
becomes : (NP3)
C-1 to B-1 : 02,04,06,08,0a,0c,0e,10,12,14,16,18
C-2 to B-2 : 1a,1c,1e,20,22,24,26,28,2a,2c,2e,30
C-3 to B-3 : 32,34,36,38,3a,3c,3e,40,42,44,46,48
|
Follow Sample datas stored like Protracker.
Nothing is packed..
The sample data start address is ALWAYS even !. That means that you have
to bypass one byte if the current address is not even !!
|
|