Rockstar

The Art of Code

Rockstar

To understand what this is about you absolutely should watch Dylan Beattie’s brilliant presentation about The Art of Code.

Now you know Rockstar is a computer programming language designed for creating programs that are also hair metal power ballads.

The famous Fizzbuzz program looks like this.

Midnight takes your heart and your soul
While your heart is as high as your soul
Put your heart without your soul into your heart

Give back your heart


Desire is a lovestruck ladykiller
My world is nothing
Fire is ice
Hate is water
Until my world is Desire,
Build my world up
If Midnight taking my world, Fire is nothing and Midnight taking my world, Hate is nothing
Shout "FizzBuzz!"
Take it to the top

If Midnight taking my world, Fire is nothing
Shout "Fizz!"
Take it to the top

If Midnight taking my world, Hate is nothing
Say "Buzz!"
Take it to the top

Whisper my world

On the rockstar website you can try it online. There are several implementations of Rockstar interpreters and transpilers, but most only do a subset of what Rockstar offers. So I wrote my own Rockstar to C++ transpiler in C++, that generates C++ code that can be compiled with a C++17 compiler to a native executable.

[Read More]

Rockstar

The Art of Code

Rockstar

To understand what this is about you absolutely should watch Dylan Beattie’s brilliant presentation about The Art of Code.

Now you know Rockstar is a computer programming language designed for creating programs that are also hair metal power ballads.

The famous Fizzbuzz program looks like this.

Midnight takes your heart and your soul
While your heart is as high as your soul
Put your heart without your soul into your heart

Give back your heart


Desire is a lovestruck ladykiller
My world is nothing
Fire is ice
Hate is water
Until my world is Desire,
Build my world up
If Midnight taking my world, Fire is nothing and Midnight taking my world, Hate is nothing
Shout "FizzBuzz!"
Take it to the top

If Midnight taking my world, Fire is nothing
Shout "Fizz!"
Take it to the top

If Midnight taking my world, Hate is nothing
Say "Buzz!"
Take it to the top

Whisper my world

On the rockstar website you can try it online. There are several implementations of Rockstar interpreters and transpilers, but most only do a subset of what Rockstar offers. So I wrote my own Rockstar to C++ transpiler in C++, that generates C++ code that can be compiled with a C++17 compiler to a native executable.

[Read More]

Open DMX USB

Linux Driver for ENTTEC Open DMX USB dongle

Open DMX USB

Open DMX USB is an open USB to DMX dongle hardware design developed by Enttec. The Open in Open DMX USB refers to the fact that everybody is free to use the design and produce its own USB DMX Dongle without paying any licenses. Since this fits the Linux philosophy I wrote a small Linux 4.X kernel driver to make it possible to use the dongle under Linux.

Getting the Driver

The source code of the driver is now hosted as dmx_usb_module on GitHub. You can use the following git command to clone and compile the sources

[Read More]

Pacman

RGB LED Display test

First test of a new RGB LED display for a train in Canada. The display has 16 x 144 high power RGB LED’s to make sure it is readable in bright sunlight. The hardware uses a iMX6 CPU and runs a custom Linux OS. Content is send to to display via Ethernet using client specified rail/public transport network protocols.

Since it is a multiplex display it is rather difficult to film because the update rate is different from the camera framerate so it looks like it is flickering. Also because the LED’s are so bright the camera has problem finding the right exposure.

[Read More]

MPC8xx BDM

MPC8XX BDM Debugging Library

Warning: This project is from the last century (round 1999) and is probably not useful anymore (who still has a PC with a lpt port?), but I keep it here for historic reasons.

The MPC8XX Library is a library to control a Motorola PowerPC processor of type MPC8xx via its BDM debug port. It is based on the GDB patch written by Frank Przybylski of VAS GmbH. The main difference with the GDB patch by Frank Przybylski is that the BDM functionality is put in a shared library and so can also be used by other applications like, for example, a FLASH loader or an automated board test program.

[Read More]
gdb  foss  linux