Jinx! V2.0 – A double Jinx! in One …


mainIm proud to be able to release the new Version 2.0 today. After month of work I think I reached a stable state with all the new features V2 will introduce.

First of all: We doubled Jinx! So we now have 8 effect generators at all. To use all these generators in a usefull way, I also made some additions to the scene store. You can now save full (all 8 generators) or half (only one side, means 4 generators) scenes and assign the half scenes to any side of Jinx!. So you can really work with the different sides and crossover single (half) scenes with the main crossfader, this also works with the chase engine.
The remote control gots enhanced to use 8 channels now, so you can assign half scenes to the left or right side in Jinx! via remote as well as you can control the main crossfader and the crossfade mode via remote control. Additionally the remote control gots a complete Midi support.

Another cool feature are the regions. You can now set a region (size and position inside your matrix) to every single generator, so you can divide your matrix into sections or simply build more complex and cool matrix effects.

A lot of work has also been done for the gui. We now have a custom gui, which can freely be colored or you can use the classic window controls like in Jinx! V1. Additionally the scene and chase window is now fully resizable as well and the window sizes, states and positions gets saved into a new options file, which is independent from your show files.

Here is a small change log with a few notes on using the new features, please look into the online help/manual for more explains:

  • implement 4 more effect generators
  • implement full and half scenes: on saving a scene you will get asked if you want to save the left or right side or everything (full scene), a full scene will save everything like in V1 and half scene will save only one side without the main mix. To recall a half scene you can click it with the left mouse button to assign left or the right mouse button to assign it right. Inside the show mode you have 2 buttons two set the side the next selected scene will get restored, so you can use it with a touchscreen and dont a need a right click in there. Full scenes are marked inside the scene list with a [F] as prefix.
  • make the chase engine working with full and half scenes and add the crossfade mode into the crossfade step
  • add more channels to the remote control, so you can assign half scenes to the left and right side of Jinx! and additionally added a remote control for the crossfader and the crossfade mode
  • add Midi as input protocol to the remote control, the remote controls can be freely patched to any midi channel programm or control change
  • redesigned gui to use custom controls which can be freely colored. You can choose between classic windows controls, 2 fixed color schemes and custom color schemes which can be made by yourself (see evil_red_demo_gui.col file and the manual for more infos)
  • chase and scene windows are now fully resizable
  • window size, state and positions gets saved into the new options.dat file as well as the selected color scheme
  • implement regions to every generator (R button), so you can size and place an effect freely into your matrix instead of always using the full matrix
  • you can now skip the smooth autofade on the main mix by doing a double click on the buttons to directly jump to the wanted position
  • optimize output routines to reduce jitter and latency on serial and network protocols
  • implement artnet sequence numbers into artnet protocol (switchable)
  • a lot of small bugfixes for the gui and error handling

I hope you enjoy the new version and you will keep me always up to date with new ideas you have.

Jinx! V1.51b – Another Hotfix


There was another bug inside the load/import routine. Scrolling text effects from old file version didnt get imported correctly to V1.51.

Jinx! V1.51a – Hotfix


There was an ugly bug inside 1.51 which could give you problems when storing scenes with scrolling text in it. Because it copied too much data inside the scene store it could overwrite parts of the following scene. Also it would give you some weired effects when copying a scrolling text effect into the internal clipboard.

So this is marked as important hotfix, if you already loaded the version 1.51 please update to 1.51a !

Jinx! V1.51 – Small changes for scrolling text


Just a small update with some bugfixes and minor changes for the text engine.

First of all Jinx!Script has become a modulo operator (%), see the manual for more information. The other changes affects the text engine. In scrolling text, as well as within the expanding shapes effect, it is now possible to use the global font list from your system. Jinx! will display its own small font list as always, but you can invoke the complete list by selecting „More …“ inside the font list and you will get all fonts that are installed on your system to work with (including symbol fonts). The second change inside the scrolling text engine is the possibility to load the text dynamically from a file. After activating and choosing a text file the text that will be displayed gets loaded from the file. The file will also be monitored for changes (last write time stamp) and Jinx! will reload the text when needed. This is especially useful to display dynamic data you get from another application, for example the actual artist and title that is playing within a media player. Only the first textline will get loaded and the file has to be ANSI encoded, the global text limit with 255 chars inside Jinx! will take place in this option as well.


  • implement modulo operator into Jinx!Script (%)
  • implement global font table, to make all system fonts available
  • integrate global font table into scrolling text, invoke complete table by selecting „More …“ inside the list
  • integrate global font table into expanding shapes as well
  • correct docked scene window position after closing chase window with the close button
  • adding pixelstep into Jinx!Script demos: moving tile puzzle, bouncing balls
  • implement text-from-file into scrolling text to dynamically load the text from file, the file gets monitored (last write timestamp) and reloaded if needed, file has to be ANSI encoded

Just a short summer break …


Hi @all,

I just wanted to send a sign that Jinx! is still alive 🙂 But within in the summer month, I have lot of other work to do. So coding Jinx! further on will have to wait a little bit.

I also wanted to thank everyone who support Jinx! and sent me nice mails and ideas, you all keep this software alive and I am always open for new ideas and additions, so feel free to contact me and send me your opinions.

What I am still missing are some more reactions about Jinx!Script, which is really powerful. Anyone has already coded some effects? Maybe we can share some cool scripts if you want on this website.

I wish you all a great summertime.


Jinx! V1.5 – Introducing Jinx!Script


The new Jinx! V1.5 release will bring you endless possibilities and the power to do whatever you want: Welcome to Jinx!Script, just code your own effects fast, easy and with the full flexibility only a programing language can give you.

