Control: Controller #1 select = Toggle from mode 1 to mode 2 and back



Download 56.22 Kb.
Date07.06.2016
Size56.22 Kb.
MIDINES + NESFX 1.0 MANUAL
Control:
Controller #1 SELECT = Toggle from MODE 1 to MODE 2 and back.

Controller #1 START = Toggle NESFX ON/OFF.


Display:

SECTIONS:
- OVERVIEW
- MIDINES 1.0 MIDI IMPLEMENTATION
- SOUND TECHNIQUES
- MIDI CHART
OVERVIEW------------------------------------------------
The 8bit Nintendo features the 2A03 CPU, a 6502 CPU variant which includes integrated audio generation circuitry. The sound capabilities include 2 variable duty cycle pulse (square) sound channels, 1 triangle sound channel, 1 noise sound channel, and a digital sample playback sound channel.
MIDINES is a independently authored, non-Nintendo licensed hardware interface that turns the analog sounding 8bit NES, into part of the professional MIDI recording studio.
MIDINES is a hardware interface that allows access to the 8bit Nintendo sound registers via MIDI command. MIDINES 1.0 features two modes of operation. MODE 2 which is the default, allows for visual feedback of the incoming MIDI data via the control display sprites. MODE 1 cancels the updating of the visual feedback increasing MIDI processing performance, also eliminating the PPU related buzz. To switch between MODE 1 and MODE 2 press the SELECT button on controller #1.
MIDINES also includes NESFX, a simple 8 bit visualization routine. To turn on/off NESFX press the START button on controller #1.
Listed in the Sound Techniques section are tricks on how to get delay, chorus, and a trick for making full frequency sample based sounds.
A quick reference MIDI chart is included in the back of this manual. Detailed MIDI implementation information is provided in the MIDINES MIDI IMPLEMENTATION section.

MIDINES 1.0 MIDI IMPLEMENTATION-------------------------------------------

PULSE CHANNELS (MIDI channels 1,2) ===============
The pulse channels feature 4bit volume, 4 duty cycle settings, a sweep pitch feature, and an auto volume envelope feature. The pulse channels can also be modulated via a MIDINES modulation hack that constantly resets the pulse waveform generator.
Note on velocity allows 16 volume steps, and is derived by dividing the midi note volume by 8. Therefore changes in velocity of less than 8 may not have an actual effect on the sound channels volume level.
Fine Pitch offsets the base value for the note. Due to the offset some notes may wrap from low to high or high to low pitches.
PULSE MIDI CONTROLLER CHANGE MESSAGES (CC parameters)
OFF = less than 64 (0x40)

ON = greater than or equal to 64 (0x40)


Mod wheel / CC1 = Duty Cycle

CC7 = Master Volume (value now overrides note velocity)

CC8 = Fine pitch mod (same as Fine Pitch midi parameter)

CC9 = Pulse channel length envelope

CC10 = Toggle OFF/ON pulse channel loop envelope

CC11 = Toggle OFF/ON volume Envelope disable

CC12 = Toggle OFF/ON Modulate pulse channel

CC13 = Toggle OFF/ON Enable Sweep

CC14 = Sweep Down / Up

CC15 = Sweep Period

CC16 = Sweep Shift
TRIANGLE CHANNEL (MIDI channel 3) ===============
The NES's triangle channel is quite basic and does not support volume control as do the pulse and noise channels. Despite this limitation the triangle channel features the widest frequency response that the NES has to offer, even generating audio surpassing 18KHz!
Fine pitch offsets the base value for the note. Due to the offset some notes may wrap from low to high or high to low pitches.
TRIANGLE MIDI CONTROLLER CHANGE MESSAGES (CC parameters)
CC8 = Fine pitch mod
NOISE CHANNEL (MIDI channel 4) ===============
The noise sound channel features 4bit volume control, and also has an auto volume envelope feature, similar to the pulse channels. The noise channel has 2 modes of noise generation, long loop and short loop. Long mode allows for standard noise generation, and short mode sounds more metallic and less random, more periodic. The NES's long / short noise loop modes are similar to the Game Boy noise modes.
The noise channel is spread out over MIDI channel 4. Due to the limited 16 noise pitch/period values that the NES allows, the noise period is repeated every 16 notes. For MIDI notes above 64 inclusive (64 dec 40 hex), noise short loop mode is set to on. For MIDI notes below 64 (64 dec 40 hex) noise loop mode is set to long loop mode.
Note on velocity allows 16 volume steps, and is derived by dividing the midi note volume by 8. Therefore changes in velocity of less than 8 may not have an actual effect on the sound channels volume level.

NOISE MIDI CONTROLLER CHANGE MESSAGES (CC parameters)


OFF = less than 64 (0x40)

ON = greater than or equal to 64 (0x40)


CC7 = Master Volume (value now overrides note velocity)

CC9 = Noise channel length envelope

