This is S3Setup.m in view mode; [Download] [Up]
/* Generated by Interface Builder */
#import "S3Setup.h"
const char *portSetupString1 = "F0,00,00,16,12,00,";
const char *setupString2 = ",F7";
const char *fcSetupString1 = "F0,00,00,16,13,00,";
@implementation S3Setup
- appDidInit:sender
{
[fcChanFormCell setIntValue:fcChan];
return self;
}
- init
{
mask = 0x00;
fcChan = 15;
theNote = [[Note alloc] init];
midi = [Midi new];
[midi open];
[midi run];
sprintf(maskChars,"%x%x",((mask & 0xf0) >> 4),(mask & 0x0f));
return self;
}
- sendIt:sender
{
int i;
char theString[23];
mask = 0;
for(i=0; i<6; i++)
mask = mask + (mask_array[5-i] << i);
sprintf(maskChars,"%x%x",((mask & 0xf0) >> 4),(mask & 0x0f));
sprintf(theString,"%s%s%s",portSetupString1,maskChars,setupString2);
printf("%s\n",theString);
[theNote setPar:MK_sysExclusive toString:theString];
[[midi channelNoteReceiver:0] receiveNote:theNote];
sprintf(fcChanChars,"%x%x",((fcChan & 0xf0) >> 4),(fcChan & 0x0f));
sprintf(theString,"%s%s%s",fcSetupString1,fcChanChars,setupString2);
printf("%s\n",theString);
[theNote setPar:MK_sysExclusive toString:theString];
[[midi channelNoteReceiver:0] receiveNote:theNote];
return self;
}
- doPort1:sender
{
mask_array[0] = ![sender selectedRow];
return self;
}
- doPort2:sender
{
mask_array[1] = ![sender selectedRow];
return self;
}
- doPort3:sender
{
mask_array[2] = ![sender selectedRow];
return self;
}
- doPort4:sender
{
mask_array[3] = ![sender selectedRow];
return self;
}
- doPort5:sender
{
mask_array[4] = ![sender selectedRow];
return self;
}
- doPort6:sender
{
mask_array[5] = ![sender selectedRow];
return self;
}
- doFCChan:sender
{
fcChan = [sender intValue];
return self;
}
@end
These are the contents of the former NiCE NeXT User Group NeXTSTEP/OpenStep software archive, currently hosted by Netfuture.ch.