Jinx!Script is very small but powerful programming language which uses an easy to read and learn BASIC like dialect.  You have all necessary functions and commands like loops, conditions and even simple sub routines to clearly code your ideas. You can use easy grpahic commands to plot pixel, draw lines, rectangles and circles and you even can draw text onto your matrix. You also have access to the autocolor values and have the possibility to use an audio trigger inside your own effects. Additional you can export config variables into the Jinx!Script Engine Window, so you can change parameters without editing your source and can even store these exported values into scenes. So you can use effect variations inside scenes without changing anything inside your yource codes.

The Jinx!Script engine is a small byte compiler which will translate your code at runtime into its own byte format, which will be run by a small integrated virtual machine. It is my first interpreter/compiler I ever wrote, so it was a lot of more work then I ever thought, you cant imagine how complicated it can be to calculate a mathematical string like ((3+4)*16/3*sin(90/2)-16^2)/(999-13/2) … I worked hard on the engine and it looks very stable and hopefully bugfree to me, so I decided to release it.

I added some really nice and useful sample sources into the Jinx! package and ready to run demo scenes, so you can easily test the whole feature. Look at the sample source codes and start to code your own effects. Please take a look at the manual/help file. I tried to write down everything you have to know about Jinx!Script, the commands and the programing rules.


  • small bugfix for copy and paste, which can lead to troubles when you c&p a webcam generator
  • small internal optimizations for text drawing in scrolling text and expanding shapes
  • Implement Jinx!Script Engine



Jinx! V1.41 – Some small additions to V1.4


I added some small additions to fulfill some user wishes. In Version 1.41 the file pathes inside the avi player, image viewer and jinx file player will be safed relative, when possible. When the linked files are on another drive or network share, the path will still be safed absolut.
Additionally I implemented the long awaited unicode text into the scrolling text and expanding shapes engine. So you can use unicode characters to display kyrillic, chinese or whatever language you want.


  • safe file pathes relative instead of absoult in image viewer, avi player and jinx file player if possible
  • support unicode text inside scrolling text and expanding shapes

Jinx! V1.4 – New VU Meter and Webcam support


After some lack of time I finished the version 1.4 today. There are some bugfixes as well as some new generators and changes for the spectrum analyzer. First of all sACN is now able to send and receive multicast pakets to match the complete standard, the version check bug on importing scenes is fixed and multiple instances are back. The AVI Player is now able to automatically use the real frame rate which will be given by the avi file itself. A bit more changes have been done to the Spectrum Analyzer. You can now switch the direction the bars will follow to all 4 possible directions and you can reverse the bands as well (means high frequencys left, low frequencys right for example), additionally you can set the bar colors to smooth, so they will fade over to the next color instead of simply changing it.
One new generator is called Audio VU Meter. Its very similar to the spectrum analyzer, but will give you the overall rms level instead of frequency bars. You can choose stereo (2 bars) or mono and you can adjust the bars to any direction, width and matrix position. There are 3 colors like on the spectrum bars and they can be switched to color fading as well. For the Audio VU Meter you can also disable the autmatic gain control, so it will show the real level while the spectrum analyzer or another generator channel can use the agc to give a full screen picture.
Another new generator is called Capture Webcam. This will give you the possibility to use any direct show / wdm based webcam to transfer live pictures to your matrix. It will enum and give you all connected webcams to choose one and you can adjust the picture with the well known aspect ratio, smooth resize and color options (brightness, saturation, gamma). If you want to use any ip network camera, you can use a free available direct show filter which will convert any mjpeg capable ip camera into a wdm/direct show device:

I wish you a happy easter and a lot of fun with the Jinx! version.


  • implement sACN multicast for send and receive
  • make multicast (sACN) and broadcast (Art-Net) switchable in device config
  • allow odd chanel counts in Art-Net devices
  • correct artnet state on artnet poll for remote control
  • dont start dialog windows outside screen
  • fix context menu area on show mode
  • small fix for gamma lookup tables
  • fix file version check on importing scenes
  • rewrite some event handling routines and allow multiple Jinx! instances
  • option to use real framerate in avi player (will disable speed control for that channel)
  • implement bar direction, reverse bands and color fade option into spectrum analyzer
  • new engine: Audio VU Meter with bar direction, position and width config and switchable agc
  • new framegrabber engine: Capture Webcam to allow live broadcasting on your matrix with wdm/direct show devices, this engine is limited to 2 channels

Jinx! V1.32 – dynamically load FTD2XX driver


As already said with the Version 1.31, there was a dependency with the ftd2xx.dll and Jinx! didnt start without these dll or an installed FTDI driver. Version 1.32 now loads this driver dynamically when its needed (Enttec OpenDMX USB), so there is no dependency anymore and you can start Jinx! without this dll or an installed driver.


  • load ftd2xx.dll dynamically to avoid application dependency
  • avoid appcrash if a serial based device is added without any serial port in the System
  • change glediator file recorder to match the latest file Format used with Glediator 2.0.3 and the final UIB
  • make grid/preview background color switchable (grey/black) in Matrix Options dialog

Jinx V1.31 Bugfix for Windows 8.1


A small bugfix for Windows 8.1 Users. The version 1.3 crashed while starting. Also known is that Jinx! 1.3 is only able to start when a ftd2xx.dll (FTDI driver) is installed. I try to load it dynamically in the next version, so that we dont depend on it unless we need it (it is needed for the Enttec OpenDMX driver). In the meanwhile you can download the dll here if you dont have a FTDI driver installed and simply store it inside your Jinx! folder.