예제 #1
0
void AGOSEngine_PN::pcf(uint8 ch) {
	int ct = 0;
	if (ch == '[')
		ch = '\n';
	if (ch == 0)
		return;	/* Trap any C EOS chrs */
	if (ch == 255) {
		_bp = 0;
		_xofs = 0;
		return;		/* pcf(255) initialises the routine */
	}			/* pcf(254) flushes its working _buffer */
	if (ch != 254) {
		if ((ch != 32) || (_bp + _xofs != 50))
			_buffer[_bp++] = ch;
	}
	if ((ch != 254) && (!isspace(ch)) && (_bp < 60))
		return;
	/* We know have a case of needing to print the text */
	if (_bp + _xofs > 50) {
		pcl("\n");
		if (_buffer[0] == ' ')
			ct = 1;	/* Skip initial space */
		/* Note '  ' will give a single start of line space */
		_xofs = 0;
	}
	_buffer[_bp] = 0;
	pcl(_buffer + ct);
	_xofs += _bp;
	_bp = 0;
	if (ch == '\n')
		_xofs = 0;	/* At Newline! */
}
예제 #2
0
파일: 2dpos.cpp 프로젝트: Isssmael/improv
void description(void) {
   cout << '\n';
   printboxtop();
   pcl("2dpos: by Craig Stuart Sapp <*****@*****.**> 22 Nov 1998");
   printintermediateline();
   psl(" NIDAQ device initially on channel 0. Initial sensor range will ");
   psl(" adapt as sensor moves.  So go through whole range of sensor");
   psl(" to fix the software range.");
   psl(" Commands:");
   psl(" \"0\"-\"9\" = select NIDAQ analog input channel");
   psl(" type \"k\" before number to select key channel");
   psl(" type \"v\" before number to select velocity channel");
   psl(" \"-\", \"=\" = change instruments, \" \" = sustain pedal");
   psl(" \"z\" = reset key sensor range, \"x\" = reset vel sensor range");
   psl(" \"a\" = switch key sensor range, \"s\" = switch vel sensor range");
   psl(" \"d\" = toggle sensor display.");
   printboxbottom();
}