📄 swlogic.h
字号:
/********************************************************************* swlogic.h - switch logic, loaded from various versions of switch.h** Copyright 1989 Carnegie Mellon University**********************************************************************//* * When included, one of the following should be defined: * AZTEC (manx compiler, implies AMIGA) * THINK_C (Think C compiler, implies Macintosh) * __MWERKS__ (Metrowerks C compiler, implies Macintosh) * LATTICE & DOS (Lattice compiler for IBM PC/AT/XT/CLONES) * MICROSOFT & DOS (Microsoft compiler, implies IBM PC/AT/XT/CLONES) * UNIX (emulator for UNIX) * UNIX_ITC (ITC code for RS6000) * UNIX_MACH (MACH ukernel system) */ /*------------------------------------------*//* Other switches that might be defined in switches.h are as follows: *//* APPLICATION, SPACE_FOR_PLAY, MAX_CHANNELS *//*------------------------------------------*//* We're moving toward the elimination of switches.h, so try to map * predefined constants into our standard constants shown above: *//* CHANGE LOG * -------------------------------------------------------------------- * 28Apr03 dm new conditional compilation structure * 28Apr03 rbd remove macro redefinitions: MICROSOFT *//* Microsoft C compiler: */#ifdef _MSC_VER#endif#ifdef _MSDOS#define DOS#endif/* Quick C compiler: */#ifndef DOS#ifdef MICROSOFT#define DOS#endif#endif/* Borland C compiler: */#ifdef __BORLANDC__#define BORLAND#define DOS#endif/* Borland Turbo C compiler: */#ifdef __TURBOC__#define BORLAND]#define DOS#endif/* SGI systems */#ifdef sgi#ifndef UNIX#define UNIX#endif#define UNIX_IRIX#define MAX_CHANNELS 32#endif/* APPLICATION -- define APPLICATION if you want to disable * looking for command line switches in the midi interface. * I think this feature is here for the Piano Tutor project * and you should not define APPLICATION for CMU Midi Toolkit * projects (APPLICATION is a poor choice of terms): *//* memory space management (system dependent): * SPACE_FOR_PLAY must be enough space to allow * seq to play a score. This may include space for * note-off events, I/O buffers, etc. */#ifndef SPACE_FOR_PLAY#define SPACE_FOR_PLAY 10000L#endif/* How many MIDI channels are there? MACINTOSH can use 2 ports, * so it supports 32 channels. Others have one port, 16 channels. * On the other hand, if you don't have all the MIDI ports plugged * into MIDI interfaces, CMT will just hang, so I'll compile with * just 16 channels. The 32 channel option for the Mac is untested. */#ifndef MAX_CHANNELS#define MAX_CHANNELS 16#endif/*------------------------------------------*//* Now we get to the "logic": define things as a function of what * was defined in switches.h */#ifdef THINK_C#define MACINTOSH#endif#ifdef __MWERKS__#define MACINTOSH#endif#ifdef MACINTOSH#define MACINTOSH_OR_DOS#define MACINTOSH_OR_UNIX/* I don't know if THINK_C defines this and we need it for a few prototypes... */#ifndef __STDC__#define __STDC__#endif#ifndef TAB_WIDTH#define TAB_WIDTH 4#endif#endif#ifndef TAB_WIDTH#define TAB_WIDTH 8#endif/* * If MIDIMGR is defined, compile for the Apple MIDI Manager * (Non MIDI manager code is no longer supported) */#ifdef MACINTOSH/* under Nyquist, the MidiMgr is not used, so you can't * receive or send Midi as in CMU MIDI Toolkit; however, * much of CMU MIDI Toolkit is used for Midi file IO */#ifndef NYQUIST#define MIDIMGR#endif#define USE_VSPRINTF#endif#ifdef BORLAND#define DOS#endif#ifdef LATTICE322#define DOS#define OLD_PROTOTYPES#endif#ifdef UNIX_ITC#define UNIX#define ITC#endif#ifdef UNIX_MACH#define UNIX#define ITC#endif/* USE_VSPRINTF says vsprintf() is defined */#ifdef ITC#define USE_VSPRINTF#endif#ifdef AZTEC#define USE_VSPRINTF#endif/* DOTS_FOR_ARGS says ANSI "..." notation is recognized */#ifdef __STDC__#define DOTS_FOR_ARGS#endif#ifdef UNIX_ITC#define DOTS_FOR_ARGS#endif#ifdef BORLAND#define DOTS_FOR_ARGS#endif#ifdef MICROSOFT#define DOTS_FOR_ARGS#endif#ifdef DOS#define MACINTOSH_OR_DOS#else#define huge#endif#ifdef UNIX#define MACINTOSH_OR_UNIX#endif#define SWITCHES
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -