Setting Up Midiyoke And Glovepie On Windows 7

Home :: Reviews of DJ equipment :: Setting Up Midiyoke And Glovepie On Windows 7Reply
Setting Up Midiyoke And Glovepie On Windows 7
Posted on: 25.05.2011 by Joan Kollmorgen
I've had a few people asking for help getting Midiyoke and Glovepie working together on Windows 7 in order to run scripts for modded gear.

I still like using XP but decided to install Windows 7 64 today to try and see why people were having problems.

I can understand some of the confusion because it's so much easier to set up on XP.

The problem is the lack of a midimapper in Windows 7.
Anyway here's how to get them communicating.

Edit: Because me and fbonito have had a similar problem with Midiyoke I'm going to recommend that you use LoopBe instead of Midiyoke as it seems to be more stable on Windows 7.

1, Download and install LoopBe1 from here

http://www.nerds.de/en/download.html

4, Download and open Putzlowitsch's Vista MIDI Mapper Control Panel from here

http://www.sierrahelp.com/Utilities/...DI_Mapper.html

From the drop down menu select Loopbe Internal Midi then click apply

5, Download and install Glovepie from here.

http://glovepie.org/poiuytrewq.php

I used the top link.


Now start Glovepie and load a script or make your own then run it

Here is the script i made the other evening for 2 gamepads which works great on XP and 7

http://www.mediafire.com/?dyap2duo5025mo6
Jacqualine Arroyos
02.06.2011
stop... stop everything....

i believe i'm getting somewhere...

:-D
:-D

i thought i had found something in the preliminary documentation of glovepie...

there is a command that says:
The "Any" object, for any kind of gamepad

i've tried with just 3 buttons:

midi.csharp0 = any.Button1
midi.d0 = any.Button2
midi.dsharp0 = any.Button3

and it's working...

now i just need to figure out how to make it work for two gamepads...

any thoughts???
Chasidy Heckenbach
02.06.2011
Originally Posted by extraclassic
fbonito try this code
got confused as to which script i was commenting on - ignore
Jacqualine Arroyos
02.06.2011
nothing on that script extra classic...
Joan Kollmorgen
02.06.2011
fbonito try this code

Code:
//Extra Classics Script For 2 Gamepads
//Includes 12 Buttons Plus POV And 4 Analog Per Gamepad

midi.DefaultChannel = 1

//Gamepad 1 - Buttons
midi.csharp0 = Joystick1.Button1
midi.d0 = Joystick1.Button2
midi.dsharp0 = Joystick1.Button3
midi.e0 = Joystick1.Button4
midi.f0 = Joystick1.Button5
midi.fsharp0 = Joystick1.Button6
midi.g0 = Joystick1.Button7
midi.gsharp0 = Joystick1.Button8
midi.a0 = Joystick1.Button9
midi.asharp0 = Joystick1.Button10
midi.b0 = Joystick1.Button11
midi.c1 = Joystick1.Button12

//Gamepad 1 - POV
midi.csharp1 = Joystick1.Pov1Left
midi.d1 = Joystick1.Pov1Right
midi.dsharp1 = Joystick1.Pov1Up
midi.e1 = Joystick1.Pov1Down

//Gamepad 1 - Analogs
midi.ModWheel = Joystick.x/261 + 65
midi.Breath = Joystick.y/261 + 65
midi.Control3 = Joystick.z/261 + 65
midi.FootPedal = Joystick.roll/261 + 65

//Gamepad 2 - Buttons
midi.f1 = Joystick2.button1
midi.fsharp1 = Joystick2.button2
midi.g1 = Joystick2.button3
midi.gsharp1 = Joystick2.button4
midi.a1 = Joystick2.button5
midi.asharp1 = Joystick2.button6
midi.b1 = Joystick2.button7
midi.c2 = Joystick2.button8
midi.csharp2 = Joystick2.button9
midi.d2 = Joystick2.button10
midi.dsharp2 = Joystick2.button11
midi.e2 = Joystick2.button12

//Gamepad 2 - POV
midi.f2 = Joystick2.pov1left
midi.fsharp2 = Joystick2.pov1right
midi.g2 = Joystick2.pov1up
midi.gsharp2 = Joystick2.pov1down

