Nova Patents
EP0743631A2

Tone generating method and device

Abstract

For a given tone generating channel, tone waveform sample data corresponding to a plurality of sampling cycles (e.g., 100 samples) are arithmetically formed collectively. Once performance information such as MIDI event data is supplied to a tone generator MIDI driver (16) from an application program such as a MIDI sequencer software (31), the MIDI driver (16), in response to an input MIDI signal, assigns new tone generation to a designated tone generating channel of a tone generator task (20), and prepares tone controlling parameters to be set in the designated channel. The tone generator task (20) arithmetically forms tone waveform data by use of the tone controlling parameters and passes the tone waveform data to a CODEC circuit (26) functioning as an A/D converter. The program and a general-purpose operating system are sequenced and executed by a preemptive multitask management program.

EP0743631A2, drawing sheet 1
Sheet 1 of 32

Term

Term ended

Projected expiry passed 15 May 2016, 10.4 years ago.

  1. Priority
  2. Filed
  3. Published
  4. Projected expiry
  5. Today

41 claims: 41 independent, 0 dependent

  1. 1
    A tone generating method comprising:a first step of issuing generation instructions to generate a plurality of designated tones;a second step of assigning the designated tones to respective tone generating channels designated from among a plurality of tone generating channels, and writing controlling data for the designated tones into channel registers of the respective designated tone generating channels for storage therein;a third step of issuing calculation-start instructions at predetermined intervals;a fourth step of, in response to the calculation-start instructions issued by said third step, sequentially performing tone forming calculations for the designated tone generating channels in response to the calculation-start instructions issued by said third step, so as to arithmetically form waveform data for plural samples for each of the designated tone generating channels on the basis of the controlling data stored in said channel register of said channel;a fifth step of, for each of the samples, mixing the waveform data formed for the designated tone generating channels by said fourth step so as to form mixed sample data;and a sixth step of converting the mixed sample data for each of the plural samples into into an analog signal every sampling cycle,    wherein in said tone forming calculations, said fourth step, performs, for each of the designated tone generating channels, formation of the waveform data for the plural samples on the basis of one readout of the controlling data from said channel register and write of the controlling data into said channel register after the formation of the waveform data.
  2. 2
    A tone generating method as defined in claim 1 which further comprises a seventh step of issuing an on-the-way calculation-start instruction in accordance with the generation instruction issued by said first step for each of the designated tones, and wherein in response to the on-the-way calculation-start instruction, said fourth step forms the waveform data for plural samples that correspond to a section from an end point of a last-formed waveform to a time point when the generation instruction is issued by said first step.
  3. 3
    A tone generating method comprising:a first step of assigning designated tones to respective tone generating channels designated from among a plurality of tone generating channels and writing controlling data for the designated tones into channel registers of the designated tone generating channels for storage therein;a second step of issuing calculation-start instructions at predetermined intervals;a third step of, in response to the calculation-start instructions issued by said second step, arithmetically forming waveform data for plural samples for each of the designated tone generating channels on the basis of the controlling data stored in said channel register of said channel;a fourth step of, for each of the plural samples, mixing the waveform data formed for the designated tone generating channels by said third step, so as to form mixed sample data for each of the plural samples;a fifth step of converting the mixed sample data for the plural samples into into an analog signal every sampling cycle;and a sixth step of issuing an to generate a plurality of tones utilizing idle time during processing of said fifth step,    wherein said third step performs arithmetic formation of the waveform data only for the channel sounding a tone.
  4. 4
    A tone generating method as defined in claim 3 which further comprises a seventh step of setting a predetermined limit period, and an eighth step of determining whether calculations for all designated tone generating channels will be completed within the predetermined limit period, and, if it is determined that the calculations for all designated tone generating channels will not be completed within the predetermined limit period, instructing that a tone should be muffled in any of the tone generating channels.
  5. 5
    A tone generating method comprising:a first step of issuing generation instructions to generate a plurality of designated tones;a second step of assigning the designated tones to respective tone generating channels designated from among a plurality of tone generating channels, and writing controlling data for the designated tones into channel registers of the respective designated tone generating channels for storage therein;a third step of determining calculation-processing order across the designated tone generating channels in accordance with respective importance of the tones to be generated in the designated tone generating channels;a fourth step of issuing calculation-start instructions at predetermined intervals;a fifth step of arithmetically forming waveform data for plural samples on the basis of the controlling data stored in the channel registers of the designated tone generating channels, in response to the calculation-start instructions issued by said fourth step;a sixth step of, for each of the plural sample, mixing the waveform data formed for the channels, so as to form mixed sample data for the plural samples;and a seventh step of converting the mixed sample data for the plural samples into into an analog signal every sampling cycle,    wherein said fifth step performs calculations for forming the waveform data for the designated tone generating channels in accordance with the calculation-processing order determined by said third step, and when it is likely that the calculations for forming the waveform data by said fifth step will not be completed within a predetermined time and the analog signal converted by said seventh step will be broken off, the calculations for forming the waveform data are discontinued at a time point when they are being performed on one of the channels in the calculation-processing order, so as to prevent the analog signal from being broken off.
  6. 6
    A tone generating method for execution on a computing unit, comprising:a supply step of supplying performance information;a main step of arithmetically forming waveform data;an interrupt step of, when the performance information is supplied by said supply step, temporarily interrupting said main step so as to perform a predetermined input operation for receiving the supplied performance information, and upon completion of the input operation, resuming said main step at a point where said main step is interrupted;and a tone generation step of, on the basis of the waveform data formed by said main step, generating a corresponding tone at timing later than a time point when the waveform data is arithmetically formed by said interrupt step,    wherein said main step includes a performance information processing step to create tone controlling data on the basis of the performance information having undergone the input operation, and a tone generator processing step to arithmetically form the form waveform data on the basis of the tone controlling data.
  7. 7
    A tone generating method for execution on a computing unit, comprising:a system step of executing a predetermined operating system;a waveform formation step of arithmetically forming waveform data for a predetermined number of samples every predetermined period, on the basis of an instruction from an application program executed on the predetermined operating system;an output step of outputting, every sampling cycle, one sample of the waveform data arithmetically formed by said waveform formation step;and a control step of, in response to a request by said output step, performing a task switch between said system step and said waveform formation step during said predetermined period.
  8. 8
    A tone generating method for execution on a computing unit, comprising:an input step of inputting performance information;a waveform formation step of, on the basis of the performance information inputted during a predetermined period, arithmetically forming waveform data corresponding to the predetermined period;an output step of outputting, every sampling cycle, one sample of the waveform data corresponding to the predetermined period;a waveform data delivery step of supplying said output step with the waveform data corresponding to the predetermined period formed by said waveform formation step;and a request step of detecting when output of the waveform data by said output step has progressed, so as to request another supply of the waveform data from said waveform data delivery step,    wherein said waveform data delivery step is executed in response to a request by said request step and said waveform formation step is executed after said delivery step.
  9. 9
    A tone generating method for execution on a computing unit, comprising:an input step of inputting performance information;a waveform formation step of, on the basis of the performance information inputted during a predetermined period, arithmetically forming waveform data corresponding to the predetermined period;a waveform synthesis step of inputting external waveform data corresponding to the predetermined period, and combining the external waveform data and the waveform data arithmetically formed by said waveform formation step so as to form synthesized waveform data for the predetermined period;a waveform processing step of applying signal processing to the synthesized waveform data for the predetermined period;and an output step of outputting, every sampling cycle, one sample of the synthesized waveform data.
  10. 10
    A tone generating method for execution on a computing unit, comprising:an input step of inputting performance information;a waveform formation step of, on the basis of the performance information inputted by said input step, performing calculations over a plurality of stages so as to arithmetically form waveform data;a step of inputting external waveform data;and a step of inserting the inputted external waveform data in one of the stages of the calculations.
  11. 11
    A tone generating device comprising:a memory for storing a tone generator processing program and a performance processing program;supply means for supplying performance information;a register for storing control information;calculation means for executing the tone generator processing program and performance processing program, said calculation means normally executing the tone generator processing program to form waveform data on the basis of the control information, wherein when the performance information is supplied by said supply means, said calculation means temporarily interrupts execution of the tone generator processing program so as to execute the performance processing program to thereby create control information corresponding to the supplied performance information and store the created control information in said register, and, upon completion of the performance processing program, resumes the tone generator processing program at a point where the tone generator processing program is interrupted;and tone output means for, on the basis of the waveform data formed by the tone generator processing program, generating a corresponding tone at timing later than formation of the waveform data by said calculation means.
  12. 12
    A tone generating method for execution on a computing unit, comprising:a supply step of supplying performance information;a formation step of arithmetically forming waveform data;an interrupt step of, when the performance information is supplied by said supply step, temporarily interrupting said formation step so as to execute processing of the performance information, and then, upon completion of the processing of the performance information, resuming said formation step at a point where said formation step is interrupted;and a tone generation step of, on the basis of the waveform data formed by said formation step, generating a corresponding tone at timing later than formation of the waveform data by said formation step,    wherein said formation step arithmetically forms the waveform data on the basis of the performance information processed by said interrupt step.
  13. 13
    A tone generating method for execution on a computing unit, comprising:a system step of executing a predetermined operating system;a waveform formation step of arithmetically form waveform data for a predetermined number of samples per predetermined period, on the basis of an instruction from an application program executed on the predetermined operating system;an output step of outputting, every sampling cycle, one sample of the waveform data arithmetically formed by said waveform formation step;and control step of, in response to a request by said output step, performing a task switch between said system step and said waveform formation step during said predetermined period,    wherein said waveform formation step performs a tone parameter calculating operation in an intermittent fashion.
  14. 14
    A tone generating method for execution on a computing unit, comprising:an input step of inputting performance information;a waveform formation step of, on the basis of the performance information inputted during a predetermined period, arithmetically forming waveform data corresponding to the predetermined period;an output step of outputting, every sampling cycle, one sample of the waveform data corresponding to the predetermined period;a waveform data delivery step of supplying said output step with the waveform data corresponding to the predetermined period formed by said waveform formation step;and a request step of detecting when output of the waveform data by said output step has progressed, so as to request another supply of the waveform data from said waveform data delivery step,    wherein said waveform formation step performs a tone parameter calculating operation in an intermittent fashion, said waveform data supply step is executed in response to a request by said request step and said waveform formation step is executed after said delivery step.
  15. 15
    A tone generating method for execution on a computing unit, comprising:an input step of inputting performance information;a waveform formation step of, on the basis of the performance information inputted during a predetermined period, arithmetically form waveform data corresponding to the predetermined period;a waveform synthesis step of inputting external waveform data corresponding to the predetermined period, and combining the external waveform data and the waveform data arithmetically formed by said waveform formation step so as to form synthesized waveform data for the predetermined period;a waveform processing step of applying signal processing to the synthesized waveform data for the predetermined period;and an output step of outputting, every sampling cycle, one sample of the synthesized waveform data,    wherein said waveform formation step performs a tone parameter calculating operation in an intermittent fashion.
  16. 16
    A tone generation device comprising:first means for issuing generation instructions to generate a plurality of designated tones;second means for assigning the designated tones to respective tone generating channels designated from among a plurality of tone generating channels, and writing controlling data for the designated tones into channel registers of the respective designated tone generating channels for storage therein;third means for issuing calculation-start instructions at predetermined intervals;fourth means for, in response to the calculation-start instructions issued by said third means, sequentially performing tone forming calculations for the designated tone generating channels in response to the calculation-start instructions issued by said third means, so as to arithmetically form waveform data for plural samples for each of the designated tone generating channels on the basis of the controlling data stored in said channel register of said channel;fifth means for, for each of the samples, mixing the waveform data formed for the designated tone generating channels by said fourth means so as to form mixed sample data;and sixth means for converting the mixed sample data for each of the plural samples into into an analog signal every sampling cycle,    wherein in said tone forming calculations, said fourth means, performs, for each of the designated tone generating channels, formation of the waveform data for the plural samples on the basis of one readout of the controlling data from said channel register and write of the controlling data into said channel register after the formation of the waveform data.
  17. 17
    A tone generation device as defined in claim 16 which further comprises seventh means for issuing an on-the-way calculation-start instruction in accordance with the generation instruction issued by said first means for each of the designated tones, and wherein in response to the on-the-way calculation-start instruction, said fourth means forms the waveform data for plural samples that correspond to a section from an end point of a last-formed waveform to a time point when the generation instruction is issued by said first means.
  18. 18
    A tone generation device comprising:first means for assigning designated tones to respective tone generating channels designated from among a plurality of tone generating channels and writing controlling data for the designated tones into channel registers of the designated tone generating channels for storage therein;second means for issuing calculation-start instructions at predetermined intervals;third means for, in response to the calculation-start instructions issued by said second means, arithmetically forming waveform data for plural samples for each of the designated tone generating channels on the basis of the controlling data stored in said channel register of said channel;fourth means for, for each of the plural samples, mixing the waveform data formed for the designated tone generating channels by said third means, so as to form mixed sample data for each of the plural samples;fifth means for converting the mixed sample data for the plural samples into into an analog signal every sampling cycle;and sixth means for issuing an to generate a plurality of tones utilizing idle time during processing of said fifth means,    wherein said third means performs arithmetic formation of the waveform data only for the channel sounding a tone.
  19. 19
    A tone generation device as defined in claim 18 which further comprises seventh means for setting a predetermined limit period, and eighth means for determining whether calculations for all designated tone generating channels will be completed within the predetermined limit period, and, if it is determined that the calculations for all designated tone generating channels will not be completed within the predetermined limit period, instructing that a tone should be muffled in any of the tone generating channels.
  20. 20
    A tone generation device comprising:first means for issuing generation instructions to generate a plurality of designated tones;second means for assigning the designated tones to respective tone generating channels designated from among a plurality of tone generating channels, and writing controlling data for the designated tones into channel registers of the respective designated tone generating channels for storage therein;third means for determining calculation-processing order across the designated tone generating channels in accordance with respective importance of the tones to be generated in the designated tone generating channels;fourth means for issuing calculation-start instructions at predetermined intervals;fifth means for arithmetically forming waveform data for plural samples on the basis of the controlling data stored in the channel registers of the designated tone generating channels, in response to the calculation-start instructions issued by said fourth means;sixth means for, for each of the plural sample, mixing the waveform data formed for the channels, so as to form mixed sample data for the plural samples;and seventh means for converting the mixed sample data for the plural samples into into an analog signal every sampling cycle,    wherein said fifth means performs calculations for forming the waveform data for the designated tone generating channels in accordance with the calculation-processing order determined by said third means, and when it is likely that the calculations for forming the waveform data by said fifth means will not be completed within a predetermined time and the analog signal converted by said seventh means will be broken off, the calculations for forming the waveform data are discontinued at a time point when they are being performed on one of the channels in the calculation-processing order, so as to prevent the analog signal from being broken off.
  21. 21
    A tone generation device comprising:supply means for supplying performance information;main means for arithmetically forming waveform data;interrupt means for, when the performance information is supplied by said supply means, temporarily interrupting said main means so as to perform a predetermined input operation for receiving the supplied performance information, and upon completion of the input operation, resuming said main means at a point where said main means is interrupted;and tone generation means for, on the basis of the waveform data formed by said main means, generating a corresponding tone at timing later than a time point when the waveform data is arithmetically formed by said interrupt means,    wherein said main means includes a performance information processing means to create tone controlling data on the basis of the performance information having undergone the input operation, and tone generator processing means to arithmetically form the form waveform data on the basis of the tone controlling data.
  22. 22
    A tone generation device comprising:a processor which executes a predetermined operating system, forms waveform data for a predetermined number of samples every predetermined period, in an arithmetic manner, on the basis of an instruction from an application program executed on the predetermined operating system, outputs each of succesive samples of said formed waveform data at every sample cycle, and controls a task switching operation between execution of said operating system and execution of forming of said waveform data during said predetermined period.
  23. 23
    A tone generation device comprising:input means for inputting performance information;waveform formation means for, on the basis of the performance information inputted during a predetermined period, arithmetically forming waveform data corresponding to the predetermined period;output means for outputting, every sampling cycle, one sample of the waveform data corresponding to the predetermined period;waveform data delivery means for supplying said output means with the waveform data corresponding to the predetermined period formed by said waveform formation means;and request means for detecting when output of the waveform data by said output means has progressed, so as to request another supply of the waveform data from said waveform data delivery means,    wherein said waveform data delivery means is executed in response to a request by said request means and said waveform formation means is executed after said delivery means.
  24. 24
    A tone generation device comprising:input means for inputting performance information;waveform formation means for, on the basis of the performance information inputted during a predetermined period, arithmetically forming waveform data corresponding to the predetermined period;waveform synthesis means for inputting external waveform data corresponding to the predetermined period, and combining the external waveform data and the waveform data arithmetically formed by said waveform formation means so as to form synthesized waveform data for the predetermined period;waveform processing means for applying signal processing to the synthesized waveform data for the predetermined period;and output means for outputting, every sampling cycle, one sample of the synthesized waveform data.
  25. 25
    A tone generation device comprising:input means for inputting performance information;waveform formation means for, on the basis of the performance information inputted by said input means, performing calculations over a plurality of stages so as to arithmetically form waveform data;means for inputting external waveform data;and means for inserting the inputted external waveform data in one of the stages of said calculations.
  26. 26
    A tone generation device comprising:supply means for supplying performance information;formation means for arithmetically forming waveform data;interrupt means for, when the performance information is supplied by said supply means, temporarily interrupting said formation means so as to execute processing of the performance information, and then, upon completion of the processing of the performance information, resuming said formation means at a point where said formation means is interrupted;and means for, on the basis of the waveform data formed by said formation means, generating a corresponding tone at timing later than formation of the waveform data by said formation means,    wherein said formation means arithmetically forms the waveform data on the basis of the performance information processed by said interrupt means.
  27. 27
    A tone generation device comprising:a processor which executes a predetermined operating system, forms waveform data for a predetermined number of samples every predetermined period, in an arithmetic manner, on the basis of an instruction from an application program executed on the predetermined operating system, outputs each of succesive samples of said formed waveform data at every sample cycle, and controls a task switching operation between execution of said operating system and execution of forming of said waveform data during said predetermined period,    wherein said processor performs a tone parameter calculating operation in an intermittent fashion as forming said waveform data.
  28. 28
    A tone generation device comprising:input means for inputting performance information;waveform formation means for, on the basis of the performance information inputted during a predetermined period, arithmetically forming waveform data corresponding to the predetermined period;output means for outputting, every sampling cycle, one sample of the waveform data corresponding to the predetermined period;waveform data delivery means for supplying said output means with the waveform data corresponding to the predetermined period formed by said waveform formation means;and request means for detecting when output of the waveform data by said output means has progressed, so as to request another supply of the waveform data from said waveform data delivery means,    wherein said waveform formation means performs a tone parameter calculating operation in an intermittent fashion, said waveform data supply means is executed in response to a request by said request means and said waveform formation means is executed after said delivery means.
  29. 29
    A tone generation device comprising:input means for inputting performance information;waveform formation means for, on the basis of the performance information inputted during a predetermined period, arithmetically form waveform data corresponding to the predetermined period;waveform synthesis means for inputting external waveform data corresponding to the predetermined period, and combining the external waveform data and the waveform data arithmetically formed by said waveform formation means so as to form synthesized waveform data for the predetermined period;waveform processing means for applying signal processing to the synthesized waveform data for the predetermined period;and output means for outputting, every sampling cycle, one sample of the synthesized waveform data,    wherein said waveform formation means performs a tone parameter calculating operation in an intermittent fashion as forming said waveform data.
  30. 30
    A machine readable media containing instructions for causing said machine to perform a method of generating a tone, said method comprising:a first step of issuing generation instructions to generate a plurality of designated tones;a second step of assigning the designated tones to respective tone generating channels designated from among a plurality of tone generating channels, and writing controlling data for the designated tones into channel registers of the respective designated tone generating channels for storage therein;a third step of issuing calculation-start instructions at predetermined intervals;a fourth step of, in response to the calculation-start instructions issued by said third step, sequentially performing tone forming calculations for the designated tone generating channels in response to the calculation-start instructions issued by said third step, so as to arithmetically form waveform data for plural samples for each of the designated tone generating channels on the basis of the controlling data stored in said channel register of said channel;a fifth step of, for each of the samples, mixing the waveform data formed for the designated tone generating channels by said fourth step so as to form mixed sample data;and a sixth step of converting the mixed sample data for each of the plural samples into into an analog signal every sampling cycle,    wherein in said tone forming calculations, said fourth step, performs, for each of the designated tone generating channels, formation of the waveform data for the plural samples on the basis of one readout of the controlling data from said channel register and write of the controlling data into said channel register after the formation of the waveform data.
  31. 31
    A machine readable media containing instructions for causing said machine to perform a method of generating a tone, said method comprising:a first step of assigning designated tones to respective tone generating channels designated from among a plurality of tone generating channels and writing controlling data for the designated tones into channel registers of the designated tone generating channels for storage therein;a second step of issuing calculation-start instructions at predetermined intervals;a third step of, in response to the calculation-start instructions issued by said second step, arithmetically forming waveform data for plural samples for each of the designated tone generating channels on the basis of the controlling data stored in said channel register of said channel;a fourth step of, for each of the plural samples, mixing the waveform data formed for the designated tone generating channels by said third step, so as to form mixed sample data for each of the plural samples;a fifth step of converting the mixed sample data for the plural samples into into an analog signal every sampling cycle;and a sixth step of issuing an to generate a plurality of tones utilizing idle time during processing of said fifth step,    wherein said third step performs arithmetic formation of the waveform data only for the channel sounding a tone.
  32. 32
    A machine readable media containing instructions for causing said machine to perform a method of generating a tone, said method comprising:a first step of issuing generation instructions to generate a plurality of designated tones;a second step of assigning the designated tones to respective tone generating channels designated from among a plurality of tone generating channels, and writing controlling data for the designated tones into channel registers of the respective designated tone generating channels for storage therein;a third step of determining calculation-processing order across the designated tone generating channels in accordance with respective importance of the tones to be generated in the designated tone generating channels;a fourth step of issuing calculation-start instructions at predetermined intervals;a fifth step of arithmetically forming waveform data for plural samples on the basis of the controlling data stored in the channel registers of the designated tone generating channels, in response to the calculation-start instructions issued by said fourth step;a sixth step of, for each of the plural sample, mixing the waveform data formed for the channels, so as to form mixed sample data for the plural samples;and a seventh step of converting the mixed sample data for the plural samples into into an analog signal every sampling cycle,    wherein said fifth step performs calculations for forming the waveform data for the designated tone generating channels in accordance with the calculation-processing order determined by said third step, and when it is likely that the calculations for forming the waveform data by said fifth step will not be completed within a predetermined time and the analog signal converted by said seventh step will be broken off, the calculations for forming the waveform data are discontinued at a time point when they are being performed on one of the channels in the calculation-processing order, so as to prevent the analog signal from being broken off.
  33. 33
    A machine readable media containing instructions for causing said machine to perform a method of generating a tone, said method comprising:a supply step of supplying performance information;a main step of arithmetically forming waveform data;an interrupt step of, when the performance information is supplied by said supply step, temporarily interrupting said main step so as to perform a predetermined input operation for receiving the supplied performance information, and upon completion of the input operation, resuming said main step at a point where said main step is interrupted;and a tone generation step of, on the basis of the waveform data formed by said main step, generating a corresponding tone at timing later than a time point when the waveform data is arithmetically formed by said interrupt step,    wherein said main step includes a performance information processing step to create tone controlling data on the basis of the performance information having undergone the input operation, and a tone generator processing step to arithmetically form the form waveform data on the basis of the tone controlling data.
  34. 34
    A machine readable media containing instructions for causing said machine to perform a method of generating a tone, said method comprising:a system step of executing a predetermined operating system;a waveform formation step of arithmetically forming waveform data for a predetermined number of samples every predetermined period, on the basis of an instruction from an application program executed on the predetermined operating system;an output step of outputting, every sampling cycle, one sample of the waveform data arithmetically formed by said waveform formation step;and a control step of, in response to a request by said output step, performing a task switch between said system step and said waveform formation step during said predetermined period.
  35. 35
    A machine readable media containing instructions for causing said machine to perform a method of generating a tone, said method comprising:an input step of inputting performance information;a waveform formation step of, on the basis of the performance information inputted during a predetermined period, arithmetically forming waveform data corresponding to the predetermined period;an output step of outputting, every sampling cycle, one sample of the waveform data corresponding to the predetermined period;a waveform data delivery step of supplying said output step with the waveform data corresponding to the predetermined period formed by said waveform formation step;and a request step of detecting when output of the waveform data by said output step has progressed, so as to request another supply of the waveform data from said waveform data delivery step,    wherein said waveform data delivery step is executed in response to a request by said request step and said waveform formation step is executed after said delivery step.
  36. 36
    A machine readable media containing instructions for causing said machine to perform a method of generating a tone, said method comprising:an input step of inputting performance information;a waveform formation step of, on the basis of the performance information inputted during a predetermined period, arithmetically forming waveform data corresponding to the predetermined period;a waveform synthesis step of inputting external waveform data corresponding to the predetermined period, and combining the external waveform data and the waveform data arithmetically formed by said waveform formation step so as to form synthesized waveform data for the predetermined period;a waveform processing step of applying signal processing to the synthesized waveform data for the predetermined period;and an output step of outputting, every sampling cycle, one sample of the synthesized waveform data.
  37. 37
    A machine readable media containing instructions for causing said machine to perform a method of generating a tone, said method comprising:an input step of inputting performance information;a waveform formation step of, on the basis of the performance information inputted by said input step, performing calculations over a plurality of stages so as to arithmetically form waveform data;a step of inputting external waveform data;and a step of inserting the inputted external waveform data in one of the stages of the calculations.
  38. 38
    A machine readable media containing instructions for causing said machine to perform a method of generating a tone, said method comprising:a supply step of supplying performance information;a formation step of arithmetically forming waveform data;an interrupt step of, when the performance information is supplied by said supply step, temporarily interrupting said formation step so as to execute processing of the performance information, and then, upon completion of the processing of the performance information, resuming said formation step at a point where said formation step is interrupted;and a tone generation step of, on the basis of the waveform data formed by said formation step, generating a corresponding tone at timing later than formation of the waveform data by said formation step,    wherein said formation step arithmetically forms the waveform data on the basis of the performance information processed by said interrupt step.
  39. 39
    A machine readable media containing instructions for causing said machine to perform a method of generating a tone, said method comprising:a system step of executing a predetermined operating system;a waveform formation step of arithmetically form waveform data for a predetermined number of samples per predetermined period, on the basis of an instruction from an application program executed on the predetermined operating system;an output step of outputting, every sampling cycle, one sample of the waveform data arithmetically formed by said waveform formation step;and control step of, in response to a request by said output step, performing a task switch between said system step and said waveform formation step during said predetermined period,    wherein said waveform formation step performs a tone parameter calculating operation in an intermittent fashion.
  40. 40
    A machine readable media containing instructions for causing said machine to perform a method of generating a tone, said method comprising:an input step of inputting performance information;a waveform formation step of, on the basis of the performance information inputted during a predetermined period, arithmetically forming waveform data corresponding to the predetermined period;an output step of outputting, every sampling cycle, one sample of the waveform data corresponding to the predetermined period;a waveform data delivery step of supplying said output step with the waveform data corresponding to the predetermined period formed by said waveform formation step;and a request step of detecting when output of the waveform data by said output step has progressed, so as to request another supply of the waveform data from said waveform data delivery step,    wherein said waveform formation step performs a tone parameter calculating operation in an intermittent fashion, said waveform data supply step is executed in response to a request by said request step and said waveform formation step is executed after said delivery step.
  41. 41
    A machine readable media containing instructions for causing said machine to perform a method of generating a tone, said method comprising:an input step of inputting performance information;a waveform formation step of, on the basis of the performance information inputted during a predetermined period, arithmetically form waveform data corresponding to the predetermined period;a waveform synthesis step of inputting external waveform data corresponding to the predetermined period, and combining the external waveform data and the waveform data arithmetically formed by said waveform formation step so as to form synthesized waveform data for the predetermined period;a waveform processing step of applying signal processing to the synthesized waveform data for the predetermined period;and an output step of outputting, every sampling cycle, one sample of the synthesized waveform data,    wherein said waveform formation step performs a tone parameter calculating operation in an intermittent fashion.
Independent claims41