Amiga protracker for windows

ProTracker 2 clone for Windows/macOS/Linux, by 8bitbubsy.

Aims to be a highly accurate clone of the classic ProTracker 2.3D software for Amiga.
Has additional audio filters and audio mixer improvements to make it sound close to a real Amiga computer.
What is ProTracker? Read about it on Wikipedia.

Windows/macOS binary releases can always be found at 16-bits.org.

Linux users can try to search for the «pt2-clone» package in the distribution’s package repository, but it may not be present.
If it’s not present, you will unfortunately have to compile the program manually, which may or may not be successful. Please don’t contact me if it didn’t go well, as I don’t fully support Linux on my tracker clones.

pt2-clone

ProTracker 2 clone for Windows/macOS/Linux

Aims to be a highly accurate clone of the classic ProTracker 2.3D software for Amiga.
Has additional audio filters and audio mixer improvements to make it sound close to a real Amiga computer.
What is ProTracker? Read about it on Wikipedia.

Releases

Windows/macOS binary releases can always be found at 16-bits.org/pt2.php.

Note to Linux users

  • On some distros, a «pt2-clone» package may be available in the distribution’s package repository
  • protracker.ini should be copied to ~/.config/protracker/ (or ~/.protracker/). If you do this, make sure you delete protracker.ini if it exists in the same directory as the program executable. You can find an up-to-date copy in the source code tree at /release/other/ (or inside the Windows/macOS release zips at 16-bits.org/pt2.php)

Note to macOS users

  • To get the config file to load, protracker.ini has to be in the same directory as the .app (program) itself

Handy keybindings

  1. Press F12 to toggle audio output between Amiga 500 and Amiga 1200. Amiga 500 mode uses a 4.42kHz 6dB/oct low-pass filter that matches that of a real A500.
    If you want this to always be on, have a look at the config file.
    Note: This must not be confused with the «LED» filter, which is a completely different filter.
  2. Press SHIFT+F12 to toggle stereo separation between centered (mono), custom (set in the config file) and Amiga (100%)
  3. Press CTRL+F12 to toggle BPM timing mode between CIA (most commonly used) and vblank. Only do this if you know what
    you are doing!
  4. Press ALT+F11 to toggle real VU-meters. This will change the fake VU-meters into real, averaged VU-meters.
    This can also be permanently activated by editing the config file
  5. Press F11 to toggle fullscreen mode. Again, this can also be permanently activated in the config file

Screenshots

Screenshot #1

Screenshot #2

Compiling the code

Please read HOW-TO-COMPILE.txt file in the repository.

PS: The source code is quite hackish and hardcoded.
My first priority is to make an accurate clone, and not to make flexible and easily modifiable code.

07 August 2010, 10:11

 
#1

Registered User

 

 

Join Date: Sep 2009

Location: Norway

Posts: 1,735

[PROJECT] ProTracker 2 clone for modern platforms


ProTracker 2 clone for Windows/macOS/Linux

Aims to be a highly accurate clone of the classic ProTracker 2.3D software for Amiga.
Has additional audio filters and audio mixer improvements to make it sound close to a real Amiga computer.

Screenshots

Releases

Windows/macOS binary releases can always be found at 16-bits.org.

Linux users can try to search for the «pt2-clone» package in the distribution’s package repository, but it may not be present.
If it’s not present, you will unfortunately have to compile the program manually, which may or may not be successful. Please don’t contact me if it didn’t go well, as I don’t fully support Linux on my tracker clones.


Last edited by 8bitbubsy; 18 July 2020 at 22:38.

 

12 August 2010, 15:48

 
#2

Registered User

 

Join Date: Dec 2002

Location: sweden

Age: 47

Posts: 442

sweet! keep it up!

 

13 August 2010, 17:26

 
#3

95th User

 

 

Join Date: May 2001

Location: Brighton/UK

Age: 49

Posts: 3,121

yeah great project keep it up! missed Protracker when i downgraded to PC

 

30 August 2010, 04:16

 
#4

Registered User

 

Join Date: Dec 2002

Location: sweden

Age: 47

Posts: 442

Hey, i tried building it but i got this error:

pt_audio.c:173:62: error: invalid suffix «-0x10» on integer constant
pt_audio.c:177:62: error: invalid suffix «-0x10» on integer constant

 

30 August 2010, 04:50

 
#5

Registered User

 

 

Join Date: Sep 2009

Location: Norway

Posts: 1,735

Quote:

Originally Posted by spoUP

Hey, i tried building it but i got this error:

pt_audio.c:173:62: error: invalid suffix «-0x10» on integer constant
pt_audio.c:177:62: error: invalid suffix «-0x10» on integer constant

Fixed. Change to #define DENORMAL_OFFSET 1E-10f

(or redownload the src)


Last edited by 8bitbubsy; 31 August 2010 at 05:16.

 

30 August 2010, 11:33

 
#6

CON: artist

 

 

Join Date: Feb 2006

Location: Poland

Age: 44

Posts: 1,254

Great work! Keep it up!

 