CC10 = Toggle OFF/ON noise channel loop envelope

CC11 = Toggle OFF/ON volume Envelope disable


SAMPLE CHANNEL (MIDI channel 5) ===============


The sample channel is played via MIDI notes on MIDI channel 5. MIDINES 1.0 provides 16 TR/breaker type samples pitched about the keyboard in 16 note groups.
The 16 samples include:
dnb bass stab

TR-808 clave

Breaker Kick

Breaker Snare

TR-707 Kick

TR-808 Hiht

TR-808 Snare

TR-707 Snare

TR-707 Hiht

TR-909 Hiht

GB kick - gabber kick

TR-909 Snare

TR-909 house kick

TR-909 acid kick

short VG snare

short VG kick


Midi Note to Sample Value Map (MIDI channel 5)


- MIDINES 1.0 - (future version sample mapping may change)
Chart based on Middle C = C4.
note# note value pitch sample name
127 G9 -2 dnb bass stab

126 F#9 -2 TR-808 clave

125 F9 -2 Breaker Kick

124 E9 -2 Breaker Snare

123 D#9 -2 TR-707 Kick

122 D9 -2 TR-808 Hiht

121 C#9 -2 TR-808 Snare

120 C9 -2 TR-707 Snare

119 B8 -2 TR-707 Hiht

118 A#8 -2 TR-909 Hiht

117 A8 -2 GB kick - gabber kick

116 G#8 -2 TR-909 Snare

115 G8 -2 TR-909 house kick

114 F#8 -2 TR-909 acid kick

113 F8 -2 short VG snare

112 E8 -2 short VG kick


111 D#8 -3 dnb bass stab

110 D8 -3 TR-808 clave

109 C#8 -3 Breaker Kick

108 C8 -3 Breaker Snare

107 B7 -3 TR-707 Kick

106 A#7 -3 TR-808 Hiht

105 A7 -3 TR-808 Snare

104 G#7 -3 TR-707 Snare

103 G7 -3 TR-707 Hiht

102 F#7 -3 TR-909 Hiht

101 F7 -3 GB kick - gabber kick

100 E7 -3 TR-909 Snare

099 D#7 -3 TR-909 house kick

098 D7 -3 TR-909 acid kick

097 C#7 -3 short VG snare

096 C7 -3 short VG kick


095 B6 -4 dnb bass stab

094 A#6 -4 TR-808 clave

093 A6 -4 Breaker Kick

092 G#6 -4 Breaker Snare

091 G6 -4 TR-707 Kick

090 F#6 -4 TR-808 Hiht

089 F6 -4 TR-808 Snare

088 E6 -4 TR-707 Snare

087 D#6 -4 TR-707 Hiht

086 D6 -4 TR-909 Hiht

085 C#6 -4 GB kick - gabber kick

084 C6 -4 TR-909 Snare

083 B5 -4 TR-909 house kick

082 A#5 -4 TR-909 acid kick

081 A5 -4 short VG snare

080 G#5 -4 short VG kick


079 G5 -5 dnb bass stab

078 F#5 -5 TR-808 clave

077 F5 -5 Breaker Kick

076 E5 -5 Breaker Snare

075 D#5 -5 TR-707 Kick

074 D5 -5 TR-808 Hiht

073 C#5 -5 TR-808 Snare

072 C5 -5 TR-707 Snare

071 B4 -5 TR-707 Hiht

070 A#4 -5 TR-909 Hiht

069 A4 -5 GB kick - gabber kick

068 G#4 -5 TR-909 Snare

067 G4 -5 TR-909 house kick

066 F#4 -5 TR-909 acid kick

065 F4 -5 short VG snare

064 E4 -5 short VG kick


063 D#4 -6 dnb bass stab

062 D4 -6 TR-808 clave

061 C#4 -6 Breaker Kick

060 C4 -6 Breaker Snare

059 B3 -6 TR-707 Kick

058 A#3 -6 TR-808 Hiht

057 A3 -6 TR-808 Snare

056 G#3 -6 TR-707 Snare

055 G3 -6 TR-707 Hiht

054 F#3 -6 TR-909 Hiht

053 F3 -6 GB kick - gabber kick

052 E3 -6 TR-909 Snare

051 D#3 -6 TR-909 house kick

050 D3 -6 TR-909 acid kick

049 C#3 -6 short VG snare

048 C3 -6 short VG kick


047 B -7 dnb bass stab

046 A#2 -7 TR-808 clave

045 A2 -7 Breaker Kick

044 G#2 -7 Breaker Snare

043 G2 -7 TR-707 Kick

042 F#2 -7 TR-808 Hiht

041 F2 -7 TR-808 Snare

040 E2 -7 TR-707 Snare

039 D#2 -7 TR-707 Hiht

038 D2 -7 TR-909 Hiht

037 C#2 -7 GB kick - gabber kick

