back to the main DeliPlayer site
 FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

Strange protracker modules!

 
Post new topic   Reply to topic    deliplayer.com Forum Index -> Discussions
View previous topic :: View next topic  
Author Message
Coma



Joined: 03 Jan 2024
Posts: 81
Location: Modland

Posted: Mon Jan 12, 2024 12:48 pm    Post subject: Strange protracker modules! Reply with quote

Has anyone ever seen a pro(sound/noise/etc)tracker module where the "M.K." symbol is positioned at byte 1208 instead of byte 1080? I just found a whole bunch of those among my unsorted modules. No player I've tried will play them. Any ideas?
Back to top
View user's profile Send private message
peter



Joined: 18 Dec 2023
Posts: 90

Posted: Mon Jan 12, 2024 1:14 pm    Post subject: Reply with quote

I don't have any of these modules, but here's my guess:
1080+128=1208, ie. the modules are identical to normal PT mods, except that the size of the sequence table has been doubled (allowing now 256 pattern positions instead of only 128). Those modules should play for quite a while...
Back to top
View user's profile Send private message Send e-mail
Coma



Joined: 03 Jan 2024
Posts: 81
Location: Modland

Posted: Mon Jan 12, 2024 1:26 pm    Post subject: Reply with quote

Ah, that sounds plausible... any chance of implementing support for it?
Back to top
View user's profile Send private message
peter



Joined: 18 Dec 2023
Posts: 90

Posted: Wed Jan 14, 2024 3:48 am    Post subject: Reply with quote

Send them to me, then I'll test if the mods really have a sequence table which is double as long as normal.
Back to top
View user's profile Send private message Send e-mail
Coma



Joined: 03 Jan 2024
Posts: 81
Location: Modland

Posted: Wed Jan 14, 2024 9:32 am    Post subject: Reply with quote

OK! I'll put a little package on your ftp.
Back to top
View user's profile Send private message
Muerto



Joined: 22 Dec 2023
Posts: 122
Location: Denmark

Posted: Thu Jan 15, 2024 7:23 am    Post subject: Reply with quote

ey!

Cant you put them a special folder on modland, for freak dload?? Cool
_________________
-- You cant escape Muerto --
Back to top
View user's profile Send private message MSN Messenger
Coma



Joined: 03 Jan 2024
Posts: 81
Location: Modland

Posted: Thu Jan 15, 2024 9:41 am    Post subject: Reply with quote

Hehe... sure, they now live in the temp folder!
Back to top
View user's profile Send private message
peter



Joined: 18 Dec 2023
Posts: 90

Posted: Thu Jan 15, 2024 11:40 am    Post subject: Reply with quote

Sorry to disappoint you, but the modules are normal mods - no new format. What makes them a bit longer is a 128 byte large header (containing trash) at the beginning. No double-size sequence table:(
BTW - better remove those mods from modland, to prevent preople from downloading them:)
Back to top
View user's profile Send private message Send e-mail
Coma



Joined: 03 Jan 2024
Posts: 81
Location: Modland

Posted: Thu Jan 15, 2024 12:02 pm    Post subject: Reply with quote

Ah, too bad... thanks for checking them!
I guess this is some sort of rip-protection. I'll cut'n'paste them back to their proper format! No module shall escape! Twisted Evil
Back to top
View user's profile Send private message
Waxhead



Joined: 23 Oct 2024
Posts: 29
Location: Norway

Posted: Wed Nov 17, 2024 11:55 am    Post subject: Reply with quote

Just in case you run into other strange modules here's the fileformat from the original ProTracker 2.3A package

Quote:

Protracker 2.3A Song/Module Format:
-----------------------------------

Offset Bytes Description
------ ----- -----------
0 20 Songname. Remember to put trailing null bytes at the end...

Information for sample 1-31:

Offset Bytes Description
------ ----- -----------
20 22 Samplename for sample 1. Pad with null bytes.
42 2 Samplelength for sample 1. Stored as number of words.
Multiply by two to get real sample length in bytes.
44 1 Lower four bits are the finetune value, stored as a signed
four bit number. The upper four bits are not used, and
should be set to zero.
Value: Finetune:
0 0
1 +1
2 +2
3 +3
4 +4
5 +5
6 +6
7 +7
8 -8
9 -7
A -6
B -5
C -4
D -3
E -2
F -1

45 1 Volume for sample 1. Range is $00-$40, or 0-64 decimal.
46 2 Repeat point for sample 1. Stored as number of words offset
from start of sample. Multiply by two to get offset in bytes.
48 2 Repeat Length for sample 1. Stored as number of words in
loop. Multiply by two to get replen in bytes.

Information for the next 30 samples starts here. It's just like the info for
sample 1.

Offset Bytes Description
------ ----- -----------
50 30 Sample 2...
80 30 Sample 3...
.
.
.
890 30 Sample 30...
920 30 Sample 31...

Offset Bytes Description
------ ----- -----------
950 1 Songlength. Range is 1-128.
951 1 Well... this little byte here is set to 127, so that old
trackers will search through all patterns when loading.
Noisetracker uses this byte for restart, but we don't.
952 128 Song positions 0-127. Each hold a number from 0-63 that
tells the tracker what pattern to play at that position.
1080 4 The four letters "M.K." - This is something Mahoney & Kaktus
inserted when they increased the number of samples from
15 to 31. If it's not there, the module/song uses 15 samples
or the text has been removed to make the module harder to
rip. Startrekker puts "FLT4" or "FLT8" there instead.

Offset Bytes Description
------ ----- -----------
1084 1024 Data for pattern 00.
.
.
.
xxxx Number of patterns stored is equal to the highest patternnumber
in the song position table (at offset 952-1079).

Each note is stored as 4 bytes, and all four notes at each position in
the pattern are stored after each other.

00 - chan1 chan2 chan3 chan4
01 - chan1 chan2 chan3 chan4
02 - chan1 chan2 chan3 chan4
etc.

Info for each note:

_____byte 1_____ byte2_ _____byte 3_____ byte4_
/ \ / \ / \ / \
0000 0000-00000000 0000 0000-00000000

Upper four 12 bits for Lower four Effect command.
bits of sam- note period. bits of sam-
ple number. ple number.

Periodtable for Tuning 0, Normal
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

To determine what note to show, scan through the table until you find
the same period as the one stored in byte 1-2. Use the index to look
up in a notenames table.

This is the data stored in a normal song. A packed song starts with the
four letters "PACK", and then comes the packed data.

In a module, all the samples are stored right after the patterndata.
To determine where a sample starts and stops, you use the sampleinfo
structures in the beginning of the file (from offset 20). Take a look
at the mt_init routine in the playroutine, and you'll see just how it
is done.

Lars "ZAP" Hamre /Amiga Freelancers
Peter "CRAYON" Hanning /Mushroom Studios/Noxious

Back to top
View user's profile Send private message MSN Messenger
Display posts from previous:   
Post new topic   Reply to topic    deliplayer.com Forum Index -> Discussions All times are GMT - 8 Hours
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © 2001, 2002 phpBB Group