30 August 2010, 20:01

 
#7

Registered User

 

Join Date: Dec 2002

Location: sweden

Age: 47

Posts: 442

allright, i got a build that runs now, but the audio is VERY noisy. This is on a big endian PPC machine, endian problems?

 

30 August 2010, 20:08

 
#8

Registered User

 

Join Date: Dec 2002

Location: sweden

Age: 47

Posts: 442

also the quadrascopes are to tall, they draw outside their «windows».

 

30 August 2010, 20:59

 
#9

Registered User

 

 

Join Date: Sep 2009

Location: Norway

Posts: 1,735

Hum… Let me check into that, give me a moment. Probably a bit manipulation issue.

EDIT:

For the quadrascopes, on line 29 in «pt_visuals.c» change:
_y += ((~v[i].data[fracPos] * (v[i].vol >> 1)) >> 8);
to:
_y += ((~v[i].data[fracPos] * (v[i].vol / 2)) / 256);

The C compilers should do bitshifting according to its endianness, but maybe they don’t. I have more to learn on that point!
See if it helps. If it does, I have a lot of code to change!

Regarding the noisy sound in your build: The audio samples get divided by 128 before output, but on your side they might get multiplied with 128


Last edited by 8bitbubsy; 30 August 2010 at 21:40.

 

30 August 2010, 21:40

 
#10

 

Join Date: Jul 2008

Location: Sweden

Posts: 2,269

Those two lines of code are not the same, but not because of differences in endianess. Endianess doesn’t affect the results of the << and >> operators, it only dictates how basic datatypes are represented in memory, so the error has to be somewhere else.

Cool project btw.

 

03 September 2010, 18:50

 
#11

Registered User

 

Join Date: Jun 2008

Location: somewhere else

Posts: 634

msvcr100.dll not found.

 

04 September 2010, 01:16

 
#12

Registered User

 

Join Date: May 2006

Location: Paris/France

Age: 53

Posts: 555

Won’t start, here. No understandable error message, like the application wasn’t installed correctly.
Running Win XP.

 

04 September 2010, 02:48

 
#13

Registered User

 

 

Join Date: Sep 2009

Location: Norway

Posts: 1,735

For hitchhikr and Asle (try it anyways):

 

04 September 2010, 08:16

 
#14

WinUAE developer

 

Join Date: Aug 2001

Location: Hämeenlinna/Finland

Age: 50

Posts: 27,008

Quote:

If you get an error message saying «Can’t find MSVCR100.DLL

IMHO it is better idea to enable static runtime library compilation setting, these «bug reports» never end (unless you include the runtime library redistributable package with the application). I have some experience

C/C++ -> Code Generation -> Runtime Library: Multi-threaded (/MT) (without «DLL» part)

 

04 September 2010, 10:59

 
#15

Registered User

 

 

Join Date: Sep 2009

Location: Norway

Posts: 1,735

Toni, your method didn’t solve it at all — but aciddose and I solved it. Got msvcrt90.lib from 2008, then I linked to it and chose «Ignore default libraries».
Binaries and source code updated.

 

04 September 2010, 12:37

 
#16

WinUAE developer

 

Join Date: Aug 2001

Location: Hämeenlinna/Finland

Age: 50

Posts: 27,008

Quote:

Originally Posted by 8bitbubsy

Toni, your method didn’t solve it at all — but aciddose and I solved it. Got msvcrt90.lib from 2008, then I linked to it and chose «Ignore default libraries».
Binaries and source code updated.

It works with winuae but perhaps there are some other option(s) that also needs to be set. It is too boring to check and you already found a working solution

 

15 September 2010, 18:48

 
#17

TDI

 

 

Join Date: Feb 2007

Location: Blitter Town

Posts: 126

I might be able to help with DISKOP on Mac. Give us a shout if so

 

16 September 2010, 12:07

 
#18

Registered User

 

Join Date: May 2006

Location: Paris/France

Age: 53

Posts: 555