//Gamepad 2 - Analogs
midi.PortamentoTime = Joystick2.x/261 + 65
midi.DataEntry = Joystick2.y/261 + 65
midi.Volume = Joystick2.z/261 + 65
midi.Balance = Joystick2.roll/261 + 65
Jacqualine Arroyos
02.06.2011
Originally Posted by zestoi
ah.... one more thought.... i know i read that recent versions of glovepie have the ability to "calibrate" analogue pots etc - could that be any use? might be worth trying anyway.

i don't have any analogues on my gamepad so i cant really check that feature out.
hum...

supposedly i have the last version of glovepie, let me look to see if i can find anything
Chasidy Heckenbach
02.06.2011
ah.... one more thought.... i know i read that recent versions of glovepie have the ability to "calibrate" analogue pots etc - could that be any use? might be worth trying anyway.

i don't have any analogues on my gamepad so i cant really check that feature out.
Jacqualine Arroyos
02.06.2011
Originally Posted by zestoi
that's a bugger... tho at least now we know where the problem is and isn't.

no clue on changing the minimum - that would require some tweaking/hacking of the actual driver the gamepad is using i guess...
:-(

it seams that the community of glovepie is down or something... i can't post anything there...

strangely it seams that i'm the only one having this problem...

and i also can't put rejoice to work...

:-(

well zespoi and extra classic.. thanks for your help
Chasidy Heckenbach
02.06.2011
Originally Posted by fbonito
bad news...

it's the same thing...

the buttons don't work when pots in zero...

:-(

is there a way that i can configure pots not be in zero? let's say, 1 or 0.1 ?

just to walk around the problem?
that's a bugger... tho at least now we know where the problem is and isn't.

no clue on changing the minimum - that would require some tweaking/hacking of the actual driver the gamepad is using i guess...
Jacqualine Arroyos
02.06.2011
bad news...

it's the same thing...

the buttons don't work when pots in zero...

:-(

is there a way that i can configure pots not be in zero? let's say, 1 or 0.1 ?

just to walk around the problem?
Chasidy Heckenbach
03.06.2011
one last debug attempt... this script won't send out any midi at all, just sets variables when the buttons are pressed, just to totally get the pots code out as well as midi interaction. can you try running this script and just confirm that the buttons still dont work when your pots are at zero?

if that's the case then there's probably some bug in glovepie and no mods to any script are going to help.

you'll need to go to the 'variables' tab in glovepie and it should TRUE etc when you press a button against the variable with the same name as the midi note that would have been output from the original script.

Code:
//Gamepad 1 - Buttons
var.csharp0 = Joystick1.Button1
var.d0 = Joystick1.Button2
var.dsharp0 = Joystick1.Button3
var.e0 = Joystick1.Button4
var.f0 = Joystick1.Button5
var.fsharp0 = Joystick1.Button6
var.g0 = Joystick1.Button7
var.gsharp0 = Joystick1.Button8
var.a0 = Joystick1.Button9
var.asharp0 = Joystick1.Button10
var.b0 = Joystick1.Button11
var.c1 = Joystick1.Button12

//Gamepad 1 - POV
var.csharp1 = Joystick1.Pov1Left
var.d1 = Joystick1.Pov1Right
var.dsharp1 = Joystick1.Pov1Up
var.e1 = Joystick1.Pov1Down

//Gamepad 2 - Buttons
var.f1 = Joystick2.button1
var.fsharp1 = Joystick2.button2
var.g1 = Joystick2.button3
var.gsharp1 = Joystick2.button4
var.a1 = Joystick2.button5
var.asharp1 = Joystick2.button6
var.b1 = Joystick2.button7
var.c2 = Joystick2.button8
var.csharp2 = Joystick2.button9
var.d2 = Joystick2.button10
var.dsharp2 = Joystick2.button11
var.e2 = Joystick2.button12

//Gamepad 2 - POV
var.f2 = Joystick2.pov1left
var.fsharp2 = Joystick2.pov1right
var.g2 = Joystick2.pov1up
var.gsharp2 = Joystick2.pov1down
Jacqualine Arroyos
01.06.2011
hi there,

this could be redundant, but you can find some pictures of what is going on


here the pots are set to zero, 4 buttons are pressed and nothing


here the pot Z is in half and now the 4 buttons work

as you can see, in the gamepad monitor, the buttons are pressed...


i've also tried to change the script for key presses like this:

w = Joystick1.Button1
s = Joystick1.Button2
f = Joystick1.Button3
h = Joystick1.Button4
f = Joystick1.Button5

and the problem is the same...
Jacqualine Arroyos
01.06.2011
Originally Posted by zestoi
cool. post back with any results and i'll help if i can.
hi there...

with the // the problem is the same...

i'm believeing if could not be something regarding the mididevice or midichanell code?
Chasidy Heckenbach
01.06.2011
Originally Posted by fbonito
toevening i will give it a try. thanks
cool. post back with any results and i'll help if i can.
Jacqualine Arroyos
01.06.2011
toevening i will give it a try. thanks
Chasidy Heckenbach
01.06.2011
Originally Posted by fbonito
hehehhe

i don't have a clue about what you talking about ;-)

i don't know much about coding, but toevening i will try to give it a try...

is there a command list for the glovepie commands?
docs are here http://glovepie.org/w/index.php?titl...entation_v0.43

all i meant as a first test was to put // at the start of those Control lines so make them look like this:

Code:
//midi.Control1=(joystick1.x/261)+64
//midi.Control2=(joystick1.y/261)+64
//midi.Control3=(joystick1.z/261)+64
//midi.Control4=(joystick1.roll/261)+64
and same for the ones for joystick2. that means they wont run - just to see if thats what is causing the issue or not.
Jacqualine Arroyos
01.06.2011
Originally Posted by zestoi
i don't have any pots on my gamepad but did do a similar thing in my xypad script:

Code:
var.XYpadXmidiCC = floor(MapRange(var.XYpadX, 0, var.XYpadXmax, var.XYpadXmidiMin, var.XYpadXmidiMax))
that will map a value from my touchpad in the range 0 .. var.XYpadXmax into the range var.XYpadXmidiMin .. var.XYpadXmidiMax

so if var.foo was the thing containing a value between say -1000 and 1000 and you wanted it mapping into 0 to 127 for midi then i believe this would do it:

Code:
var.bar = floor(MapRange(var.foo, -1000, 1000, 0, 127))
no clue if that would help with the issue you're seeing ofc... did you try commenting out the pots part (the *Control*= bits i believe) of the code and seeing if the buttons then always worked as needed?
hehehhe

i don't have a clue about what you talking about ;-)

i don't know much about coding, but toevening i will try to give it a try...

is there a command list for the glovepie commands?
Chasidy Heckenbach
01.06.2011
Originally Posted by fbonito
humm...

can you give me an example of this in the code? the examples you gave seam the same?

aren't they?
i don't have any pots on my gamepad but did do a similar thing in my xypad script:

Code:
var.XYpadXmidiCC = floor(MapRange(var.XYpadX, 0, var.XYpadXmax, var.XYpadXmidiMin, var.XYpadXmidiMax))
that will map a value from my touchpad in the range 0 .. var.XYpadXmax into the range var.XYpadXmidiMin .. var.XYpadXmidiMax

so if var.foo was the thing containing a value between say -1000 and 1000 and you wanted it mapping into 0 to 127 for midi then i believe this would do it:

Code:
var.bar = floor(MapRange(var.foo, -1000, 1000, 0, 127))
no clue if that would help with the issue you're seeing ofc... did you try commenting out the pots part (the *Control*= bits i believe) of the code and seeing if the buttons then always worked as needed?
Jacqualine Arroyos
01.06.2011
Originally Posted by zestoi
not really much in that script - so not much to go wrong

only thing i can suggest is to comment out these lines: (i.e: adding // to the start)

Code:
midi.Control1=(joystick1.x/261)+64
midi.Control2=(joystick1.y/261)+64
midi.Control3=(joystick1.z/261)+64
midi.Control4=(joystick1.roll/261)+64
and same for the other joystick and then see if when you put the pot to zero whether the buttons still work or not. i.e: it wont send out midi for the pot but also wont use the value at all - so you can isolate whether the issue is the code using it or something else.

you could also try adding the floor() func - since else it will be assigning a fractional number to the control that shouldn't be - possible could be an issue but i'm clutching at straws now.

like this:

Code:
midi.Control1=floor(joystick1.x/261)+64
midi.Control2=floor(joystick1.y/261)+64
midi.Control3=floor(joystick1.z/261)+64
midi.Control4=floor(joystick1.roll/261)+64
not sure what the significance of 261 in that is - surely it cant output values from -261*64 to 261*61? MapRange() is also a func for converting input/output ranges.

anyway try to comment out the lines first and see if the buttons then work as expected. if not then theres not really any other code in there that could be affecting them.

humm...

can you give me an example of this in the code? the examples you gave seam the same?

aren't they?
Chasidy Heckenbach
01.06.2011
not really much in that script - so not much to go wrong

only thing i can suggest is to comment out these lines: (i.e: adding // to the start)

Code:
midi.Control1=(joystick1.x/261)+64
midi.Control2=(joystick1.y/261)+64
midi.Control3=(joystick1.z/261)+64
midi.Control4=(joystick1.roll/261)+64
and same for the other joystick and then see if when you put the pot to zero whether the buttons still work or not. i.e: it wont send out midi for the pot but also wont use the value at all - so you can isolate whether the issue is the code using it or something else.

you could also try adding the floor() func - since else it will be assigning a fractional number to the control that shouldn't be - possible could be an issue but i'm clutching at straws now.

like this:

Code:
midi.Control1=floor(joystick1.x/261)+64
midi.Control2=floor(joystick1.y/261)+64
midi.Control3=floor(joystick1.z/261)+64
midi.Control4=floor(joystick1.roll/261)+64
not sure what the significance of 261 in that is - surely it cant output values from -261*64 to 261*61? MapRange() is also a func for converting input/output ranges.

anyway try to comment out the lines first and see if the buttons then work as expected. if not then theres not really any other code in there that could be affecting them.
Jacqualine Arroyos
01.06.2011
Originally Posted by zestoi
not sure - depends on whats causing the issue i guess. what glovepie script are you using? and can you point out which elements in the script are the pots and buttons that are a problem...

need to somehow confirm that the actual values of the buttons arent getting set rather than somehow being affected by something else in the script.

if a line like "var.btn1 = joystick2.button1" is reading the value and nowhere else in the script is modifying "var.btn2" or reading/writing "joystick2.button1" or via some other alias then it could just be a glovepie bug. tho that would be odd as no one else seems to have hit it.
hi, i'm using the script that extra classic wrote, i have another two scripts but this is the only one i can work with my configuration
Joan Kollmorgen
01.06.2011
I believe fbonito is using this script that i wrote.

Code:
//Extra Classics Script For 2 Gamepads
//Includes 12 Buttons Plus POV And 4 Analog Per Gamepad

midi.DefaultChannel = 1

//Gamepad 1 - Buttons
midi.csharp0 = Joystick1.Button1
midi.d0 = Joystick1.Button2
midi.dsharp0 = Joystick1.Button3
midi.e0 = Joystick1.Button4
midi.f0 = Joystick1.Button5
midi.fsharp0 = Joystick1.Button6
midi.g0 = Joystick1.Button7
midi.gsharp0 = Joystick1.Button8
midi.a0 = Joystick1.Button9
midi.asharp0 = Joystick1.Button10
midi.b0 = Joystick1.Button11
midi.c1 = Joystick1.Button12

//Gamepad 1 - POV
midi.csharp1 = Joystick1.Pov1Left
midi.d1 = Joystick1.Pov1Right
midi.dsharp1 = Joystick1.Pov1Up
midi.e1 = Joystick1.Pov1Down

//Gamepad 1 - Analogs
midi.Control1=(joystick1.x/261)+64
midi.Control2=(joystick1.y/261)+64
midi.Control3=(joystick1.z/261)+64
midi.Control4=(joystick1.roll/261)+64

//Gamepad 2 - Buttons
midi.f1 = Joystick2.button1
midi.fsharp1 = Joystick2.button2
midi.g1 = Joystick2.button3
midi.gsharp1 = Joystick2.button4
midi.a1 = Joystick2.button5
midi.asharp1 = Joystick2.button6
midi.b1 = Joystick2.button7
midi.c2 = Joystick2.button8
midi.csharp2 = Joystick2.button9
midi.d2 = Joystick2.button10
midi.dsharp2 = Joystick2.button11
midi.e2 = Joystick2.button12

//Gamepad 2 - POV
midi.f2 = Joystick2.pov1left
midi.fsharp2 = Joystick2.pov1right
midi.g2 = Joystick2.pov1up
midi.gsharp2 = Joystick2.pov1down

//Gamepad 2 - Analogs
midi.Control5=(joystick2.x/261)+64
midi.Control6=(joystick2.y/261)+64
midi.Control7=(joystick2.z/261)+64
midi.Control8=(joystick2.roll/261)+64
Chasidy Heckenbach
31.05.2011
not sure - depends on whats causing the issue i guess. what glovepie script are you using? and can you point out which elements in the script are the pots and buttons that are a problem...

need to somehow confirm that the actual values of the buttons arent getting set rather than somehow being affected by something else in the script.

if a line like "var.btn1 = joystick2.button1" is reading the value and nowhere else in the script is modifying "var.btn2" or reading/writing "joystick2.button1" or via some other alias then it could just be a glovepie bug. tho that would be odd as no one else seems to have hit it.
Jacqualine Arroyos
31.05.2011
Originally Posted by extraclassic
It's the same Ultimate Edition
extra, i have an idea, but don't know the code for glovepie...

is there a way of setting the range of the pots?

so that when turned down the information instead of 0 could be for instance 1?

i don't mind have some information coming from the pots...

what do you believe?
Jacqualine Arroyos
31.05.2011
i've manage to install two basic software:

joy2midi (it doesn't support pots)
http://filecommunity .betanews.com/detail...i/1062904670/1

mjoy (it doesn't support all of the buttons)
http://www.otk.it/mjoy/

in both, when pots are in zero, the buttons work great...

if i only could run rejoice in this pc... (extra classic, have you tried?)

i don't know what i could do with glovepie...
Jacqualine Arroyos
31.05.2011
this is very strange....

since i can't use any other software compatible with windows 7... i don't know what to do...
Joan Kollmorgen
30.05.2011
It's the same Ultimate Edition
Jacqualine Arroyos
30.05.2011
Originally Posted by extraclassic
Windows 7 64 bit.
yes but what version?

i have ultimate edition.

could it some bug? or drivers?

the gamepad properties, in the control panel everything works well...
Joan Kollmorgen
30.05.2011
Windows 7 64 bit.
Jacqualine Arroyos
30.05.2011
Originally Posted by extraclassic
fbonito I've been trying to recreate your problem but can't.

Everything is working how it should be for me using LoopBe and Glovepie.
All my buttons work when the pots are at zero.

When you said "in glovepie, if the knobs are turned to zero the buttons don't work" Is this happening with just one particular knob or all of them?
:-(

it happens in all of them, in all pots and all buttons...

i've tried in vista and there is the same problem, with other software like fergo, or rejoice, there is no problem...

:-(

what is the version of windows 7 that you have?
Joan Kollmorgen
30.05.2011
fbonito I've been trying to recreate your problem but can't.

Everything is working how it should be for me using LoopBe and Glovepie.
All my buttons work when the pots are at zero.

When you said "in glovepie, if the knobs are turned to zero the buttons don't work" Is this happening with just one particular knob or all of them?
Jacqualine Arroyos
30.05.2011
Originally Posted by extraclassic
When i get back home I will check for you.
thanks men ;-)
Joan Kollmorgen
30.05.2011
When i get back home I will check for you.
Jacqualine Arroyos
30.05.2011
hello,

during this weekend i've tried different configurations, and in the end the problem is the same...

in glovepie, if the knobs are turned to zero the buttons don't work...

does anyone have the same problem?
Jacqualine Arroyos
27.05.2011
Originally Posted by extraclassic
I'm sure loopmidi works fine and that's good to know but after testing loopBe for a few hours in total i see no reason to change.

As for Midi yoke....Well it stopped responding all of a sudden after about an hour on Windows 7 which is a no no for me.
Works fine on windows xp though. I've been routing Traktor into Reaper (via rearoute) while using glovepie and midiyoke at the same time in a live enviroment every week for the past year now without a hiccup

I will keep windows 7 installed on my destop pc but I'm sticking with xp on my dj laptop........If it aint broke
extra, did you try to hit the buttons with the pots turn to zero? and with the gamepad in analog mode?
Jacqualine Arroyos
27.05.2011
this is very strange,

i included your lines of code and it confirms, it's the same thing...

:-(

i didn't get to test in this computer, windows 7, with other software, but with windows vista even with rejoice and multiple gamepads the problem doesn't exist...
Chasidy Heckenbach
27.05.2011
sounds odd... what glovepie script are you using? would be worth adding a bunch of var.foo= lines to it so you can then monitor the actual values from the joypad in real time.

a bunch if lines like these - to check the values you're seeing oddities with...

var.btn1 = joystick2.button1
var.btn2 = joystick2.button2
var.joyx = joystick1.x
var.joyy = joystick1.y

just whatever you need to check the pots and buttons...

then if in the variables tab you do see the same effect then it's not down to the script.

no chance they're connected to the same thing? i.e: the pots and buttons are both controlling pov etc so one would indeed affect the other.

edit: guess my last question is bogus as you said some other apps seemed to read the data ok

edit2: i really feel the word "bogus" doesnt get used enough these days
Jacqualine Arroyos
27.05.2011
is this a glovepie bug?

the problem i was reporting isn't from midi yoke, loopmidi or other

the problem is from glovepie, it seams that when i put the pots to zero the buttons don't work, if i move the pots the buttons work...

i've tried this in two different machines with the same result, one with windows 7 64b and another with windows vista, in windows vista i tried with fergo and rejoice and there is no problem, with glovepie i have the problem

in windows 7 the only program working is glovepie, i had fergo but not i get a run-time error 380 (anyone knows what this is?)

:-(

what should i do?

thanx in advance
Chasidy Heckenbach
27.05.2011
Originally Posted by extraclassic
I'm sure loopmidi works fine and that's good to know but after testing loopBe for a few hours in total i see no reason to change.

As for Midi yoke....Well it stopped responding all of a sudden after about an hour on Windows 7 which is a no no for me.
Works fine on windows xp though. I've been routing Traktor into Reaper (via rearoute) while using glovepie and midiyoke at the same time in a live enviroment every week for the past year now without a hiccup

I will keep windows 7 installed on my destop pc but I'm sticking with xp on my dj laptop........If it aint broke
true... no point in changing something that works. i've heard lots of people saying they've had issues with midiyoke on windows7 so i just went for loopMIDI right away and havent seen the need to change.

i'm sure i remember using midiyoke years and years ago though... back when i was using TRAX on my old 486 running windows 3.11 99% sure that was the name of the app i used for a virtual midi port anyway.

reaper looks very cool btw and i'm sure i'll qualify for the cheaper pricing. can the rearoute driver also be used to route traktor into ableton? or is it just to get audio into reaper?
Chasidy Heckenbach
27.05.2011
Originally Posted by fbonito
hi, thanx,

toevening i will try it,

just one question,

how do i select by index?
what is devide8?
is there a script to chose the device in glovepie?

well... 3 questions after all ...

;-)
a line like:

midi.DeviceOut = 1

will select the first midi input port. i just found mine by trial and error before writing some code around the RtMidi lib. they're in the same order as you'll see when choosing a midi in port in the "bomes midi keyboard" or most other apps.

in my example "midi.DeviceOut = 8" just means my 8th device which in that case is "XYpad" (seems devices start at 1 and not 0 as i had assumed before)

it should also be possible to search through devices in glovepie looking for the name of a device to find its index, though i havent tried that.

... a few mins later of quick hacking ...

this script should work. put it at the top of your glovepie script and change "test" to whatever devicename you need. this will open a midi device out port by name:

Code:
var.DevName = "test"

if (var.Init == 0) then
   for var.Count = 0 to 20 do
       midi.DeviceOut = var.Count
       if (midi.OutDevName ~= var.DevName) then
          debug = "Selected: " + midi.OutDevName + " at id=" + floor(var.Count)
          var.Count = 21 // end the loop
       end if
   end for
   var.init = 1
endif
the code gets run each iteration - so we need to ensure this selection code is only run the very first time - hence the var.init bit
Joan Kollmorgen
27.05.2011
I'm sure loopmidi works fine and that's good to know but after testing loopBe for a few hours in total i see no reason to change.

As for Midi yoke....Well it stopped responding all of a sudden after about an hour on Windows 7 which is a no no for me.
Works fine on windows xp though. I've been routing Traktor into Reaper (via rearoute) while using glovepie and midiyoke at the same time in a live enviroment every week for the past year now without a hiccup

I will keep windows 7 installed on my destop pc but I'm sticking with xp on my dj laptop........If it aint broke

<< Back to Reviews of DJ equipment Reply

Copyright 2012-2023
DJRANKINGS.ORG n.g.o.
Chuo-ku, Osaka, Japan

Created by Ajaxel CMS

Terms & Privacy