036 C2 -7 TR-909 Snare

035 B1 -7 TR-909 house kick

034 A#1 -7 TR-909 acid kick

033 A1 -7 short VG snare

032 G#1 -7 short VG kick


031 G1 0(full) dnb bass stab

030 F#1 0(full) TR-808 clave

029 F1 0(full) Breaker Kick

028 E1 0(full) Breaker Snare

027 D#1 0(full) TR-707 Kick

026 D1 0(full) TR-808 Hiht

025 C#1 0(full) TR-808 Snare

024 C1 0(full) TR-707 Snare

023 B0 0(full) TR-707 Hiht

022 A#0 0(full) TR-909 Hiht

021 A0 0(full) GB kick - gabber kick

020 G#0 0(full) TR-909 Snare

019 G0 0(full) TR-909 house kick

018 F#0 0(full) TR-909 acid kick

017 F0 0(full) short VG snare

016 E0 0(full) short VG kick


015 D#0 -1 dnb bass stab

014 D0 -1 TR-808 clave

013 C#0 -1 Breaker Kick

012 C0 -1 Breaker Snare

011 B-1 -1 TR-707 Kick

010 A#-1 -1 TR-808 Hiht

009 A-1 -1 TR-808 Snare

008 G#-1 -1 TR-707 Snare

007 G-1 -1 TR-707 Hiht

006 F#-1 -1 TR-909 Hiht

005 F-1 -1 GB kick - gabber kick

004 E-1 -1 TR-909 Snare

003 D#-1 -1 TR-909 house kick

002 D-1 -1 TR-909 acid kick

001 C#-1 -1 short VG snare

000 C-1 -1 short VG kick

SOUND TECHNIQUES------------------------------------------------
DELAY
Create a simple melody or arpeggio with the pulse channel #1 (MIDI ch1). Then copy this sequence and paste into pulse channel #2, (MIDI ch2). Next offset the notes by an 8th note - 16th note or triplet depending on the type of delay your after and shorten or cut the remaining overhanging notes off the end of the sequence. Select all the notes on pulse channel 2 (MIDI ch2) and reduce the velocity by 10-25%.
CHORUS
A chorus sound can be achieved by playing pulse channels 1 & 2 on the same note, then using MIDI CC8 to offset one of the pulse channels pitch by a small amount. Altering the duty cycles of the pulse channels in conjunction with a slight pitch offset provides unique chorusing sounds.
FULL FREQUENCY SAMPLE SOUNDS
The sample channel, while excellent for bass type sounds, has a hard time with frequencies above 8Khz or so. In order to make up for this drop in the high frequency domain, using short synchronously timed bursts of noise over the samples can together generate a full frequency sample sound. Try turning MIDI CC9 to 26 to setting the noise length, and set CC10,11 off - 0. This envelope works in a way where the greater the velocity is the longer the decay, the shorter the velocity the shorter the decay. This way it is easy to set up a high frequency layer to complement the samples.

- MIDI CHART------------------------------------------------


Channel 1 - Pulse 01
OFF = less than 64 (0x40)

ON = greater than or equal to 64 (0x40)


Mod wheel / CC1 = Duty Cycle

CC7 = Master Volume (value now overrides note velocity)

CC8 = Fine pitch mod (same as Fine pitch midi parameter)

CC9 = pulse channel length envelope

CC10 = Toggle OFF/ON pulse channel loop envelope

CC11 = Toggle OFF/ON volume Envelope disable

CC12 = Toggle OFF/ON Modulate pulse channel

CC13 = Toggle OFF/ON Enable Sweep

CC14 = Sweep Down / Up

CC15 = Sweep Period

CC16 = Sweep Shift
Channel 2 - Pulse 02
OFF = less than 64 (0x40)

ON = greater than or equal to 64 (0x40)


Mod wheel / CC1 = Duty Cycle

CC7 = Master Volume (value now overrides note velocity)

CC8 = Fine pitch mod (same as Fine pitch midi parameter)

CC9 = Toggle OFF/ON pulse channel length envelope

CC10 = Toggle OFF/ON pulse channel loop envelope

CC11 = Toggle OFF/ON volume Envelope disable

CC12 = Toggle OFF/ON Modulate pulse channel

CC13 = Toggle OFF/ON Enable Sweep

CC14 = Sweep Down / Up

CC15 = Sweep Period

CC16 = Sweep Shift
Channel 3 - Triangle
CC8 = Fine pitch mod
Channel 4 - Noise
OFF = less than 64 (0x40)

ON = greater than or equal to 64 (0x40)


CC7 = Master Volume (value now overrides note velocity)

CC9 = channel length envelope

CC10 = Toggle OFF/ON noise channel loop envelope

CC11 = Toggle OFF/ON volume Envelope disable


Channel 5 - Sample Channel

Share with your friends:


The database is protected by copyright ©essaydocs.org 2019
send message

    Main page