Hey could make it work now ! Nice
I’ve played a (very) little with it to be very surprised by a replay mistake. Though, not being sure, I launched Protracker 1.3b (ftp://ftp.amigascne.org/pub/amiga/So…tracker13b.lha) and tried the same couple of modules with it. And I confirm the replay problem, being with sample number without note.
Please try «MOD.between 2 waters» by Doh or «MOD.back again» by 4-Mat in both version of PTK 1.3b. You’ll hear the difference quickly, I’m sure.

To the question : what replay did you use ? I mean, did you resource PTK 1.3b ?
There’s some weird stuff in these old trackers and while there’s an overall compatibility with each version, there are quite a few differences between them. Old timer musicians could probably explain

Anyway, very good work, here. It’s very nice to see again this old screen

Sylvain

 

17 September 2010, 08:55

 
#19

Registered User

 

 

Join Date: Sep 2009

Location: Norway

Posts: 1,735

Quote:

Originally Posted by Asle

Hey could make it work now ! Nice
I’ve played a (very) little with it to be very surprised by a replay mistake. Though, not being sure, I launched Protracker 1.3b (ftp://ftp.amigascne.org/pub/amiga/So…tracker13b.lha) and tried the same couple of modules with it. And I confirm the replay problem, being with sample number without note.
Please try «MOD.between 2 waters» by Doh or «MOD.back again» by 4-Mat in both version of PTK 1.3b. You’ll hear the difference quickly, I’m sure.

To the question : what replay did you use ? I mean, did you resource PTK 1.3b ?
There’s some weird stuff in these old trackers and while there’s an overall compatibility with each version, there are quite a few differences between them. Old timer musicians could probably explain

Anyway, very good work, here. It’s very nice to see again this old screen

Sylvain

EDIT: I tested the PT1.3 you linked to in WinUAE with those two modules, and no I don’t hear any difference. Are you 100% sure you didn’t run PT2.x instead? :P I really don’t hear any big difference, it does handle «sample with no note/period» like PT1.3B.

Actually, this is not a playback problem It’s a behavior in PT1.x vs PT2.x… In PT2.x, you don’t play a sample without a note, but in PT1.x you do.. You see, I’m doing the PT1.x style. The replayer is coded by me and mukunda from scratch, and I’ve spent endless of hours making it as close to PT as possible (compatibility wise).. I’m sure there’s some errors left to fix tho!

http://16-bits.org/ProTracker-win32-r26012011.zip
Please redownload to make sure you have the most recent revision.


Last edited by 8bitbubsy; 06 April 2011 at 17:05.

 

18 September 2010, 01:33

 
#20

nooly

great job!

one thing I noticed is that protracker doesn’t support samples longer than 64kb. I’m not sure if old protracker behaved like this but newer versions supported samples > 64kb. almost forgot, protracker failed to open rather obscure 15 samples MOD format.

if I’m getting this right, when it’s done then protracker could be ported to platforms like android, maemo etc.?

 

I have written a portable ProTracker 2 (v2.3D) clone in C using SDL 2. Here’s a screenshot.
What is ProTracker? Read about it on Wikipedia.

Note #1: If you’re using a French keyboard layout, you must not hold down shift while entering numbers in
the pattern data.

Note #2: If you have more than one monitor connected to your PC, and they use different refresh rates, you
might get some program issues!

PT2 clone v1.74 download: (27th of April 2025 19:49 — GMT +2 — changelog)

  • Windows 64-bit
  • Windows 32-bit (Windows XP SP3 and later. May falsely detect as a virus!)
  • macOS — Intel and Apple silicon (universal) (OS X 10.11 and later — read Mac notices below!)

Source code and more info can be found over at GitHub. Please read «HOW-TO-COMPILE.txt».

Windows important notice:

  • If ALT+F5 (paste pattern), ALT+F11 etc. doesn’t work and you have an NVIDIA GPU, you need to make sure that
    the keybindings are disabled in ‘GeForce Experience’ (if it’s installed).

macOS/OS X important notices:

  • To be able to actually run the program, you need to right click the .app/program and click «Open».
    This is only needed once, you can open it like normal after this.
  • To get the config file to load, protracker.ini has to be in the same directory as the .app (program) itself
  • A lot of important keybindings in PT are occupied and has to be rerouted or removed in the OS
  • If the fullscreen key (F11) doesn’t work, you need to hold down the fn-key as well. If it still doesn’t work, the
    F11 key might be set to «Show Desktop» in the OS settings

Linux important notice:

  • To get ALT+F4 (copy pattern) and ALT+F5 (paste pattern) working, you have to change these
    keyboard shortcuts in your OS to something else.

Palette editor tool download:

  • Windows 64-bit
  • Windows 32-bit (Windows XP SP3 and later)
  • macOS Intel and ARM (universal) (OS X 10.11 and later. Would crash, but works now!)

Here’s a ProTracker tutorial by Wasp^PWL.

Programmer 8bitbubsy very recently released a new unofficial release of Protracker 2. The new release offers many bugfixes and is optimized for  Windows, macOS, and has been optimized to work on fast Amiga computers with full support for 128kB samples. ProTracker is a legendary music tracker software for the Commodore Amiga computer. It was developed by Lars Hamre, Anders Hamre, and Sven Vahsen and released in the late 1980s. ProTracker quickly became one of the most popular and widely used tracker programs on the Amiga platform and played a crucial role in shaping the demoscene and the world of electronic music production. ProTracker expanded upon the concepts introduced by its predecessor, SoundTracker, and added numerous features that made it more versatile and powerful.

news source: GitHub & 16-bit.org / image source: GenerationAmiga / download Amiga, Windows, macOS

Понравилась статья? Поделить с друзьями:
0 0 голоса
Рейтинг статьи
Подписаться
Уведомить о
guest

0 комментариев
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии
  • Настройка proxy server windows server
  • Как вернуть компьютер в исходное состояние windows 10 при запуске
  • Как показать формат файла в windows 11
  • Можно ли установить windows 11 без uefi
  • Как сбросить пароль на windows 7 максимальная через биос