(32 replies, posted in Sinclair)

the arrown dropdown list is a great addition, thanks.

For the makefile, if you change clang++ to g++, there is still an error with LDFLAGS, because we must remove -stdlib=libc++ as well (maybe it has been changed in g++ > 5). I don't know if there is a clean way of switching to clang++ to g++, I've tried something like

ifeq "$(CC)" "clang++"
    LDFLAGS        = -stdlib=libc++ -L/usr/lib -lallegro -lallegro_image -lallegro_font -lallegro_primitives -lallegro_dialog -lallegro_audio
   LDFLAGS        = -L/usr/lib -lallegro -lallegro_image -lallegro_font -lallegro_primitives -lallegro_dialog -lallegro_audio

but it doesn't work like that.

I've made a pull request for the audioBuffer thing. What is the difference between the original code and your fix to make it compile on g++ 4.8? If you think it might be a problem, just don't integrate the pull request. https://github.com/utz82/bintracker/pull/4/files


(32 replies, posted in Sinclair)

yes, numbers are working ok in the pattern data, only when editing names there is this freeze. But this computer has some strange behaviors, it's also on this one I have massive slowdown when using 1tracker. It's one of my most powerful computer (core i5, 8 Gb ram), I just think I need to install a new system from scratch on it.


(32 replies, posted in Sinclair)

it works from another computer, so I guess it's the other one which has a limitation or a problem but I don't know what it could be. Your fix did the job for the numbers, sorry for the fuss.


(2 replies, posted in Sinclair)

it looks nice, I like isometric games. I didn't know the music.


(32 replies, posted in Sinclair)

ah sh**, I've double checked, I've even compared with the code on my other computer, and didn't notice it was because of this. Thanks. But it's the same, it hangs. Now I must just test with my other computers which were working before.

I have also an other bug, even from the beginning, sometimes the screen is mixed up when I start bintracker:


when I pass the mouse over a mixed up icon, it displays just below the menu, it's just shifted. It happens at random.


(32 replies, posted in Sinclair)

hmm, maybe it's something else, because it still hangs if I change language in settings.ini or if I comment your modified code. Maybe it's a problem on this 3rd computer. I'll test it on tuesday on the others. I made the compilation via ssh, using a remote computer.

I've also tried to compile bintracker on this 3rd computer, but I have the problem with audiobuffer. I've changed the part according to your simplified code, but I still get this:

g++ -c -O2 -std=c++11 -ffast-math  -o sound_emul/sound_emul.o sound_emul/sound_emul.cpp 
sound_emul/sound_emul.cpp: In member function ‘void Sound_Emul::update_audio()’:
sound_emul/sound_emul.cpp:86:13: error: ‘audiobuffer’ was not declared in this scope
make: *** [sound_emul/sound_emul.o] Erreur 1

I don't understand, it's the same allegro 5.2.2 lib on the 2 computers sad


(32 replies, posted in Sinclair)

I've done it, but unfortunately, there is no output!


(32 replies, posted in Sinclair)

utz wrote:

grrr damnit!
Ok, could you please add the following in line 992 of status.cpp

cout << al_keycode_to_name(keyEv.keyboard.keycode) << endl;

then run bintracker from console, try to enter some letters and numbers, and tell me the output?

this file only has 766 lines!


(32 replies, posted in Sinclair)

I've compiled the latest version from github. Now when I enter the field for changing the name, if I type something (number or letter), it just hangs the window, I cannot exit the field. I can still navigate in the menus, but can't exit from there either.

ok, I'm still working on the software, and today I'll try to assemble 2 more boards smile


(32 replies, posted in Sinclair)

just for the record, I'm making a song in adlib tracker, and discovered the del key is working like in bintracker. I'm not a big fan of this, but it can make sense. Do as you wish, or make a survey (or an option in the config file)! wink

I've tried my binary (which is working) on my main computer. There are still the flashes. I think it's because of the graphical board, it's ATI and sometimes I have odd things on this computer.

alt+6 is working now. alt+7 does nothing, either in French, EN or DE (with the associated setxkbmap). I'm wondering if it's not the stupid windows manager (kde) which is doing this. Yeah, I've checked it, they have a shortcut (well hidden), with alt+`. But ` should be with altgr, not just alt. Anyway, i've removed it and it works now. On the Mate desktop, there is also another shortcut associated to this key combination!

Jangler commited some code yesterday which should, in theory, fix this issue. Though it's quite likely the bug is still there. Let me know if this keeps popping up.

I've only tested quickly, i looks ok so far but I should check more and better.

I agree, it's somewhat counter-intuitive at the moment. Arrow keys should be possible. Mouse support would be great, but very difficult to implement. Still, it should happen at some point.

yeah, with arrows it would be great. Mouse is not mandatory, as we often use keyboard more on a tracker.

This works the same way as the "special" commands. Just type some letter and you'll get the drop-down list.

ah, yes, thanks.

You mean it actually lets you enter a literal &? Dafuq

yes, with or without shift it's the same: I get the litteral replacement for the symbols, "minus", "amperstand" etc. It's something from allegro I think. It's only on French keyboard.


