Skip to content

Commit

Permalink
Release 1.2.1 from Google Code.
Browse files Browse the repository at this point in the history
  • Loading branch information
trash80 committed Jul 26, 2015
1 parent cbc9635 commit e51fdb4
Show file tree
Hide file tree
Showing 9 changed files with 59 additions and 45 deletions.
6 changes: 3 additions & 3 deletions Arduinoboy/Arduinoboy.ino
Original file line number Diff line number Diff line change
Expand Up @@ -10,8 +10,8 @@
***************************************************************************
***************************************************************************
* *
* Version: 1.2.0 *
* Date: Oct 31 2010 *
* Version: 1.2.1 *
* Date: May 3 2011 *
* Name: Timothy Lamb *
* Email: [email protected] *
* *
Expand Down Expand Up @@ -140,7 +140,7 @@ byte defaultMemoryMap[MEM_MAX] = {

0, 1, 2, 3, 4, //mGB midi channels (0-15 = 1-16)
15, //livemap / sync map midi channel (0-15 = 1-16)
60,1, //midiout bit check delay & bit check delay multiplier
80,1, //midiout bit check delay & bit check delay multiplier
0,0//midiout byte received delay & byte received delay multiplier
};
byte memory[MEM_MAX];
Expand Down
43 changes: 25 additions & 18 deletions Arduinoboy/Led_Functions.ino
Original file line number Diff line number Diff line change
Expand Up @@ -6,25 +6,32 @@
*/
void showSelectedMode()
{
for(int m=0;m<3;m++) {
digitalWrite(pinStatusLed,LOW);
digitalWrite(pinLeds[0],LOW);
digitalWrite(pinLeds[1],LOW);
digitalWrite(pinLeds[2],LOW);
digitalWrite(pinLeds[3],LOW);
digitalWrite(pinLeds[4],LOW);
if(memory[MEM_MODE] == 5) {
digitalWrite(pinStatusLed,HIGH);
} else if(memory[MEM_MODE] == 6) {
digitalWrite(pinStatusLed,HIGH);
digitalWrite(pinLeds[0],HIGH);
digitalWrite(pinLeds[1],HIGH);
digitalWrite(pinLeds[2],HIGH);
digitalWrite(pinLeds[3],HIGH);
digitalWrite(pinLeds[4],HIGH);
} else {
digitalWrite(pinLeds[memory[MEM_MODE]],HIGH);
}

for(int m=0;m<3;m++) {
switch(memory[MEM_MODE]) {
case 0:
case 1:
case 2:
case 3:
case 4:
digitalWrite(pinLeds[memory[MEM_MODE]],HIGH);
break;
case 5:
digitalWrite(pinStatusLed,HIGH);
digitalWrite(pinLeds[0],HIGH);
digitalWrite(pinLeds[1],HIGH);
break;
case 6:
digitalWrite(pinStatusLed,HIGH);
digitalWrite(pinLeds[0],HIGH);
digitalWrite(pinLeds[1],HIGH);
digitalWrite(pinLeds[2],HIGH);
digitalWrite(pinLeds[3],HIGH);
digitalWrite(pinLeds[4],HIGH);
break;

}
delay(100);
digitalWrite(pinStatusLed,LOW);
digitalWrite(pinLeds[0],LOW);
Expand Down
4 changes: 2 additions & 2 deletions Arduinoboy/Mode_LSDJ_Keyboard.ino
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ void modeLSDJKeyboardSetup()
void modeLSDJKeyboard()
{
while(1){ //Loop foreverrrr
if (Serial.available() > 0) { //If MIDI is sending
if (Serial.available()) { //If MIDI is sending
incomingMidiByte = Serial.read(); //Get the byte sent from MIDI
if(!checkForProgrammerSysex(incomingMidiByte) && !usbMode) Serial.print(incomingMidiByte, BYTE);//Echo the Byte to MIDI Output

Expand All @@ -45,7 +45,7 @@ void modeLSDJKeyboard()
* Midi to LSDJ Keyboard Handling *
***************************************************************************/
//If the byte is a Status Message
if(incomingMidiByte > 0x7F) {
if(incomingMidiByte & 0x80) {
/* Status message Information (# = midi channel 0 to F [1-16] )
0x8# = Note Off
0x9# = Note On
Expand Down
4 changes: 2 additions & 2 deletions Arduinoboy/Mode_LSDJ_Map.ino
Original file line number Diff line number Diff line change
Expand Up @@ -31,11 +31,11 @@ void modeLSDJMap()
while(1){ //Loop forever

checkClockTick();
if (Serial.available() > 0) { //If MIDI Byte Availaibleleleiel
if (Serial.available()) { //If MIDI Byte Availaibleleleiel
incomingMidiByte = Serial.read(); //Read it
checkForProgrammerSysex(incomingMidiByte);

if(incomingMidiByte > 0x7F) { //If we have received a MIDI Status Byte
if(incomingMidiByte & 0x80) { //If we have received a MIDI Status Byte
switch (incomingMidiByte) {
case 0xF8: //Case: Clock Message Recieved
if(sequencerStarted){
Expand Down
2 changes: 1 addition & 1 deletion Arduinoboy/Mode_LSDJ_MasterSync.ino
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ void modeLSDJMasterSyncSetup()
void modeLSDJMasterSync()
{
while(1){
if (Serial.available() > 0) { //If serial data was send to midi input
if (Serial.available()) { //If serial data was send to midi input
incomingMidiByte = Serial.read(); //Read it
if(!checkForProgrammerSysex(incomingMidiByte) && !usbMode) Serial.print(incomingMidiByte, BYTE); //Send it to the midi output
}
Expand Down
6 changes: 3 additions & 3 deletions Arduinoboy/Mode_LSDJ_Midiout.ino
Original file line number Diff line number Diff line change
Expand Up @@ -55,9 +55,9 @@ void modeLSDJMidiout()
setMode(); // Check if mode button was depressed
updateBlinkLights();

//if (Serial.available() > 0) { //If serial data was send to midi inp
// checkForProgrammerSysex(Serial.read());
//}
if (Serial.available()) { //If serial data was send to midi inp
checkForProgrammerSysex(Serial.read());
}
}
}
}
Expand Down
4 changes: 2 additions & 2 deletions Arduinoboy/Mode_LSDJ_SlaveSync.ino
Original file line number Diff line number Diff line change
Expand Up @@ -24,12 +24,12 @@ void modeLSDJSlaveSyncSetup()
void modeLSDJSlaveSync()
{
while(1){ //Loop forever
if (Serial.available() > 0) { //If MIDI Byte Availaibleleleiel
if (Serial.available()) { //If MIDI Byte Availaibleleleiel
incomingMidiByte = Serial.read(); //Read it

if(!checkForProgrammerSysex(incomingMidiByte) && !usbMode) Serial.print(incomingMidiByte, BYTE); //Send it back to the Midi out

if(incomingMidiByte > 0x7F) { //If we have received a MIDI Status Byte
if(incomingMidiByte & 0x80) { //If we have received a MIDI Status Byte
switch (incomingMidiByte) {
case 0xF8: //Case: Clock Message Recieved
if(sequencerStarted && midiSyncEffectsTime && !countSyncTime //If the seq has started and our sync effect is on and at zero
Expand Down
31 changes: 19 additions & 12 deletions Arduinoboy/Mode_MidiGb.ino
Original file line number Diff line number Diff line change
Expand Up @@ -21,47 +21,54 @@ void modeMidiGbSetup()

void modeMidiGb()
{
boolean sendByte = false;
while(1){ //Loop foreverrrr
if (Serial.available() > 0) { //If MIDI is sending
if (Serial.available()) { //If MIDI is sending
incomingMidiByte = Serial.read(); //Get the byte sent from MIDI

if(!checkForProgrammerSysex(incomingMidiByte) && !usbMode) Serial.print(incomingMidiByte, BYTE); //Echo the Byte to MIDI Output

if(incomingMidiByte > 0x7F) {
if(incomingMidiByte & 0x80) {
switch (incomingMidiByte & 0xF0) {
case 0xF0:
midiValueMode = false;
break;
default:
midiStatusChannel = incomingMidiByte&0x0F;
midiStatusType = incomingMidiByte&0xF0;

if(midiStatusChannel == memory[MEM_MGB_CH]) {
incomingMidiData[0] = midiStatusType|memory[MEM_MGB_CH];
incomingMidiData[0] = midiStatusType;
sendByte = true;
} else if (midiStatusChannel == memory[MEM_MGB_CH+1]) {
incomingMidiData[0] = midiStatusType|memory[MEM_MGB_CH+1];
incomingMidiData[0] = midiStatusType+1;
sendByte = true;
} else if (midiStatusChannel == memory[MEM_MGB_CH+2]) {
incomingMidiData[0] = midiStatusType|memory[MEM_MGB_CH+2];
incomingMidiData[0] = midiStatusType+2;
sendByte = true;
} else if (midiStatusChannel == memory[MEM_MGB_CH+3]) {
incomingMidiData[0] = midiStatusType|memory[MEM_MGB_CH+3];
incomingMidiData[0] = midiStatusType+3;
sendByte = true;
} else if (midiStatusChannel == memory[MEM_MGB_CH+4]) {
incomingMidiData[0] = midiStatusType|memory[MEM_MGB_CH+4];
incomingMidiData[0] = midiStatusType+4;
sendByte = true;
}
if(sendByte) {
sendByteToGameboy(incomingMidiData[0]);
midiValueMode =false;
midiAddressMode=true;
}
midiValueMode =false;
midiAddressMode=true;
break;
}
} else if (midiAddressMode){
midiAddressMode = false;
midiValueMode = true;
incomingMidiData[1] = incomingMidiByte;
sendByteToGameboy(incomingMidiData[1]);
} else if (midiValueMode) {
incomingMidiData[2] = incomingMidiByte;
midiAddressMode = true;
midiValueMode = false;

sendByteToGameboy(incomingMidiData[0]);
sendByteToGameboy(incomingMidiData[1]);
sendByteToGameboy(incomingMidiData[2]);
blinkLight(incomingMidiData[0],incomingMidiData[2]);
}
Expand Down
4 changes: 2 additions & 2 deletions Arduinoboy/Mode_Nanoloop.ino
Original file line number Diff line number Diff line change
Expand Up @@ -21,12 +21,12 @@ void modeNanoloopSetup()
void modeNanoloopSync()
{
while(1){ //Loop forever
if (Serial.available() > 0) { //If MIDI Byte Availaibleleleiel
if (Serial.available()) { //If MIDI Byte Availaibleleleiel
incomingMidiByte = Serial.read(); //Read it
if(!checkForProgrammerSysex(incomingMidiByte) && !usbMode) Serial.print(incomingMidiByte, BYTE); //Send it back to the Midi out


if(incomingMidiByte > 0x7F) { //If we have received a MIDI Status Byte
if(incomingMidiByte & 0x80) {
switch (incomingMidiByte) {
case 0xF8: // Clock Message Recieved
// Send a clock tick out if the sequencer is running
Expand Down

0 comments on commit e51fdb4

Please sign in to comment.