MultibootMidiSync

Search:
Edit this page | Front Page | Page Index | Recent Changes

Q: The program wont save your configuration. (<– v1.0 says “Now saves your settings”, is this fixed?)
A: Yes it's fixed. If it doesn't work, please tell me and I'll try to fix it.


Download page:
http://www2.hemsida.net/dtd/software/lsdjmidi.html


MIDI to LSDj sync converter v 1.0!

============= ======
Version history:


Changes for v 1.0


* PCLinker parallel interface support.

The PCLinker is some kind of cable originally used to transfer games to 
special carts. With the help of Peter Lindsteth it's now supported for MIDI
communication too. There are no special things that you need to do to use
this cable, just plug and play. (W2000/XP will still need User Port)
If someone is wondering: The cable is just used for communication, so you
don't need a special PCLinker compatible card to use MIDI functions.
(Note that this feature is not actually tested with the real cable yet, but
I built a copy using Peter's instructions, and tested the prog with, so it
should work.)

* Grey Gameboy support!

Support for the grey guy is implemented, but requires a setting to be made.
I'm trying to work out a way that works with both models (After all they
can communicate with each other.)
But for the moment you'll have to tell the program whether you're using a
monochrome (should be tetrachrome :) ) or Gameboy Color / Advance.
Only the protocol for the Grey one is implemented, you still have to get the
little “small-to-big” plug yourself :) (Or build a multiboot cable using an
old Game Link cable)

* Removed the status light, which wasn't very accurate anyway, and probably

fooled some users.

* Removed an unused checkbox called «Note (Master on/off)"


Changes for v 0.7 beta


* Two beta versions implementing support for the PC Linker device.


Changes for v 0.6


* Now saves your settings.(Puh, just about time!)
* From v 0.5 note data was transmitted in sync mode too. This would eventually

speed up playback. Problem Fixed.

* Experimental, inaccurate Gameboy Cable status light. Red means bad

connection, green means OK connection.
Here is how it works:
* When the cable is disconnected from the Gameboy, the light is red.
* When the cable is connected to the Gameboy, and the Gameboy is turned ON,
the light is hopefully green(see below...).

* When the cable is connected to the Gameboy, and the Gameboy is turned OFF,

the light may show either state.

* A correctly connected cable will show a red light from the moment data is

sent to the Gameboy!
So don't take the lights too seriously...

* Not really a version update, but I've got it confirmed that it 

actually works on Windows XP + User Port!

Changes for v 0.5


* Now including inpout.dll which was forgotten in the last version :/

This means the program actually WORKS this time... (Still not enough tested
under Windows XP, but it IS working perfectly under NT 4.0 + User Port!)

* Shipping User Port instead of Give IO (It's probably better for Windows XP)
* Still doesn't save your changes (Yeah, Yeah, next release!)
* Now includes extensive keyboard emulation. The program can now transmit both

key strokes and MIDI note data to LSDj. (You give focus to a keyboard box and
start playing!)

* LSDj can only handle monophonic MIDI data. This is a limitation in LSDj, not

a bug in the program! You cannot sync and send note data / use 
keyboard at the same time. This too is a limitation in LSDj.

* Changed the window title from “MIDI to LSDj sync” to “MIDI to LSDj” :)


Changes for v 0.4 (Non-public release)


* Includes KEYBD experiment window...


What is it?


This program lets you syncronize LSDj with any MIDI source that can send MIDI
clock signals.
It can also send MIDI note data to LSDj through the keybd mode. (But
only one thing at a time.
It MIGHT be able to sync nanoloop, but nobody has tried that to
the best of my knowledge.


What do I need?


In order to use the program you need the following:


Little Sound Dj
A nocash multiboot cable. (Instructions at

Or a PCLinker cable (For sale with cartridge here:
http://www.goldenshop.com.hk/AI-trad/Misc_htm/gb_pclinker.htm )
A computer with a parallell port and a MIDI in port.
Any device capable of sending MIDI clock signals.
... alternatively you may use a MIDI software + Hubi's loopback
For Windows NT/2000/XP users there is MIDI yoke:
( http://www.midiox.com/index.htm?http://www.midiox.com/myoke.htm )
But I've haven't tried this software out, so I can't swear that it
works or is stable.


When I build a nocash cable, do I need the extra wires?


The extra wires described in Martin Korth's GBATEK are not ever used
for communication with GBC and older games. Though these lines are
useful and recommended for GBA multiboot users, they are not
needed for sync.


What are the pro's and con's compared to the Firest Arter MIDI cable described in the Wiki?


* Con: Less compact. You will need a computer to use this program, whereas you

only need the cable for the Firest Arter cable.

* Con: Latency. There's a chance that program introduces a certain degree of

latency. Also you'll notice that the program may lag if you use your
computer for other things meanwhile.

* Pro: The nocash cable is easier to build. No electronic components. You may

even escape soldering. (If you just connect the wires between a link
cable and a printer cable using adhersive, or even just stick the link
cable's wires into the printer port, though I highly discourage from
that method...)

* Pro: The program responds to MIDI start and stop commands, making it suitable

for use with MIDI sequencer software.

Does it work under Windows 2000/XP?


Yes it does, using User Port (Included in download)


What gameboy models does it work with?


Since version 1.0 DMG («grey guy») support is official, though you need to
select your model in the program.


Can I use my Flash 2 advance USB linker?


No! At the moment I don't know anything about this device. Neither do I own
one, so I guess it'd be impossible.


Can I use my MBV2 cable?


I dont know anything about this one either. There is a possibility that the
MBV2 cable is identical to the nocash cable, in which case it should work.
Otherwise I could probably implement support if I could get my hands on a
documentation of the cable.


How does the program work?


First choose a MIDI In device, to receive sync signals from. If there are any
loopback devices installed the first one of them (usually LB1) will
autmatically selected. If needed check the Sync checkbox. If your sync source
is capable of sending start and stop messages the program will react to them,
unless, of course, if you uncheck the corresponding checkboxes.

If receiving sync the boxes in quant control will start moving to indicate

sync speed, and a BPM will be approximated. If sync is lost QC will stop and
BPM will indicate “nosync”.

When you know the program can correctly receive sync sync signals, connect

the multiboot cable.

You need to set LSDj in a sync mode. (Both Slave and MIDI should work) Then

press start at a desired location. LSDj should now say wait. Press play on your
sync source, or if it constantly spits MIDI clocks, check the Master Sync in
the program. LSDj should now sync to incoming signals!


What is “Quant control”?


That's a stupid name for a stupid feature I implemented to make the program
look busy. Actually it's uesful for two reasons: It indicates whether the
program receives any MIDI clocks and it mnonitors the sync position.

Quant control works like this: when a tick (aka MIDI clock) occurs the first

box moves one step to the right. When it overflows (after 6 ticks) the step
counter moves to the next step. After 16 steps the phrase counter moves to the
next phrase position.

A beat occurs every 4 steps. (Assuming a 4/4 metronome)

So we have the following:
6 ticks make a step (One row in an LSDj phrase)
16 steps make a phrase
4 phrases make a chain (Chains are not counted)


These values can be changed by clicking on each counter, eg if you base your
songs on 4 ticks, 15 steps/phrase and put 8 phrases in a chain.


Known bugs/Todo


The program wont save your configuration. (Fixed in v1.0)
You can't change process/thread priority. (Might be handy at times...)
The program can't automatically determinate delay values :/