(32 replies, posted in Sinclair)

well, I have a new problem, and a new bug...

With the sequence list:

first, I made a pattern. And I wanted to make a variation on it, so I "cloned" the first pattern. But my cloned pattern name (blk1) has just replaced my original pattern (pattern00) in the sequence list, and I can't find a way to select the first pattern (pattern00) which as just disappeared. The arrows around the pattern name are supposed to cycle though pattern already in sequence, so I can't get my pattern00 back. (I solved this easyly by editing the text file of course)

The manual also says "Any patterns not used in the sequence will not be saved in your module file, and will be lost when you exit Bintracker or load another track.".

I find this very dangerous! Deflemask is doing the same and I've already lost some patterns because of this. Is there a reason you can't keep it in the mdal file? It wouldn't cost much space in the source file. I would find this more secure. Yet, when I've loaded my mdal file, all my cloned patterns, which are not used in the sequence, were still present in the file. So I don't understand this warning, maybe it's not implemented yet?

Now for the bug, with the FR keyboard, when I want to enter for example blk1, I type blk shift + 1, and instead I get blkampersand, same for eacute instead of 2 etc.


(32 replies, posted in Sinclair)

I've worked a bit with bintracker. Very pleasant and quite intuitive to use. It reminds me somehow of 1tracker.
Text file format rocks! (I'll tell later why)

I've changed the colors in the settings.ini, now it looks so nice.
I've set the keyboard to FR. Now I have something odd. I won't open an issue because it's maybe a quick fix.

Alt+1...+5 is working fine for changing the octave. Alt+6 is decreasing the length of the song instead of choosing octave 6! Alt+8 is increasing the octave, as expected. Alt+7 does nothing. In english keyboard mode (I've changed my keyboard with setxkbmap us), it's similar, except that alt+6 is working as expected.

So as I said, I saved my file first, then made a new version with more data in it. Then I removed some rows with the alt+6 command. I didn't want to undo, so I just saved my file under a new name, and compared it with the first version with a diff tool to retried the infos from the deleted rows.

Really, text source rules! (something I like too in 1tracker)

For the deletion of some notes, I found it strange that "del" is shifting all values in the column up. Probably some trackers are doing this as well, but I think it's more commun to just delete the value with "del", and shift values up with "backspace" (like in 1tracker or milkytracker). But we can get used to it. Also the problem is sometimes the keyboard responds odd and I get two inputs instead of one. So instead of deleting 1 note I wanted to remove, and stay on the same place, it will delete the note and the next one not supposed to be removed.

For the selection of special commands, I didn't understand how to select the value until I read the manual. Well maybe I'm a bit dumb, but when I began to type, I got a selection list. I tried to select one item with the arrows, but it didn't work. I tried to click, it didn't work. I tried to type the first letter of the command, hoping it would cycle through all the item (on/off), didn't work either. Then I discovered we have to enter the first letters. It's that simple. But maybe using arrows or cycling with only one letter would make it simple for newcomers, just an idea (maybe using mouse it too overkill). After, I noticed for some commands, like up/down, just typing the first letter works so it's good when you're used to the tool smile

Now I'm working more on my tune!


(32 replies, posted in Sinclair)

when I started with MDAL, I've started a few projects, made in betaphase. In them I put the SLIDESPD command. It seems it's not supported by bintracker, when loading an old file I get:

FATAL ERROR: In pattern "ptn1": Unknown command "SLIDESPD" found in A=f3, B=d2, MIXA=and, MIXB=and, PHA=0, PHB=4, PSCA1=none, PSCC=none, SLIDESPD=0, DMOD1=off, SPD=

it seems in bintracker it's called SLSPD. The same goes for DMOD1 which is called DMODA now.

After changing this my tunes just load fine smile


(32 replies, posted in Sinclair)

yes, that's the problem with LTS, it's supported until april 2019, and they release latest packages for Firefox, Libreoffice, and all that sort of stuff, but for development packages you stay with the old ones. And they made also a stupid decision for the linux mint "KDE" version, you can't upgrade to latest version (18) because they said new KDE 5 version (plasma) is so much different that you have to install a new fresh version of the system, which is a complete PITA.

I've compiled bintracker with your modified line. And now it works on my main computer!! Great, I'll be able to play with it. Thanks a lot!


(32 replies, posted in Sinclair)

my binary didn't work on the other computer (./bintracker: /usr/lib/x86_64-linux-gnu/libstdc++.so.6: version `CXXABI_1.3.8' not found (required by ./bintracker) so I had a closer look at the liballegro PPA, and they said:

Now, run these commands to install the development versions of Allegro:

sudo apt-get update
sudo apt-get install liballegro5-dev

actually, this is only the basic lib, but images, sounds etc are in different OTHER packages, so I've installed them. So it could compile a bit. After a while, it got an error (sound_emul/sound_emul.cpp:85:20: error: ‘std::ostringstream’ has no member named ‘swap’    ostringstream().swap(audioBuffer);) but maybe it's because my gcc is 4.8 in this computer. Oh well, I'll try to install gcc 5.4 from source tomorrow then...


(32 replies, posted in Sinclair)

I've finally installed allegro from git sources, and now it works smile
https://wiki.allegro.cc/index.php?title … nux/Debian

well, compilation works, but when I start bintracker, it says:

FATAL ERROR: Allegro initialization failed.

I'll try the binary on another computer

=> EDIT I've removed all other allegro lib I've had, now I can launch it, but the window screen is flashing!! It can play sounds, though.

I've got them, and soldered a first one, it seems to work!


https://www.instagram.com/p/BY6k1jtB9Mw … by=garvalf

I'll post a video in a few days.


(32 replies, posted in Sinclair)

I can't compile it.

I've installed allegro from https://wiki.allegro.cc/index.php?title … buntu_PPAs (so I have allegro 5.2.2)

I think it worked with an alpha version you gave to me, but it's no longer the case. Now I get this on the same computer:

g++ -c -O2 -std=c++11 -ffast-math -no-pie -o bintracker.o bintracker.cpp
In file included from bintracker.cpp:5:0:
gui/gui.h:5:36: fatal error: allegro5/allegro_image.h: No such file or directory

I've been on http://download.gna.org/allegro/allegro/5.2.1 but it doesn't download anything.

Which minimum version of gcc or clang does it need? The latest gcc on my system (linux mint 17.3 LTS) is 4.8 I think. For clang, even with Mint 18, latest version is 3.8
g++ -c -O2 -std=c++11 -ffast-math -no-pie -o bintracker.o bintracker.cpp
g++: error: unrecognized command line option ‘-no-pie’
make: *** [bintracker.o] Erreur 1

clang++ -c -O2 -std=c++11 -ffast-math -no-pie -o bintracker.o bintracker.cpp
clang: error: unknown argument: '-no-pie'

on a newer system, there is the problem with allegro5/allegro_image.h

most work was for drawing the PCB because I didn't know anything about it. But it was an interesting experience. We can consider there are "only" 2 projects on it, the one for playing AY chiptunes, and the other one is for generating all sort of sounds from arduino, so it includes beeper, mozzi and sid with the same output. The low pass filter is not compulsory, but it should sound better with it.

I still haven't received the PCB yet... it's probably blocked because of some regulations.


(7 replies, posted in Sinclair)

oh, ok, no problem, I understand that. But I'm very glad to learn it will be included into an album because this tune is wonderful! So you don't mind this little extract is on instagram? (It's only 15 or 20 seconds). I'd really like to get the .tap if you don't mind. I won't spread it of course!

oh yes, I remember well now.


(7 replies, posted in Sinclair)

I'm just wondering if it's this engine which was used in this tune, could you confirm please?


@Utz do you have this awesome song somewhere so we can listen to it?

I'm back. Yes, it was great to see everyone!
the PCB hasn't arrived yet! But it's in France at the moment, so it's just a matter of few days...

number 1 for what?


I'm working on a PCB for creating a general purpose chiptune platform:

- 1 bit music player (on arduino)
- it can get music from the arduino memory. 1 bit music don't need much memory so this time a whole song, even a complex one, can fit in the memory. It might be possible to stream data from SD if the 1-bit music engine chosen is the same for all the songs.
- it should be possible to create a 1-bit synth, but I don't know why. Probably not an easy task.

- AY-3-8910 emulator (on atmega8), driven by the arduino nano.
- It can replay sinclair, atari, amstrad chiptunes from the sd card
- it might be possible to use it as a (very simple and dirty) AY synth! The avray creator helped me for this, for sending simple notes, I just need to code the synth now, I'll reuse parts from the sid synth)

- Sid emulator (on arduino)
- it can replay some sid files, from the arduino memory, which is limited (so tunes will be cut). I'd like to find a way to stream the tune from the sd card, it's probably possible
- it can be used as a Sid synth (see previous messages)

- Mozzy synth (see https://sensorium.github.io/Mozzi/ ), which can output fun FM sounds and many other effects.

There will be also room for adding light sensors and use the whole thing as a noise box...

It's not rocket science, I've just reuse code and parts from other projects. For the beeper part, it just adds a low pass filter (which might be improved for this purpose, I'm reusing the one adviced from AVRAY)

Besides a low pass filter there is also:
- arduino nano
- SD card reader
- Midi DIN-5 connector

Some  sound examples:

- beeper music: http://garvalf.free.fr/index.php?page=blog_2017-02-12

- http://picosong.com/HUGM/ (Xenon / Spectrum)
- http://picosong.com/wseMn/ (Cauldron / Amstrad)
- https://soundcloud.com/memento-somniare/sidarduino-test (C64 SID synth)
- http://battleofthebits.org/arena/Entry/ … ter/26509/ (personal creation, for zx spectrum)

I'll sell the PCB card alone (if it works as expected), for a cheap price like 3 or 4 € without shipping , and also some complete kits and assembled product (should be below 20 € without shipping)

The github project:

A picture of the PCB: