mirror of
https://github.com/vsariola/sointu.git
synced 2026-04-05 21:52:48 -04:00
retro commit for released version 3.11
This commit is contained in:
@ -47,7 +47,12 @@ go4k_synth_wrk resb go4k_synth.size
|
||||
global _go4k_delay_buffer_ofs
|
||||
_go4k_delay_buffer_ofs resd 1
|
||||
global _go4k_delay_buffer
|
||||
_go4k_delay_buffer resd 117*go4kDLL_wrk.size
|
||||
_go4k_delay_buffer resd 16*16*go4kDLL_wrk.size
|
||||
|
||||
%ifdef AUTHORING
|
||||
global __4klang_current_tick
|
||||
__4klang_current_tick resd 0
|
||||
%endif
|
||||
|
||||
%ifdef GO4K_USE_ENVELOPE_RECORDINGS
|
||||
global __4klang_envelope_buffer
|
||||
@ -130,10 +135,12 @@ section .text
|
||||
%endif
|
||||
|
||||
export_func FloatRandomNumber@0
|
||||
push eax
|
||||
imul eax,dword [_RandSeed],16007
|
||||
mov dword [_RandSeed], eax
|
||||
fild dword [_RandSeed]
|
||||
fidiv dword [c_RandDiv]
|
||||
pop eax
|
||||
ret
|
||||
|
||||
; //========================================================================================
|
||||
@ -279,8 +286,7 @@ go4kENV_func_do:
|
||||
mov eax, dword [ecx-8] ; // is the instrument in release mode (note off)?
|
||||
test eax, eax
|
||||
je go4kENV_func_process
|
||||
mov al, ENV_STATE_RELEASE
|
||||
mov dword [WRK+go4kENV_wrk.state], eax
|
||||
mov dword [WRK+go4kENV_wrk.state], ENV_STATE_RELEASE
|
||||
go4kENV_func_process:
|
||||
mov eax, dword [WRK+go4kENV_wrk.state]
|
||||
fld dword [WRK+go4kENV_wrk.level] ; // val -
|
||||
@ -384,8 +390,13 @@ section .g4kcods code align=1
|
||||
section .text
|
||||
%endif
|
||||
go4kVCO_sine:
|
||||
fxch ; // p c
|
||||
fstp st1 ; // p
|
||||
fucomi st1 ; // c p
|
||||
jnc short go4kVCO_func_sine_do
|
||||
fstp st1
|
||||
fsub st0, st0 ; // 0
|
||||
ret
|
||||
go4kVCO_func_sine_do
|
||||
fdivp st1, st0 ; // p/c
|
||||
fldpi ; // pi p
|
||||
fadd st0 ; // 2*pi p
|
||||
fmulp st1, st0 ; // 2*pi*p
|
||||
@ -462,11 +473,28 @@ export_func go4kVCO_func@0
|
||||
mov eax, dword [ecx-4]
|
||||
test eax, eax
|
||||
jne go4kVCO_func_do
|
||||
%ifdef GO4K_USE_VCO_STEREO
|
||||
movzx eax, byte [VAL-1] ; // get flags and check for stereo
|
||||
test al, byte VCO_STEREO
|
||||
jz short go4kVCO_func_nostereoout
|
||||
fldz
|
||||
go4kVCO_func_nostereoout:
|
||||
%endif
|
||||
fldz
|
||||
ret
|
||||
go4kVCO_func_do:
|
||||
%endif
|
||||
movzx eax, byte [VAL-1] ; // get flags
|
||||
%ifdef GO4K_USE_VCO_STEREO
|
||||
test al, byte VCO_STEREO
|
||||
jz short go4kVCO_func_nopswap
|
||||
fld dword [WRK+go4kVCO_wrk.phase] ;// swap left/right phase values for first stereo run
|
||||
fld dword [WRK+go4kVCO_wrk.phase2]
|
||||
fstp dword [WRK+go4kVCO_wrk.phase]
|
||||
fstp dword [WRK+go4kVCO_wrk.phase2]
|
||||
go4kVCO_func_nopswap:
|
||||
%endif
|
||||
go4kVCO_func_process:
|
||||
fld dword [edx+go4kVCO_val.transpose]
|
||||
fsub dword [c_0_5]
|
||||
%ifdef GO4K_USE_VCO_MOD_TM
|
||||
@ -476,6 +504,12 @@ go4kVCO_func_do:
|
||||
fld dword [edx+go4kVCO_val.detune]
|
||||
fsub dword [c_0_5]
|
||||
fadd st0
|
||||
%ifdef GO4K_USE_VCO_STEREO
|
||||
test al, byte VCO_STEREO
|
||||
jz short go4kVCO_func_nodswap
|
||||
fchs ;// negate detune for stereo
|
||||
go4kVCO_func_nodswap:
|
||||
%endif
|
||||
faddp st1
|
||||
%ifdef GO4K_USE_VCO_MOD_DM
|
||||
fadd dword [WRK+go4kVCO_wrk.dm]
|
||||
@ -562,6 +596,18 @@ go4kVCO_func_end:
|
||||
fadd dword [WRK+go4kVCO_wrk.gm]
|
||||
%endif
|
||||
fmulp st1, st0
|
||||
|
||||
%ifdef GO4K_USE_VCO_STEREO
|
||||
test al, byte VCO_STEREO
|
||||
jz short go4kVCO_func_stereodone
|
||||
sub al, byte VCO_STEREO
|
||||
fld dword [WRK+go4kVCO_wrk.phase] ;// swap left/right phase values again for second stereo run
|
||||
fld dword [WRK+go4kVCO_wrk.phase2]
|
||||
fstp dword [WRK+go4kVCO_wrk.phase]
|
||||
fstp dword [WRK+go4kVCO_wrk.phase2]
|
||||
jmp go4kVCO_func_process
|
||||
go4kVCO_func_stereodone:
|
||||
%endif
|
||||
ret
|
||||
|
||||
%ifdef USE_SECTIONS
|
||||
@ -590,16 +636,31 @@ export_func go4kVCF_func@0
|
||||
go4kVCF_func_do:
|
||||
%endif
|
||||
movzx eax, byte [VAL-1] ; // get type flag
|
||||
|
||||
fld dword [edx+go4kVCF_val.res] ; // r in
|
||||
%ifdef GO4K_USE_VCF_MOD_RM
|
||||
fadd dword [WRK+go4kVCF_wrk.rm]
|
||||
%endif
|
||||
fld dword [edx+go4kVCF_val.freq] ; // f r in
|
||||
%endif
|
||||
fstp dword [esp-8]
|
||||
|
||||
fld dword [edx+go4kVCF_val.freq] ; // f in
|
||||
%ifdef GO4K_USE_VCF_MOD_FM
|
||||
fadd dword [WRK+go4kVCF_wrk.fm]
|
||||
%endif
|
||||
fmul st0, st0 ; // square the input so we never get negative and also have a smoother behaviour in the lower frequencies
|
||||
fst dword [WRK+go4kVCF_wrk.freq] ; // f r in
|
||||
fstp dword [esp-4] ; // in
|
||||
|
||||
%ifdef GO4K_USE_VCF_STEREO
|
||||
test al, byte STEREO
|
||||
jz short go4kVCF_func_process
|
||||
add WRK, go4kVCF_wrk.low2
|
||||
go4kVCF_func_stereoloop: ; // switch channels
|
||||
fxch st1 ; // inr inl
|
||||
%endif
|
||||
|
||||
go4kVCF_func_process:
|
||||
fld dword [esp-8]
|
||||
fld dword [esp-4]
|
||||
fmul dword [WRK+go4kVCF_wrk.band] ; // f*b r in
|
||||
fadd dword [WRK+go4kVCF_wrk.low] ; // l' r in
|
||||
fst dword [WRK+go4kVCF_wrk.low] ; // l' r in
|
||||
@ -607,7 +668,7 @@ go4kVCF_func_do:
|
||||
fmul dword [WRK+go4kVCF_wrk.band] ; // r*b in-l'
|
||||
fsubp st1, st0 ; // h'
|
||||
fst dword [WRK+go4kVCF_wrk.high] ; // h'
|
||||
fmul dword [WRK+go4kVCF_wrk.freq] ; // h'*f
|
||||
fmul dword [esp-4] ; // h'*f
|
||||
fadd dword [WRK+go4kVCF_wrk.band] ; // b'
|
||||
fstp dword [WRK+go4kVCF_wrk.band]
|
||||
fldz
|
||||
@ -630,15 +691,21 @@ go4kVCF_func_band:
|
||||
go4kVCF_func_peak:
|
||||
%ifdef GO4K_USE_VCF_PEAK
|
||||
test al, byte PEAK
|
||||
jz short go4kVCF_func_end
|
||||
jz short go4kVCF_func_processdone
|
||||
fadd dword [WRK+go4kVCF_wrk.low]
|
||||
fsub dword [WRK+go4kVCF_wrk.high]
|
||||
%endif
|
||||
go4kVCF_func_processdone:
|
||||
|
||||
%ifdef GO4K_USE_VCF_STEREO
|
||||
test al, byte STEREO ; // outr inl
|
||||
jz short go4kVCF_func_end
|
||||
sub al, byte STEREO
|
||||
sub WRK, go4kVCF_wrk.low2
|
||||
jmp go4kVCF_func_stereoloop
|
||||
%endif
|
||||
|
||||
go4kVCF_func_end: ; // value - - - -
|
||||
%ifdef GO4K_USE_UNDENORMALIZE
|
||||
fadd dword [c_0_5] ; add and sub small offset to prevent denormalization
|
||||
fsub dword [c_0_5]
|
||||
%endif
|
||||
ret
|
||||
|
||||
%ifdef USE_SECTIONS
|
||||
@ -658,10 +725,18 @@ section .text
|
||||
export_func go4kDST_func@0
|
||||
%ifdef GO4K_USE_DST
|
||||
%ifdef GO4K_USE_DST_SH
|
||||
push 2
|
||||
%else
|
||||
push 1
|
||||
%endif
|
||||
%ifdef GO4K_USE_DST_STEREO
|
||||
push 3
|
||||
%else
|
||||
push 2
|
||||
%endif
|
||||
%else
|
||||
%ifdef GO4K_USE_DST_STEREO
|
||||
push 2
|
||||
%else
|
||||
push 1
|
||||
%endif
|
||||
%endif
|
||||
call go4kTransformValues
|
||||
%ifdef GO4K_USE_DST_CHECK
|
||||
; check if current note still active
|
||||
@ -671,6 +746,7 @@ export_func go4kDST_func@0
|
||||
ret
|
||||
go4kDST_func_do:
|
||||
%endif
|
||||
movzx eax, byte [VAL-1] ; // get type flag
|
||||
%ifdef GO4K_USE_DST_SH
|
||||
fld dword [edx+go4kDST_val.snhfreq] ; // snh in
|
||||
%ifdef GO4K_USE_DST_MOD_SH
|
||||
@ -688,6 +764,21 @@ go4kDST_func_do:
|
||||
fstp dword [WRK+go4kDST_wrk.snhphase]; // in
|
||||
%endif
|
||||
; // calc pregain and postgain
|
||||
%ifdef GO4K_USE_DST_STEREO
|
||||
test al, byte STEREO ; // outr inl
|
||||
jz short go4kDST_func_mono
|
||||
fxch st1 ; // inr inl
|
||||
fld dword [edx+go4kDST_val.drive] ; // drive inr inl
|
||||
%ifdef GO4K_USE_DST_MOD_DM
|
||||
fadd dword [WRK+go4kDST_wrk.dm]
|
||||
%endif
|
||||
call go4kWaveshaper ; // outr inl
|
||||
%ifdef GO4K_USE_DST_SH
|
||||
fst dword [WRK+go4kDST_wrk.out2] ; // outr inl
|
||||
%endif
|
||||
fxch st1 ; // inl outr
|
||||
go4kDST_func_mono:
|
||||
%endif
|
||||
fld dword [edx+go4kDST_val.drive] ; // drive in
|
||||
%ifdef GO4K_USE_DST_MOD_DM
|
||||
fadd dword [WRK+go4kDST_wrk.dm]
|
||||
@ -701,6 +792,12 @@ go4kDST_func_do:
|
||||
go4kDST_func_hold:
|
||||
fstp st0 ; // in
|
||||
fstp st0
|
||||
%ifdef GO4K_USE_DST_STEREO
|
||||
test al, byte STEREO ; // outr inl
|
||||
jz short go4kDST_func_monohold
|
||||
fld dword [WRK+go4kDST_wrk.out2] ; // out2
|
||||
go4kDST_func_monohold:
|
||||
%endif
|
||||
fld dword [WRK+go4kDST_wrk.out] ; // out
|
||||
ret
|
||||
%endif
|
||||
@ -953,26 +1050,22 @@ go4kFOP_func_mul:
|
||||
jnz go4kFOP_func_addp2
|
||||
fmul st1
|
||||
ret
|
||||
%ifdef GO4K_USE_FOP_LOADNOTE
|
||||
go4kFOP_func_addp2:
|
||||
dec eax
|
||||
jnz go4kFOP_func_loadnote
|
||||
faddp st2, st0
|
||||
faddp st2, st0
|
||||
ret
|
||||
go4kFOP_func_loadnote:
|
||||
go4kFOP_func_loadnote:
|
||||
dec eax
|
||||
jnz go4kFOP_func_mulp2
|
||||
fild dword [ecx-4]
|
||||
fmul dword [c_i128]
|
||||
ret
|
||||
%else
|
||||
go4kFOP_func_addp2:
|
||||
dec eax
|
||||
jnz go4kFOP_func_dummy+1 ; // now this is no valid jump address (just to please the packer) but if we run in that case we're fucked up anyway
|
||||
faddp st2, st0
|
||||
go4kFOP_func_dummy:
|
||||
faddp st2, st0
|
||||
ret
|
||||
%endif
|
||||
go4kFOP_func_mulp2:
|
||||
fmulp st2, st0
|
||||
fmulp st2, st0
|
||||
ret
|
||||
|
||||
%ifdef USE_SECTIONS
|
||||
section .g4kcodh code align=1
|
||||
@ -989,13 +1082,23 @@ section .text
|
||||
; // DIRTY :
|
||||
; //----------------------------------------------------------------------------------------
|
||||
export_func go4kFST_func@0
|
||||
push 2
|
||||
push 1
|
||||
call go4kTransformValues
|
||||
fld dword [edx+go4kFST_val.amount]
|
||||
fsub dword [c_0_5]
|
||||
fadd st0
|
||||
fmul st1
|
||||
fstp dword [ecx+eax*4] ; // eax already contains the destination from the go4kTransformValues call
|
||||
lodsw
|
||||
and eax, 0x00003fff ; // eax is destination slot
|
||||
test word [VAL-2], FST_ADD
|
||||
jz go4kFST_func_set
|
||||
fadd dword [ecx+eax*4]
|
||||
go4kFST_func_set:
|
||||
fstp dword [ecx+eax*4]
|
||||
test word [VAL-2], FST_POP
|
||||
jz go4kFST_func_done
|
||||
fstp st0
|
||||
go4kFST_func_done:
|
||||
ret
|
||||
|
||||
%ifdef USE_SECTIONS
|
||||
@ -1041,30 +1144,39 @@ section .text
|
||||
; // DIRTY :
|
||||
; //----------------------------------------------------------------------------------------
|
||||
export_func go4kFSTG_func@0
|
||||
push 5
|
||||
push 1
|
||||
call go4kTransformValues
|
||||
%ifdef GO4K_USE_FSTG_CHECK
|
||||
; check if current note still active
|
||||
mov eax, dword [ecx-4]
|
||||
test eax, eax
|
||||
jne go4kFSTG_func_do
|
||||
ret
|
||||
lodsw
|
||||
jmp go4kFSTG_func_testpop
|
||||
go4kFSTG_func_do:
|
||||
%endif
|
||||
fld dword [edx+go4kFST_val.amount]
|
||||
fsub dword [c_0_5]
|
||||
fadd st0
|
||||
fmul st1
|
||||
mov eax, dword [VAL-4]
|
||||
fmul st1
|
||||
lodsw
|
||||
and eax, 0x00003fff ; // eax is destination slot
|
||||
test word [VAL-2], FST_ADD
|
||||
jz go4kFSTG_func_set
|
||||
fadd dword [go4k_synth_wrk+eax*4]
|
||||
go4kFSTG_func_set:
|
||||
%if MAX_VOICES > 1
|
||||
fst dword [go4k_synth_wrk+eax]
|
||||
fstp dword [go4k_synth_wrk+eax+go4k_instrument.size]
|
||||
fst dword [go4k_synth_wrk+eax*4]
|
||||
fstp dword [go4k_synth_wrk+eax*4+go4k_instrument.size]
|
||||
%else
|
||||
fstp dword [go4k_synth_wrk+eax]
|
||||
%endif
|
||||
|
||||
ret
|
||||
|
||||
fstp dword [go4k_synth_wrk+eax*4]
|
||||
%endif
|
||||
go4kFSTG_func_testpop:
|
||||
test word [VAL-2], FST_POP
|
||||
jz go4kFSTG_func_done
|
||||
fstp st0
|
||||
go4kFSTG_func_done:
|
||||
ret
|
||||
%endif
|
||||
|
||||
%ifdef USE_SECTIONS
|
||||
@ -1117,7 +1229,7 @@ export_func go4kOUT_func@0 ;// l r
|
||||
push 2
|
||||
call go4kTransformValues
|
||||
pushad
|
||||
lea edi, [ecx+256*4]
|
||||
lea edi, [ecx+MAX_UNITS*MAX_UNIT_SLOTS*4]
|
||||
fld st1 ;// r l r
|
||||
fld st1 ;// l r l r
|
||||
fld dword [edx+go4kOUT_val.auxsend] ;// as l r l r
|
||||
@ -1158,13 +1270,13 @@ export_func go4kOUT_func@0 ;// l r
|
||||
fadd dword [WRK+go4kOUT_wrk.gm] ;// gm l r
|
||||
%endif
|
||||
fmulp st1, st0 ;// l' r
|
||||
fstp dword [ecx+256*4+0] ;// r
|
||||
fstp dword [ecx+MAX_UNITS*MAX_UNIT_SLOTS*4+0] ;// r
|
||||
fld dword [edx+go4kOUT_val.gain] ;// g r
|
||||
%ifdef GO4K_USE_OUT_MOD_GM
|
||||
fadd dword [WRK+go4kOUT_wrk.gm] ;// gm r
|
||||
%endif
|
||||
fmulp st1, st0 ;// r'
|
||||
fstp dword [ecx+256*4+4] ;// -
|
||||
fstp dword [ecx+MAX_UNITS*MAX_UNIT_SLOTS*4+4] ;// -
|
||||
|
||||
%endif
|
||||
ret
|
||||
@ -1248,7 +1360,7 @@ go4kUpdateInstrument_newNote:
|
||||
%endif
|
||||
pushad
|
||||
xor eax, eax
|
||||
mov ecx, (8+256*4)/4 ; // clear only relase, note and workspace
|
||||
mov ecx, (8+MAX_UNITS*MAX_UNIT_SLOTS*4)/4 ; // clear only relase, note and workspace
|
||||
rep stosd
|
||||
popad
|
||||
mov dword [edi+4], edx ; // set requested note as current note
|
||||
@ -1476,6 +1588,9 @@ go4k_render_nogroove:
|
||||
jl go4k_render_sampleloop
|
||||
pop ecx
|
||||
inc ecx
|
||||
%ifdef AUTHORING
|
||||
mov dword[__4klang_current_tick], ecx
|
||||
%endif
|
||||
cmp ecx, dword MAX_TICKS
|
||||
jl go4k_render_tickloop
|
||||
%ifdef GO4K_USE_BUFFER_RECORDINGS
|
||||
@ -1507,7 +1622,7 @@ go4k_VM_process_loop:
|
||||
test eax, eax
|
||||
je go4k_VM_process_done ; // command byte = 0? so done
|
||||
call dword [eax*4+go4k_synth_commands]
|
||||
add WRK, MAX_WORKSPACE_SLOTS*4 ; // go to next workspace slot
|
||||
add WRK, MAX_UNIT_SLOTS*4 ; // go to next workspace slot
|
||||
jmp short go4k_VM_process_loop
|
||||
go4k_VM_process_done:
|
||||
add edi, go4k_instrument.size ; // go to next instrument voice
|
||||
|
||||
@ -7,7 +7,7 @@
|
||||
global _%1
|
||||
_%1:
|
||||
%endmacro
|
||||
%define USE_SECTIONS
|
||||
;%define USE_SECTIONS
|
||||
; //----------------------------------------------------------------------------------------
|
||||
; // basic defines for the song/synth
|
||||
; //----------------------------------------------------------------------------------------
|
||||
@ -52,22 +52,24 @@
|
||||
%define GO4K_USE_VCO_MOD_CM ; // removing this skips color modulation code
|
||||
%define GO4K_USE_VCO_MOD_GM ; // removing this skips gain modulation code
|
||||
%define GO4K_USE_VCO_MOD_SM ; // removing this skips shaping modulation code
|
||||
%define GO4K_USE_VCO_STEREO ; // removing this skips stereo code
|
||||
%define GO4K_USE_VCF_CHECK ; // removing this skips checks if processing is needed
|
||||
%define GO4K_USE_VCF_MOD_FM ; // removing this skips frequency modulation code
|
||||
%define GO4K_USE_VCF_MOD_RM ; // removing this skips resonance modulation code
|
||||
%define GO4K_USE_VCF_HIGH ; // removing this skips code for high output
|
||||
%define GO4K_USE_VCF_BAND ; // removing this skips code for band output
|
||||
%define GO4K_USE_VCF_PEAK ; // removing this skips code for peak output
|
||||
%define GO4K_USE_VCF_STEREO ; // removing this skips code for stereo filter output
|
||||
%define GO4K_USE_DST_CHECK ; // removing this skips checks if processing is needed
|
||||
%define GO4K_USE_DST_SH ; // removing this skips sample and hold code
|
||||
%define GO4K_USE_DST_MOD_DM ; // removing this skips distortion modulation code
|
||||
%define GO4K_USE_DST_MOD_SH ; // removing this skips sample and hold modulation code
|
||||
%define GO4K_USE_DST_STEREO ; // removing this skips stereo processing
|
||||
%define GO4K_USE_DLL_NOTE_SYNC ; // removing this will skip delay length adjusting code (karplus strong)
|
||||
%define GO4K_USE_DLL_CHORUS ; // removing this will skip delay chorus/flanger code
|
||||
%define GO4K_USE_DLL_CHORUS_CLAMP ; // removing this will skip chorus lfo phase clamping
|
||||
%define GO4K_USE_DLL_DAMP ; // removing this will skip dll damping code
|
||||
%define GO4K_USE_DLL_DC_FILTER ; // removing this will skip dll dc offset removal code
|
||||
%define GO4K_USE_FOP_LOADNOTE ; // removing this will skip load note code
|
||||
%define GO4K_USE_FSTG_CHECK ; // removing this skips checks if processing is needed
|
||||
%define GO4K_USE_PAN_MOD ; // removing this will skip panning modulation code
|
||||
%define GO4K_USE_OUT_MOD_AM ; // removing this skips output aux send modulation code
|
||||
@ -86,11 +88,12 @@
|
||||
; // synth defines
|
||||
; //----------------------------------------------------------------------------------------
|
||||
%define MAX_DELAY 65536
|
||||
%define MAX_WORKSPACE_SLOTS 8
|
||||
%define GO4K_BEGIN_CMDDEF(def_name)
|
||||
%define GO4K_END_CMDDEF db 0
|
||||
%define GO4K_BEGIN_PARAMDEF(def_name)
|
||||
%define GO4K_END_PARAMDEF
|
||||
%define MAX_UNITS 64
|
||||
%define MAX_UNIT_SLOTS 16
|
||||
%define GO4K_BEGIN_CMDDEF(def_name)
|
||||
%define GO4K_END_CMDDEF db 0
|
||||
%define GO4K_BEGIN_PARAMDEF(def_name)
|
||||
%define GO4K_END_PARAMDEF
|
||||
; //----------------------------------------------------------------------------------------
|
||||
; // ENV structs
|
||||
; //----------------------------------------------------------------------------------------
|
||||
@ -168,6 +171,7 @@ GO4K_VCO_ID equ 2
|
||||
%define NOISE 0x08
|
||||
%define LFO 0x10
|
||||
%define GATE 0x20
|
||||
%define VCO_STEREO 0x40
|
||||
struc go4kVCO_val
|
||||
;// unit paramters
|
||||
.transpose resd 1
|
||||
@ -197,6 +201,8 @@ struc go4kVCO_wrk
|
||||
.cm resd 1
|
||||
.sm resd 1
|
||||
.gm resd 1
|
||||
;// stero variables
|
||||
.phase2 resd 1
|
||||
.size
|
||||
endstruc
|
||||
; //----------------------------------------------------------------------------------------
|
||||
@ -214,6 +220,7 @@ GO4K_VCF_ID equ 3
|
||||
%define BANDSTOP 0x3
|
||||
%define ALLPASS 0x7
|
||||
%define PEAK 0x8
|
||||
%define STEREO 0x10
|
||||
%define FREQUENCY(val) val
|
||||
%define RESONANCE(val) val
|
||||
%define VCFTYPE(val) val
|
||||
@ -229,38 +236,54 @@ struc go4kVCF_wrk
|
||||
.low resd 1
|
||||
.high resd 1
|
||||
.band resd 1
|
||||
.freq resd 1
|
||||
.freq resd 1 ;// unused but kept so modulation target offsets stay same
|
||||
;// modulation targets
|
||||
.fm resd 1
|
||||
.rm resd 1
|
||||
.rm resd 1
|
||||
;// stereo variables
|
||||
.low2 resd 1
|
||||
.high2 resd 1
|
||||
.band2 resd 1
|
||||
.size
|
||||
endstruc
|
||||
; //----------------------------------------------------------------------------------------
|
||||
; // DST structs
|
||||
; //----------------------------------------------------------------------------------------
|
||||
GO4K_DST_ID equ 4
|
||||
%macro GO4K_DST 2
|
||||
%macro GO4K_DST 3
|
||||
db %1
|
||||
%ifdef GO4K_USE_DST_SH
|
||||
db %2
|
||||
%endif
|
||||
%ifdef GO4K_USE_DST_STEREO
|
||||
db %3
|
||||
%endif
|
||||
%else
|
||||
%ifdef GO4K_USE_DST_STEREO
|
||||
db %3
|
||||
%endif
|
||||
%endif
|
||||
%endmacro
|
||||
%define DRIVE(val) val
|
||||
%define SNHFREQ(val) val
|
||||
%define FLAGS(val) val
|
||||
struc go4kDST_val
|
||||
;// unit paramters
|
||||
.drive resd 1
|
||||
%ifdef GO4K_USE_DST_SH
|
||||
.snhfreq resd 1
|
||||
%endif
|
||||
.flags resd 1
|
||||
.size
|
||||
endstruc
|
||||
struc go4kDST_wrk
|
||||
;// work variables
|
||||
.out resd 1
|
||||
.snhphase resd 1
|
||||
;// modulation targets
|
||||
.dm resd 1
|
||||
.sm resd 1
|
||||
;// stereo variables
|
||||
.out2 resd 1
|
||||
.size
|
||||
endstruc
|
||||
; //----------------------------------------------------------------------------------------
|
||||
@ -342,6 +365,7 @@ GO4K_FOP_ID equ 6
|
||||
%define FOP_MUL 0x7
|
||||
%define FOP_ADDP2 0x8
|
||||
%define FOP_LOADNOTE 0x9
|
||||
%define FOP_MULP2 0xa
|
||||
struc go4kFOP_val
|
||||
.flags resd 1
|
||||
.size
|
||||
@ -355,10 +379,13 @@ endstruc
|
||||
GO4K_FST_ID equ 7
|
||||
%macro GO4K_FST 2
|
||||
db %1
|
||||
db %2
|
||||
dw %2
|
||||
%endmacro
|
||||
%define AMOUNT(val) val
|
||||
%define DEST(val) val
|
||||
%define FST_SET 0x0000
|
||||
%define FST_ADD 0x4000
|
||||
%define FST_POP 0x8000
|
||||
struc go4kFST_val
|
||||
.amount resd 1
|
||||
.op1 resd 1
|
||||
@ -455,7 +482,7 @@ endstruc
|
||||
GO4K_FSTG_ID equ 12
|
||||
%macro GO4K_FSTG 2
|
||||
db %1
|
||||
dd %2
|
||||
dw %2
|
||||
%endmacro
|
||||
struc go4kFSTG_val
|
||||
.amount resd 1
|
||||
@ -472,7 +499,7 @@ endstruc
|
||||
struc go4k_instrument
|
||||
.release resd 1
|
||||
.note resd 1
|
||||
.workspace resd 256
|
||||
.workspace resd MAX_UNITS*MAX_UNIT_SLOTS
|
||||
.dlloutl resd 1
|
||||
.dlloutr resd 1
|
||||
.outl resd 1
|
||||
@ -723,18 +750,18 @@ section .data
|
||||
go4k_synth_parameter_values
|
||||
GO4K_BEGIN_PARAMDEF(Instrument0)
|
||||
GO4K_ENV ATTAC(72),DECAY(96),SUSTAIN(96),RELEASE(88),GAIN(128)
|
||||
GO4K_FST AMOUNT(64),DEST(0*MAX_WORKSPACE_SLOTS+2)
|
||||
GO4K_FST AMOUNT(64),DEST(0*MAX_UNIT_SLOTS+2)
|
||||
GO4K_VCO TRANSPOSE(64),DETUNE(60),PHASE(32),GATES(0),COLOR(80),SHAPE(64),GAIN(128),FLAGS(PULSE)
|
||||
GO4K_VCO TRANSPOSE(64),DETUNE(72),PHASE(32),GATES(0),COLOR(96),SHAPE(64),GAIN(128),FLAGS(TRISAW)
|
||||
GO4K_VCO TRANSPOSE(32),DETUNE(64),PHASE(0),GATES(0),COLOR(64),SHAPE(96),GAIN(128),FLAGS(SINE|LFO)
|
||||
GO4K_FST AMOUNT(68),DEST(2*MAX_WORKSPACE_SLOTS+2)
|
||||
GO4K_FST AMOUNT(61),DEST(3*MAX_WORKSPACE_SLOTS+2)
|
||||
GO4K_FST AMOUNT(68),DEST(2*MAX_UNIT_SLOTS+2)
|
||||
GO4K_FST AMOUNT(61),DEST(3*MAX_UNIT_SLOTS+2)
|
||||
GO4K_FOP OP(FOP_POP)
|
||||
GO4K_FOP OP(FOP_ADDP)
|
||||
GO4K_FOP OP(FOP_MULP)
|
||||
GO4K_VCF FREQUENCY(26),RESONANCE(128),VCFTYPE(PEAK)
|
||||
GO4K_VCF FREQUENCY(64),RESONANCE(64),VCFTYPE(LOWPASS)
|
||||
GO4K_DST DRIVE(104), SNHFREQ(128)
|
||||
GO4K_DST DRIVE(104), SNHFREQ(128), FLAGS(0)
|
||||
GO4K_PAN PANNING(64)
|
||||
GO4K_DLL PREGAIN(96),DRY(128),FEEDBACK(96),DAMP(64),FREQUENCY(0),DEPTH(0),DELAY(16),COUNT(1)
|
||||
GO4K_FOP OP(FOP_XCH)
|
||||
@ -744,18 +771,18 @@ GO4K_BEGIN_PARAMDEF(Instrument0)
|
||||
GO4K_END_PARAMDEF
|
||||
GO4K_BEGIN_PARAMDEF(Instrument1)
|
||||
GO4K_ENV ATTAC(72),DECAY(96),SUSTAIN(96),RELEASE(88),GAIN(128)
|
||||
GO4K_FST AMOUNT(64),DEST(0*MAX_WORKSPACE_SLOTS+2)
|
||||
GO4K_FST AMOUNT(64),DEST(0*MAX_UNIT_SLOTS+2)
|
||||
GO4K_VCO TRANSPOSE(64),DETUNE(60),PHASE(32),GATES(0),COLOR(80),SHAPE(64),GAIN(128),FLAGS(TRISAW)
|
||||
GO4K_VCO TRANSPOSE(64),DETUNE(72),PHASE(32),GATES(0),COLOR(96),SHAPE(112),GAIN(64),FLAGS(SINE)
|
||||
GO4K_VCO TRANSPOSE(80),DETUNE(112),PHASE(0),GATES(0),COLOR(64),SHAPE(16),GAIN(128),FLAGS(PULSE|LFO)
|
||||
GO4K_FST AMOUNT(68),DEST(2*MAX_WORKSPACE_SLOTS+2)
|
||||
GO4K_FST AMOUNT(60),DEST(3*MAX_WORKSPACE_SLOTS+2)
|
||||
GO4K_FST AMOUNT(68),DEST(2*MAX_UNIT_SLOTS+2)
|
||||
GO4K_FST AMOUNT(60),DEST(3*MAX_UNIT_SLOTS+2)
|
||||
GO4K_FOP OP(FOP_POP)
|
||||
GO4K_FOP OP(FOP_ADDP)
|
||||
GO4K_FOP OP(FOP_MULP)
|
||||
GO4K_VCF FREQUENCY(80),RESONANCE(24),VCFTYPE(LOWPASS)
|
||||
GO4K_VCF FREQUENCY(48),RESONANCE(24),VCFTYPE(HIGHPASS)
|
||||
GO4K_DST DRIVE(64), SNHFREQ(128)
|
||||
GO4K_DST DRIVE(64), SNHFREQ(128), FLAGS(0)
|
||||
GO4K_PAN PANNING(64)
|
||||
GO4K_DLL PREGAIN(96),DRY(128),FEEDBACK(96),DAMP(64),FREQUENCY(0),DEPTH(0),DELAY(16),COUNT(1)
|
||||
GO4K_FOP OP(FOP_XCH)
|
||||
@ -765,18 +792,18 @@ GO4K_BEGIN_PARAMDEF(Instrument1)
|
||||
GO4K_END_PARAMDEF
|
||||
GO4K_BEGIN_PARAMDEF(Instrument2)
|
||||
GO4K_ENV ATTAC(32),DECAY(64),SUSTAIN(64),RELEASE(64),GAIN(64)
|
||||
GO4K_FST AMOUNT(120),DEST(0*MAX_WORKSPACE_SLOTS+2)
|
||||
GO4K_FST AMOUNT(120),DEST(0*MAX_UNIT_SLOTS+2)
|
||||
GO4K_VCO TRANSPOSE(64),DETUNE(64),PHASE(32),GATES(0),COLOR(80),SHAPE(64),GAIN(128),FLAGS(PULSE)
|
||||
GO4K_VCO TRANSPOSE(64),DETUNE(72),PHASE(32),GATES(0),COLOR(96),SHAPE(64),GAIN(128),FLAGS(TRISAW)
|
||||
GO4K_VCO TRANSPOSE(32),DETUNE(64),PHASE(0),GATES(0),COLOR(64),SHAPE(96),GAIN(128),FLAGS(SINE|LFO)
|
||||
GO4K_FST AMOUNT(68),DEST(2*MAX_WORKSPACE_SLOTS+2)
|
||||
GO4K_FST AMOUNT(60),DEST(3*MAX_WORKSPACE_SLOTS+2)
|
||||
GO4K_FST AMOUNT(68),DEST(2*MAX_UNIT_SLOTS+2)
|
||||
GO4K_FST AMOUNT(60),DEST(3*MAX_UNIT_SLOTS+2)
|
||||
GO4K_FOP OP(FOP_POP)
|
||||
GO4K_FOP OP(FOP_ADDP)
|
||||
GO4K_FOP OP(FOP_MULP)
|
||||
GO4K_VCF FREQUENCY(18),RESONANCE(64),VCFTYPE(PEAK)
|
||||
GO4K_VCF FREQUENCY(32),RESONANCE(48),VCFTYPE(LOWPASS)
|
||||
GO4K_DST DRIVE(88), SNHFREQ(128)
|
||||
GO4K_DST DRIVE(88), SNHFREQ(128), FLAGS(0)
|
||||
GO4K_PAN PANNING(64)
|
||||
GO4K_DLL PREGAIN(64),DRY(128),FEEDBACK(96),DAMP(64),FREQUENCY(0),DEPTH(0),DELAY(16),COUNT(1)
|
||||
GO4K_FOP OP(FOP_XCH)
|
||||
@ -786,7 +813,7 @@ GO4K_BEGIN_PARAMDEF(Instrument2)
|
||||
GO4K_END_PARAMDEF
|
||||
GO4K_BEGIN_PARAMDEF(Instrument3)
|
||||
GO4K_ENV ATTAC(0),DECAY(76),SUSTAIN(0),RELEASE(0),GAIN(32)
|
||||
GO4K_FST AMOUNT(128),DEST(0*MAX_WORKSPACE_SLOTS+2)
|
||||
GO4K_FST AMOUNT(128),DEST(0*MAX_UNIT_SLOTS+2)
|
||||
GO4K_VCO TRANSPOSE(64),DETUNE(64),PHASE(64),GATES(0),COLOR(64),SHAPE(64),GAIN(128),FLAGS(NOISE)
|
||||
GO4K_FOP OP(FOP_MULP)
|
||||
GO4K_VCF FREQUENCY(80),RESONANCE(128),VCFTYPE(LOWPASS)
|
||||
@ -795,10 +822,10 @@ GO4K_BEGIN_PARAMDEF(Instrument3)
|
||||
GO4K_END_PARAMDEF
|
||||
GO4K_BEGIN_PARAMDEF(Instrument4)
|
||||
GO4K_ENV ATTAC(0),DECAY(64),SUSTAIN(96),RELEASE(64),GAIN(128)
|
||||
GO4K_FST AMOUNT(128),DEST(0*MAX_WORKSPACE_SLOTS+2)
|
||||
GO4K_FST AMOUNT(128),DEST(0*MAX_UNIT_SLOTS+2)
|
||||
GO4K_ENV ATTAC(0),DECAY(70),SUSTAIN(0),RELEASE(0),GAIN(128)
|
||||
GO4K_DST DRIVE(32), SNHFREQ(128)
|
||||
GO4K_FST AMOUNT(80),DEST(6*MAX_WORKSPACE_SLOTS+1)
|
||||
GO4K_DST DRIVE(32), SNHFREQ(128), FLAGS(0)
|
||||
GO4K_FST AMOUNT(80),DEST(6*MAX_UNIT_SLOTS+1)
|
||||
GO4K_FOP OP(FOP_POP)
|
||||
GO4K_VCO TRANSPOSE(46),DETUNE(64),PHASE(0),GATES(0),COLOR(64),SHAPE(64),GAIN(128),FLAGS(TRISAW)
|
||||
GO4K_FOP OP(FOP_MULP)
|
||||
@ -819,10 +846,10 @@ GO4K_BEGIN_PARAMDEF(Instrument5)
|
||||
GO4K_END_PARAMDEF
|
||||
GO4K_BEGIN_PARAMDEF(Instrument6)
|
||||
GO4K_ENV ATTAC(0),DECAY(72),SUSTAIN(0),RELEASE(72),GAIN(128)
|
||||
GO4K_FST AMOUNT(128),DEST(0*MAX_WORKSPACE_SLOTS+2)
|
||||
GO4K_FST AMOUNT(128),DEST(0*MAX_UNIT_SLOTS+2)
|
||||
GO4K_ENV ATTAC(0),DECAY(56),SUSTAIN(0),RELEASE(0),GAIN(128)
|
||||
GO4K_FST AMOUNT(108),DEST(6*MAX_WORKSPACE_SLOTS+1)
|
||||
GO4K_FST AMOUNT(72),DEST(7*MAX_WORKSPACE_SLOTS+1)
|
||||
GO4K_FST AMOUNT(108),DEST(6*MAX_UNIT_SLOTS+1)
|
||||
GO4K_FST AMOUNT(72),DEST(7*MAX_UNIT_SLOTS+1)
|
||||
GO4K_FOP OP(FOP_POP)
|
||||
GO4K_VCO TRANSPOSE(32),DETUNE(64),PHASE(0),GATES(0),COLOR(64),SHAPE(32),GAIN(64),FLAGS(SINE)
|
||||
GO4K_VCO TRANSPOSE(64),DETUNE(64),PHASE(0),GATES(0),COLOR(64),SHAPE(80),GAIN(64),FLAGS(SINE)
|
||||
@ -850,8 +877,8 @@ GO4K_BEGIN_PARAMDEF(Instrument8)
|
||||
GO4K_ENV ATTAC(0),DECAY(0),SUSTAIN(128),RELEASE(0),GAIN(128)
|
||||
GO4K_VCO TRANSPOSE(48),DETUNE(64),PHASE(0),GATES(0),COLOR(64),SHAPE(64),GAIN(128),FLAGS(TRISAW|LFO)
|
||||
GO4K_FOP OP(FOP_MULP)
|
||||
GO4K_FSTG AMOUNT(72),DEST(2*go4k_instrument.size*MAX_VOICES+10*MAX_WORKSPACE_SLOTS*4+4*4+go4k_instrument.workspace)
|
||||
GO4K_FSTG AMOUNT(66),DEST(1*go4k_instrument.size*MAX_VOICES+10*MAX_WORKSPACE_SLOTS*4+4*4+go4k_instrument.workspace)
|
||||
GO4K_FSTG AMOUNT(72),DEST(2*go4k_instrument.size*MAX_VOICES+10*MAX_UNIT_SLOTS*4+4*4+go4k_instrument.workspace)
|
||||
GO4K_FSTG AMOUNT(66),DEST(1*go4k_instrument.size*MAX_VOICES+10*MAX_UNIT_SLOTS*4+4*4+go4k_instrument.workspace)
|
||||
GO4K_FOP OP(FOP_POP)
|
||||
GO4K_END_PARAMDEF
|
||||
;// global parameters
|
||||
|
||||
@ -19,7 +19,11 @@ Go4kVSTi::Go4kVSTi (audioMasterCallback audioMaster) : AudioEffectX (audioMaster
|
||||
hasVu (false);
|
||||
hasClip (false);
|
||||
isSynth ();
|
||||
#ifdef _8KLANG
|
||||
setUniqueID ('8klg');
|
||||
#else
|
||||
setUniqueID ('4klg');
|
||||
#endif
|
||||
}
|
||||
initProcess ();
|
||||
suspend ();
|
||||
@ -99,7 +103,11 @@ bool Go4kVSTi::copyProgram (long destination)
|
||||
//-----------------------------------------------------------------------------------------
|
||||
bool Go4kVSTi::getEffectName (char* name)
|
||||
{
|
||||
#ifdef _8KLANG
|
||||
strcpy (name, "8klang");
|
||||
#else
|
||||
strcpy (name, "4klang");
|
||||
#endif
|
||||
return true;
|
||||
}
|
||||
|
||||
@ -113,7 +121,11 @@ bool Go4kVSTi::getVendorString (char* text)
|
||||
//-----------------------------------------------------------------------------------------
|
||||
bool Go4kVSTi::getProductString (char* text)
|
||||
{
|
||||
#ifdef _8KLANG
|
||||
strcpy (text, "8klang");
|
||||
#else
|
||||
strcpy (text, "4klang");
|
||||
#endif
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@ -66,14 +66,12 @@ void Go4kVSTi_LoadUnit(char* filename, BYTE* slot);
|
||||
// save unit date from specified slot
|
||||
void Go4kVSTi_SaveUnit(char* filename, BYTE* slot);
|
||||
|
||||
#define EXPORT_OBJECT_FILE_
|
||||
void Go4kVSTi_SaveByteStream(HINSTANCE hInst, char* filename, int useenvlevels, int useenotevalues, int clipoutput, int undenormalize, int objformat, int output16);
|
||||
|
||||
#define MAX_POLYPHONY 2
|
||||
#define MAX_INSTRUMENTS 16
|
||||
#define MAX_SLOT_VALUES 32
|
||||
|
||||
#define MAX_SLOTS 32
|
||||
#define MAX_UNITS 64
|
||||
#define MAX_UNIT_SLOTS 16
|
||||
|
||||
enum UnitID
|
||||
{
|
||||
@ -120,6 +118,7 @@ typedef struct ENV_val
|
||||
#define VCO_NOISE 0x08
|
||||
#define VCO_LFO 0x10
|
||||
#define VCO_GATE 0x20
|
||||
#define VCO_STEREO 0x40
|
||||
typedef struct VCO_val
|
||||
{
|
||||
BYTE id;
|
||||
@ -153,6 +152,7 @@ typedef struct VCO11_val
|
||||
#define VCF_BANDSTOP 0x3
|
||||
#define VCF_ALLPASS 0x7
|
||||
#define VCF_PEAK 0x8
|
||||
#define VCF_STEREO 0x10
|
||||
typedef struct VCF_val
|
||||
{
|
||||
BYTE id;
|
||||
@ -167,6 +167,7 @@ typedef struct DST_val
|
||||
BYTE id;
|
||||
BYTE drive;
|
||||
BYTE snhfreq;
|
||||
BYTE stereo;
|
||||
// GUI STUFF
|
||||
} *DST_valP;
|
||||
|
||||
@ -213,17 +214,22 @@ typedef struct DLL10_val
|
||||
#define FOP_MUL 0x7
|
||||
#define FOP_ADDP2 0x8
|
||||
#define FOP_LOADNOTE 0x9
|
||||
#define FOP_MULP2 0xa
|
||||
typedef struct FOP_val
|
||||
{
|
||||
BYTE id;
|
||||
BYTE flags;
|
||||
} *FOP_valP;
|
||||
|
||||
#define FST_SET 0x00
|
||||
#define FST_ADD 0x10
|
||||
#define FST_MUL 0x20
|
||||
#define FST_POP 0x40
|
||||
typedef struct FST_val
|
||||
{
|
||||
BYTE id;
|
||||
BYTE amount;
|
||||
BYTE dest;
|
||||
BYTE type;
|
||||
// GUI STUFF
|
||||
char dest_stack;
|
||||
char dest_unit;
|
||||
@ -269,7 +275,7 @@ typedef struct InstrumentWorkspace
|
||||
{
|
||||
DWORD release;
|
||||
DWORD note;
|
||||
float workspace[256];
|
||||
float workspace[MAX_UNITS*MAX_UNIT_SLOTS];
|
||||
float dlloutl;
|
||||
float dlloutr;
|
||||
float outl;
|
||||
@ -280,8 +286,8 @@ typedef struct SynthObject
|
||||
{
|
||||
DWORD Polyphony;
|
||||
char InstrumentNames[MAX_INSTRUMENTS][64];
|
||||
BYTE InstrumentValues[MAX_INSTRUMENTS][MAX_SLOTS][MAX_SLOT_VALUES]; // 16 instruments a 32 slots a 32 dowrds
|
||||
BYTE GlobalValues[MAX_SLOTS][MAX_SLOT_VALUES]; // 32 slots a 32 dwords
|
||||
BYTE InstrumentValues[MAX_INSTRUMENTS][MAX_UNITS][MAX_UNIT_SLOTS]; // 16 instruments a 32 slots a 32 dowrds
|
||||
BYTE GlobalValues[MAX_UNITS][MAX_UNIT_SLOTS]; // 32 slots a 32 dwords
|
||||
InstrumentWorkspace InstrumentWork[MAX_INSTRUMENTS*MAX_POLYPHONY];
|
||||
InstrumentWorkspace GlobalWork;
|
||||
DWORD InstrumentSignalValid[MAX_INSTRUMENTS];
|
||||
@ -289,6 +295,7 @@ typedef struct SynthObject
|
||||
float SignalTrace[MAX_INSTRUMENTS];
|
||||
int ControlInstrument[MAX_INSTRUMENTS];
|
||||
int VoiceIndex[MAX_INSTRUMENTS];
|
||||
int HighestSlotIndex[17];
|
||||
} *SynthObjectP;
|
||||
|
||||
SynthObjectP Go4kVSTi_GetSynthObject();
|
||||
@ -29,9 +29,10 @@ static int SelectedIUnit = 0;
|
||||
static int SelectedGUnit = 0;
|
||||
static int SelectedTab = T_INSTRUMENT;
|
||||
static int SelectedInstrument = 0;
|
||||
static int LinkToInstrument[16] = { 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16 };
|
||||
static int SetUnit = -1;
|
||||
static char SliderValTxt[128];
|
||||
static DWORD UnitCopyBuffer[MAX_SLOT_VALUES];
|
||||
static DWORD UnitCopyBuffer[MAX_UNIT_SLOTS];
|
||||
static int InstrumentScrollPos[MAX_INSTRUMENTS];
|
||||
static int GlobalScrollPos;
|
||||
static int InitDone = false;
|
||||
@ -183,17 +184,18 @@ char* GetUnitString(BYTE* unit, char* unitname)
|
||||
if (unit[0] == M_VCF)
|
||||
{
|
||||
VCF_valP val = (VCF_valP)unit;
|
||||
if (val->type == VCF_LOWPASS)
|
||||
int ft = val->type & ~VCF_STEREO;
|
||||
if (ft == VCF_LOWPASS)
|
||||
sprintf(UnitDesc, " (%s F:%d)","Low", val->freq);
|
||||
if (val->type == VCF_HIGHPASS)
|
||||
if (ft == VCF_HIGHPASS)
|
||||
sprintf(UnitDesc, " (%s F:%d)","High", val->freq);
|
||||
if (val->type == VCF_BANDPASS)
|
||||
if (ft == VCF_BANDPASS)
|
||||
sprintf(UnitDesc, " (%s F:%d)","Band", val->freq);
|
||||
if (val->type == VCF_BANDSTOP)
|
||||
if (ft == VCF_BANDSTOP)
|
||||
sprintf(UnitDesc, " (%s F:%d)","Notch", val->freq);
|
||||
if (val->type == VCF_PEAK)
|
||||
if (ft == VCF_PEAK)
|
||||
sprintf(UnitDesc, " (%s F:%d)","Peak", val->freq);
|
||||
if (val->type == VCF_ALLPASS)
|
||||
if (ft == VCF_ALLPASS)
|
||||
sprintf(UnitDesc, " (%s F:%d)","All", val->freq);
|
||||
}
|
||||
if (unit[0] == M_FOP)
|
||||
@ -217,6 +219,8 @@ char* GetUnitString(BYTE* unit, char* unitname)
|
||||
sprintf(UnitDesc, " (%s)","2+/Pop");
|
||||
if (val->flags == FOP_LOADNOTE)
|
||||
sprintf(UnitDesc, " (%s)","LoadNote");
|
||||
if (val->flags == FOP_MULP2)
|
||||
sprintf(UnitDesc, " (%s)","2*/Pop");
|
||||
}
|
||||
if (unit[0] == M_DLL)
|
||||
{
|
||||
@ -235,16 +239,24 @@ char* GetUnitString(BYTE* unit, char* unitname)
|
||||
}
|
||||
else
|
||||
{
|
||||
std::string st;
|
||||
if (val->type & FST_ADD)
|
||||
st = "+";
|
||||
if (val->type & FST_MUL)
|
||||
st = "*";
|
||||
if (val->type & FST_POP)
|
||||
st += ",Pop";
|
||||
|
||||
if ((val->dest_stack != -1) && (val->dest_stack != SelectedInstrument))
|
||||
{
|
||||
if (val->dest_stack == MAX_INSTRUMENTS)
|
||||
sprintf(UnitDesc, " (GU%d %s)", val->dest_unit+1, UnitModulationTargetShortNames[val->dest_id][val->dest_slot]);
|
||||
sprintf(UnitDesc, " (GU%d %s)%s", val->dest_unit+1, UnitModulationTargetShortNames[val->dest_id][val->dest_slot], st.c_str());
|
||||
else
|
||||
sprintf(UnitDesc, " (%dU%d %s)",val->dest_stack+1, val->dest_unit+1, UnitModulationTargetShortNames[val->dest_id][val->dest_slot]);
|
||||
sprintf(UnitDesc, " (%dU%d %s)%s",val->dest_stack+1, val->dest_unit+1, UnitModulationTargetShortNames[val->dest_id][val->dest_slot], st.c_str());
|
||||
}
|
||||
else
|
||||
{
|
||||
sprintf(UnitDesc, " (U%d %s)", val->dest_unit+1, UnitModulationTargetShortNames[val->dest_id][val->dest_slot]);
|
||||
sprintf(UnitDesc, " (U%d %s)%s", val->dest_unit+1, UnitModulationTargetShortNames[val->dest_id][val->dest_slot], st.c_str());
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -329,8 +341,13 @@ BOOL CALLBACK MainDialogProc(HWND hwndDlg, UINT message, WPARAM wParam, LPARAM l
|
||||
const char* instrument[] = {"1", "2", "3", "4", "5", "6", "7", "8",
|
||||
"9", "10", "11", "12", "13", "14", "15", "16" };
|
||||
for (int i = 0; i < 16; i++)
|
||||
{
|
||||
SendDlgItemMessage(hwndDlg, IDC_INSTRUMENT, CB_ADDSTRING, (WPARAM)0, (LPARAM)(instrument[i]));
|
||||
SendDlgItemMessage(hwndDlg, IDC_INSTRUMENTLINK, CB_ADDSTRING, (WPARAM)0, (LPARAM)(instrument[i]));
|
||||
}
|
||||
SendDlgItemMessage(hwndDlg, IDC_INSTRUMENTLINK, CB_ADDSTRING, (WPARAM)0, (LPARAM)("None"));
|
||||
SendDlgItemMessage(hwndDlg, IDC_INSTRUMENT, CB_SETCURSEL, (WPARAM)0, (LPARAM)0);
|
||||
SendDlgItemMessage(hwndDlg, IDC_INSTRUMENT, CB_SETCURSEL, (WPARAM)16, (LPARAM)0);
|
||||
|
||||
const char* patternsize[] = {"8", "16", "32", "64"};
|
||||
for (int i = 0; i < 4; i++)
|
||||
@ -381,6 +398,59 @@ BOOL CALLBACK MainDialogProc(HWND hwndDlg, UINT message, WPARAM wParam, LPARAM l
|
||||
}
|
||||
return TRUE;
|
||||
}
|
||||
// link to combo box
|
||||
if (((HWND)lParam) == GetDlgItem(hwndDlg, IDC_INSTRUMENTLINK))
|
||||
{
|
||||
if (HIWORD(wParam) == CBN_SELCHANGE)
|
||||
{
|
||||
int linkToInstrument = SendDlgItemMessage(hwndDlg, IDC_INSTRUMENTLINK, CB_GETCURSEL, (WPARAM)0, (LPARAM)0);
|
||||
if (SelectedInstrument == linkToInstrument)
|
||||
{
|
||||
MessageBox(DialogWnd, "Instrument cannot be linked to itself!", "Info", MB_OK);
|
||||
return TRUE;
|
||||
}
|
||||
if (linkToInstrument < 16)
|
||||
{
|
||||
// compare instruments
|
||||
for (int u = 0; u < MAX_UNITS; u++)
|
||||
{
|
||||
// special case, compare manually
|
||||
if (SynthObjP->InstrumentValues[SelectedInstrument][u][0] == M_DLL)
|
||||
{
|
||||
DLL_valP ds = (DLL_valP)SynthObjP->InstrumentValues[SelectedInstrument][u];
|
||||
DLL_valP dl = (DLL_valP)SynthObjP->InstrumentValues[linkToInstrument][u];
|
||||
if (ds->pregain != dl->pregain ||
|
||||
ds->dry != dl->dry ||
|
||||
ds->feedback != dl->feedback ||
|
||||
ds->damp != dl->damp ||
|
||||
ds->freq != dl->freq ||
|
||||
ds->depth != dl->depth ||
|
||||
ds->guidelay != dl->guidelay ||
|
||||
ds->synctype != dl->synctype ||
|
||||
ds->leftreverb != dl->leftreverb ||
|
||||
ds->reverb != dl->reverb)
|
||||
{
|
||||
MessageBox(DialogWnd, "Instruments cannot be linked as they differ!", "Info", MB_OK);
|
||||
SendDlgItemMessage(hwndDlg, IDC_INSTRUMENTLINK, CB_SETCURSEL, (WPARAM)16, (LPARAM)0);
|
||||
return TRUE;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
if (memcmp(SynthObjP->InstrumentValues[SelectedInstrument][u], SynthObjP->InstrumentValues[linkToInstrument][u], MAX_UNIT_SLOTS))
|
||||
{
|
||||
MessageBox(DialogWnd, "Instruments cannot be linked as they differ!", "Info", MB_OK);
|
||||
SendDlgItemMessage(hwndDlg, IDC_INSTRUMENTLINK, CB_SETCURSEL, (WPARAM)16, (LPARAM)0);
|
||||
return TRUE;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
// set link
|
||||
LinkToInstrument[SelectedInstrument] = linkToInstrument;
|
||||
}
|
||||
return TRUE;
|
||||
}
|
||||
// Polyphony
|
||||
else if (((HWND)lParam) == GetDlgItem(hwndDlg, IDC_POLYPHONY))
|
||||
{
|
||||
@ -498,6 +568,7 @@ BOOL CALLBACK MainDialogProc(HWND hwndDlg, UINT message, WPARAM wParam, LPARAM l
|
||||
for (int i = 0; i < MAX_INSTRUMENTS; i++)
|
||||
{
|
||||
UpdateSignalCount(i);
|
||||
LinkToInstrument[i] = 16;
|
||||
}
|
||||
UpdateControls(SelectedInstrument);
|
||||
}
|
||||
@ -620,12 +691,14 @@ BOOL CALLBACK MainDialogProc(HWND hwndDlg, UINT message, WPARAM wParam, LPARAM l
|
||||
InstrumentScrollPos[SelectedInstrument] = 0;
|
||||
SynthObjP->InstrumentSignalValid[SelectedInstrument] = 0;
|
||||
Go4kVSTi_LoadInstrument(ofn.lpstrFile, (char)SelectedInstrument);
|
||||
LinkToInstrument[SelectedInstrument] = 16;
|
||||
}
|
||||
else
|
||||
{
|
||||
GlobalScrollPos = 0;
|
||||
SynthObjP->GlobalSignalValid = 0;
|
||||
Go4kVSTi_LoadInstrument(ofn.lpstrFile, (char)16);
|
||||
LinkToInstrument[SelectedInstrument] = 16;
|
||||
}
|
||||
UpdateControls(SelectedInstrument);
|
||||
}
|
||||
@ -864,17 +937,17 @@ BOOL CALLBACK MainDialogProc(HWND hwndDlg, UINT message, WPARAM wParam, LPARAM l
|
||||
case IDC_UNIT_COPY:
|
||||
{
|
||||
if (SelectedTab == T_INSTRUMENT)
|
||||
memcpy(UnitCopyBuffer, SynthObjP->InstrumentValues[SelectedInstrument][SelectedIUnit], MAX_SLOT_VALUES);
|
||||
memcpy(UnitCopyBuffer, SynthObjP->InstrumentValues[SelectedInstrument][SelectedIUnit], MAX_UNIT_SLOTS);
|
||||
else
|
||||
memcpy(UnitCopyBuffer, SynthObjP->GlobalValues[SelectedGUnit], MAX_SLOT_VALUES);
|
||||
memcpy(UnitCopyBuffer, SynthObjP->GlobalValues[SelectedGUnit], MAX_UNIT_SLOTS);
|
||||
return TRUE;
|
||||
}
|
||||
case IDC_UNIT_PASTE:
|
||||
{
|
||||
if (SelectedTab == T_INSTRUMENT)
|
||||
memcpy(SynthObjP->InstrumentValues[SelectedInstrument][SelectedIUnit], UnitCopyBuffer, MAX_SLOT_VALUES);
|
||||
memcpy(SynthObjP->InstrumentValues[SelectedInstrument][SelectedIUnit], UnitCopyBuffer, MAX_UNIT_SLOTS);
|
||||
else
|
||||
memcpy(SynthObjP->GlobalValues[SelectedGUnit], UnitCopyBuffer, MAX_SLOT_VALUES);
|
||||
memcpy(SynthObjP->GlobalValues[SelectedGUnit], UnitCopyBuffer, MAX_UNIT_SLOTS);
|
||||
UpdateControls(SelectedInstrument);
|
||||
return TRUE;
|
||||
}
|
||||
@ -960,6 +1033,7 @@ BOOL CALLBACK MainDialogProc(HWND hwndDlg, UINT message, WPARAM wParam, LPARAM l
|
||||
for (int i = 0; i < MAX_INSTRUMENTS; i++)
|
||||
{
|
||||
UpdateSignalCount(i);
|
||||
LinkToInstrument[i] = 16;
|
||||
}
|
||||
UpdateControls(SelectedInstrument);
|
||||
}
|
||||
@ -981,6 +1055,7 @@ BOOL CALLBACK MainDialogProc(HWND hwndDlg, UINT message, WPARAM wParam, LPARAM l
|
||||
InstrumentScrollPos[SelectedInstrument] = 0;
|
||||
SynthObjP->InstrumentSignalValid[SelectedInstrument] = 0;
|
||||
Go4kVSTi_LoadInstrument(DropFileName, (char)SelectedInstrument);
|
||||
LinkToInstrument[SelectedInstrument] = 16;
|
||||
}
|
||||
else
|
||||
{
|
||||
@ -1245,7 +1320,7 @@ void Go4kVSTiGUI_Create(HINSTANCE hInst)
|
||||
timerID = SetTimer(DialogWnd, timer, 200, TimerProc);
|
||||
backupTimerID = SetTimer(DialogWnd, backupTimer, 60*1000, BackupTimerProc);
|
||||
|
||||
memset(UnitCopyBuffer, 0, MAX_SLOT_VALUES);
|
||||
memset(UnitCopyBuffer, 0, MAX_UNIT_SLOTS);
|
||||
|
||||
// set fst instrument elements
|
||||
const char* idest[] = {"Local", "Instrument 1", "Instrument 2", "Instrument 3", "Instrument 4", "Instrument 5", "Instrument 6", "Instrument 7", "Instrument 8",
|
||||
@ -1313,6 +1388,38 @@ void Go4kVSTiGUI_Destroy()
|
||||
DestroyWindow(DialogWnd);
|
||||
}
|
||||
|
||||
void LinkInstrumentUnit(int selectedInstrument, int selectedIUnit)
|
||||
{
|
||||
for (int i = 0; i < 16; i++)
|
||||
{
|
||||
if (LinkToInstrument[i] == selectedInstrument)
|
||||
{
|
||||
if (SynthObjP->InstrumentValues[selectedInstrument][selectedIUnit][0] == M_DLL)
|
||||
{
|
||||
DLL_valP ds = (DLL_valP)SynthObjP->InstrumentValues[selectedInstrument][selectedIUnit];
|
||||
DLL_valP dl = (DLL_valP)SynthObjP->InstrumentValues[i][selectedIUnit];
|
||||
dl->id = ds->id;
|
||||
dl->pregain = ds->pregain;
|
||||
dl->dry = ds->dry;
|
||||
dl->feedback = ds->feedback;
|
||||
dl->damp = ds->damp;
|
||||
dl->freq = ds->freq;
|
||||
dl->depth = ds->depth;
|
||||
dl->guidelay = ds->guidelay;
|
||||
dl->synctype = ds->synctype;
|
||||
dl->leftreverb = ds->leftreverb;
|
||||
dl->reverb = ds->reverb;
|
||||
}
|
||||
else
|
||||
{
|
||||
memcpy(SynthObjP->InstrumentValues[i][selectedIUnit],
|
||||
SynthObjP->InstrumentValues[selectedInstrument][selectedIUnit],
|
||||
MAX_UNIT_SLOTS);
|
||||
}
|
||||
}
|
||||
}
|
||||
Go4kVSTi_UpdateDelayTimes();
|
||||
}
|
||||
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
@ -1331,10 +1438,11 @@ void SetButtonParams(int uid, BYTE* val, WPARAM id, LPARAM lParam)
|
||||
ButtonGroupChanged(IDC_VCO_SINE, IDC_VCO_GATE, LOWORD(id), M_VCO, res);
|
||||
if (res)
|
||||
{
|
||||
v->flags = 0;
|
||||
if (SendDlgItemMessage(ModuleWnd[M_VCO], IDC_VCO_LFO, BM_GETCHECK, 0, 0)==BST_CHECKED)
|
||||
v->flags = VCO_LFO;
|
||||
else
|
||||
v->flags = 0;
|
||||
v->flags |= VCO_LFO;
|
||||
if (SendDlgItemMessage(ModuleWnd[M_VCO], IDC_VCO_STEREO, BM_GETCHECK, 0, 0)==BST_CHECKED)
|
||||
v->flags |= VCO_STEREO;
|
||||
|
||||
EnableWindow(GetDlgItem(ModuleWnd[M_VCO], IDC_VCO_TRANSPOSE), true);
|
||||
EnableWindow(GetDlgItem(ModuleWnd[M_VCO], IDC_VCO_TRANSPOSE_VAL), true);
|
||||
@ -1370,8 +1478,6 @@ void SetButtonParams(int uid, BYTE* val, WPARAM id, LPARAM lParam)
|
||||
if (IDC_VCO_SINE == res)
|
||||
{
|
||||
v->flags |= VCO_SINE;
|
||||
EnableWindow(GetDlgItem(ModuleWnd[M_VCO], IDC_VCO_COLOR), false);
|
||||
EnableWindow(GetDlgItem(ModuleWnd[M_VCO], IDC_VCO_COLOR_VAL), false);
|
||||
}
|
||||
if (IDC_VCO_TRISAW == res)
|
||||
{
|
||||
@ -1403,6 +1509,13 @@ void SetButtonParams(int uid, BYTE* val, WPARAM id, LPARAM lParam)
|
||||
else
|
||||
v->flags &= ~VCO_LFO;
|
||||
}
|
||||
if (LOWORD(id) == IDC_VCO_STEREO)
|
||||
{
|
||||
if (SendDlgItemMessage(ModuleWnd[M_VCO], IDC_VCO_STEREO, BM_GETCHECK, 0, 0)==BST_CHECKED)
|
||||
v->flags |= VCO_STEREO;
|
||||
else
|
||||
v->flags &= ~VCO_STEREO;
|
||||
}
|
||||
// gate bits changed?
|
||||
WORD gatebits;
|
||||
GetCheckboxGroupBitmask(IDC_VCO_GATE1, IDC_VCO_GATE16, LOWORD(id), M_VCO, gatebits, res);
|
||||
@ -1413,6 +1526,8 @@ void SetButtonParams(int uid, BYTE* val, WPARAM id, LPARAM lParam)
|
||||
// adjust color slider
|
||||
InitSliderCenter(ModuleWnd[M_VCO], IDC_VCO_COLOR, 0, 128, v->color);
|
||||
}
|
||||
// update signalcount
|
||||
UpdateSignalCount(SelectedInstrument);
|
||||
}
|
||||
else if (uid == M_VCF)
|
||||
{
|
||||
@ -1420,19 +1535,42 @@ void SetButtonParams(int uid, BYTE* val, WPARAM id, LPARAM lParam)
|
||||
ButtonGroupChanged(IDC_VCF_LOW, IDC_VCF_ALL, LOWORD(id), M_VCF, res);
|
||||
if (res)
|
||||
{
|
||||
int stereo = v->type & VCF_STEREO;
|
||||
if (res == IDC_VCF_LOW)
|
||||
v->type = VCF_LOWPASS;
|
||||
v->type = stereo | VCF_LOWPASS;
|
||||
else if (res == IDC_VCF_HIGH)
|
||||
v->type = VCF_HIGHPASS;
|
||||
v->type = stereo | VCF_HIGHPASS;
|
||||
else if (res == IDC_VCF_BAND)
|
||||
v->type = VCF_BANDPASS;
|
||||
v->type = stereo | VCF_BANDPASS;
|
||||
else if (res == IDC_VCF_NOTCH)
|
||||
v->type = VCF_BANDSTOP;
|
||||
v->type = stereo | VCF_BANDSTOP;
|
||||
else if (res == IDC_VCF_PEAK)
|
||||
v->type = VCF_PEAK;
|
||||
v->type = stereo | VCF_PEAK;
|
||||
else if (res == IDC_VCF_ALL)
|
||||
v->type = VCF_ALLPASS;
|
||||
v->type = stereo | VCF_ALLPASS;
|
||||
}
|
||||
if (LOWORD(id) == IDC_VCF_STEREO)
|
||||
{
|
||||
if (SendDlgItemMessage(ModuleWnd[M_VCF], IDC_VCF_STEREO, BM_GETCHECK, 0, 0)==BST_CHECKED)
|
||||
v->type |= VCF_STEREO;
|
||||
else
|
||||
v->type &= ~VCF_STEREO;
|
||||
}
|
||||
// update signalcount
|
||||
UpdateSignalCount(SelectedInstrument);
|
||||
}
|
||||
else if (uid == M_DST)
|
||||
{
|
||||
DST_valP v = (DST_valP)val;
|
||||
if (LOWORD(id) == IDC_DST_STEREO)
|
||||
{
|
||||
if (SendDlgItemMessage(ModuleWnd[M_DST], IDC_DST_STEREO, BM_GETCHECK, 0, 0)==BST_CHECKED)
|
||||
v->stereo = VCF_STEREO;
|
||||
else
|
||||
v->stereo = 0;
|
||||
}
|
||||
// update signalcount
|
||||
UpdateSignalCount(SelectedInstrument);
|
||||
}
|
||||
else if (uid == M_DLL)
|
||||
{
|
||||
@ -1504,7 +1642,7 @@ void SetButtonParams(int uid, BYTE* val, WPARAM id, LPARAM lParam)
|
||||
SynthObjP->GlobalSignalValid = 0;
|
||||
}
|
||||
FOP_valP v = (FOP_valP)val;
|
||||
ButtonGroupChanged(IDC_FOP_POP, IDC_FOP_LOADNOTE, LOWORD(id), M_FOP, res);
|
||||
ButtonGroupChanged(IDC_FOP_POP, IDC_FOP_MULP2, LOWORD(id), M_FOP, res);
|
||||
if (res)
|
||||
{
|
||||
v->flags = 1 + res - IDC_FOP_POP;
|
||||
@ -1546,10 +1684,10 @@ void SetButtonParams(int uid, BYTE* val, WPARAM id, LPARAM lParam)
|
||||
|
||||
SendDlgItemMessage(ModuleWnd[M_FST], IDC_FST_DESTINATION_UNIT, CB_RESETCONTENT, (WPARAM)0, (LPARAM)0);
|
||||
SendDlgItemMessage(ModuleWnd[M_FST], IDC_FST_DESTINATION_UNIT, CB_ADDSTRING, (WPARAM)0, (LPARAM)"- Nothing Selected -");
|
||||
for (int i = 0; i < MAX_SLOTS; i++)
|
||||
for (int i = 0; i < MAX_UNITS; i++)
|
||||
{
|
||||
char unitname[128], unitname2[128];
|
||||
sprintf(unitname, "%d: %s", i+1, GetUnitString(&units[i*MAX_SLOT_VALUES], unitname2));
|
||||
sprintf(unitname, "%d: %s", i+1, GetUnitString(&units[i*MAX_UNIT_SLOTS], unitname2));
|
||||
SendDlgItemMessage(ModuleWnd[M_FST], IDC_FST_DESTINATION_UNIT, CB_ADDSTRING, (WPARAM)0, (LPARAM)unitname);
|
||||
}
|
||||
SendDlgItemMessage(ModuleWnd[M_FST], IDC_FST_DESTINATION_UNIT, CB_SETCURSEL, (WPARAM)0, (LPARAM)0);
|
||||
@ -1636,6 +1774,28 @@ void SetButtonParams(int uid, BYTE* val, WPARAM id, LPARAM lParam)
|
||||
|
||||
v->dest_id = slots[0];
|
||||
}
|
||||
ButtonGroupChanged(IDC_FST_SET, IDC_FST_MUL, LOWORD(id), M_FST, res);
|
||||
if (res)
|
||||
{
|
||||
int pop = v->type & FST_POP;
|
||||
if (res == IDC_FST_SET)
|
||||
v->type = FST_SET;
|
||||
else if (res == IDC_FST_ADD)
|
||||
v->type = FST_ADD;
|
||||
else if (res == IDC_FST_MUL)
|
||||
v->type = FST_MUL;
|
||||
if (pop)
|
||||
v->type |= FST_POP;
|
||||
}
|
||||
if (LOWORD(id) == IDC_FST_POP)
|
||||
{
|
||||
if (SendDlgItemMessage(ModuleWnd[M_FST], IDC_FST_POP, BM_GETCHECK, 0, 0)==BST_CHECKED)
|
||||
v->type |= FST_POP;
|
||||
else
|
||||
v->type &= ~FST_POP;
|
||||
}
|
||||
// update signalcount
|
||||
UpdateSignalCount(SelectedInstrument);
|
||||
}
|
||||
else if (uid == M_ACC)
|
||||
{
|
||||
@ -1661,6 +1821,7 @@ bool ButtonPressed(WPARAM id, LPARAM lParam)
|
||||
char unitname[128];
|
||||
GetUnitString(SynthObjP->InstrumentValues[SelectedInstrument][SelectedIUnit], unitname);
|
||||
SetWindowText(GetDlgItem(TabWnd[T_INSTRUMENT], IDC_ISTACK_UNIT1+SelectedIUnit*6), unitname);
|
||||
LinkInstrumentUnit(SelectedInstrument, SelectedIUnit);
|
||||
}
|
||||
else if (SelectedTab == T_GLOBAL)
|
||||
{
|
||||
@ -1881,6 +2042,7 @@ bool ScrollbarChanged(HWND hwndDlg, WPARAM wParam, LPARAM lParam)
|
||||
char unitname[128];
|
||||
GetUnitString(SynthObjP->InstrumentValues[SelectedInstrument][SelectedIUnit], unitname);
|
||||
SetWindowText(GetDlgItem(TabWnd[T_INSTRUMENT], IDC_ISTACK_UNIT1+SelectedIUnit*6), unitname);
|
||||
LinkInstrumentUnit(SelectedInstrument, SelectedIUnit);
|
||||
}
|
||||
else if (SelectedTab == T_GLOBAL)
|
||||
{
|
||||
@ -1909,7 +2071,7 @@ void CheckModulations(int unit1, int unit2 = -1)
|
||||
// look in all instruments if a store unit had its target on one of the changed units
|
||||
for (int i = 0; i < MAX_INSTRUMENTS; i++)
|
||||
{
|
||||
for (int u = 0; u < MAX_SLOTS; u++)
|
||||
for (int u = 0; u < MAX_UNITS; u++)
|
||||
{
|
||||
if (SynthObjP->InstrumentValues[i][u][0] == M_FST)
|
||||
{
|
||||
@ -1959,7 +2121,7 @@ void CheckModulations(int unit1, int unit2 = -1)
|
||||
}
|
||||
}
|
||||
// now check the global slots
|
||||
for (int u = 0; u < MAX_SLOTS; u++)
|
||||
for (int u = 0; u < MAX_UNITS; u++)
|
||||
{
|
||||
if (SynthObjP->GlobalValues[u][0] == M_FST)
|
||||
{
|
||||
@ -2008,7 +2170,7 @@ void CheckModulations(int unit1, int unit2 = -1)
|
||||
// look in all instruments if a store unit had its target on a global unit
|
||||
for (int i = 0; i < MAX_INSTRUMENTS; i++)
|
||||
{
|
||||
for (int u = 0; u < MAX_SLOTS; u++)
|
||||
for (int u = 0; u < MAX_UNITS; u++)
|
||||
{
|
||||
if (SynthObjP->InstrumentValues[i][u][0] == M_FST)
|
||||
{
|
||||
@ -2048,7 +2210,7 @@ void CheckModulations(int unit1, int unit2 = -1)
|
||||
}
|
||||
}
|
||||
// now check the global slots
|
||||
for (int u = 0; u < MAX_SLOTS; u++)
|
||||
for (int u = 0; u < MAX_UNITS; u++)
|
||||
{
|
||||
if (SynthObjP->GlobalValues[u][0] == M_FST)
|
||||
{
|
||||
@ -2097,7 +2259,7 @@ bool StackButtonPressed(WPARAM id)
|
||||
if (SelectedTab == T_INSTRUMENT)
|
||||
{
|
||||
// check unit click
|
||||
InterleavedButtonGroupChanged(IDC_ISTACK_UNIT1, MAX_SLOTS, LOWORD(id), res);
|
||||
InterleavedButtonGroupChanged(IDC_ISTACK_UNIT1, MAX_UNITS, LOWORD(id), res);
|
||||
if (res >= 0)
|
||||
{
|
||||
SelectedIUnit = res;
|
||||
@ -2105,7 +2267,7 @@ bool StackButtonPressed(WPARAM id)
|
||||
}
|
||||
|
||||
// check down click
|
||||
for (int i = 0; i < MAX_SLOTS; i++)
|
||||
for (int i = 0; i < MAX_UNITS; i++)
|
||||
{
|
||||
WORD tid = IDC_ISTACK_DOWN1+i*6;
|
||||
if (LOWORD(id) == tid)
|
||||
@ -2114,13 +2276,15 @@ bool StackButtonPressed(WPARAM id)
|
||||
EnableWindow(GetDlgItem(TabWnd[T_INSTRUMENT], tid), false);
|
||||
Go4kVSTi_FlipInstrumentSlots(SelectedInstrument, i, i+1);
|
||||
CheckModulations(i, i+1);
|
||||
LinkInstrumentUnit(SelectedInstrument, i);
|
||||
LinkInstrumentUnit(SelectedInstrument, i+1);
|
||||
UpdateControls(SelectedInstrument);
|
||||
EnableWindow(GetDlgItem(TabWnd[T_INSTRUMENT], tid), true);
|
||||
}
|
||||
}
|
||||
|
||||
// check up click
|
||||
for (int i = 0; i < MAX_SLOTS; i++)
|
||||
for (int i = 0; i < MAX_UNITS; i++)
|
||||
{
|
||||
WORD tid = IDC_ISTACK_UP1+i*6;
|
||||
if (LOWORD(id) == tid)
|
||||
@ -2129,13 +2293,15 @@ bool StackButtonPressed(WPARAM id)
|
||||
EnableWindow(GetDlgItem(TabWnd[T_INSTRUMENT], tid), false);
|
||||
Go4kVSTi_FlipInstrumentSlots(SelectedInstrument, i, i-1);
|
||||
CheckModulations(i, i-1);
|
||||
LinkInstrumentUnit(SelectedInstrument, i);
|
||||
LinkInstrumentUnit(SelectedInstrument, i-1);
|
||||
UpdateControls(SelectedInstrument);
|
||||
EnableWindow(GetDlgItem(TabWnd[T_INSTRUMENT], tid), true);
|
||||
}
|
||||
}
|
||||
|
||||
// check set click
|
||||
for (int i = 0; i < MAX_SLOTS; i++)
|
||||
for (int i = 0; i < MAX_UNITS; i++)
|
||||
{
|
||||
WORD tid = IDC_ISTACK_SET1+i*6;
|
||||
if (LOWORD(id) == tid)
|
||||
@ -2149,6 +2315,7 @@ bool StackButtonPressed(WPARAM id)
|
||||
Go4kVSTi_InitInstrumentSlot(SelectedInstrument, i, SetUnit);
|
||||
CheckModulations(i);
|
||||
SelectedIUnit = i;
|
||||
LinkInstrumentUnit(SelectedInstrument, i);
|
||||
UpdateControls(SelectedInstrument);
|
||||
}
|
||||
}
|
||||
@ -2158,7 +2325,7 @@ bool StackButtonPressed(WPARAM id)
|
||||
}
|
||||
|
||||
// check reset click
|
||||
for (int i = 0; i < MAX_SLOTS; i++)
|
||||
for (int i = 0; i < MAX_UNITS; i++)
|
||||
{
|
||||
WORD tid = IDC_ISTACK_RESET1+i*6;
|
||||
if (LOWORD(id) == tid)
|
||||
@ -2166,7 +2333,9 @@ bool StackButtonPressed(WPARAM id)
|
||||
SynthObjP->InstrumentSignalValid[SelectedInstrument] = 0;
|
||||
EnableWindow(GetDlgItem(TabWnd[T_INSTRUMENT], tid), false);
|
||||
Go4kVSTi_ClearInstrumentSlot(SelectedInstrument, i);
|
||||
LinkInstrumentUnit(SelectedInstrument, i);
|
||||
CheckModulations(i);
|
||||
|
||||
UpdateControls(SelectedInstrument);
|
||||
EnableWindow(GetDlgItem(TabWnd[T_INSTRUMENT], tid), true);
|
||||
}
|
||||
@ -2175,7 +2344,7 @@ bool StackButtonPressed(WPARAM id)
|
||||
else if (SelectedTab == T_GLOBAL)
|
||||
{
|
||||
// check unit click
|
||||
InterleavedButtonGroupChanged(IDC_GSTACK_UNIT1, MAX_SLOTS, LOWORD(id), res);
|
||||
InterleavedButtonGroupChanged(IDC_GSTACK_UNIT1, MAX_UNITS, LOWORD(id), res);
|
||||
if (res >= 0)
|
||||
{
|
||||
SelectedGUnit = res;
|
||||
@ -2183,7 +2352,7 @@ bool StackButtonPressed(WPARAM id)
|
||||
}
|
||||
|
||||
// check down click
|
||||
for (int i = 0; i < MAX_SLOTS; i++)
|
||||
for (int i = 0; i < MAX_UNITS; i++)
|
||||
{
|
||||
WORD tid = IDC_GSTACK_DOWN1+i*6;
|
||||
if (LOWORD(id) == tid)
|
||||
@ -2198,7 +2367,7 @@ bool StackButtonPressed(WPARAM id)
|
||||
}
|
||||
|
||||
// check up click
|
||||
for (int i = 0; i < MAX_SLOTS; i++)
|
||||
for (int i = 0; i < MAX_UNITS; i++)
|
||||
{
|
||||
WORD tid = IDC_GSTACK_UP1+i*6;
|
||||
if (LOWORD(id) == tid)
|
||||
@ -2213,7 +2382,7 @@ bool StackButtonPressed(WPARAM id)
|
||||
}
|
||||
|
||||
// check set click
|
||||
for (int i = 0; i < MAX_SLOTS; i++)
|
||||
for (int i = 0; i < MAX_UNITS; i++)
|
||||
{
|
||||
WORD tid = IDC_GSTACK_SET1+i*6;
|
||||
if (LOWORD(id) == tid)
|
||||
@ -2235,7 +2404,7 @@ bool StackButtonPressed(WPARAM id)
|
||||
}
|
||||
|
||||
// check reset click
|
||||
for (int i = 0; i < MAX_SLOTS; i++)
|
||||
for (int i = 0; i < MAX_UNITS; i++)
|
||||
{
|
||||
WORD tid = IDC_GSTACK_RESET1+i*6;
|
||||
if (LOWORD(id) == tid)
|
||||
@ -2319,8 +2488,15 @@ void UpdateSignalCount(int channel)
|
||||
int valid = 1;
|
||||
int signalcount = 0;
|
||||
// check stack validity
|
||||
for (int i = 0; i < MAX_SLOTS; i++)
|
||||
SynthObjP->HighestSlotIndex[channel] = 63;
|
||||
int highestSlotIndex = 0;
|
||||
for (int i = 0; i < MAX_UNITS; i++)
|
||||
{
|
||||
if (SynthObjP->InstrumentValues[channel][i][0] != 0)
|
||||
{
|
||||
if (i >= highestSlotIndex)
|
||||
highestSlotIndex = i;
|
||||
}
|
||||
// check unit precondition
|
||||
int precond = UnitPreSignals[SynthObjP->InstrumentValues[channel][i][0]];
|
||||
// adjust for arithmetic unit (depending on mode)
|
||||
@ -2335,12 +2511,28 @@ void UpdateSignalCount(int channel)
|
||||
precond = 1;
|
||||
if (v->flags == FOP_ADDP2)
|
||||
precond = 4;
|
||||
if (v->flags == FOP_MULP2)
|
||||
precond = 4;
|
||||
}
|
||||
// adjust for stereo in vcf (we need 2 signals for stereo)
|
||||
if (SynthObjP->InstrumentValues[channel][i][0] == M_VCF)
|
||||
{
|
||||
VCF_valP v = (VCF_valP)(SynthObjP->InstrumentValues[channel][i]);
|
||||
if (v->type & VCF_STEREO)
|
||||
precond += 1;
|
||||
}
|
||||
// adjust for stereo in dst (we need 2 signals for stereo)
|
||||
if (SynthObjP->InstrumentValues[channel][i][0] == M_DST)
|
||||
{
|
||||
DST_valP v = (DST_valP)(SynthObjP->InstrumentValues[channel][i]);
|
||||
if (v->stereo & VCF_STEREO)
|
||||
precond += 1;
|
||||
}
|
||||
if (signalcount < precond)
|
||||
{
|
||||
valid = 0;
|
||||
Go4kVSTi_ClearInstrumentWorkspace(channel);
|
||||
for (int j = i; j < MAX_SLOTS; j++)
|
||||
for (int j = i; j < MAX_UNITS; j++)
|
||||
{
|
||||
char txt[10];
|
||||
sprintf(txt, "%d", signalcount);
|
||||
@ -2369,15 +2561,31 @@ void UpdateSignalCount(int channel)
|
||||
signalcount--;
|
||||
if (v->flags == FOP_ADDP2)
|
||||
signalcount-=2;
|
||||
if (v->flags == FOP_MULP2)
|
||||
signalcount-=2;
|
||||
if (v->flags == FOP_LOADNOTE)
|
||||
signalcount++;
|
||||
}
|
||||
// adjust for stereo in vco (2 signals for stereo)
|
||||
if (SynthObjP->InstrumentValues[channel][i][0] == M_VCO)
|
||||
{
|
||||
VCO_valP v = (VCO_valP)(SynthObjP->InstrumentValues[channel][i]);
|
||||
if (v->flags & VCO_STEREO)
|
||||
signalcount++;
|
||||
}
|
||||
// adjust for pop in store
|
||||
if (SynthObjP->InstrumentValues[channel][i][0] == M_FST)
|
||||
{
|
||||
FST_valP v = (FST_valP)(SynthObjP->InstrumentValues[channel][i]);
|
||||
if (v->type & FST_POP)
|
||||
signalcount--;
|
||||
}
|
||||
// check stack undeflow
|
||||
if (signalcount < 0)
|
||||
{
|
||||
valid = 0;
|
||||
Go4kVSTi_ClearInstrumentWorkspace(channel);
|
||||
for (int j = i; j < MAX_SLOTS; j++)
|
||||
for (int j = i; j < MAX_UNITS; j++)
|
||||
{
|
||||
char txt[10];
|
||||
sprintf(txt, "%d", signalcount);
|
||||
@ -2393,7 +2601,7 @@ void UpdateSignalCount(int channel)
|
||||
{
|
||||
valid = 0;
|
||||
Go4kVSTi_ClearInstrumentWorkspace(channel);
|
||||
for (int j = i; j < MAX_SLOTS; j++)
|
||||
for (int j = i; j < MAX_UNITS; j++)
|
||||
{
|
||||
char txt[10];
|
||||
sprintf(txt, "%d", signalcount);
|
||||
@ -2427,6 +2635,15 @@ void UpdateSignalCount(int channel)
|
||||
SetWindowText(GetDlgItem(DialogWnd, IDC_ISTACK_VALID), "Signal INVALID! Signal Count != 0 after last unit");
|
||||
}
|
||||
}
|
||||
SynthObjP->HighestSlotIndex[channel] = highestSlotIndex;
|
||||
if (channel < 16)
|
||||
{
|
||||
if (LinkToInstrument[channel] != 16)
|
||||
{
|
||||
SynthObjP->InstrumentSignalValid[LinkToInstrument[channel]] = SynthObjP->InstrumentSignalValid[channel];
|
||||
SynthObjP->HighestSlotIndex[LinkToInstrument[channel]] = SynthObjP->HighestSlotIndex[channel];
|
||||
}
|
||||
}
|
||||
|
||||
//////////////////////////////////////////////////////////////
|
||||
// global
|
||||
@ -2437,8 +2654,15 @@ void UpdateSignalCount(int channel)
|
||||
valid = 1;
|
||||
signalcount = 0;
|
||||
// check stack validity
|
||||
for (int i = 0; i < MAX_SLOTS; i++)
|
||||
SynthObjP->HighestSlotIndex[16] = 63;
|
||||
highestSlotIndex = 0;
|
||||
for (int i = 0; i < MAX_UNITS; i++)
|
||||
{
|
||||
if (SynthObjP->GlobalValues[i][0] != 0)
|
||||
{
|
||||
if (i >= highestSlotIndex)
|
||||
highestSlotIndex = i;
|
||||
}
|
||||
// check unit precondition
|
||||
int precond = UnitPreSignals[SynthObjP->GlobalValues[i][0]];
|
||||
// adjust for arithmetic unit (depending on mode)
|
||||
@ -2453,12 +2677,28 @@ void UpdateSignalCount(int channel)
|
||||
precond = 1;
|
||||
if (v->flags == FOP_ADDP2)
|
||||
precond = 4;
|
||||
if (v->flags == FOP_MULP2)
|
||||
precond = 4;
|
||||
}
|
||||
// adjust for stereo in vcf (we need 2 signals for stereo)
|
||||
if (SynthObjP->GlobalValues[i][0] == M_VCF)
|
||||
{
|
||||
VCF_valP v = (VCF_valP)(SynthObjP->GlobalValues[i]);
|
||||
if (v->type & VCF_STEREO)
|
||||
precond += 1;
|
||||
}
|
||||
// adjust for stereo in dst (we need 2 signals for stereo)
|
||||
if (SynthObjP->GlobalValues[i][0] == M_DST)
|
||||
{
|
||||
DST_valP v = (DST_valP)(SynthObjP->GlobalValues[i]);
|
||||
if (v->stereo & VCF_STEREO)
|
||||
precond += 1;
|
||||
}
|
||||
if (signalcount < precond)
|
||||
{
|
||||
valid = 0;
|
||||
Go4kVSTi_ClearGlobalWorkspace();
|
||||
for (int j = i; j < MAX_SLOTS; j++)
|
||||
for (int j = i; j < MAX_UNITS; j++)
|
||||
{
|
||||
char txt[10];
|
||||
sprintf(txt, "%d", signalcount);
|
||||
@ -2487,15 +2727,31 @@ void UpdateSignalCount(int channel)
|
||||
signalcount--;
|
||||
if (v->flags == FOP_ADDP2)
|
||||
signalcount-=2;
|
||||
if (v->flags == FOP_MULP2)
|
||||
signalcount-=2;
|
||||
if (v->flags == FOP_LOADNOTE)
|
||||
signalcount++;
|
||||
}
|
||||
// adjust for stereo in vco (2 signals for stereo)
|
||||
if (SynthObjP->GlobalValues[i][0] == M_VCO)
|
||||
{
|
||||
VCO_valP v = (VCO_valP)(SynthObjP->GlobalValues[i]);
|
||||
if (v->flags & VCO_STEREO)
|
||||
signalcount++;
|
||||
}
|
||||
// adjust for pop in store
|
||||
if (SynthObjP->GlobalValues[i][0] == M_FST)
|
||||
{
|
||||
FST_valP v = (FST_valP)(SynthObjP->GlobalValues[i]);
|
||||
if (v->type & FST_POP)
|
||||
signalcount--;
|
||||
}
|
||||
// check stack undeflow
|
||||
if (signalcount < 0)
|
||||
{
|
||||
valid = 0;
|
||||
Go4kVSTi_ClearGlobalWorkspace();
|
||||
for (int j = i; j < MAX_SLOTS; j++)
|
||||
for (int j = i; j < MAX_UNITS; j++)
|
||||
{
|
||||
char txt[10];
|
||||
sprintf(txt, "%d", signalcount);
|
||||
@ -2511,7 +2767,7 @@ void UpdateSignalCount(int channel)
|
||||
{
|
||||
valid = 0;
|
||||
Go4kVSTi_ClearGlobalWorkspace();
|
||||
for (int j = i; j < MAX_SLOTS; j++)
|
||||
for (int j = i; j < MAX_UNITS; j++)
|
||||
{
|
||||
char txt[10];
|
||||
sprintf(txt, "%d", signalcount);
|
||||
@ -2545,6 +2801,7 @@ void UpdateSignalCount(int channel)
|
||||
SetWindowText(GetDlgItem(DialogWnd, IDC_GSTACK_VALID), "Signal INVALID! Signal Count != 0 after last unit");
|
||||
}
|
||||
}
|
||||
SynthObjP->HighestSlotIndex[16] = highestSlotIndex;
|
||||
}
|
||||
|
||||
void UpdateControls(int channel)
|
||||
@ -2552,8 +2809,9 @@ void UpdateControls(int channel)
|
||||
int res;
|
||||
UpdateSignalCount(channel);
|
||||
SetDlgItemText(DialogWnd, IDC_INSTRUMENT_NAME, (LPSTR)&(SynthObjP->InstrumentNames[channel]));
|
||||
SendDlgItemMessage(DialogWnd, IDC_INSTRUMENTLINK, CB_SETCURSEL, (WPARAM)LinkToInstrument[SelectedInstrument], (LPARAM)0);
|
||||
SendDlgItemMessage(DialogWnd, IDC_POLYPHONY, CB_SETCURSEL, (WPARAM)(SynthObjP->Polyphony-1), (LPARAM)0);
|
||||
for (int i = 0; i < MAX_SLOTS; i++)
|
||||
for (int i = 0; i < MAX_UNITS; i++)
|
||||
{
|
||||
// set unit text
|
||||
char unitname[128];
|
||||
@ -2562,8 +2820,8 @@ void UpdateControls(int channel)
|
||||
GetUnitString(SynthObjP->GlobalValues[i], unitname);
|
||||
SetWindowText(GetDlgItem(TabWnd[T_GLOBAL], IDC_GSTACK_UNIT1+i*6), unitname);
|
||||
}
|
||||
InterleavedButtonGroupChanged(IDC_ISTACK_UNIT1, MAX_SLOTS, IDC_ISTACK_UNIT1+SelectedIUnit*6, res);
|
||||
InterleavedButtonGroupChanged(IDC_GSTACK_UNIT1, MAX_SLOTS, IDC_GSTACK_UNIT1+SelectedGUnit*6, res);
|
||||
InterleavedButtonGroupChanged(IDC_ISTACK_UNIT1, MAX_UNITS, IDC_ISTACK_UNIT1+SelectedIUnit*6, res);
|
||||
InterleavedButtonGroupChanged(IDC_GSTACK_UNIT1, MAX_UNITS, IDC_GSTACK_UNIT1+SelectedGUnit*6, res);
|
||||
UpdateModuleParamWindow(SelectedTab, -1);
|
||||
}
|
||||
|
||||
@ -2615,8 +2873,6 @@ void UpdateModule(int uid, BYTE* val)
|
||||
if (v->flags & VCO_SINE)
|
||||
{
|
||||
EnableWindow(GetDlgItem(ModuleWnd[M_VCO], IDC_VCO_SINE), false);
|
||||
EnableWindow(GetDlgItem(ModuleWnd[M_VCO], IDC_VCO_COLOR), false);
|
||||
EnableWindow(GetDlgItem(ModuleWnd[M_VCO], IDC_VCO_COLOR_VAL), false);
|
||||
}
|
||||
else if (v->flags & VCO_TRISAW)
|
||||
{
|
||||
@ -2652,6 +2908,7 @@ void UpdateModule(int uid, BYTE* val)
|
||||
WORD gatebits = ((WORD)v->color << 8) | (WORD)v->gate;
|
||||
SetCheckboxGroupBitmask(IDC_VCO_GATE1, IDC_VCO_GATE16, M_VCO, gatebits);
|
||||
SendDlgItemMessage(ModuleWnd[M_VCO], IDC_VCO_LFO, BM_SETCHECK, v->flags & VCO_LFO, 0);
|
||||
SendDlgItemMessage(ModuleWnd[M_VCO], IDC_VCO_STEREO, BM_SETCHECK, v->flags & VCO_STEREO, 0);
|
||||
}
|
||||
else if (uid == M_VCF)
|
||||
{
|
||||
@ -2663,18 +2920,22 @@ void UpdateModule(int uid, BYTE* val)
|
||||
|
||||
// buttons
|
||||
DisableButtonGroup(IDC_VCF_LOW, IDC_VCF_ALL, M_VCF);
|
||||
if (v->type == VCF_LOWPASS)
|
||||
|
||||
int mode = v->type & ~VCF_STEREO;
|
||||
if (mode == VCF_LOWPASS)
|
||||
EnableWindow(GetDlgItem(ModuleWnd[M_VCF], IDC_VCF_LOW), false);
|
||||
else if (v->type == VCF_HIGHPASS)
|
||||
else if (mode == VCF_HIGHPASS)
|
||||
EnableWindow(GetDlgItem(ModuleWnd[M_VCF], IDC_VCF_HIGH), false);
|
||||
else if (v->type == VCF_BANDPASS)
|
||||
else if (mode == VCF_BANDPASS)
|
||||
EnableWindow(GetDlgItem(ModuleWnd[M_VCF], IDC_VCF_BAND), false);
|
||||
else if (v->type == VCF_BANDSTOP)
|
||||
else if (mode == VCF_BANDSTOP)
|
||||
EnableWindow(GetDlgItem(ModuleWnd[M_VCF], IDC_VCF_NOTCH), false);
|
||||
else if (v->type == VCF_PEAK)
|
||||
else if (mode == VCF_PEAK)
|
||||
EnableWindow(GetDlgItem(ModuleWnd[M_VCF], IDC_VCF_PEAK), false);
|
||||
else if (v->type == VCF_ALLPASS)
|
||||
else if (mode == VCF_ALLPASS)
|
||||
EnableWindow(GetDlgItem(ModuleWnd[M_VCF], IDC_VCF_ALL), false);
|
||||
|
||||
SendDlgItemMessage(ModuleWnd[M_VCF], IDC_VCF_STEREO, BM_SETCHECK, v->type & VCF_STEREO, 0);
|
||||
}
|
||||
else if (uid == M_DST)
|
||||
{
|
||||
@ -2683,6 +2944,7 @@ void UpdateModule(int uid, BYTE* val)
|
||||
InitSliderCenter(ModuleWnd[uid], IDC_DST_DRIVE, 0, 128, v->drive);
|
||||
// snhfreq
|
||||
InitSlider(ModuleWnd[uid], IDC_DST_SNH, 0, 128, v->snhfreq);
|
||||
SendDlgItemMessage(ModuleWnd[M_DST], IDC_DST_STEREO, BM_SETCHECK, v->stereo & VCF_STEREO, 0);
|
||||
}
|
||||
else if (uid == M_DLL)
|
||||
{
|
||||
@ -2751,7 +3013,7 @@ void UpdateModule(int uid, BYTE* val)
|
||||
else if (uid == M_FOP)
|
||||
{
|
||||
FOP_valP v = (FOP_valP)val;
|
||||
DisableButtonGroup(IDC_FOP_POP, IDC_FOP_LOADNOTE, M_FOP);
|
||||
DisableButtonGroup(IDC_FOP_POP, IDC_FOP_MULP2, M_FOP);
|
||||
EnableWindow(GetDlgItem(ModuleWnd[M_FOP], IDC_FOP_POP + v->flags-FOP_POP), false);
|
||||
}
|
||||
else if (uid == M_FST)
|
||||
@ -2795,10 +3057,10 @@ void UpdateModule(int uid, BYTE* val)
|
||||
|
||||
SendDlgItemMessage(ModuleWnd[M_FST], IDC_FST_DESTINATION_UNIT, CB_RESETCONTENT, (WPARAM)0, (LPARAM)0);
|
||||
SendDlgItemMessage(ModuleWnd[M_FST], IDC_FST_DESTINATION_UNIT, CB_ADDSTRING, (WPARAM)0, (LPARAM)"- Nothing Selected -");
|
||||
for (int i = 0; i < MAX_SLOTS; i++)
|
||||
for (int i = 0; i < MAX_UNITS; i++)
|
||||
{
|
||||
char unitname[128], unitname2[128];
|
||||
sprintf(unitname, "%d: %s", i+1, GetUnitString(&units[i*MAX_SLOT_VALUES], unitname2));
|
||||
sprintf(unitname, "%d: %s", i+1, GetUnitString(&units[i*MAX_UNIT_SLOTS], unitname2));
|
||||
SendDlgItemMessage(ModuleWnd[M_FST], IDC_FST_DESTINATION_UNIT, CB_ADDSTRING, (WPARAM)0, (LPARAM)unitname);
|
||||
}
|
||||
SendDlgItemMessage(ModuleWnd[M_FST], IDC_FST_DESTINATION_UNIT, CB_SETCURSEL, (WPARAM)(v->dest_unit+1), (LPARAM)0);
|
||||
@ -2814,13 +3076,22 @@ void UpdateModule(int uid, BYTE* val)
|
||||
else
|
||||
{
|
||||
EnableWindow(GetDlgItem(ModuleWnd[M_FST], IDC_FST_DESTINATION_SLOT), true);
|
||||
DWORD unitid = units[v->dest_unit*MAX_SLOT_VALUES];
|
||||
DWORD unitid = units[v->dest_unit*MAX_UNIT_SLOTS];
|
||||
for (int i = 0; i < 8; i++)
|
||||
{
|
||||
SendDlgItemMessage(ModuleWnd[M_FST], IDC_FST_DESTINATION_SLOT, CB_ADDSTRING, (WPARAM)0, (LPARAM)UnitModulationTargetNames[unitid][i]);
|
||||
}
|
||||
SendDlgItemMessage(ModuleWnd[M_FST], IDC_FST_DESTINATION_SLOT, CB_SETCURSEL, (WPARAM)(v->dest_slot+1), (LPARAM)0);
|
||||
}
|
||||
// buttons
|
||||
DisableButtonGroup(IDC_FST_SET, IDC_FST_MUL, M_FST);
|
||||
if (v->type & FST_ADD)
|
||||
EnableWindow(GetDlgItem(ModuleWnd[M_FST], IDC_FST_ADD), false);
|
||||
else if (v->type & FST_MUL)
|
||||
EnableWindow(GetDlgItem(ModuleWnd[M_FST], IDC_FST_MUL), false);
|
||||
else
|
||||
EnableWindow(GetDlgItem(ModuleWnd[M_FST], IDC_FST_SET), false);
|
||||
SendDlgItemMessage(ModuleWnd[M_FST], IDC_FST_POP, BM_SETCHECK, v->type & FST_POP, 0);
|
||||
}
|
||||
else if (uid == M_PAN)
|
||||
{
|
||||
@ -2961,7 +3232,11 @@ void GetStreamFileName()
|
||||
{'4','k','l','a','n','g',' ','I','n','c','l','u','d','e', 0 ,
|
||||
'*','.','i','n','c', 0,
|
||||
0};
|
||||
#ifdef _4KLANG2
|
||||
char lpstrFile[4096] = "4klang2.inc";
|
||||
#else
|
||||
char lpstrFile[4096] = "4klang.inc";
|
||||
#endif
|
||||
char lpstrDirectory[4096];
|
||||
GetCurrentDirectory(4096, lpstrDirectory);
|
||||
|
||||
|
||||
@ -58,7 +58,7 @@ void Go4kVSTi::processAnyhow(float **inputs, float **outputs, long sampleFrames)
|
||||
VstTimeInfo* myTime = getTimeInfo ( kVstTempoValid );
|
||||
Go4kVSTi_SetBPM(myTime->tempo);
|
||||
bpmCheck = 20; // only check every 20th call of this function (bpm shouldnt change that often)
|
||||
}
|
||||
}
|
||||
bpmCheck--;
|
||||
|
||||
int start = 0;
|
||||
@ -66,7 +66,7 @@ void Go4kVSTi::processAnyhow(float **inputs, float **outputs, long sampleFrames)
|
||||
if (m_currentEvents.size() > 0)
|
||||
{
|
||||
// for all events
|
||||
for (unsigned int i = 0; i < m_currentEvents.size(); i++)
|
||||
for (unsigned int i = 0; i < m_currentEvents.size(); i++)
|
||||
{
|
||||
// process samples until next event
|
||||
int todo = m_currentEvents[i]->deltaFrames - start;
|
||||
|
||||
@ -47,7 +47,12 @@ go4k_synth_wrk resb go4k_synth.size
|
||||
global _go4k_delay_buffer_ofs
|
||||
_go4k_delay_buffer_ofs resd 1
|
||||
global _go4k_delay_buffer
|
||||
_go4k_delay_buffer resd 117*go4kDLL_wrk.size
|
||||
_go4k_delay_buffer resd 16*16*go4kDLL_wrk.size
|
||||
|
||||
%ifdef AUTHORING
|
||||
global __4klang_current_tick
|
||||
__4klang_current_tick resd 0
|
||||
%endif
|
||||
|
||||
%ifdef GO4K_USE_ENVELOPE_RECORDINGS
|
||||
global __4klang_envelope_buffer
|
||||
@ -130,10 +135,12 @@ section .text
|
||||
%endif
|
||||
|
||||
export_func FloatRandomNumber@0
|
||||
push eax
|
||||
imul eax,dword [_RandSeed],16007
|
||||
mov dword [_RandSeed], eax
|
||||
fild dword [_RandSeed]
|
||||
fidiv dword [c_RandDiv]
|
||||
pop eax
|
||||
ret
|
||||
|
||||
; //========================================================================================
|
||||
@ -279,8 +286,7 @@ go4kENV_func_do:
|
||||
mov eax, dword [ecx-8] ; // is the instrument in release mode (note off)?
|
||||
test eax, eax
|
||||
je go4kENV_func_process
|
||||
mov al, ENV_STATE_RELEASE
|
||||
mov dword [WRK+go4kENV_wrk.state], eax
|
||||
mov dword [WRK+go4kENV_wrk.state], ENV_STATE_RELEASE
|
||||
go4kENV_func_process:
|
||||
mov eax, dword [WRK+go4kENV_wrk.state]
|
||||
fld dword [WRK+go4kENV_wrk.level] ; // val -
|
||||
@ -384,8 +390,13 @@ section .g4kcods code align=1
|
||||
section .text
|
||||
%endif
|
||||
go4kVCO_sine:
|
||||
fxch ; // p c
|
||||
fstp st1 ; // p
|
||||
fucomi st1 ; // c p
|
||||
jnc short go4kVCO_func_sine_do
|
||||
fstp st1
|
||||
fsub st0, st0 ; // 0
|
||||
ret
|
||||
go4kVCO_func_sine_do
|
||||
fdivp st1, st0 ; // p/c
|
||||
fldpi ; // pi p
|
||||
fadd st0 ; // 2*pi p
|
||||
fmulp st1, st0 ; // 2*pi*p
|
||||
@ -462,11 +473,28 @@ export_func go4kVCO_func@0
|
||||
mov eax, dword [ecx-4]
|
||||
test eax, eax
|
||||
jne go4kVCO_func_do
|
||||
%ifdef GO4K_USE_VCO_STEREO
|
||||
movzx eax, byte [VAL-1] ; // get flags and check for stereo
|
||||
test al, byte VCO_STEREO
|
||||
jz short go4kVCO_func_nostereoout
|
||||
fldz
|
||||
go4kVCO_func_nostereoout:
|
||||
%endif
|
||||
fldz
|
||||
ret
|
||||
go4kVCO_func_do:
|
||||
%endif
|
||||
movzx eax, byte [VAL-1] ; // get flags
|
||||
%ifdef GO4K_USE_VCO_STEREO
|
||||
test al, byte VCO_STEREO
|
||||
jz short go4kVCO_func_nopswap
|
||||
fld dword [WRK+go4kVCO_wrk.phase] ;// swap left/right phase values for first stereo run
|
||||
fld dword [WRK+go4kVCO_wrk.phase2]
|
||||
fstp dword [WRK+go4kVCO_wrk.phase]
|
||||
fstp dword [WRK+go4kVCO_wrk.phase2]
|
||||
go4kVCO_func_nopswap:
|
||||
%endif
|
||||
go4kVCO_func_process:
|
||||
fld dword [edx+go4kVCO_val.transpose]
|
||||
fsub dword [c_0_5]
|
||||
%ifdef GO4K_USE_VCO_MOD_TM
|
||||
@ -476,6 +504,12 @@ go4kVCO_func_do:
|
||||
fld dword [edx+go4kVCO_val.detune]
|
||||
fsub dword [c_0_5]
|
||||
fadd st0
|
||||
%ifdef GO4K_USE_VCO_STEREO
|
||||
test al, byte VCO_STEREO
|
||||
jz short go4kVCO_func_nodswap
|
||||
fchs ;// negate detune for stereo
|
||||
go4kVCO_func_nodswap:
|
||||
%endif
|
||||
faddp st1
|
||||
%ifdef GO4K_USE_VCO_MOD_DM
|
||||
fadd dword [WRK+go4kVCO_wrk.dm]
|
||||
@ -562,6 +596,18 @@ go4kVCO_func_end:
|
||||
fadd dword [WRK+go4kVCO_wrk.gm]
|
||||
%endif
|
||||
fmulp st1, st0
|
||||
|
||||
%ifdef GO4K_USE_VCO_STEREO
|
||||
test al, byte VCO_STEREO
|
||||
jz short go4kVCO_func_stereodone
|
||||
sub al, byte VCO_STEREO
|
||||
fld dword [WRK+go4kVCO_wrk.phase] ;// swap left/right phase values again for second stereo run
|
||||
fld dword [WRK+go4kVCO_wrk.phase2]
|
||||
fstp dword [WRK+go4kVCO_wrk.phase]
|
||||
fstp dword [WRK+go4kVCO_wrk.phase2]
|
||||
jmp go4kVCO_func_process
|
||||
go4kVCO_func_stereodone:
|
||||
%endif
|
||||
ret
|
||||
|
||||
%ifdef USE_SECTIONS
|
||||
@ -590,16 +636,31 @@ export_func go4kVCF_func@0
|
||||
go4kVCF_func_do:
|
||||
%endif
|
||||
movzx eax, byte [VAL-1] ; // get type flag
|
||||
|
||||
fld dword [edx+go4kVCF_val.res] ; // r in
|
||||
%ifdef GO4K_USE_VCF_MOD_RM
|
||||
fadd dword [WRK+go4kVCF_wrk.rm]
|
||||
%endif
|
||||
fld dword [edx+go4kVCF_val.freq] ; // f r in
|
||||
%endif
|
||||
fstp dword [esp-8]
|
||||
|
||||
fld dword [edx+go4kVCF_val.freq] ; // f in
|
||||
%ifdef GO4K_USE_VCF_MOD_FM
|
||||
fadd dword [WRK+go4kVCF_wrk.fm]
|
||||
%endif
|
||||
fmul st0, st0 ; // square the input so we never get negative and also have a smoother behaviour in the lower frequencies
|
||||
fst dword [WRK+go4kVCF_wrk.freq] ; // f r in
|
||||
fstp dword [esp-4] ; // in
|
||||
|
||||
%ifdef GO4K_USE_VCF_STEREO
|
||||
test al, byte STEREO
|
||||
jz short go4kVCF_func_process
|
||||
add WRK, go4kVCF_wrk.low2
|
||||
go4kVCF_func_stereoloop: ; // switch channels
|
||||
fxch st1 ; // inr inl
|
||||
%endif
|
||||
|
||||
go4kVCF_func_process:
|
||||
fld dword [esp-8]
|
||||
fld dword [esp-4]
|
||||
fmul dword [WRK+go4kVCF_wrk.band] ; // f*b r in
|
||||
fadd dword [WRK+go4kVCF_wrk.low] ; // l' r in
|
||||
fst dword [WRK+go4kVCF_wrk.low] ; // l' r in
|
||||
@ -607,7 +668,7 @@ go4kVCF_func_do:
|
||||
fmul dword [WRK+go4kVCF_wrk.band] ; // r*b in-l'
|
||||
fsubp st1, st0 ; // h'
|
||||
fst dword [WRK+go4kVCF_wrk.high] ; // h'
|
||||
fmul dword [WRK+go4kVCF_wrk.freq] ; // h'*f
|
||||
fmul dword [esp-4] ; // h'*f
|
||||
fadd dword [WRK+go4kVCF_wrk.band] ; // b'
|
||||
fstp dword [WRK+go4kVCF_wrk.band]
|
||||
fldz
|
||||
@ -630,15 +691,21 @@ go4kVCF_func_band:
|
||||
go4kVCF_func_peak:
|
||||
%ifdef GO4K_USE_VCF_PEAK
|
||||
test al, byte PEAK
|
||||
jz short go4kVCF_func_end
|
||||
jz short go4kVCF_func_processdone
|
||||
fadd dword [WRK+go4kVCF_wrk.low]
|
||||
fsub dword [WRK+go4kVCF_wrk.high]
|
||||
%endif
|
||||
go4kVCF_func_processdone:
|
||||
|
||||
%ifdef GO4K_USE_VCF_STEREO
|
||||
test al, byte STEREO ; // outr inl
|
||||
jz short go4kVCF_func_end
|
||||
sub al, byte STEREO
|
||||
sub WRK, go4kVCF_wrk.low2
|
||||
jmp go4kVCF_func_stereoloop
|
||||
%endif
|
||||
|
||||
go4kVCF_func_end: ; // value - - - -
|
||||
%ifdef GO4K_USE_UNDENORMALIZE
|
||||
fadd dword [c_0_5] ; add and sub small offset to prevent denormalization
|
||||
fsub dword [c_0_5]
|
||||
%endif
|
||||
ret
|
||||
|
||||
%ifdef USE_SECTIONS
|
||||
@ -658,10 +725,18 @@ section .text
|
||||
export_func go4kDST_func@0
|
||||
%ifdef GO4K_USE_DST
|
||||
%ifdef GO4K_USE_DST_SH
|
||||
push 2
|
||||
%else
|
||||
push 1
|
||||
%endif
|
||||
%ifdef GO4K_USE_DST_STEREO
|
||||
push 3
|
||||
%else
|
||||
push 2
|
||||
%endif
|
||||
%else
|
||||
%ifdef GO4K_USE_DST_STEREO
|
||||
push 2
|
||||
%else
|
||||
push 1
|
||||
%endif
|
||||
%endif
|
||||
call go4kTransformValues
|
||||
%ifdef GO4K_USE_DST_CHECK
|
||||
; check if current note still active
|
||||
@ -671,6 +746,7 @@ export_func go4kDST_func@0
|
||||
ret
|
||||
go4kDST_func_do:
|
||||
%endif
|
||||
movzx eax, byte [VAL-1] ; // get type flag
|
||||
%ifdef GO4K_USE_DST_SH
|
||||
fld dword [edx+go4kDST_val.snhfreq] ; // snh in
|
||||
%ifdef GO4K_USE_DST_MOD_SH
|
||||
@ -688,6 +764,21 @@ go4kDST_func_do:
|
||||
fstp dword [WRK+go4kDST_wrk.snhphase]; // in
|
||||
%endif
|
||||
; // calc pregain and postgain
|
||||
%ifdef GO4K_USE_DST_STEREO
|
||||
test al, byte STEREO ; // outr inl
|
||||
jz short go4kDST_func_mono
|
||||
fxch st1 ; // inr inl
|
||||
fld dword [edx+go4kDST_val.drive] ; // drive inr inl
|
||||
%ifdef GO4K_USE_DST_MOD_DM
|
||||
fadd dword [WRK+go4kDST_wrk.dm]
|
||||
%endif
|
||||
call go4kWaveshaper ; // outr inl
|
||||
%ifdef GO4K_USE_DST_SH
|
||||
fst dword [WRK+go4kDST_wrk.out2] ; // outr inl
|
||||
%endif
|
||||
fxch st1 ; // inl outr
|
||||
go4kDST_func_mono:
|
||||
%endif
|
||||
fld dword [edx+go4kDST_val.drive] ; // drive in
|
||||
%ifdef GO4K_USE_DST_MOD_DM
|
||||
fadd dword [WRK+go4kDST_wrk.dm]
|
||||
@ -701,6 +792,12 @@ go4kDST_func_do:
|
||||
go4kDST_func_hold:
|
||||
fstp st0 ; // in
|
||||
fstp st0
|
||||
%ifdef GO4K_USE_DST_STEREO
|
||||
test al, byte STEREO ; // outr inl
|
||||
jz short go4kDST_func_monohold
|
||||
fld dword [WRK+go4kDST_wrk.out2] ; // out2
|
||||
go4kDST_func_monohold:
|
||||
%endif
|
||||
fld dword [WRK+go4kDST_wrk.out] ; // out
|
||||
ret
|
||||
%endif
|
||||
@ -953,26 +1050,22 @@ go4kFOP_func_mul:
|
||||
jnz go4kFOP_func_addp2
|
||||
fmul st1
|
||||
ret
|
||||
%ifdef GO4K_USE_FOP_LOADNOTE
|
||||
go4kFOP_func_addp2:
|
||||
dec eax
|
||||
jnz go4kFOP_func_loadnote
|
||||
faddp st2, st0
|
||||
faddp st2, st0
|
||||
ret
|
||||
go4kFOP_func_loadnote:
|
||||
go4kFOP_func_loadnote:
|
||||
dec eax
|
||||
jnz go4kFOP_func_mulp2
|
||||
fild dword [ecx-4]
|
||||
fmul dword [c_i128]
|
||||
ret
|
||||
%else
|
||||
go4kFOP_func_addp2:
|
||||
dec eax
|
||||
jnz go4kFOP_func_dummy+1 ; // now this is no valid jump address (just to please the packer) but if we run in that case we're fucked up anyway
|
||||
faddp st2, st0
|
||||
go4kFOP_func_dummy:
|
||||
faddp st2, st0
|
||||
ret
|
||||
%endif
|
||||
go4kFOP_func_mulp2:
|
||||
fmulp st2, st0
|
||||
fmulp st2, st0
|
||||
ret
|
||||
|
||||
%ifdef USE_SECTIONS
|
||||
section .g4kcodh code align=1
|
||||
@ -989,13 +1082,23 @@ section .text
|
||||
; // DIRTY :
|
||||
; //----------------------------------------------------------------------------------------
|
||||
export_func go4kFST_func@0
|
||||
push 2
|
||||
push 1
|
||||
call go4kTransformValues
|
||||
fld dword [edx+go4kFST_val.amount]
|
||||
fsub dword [c_0_5]
|
||||
fadd st0
|
||||
fmul st1
|
||||
fstp dword [ecx+eax*4] ; // eax already contains the destination from the go4kTransformValues call
|
||||
lodsw
|
||||
and eax, 0x00003fff ; // eax is destination slot
|
||||
test word [VAL-2], FST_ADD
|
||||
jz go4kFST_func_set
|
||||
fadd dword [ecx+eax*4]
|
||||
go4kFST_func_set:
|
||||
fstp dword [ecx+eax*4]
|
||||
test word [VAL-2], FST_POP
|
||||
jz go4kFST_func_done
|
||||
fstp st0
|
||||
go4kFST_func_done:
|
||||
ret
|
||||
|
||||
%ifdef USE_SECTIONS
|
||||
@ -1041,30 +1144,39 @@ section .text
|
||||
; // DIRTY :
|
||||
; //----------------------------------------------------------------------------------------
|
||||
export_func go4kFSTG_func@0
|
||||
push 5
|
||||
push 1
|
||||
call go4kTransformValues
|
||||
%ifdef GO4K_USE_FSTG_CHECK
|
||||
; check if current note still active
|
||||
mov eax, dword [ecx-4]
|
||||
test eax, eax
|
||||
jne go4kFSTG_func_do
|
||||
ret
|
||||
lodsw
|
||||
jmp go4kFSTG_func_testpop
|
||||
go4kFSTG_func_do:
|
||||
%endif
|
||||
fld dword [edx+go4kFST_val.amount]
|
||||
fsub dword [c_0_5]
|
||||
fadd st0
|
||||
fmul st1
|
||||
mov eax, dword [VAL-4]
|
||||
fmul st1
|
||||
lodsw
|
||||
and eax, 0x00003fff ; // eax is destination slot
|
||||
test word [VAL-2], FST_ADD
|
||||
jz go4kFSTG_func_set
|
||||
fadd dword [go4k_synth_wrk+eax*4]
|
||||
go4kFSTG_func_set:
|
||||
%if MAX_VOICES > 1
|
||||
fst dword [go4k_synth_wrk+eax]
|
||||
fstp dword [go4k_synth_wrk+eax+go4k_instrument.size]
|
||||
fst dword [go4k_synth_wrk+eax*4]
|
||||
fstp dword [go4k_synth_wrk+eax*4+go4k_instrument.size]
|
||||
%else
|
||||
fstp dword [go4k_synth_wrk+eax]
|
||||
%endif
|
||||
|
||||
ret
|
||||
|
||||
fstp dword [go4k_synth_wrk+eax*4]
|
||||
%endif
|
||||
go4kFSTG_func_testpop:
|
||||
test word [VAL-2], FST_POP
|
||||
jz go4kFSTG_func_done
|
||||
fstp st0
|
||||
go4kFSTG_func_done:
|
||||
ret
|
||||
%endif
|
||||
|
||||
%ifdef USE_SECTIONS
|
||||
@ -1117,7 +1229,7 @@ export_func go4kOUT_func@0 ;// l r
|
||||
push 2
|
||||
call go4kTransformValues
|
||||
pushad
|
||||
lea edi, [ecx+256*4]
|
||||
lea edi, [ecx+MAX_UNITS*MAX_UNIT_SLOTS*4]
|
||||
fld st1 ;// r l r
|
||||
fld st1 ;// l r l r
|
||||
fld dword [edx+go4kOUT_val.auxsend] ;// as l r l r
|
||||
@ -1158,13 +1270,13 @@ export_func go4kOUT_func@0 ;// l r
|
||||
fadd dword [WRK+go4kOUT_wrk.gm] ;// gm l r
|
||||
%endif
|
||||
fmulp st1, st0 ;// l' r
|
||||
fstp dword [ecx+256*4+0] ;// r
|
||||
fstp dword [ecx+MAX_UNITS*MAX_UNIT_SLOTS*4+0] ;// r
|
||||
fld dword [edx+go4kOUT_val.gain] ;// g r
|
||||
%ifdef GO4K_USE_OUT_MOD_GM
|
||||
fadd dword [WRK+go4kOUT_wrk.gm] ;// gm r
|
||||
%endif
|
||||
fmulp st1, st0 ;// r'
|
||||
fstp dword [ecx+256*4+4] ;// -
|
||||
fstp dword [ecx+MAX_UNITS*MAX_UNIT_SLOTS*4+4] ;// -
|
||||
|
||||
%endif
|
||||
ret
|
||||
@ -1248,7 +1360,7 @@ go4kUpdateInstrument_newNote:
|
||||
%endif
|
||||
pushad
|
||||
xor eax, eax
|
||||
mov ecx, (8+256*4)/4 ; // clear only relase, note and workspace
|
||||
mov ecx, (8+MAX_UNITS*MAX_UNIT_SLOTS*4)/4 ; // clear only relase, note and workspace
|
||||
rep stosd
|
||||
popad
|
||||
mov dword [edi+4], edx ; // set requested note as current note
|
||||
@ -1476,6 +1588,9 @@ go4k_render_nogroove:
|
||||
jl go4k_render_sampleloop
|
||||
pop ecx
|
||||
inc ecx
|
||||
%ifdef AUTHORING
|
||||
mov dword[__4klang_current_tick], ecx
|
||||
%endif
|
||||
cmp ecx, dword MAX_TICKS
|
||||
jl go4k_render_tickloop
|
||||
%ifdef GO4K_USE_BUFFER_RECORDINGS
|
||||
@ -1507,7 +1622,7 @@ go4k_VM_process_loop:
|
||||
test eax, eax
|
||||
je go4k_VM_process_done ; // command byte = 0? so done
|
||||
call dword [eax*4+go4k_synth_commands]
|
||||
add WRK, MAX_WORKSPACE_SLOTS*4 ; // go to next workspace slot
|
||||
add WRK, MAX_UNIT_SLOTS*4 ; // go to next workspace slot
|
||||
jmp short go4k_VM_process_loop
|
||||
go4k_VM_process_done:
|
||||
add edi, go4k_instrument.size ; // go to next instrument voice
|
||||
|
||||
Binary file not shown.
@ -52,22 +52,24 @@
|
||||
%define GO4K_USE_VCO_MOD_CM ; // removing this skips color modulation code
|
||||
%define GO4K_USE_VCO_MOD_GM ; // removing this skips gain modulation code
|
||||
%define GO4K_USE_VCO_MOD_SM ; // removing this skips shaping modulation code
|
||||
%define GO4K_USE_VCO_STEREO ; // removing this skips stereo code
|
||||
%define GO4K_USE_VCF_CHECK ; // removing this skips checks if processing is needed
|
||||
%define GO4K_USE_VCF_MOD_FM ; // removing this skips frequency modulation code
|
||||
%define GO4K_USE_VCF_MOD_RM ; // removing this skips resonance modulation code
|
||||
%define GO4K_USE_VCF_HIGH ; // removing this skips code for high output
|
||||
%define GO4K_USE_VCF_BAND ; // removing this skips code for band output
|
||||
%define GO4K_USE_VCF_PEAK ; // removing this skips code for peak output
|
||||
%define GO4K_USE_VCF_STEREO ; // removing this skips code for stereo filter output
|
||||
%define GO4K_USE_DST_CHECK ; // removing this skips checks if processing is needed
|
||||
%define GO4K_USE_DST_SH ; // removing this skips sample and hold code
|
||||
%define GO4K_USE_DST_MOD_DM ; // removing this skips distortion modulation code
|
||||
%define GO4K_USE_DST_MOD_SH ; // removing this skips sample and hold modulation code
|
||||
%define GO4K_USE_DST_STEREO ; // removing this skips stereo processing
|
||||
%define GO4K_USE_DLL_NOTE_SYNC ; // removing this will skip delay length adjusting code (karplus strong)
|
||||
%define GO4K_USE_DLL_CHORUS ; // removing this will skip delay chorus/flanger code
|
||||
%define GO4K_USE_DLL_CHORUS_CLAMP ; // removing this will skip chorus lfo phase clamping
|
||||
%define GO4K_USE_DLL_DAMP ; // removing this will skip dll damping code
|
||||
%define GO4K_USE_DLL_DC_FILTER ; // removing this will skip dll dc offset removal code
|
||||
%define GO4K_USE_FOP_LOADNOTE ; // removing this will skip load note code
|
||||
%define GO4K_USE_FSTG_CHECK ; // removing this skips checks if processing is needed
|
||||
%define GO4K_USE_PAN_MOD ; // removing this will skip panning modulation code
|
||||
%define GO4K_USE_OUT_MOD_AM ; // removing this skips output aux send modulation code
|
||||
@ -86,11 +88,12 @@
|
||||
; // synth defines
|
||||
; //----------------------------------------------------------------------------------------
|
||||
%define MAX_DELAY 65536
|
||||
%define MAX_WORKSPACE_SLOTS 8
|
||||
%define GO4K_BEGIN_CMDDEF(def_name)
|
||||
%define GO4K_END_CMDDEF db 0
|
||||
%define GO4K_BEGIN_PARAMDEF(def_name)
|
||||
%define GO4K_END_PARAMDEF
|
||||
%define MAX_UNITS 64
|
||||
%define MAX_UNIT_SLOTS 16
|
||||
%define GO4K_BEGIN_CMDDEF(def_name)
|
||||
%define GO4K_END_CMDDEF db 0
|
||||
%define GO4K_BEGIN_PARAMDEF(def_name)
|
||||
%define GO4K_END_PARAMDEF
|
||||
; //----------------------------------------------------------------------------------------
|
||||
; // ENV structs
|
||||
; //----------------------------------------------------------------------------------------
|
||||
@ -168,6 +171,7 @@ GO4K_VCO_ID equ 2
|
||||
%define NOISE 0x08
|
||||
%define LFO 0x10
|
||||
%define GATE 0x20
|
||||
%define VCO_STEREO 0x40
|
||||
struc go4kVCO_val
|
||||
;// unit paramters
|
||||
.transpose resd 1
|
||||
@ -197,6 +201,8 @@ struc go4kVCO_wrk
|
||||
.cm resd 1
|
||||
.sm resd 1
|
||||
.gm resd 1
|
||||
;// stero variables
|
||||
.phase2 resd 1
|
||||
.size
|
||||
endstruc
|
||||
; //----------------------------------------------------------------------------------------
|
||||
@ -214,6 +220,7 @@ GO4K_VCF_ID equ 3
|
||||
%define BANDSTOP 0x3
|
||||
%define ALLPASS 0x7
|
||||
%define PEAK 0x8
|
||||
%define STEREO 0x10
|
||||
%define FREQUENCY(val) val
|
||||
%define RESONANCE(val) val
|
||||
%define VCFTYPE(val) val
|
||||
@ -229,38 +236,54 @@ struc go4kVCF_wrk
|
||||
.low resd 1
|
||||
.high resd 1
|
||||
.band resd 1
|
||||
.freq resd 1
|
||||
.freq resd 1 ;// unused but kept so modulation target offsets stay same
|
||||
;// modulation targets
|
||||
.fm resd 1
|
||||
.rm resd 1
|
||||
.rm resd 1
|
||||
;// stereo variables
|
||||
.low2 resd 1
|
||||
.high2 resd 1
|
||||
.band2 resd 1
|
||||
.size
|
||||
endstruc
|
||||
; //----------------------------------------------------------------------------------------
|
||||
; // DST structs
|
||||
; //----------------------------------------------------------------------------------------
|
||||
GO4K_DST_ID equ 4
|
||||
%macro GO4K_DST 2
|
||||
%macro GO4K_DST 3
|
||||
db %1
|
||||
%ifdef GO4K_USE_DST_SH
|
||||
db %2
|
||||
%endif
|
||||
%ifdef GO4K_USE_DST_STEREO
|
||||
db %3
|
||||
%endif
|
||||
%else
|
||||
%ifdef GO4K_USE_DST_STEREO
|
||||
db %3
|
||||
%endif
|
||||
%endif
|
||||
%endmacro
|
||||
%define DRIVE(val) val
|
||||
%define SNHFREQ(val) val
|
||||
%define FLAGS(val) val
|
||||
struc go4kDST_val
|
||||
;// unit paramters
|
||||
.drive resd 1
|
||||
%ifdef GO4K_USE_DST_SH
|
||||
.snhfreq resd 1
|
||||
%endif
|
||||
.flags resd 1
|
||||
.size
|
||||
endstruc
|
||||
struc go4kDST_wrk
|
||||
;// work variables
|
||||
.out resd 1
|
||||
.snhphase resd 1
|
||||
;// modulation targets
|
||||
.dm resd 1
|
||||
.sm resd 1
|
||||
;// stereo variables
|
||||
.out2 resd 1
|
||||
.size
|
||||
endstruc
|
||||
; //----------------------------------------------------------------------------------------
|
||||
@ -342,6 +365,7 @@ GO4K_FOP_ID equ 6
|
||||
%define FOP_MUL 0x7
|
||||
%define FOP_ADDP2 0x8
|
||||
%define FOP_LOADNOTE 0x9
|
||||
%define FOP_MULP2 0xa
|
||||
struc go4kFOP_val
|
||||
.flags resd 1
|
||||
.size
|
||||
@ -355,10 +379,13 @@ endstruc
|
||||
GO4K_FST_ID equ 7
|
||||
%macro GO4K_FST 2
|
||||
db %1
|
||||
db %2
|
||||
dw %2
|
||||
%endmacro
|
||||
%define AMOUNT(val) val
|
||||
%define DEST(val) val
|
||||
%define FST_SET 0x0000
|
||||
%define FST_ADD 0x4000
|
||||
%define FST_POP 0x8000
|
||||
struc go4kFST_val
|
||||
.amount resd 1
|
||||
.op1 resd 1
|
||||
@ -455,7 +482,7 @@ endstruc
|
||||
GO4K_FSTG_ID equ 12
|
||||
%macro GO4K_FSTG 2
|
||||
db %1
|
||||
dd %2
|
||||
dw %2
|
||||
%endmacro
|
||||
struc go4kFSTG_val
|
||||
.amount resd 1
|
||||
@ -472,7 +499,7 @@ endstruc
|
||||
struc go4k_instrument
|
||||
.release resd 1
|
||||
.note resd 1
|
||||
.workspace resd 256
|
||||
.workspace resd MAX_UNITS*MAX_UNIT_SLOTS
|
||||
.dlloutl resd 1
|
||||
.dlloutr resd 1
|
||||
.outl resd 1
|
||||
@ -723,18 +750,18 @@ section .data
|
||||
go4k_synth_parameter_values
|
||||
GO4K_BEGIN_PARAMDEF(Instrument0)
|
||||
GO4K_ENV ATTAC(72),DECAY(96),SUSTAIN(96),RELEASE(88),GAIN(128)
|
||||
GO4K_FST AMOUNT(64),DEST(0*MAX_WORKSPACE_SLOTS+2)
|
||||
GO4K_FST AMOUNT(64),DEST(0*MAX_UNIT_SLOTS+2)
|
||||
GO4K_VCO TRANSPOSE(64),DETUNE(60),PHASE(32),GATES(0),COLOR(80),SHAPE(64),GAIN(128),FLAGS(PULSE)
|
||||
GO4K_VCO TRANSPOSE(64),DETUNE(72),PHASE(32),GATES(0),COLOR(96),SHAPE(64),GAIN(128),FLAGS(TRISAW)
|
||||
GO4K_VCO TRANSPOSE(32),DETUNE(64),PHASE(0),GATES(0),COLOR(64),SHAPE(96),GAIN(128),FLAGS(SINE|LFO)
|
||||
GO4K_FST AMOUNT(68),DEST(2*MAX_WORKSPACE_SLOTS+2)
|
||||
GO4K_FST AMOUNT(61),DEST(3*MAX_WORKSPACE_SLOTS+2)
|
||||
GO4K_FST AMOUNT(68),DEST(2*MAX_UNIT_SLOTS+2)
|
||||
GO4K_FST AMOUNT(61),DEST(3*MAX_UNIT_SLOTS+2)
|
||||
GO4K_FOP OP(FOP_POP)
|
||||
GO4K_FOP OP(FOP_ADDP)
|
||||
GO4K_FOP OP(FOP_MULP)
|
||||
GO4K_VCF FREQUENCY(26),RESONANCE(128),VCFTYPE(PEAK)
|
||||
GO4K_VCF FREQUENCY(64),RESONANCE(64),VCFTYPE(LOWPASS)
|
||||
GO4K_DST DRIVE(104), SNHFREQ(128)
|
||||
GO4K_DST DRIVE(104), SNHFREQ(128), FLAGS(0)
|
||||
GO4K_PAN PANNING(64)
|
||||
GO4K_DLL PREGAIN(96),DRY(128),FEEDBACK(96),DAMP(64),FREQUENCY(0),DEPTH(0),DELAY(16),COUNT(1)
|
||||
GO4K_FOP OP(FOP_XCH)
|
||||
@ -744,18 +771,18 @@ GO4K_BEGIN_PARAMDEF(Instrument0)
|
||||
GO4K_END_PARAMDEF
|
||||
GO4K_BEGIN_PARAMDEF(Instrument1)
|
||||
GO4K_ENV ATTAC(72),DECAY(96),SUSTAIN(96),RELEASE(88),GAIN(128)
|
||||
GO4K_FST AMOUNT(64),DEST(0*MAX_WORKSPACE_SLOTS+2)
|
||||
GO4K_FST AMOUNT(64),DEST(0*MAX_UNIT_SLOTS+2)
|
||||
GO4K_VCO TRANSPOSE(64),DETUNE(60),PHASE(32),GATES(0),COLOR(80),SHAPE(64),GAIN(128),FLAGS(TRISAW)
|
||||
GO4K_VCO TRANSPOSE(64),DETUNE(72),PHASE(32),GATES(0),COLOR(96),SHAPE(112),GAIN(64),FLAGS(SINE)
|
||||
GO4K_VCO TRANSPOSE(80),DETUNE(112),PHASE(0),GATES(0),COLOR(64),SHAPE(16),GAIN(128),FLAGS(PULSE|LFO)
|
||||
GO4K_FST AMOUNT(68),DEST(2*MAX_WORKSPACE_SLOTS+2)
|
||||
GO4K_FST AMOUNT(60),DEST(3*MAX_WORKSPACE_SLOTS+2)
|
||||
GO4K_FST AMOUNT(68),DEST(2*MAX_UNIT_SLOTS+2)
|
||||
GO4K_FST AMOUNT(60),DEST(3*MAX_UNIT_SLOTS+2)
|
||||
GO4K_FOP OP(FOP_POP)
|
||||
GO4K_FOP OP(FOP_ADDP)
|
||||
GO4K_FOP OP(FOP_MULP)
|
||||
GO4K_VCF FREQUENCY(80),RESONANCE(24),VCFTYPE(LOWPASS)
|
||||
GO4K_VCF FREQUENCY(48),RESONANCE(24),VCFTYPE(HIGHPASS)
|
||||
GO4K_DST DRIVE(64), SNHFREQ(128)
|
||||
GO4K_DST DRIVE(64), SNHFREQ(128), FLAGS(0)
|
||||
GO4K_PAN PANNING(64)
|
||||
GO4K_DLL PREGAIN(96),DRY(128),FEEDBACK(96),DAMP(64),FREQUENCY(0),DEPTH(0),DELAY(16),COUNT(1)
|
||||
GO4K_FOP OP(FOP_XCH)
|
||||
@ -765,18 +792,18 @@ GO4K_BEGIN_PARAMDEF(Instrument1)
|
||||
GO4K_END_PARAMDEF
|
||||
GO4K_BEGIN_PARAMDEF(Instrument2)
|
||||
GO4K_ENV ATTAC(32),DECAY(64),SUSTAIN(64),RELEASE(64),GAIN(64)
|
||||
GO4K_FST AMOUNT(120),DEST(0*MAX_WORKSPACE_SLOTS+2)
|
||||
GO4K_FST AMOUNT(120),DEST(0*MAX_UNIT_SLOTS+2)
|
||||
GO4K_VCO TRANSPOSE(64),DETUNE(64),PHASE(32),GATES(0),COLOR(80),SHAPE(64),GAIN(128),FLAGS(PULSE)
|
||||
GO4K_VCO TRANSPOSE(64),DETUNE(72),PHASE(32),GATES(0),COLOR(96),SHAPE(64),GAIN(128),FLAGS(TRISAW)
|
||||
GO4K_VCO TRANSPOSE(32),DETUNE(64),PHASE(0),GATES(0),COLOR(64),SHAPE(96),GAIN(128),FLAGS(SINE|LFO)
|
||||
GO4K_FST AMOUNT(68),DEST(2*MAX_WORKSPACE_SLOTS+2)
|
||||
GO4K_FST AMOUNT(60),DEST(3*MAX_WORKSPACE_SLOTS+2)
|
||||
GO4K_FST AMOUNT(68),DEST(2*MAX_UNIT_SLOTS+2)
|
||||
GO4K_FST AMOUNT(60),DEST(3*MAX_UNIT_SLOTS+2)
|
||||
GO4K_FOP OP(FOP_POP)
|
||||
GO4K_FOP OP(FOP_ADDP)
|
||||
GO4K_FOP OP(FOP_MULP)
|
||||
GO4K_VCF FREQUENCY(18),RESONANCE(64),VCFTYPE(PEAK)
|
||||
GO4K_VCF FREQUENCY(32),RESONANCE(48),VCFTYPE(LOWPASS)
|
||||
GO4K_DST DRIVE(88), SNHFREQ(128)
|
||||
GO4K_DST DRIVE(88), SNHFREQ(128), FLAGS(0)
|
||||
GO4K_PAN PANNING(64)
|
||||
GO4K_DLL PREGAIN(64),DRY(128),FEEDBACK(96),DAMP(64),FREQUENCY(0),DEPTH(0),DELAY(16),COUNT(1)
|
||||
GO4K_FOP OP(FOP_XCH)
|
||||
@ -786,7 +813,7 @@ GO4K_BEGIN_PARAMDEF(Instrument2)
|
||||
GO4K_END_PARAMDEF
|
||||
GO4K_BEGIN_PARAMDEF(Instrument3)
|
||||
GO4K_ENV ATTAC(0),DECAY(76),SUSTAIN(0),RELEASE(0),GAIN(32)
|
||||
GO4K_FST AMOUNT(128),DEST(0*MAX_WORKSPACE_SLOTS+2)
|
||||
GO4K_FST AMOUNT(128),DEST(0*MAX_UNIT_SLOTS+2)
|
||||
GO4K_VCO TRANSPOSE(64),DETUNE(64),PHASE(64),GATES(0),COLOR(64),SHAPE(64),GAIN(128),FLAGS(NOISE)
|
||||
GO4K_FOP OP(FOP_MULP)
|
||||
GO4K_VCF FREQUENCY(80),RESONANCE(128),VCFTYPE(LOWPASS)
|
||||
@ -795,10 +822,10 @@ GO4K_BEGIN_PARAMDEF(Instrument3)
|
||||
GO4K_END_PARAMDEF
|
||||
GO4K_BEGIN_PARAMDEF(Instrument4)
|
||||
GO4K_ENV ATTAC(0),DECAY(64),SUSTAIN(96),RELEASE(64),GAIN(128)
|
||||
GO4K_FST AMOUNT(128),DEST(0*MAX_WORKSPACE_SLOTS+2)
|
||||
GO4K_FST AMOUNT(128),DEST(0*MAX_UNIT_SLOTS+2)
|
||||
GO4K_ENV ATTAC(0),DECAY(70),SUSTAIN(0),RELEASE(0),GAIN(128)
|
||||
GO4K_DST DRIVE(32), SNHFREQ(128)
|
||||
GO4K_FST AMOUNT(80),DEST(6*MAX_WORKSPACE_SLOTS+1)
|
||||
GO4K_DST DRIVE(32), SNHFREQ(128), FLAGS(0)
|
||||
GO4K_FST AMOUNT(80),DEST(6*MAX_UNIT_SLOTS+1)
|
||||
GO4K_FOP OP(FOP_POP)
|
||||
GO4K_VCO TRANSPOSE(46),DETUNE(64),PHASE(0),GATES(0),COLOR(64),SHAPE(64),GAIN(128),FLAGS(TRISAW)
|
||||
GO4K_FOP OP(FOP_MULP)
|
||||
@ -819,10 +846,10 @@ GO4K_BEGIN_PARAMDEF(Instrument5)
|
||||
GO4K_END_PARAMDEF
|
||||
GO4K_BEGIN_PARAMDEF(Instrument6)
|
||||
GO4K_ENV ATTAC(0),DECAY(72),SUSTAIN(0),RELEASE(72),GAIN(128)
|
||||
GO4K_FST AMOUNT(128),DEST(0*MAX_WORKSPACE_SLOTS+2)
|
||||
GO4K_FST AMOUNT(128),DEST(0*MAX_UNIT_SLOTS+2)
|
||||
GO4K_ENV ATTAC(0),DECAY(56),SUSTAIN(0),RELEASE(0),GAIN(128)
|
||||
GO4K_FST AMOUNT(108),DEST(6*MAX_WORKSPACE_SLOTS+1)
|
||||
GO4K_FST AMOUNT(72),DEST(7*MAX_WORKSPACE_SLOTS+1)
|
||||
GO4K_FST AMOUNT(108),DEST(6*MAX_UNIT_SLOTS+1)
|
||||
GO4K_FST AMOUNT(72),DEST(7*MAX_UNIT_SLOTS+1)
|
||||
GO4K_FOP OP(FOP_POP)
|
||||
GO4K_VCO TRANSPOSE(32),DETUNE(64),PHASE(0),GATES(0),COLOR(64),SHAPE(32),GAIN(64),FLAGS(SINE)
|
||||
GO4K_VCO TRANSPOSE(64),DETUNE(64),PHASE(0),GATES(0),COLOR(64),SHAPE(80),GAIN(64),FLAGS(SINE)
|
||||
@ -850,8 +877,8 @@ GO4K_BEGIN_PARAMDEF(Instrument8)
|
||||
GO4K_ENV ATTAC(0),DECAY(0),SUSTAIN(128),RELEASE(0),GAIN(128)
|
||||
GO4K_VCO TRANSPOSE(48),DETUNE(64),PHASE(0),GATES(0),COLOR(64),SHAPE(64),GAIN(128),FLAGS(TRISAW|LFO)
|
||||
GO4K_FOP OP(FOP_MULP)
|
||||
GO4K_FSTG AMOUNT(72),DEST(2*go4k_instrument.size*MAX_VOICES+10*MAX_WORKSPACE_SLOTS*4+4*4+go4k_instrument.workspace)
|
||||
GO4K_FSTG AMOUNT(66),DEST(1*go4k_instrument.size*MAX_VOICES+10*MAX_WORKSPACE_SLOTS*4+4*4+go4k_instrument.workspace)
|
||||
GO4K_FSTG AMOUNT(72),DEST(2*go4k_instrument.size*MAX_VOICES+10*MAX_UNIT_SLOTS*4+4*4+go4k_instrument.workspace)
|
||||
GO4K_FSTG AMOUNT(66),DEST(1*go4k_instrument.size*MAX_VOICES+10*MAX_UNIT_SLOTS*4+4*4+go4k_instrument.workspace)
|
||||
GO4K_FOP OP(FOP_POP)
|
||||
GO4K_END_PARAMDEF
|
||||
;// global parameters
|
||||
|
||||
@ -16,10 +16,8 @@
|
||||
// German (Germany) resources
|
||||
|
||||
#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_DEU)
|
||||
#ifdef _WIN32
|
||||
LANGUAGE LANG_GERMAN, SUBLANG_GERMAN
|
||||
#pragma code_page(1252)
|
||||
#endif //_WIN32
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
@ -37,7 +35,7 @@ IDR_ASM_RES BINARY "4klang.bin"
|
||||
IDD_GO4KVSTIDIALOG DIALOGEX 0, 0, 594, 341
|
||||
STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | WS_MINIMIZEBOX | WS_POPUP | WS_CAPTION | WS_SYSMENU
|
||||
EXSTYLE WS_EX_ACCEPTFILES
|
||||
CAPTION "Alcatraz - 4klang Synth Plugin - Version 3.0.1"
|
||||
CAPTION "Alcatraz - 4klang Synth Plugin - Version 3.11"
|
||||
FONT 8, "MS Shell Dlg", 400, 0, 0x1
|
||||
BEGIN
|
||||
PUSHBUTTON "Load Patch Data",IDC_LOAD_PATCH,13,13,70,14
|
||||
@ -46,9 +44,9 @@ BEGIN
|
||||
PUSHBUTTON "Load Instrument",IDC_LOAD_INSTRUMENT,13,31,70,14
|
||||
PUSHBUTTON "Save Instrument",IDC_SAVE_INSTRUMENT,85,31,70,14
|
||||
PUSHBUTTON "Reset Instrument",IDC_RESET_INSTRUMENT,157,31,70,14
|
||||
LTEXT "Instrument Name",IDC_STATIC,242,33,56,8
|
||||
LTEXT "Instrument Name",IDC_STATIC,242,31,56,8
|
||||
LTEXT "Instrument",IDC_STATIC,242,17,36,8
|
||||
EDITTEXT IDC_INSTRUMENT_NAME,301,30,84,14,ES_AUTOHSCROLL
|
||||
EDITTEXT IDC_INSTRUMENT_NAME,301,28,84,14,ES_AUTOHSCROLL
|
||||
COMBOBOX IDC_INSTRUMENT,301,14,85,184,CBS_DROPDOWN | WS_VSCROLL | WS_TABSTOP
|
||||
LTEXT "0",IDC_VOICECOUNT1,333,322,14,12,0,WS_EX_STATICEDGE
|
||||
LTEXT "0",IDC_VOICECOUNT2,349,322,14,12,0,WS_EX_STATICEDGE
|
||||
@ -76,7 +74,7 @@ BEGIN
|
||||
CONTROL "",IDC_MAINTAB,"SysTabControl32",0x0,7,53,266,281
|
||||
GROUPBOX "Load/Save",IDC_STATIC,7,3,225,47
|
||||
PUSHBUTTON "PANIC!",IDC_PANIC,278,288,309,29
|
||||
GROUPBOX "Instrument Properties",IDC_STATIC,237,3,195,47
|
||||
GROUPBOX "Instrument Properties",IDC_STATIC,237,3,195,57
|
||||
COMBOBOX IDC_POLYPHONY,333,270,71,97,CBS_DROPDOWN | WS_VSCROLL | WS_TABSTOP
|
||||
LTEXT "Polyphony",IDC_STATIC,278,272,34,8
|
||||
LTEXT "Pattern",IDC_STATIC,450,41,25,8
|
||||
@ -96,6 +94,8 @@ BEGIN
|
||||
COMBOBOX IDC_PATTERN_QUANT,479,51,33,94,CBS_DROPDOWN | WS_VSCROLL | WS_TABSTOP
|
||||
LTEXT "Quant.",IDC_STATIC,449,54,24,8
|
||||
COMBOBOX IDC_OBJFORMAT,515,51,66,72,CBS_DROPDOWN | WS_VSCROLL | WS_TABSTOP
|
||||
LTEXT "Link To",IDC_STATIC,241,47,23,8
|
||||
COMBOBOX IDC_INSTRUMENTLINK,301,44,85,184,CBS_DROPDOWN | WS_VSCROLL | WS_TABSTOP
|
||||
END
|
||||
|
||||
IDD_VCO DIALOGEX 0, 0, 300, 170
|
||||
@ -126,6 +126,7 @@ BEGIN
|
||||
CTEXT " ",IDC_VCO_SHAPE_VAL,242,112,48,12,SS_SUNKEN
|
||||
CTEXT " ",IDC_VCO_GAIN_VAL,242,128,48,12,SS_SUNKEN
|
||||
CONTROL "LFO",IDC_VCO_LFO,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,262,29,29,10
|
||||
CONTROL "Stereo",IDC_VCO_STEREO,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,262,16,34,10
|
||||
PUSHBUTTON "Gate",IDC_VCO_GATE,206,27,50,14
|
||||
CONTROL " ",IDC_VCO_GATE1,"Button",BS_AUTOCHECKBOX | WS_DISABLED | WS_TABSTOP,43,147,8,10
|
||||
CONTROL " ",IDC_VCO_GATE2,"Button",BS_AUTOCHECKBOX | WS_DISABLED | WS_TABSTOP,55,147,8,10
|
||||
@ -151,12 +152,13 @@ STYLE DS_SETFONT | DS_FIXEDSYS | WS_CHILD
|
||||
FONT 8, "MS Shell Dlg", 400, 0, 0x1
|
||||
BEGIN
|
||||
GROUPBOX "Filter",IDC_STATIC,0,0,299,170
|
||||
PUSHBUTTON "Low",IDC_VCF_LOW,24,59,42,14,WS_DISABLED
|
||||
PUSHBUTTON "High",IDC_VCF_HIGH,66,59,41,14
|
||||
PUSHBUTTON "Band",IDC_VCF_BAND,108,59,41,14
|
||||
PUSHBUTTON "Notch",IDC_VCF_NOTCH,150,59,41,14
|
||||
PUSHBUTTON "Peak",IDC_VCF_PEAK,192,59,41,14
|
||||
PUSHBUTTON "All",IDC_VCF_ALL,234,59,41,14
|
||||
PUSHBUTTON "Low",IDC_VCF_LOW,5,59,42,14,WS_DISABLED
|
||||
PUSHBUTTON "High",IDC_VCF_HIGH,47,59,41,14
|
||||
PUSHBUTTON "Band",IDC_VCF_BAND,89,59,41,14
|
||||
PUSHBUTTON "Notch",IDC_VCF_NOTCH,131,59,41,14
|
||||
PUSHBUTTON "Peak",IDC_VCF_PEAK,173,59,41,14
|
||||
PUSHBUTTON "All",IDC_VCF_ALL,215,59,41,14
|
||||
CONTROL "Stereo",IDC_VCF_STEREO,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,258,62,37,10
|
||||
CONTROL "",IDC_VCF_FREQUENCY,"msctls_trackbar32",TBS_BOTH | TBS_NOTICKS | WS_TABSTOP,38,79,200,15
|
||||
CONTROL "",IDC_VCF_RESONANCE,"msctls_trackbar32",TBS_BOTH | TBS_NOTICKS | WS_TABSTOP,38,95,200,15
|
||||
LTEXT "Frequency",IDC_STATIC,4,82,35,8
|
||||
@ -232,9 +234,10 @@ BEGIN
|
||||
CONTROL "",IDC_DST_SNH,"msctls_trackbar32",TBS_BOTH | TBS_NOTICKS | WS_TABSTOP,38,85,200,15
|
||||
CTEXT " ",IDC_DST_DRIVE_VAL,242,70,48,12,SS_SUNKEN
|
||||
CTEXT " ",IDC_DST_SNH_VAL,242,86,48,12,SS_SUNKEN
|
||||
CONTROL "Stereo",IDC_DST_STEREO,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,126,105,37,10
|
||||
END
|
||||
|
||||
IDD_INSTRUMENT_STACK DIALOGEX 0, 0, 247, 320
|
||||
IDD_INSTRUMENT_STACK DIALOGEX 0, 0, 247, 640
|
||||
STYLE DS_SETFONT | DS_FIXEDSYS | WS_CHILD | WS_CLIPCHILDREN | WS_SYSMENU
|
||||
FONT 8, "MS Shell Dlg", 400, 0, 0x1
|
||||
BEGIN
|
||||
@ -364,8 +367,136 @@ BEGIN
|
||||
CTEXT "1",IDC_ISTACK_SIGNALCOUNT31,225,300,16,10,SS_SUNKEN
|
||||
PUSHBUTTON " ",IDC_ISTACK_UNIT32,15,310,83,10
|
||||
PUSHBUTTON "Up",IDC_ISTACK_UP32,165,310,25,10
|
||||
PUSHBUTTON "Down",IDC_ISTACK_DOWN32,191,310,25,10,NOT WS_VISIBLE
|
||||
PUSHBUTTON "Down",IDC_ISTACK_DOWN32,191,310,25,10
|
||||
CTEXT "1",IDC_ISTACK_SIGNALCOUNT32,225,310,16,10,SS_SUNKEN
|
||||
PUSHBUTTON " ",IDC_ISTACK__UNIT1,15,320,83,10
|
||||
PUSHBUTTON "Up",IDC_ISTACK__UP1,165,320,25,10
|
||||
PUSHBUTTON "Down",IDC_ISTACK__DOWN1,191,320,25,10
|
||||
CTEXT "1",IDC_ISTACK__SIGNALCOUNT1,225,320,16,10,SS_SUNKEN
|
||||
PUSHBUTTON " ",IDC_ISTACK__UNIT2,15,330,83,10
|
||||
PUSHBUTTON "Up",IDC_ISTACK__UP2,165,330,25,10
|
||||
PUSHBUTTON "Down",IDC_ISTACK__DOWN2,191,330,25,10
|
||||
CTEXT "1",IDC_ISTACK__SIGNALCOUNT2,225,330,16,10,SS_SUNKEN
|
||||
PUSHBUTTON " ",IDC_ISTACK__UNIT3,15,340,83,10
|
||||
PUSHBUTTON "Up",IDC_ISTACK__UP3,165,340,25,10
|
||||
PUSHBUTTON "Down",IDC_ISTACK__DOWN3,191,340,25,10
|
||||
CTEXT "1",IDC_ISTACK__SIGNALCOUNT3,225,340,16,10,SS_SUNKEN
|
||||
PUSHBUTTON " ",IDC_ISTACK__UNIT4,15,350,83,10
|
||||
PUSHBUTTON "Up",IDC_ISTACK__UP4,165,350,25,10
|
||||
PUSHBUTTON "Down",IDC_ISTACK__DOWN4,191,350,25,10
|
||||
CTEXT "1",IDC_ISTACK__SIGNALCOUNT4,225,350,16,10,SS_SUNKEN
|
||||
PUSHBUTTON " ",IDC_ISTACK__UNIT5,15,360,83,10
|
||||
PUSHBUTTON "Up",IDC_ISTACK__UP5,165,360,25,10
|
||||
PUSHBUTTON "Down",IDC_ISTACK__DOWN5,191,360,25,10
|
||||
CTEXT "1",IDC_ISTACK__SIGNALCOUNT5,225,360,16,10,SS_SUNKEN
|
||||
PUSHBUTTON " ",IDC_ISTACK__UNIT6,15,370,83,10
|
||||
PUSHBUTTON "Up",IDC_ISTACK__UP6,165,370,25,10
|
||||
PUSHBUTTON "Down",IDC_ISTACK__DOWN6,191,370,25,10
|
||||
CTEXT "1",IDC_ISTACK__SIGNALCOUNT6,225,370,16,10,SS_SUNKEN
|
||||
PUSHBUTTON " ",IDC_ISTACK__UNIT7,15,380,83,10
|
||||
PUSHBUTTON "Up",IDC_ISTACK__UP7,165,380,25,10
|
||||
PUSHBUTTON "Down",IDC_ISTACK__DOWN7,191,380,25,10
|
||||
CTEXT "1",IDC_ISTACK__SIGNALCOUNT7,225,380,16,10,SS_SUNKEN
|
||||
PUSHBUTTON " ",IDC_ISTACK__UNIT8,15,390,83,10
|
||||
PUSHBUTTON "Up",IDC_ISTACK__UP8,165,390,25,10
|
||||
PUSHBUTTON "Down",IDC_ISTACK__DOWN8,191,390,25,10
|
||||
CTEXT "1",IDC_ISTACK__SIGNALCOUNT8,225,390,16,10,SS_SUNKEN
|
||||
PUSHBUTTON " ",IDC_ISTACK__UNIT9,15,400,83,10
|
||||
PUSHBUTTON "Up",IDC_ISTACK__UP9,165,400,25,10
|
||||
PUSHBUTTON "Down",IDC_ISTACK__DOWN9,191,400,25,10
|
||||
CTEXT "1",IDC_ISTACK__SIGNALCOUNT9,225,400,16,10,SS_SUNKEN
|
||||
PUSHBUTTON " ",IDC_ISTACK__UNIT10,15,410,83,10
|
||||
PUSHBUTTON "Up",IDC_ISTACK__UP10,165,410,25,10
|
||||
PUSHBUTTON "Down",IDC_ISTACK__DOWN10,191,410,25,10
|
||||
CTEXT "1",IDC_ISTACK__SIGNALCOUNT10,225,410,16,10,SS_SUNKEN
|
||||
PUSHBUTTON " ",IDC_ISTACK__UNIT11,15,420,83,10
|
||||
PUSHBUTTON "Up",IDC_ISTACK__UP11,165,420,25,10
|
||||
PUSHBUTTON "Down",IDC_ISTACK__DOWN11,191,420,25,10
|
||||
CTEXT "1",IDC_ISTACK__SIGNALCOUNT11,225,420,16,10,SS_SUNKEN
|
||||
PUSHBUTTON " ",IDC_ISTACK__UNIT12,15,430,83,10
|
||||
PUSHBUTTON "Up",IDC_ISTACK__UP12,165,430,25,10
|
||||
PUSHBUTTON "Down",IDC_ISTACK__DOWN12,191,430,25,10
|
||||
CTEXT "1",IDC_ISTACK__SIGNALCOUNT12,225,430,16,10,SS_SUNKEN
|
||||
PUSHBUTTON " ",IDC_ISTACK__UNIT13,15,440,83,10
|
||||
PUSHBUTTON "Up",IDC_ISTACK__UP13,165,440,25,10
|
||||
PUSHBUTTON "Down",IDC_ISTACK__DOWN13,191,440,25,10
|
||||
CTEXT "1",IDC_ISTACK__SIGNALCOUNT13,225,440,16,10,SS_SUNKEN
|
||||
PUSHBUTTON " ",IDC_ISTACK__UNIT14,15,450,83,10
|
||||
PUSHBUTTON "Up",IDC_ISTACK__UP14,165,450,25,10
|
||||
PUSHBUTTON "Down",IDC_ISTACK__DOWN14,191,450,25,10
|
||||
CTEXT "1",IDC_ISTACK__SIGNALCOUNT14,225,450,16,10,SS_SUNKEN
|
||||
PUSHBUTTON " ",IDC_ISTACK__UNIT15,15,460,83,10
|
||||
PUSHBUTTON "Up",IDC_ISTACK__UP15,165,460,25,10
|
||||
PUSHBUTTON "Down",IDC_ISTACK__DOWN15,191,460,25,10
|
||||
CTEXT "1",IDC_ISTACK__SIGNALCOUNT15,225,460,16,10,SS_SUNKEN
|
||||
PUSHBUTTON " ",IDC_ISTACK__UNIT16,15,470,83,10
|
||||
PUSHBUTTON "Up",IDC_ISTACK__UP16,165,470,25,10
|
||||
PUSHBUTTON "Down",IDC_ISTACK__DOWN16,191,470,25,10
|
||||
CTEXT "1",IDC_ISTACK__SIGNALCOUNT16,225,470,16,10,SS_SUNKEN
|
||||
PUSHBUTTON " ",IDC_ISTACK__UNIT17,15,480,83,10
|
||||
PUSHBUTTON "Up",IDC_ISTACK__UP17,165,480,25,10
|
||||
PUSHBUTTON "Down",IDC_ISTACK__DOWN17,191,480,25,10
|
||||
CTEXT "1",IDC_ISTACK__SIGNALCOUNT17,225,480,16,10,SS_SUNKEN
|
||||
PUSHBUTTON " ",IDC_ISTACK__UNIT18,15,490,83,10
|
||||
PUSHBUTTON "Up",IDC_ISTACK__UP18,165,490,25,10
|
||||
PUSHBUTTON "Down",IDC_ISTACK__DOWN18,191,490,25,10
|
||||
CTEXT "1",IDC_ISTACK__SIGNALCOUNT18,225,490,16,10,SS_SUNKEN
|
||||
PUSHBUTTON " ",IDC_ISTACK__UNIT19,15,500,83,10
|
||||
PUSHBUTTON "Up",IDC_ISTACK__UP19,165,500,25,10
|
||||
PUSHBUTTON "Down",IDC_ISTACK__DOWN19,191,500,25,10
|
||||
CTEXT "1",IDC_ISTACK__SIGNALCOUNT19,225,500,16,10,SS_SUNKEN
|
||||
PUSHBUTTON " ",IDC_ISTACK__UNIT20,15,510,83,10
|
||||
PUSHBUTTON "Up",IDC_ISTACK__UP20,165,510,25,10
|
||||
PUSHBUTTON "Down",IDC_ISTACK__DOWN20,191,510,25,10
|
||||
CTEXT "1",IDC_ISTACK__SIGNALCOUNT20,225,510,16,10,SS_SUNKEN
|
||||
PUSHBUTTON " ",IDC_ISTACK__UNIT21,15,520,83,10
|
||||
PUSHBUTTON "Up",IDC_ISTACK__UP21,165,520,25,10
|
||||
PUSHBUTTON "Down",IDC_ISTACK__DOWN21,191,520,25,10
|
||||
CTEXT "1",IDC_ISTACK__SIGNALCOUNT21,225,520,16,10,SS_SUNKEN
|
||||
PUSHBUTTON " ",IDC_ISTACK__UNIT22,15,530,83,10
|
||||
PUSHBUTTON "Up",IDC_ISTACK__UP22,165,530,25,10
|
||||
PUSHBUTTON "Down",IDC_ISTACK__DOWN22,191,530,25,10
|
||||
CTEXT "1",IDC_ISTACK__SIGNALCOUNT22,225,530,16,10,SS_SUNKEN
|
||||
PUSHBUTTON " ",IDC_ISTACK__UNIT23,15,540,83,10
|
||||
PUSHBUTTON "Up",IDC_ISTACK__UP23,165,540,25,10
|
||||
PUSHBUTTON "Down",IDC_ISTACK__DOWN23,191,540,25,10
|
||||
CTEXT "1",IDC_ISTACK__SIGNALCOUNT23,225,540,16,10,SS_SUNKEN
|
||||
PUSHBUTTON " ",IDC_ISTACK__UNIT24,15,550,83,10
|
||||
PUSHBUTTON "Up",IDC_ISTACK__UP24,165,550,25,10
|
||||
PUSHBUTTON "Down",IDC_ISTACK__DOWN24,191,550,25,10
|
||||
CTEXT "1",IDC_ISTACK__SIGNALCOUNT24,225,550,16,10,SS_SUNKEN
|
||||
PUSHBUTTON " ",IDC_ISTACK__UNIT25,15,560,83,10
|
||||
PUSHBUTTON "Up",IDC_ISTACK__UP25,165,560,25,10
|
||||
PUSHBUTTON "Down",IDC_ISTACK__DOWN25,191,560,25,10
|
||||
CTEXT "1",IDC_ISTACK__SIGNALCOUNT25,225,560,16,10,SS_SUNKEN
|
||||
PUSHBUTTON " ",IDC_ISTACK__UNIT26,15,570,83,10
|
||||
PUSHBUTTON "Up",IDC_ISTACK__UP26,165,570,25,10
|
||||
PUSHBUTTON "Down",IDC_ISTACK__DOWN26,191,570,25,10
|
||||
CTEXT "1",IDC_ISTACK__SIGNALCOUNT26,225,570,16,10,SS_SUNKEN
|
||||
PUSHBUTTON " ",IDC_ISTACK__UNIT27,15,580,83,10
|
||||
PUSHBUTTON "Up",IDC_ISTACK__UP27,165,580,25,10
|
||||
PUSHBUTTON "Down",IDC_ISTACK__DOWN27,191,580,25,10
|
||||
CTEXT "1",IDC_ISTACK__SIGNALCOUNT27,225,580,16,10,SS_SUNKEN
|
||||
PUSHBUTTON " ",IDC_ISTACK__UNIT28,15,590,83,10
|
||||
PUSHBUTTON "Up",IDC_ISTACK__UP28,165,590,25,10
|
||||
PUSHBUTTON "Down",IDC_ISTACK__DOWN28,191,590,25,10
|
||||
CTEXT "1",IDC_ISTACK__SIGNALCOUNT28,225,590,16,10,SS_SUNKEN
|
||||
PUSHBUTTON " ",IDC_ISTACK__UNIT29,15,600,83,10
|
||||
PUSHBUTTON "Up",IDC_ISTACK__UP29,165,600,25,10
|
||||
PUSHBUTTON "Down",IDC_ISTACK__DOWN29,191,600,25,10
|
||||
CTEXT "1",IDC_ISTACK__SIGNALCOUNT29,225,600,16,10,SS_SUNKEN
|
||||
PUSHBUTTON " ",IDC_ISTACK__UNIT30,15,610,83,10
|
||||
PUSHBUTTON "Up",IDC_ISTACK__UP30,165,610,25,10
|
||||
PUSHBUTTON "Down",IDC_ISTACK__DOWN30,191,610,25,10
|
||||
CTEXT "1",IDC_ISTACK__SIGNALCOUNT30,225,610,16,10,SS_SUNKEN
|
||||
PUSHBUTTON " ",IDC_ISTACK__UNIT31,15,620,83,10
|
||||
PUSHBUTTON "Up",IDC_ISTACK__UP31,165,620,25,10
|
||||
PUSHBUTTON "Down",IDC_ISTACK__DOWN31,191,620,25,10
|
||||
CTEXT "1",IDC_ISTACK__SIGNALCOUNT31,225,620,16,10,SS_SUNKEN
|
||||
PUSHBUTTON " ",IDC_ISTACK__UNIT32,15,630,83,10
|
||||
PUSHBUTTON "Up",IDC_ISTACK__UP32,165,630,25,10
|
||||
PUSHBUTTON "Down",IDC_ISTACK__DOWN32,191,630,25,10,NOT WS_VISIBLE
|
||||
CTEXT "1",IDC_ISTACK__SIGNALCOUNT32,225,630,16,10,SS_SUNKEN
|
||||
PUSHBUTTON "Set",IDC_ISTACK_SET1,106,0,25,10,NOT WS_VISIBLE
|
||||
PUSHBUTTON "Clear",IDC_ISTACK_RESET1,132,0,25,10,NOT WS_VISIBLE
|
||||
PUSHBUTTON "Set",IDC_ISTACK_SET2,106,10,25,10
|
||||
@ -430,6 +561,70 @@ BEGIN
|
||||
PUSHBUTTON "Clear",IDC_ISTACK_RESET31,132,300,25,10
|
||||
PUSHBUTTON "Set",IDC_ISTACK_SET32,106,310,25,10
|
||||
PUSHBUTTON "Clear",IDC_ISTACK_RESET32,132,310,25,10
|
||||
PUSHBUTTON "Setl",IDC_ISTACK__SET1,106,320,25,10
|
||||
PUSHBUTTON "Clear",IDC_ISTACK__RESET1,132,320,25,10
|
||||
PUSHBUTTON "Set",IDC_ISTACK__SET2,106,330,25,10
|
||||
PUSHBUTTON "Clear",IDC_ISTACK__RESET2,132,330,25,10
|
||||
PUSHBUTTON "Set",IDC_ISTACK__SET3,106,340,25,10
|
||||
PUSHBUTTON "Clear",IDC_ISTACK__RESET3,132,340,25,10
|
||||
PUSHBUTTON "Set",IDC_ISTACK__SET4,106,350,25,10
|
||||
PUSHBUTTON "Clear",IDC_ISTACK__RESET4,132,350,25,10
|
||||
PUSHBUTTON "Set",IDC_ISTACK__SET5,106,360,25,10
|
||||
PUSHBUTTON "Clear",IDC_ISTACK__RESET5,132,360,25,10
|
||||
PUSHBUTTON "Set",IDC_ISTACK__SET6,106,370,25,10
|
||||
PUSHBUTTON "Clear",IDC_ISTACK__RESET6,132,370,25,10
|
||||
PUSHBUTTON "Set",IDC_ISTACK__SET7,106,380,25,10
|
||||
PUSHBUTTON "Clear",IDC_ISTACK__RESET7,132,380,25,10
|
||||
PUSHBUTTON "Set",IDC_ISTACK__SET8,106,390,25,10
|
||||
PUSHBUTTON "Clear",IDC_ISTACK__RESET8,132,390,25,10
|
||||
PUSHBUTTON "Set",IDC_ISTACK__SET9,106,400,25,10
|
||||
PUSHBUTTON "Clear",IDC_ISTACK__RESET9,132,400,25,10
|
||||
PUSHBUTTON "Set",IDC_ISTACK__SET10,106,410,25,10
|
||||
PUSHBUTTON "Clear",IDC_ISTACK__RESET10,132,410,25,10
|
||||
PUSHBUTTON "Set",IDC_ISTACK__SET11,106,420,25,10
|
||||
PUSHBUTTON "Clear",IDC_ISTACK__RESET11,132,420,25,10
|
||||
PUSHBUTTON "Set",IDC_ISTACK__SET12,106,430,25,10
|
||||
PUSHBUTTON "Clear",IDC_ISTACK__RESET12,132,430,25,10
|
||||
PUSHBUTTON "Set",IDC_ISTACK__SET13,106,440,25,10
|
||||
PUSHBUTTON "Clear",IDC_ISTACK__RESET13,132,440,25,10
|
||||
PUSHBUTTON "Set",IDC_ISTACK__SET14,106,450,25,10
|
||||
PUSHBUTTON "Clear",IDC_ISTACK__RESET14,132,450,25,10
|
||||
PUSHBUTTON "Set",IDC_ISTACK__SET15,106,460,25,10
|
||||
PUSHBUTTON "Clear",IDC_ISTACK__RESET15,132,460,25,10
|
||||
PUSHBUTTON "Set",IDC_ISTACK__SET16,106,470,25,10
|
||||
PUSHBUTTON "Clear",IDC_ISTACK__RESET16,132,470,25,10
|
||||
PUSHBUTTON "Set",IDC_ISTACK__SET17,106,480,25,10
|
||||
PUSHBUTTON "Clear",IDC_ISTACK__RESET17,132,480,25,10
|
||||
PUSHBUTTON "Set",IDC_ISTACK__SET18,106,490,25,10
|
||||
PUSHBUTTON "Clear",IDC_ISTACK__RESET18,132,490,25,10
|
||||
PUSHBUTTON "Set",IDC_ISTACK__SET19,106,500,25,10
|
||||
PUSHBUTTON "Clear",IDC_ISTACK__RESET19,132,500,25,10
|
||||
PUSHBUTTON "Set",IDC_ISTACK__SET20,106,510,25,10
|
||||
PUSHBUTTON "Clear",IDC_ISTACK__RESET20,132,510,25,10
|
||||
PUSHBUTTON "Set",IDC_ISTACK__SET21,106,520,25,10
|
||||
PUSHBUTTON "Clear",IDC_ISTACK__RESET21,132,520,25,10
|
||||
PUSHBUTTON "Set",IDC_ISTACK__SET22,106,530,25,10
|
||||
PUSHBUTTON "Clear",IDC_ISTACK__RESET22,132,530,25,10
|
||||
PUSHBUTTON "Set",IDC_ISTACK__SET23,106,540,25,10
|
||||
PUSHBUTTON "Clear",IDC_ISTACK__RESET23,132,540,25,10
|
||||
PUSHBUTTON "Set",IDC_ISTACK__SET24,106,550,25,10
|
||||
PUSHBUTTON "Clear",IDC_ISTACK__RESET24,132,550,25,10
|
||||
PUSHBUTTON "Set",IDC_ISTACK__SET25,106,560,25,10
|
||||
PUSHBUTTON "Clear",IDC_ISTACK__RESET25,132,560,25,10
|
||||
PUSHBUTTON "Set",IDC_ISTACK__SET26,106,570,25,10
|
||||
PUSHBUTTON "Clear",IDC_ISTACK__RESET26,132,570,25,10
|
||||
PUSHBUTTON "Set",IDC_ISTACK__SET27,106,580,25,10
|
||||
PUSHBUTTON "Clear",IDC_ISTACK__RESET27,132,580,25,10
|
||||
PUSHBUTTON "Set",IDC_ISTACK__SET28,106,590,25,10
|
||||
PUSHBUTTON "Clear",IDC_ISTACK__RESET28,132,590,25,10
|
||||
PUSHBUTTON "Set",IDC_ISTACK__SET29,106,600,25,10
|
||||
PUSHBUTTON "Clear",IDC_ISTACK__RESET29,132,600,25,10
|
||||
PUSHBUTTON "Set",IDC_ISTACK__SET30,106,610,25,10
|
||||
PUSHBUTTON "Clear",IDC_ISTACK__RESET30,132,610,25,10
|
||||
PUSHBUTTON "Set",IDC_ISTACK__SET31,106,620,25,10
|
||||
PUSHBUTTON "Clear",IDC_ISTACK__RESET31,132,620,25,10
|
||||
PUSHBUTTON "Set",IDC_ISTACK__SET32,106,630,25,10
|
||||
PUSHBUTTON "Clear",IDC_ISTACK__RESET32,132,630,25,10
|
||||
LTEXT "1:",IDC_STATIC,2,1,10,8
|
||||
LTEXT "2:",IDC_STATIC,2,11,10,8
|
||||
LTEXT "3:",IDC_STATIC,2,21,10,8
|
||||
@ -462,6 +657,38 @@ BEGIN
|
||||
LTEXT "30:",IDC_STATIC,2,291,10,8
|
||||
LTEXT "31:",IDC_STATIC,2,301,10,8
|
||||
LTEXT "32:",IDC_STATIC,2,311,10,8
|
||||
LTEXT "33:",IDC_STATIC,2,321,10,8
|
||||
LTEXT "34:",IDC_STATIC,2,331,10,8
|
||||
LTEXT "35:",IDC_STATIC,2,341,10,8
|
||||
LTEXT "36:",IDC_STATIC,2,351,10,8
|
||||
LTEXT "37:",IDC_STATIC,2,361,10,8
|
||||
LTEXT "38:",IDC_STATIC,2,371,10,8
|
||||
LTEXT "39:",IDC_STATIC,2,381,10,8
|
||||
LTEXT "40:",IDC_STATIC,2,391,10,8
|
||||
LTEXT "41:",IDC_STATIC,2,401,10,8
|
||||
LTEXT "42:",IDC_STATIC,2,411,10,8
|
||||
LTEXT "43:",IDC_STATIC,2,421,10,8
|
||||
LTEXT "44:",IDC_STATIC,2,431,10,8
|
||||
LTEXT "45:",IDC_STATIC,2,441,10,8
|
||||
LTEXT "46:",IDC_STATIC,2,451,10,8
|
||||
LTEXT "47:",IDC_STATIC,2,461,10,8
|
||||
LTEXT "48:",IDC_STATIC,2,471,10,8
|
||||
LTEXT "49:",IDC_STATIC,2,481,10,8
|
||||
LTEXT "50:",IDC_STATIC,2,491,10,8
|
||||
LTEXT "51:",IDC_STATIC,2,501,10,8
|
||||
LTEXT "52:",IDC_STATIC,2,511,10,8
|
||||
LTEXT "53:",IDC_STATIC,2,521,10,8
|
||||
LTEXT "54:",IDC_STATIC,2,531,10,8
|
||||
LTEXT "55:",IDC_STATIC,2,541,10,8
|
||||
LTEXT "56:",IDC_STATIC,2,551,10,8
|
||||
LTEXT "57:",IDC_STATIC,2,561,10,8
|
||||
LTEXT "58:",IDC_STATIC,2,571,10,8
|
||||
LTEXT "59:",IDC_STATIC,2,581,10,8
|
||||
LTEXT "60:",IDC_STATIC,2,591,10,8
|
||||
LTEXT "61:",IDC_STATIC,2,601,10,8
|
||||
LTEXT "62:",IDC_STATIC,2,611,10,8
|
||||
LTEXT "63:",IDC_STATIC,2,621,10,8
|
||||
LTEXT "64:",IDC_STATIC,2,631,10,8
|
||||
END
|
||||
|
||||
IDD_FOP DIALOGEX 0, 0, 300, 170
|
||||
@ -469,30 +696,31 @@ STYLE DS_SETFONT | DS_FIXEDSYS | WS_CHILD
|
||||
FONT 8, "MS Shell Dlg", 400, 0, 0x1
|
||||
BEGIN
|
||||
GROUPBOX "Floating Point Operation",IDC_STATIC,0,0,299,170
|
||||
PUSHBUTTON "POP",IDC_FOP_POP,3,50,42,14
|
||||
PUSHBUTTON "PUSH",IDC_FOP_PUSH,3,33,42,14
|
||||
PUSHBUTTON "XCH",IDC_FOP_XCH,3,67,42,14
|
||||
PUSHBUTTON "+",IDC_FOP_ADD,3,84,42,14
|
||||
PUSHBUTTON "+/POP",IDC_FOP_ADDP,3,101,42,14
|
||||
PUSHBUTTON "*",IDC_FOP_MUL,3,118,42,14
|
||||
PUSHBUTTON "*/POP",IDC_FOP_MULP,3,135,42,14
|
||||
LTEXT "IN: a b c d -> OUT: a a b c d",IDC_STATIC,50,35,232,8
|
||||
LTEXT "IN: a b c d -> OUT: b c d",IDC_STATIC,50,52,196,8
|
||||
LTEXT "IN: a b c d -> OUT: b a c d",IDC_STATIC,50,69,214,8
|
||||
LTEXT "IN: a b c d -> OUT: a+b b c d",IDC_STATIC,50,86,216,8
|
||||
LTEXT "IN: a b c d -> OUT: a+b c d",IDC_STATIC,50,103,198,8
|
||||
LTEXT "IN: a b c d -> OUT: a*b b c d",IDC_STATIC,50,120,216,8
|
||||
LTEXT "IN: a b c d -> OUT: a*b c d",IDC_STATIC,50,137,198,8
|
||||
PUSHBUTTON "2+/POP",IDC_FOP_ADDP2,3,152,42,14
|
||||
LTEXT "IN: a b c d -> OUT: a+c b+d",IDC_STATIC,50,155,193,8
|
||||
GROUPBOX "",IDC_STATIC,0,27,299,22
|
||||
GROUPBOX "",IDC_STATIC,0,61,299,22
|
||||
GROUPBOX "",IDC_STATIC,0,95,299,22
|
||||
GROUPBOX "",IDC_STATIC,0,129,299,23
|
||||
GROUPBOX "",IDC_STATIC,0,147,299,21
|
||||
PUSHBUTTON "Load Note",IDC_FOP_LOADNOTE,3,16,42,14
|
||||
LTEXT "IN: a b c d -> OUT: note a b c d",IDC_STATIC,50,18,233,8
|
||||
GROUPBOX "",IDC_STATIC,0,10,299,22
|
||||
PUSHBUTTON "Load Note",IDC_FOP_LOADNOTE,3,11,42,14
|
||||
PUSHBUTTON "PUSH",IDC_FOP_PUSH,3,27,42,14
|
||||
PUSHBUTTON "POP",IDC_FOP_POP,3,42,42,14
|
||||
PUSHBUTTON "XCH",IDC_FOP_XCH,3,58,42,14
|
||||
PUSHBUTTON "+",IDC_FOP_ADD,3,74,42,14
|
||||
PUSHBUTTON "+/POP",IDC_FOP_ADDP,3,90,42,14
|
||||
PUSHBUTTON "*",IDC_FOP_MUL,3,106,42,14
|
||||
PUSHBUTTON "*/POP",IDC_FOP_MULP,3,122,42,14
|
||||
PUSHBUTTON "2+/POP",IDC_FOP_ADDP2,3,138,42,14
|
||||
PUSHBUTTON "2*/POP",IDC_FOP_MULP2,3,154,42,14
|
||||
LTEXT "IN: a b c d -> OUT: note a b c d",IDC_STATIC,50,13,233,8
|
||||
LTEXT "IN: a b c d -> OUT: a a b c d",IDC_STATIC,50,29,232,8
|
||||
LTEXT "IN: a b c d -> OUT: b c d",IDC_STATIC,50,44,196,8
|
||||
LTEXT "IN: a b c d -> OUT: b a c d",IDC_STATIC,50,60,214,8
|
||||
LTEXT "IN: a b c d -> OUT: a+b b c d",IDC_STATIC,50,76,216,8
|
||||
LTEXT "IN: a b c d -> OUT: a+b c d",IDC_STATIC,50,92,198,8
|
||||
LTEXT "IN: a b c d -> OUT: a*b b c d",IDC_STATIC,50,108,216,8
|
||||
LTEXT "IN: a b c d -> OUT: a*b c d",IDC_STATIC,50,124,198,8
|
||||
LTEXT "IN: a b c d -> OUT: a+c b+d",IDC_STATIC,50,141,193,8
|
||||
LTEXT "IN: a b c d -> OUT: a*c b*d",IDC_STATIC,50,156,193,8
|
||||
GROUPBOX "",IDC_STATIC,0,133,299,20
|
||||
GROUPBOX "",IDC_STATIC,0,101,299,20
|
||||
GROUPBOX "",IDC_STATIC,1,69,299,20
|
||||
GROUPBOX "",IDC_STATIC,0,37,299,20
|
||||
GROUPBOX "",IDC_STATIC,0,6,299,20
|
||||
END
|
||||
|
||||
IDD_FST DIALOGEX 0, 0, 300, 170
|
||||
@ -509,6 +737,10 @@ BEGIN
|
||||
LTEXT "Unit",IDC_STATIC,6,71,14,8
|
||||
COMBOBOX IDC_FST_DESTINATION_SLOT,43,85,249,110,CBS_DROPDOWN | CBS_DISABLENOSCROLL | WS_VSCROLL | WS_TABSTOP
|
||||
LTEXT "Slot",IDC_STATIC,5,87,13,8
|
||||
PUSHBUTTON "Set",IDC_FST_SET,56,122,50,14
|
||||
PUSHBUTTON "+",IDC_FST_ADD,106,122,50,14
|
||||
CONTROL "Pop",IDC_FST_POP,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,212,124,28,10
|
||||
PUSHBUTTON "*",IDC_FST_MUL,156,122,50,14,NOT WS_VISIBLE
|
||||
END
|
||||
|
||||
IDD_NONE DIALOGEX 0, 0, 300, 170
|
||||
@ -532,7 +764,7 @@ BEGIN
|
||||
CTEXT " ",IDC_OUT_AUXSEND_VAL,242,86,48,12,SS_SUNKEN
|
||||
END
|
||||
|
||||
IDD_GLOBAL_STACK DIALOGEX 0, 0, 247, 320
|
||||
IDD_GLOBAL_STACK DIALOGEX 0, 0, 247, 640
|
||||
STYLE DS_SETFONT | DS_FIXEDSYS | WS_CHILD | WS_CLIPCHILDREN
|
||||
FONT 8, "MS Shell Dlg", 400, 0, 0x1
|
||||
BEGIN
|
||||
@ -662,8 +894,136 @@ BEGIN
|
||||
CTEXT "1",IDC_GSTACK_SIGNALCOUNT31,225,300,16,10,SS_SUNKEN
|
||||
PUSHBUTTON " ",IDC_GSTACK_UNIT32,15,310,83,10
|
||||
PUSHBUTTON "Up",IDC_GSTACK_UP32,165,310,25,10
|
||||
PUSHBUTTON "Down",IDC_GSTACK_DOWN32,191,310,25,10,NOT WS_VISIBLE
|
||||
PUSHBUTTON "Down",IDC_GSTACK_DOWN32,191,310,25,10
|
||||
CTEXT "1",IDC_GSTACK_SIGNALCOUNT32,225,310,16,10,SS_SUNKEN
|
||||
PUSHBUTTON " ",IDC_GSTACK__UNIT1,15,320,83,10
|
||||
PUSHBUTTON "Up",IDC_GSTACK__UP1,165,320,25,10
|
||||
PUSHBUTTON "Down",IDC_GSTACK__DOWN1,191,320,25,10
|
||||
CTEXT "1",IDC_GSTACK__SIGNALCOUNT1,225,320,16,10,SS_SUNKEN
|
||||
PUSHBUTTON " ",IDC_GSTACK__UNIT2,15,330,83,10
|
||||
PUSHBUTTON "Up",IDC_GSTACK__UP2,165,330,25,10
|
||||
PUSHBUTTON "Down",IDC_GSTACK__DOWN2,191,330,25,10
|
||||
CTEXT "1",IDC_GSTACK__SIGNALCOUNT2,225,330,16,10,SS_SUNKEN
|
||||
PUSHBUTTON " ",IDC_GSTACK__UNIT3,15,340,83,10
|
||||
PUSHBUTTON "Up",IDC_GSTACK__UP3,165,340,25,10
|
||||
PUSHBUTTON "Down",IDC_GSTACK__DOWN3,191,340,25,10
|
||||
CTEXT "1",IDC_GSTACK__SIGNALCOUNT3,225,340,16,10,SS_SUNKEN
|
||||
PUSHBUTTON " ",IDC_GSTACK__UNIT4,15,350,83,10
|
||||
PUSHBUTTON "Up",IDC_GSTACK__UP4,165,350,25,10
|
||||
PUSHBUTTON "Down",IDC_GSTACK__DOWN4,191,350,25,10
|
||||
CTEXT "1",IDC_GSTACK__SIGNALCOUNT4,225,350,16,10,SS_SUNKEN
|
||||
PUSHBUTTON " ",IDC_GSTACK__UNIT5,15,360,83,10
|
||||
PUSHBUTTON "Up",IDC_GSTACK__UP5,165,360,25,10
|
||||
PUSHBUTTON "Down",IDC_GSTACK__DOWN5,191,360,25,10
|
||||
CTEXT "1",IDC_GSTACK__SIGNALCOUNT5,225,360,16,10,SS_SUNKEN
|
||||
PUSHBUTTON " ",IDC_GSTACK__UNIT6,15,370,83,10
|
||||
PUSHBUTTON "Up",IDC_GSTACK__UP6,165,370,25,10
|
||||
PUSHBUTTON "Down",IDC_GSTACK__DOWN6,191,370,25,10
|
||||
CTEXT "1",IDC_GSTACK__SIGNALCOUNT6,225,370,16,10,SS_SUNKEN
|
||||
PUSHBUTTON " ",IDC_GSTACK__UNIT7,15,380,83,10
|
||||
PUSHBUTTON "Up",IDC_GSTACK__UP7,165,380,25,10
|
||||
PUSHBUTTON "Down",IDC_GSTACK__DOWN7,191,380,25,10
|
||||
CTEXT "1",IDC_GSTACK__SIGNALCOUNT7,225,380,16,10,SS_SUNKEN
|
||||
PUSHBUTTON " ",IDC_GSTACK__UNIT8,15,390,83,10
|
||||
PUSHBUTTON "Up",IDC_GSTACK__UP8,165,390,25,10
|
||||
PUSHBUTTON "Down",IDC_GSTACK__DOWN8,191,390,25,10
|
||||
CTEXT "1",IDC_GSTACK__SIGNALCOUNT8,225,390,16,10,SS_SUNKEN
|
||||
PUSHBUTTON " ",IDC_GSTACK__UNIT9,15,400,83,10
|
||||
PUSHBUTTON "Up",IDC_GSTACK__UP9,165,400,25,10
|
||||
PUSHBUTTON "Down",IDC_GSTACK__DOWN9,191,400,25,10
|
||||
CTEXT "1",IDC_GSTACK__SIGNALCOUNT9,225,400,16,10,SS_SUNKEN
|
||||
PUSHBUTTON " ",IDC_GSTACK__UNIT10,15,410,83,10
|
||||
PUSHBUTTON "Up",IDC_GSTACK__UP10,165,410,25,10
|
||||
PUSHBUTTON "Down",IDC_GSTACK__DOWN10,191,410,25,10
|
||||
CTEXT "1",IDC_GSTACK__SIGNALCOUNT10,225,410,16,10,SS_SUNKEN
|
||||
PUSHBUTTON " ",IDC_GSTACK__UNIT11,15,420,83,10
|
||||
PUSHBUTTON "Up",IDC_GSTACK__UP11,165,420,25,10
|
||||
PUSHBUTTON "Down",IDC_GSTACK__DOWN11,191,420,25,10
|
||||
CTEXT "1",IDC_GSTACK__SIGNALCOUNT11,225,420,16,10,SS_SUNKEN
|
||||
PUSHBUTTON " ",IDC_GSTACK__UNIT12,15,430,83,10
|
||||
PUSHBUTTON "Up",IDC_GSTACK__UP12,165,430,25,10
|
||||
PUSHBUTTON "Down",IDC_GSTACK__DOWN12,191,430,25,10
|
||||
CTEXT "1",IDC_GSTACK__SIGNALCOUNT12,225,430,16,10,SS_SUNKEN
|
||||
PUSHBUTTON " ",IDC_GSTACK__UNIT13,15,440,83,10
|
||||
PUSHBUTTON "Up",IDC_GSTACK__UP13,165,440,25,10
|
||||
PUSHBUTTON "Down",IDC_GSTACK__DOWN13,191,440,25,10
|
||||
CTEXT "1",IDC_GSTACK__SIGNALCOUNT13,225,440,16,10,SS_SUNKEN
|
||||
PUSHBUTTON " ",IDC_GSTACK__UNIT14,15,450,83,10
|
||||
PUSHBUTTON "Up",IDC_GSTACK__UP14,165,450,25,10
|
||||
PUSHBUTTON "Down",IDC_GSTACK__DOWN14,191,450,25,10
|
||||
CTEXT "1",IDC_GSTACK__SIGNALCOUNT14,225,450,16,10,SS_SUNKEN
|
||||
PUSHBUTTON " ",IDC_GSTACK__UNIT15,15,460,83,10
|
||||
PUSHBUTTON "Up",IDC_GSTACK__UP15,165,460,25,10
|
||||
PUSHBUTTON "Down",IDC_GSTACK__DOWN15,191,460,25,10
|
||||
CTEXT "1",IDC_GSTACK__SIGNALCOUNT15,225,460,16,10,SS_SUNKEN
|
||||
PUSHBUTTON " ",IDC_GSTACK__UNIT16,15,470,83,10
|
||||
PUSHBUTTON "Up",IDC_GSTACK__UP16,165,470,25,10
|
||||
PUSHBUTTON "Down",IDC_GSTACK__DOWN16,191,470,25,10
|
||||
CTEXT "1",IDC_GSTACK__SIGNALCOUNT16,225,470,16,10,SS_SUNKEN
|
||||
PUSHBUTTON " ",IDC_GSTACK__UNIT17,15,480,83,10
|
||||
PUSHBUTTON "Up",IDC_GSTACK__UP17,165,480,25,10
|
||||
PUSHBUTTON "Down",IDC_GSTACK__DOWN17,191,480,25,10
|
||||
CTEXT "1",IDC_GSTACK__SIGNALCOUNT17,225,480,16,10,SS_SUNKEN
|
||||
PUSHBUTTON " ",IDC_GSTACK__UNIT18,15,490,83,10
|
||||
PUSHBUTTON "Up",IDC_GSTACK__UP18,165,490,25,10
|
||||
PUSHBUTTON "Down",IDC_GSTACK__DOWN18,191,490,25,10
|
||||
CTEXT "1",IDC_GSTACK__SIGNALCOUNT18,225,490,16,10,SS_SUNKEN
|
||||
PUSHBUTTON " ",IDC_GSTACK__UNIT19,15,500,83,10
|
||||
PUSHBUTTON "Up",IDC_GSTACK__UP19,165,500,25,10
|
||||
PUSHBUTTON "Down",IDC_GSTACK__DOWN19,191,500,25,10
|
||||
CTEXT "1",IDC_GSTACK__SIGNALCOUNT19,225,500,16,10,SS_SUNKEN
|
||||
PUSHBUTTON " ",IDC_GSTACK__UNIT20,15,510,83,10
|
||||
PUSHBUTTON "Up",IDC_GSTACK__UP20,165,510,25,10
|
||||
PUSHBUTTON "Down",IDC_GSTACK__DOWN20,191,510,25,10
|
||||
CTEXT "1",IDC_GSTACK__SIGNALCOUNT20,225,510,16,10,SS_SUNKEN
|
||||
PUSHBUTTON " ",IDC_GSTACK__UNIT21,15,520,83,10
|
||||
PUSHBUTTON "Up",IDC_GSTACK__UP21,165,520,25,10
|
||||
PUSHBUTTON "Down",IDC_GSTACK__DOWN21,191,520,25,10
|
||||
CTEXT "1",IDC_GSTACK__SIGNALCOUNT21,225,520,16,10,SS_SUNKEN
|
||||
PUSHBUTTON " ",IDC_GSTACK__UNIT22,15,530,83,10
|
||||
PUSHBUTTON "Up",IDC_GSTACK__UP22,165,530,25,10
|
||||
PUSHBUTTON "Down",IDC_GSTACK__DOWN22,191,530,25,10
|
||||
CTEXT "1",IDC_GSTACK__SIGNALCOUNT22,225,530,16,10,SS_SUNKEN
|
||||
PUSHBUTTON " ",IDC_GSTACK__UNIT23,15,540,83,10
|
||||
PUSHBUTTON "Up",IDC_GSTACK__UP23,165,540,25,10
|
||||
PUSHBUTTON "Down",IDC_GSTACK__DOWN23,191,540,25,10
|
||||
CTEXT "1",IDC_GSTACK__SIGNALCOUNT23,225,540,16,10,SS_SUNKEN
|
||||
PUSHBUTTON " ",IDC_GSTACK__UNIT24,15,550,83,10
|
||||
PUSHBUTTON "Up",IDC_GSTACK__UP24,165,550,25,10
|
||||
PUSHBUTTON "Down",IDC_GSTACK__DOWN24,191,550,25,10
|
||||
CTEXT "1",IDC_GSTACK__SIGNALCOUNT24,225,550,16,10,SS_SUNKEN
|
||||
PUSHBUTTON " ",IDC_GSTACK__UNIT25,15,560,83,10
|
||||
PUSHBUTTON "Up",IDC_GSTACK__UP25,165,560,25,10
|
||||
PUSHBUTTON "Down",IDC_GSTACK__DOWN25,191,560,25,10
|
||||
CTEXT "1",IDC_GSTACK__SIGNALCOUNT25,225,560,16,10,SS_SUNKEN
|
||||
PUSHBUTTON " ",IDC_GSTACK__UNIT26,15,570,83,10
|
||||
PUSHBUTTON "Up",IDC_GSTACK__UP26,165,570,25,10
|
||||
PUSHBUTTON "Down",IDC_GSTACK__DOWN26,191,570,25,10
|
||||
CTEXT "1",IDC_GSTACK__SIGNALCOUNT26,225,570,16,10,SS_SUNKEN
|
||||
PUSHBUTTON " ",IDC_GSTACK__UNIT27,15,580,83,10
|
||||
PUSHBUTTON "Up",IDC_GSTACK__UP27,165,580,25,10
|
||||
PUSHBUTTON "Down",IDC_GSTACK__DOWN27,191,580,25,10
|
||||
CTEXT "1",IDC_GSTACK__SIGNALCOUNT27,225,580,16,10,SS_SUNKEN
|
||||
PUSHBUTTON " ",IDC_GSTACK__UNIT28,15,590,83,10
|
||||
PUSHBUTTON "Up",IDC_GSTACK__UP28,165,590,25,10
|
||||
PUSHBUTTON "Down",IDC_GSTACK__DOWN28,191,590,25,10
|
||||
CTEXT "1",IDC_GSTACK__SIGNALCOUNT28,225,590,16,10,SS_SUNKEN
|
||||
PUSHBUTTON " ",IDC_GSTACK__UNIT29,15,600,83,10
|
||||
PUSHBUTTON "Up",IDC_GSTACK__UP29,165,600,25,10
|
||||
PUSHBUTTON "Down",IDC_GSTACK__DOWN29,191,600,25,10
|
||||
CTEXT "1",IDC_GSTACK__SIGNALCOUNT29,225,600,16,10,SS_SUNKEN
|
||||
PUSHBUTTON " ",IDC_GSTACK__UNIT30,15,610,83,10
|
||||
PUSHBUTTON "Up",IDC_GSTACK__UP30,165,610,25,10
|
||||
PUSHBUTTON "Down",IDC_GSTACK__DOWN30,191,610,25,10
|
||||
CTEXT "1",IDC_GSTACK__SIGNALCOUNT30,225,610,16,10,SS_SUNKEN
|
||||
PUSHBUTTON " ",IDC_GSTACK__UNIT31,15,620,83,10
|
||||
PUSHBUTTON "Up",IDC_GSTACK__UP31,165,620,25,10
|
||||
PUSHBUTTON "Down",IDC_GSTACK__DOWN31,191,620,25,10
|
||||
CTEXT "1",IDC_GSTACK__SIGNALCOUNT31,225,620,16,10,SS_SUNKEN
|
||||
PUSHBUTTON " ",IDC_GSTACK__UNIT32,15,630,83,10
|
||||
PUSHBUTTON "Up",IDC_GSTACK__UP32,165,630,25,10
|
||||
PUSHBUTTON "Down",IDC_GSTACK__DOWN32,191,630,25,10,NOT WS_VISIBLE
|
||||
CTEXT "1",IDC_GSTACK__SIGNALCOUNT32,225,630,16,10,SS_SUNKEN
|
||||
PUSHBUTTON "Set",IDC_GSTACK_SET1,106,0,25,10
|
||||
PUSHBUTTON "Clear",IDC_GSTACK_RESET1,132,0,25,10
|
||||
PUSHBUTTON "Set",IDC_GSTACK_SET2,106,10,25,10
|
||||
@ -728,6 +1088,70 @@ BEGIN
|
||||
PUSHBUTTON "Clear",IDC_GSTACK_RESET31,132,300,25,10
|
||||
PUSHBUTTON "Set",IDC_GSTACK_SET32,106,310,25,10
|
||||
PUSHBUTTON "Clear",IDC_GSTACK_RESET32,132,310,25,10
|
||||
PUSHBUTTON "Set",IDC_GSTACK__SET1,106,320,25,10
|
||||
PUSHBUTTON "Clear",IDC_GSTACK__RESET1,132,320,25,10
|
||||
PUSHBUTTON "Set",IDC_GSTACK__SET2,106,330,25,10
|
||||
PUSHBUTTON "Clear",IDC_GSTACK__RESET2,132,330,25,10
|
||||
PUSHBUTTON "Set",IDC_GSTACK__SET3,106,340,25,10
|
||||
PUSHBUTTON "Clear",IDC_GSTACK__RESET3,132,340,25,10
|
||||
PUSHBUTTON "Set",IDC_GSTACK__SET4,106,350,25,10
|
||||
PUSHBUTTON "Clear",IDC_GSTACK__RESET4,132,350,25,10
|
||||
PUSHBUTTON "Set",IDC_GSTACK__SET5,106,360,25,10
|
||||
PUSHBUTTON "Clear",IDC_GSTACK__RESET5,132,360,25,10
|
||||
PUSHBUTTON "Set",IDC_GSTACK__SET6,106,370,25,10
|
||||
PUSHBUTTON "Clear",IDC_GSTACK__RESET6,132,370,25,10
|
||||
PUSHBUTTON "Set",IDC_GSTACK__SET7,106,380,25,10
|
||||
PUSHBUTTON "Clear",IDC_GSTACK__RESET7,132,380,25,10
|
||||
PUSHBUTTON "Set",IDC_GSTACK__SET8,106,390,25,10
|
||||
PUSHBUTTON "Clear",IDC_GSTACK__RESET8,132,390,25,10
|
||||
PUSHBUTTON "Set",IDC_GSTACK__SET9,106,400,25,10
|
||||
PUSHBUTTON "Clear",IDC_GSTACK__RESET9,132,400,25,10
|
||||
PUSHBUTTON "Set",IDC_GSTACK__SET10,106,410,25,10
|
||||
PUSHBUTTON "Clear",IDC_GSTACK__RESET10,132,410,25,10
|
||||
PUSHBUTTON "Set",IDC_GSTACK__SET11,106,420,25,10
|
||||
PUSHBUTTON "Clear",IDC_GSTACK__RESET11,132,420,25,10
|
||||
PUSHBUTTON "Set",IDC_GSTACK__SET12,106,430,25,10
|
||||
PUSHBUTTON "Clear",IDC_GSTACK__RESET12,132,430,25,10
|
||||
PUSHBUTTON "Set",IDC_GSTACK__SET13,106,440,25,10
|
||||
PUSHBUTTON "Clear",IDC_GSTACK__RESET13,132,440,25,10
|
||||
PUSHBUTTON "Set",IDC_GSTACK__SET14,106,450,25,10
|
||||
PUSHBUTTON "Clear",IDC_GSTACK__RESET14,132,450,25,10
|
||||
PUSHBUTTON "Set",IDC_GSTACK__SET15,106,460,25,10
|
||||
PUSHBUTTON "Clear",IDC_GSTACK__RESET15,132,460,25,10
|
||||
PUSHBUTTON "Set",IDC_GSTACK__SET16,106,470,25,10
|
||||
PUSHBUTTON "Clear",IDC_GSTACK__RESET16,132,470,25,10
|
||||
PUSHBUTTON "Set",IDC_GSTACK__SET17,106,480,25,10
|
||||
PUSHBUTTON "Clear",IDC_GSTACK__RESET17,132,480,25,10
|
||||
PUSHBUTTON "Set",IDC_GSTACK__SET18,106,490,25,10
|
||||
PUSHBUTTON "Clear",IDC_GSTACK__RESET18,132,490,25,10
|
||||
PUSHBUTTON "Set",IDC_GSTACK__SET19,106,500,25,10
|
||||
PUSHBUTTON "Clear",IDC_GSTACK__RESET19,132,500,25,10
|
||||
PUSHBUTTON "Set",IDC_GSTACK__SET20,106,510,25,10
|
||||
PUSHBUTTON "Clear",IDC_GSTACK__RESET20,132,510,25,10
|
||||
PUSHBUTTON "Set",IDC_GSTACK__SET21,106,520,25,10
|
||||
PUSHBUTTON "Clear",IDC_GSTACK__RESET21,132,520,25,10
|
||||
PUSHBUTTON "Set",IDC_GSTACK__SET22,106,530,25,10
|
||||
PUSHBUTTON "Clear",IDC_GSTACK__RESET22,132,530,25,10
|
||||
PUSHBUTTON "Set",IDC_GSTACK__SET23,106,540,25,10
|
||||
PUSHBUTTON "Clear",IDC_GSTACK__RESET23,132,540,25,10
|
||||
PUSHBUTTON "Set",IDC_GSTACK__SET24,106,550,25,10
|
||||
PUSHBUTTON "Clear",IDC_GSTACK__RESET24,132,550,25,10
|
||||
PUSHBUTTON "Set",IDC_GSTACK__SET25,106,560,25,10
|
||||
PUSHBUTTON "Clear",IDC_GSTACK__RESET25,132,560,25,10
|
||||
PUSHBUTTON "Set",IDC_GSTACK__SET26,106,570,25,10
|
||||
PUSHBUTTON "Clear",IDC_GSTACK__RESET26,132,570,25,10
|
||||
PUSHBUTTON "Set",IDC_GSTACK__SET27,106,580,25,10
|
||||
PUSHBUTTON "Clear",IDC_GSTACK__RESET27,132,580,25,10
|
||||
PUSHBUTTON "Set",IDC_GSTACK__SET28,106,590,25,10
|
||||
PUSHBUTTON "Clear",IDC_GSTACK__RESET28,132,590,25,10
|
||||
PUSHBUTTON "Set",IDC_GSTACK__SET29,106,600,25,10
|
||||
PUSHBUTTON "Clear",IDC_GSTACK__RESET29,132,600,25,10
|
||||
PUSHBUTTON "Set",IDC_GSTACK__SET30,106,610,25,10
|
||||
PUSHBUTTON "Clear",IDC_GSTACK__RESET30,132,610,25,10
|
||||
PUSHBUTTON "Set",IDC_GSTACK__SET31,106,620,25,10
|
||||
PUSHBUTTON "Clear",IDC_GSTACK__RESET31,132,620,25,10
|
||||
PUSHBUTTON "Set",IDC_GSTACK__SET32,106,630,25,10
|
||||
PUSHBUTTON "Clear",IDC_GSTACK__RESET32,132,630,25,10
|
||||
LTEXT "1:",IDC_STATIC,2,1,10,8
|
||||
LTEXT "2:",IDC_STATIC,2,11,10,8
|
||||
LTEXT "3:",IDC_STATIC,2,21,10,8
|
||||
@ -760,6 +1184,38 @@ BEGIN
|
||||
LTEXT "30:",IDC_STATIC,2,291,10,8
|
||||
LTEXT "31:",IDC_STATIC,2,301,10,8
|
||||
LTEXT "32:",IDC_STATIC,2,311,10,8
|
||||
LTEXT "33:",IDC_STATIC,2,321,10,8
|
||||
LTEXT "34:",IDC_STATIC,2,331,10,8
|
||||
LTEXT "35:",IDC_STATIC,2,341,10,8
|
||||
LTEXT "36:",IDC_STATIC,2,351,10,8
|
||||
LTEXT "37:",IDC_STATIC,2,361,10,8
|
||||
LTEXT "38:",IDC_STATIC,2,371,10,8
|
||||
LTEXT "39:",IDC_STATIC,2,381,10,8
|
||||
LTEXT "40:",IDC_STATIC,2,391,10,8
|
||||
LTEXT "41:",IDC_STATIC,2,401,10,8
|
||||
LTEXT "42:",IDC_STATIC,2,411,10,8
|
||||
LTEXT "43:",IDC_STATIC,2,421,10,8
|
||||
LTEXT "44:",IDC_STATIC,2,431,10,8
|
||||
LTEXT "45:",IDC_STATIC,2,441,10,8
|
||||
LTEXT "46:",IDC_STATIC,2,451,10,8
|
||||
LTEXT "47:",IDC_STATIC,2,461,10,8
|
||||
LTEXT "48:",IDC_STATIC,2,471,10,8
|
||||
LTEXT "49:",IDC_STATIC,2,481,10,8
|
||||
LTEXT "50:",IDC_STATIC,2,491,10,8
|
||||
LTEXT "51:",IDC_STATIC,2,501,10,8
|
||||
LTEXT "52:",IDC_STATIC,2,511,10,8
|
||||
LTEXT "53:",IDC_STATIC,2,521,10,8
|
||||
LTEXT "54:",IDC_STATIC,2,531,10,8
|
||||
LTEXT "55:",IDC_STATIC,2,541,10,8
|
||||
LTEXT "56:",IDC_STATIC,2,551,10,8
|
||||
LTEXT "57:",IDC_STATIC,2,561,10,8
|
||||
LTEXT "58:",IDC_STATIC,2,571,10,8
|
||||
LTEXT "59:",IDC_STATIC,2,581,10,8
|
||||
LTEXT "60:",IDC_STATIC,2,591,10,8
|
||||
LTEXT "61:",IDC_STATIC,2,601,10,8
|
||||
LTEXT "62:",IDC_STATIC,2,611,10,8
|
||||
LTEXT "63:",IDC_STATIC,2,621,10,8
|
||||
LTEXT "64:",IDC_STATIC,2,631,10,8
|
||||
END
|
||||
|
||||
IDD_PAN DIALOGEX 0, 0, 300, 170
|
||||
@ -816,7 +1272,7 @@ END
|
||||
//
|
||||
|
||||
#ifdef APSTUDIO_INVOKED
|
||||
GUIDELINES DESIGNINFO
|
||||
GUIDELINES DESIGNINFO
|
||||
BEGIN
|
||||
IDD_GO4KVSTIDIALOG, DIALOG
|
||||
BEGIN
|
||||
@ -826,6 +1282,22 @@ BEGIN
|
||||
BOTTOMMARGIN, 334
|
||||
END
|
||||
|
||||
IDD_VCO, DIALOG
|
||||
BEGIN
|
||||
END
|
||||
|
||||
IDD_VCF, DIALOG
|
||||
BEGIN
|
||||
END
|
||||
|
||||
IDD_DST, DIALOG
|
||||
BEGIN
|
||||
END
|
||||
|
||||
IDD_FST, DIALOG
|
||||
BEGIN
|
||||
END
|
||||
|
||||
IDD_SET_DIALOG, DIALOG
|
||||
BEGIN
|
||||
LEFTMARGIN, 7
|
||||
@ -868,13 +1340,11 @@ END
|
||||
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// English (U.S.) resources
|
||||
// English (United States) resources
|
||||
|
||||
#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_ENU)
|
||||
#ifdef _WIN32
|
||||
LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US
|
||||
#pragma code_page(1252)
|
||||
#endif //_WIN32
|
||||
|
||||
#ifdef APSTUDIO_INVOKED
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
@ -901,7 +1371,7 @@ END
|
||||
|
||||
#endif // APSTUDIO_INVOKED
|
||||
|
||||
#endif // English (U.S.) resources
|
||||
#endif // English (United States) resources
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
|
||||
|
||||
@ -1,6 +1,8 @@
|
||||
Microsoft Visual Studio Solution File, Format Version 10.00
|
||||
# Visual Studio 2008
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "4klang", "Go4kVSTi.vcproj", "{107757EA-2FE1-4C5E-964F-DE7E482E253F}"
|
||||
Microsoft Visual Studio Solution File, Format Version 11.00
|
||||
# Visual Studio 2010
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "4klang", "Go4kVSTi.vcxproj", "{107757EA-2FE1-4C5E-964F-DE7E482E253F}"
|
||||
EndProject
|
||||
Project("{D3783134-2AE6-4F36-A599-989377222068}") = "4klang2", "Go4kVSTi2.vcxproj", "{FA790F08-0B8E-43D9-A4B4-519AB01B820C}"
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
@ -12,6 +14,10 @@ Global
|
||||
{107757EA-2FE1-4C5E-964F-DE7E482E253F}.Debug|Win32.Build.0 = Debug|Win32
|
||||
{107757EA-2FE1-4C5E-964F-DE7E482E253F}.Release|Win32.ActiveCfg = Release|Win32
|
||||
{107757EA-2FE1-4C5E-964F-DE7E482E253F}.Release|Win32.Build.0 = Release|Win32
|
||||
{FA790F08-0B8E-43D9-A4B4-519AB01B820C}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||
{FA790F08-0B8E-43D9-A4B4-519AB01B820C}.Debug|Win32.Build.0 = Debug|Win32
|
||||
{FA790F08-0B8E-43D9-A4B4-519AB01B820C}.Release|Win32.ActiveCfg = Release|Win32
|
||||
{FA790F08-0B8E-43D9-A4B4-519AB01B820C}.Release|Win32.Build.0 = Release|Win32
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
|
||||
197
4klang_source/Go4kVSTi/win/Go4kVSTi.vcxproj
Normal file
197
4klang_source/Go4kVSTi/win/Go4kVSTi.vcxproj
Normal file
@ -0,0 +1,197 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ItemGroup Label="ProjectConfigurations">
|
||||
<ProjectConfiguration Include="Debug|Win32">
|
||||
<Configuration>Debug</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Release|Win32">
|
||||
<Configuration>Release</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
</ItemGroup>
|
||||
<PropertyGroup Label="Globals">
|
||||
<ProjectName>4klang</ProjectName>
|
||||
<ProjectGuid>{107757EA-2FE1-4C5E-964F-DE7E482E253F}</ProjectGuid>
|
||||
<RootNamespace>Go4kVSTi</RootNamespace>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
|
||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||
<UseOfMfc>false</UseOfMfc>
|
||||
<WholeProgramOptimization>false</WholeProgramOptimization>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
|
||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||
<UseOfMfc>false</UseOfMfc>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
||||
<ImportGroup Label="ExtensionSettings">
|
||||
<Import Project="$(VCTargetsPath)\BuildCustomizations\vsyasm.props" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
<Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC70.props" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
<Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC70.props" />
|
||||
</ImportGroup>
|
||||
<PropertyGroup Label="UserMacros" />
|
||||
<PropertyGroup>
|
||||
<_ProjectFileVersion>10.0.40219.1</_ProjectFileVersion>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">.\$(ProjectName)\Debug\</OutDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">.\$(ProjectName)\Debug\</IntDir>
|
||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">.\$(ProjectName)\Release\</OutDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">.\$(ProjectName)\Release\</IntDir>
|
||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
|
||||
<GenerateManifest Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</GenerateManifest>
|
||||
<EmbedManifest Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</EmbedManifest>
|
||||
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
|
||||
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
|
||||
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
|
||||
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
|
||||
</PropertyGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||
<Midl>
|
||||
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<MkTypLibCompatible>true</MkTypLibCompatible>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<TargetEnvironment>Win32</TargetEnvironment>
|
||||
<TypeLibraryName>.\Debug/vstxsynth.tlb</TypeLibraryName>
|
||||
</Midl>
|
||||
<ClCompile>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<AdditionalIncludeDirectories>..\source\common;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;WINDOWS=1;_CRT_SECURE_NO_DEPRECATE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<ExceptionHandling>Sync</ExceptionHandling>
|
||||
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
|
||||
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
|
||||
<StructMemberAlignment>1Byte</StructMemberAlignment>
|
||||
<BufferSecurityCheck>true</BufferSecurityCheck>
|
||||
<FloatingPointModel>Fast</FloatingPointModel>
|
||||
<PrecompiledHeader>
|
||||
</PrecompiledHeader>
|
||||
<AssemblerOutput>
|
||||
</AssemblerOutput>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
<CompileAs>Default</CompileAs>
|
||||
</ClCompile>
|
||||
<ResourceCompile>
|
||||
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<Culture>0x0409</Culture>
|
||||
</ResourceCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>odbc32.lib;odbccp32.lib;comctl32.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<ModuleDefinitionFile>.\Go4kVSTi.def</ModuleDefinitionFile>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<RandomizedBaseAddress>false</RandomizedBaseAddress>
|
||||
<DataExecutionPrevention>
|
||||
</DataExecutionPrevention>
|
||||
</Link>
|
||||
<PostBuildEvent>
|
||||
<Command>copy /Y $(TargetPath) C:\VST</Command>
|
||||
</PostBuildEvent>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||
<Midl>
|
||||
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<MkTypLibCompatible>true</MkTypLibCompatible>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<TargetEnvironment>Win32</TargetEnvironment>
|
||||
<TypeLibraryName>.\Release/vstxsynth.tlb</TypeLibraryName>
|
||||
</Midl>
|
||||
<ClCompile>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<InlineFunctionExpansion>AnySuitable</InlineFunctionExpansion>
|
||||
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||
<FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
|
||||
<WholeProgramOptimization>false</WholeProgramOptimization>
|
||||
<AdditionalIncludeDirectories>..\source\common;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;WINDOWS=1;_CRT_SECURE_NO_DEPRECATE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<StringPooling>true</StringPooling>
|
||||
<ExceptionHandling>Sync</ExceptionHandling>
|
||||
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||
<StructMemberAlignment>1Byte</StructMemberAlignment>
|
||||
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||
<FunctionLevelLinking>false</FunctionLevelLinking>
|
||||
<EnableEnhancedInstructionSet>NotSet</EnableEnhancedInstructionSet>
|
||||
<FloatingPointModel>Fast</FloatingPointModel>
|
||||
<RuntimeTypeInfo>true</RuntimeTypeInfo>
|
||||
<PrecompiledHeader>
|
||||
</PrecompiledHeader>
|
||||
<AssemblerOutput>
|
||||
</AssemblerOutput>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<DebugInformationFormat>
|
||||
</DebugInformationFormat>
|
||||
<CallingConvention>Cdecl</CallingConvention>
|
||||
<CompileAs>Default</CompileAs>
|
||||
</ClCompile>
|
||||
<ResourceCompile>
|
||||
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<Culture>0x0409</Culture>
|
||||
</ResourceCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>odbc32.lib;odbccp32.lib;comctl32.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<ModuleDefinitionFile>.\Go4kVSTi.def</ModuleDefinitionFile>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<RandomizedBaseAddress>false</RandomizedBaseAddress>
|
||||
<DataExecutionPrevention>
|
||||
</DataExecutionPrevention>
|
||||
</Link>
|
||||
<PostBuildEvent>
|
||||
<Command>copy /Y $(TargetPath) C:\VST</Command>
|
||||
</PostBuildEvent>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="..\source\common\AudioEffect.cpp" />
|
||||
<ClCompile Include="..\source\common\audioeffectx.cpp" />
|
||||
<ClCompile Include="..\source\GoSynth\Go4kVSTi.cpp" />
|
||||
<ClCompile Include="..\source\GoSynth\Go4kVSTiCore.cpp">
|
||||
<CallingConvention Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Cdecl</CallingConvention>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\source\GoSynth\Go4kVSTiGUI.cpp">
|
||||
<CallingConvention Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Cdecl</CallingConvention>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\source\GoSynth\Go4kVSTimain.cpp" />
|
||||
<ClCompile Include="..\source\GoSynth\Go4kVSTiproc.cpp" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ResourceCompile Include="Go4kVSTi.rc" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClInclude Include="..\source\common\AEffect.h" />
|
||||
<ClInclude Include="..\source\common\aeffectx.h" />
|
||||
<ClInclude Include="..\source\common\AEffEditor.hpp" />
|
||||
<ClInclude Include="..\source\common\AudioEffect.hpp" />
|
||||
<ClInclude Include="..\source\common\audioeffectx.h" />
|
||||
<ClInclude Include="..\source\GoSynth\Go4kVSTi.h" />
|
||||
<ClInclude Include="..\source\GoSynth\Go4kVSTiCore.h" />
|
||||
<ClInclude Include="..\source\GoSynth\Go4kVSTiGUI.h" />
|
||||
<ClInclude Include="resource.h" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="4klang.bin" />
|
||||
<None Include="4klang.inc" />
|
||||
<None Include="nasmw.bin" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<YASM Include="4klang.asm">
|
||||
<Debug Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</Debug>
|
||||
</YASM>
|
||||
</ItemGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
||||
<ImportGroup Label="ExtensionTargets">
|
||||
<Import Project="$(VCTargetsPath)\BuildCustomizations\vsyasm.targets" />
|
||||
</ImportGroup>
|
||||
</Project>
|
||||
78
4klang_source/Go4kVSTi/win/Go4kVSTi.vcxproj.filters
Normal file
78
4klang_source/Go4kVSTi/win/Go4kVSTi.vcxproj.filters
Normal file
@ -0,0 +1,78 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ItemGroup>
|
||||
<Filter Include="Source Files">
|
||||
<UniqueIdentifier>{1cf4fa67-2860-48e5-9e8b-29b87a918b97}</UniqueIdentifier>
|
||||
<Extensions>cpp;c;cxx;rc;def;r;odl;idl;hpj;bat</Extensions>
|
||||
</Filter>
|
||||
<Filter Include="Header Files">
|
||||
<UniqueIdentifier>{8c759cfb-040e-43f2-a0c5-3f00eb100142}</UniqueIdentifier>
|
||||
<Extensions>h;hpp;hxx;hm;inl</Extensions>
|
||||
</Filter>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="..\source\common\AudioEffect.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\source\common\audioeffectx.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\source\GoSynth\Go4kVSTi.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\source\GoSynth\Go4kVSTiCore.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\source\GoSynth\Go4kVSTiGUI.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\source\GoSynth\Go4kVSTimain.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\source\GoSynth\Go4kVSTiproc.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ResourceCompile Include="Go4kVSTi.rc">
|
||||
<Filter>Source Files</Filter>
|
||||
</ResourceCompile>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClInclude Include="..\source\common\AEffect.h">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\source\common\aeffectx.h">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\source\common\AEffEditor.hpp">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\source\common\AudioEffect.hpp">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\source\common\audioeffectx.h">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\source\GoSynth\Go4kVSTi.h">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\source\GoSynth\Go4kVSTiCore.h">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\source\GoSynth\Go4kVSTiGUI.h">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="resource.h">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="4klang.bin" />
|
||||
<None Include="4klang.inc" />
|
||||
<None Include="nasmw.bin" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<YASM Include="4klang.asm" />
|
||||
</ItemGroup>
|
||||
</Project>
|
||||
2
4klang_source/Go4kVSTi/win/Go4kVSTi2.def
Normal file
2
4klang_source/Go4kVSTi/win/Go4kVSTi2.def
Normal file
@ -0,0 +1,2 @@
|
||||
LIBRARY 8klang
|
||||
EXPORTS main
|
||||
1388
4klang_source/Go4kVSTi/win/Go4kVSTi2.rc
Normal file
1388
4klang_source/Go4kVSTi/win/Go4kVSTi2.rc
Normal file
File diff suppressed because it is too large
Load Diff
197
4klang_source/Go4kVSTi/win/Go4kVSTi2.vcxproj
Normal file
197
4klang_source/Go4kVSTi/win/Go4kVSTi2.vcxproj
Normal file
@ -0,0 +1,197 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ItemGroup Label="ProjectConfigurations">
|
||||
<ProjectConfiguration Include="Debug|Win32">
|
||||
<Configuration>Debug</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Release|Win32">
|
||||
<Configuration>Release</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
</ItemGroup>
|
||||
<PropertyGroup Label="Globals">
|
||||
<ProjectName>8klang</ProjectName>
|
||||
<ProjectGuid>{FA790F08-0B8E-43D9-A4B4-519AB01B820C}</ProjectGuid>
|
||||
<RootNamespace>Go4kVSTi2</RootNamespace>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
|
||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||
<UseOfMfc>false</UseOfMfc>
|
||||
<WholeProgramOptimization>false</WholeProgramOptimization>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
|
||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||
<UseOfMfc>false</UseOfMfc>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
||||
<ImportGroup Label="ExtensionSettings">
|
||||
<Import Project="$(VCTargetsPath)\BuildCustomizations\vsyasm.props" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
<Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC70.props" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
<Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC70.props" />
|
||||
</ImportGroup>
|
||||
<PropertyGroup Label="UserMacros" />
|
||||
<PropertyGroup>
|
||||
<_ProjectFileVersion>10.0.40219.1</_ProjectFileVersion>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">.\$(ProjectName)\Debug\</OutDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">.\$(ProjectName)\Debug\</IntDir>
|
||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">.\$(ProjectName)\Release\</OutDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">.\$(ProjectName)\Release\</IntDir>
|
||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
|
||||
<GenerateManifest Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</GenerateManifest>
|
||||
<EmbedManifest Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</EmbedManifest>
|
||||
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
|
||||
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
|
||||
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
|
||||
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
|
||||
</PropertyGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||
<Midl>
|
||||
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<MkTypLibCompatible>true</MkTypLibCompatible>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<TargetEnvironment>Win32</TargetEnvironment>
|
||||
<TypeLibraryName>.\Debug/vstxsynth.tlb</TypeLibraryName>
|
||||
</Midl>
|
||||
<ClCompile>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<AdditionalIncludeDirectories>..\source\common;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>_8KLANG;WIN32;_DEBUG;_WINDOWS;WINDOWS=1;_CRT_SECURE_NO_DEPRECATE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<ExceptionHandling>Sync</ExceptionHandling>
|
||||
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
|
||||
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
|
||||
<StructMemberAlignment>1Byte</StructMemberAlignment>
|
||||
<BufferSecurityCheck>true</BufferSecurityCheck>
|
||||
<FloatingPointModel>Fast</FloatingPointModel>
|
||||
<PrecompiledHeader>
|
||||
</PrecompiledHeader>
|
||||
<AssemblerOutput>
|
||||
</AssemblerOutput>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
<CompileAs>Default</CompileAs>
|
||||
</ClCompile>
|
||||
<ResourceCompile>
|
||||
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<Culture>0x0409</Culture>
|
||||
</ResourceCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>odbc32.lib;odbccp32.lib;comctl32.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<ModuleDefinitionFile>.\Go4kVSTi2.def</ModuleDefinitionFile>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<RandomizedBaseAddress>false</RandomizedBaseAddress>
|
||||
<DataExecutionPrevention>
|
||||
</DataExecutionPrevention>
|
||||
</Link>
|
||||
<PostBuildEvent>
|
||||
<Command>copy /Y $(TargetPath) C:\VST</Command>
|
||||
</PostBuildEvent>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||
<Midl>
|
||||
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<MkTypLibCompatible>true</MkTypLibCompatible>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<TargetEnvironment>Win32</TargetEnvironment>
|
||||
<TypeLibraryName>.\Release/vstxsynth.tlb</TypeLibraryName>
|
||||
</Midl>
|
||||
<ClCompile>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<InlineFunctionExpansion>AnySuitable</InlineFunctionExpansion>
|
||||
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||
<FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
|
||||
<WholeProgramOptimization>false</WholeProgramOptimization>
|
||||
<AdditionalIncludeDirectories>..\source\common;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>_8KLANG;WIN32;NDEBUG;_WINDOWS;WINDOWS=1;_CRT_SECURE_NO_DEPRECATE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<StringPooling>true</StringPooling>
|
||||
<ExceptionHandling>Sync</ExceptionHandling>
|
||||
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||
<StructMemberAlignment>1Byte</StructMemberAlignment>
|
||||
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||
<FunctionLevelLinking>false</FunctionLevelLinking>
|
||||
<EnableEnhancedInstructionSet>NotSet</EnableEnhancedInstructionSet>
|
||||
<FloatingPointModel>Fast</FloatingPointModel>
|
||||
<RuntimeTypeInfo>true</RuntimeTypeInfo>
|
||||
<PrecompiledHeader>
|
||||
</PrecompiledHeader>
|
||||
<AssemblerOutput>
|
||||
</AssemblerOutput>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<DebugInformationFormat>
|
||||
</DebugInformationFormat>
|
||||
<CallingConvention>Cdecl</CallingConvention>
|
||||
<CompileAs>Default</CompileAs>
|
||||
</ClCompile>
|
||||
<ResourceCompile>
|
||||
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<Culture>0x0409</Culture>
|
||||
</ResourceCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>odbc32.lib;odbccp32.lib;comctl32.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<ModuleDefinitionFile>.\Go4kVSTi2.def</ModuleDefinitionFile>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<RandomizedBaseAddress>false</RandomizedBaseAddress>
|
||||
<DataExecutionPrevention>
|
||||
</DataExecutionPrevention>
|
||||
</Link>
|
||||
<PostBuildEvent>
|
||||
<Command>copy /Y $(TargetPath) C:\VST</Command>
|
||||
</PostBuildEvent>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="..\source\common\AudioEffect.cpp" />
|
||||
<ClCompile Include="..\source\common\audioeffectx.cpp" />
|
||||
<ClCompile Include="..\source\GoSynth\Go4kVSTi.cpp" />
|
||||
<ClCompile Include="..\source\GoSynth\Go4kVSTiCore.cpp">
|
||||
<CallingConvention Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Cdecl</CallingConvention>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\source\GoSynth\Go4kVSTiGUI.cpp">
|
||||
<CallingConvention Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Cdecl</CallingConvention>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\source\GoSynth\Go4kVSTimain.cpp" />
|
||||
<ClCompile Include="..\source\GoSynth\Go4kVSTiproc.cpp" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClInclude Include="..\source\common\AEffect.h" />
|
||||
<ClInclude Include="..\source\common\aeffectx.h" />
|
||||
<ClInclude Include="..\source\common\AEffEditor.hpp" />
|
||||
<ClInclude Include="..\source\common\AudioEffect.hpp" />
|
||||
<ClInclude Include="..\source\common\audioeffectx.h" />
|
||||
<ClInclude Include="..\source\GoSynth\Go4kVSTi.h" />
|
||||
<ClInclude Include="..\source\GoSynth\Go4kVSTiCore.h" />
|
||||
<ClInclude Include="..\source\GoSynth\Go4kVSTiGUI.h" />
|
||||
<ClInclude Include="resource.h" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="4klang.bin" />
|
||||
<None Include="4klang.inc" />
|
||||
<None Include="nasmw.bin" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<YASM Include="4klang.asm">
|
||||
<Debug Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</Debug>
|
||||
</YASM>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ResourceCompile Include="Go4kVSTi2.rc" />
|
||||
</ItemGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
||||
<ImportGroup Label="ExtensionTargets">
|
||||
<Import Project="$(VCTargetsPath)\BuildCustomizations\vsyasm.targets" />
|
||||
</ImportGroup>
|
||||
</Project>
|
||||
78
4klang_source/Go4kVSTi/win/Go4kVSTi2.vcxproj.filters
Normal file
78
4klang_source/Go4kVSTi/win/Go4kVSTi2.vcxproj.filters
Normal file
@ -0,0 +1,78 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ItemGroup>
|
||||
<Filter Include="Source Files">
|
||||
<UniqueIdentifier>{1cf4fa67-2860-48e5-9e8b-29b87a918b97}</UniqueIdentifier>
|
||||
<Extensions>cpp;c;cxx;rc;def;r;odl;idl;hpj;bat</Extensions>
|
||||
</Filter>
|
||||
<Filter Include="Header Files">
|
||||
<UniqueIdentifier>{8c759cfb-040e-43f2-a0c5-3f00eb100142}</UniqueIdentifier>
|
||||
<Extensions>h;hpp;hxx;hm;inl</Extensions>
|
||||
</Filter>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="..\source\common\AudioEffect.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\source\common\audioeffectx.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\source\GoSynth\Go4kVSTi.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\source\GoSynth\Go4kVSTiCore.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\source\GoSynth\Go4kVSTiGUI.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\source\GoSynth\Go4kVSTimain.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\source\GoSynth\Go4kVSTiproc.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClInclude Include="..\source\common\AEffect.h">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\source\common\aeffectx.h">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\source\common\AEffEditor.hpp">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\source\common\AudioEffect.hpp">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\source\common\audioeffectx.h">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\source\GoSynth\Go4kVSTi.h">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\source\GoSynth\Go4kVSTiCore.h">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\source\GoSynth\Go4kVSTiGUI.h">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="resource.h">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="4klang.bin" />
|
||||
<None Include="4klang.inc" />
|
||||
<None Include="nasmw.bin" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<YASM Include="4klang.asm" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ResourceCompile Include="Go4kVSTi2.rc">
|
||||
<Filter>Source Files</Filter>
|
||||
</ResourceCompile>
|
||||
</ItemGroup>
|
||||
</Project>
|
||||
@ -64,6 +64,7 @@
|
||||
#define IDC_ISTACK_VALID 1040
|
||||
#define IDC_GSTACK_VALID 1041
|
||||
#define IDC_PATTERN_QUANT 1042
|
||||
#define IDC_INSTRUMENTLINK 1043
|
||||
#define IDC_UNIT_RESET 1050
|
||||
#define IDC_UNIT_COPY 1051
|
||||
#define IDC_UNIT_PASTE 1052
|
||||
@ -89,6 +90,7 @@
|
||||
#define IDC_VCO_PULSE 1152
|
||||
#define IDC_VCO_NOISE 1153
|
||||
#define IDC_VCO_GATE 1154
|
||||
#define IDC_VCO_STEREO 1155
|
||||
#define IDC_VCO_TRANSPOSE 1160
|
||||
#define IDC_VCO_TRANSPOSE_VAL 1161
|
||||
#define IDC_VCO_TRANSPOSE_QUANT 1162
|
||||
@ -137,6 +139,7 @@
|
||||
#define IDC_VCF_RESONANCE 1210
|
||||
#define IDC_VCF_RESONANCE_VAL 1211
|
||||
#define IDC_VCF_RESONANCE_QUANT 1212
|
||||
#define IDC_VCF_STEREO 1213
|
||||
#define IDC_DST_DRIVE 1250
|
||||
#define IDC_DST_DRIVE_VAL 1251
|
||||
#define IDC_DST_DRIVE_QUANT 1252
|
||||
@ -177,12 +180,17 @@
|
||||
#define IDC_FOP_MUL 1357
|
||||
#define IDC_FOP_ADDP2 1358
|
||||
#define IDC_FOP_LOADNOTE 1359
|
||||
#define IDC_FOP_MULP2 1360
|
||||
#define IDC_FST_AMOUNT 1400
|
||||
#define IDC_FST_AMOUNT_VAL 1401
|
||||
#define IDC_FST_AMOUNT_QUANT 1402
|
||||
#define IDC_FST_DESTINATION_INSTRUMENT 1403
|
||||
#define IDC_FST_DESTINATION_UNIT 1404
|
||||
#define IDC_FST_DESTINATION_SLOT 1405
|
||||
#define IDC_FST_SET 1410
|
||||
#define IDC_FST_ADD 1411
|
||||
#define IDC_FST_MUL 1412
|
||||
#define IDC_FST_POP 1413
|
||||
#define IDC_PAN_PANNING 1450
|
||||
#define IDC_PAN_PANNING_VAL 1451
|
||||
#define IDC_PAN_PANNING_QUANT 1452
|
||||
@ -195,8 +203,8 @@
|
||||
#define IDC_ACC_OUT 1550
|
||||
#define IDC_ACC_AUX 1551
|
||||
#define IDC_FLD_VALUE 1552
|
||||
#define IDC_FLD_VALUE_VAL 1553
|
||||
#define IDC_FLD_VALUE_QUANT 1554
|
||||
#define IDC_FLD_VALUE_VAL 1553
|
||||
#define IDC_FLD_VALUE_QUANT 1554
|
||||
#define IDC_ISTACK_UNIT1 1600
|
||||
#define IDC_ISTACK_UP1 1601
|
||||
#define IDC_ISTACK_DOWN1 1602
|
||||
@ -389,6 +397,198 @@
|
||||
#define IDC_ISTACK_SIGNALCOUNT32 1789
|
||||
#define IDC_ISTACK_SET32 1790
|
||||
#define IDC_ISTACK_RESET32 1791
|
||||
#define IDC_ISTACK__UNIT1 1792
|
||||
#define IDC_ISTACK__UP1 1793
|
||||
#define IDC_ISTACK__DOWN1 1794
|
||||
#define IDC_ISTACK__SIGNALCOUNT1 1795
|
||||
#define IDC_ISTACK__SET1 1796
|
||||
#define IDC_ISTACK__RESET1 1797
|
||||
#define IDC_ISTACK__UNIT2 1798
|
||||
#define IDC_ISTACK__UP2 1799
|
||||
#define IDC_ISTACK__DOWN2 1800
|
||||
#define IDC_ISTACK__SIGNALCOUNT2 1801
|
||||
#define IDC_ISTACK__SET2 1802
|
||||
#define IDC_ISTACK__RESET2 1803
|
||||
#define IDC_ISTACK__UNIT3 1804
|
||||
#define IDC_ISTACK__UP3 1805
|
||||
#define IDC_ISTACK__DOWN3 1806
|
||||
#define IDC_ISTACK__SIGNALCOUNT3 1807
|
||||
#define IDC_ISTACK__SET3 1808
|
||||
#define IDC_ISTACK__RESET3 1809
|
||||
#define IDC_ISTACK__UNIT4 1810
|
||||
#define IDC_ISTACK__UP4 1811
|
||||
#define IDC_ISTACK__DOWN4 1812
|
||||
#define IDC_ISTACK__SIGNALCOUNT4 1813
|
||||
#define IDC_ISTACK__SET4 1814
|
||||
#define IDC_ISTACK__RESET4 1815
|
||||
#define IDC_ISTACK__UNIT5 1816
|
||||
#define IDC_ISTACK__UP5 1817
|
||||
#define IDC_ISTACK__DOWN5 1818
|
||||
#define IDC_ISTACK__SIGNALCOUNT5 1819
|
||||
#define IDC_ISTACK__SET5 1820
|
||||
#define IDC_ISTACK__RESET5 1821
|
||||
#define IDC_ISTACK__UNIT6 1822
|
||||
#define IDC_ISTACK__UP6 1823
|
||||
#define IDC_ISTACK__DOWN6 1824
|
||||
#define IDC_ISTACK__SIGNALCOUNT6 1825
|
||||
#define IDC_ISTACK__SET6 1826
|
||||
#define IDC_ISTACK__RESET6 1827
|
||||
#define IDC_ISTACK__UNIT7 1828
|
||||
#define IDC_ISTACK__UP7 1829
|
||||
#define IDC_ISTACK__DOWN7 1830
|
||||
#define IDC_ISTACK__SIGNALCOUNT7 1831
|
||||
#define IDC_ISTACK__SET7 1832
|
||||
#define IDC_ISTACK__RESET7 1833
|
||||
#define IDC_ISTACK__UNIT8 1834
|
||||
#define IDC_ISTACK__UP8 1835
|
||||
#define IDC_ISTACK__DOWN8 1836
|
||||
#define IDC_ISTACK__SIGNALCOUNT8 1837
|
||||
#define IDC_ISTACK__SET8 1838
|
||||
#define IDC_ISTACK__RESET8 1839
|
||||
#define IDC_ISTACK__UNIT9 1840
|
||||
#define IDC_ISTACK__UP9 1841
|
||||
#define IDC_ISTACK__DOWN9 1842
|
||||
#define IDC_ISTACK__SIGNALCOUNT9 1843
|
||||
#define IDC_ISTACK__SET9 1844
|
||||
#define IDC_ISTACK__RESET9 1845
|
||||
#define IDC_ISTACK__UNIT10 1846
|
||||
#define IDC_ISTACK__UP10 1847
|
||||
#define IDC_ISTACK__DOWN10 1848
|
||||
#define IDC_ISTACK__SIGNALCOUNT10 1849
|
||||
#define IDC_ISTACK__SET10 1850
|
||||
#define IDC_ISTACK__RESET10 1851
|
||||
#define IDC_ISTACK__UNIT11 1852
|
||||
#define IDC_ISTACK__UP11 1853
|
||||
#define IDC_ISTACK__DOWN11 1854
|
||||
#define IDC_ISTACK__SIGNALCOUNT11 1855
|
||||
#define IDC_ISTACK__SET11 1856
|
||||
#define IDC_ISTACK__RESET11 1857
|
||||
#define IDC_ISTACK__UNIT12 1858
|
||||
#define IDC_ISTACK__UP12 1859
|
||||
#define IDC_ISTACK__DOWN12 1860
|
||||
#define IDC_ISTACK__SIGNALCOUNT12 1861
|
||||
#define IDC_ISTACK__SET12 1862
|
||||
#define IDC_ISTACK__RESET12 1863
|
||||
#define IDC_ISTACK__UNIT13 1864
|
||||
#define IDC_ISTACK__UP13 1865
|
||||
#define IDC_ISTACK__DOWN13 1866
|
||||
#define IDC_ISTACK__SIGNALCOUNT13 1867
|
||||
#define IDC_ISTACK__SET13 1868
|
||||
#define IDC_ISTACK__RESET13 1869
|
||||
#define IDC_ISTACK__UNIT14 1870
|
||||
#define IDC_ISTACK__UP14 1871
|
||||
#define IDC_ISTACK__DOWN14 1872
|
||||
#define IDC_ISTACK__SIGNALCOUNT14 1873
|
||||
#define IDC_ISTACK__SET14 1874
|
||||
#define IDC_ISTACK__RESET14 1875
|
||||
#define IDC_ISTACK__UNIT15 1876
|
||||
#define IDC_ISTACK__UP15 1877
|
||||
#define IDC_ISTACK__DOWN15 1878
|
||||
#define IDC_ISTACK__SIGNALCOUNT15 1879
|
||||
#define IDC_ISTACK__SET15 1880
|
||||
#define IDC_ISTACK__RESET15 1881
|
||||
#define IDC_ISTACK__UNIT16 1882
|
||||
#define IDC_ISTACK__UP16 1883
|
||||
#define IDC_ISTACK__DOWN16 1884
|
||||
#define IDC_ISTACK__SIGNALCOUNT16 1885
|
||||
#define IDC_ISTACK__SET16 1886
|
||||
#define IDC_ISTACK__RESET16 1887
|
||||
#define IDC_ISTACK__UNIT17 1888
|
||||
#define IDC_ISTACK__UP17 1889
|
||||
#define IDC_ISTACK__DOWN17 1890
|
||||
#define IDC_ISTACK__SIGNALCOUNT17 1891
|
||||
#define IDC_ISTACK__SET17 1892
|
||||
#define IDC_ISTACK__RESET17 1893
|
||||
#define IDC_ISTACK__UNIT18 1894
|
||||
#define IDC_ISTACK__UP18 1895
|
||||
#define IDC_ISTACK__DOWN18 1896
|
||||
#define IDC_ISTACK__SIGNALCOUNT18 1897
|
||||
#define IDC_ISTACK__SET18 1898
|
||||
#define IDC_ISTACK__RESET18 1899
|
||||
#define IDC_ISTACK__UNIT19 1900
|
||||
#define IDC_ISTACK__UP19 1901
|
||||
#define IDC_ISTACK__DOWN19 1902
|
||||
#define IDC_ISTACK__SIGNALCOUNT19 1903
|
||||
#define IDC_ISTACK__SET19 1904
|
||||
#define IDC_ISTACK__RESET19 1905
|
||||
#define IDC_ISTACK__UNIT20 1906
|
||||
#define IDC_ISTACK__UP20 1907
|
||||
#define IDC_ISTACK__DOWN20 1908
|
||||
#define IDC_ISTACK__SIGNALCOUNT20 1909
|
||||
#define IDC_ISTACK__SET20 1910
|
||||
#define IDC_ISTACK__RESET20 1911
|
||||
#define IDC_ISTACK__UNIT21 1912
|
||||
#define IDC_ISTACK__UP21 1913
|
||||
#define IDC_ISTACK__DOWN21 1914
|
||||
#define IDC_ISTACK__SIGNALCOUNT21 1915
|
||||
#define IDC_ISTACK__SET21 1916
|
||||
#define IDC_ISTACK__RESET21 1917
|
||||
#define IDC_ISTACK__UNIT22 1918
|
||||
#define IDC_ISTACK__UP22 1919
|
||||
#define IDC_ISTACK__DOWN22 1920
|
||||
#define IDC_ISTACK__SIGNALCOUNT22 1921
|
||||
#define IDC_ISTACK__SET22 1922
|
||||
#define IDC_ISTACK__RESET22 1923
|
||||
#define IDC_ISTACK__UNIT23 1924
|
||||
#define IDC_ISTACK__UP23 1925
|
||||
#define IDC_ISTACK__DOWN23 1926
|
||||
#define IDC_ISTACK__SIGNALCOUNT23 1927
|
||||
#define IDC_ISTACK__SET23 1928
|
||||
#define IDC_ISTACK__RESET23 1929
|
||||
#define IDC_ISTACK__UNIT24 1930
|
||||
#define IDC_ISTACK__UP24 1931
|
||||
#define IDC_ISTACK__DOWN24 1932
|
||||
#define IDC_ISTACK__SIGNALCOUNT24 1933
|
||||
#define IDC_ISTACK__SET24 1934
|
||||
#define IDC_ISTACK__RESET24 1935
|
||||
#define IDC_ISTACK__UNIT25 1936
|
||||
#define IDC_ISTACK__UP25 1937
|
||||
#define IDC_ISTACK__DOWN25 1938
|
||||
#define IDC_ISTACK__SIGNALCOUNT25 1939
|
||||
#define IDC_ISTACK__SET25 1940
|
||||
#define IDC_ISTACK__RESET25 1941
|
||||
#define IDC_ISTACK__UNIT26 1942
|
||||
#define IDC_ISTACK__UP26 1943
|
||||
#define IDC_ISTACK__DOWN26 1944
|
||||
#define IDC_ISTACK__SIGNALCOUNT26 1945
|
||||
#define IDC_ISTACK__SET26 1946
|
||||
#define IDC_ISTACK__RESET26 1947
|
||||
#define IDC_ISTACK__UNIT27 1948
|
||||
#define IDC_ISTACK__UP27 1949
|
||||
#define IDC_ISTACK__DOWN27 1950
|
||||
#define IDC_ISTACK__SIGNALCOUNT27 1951
|
||||
#define IDC_ISTACK__SET27 1952
|
||||
#define IDC_ISTACK__RESET27 1953
|
||||
#define IDC_ISTACK__UNIT28 1954
|
||||
#define IDC_ISTACK__UP28 1955
|
||||
#define IDC_ISTACK__DOWN28 1956
|
||||
#define IDC_ISTACK__SIGNALCOUNT28 1957
|
||||
#define IDC_ISTACK__SET28 1958
|
||||
#define IDC_ISTACK__RESET28 1959
|
||||
#define IDC_ISTACK__UNIT29 1960
|
||||
#define IDC_ISTACK__UP29 1961
|
||||
#define IDC_ISTACK__DOWN29 1962
|
||||
#define IDC_ISTACK__SIGNALCOUNT29 1963
|
||||
#define IDC_ISTACK__SET29 1964
|
||||
#define IDC_ISTACK__RESET29 1965
|
||||
#define IDC_ISTACK__UNIT30 1966
|
||||
#define IDC_ISTACK__UP30 1967
|
||||
#define IDC_ISTACK__DOWN30 1968
|
||||
#define IDC_ISTACK__SIGNALCOUNT30 1969
|
||||
#define IDC_ISTACK__SET30 1970
|
||||
#define IDC_ISTACK__RESET30 1971
|
||||
#define IDC_ISTACK__UNIT31 1972
|
||||
#define IDC_ISTACK__UP31 1973
|
||||
#define IDC_ISTACK__DOWN31 1974
|
||||
#define IDC_ISTACK__SIGNALCOUNT31 1975
|
||||
#define IDC_ISTACK__SET31 1976
|
||||
#define IDC_ISTACK__RESET31 1977
|
||||
#define IDC_ISTACK__UNIT32 1978
|
||||
#define IDC_ISTACK__UP32 1979
|
||||
#define IDC_ISTACK__DOWN32 1980
|
||||
#define IDC_ISTACK__SIGNALCOUNT32 1981
|
||||
#define IDC_ISTACK__SET32 1982
|
||||
#define IDC_ISTACK__RESET32 1983
|
||||
#define IDC_GSTACK_UNIT1 3600
|
||||
#define IDC_GSTACK_UP1 3601
|
||||
#define IDC_GSTACK_DOWN1 3602
|
||||
@ -581,6 +781,199 @@
|
||||
#define IDC_GSTACK_SIGNALCOUNT32 3789
|
||||
#define IDC_GSTACK_SET32 3790
|
||||
#define IDC_GSTACK_RESET32 3791
|
||||
#define IDC_GSTACK__UNIT1 3792
|
||||
#define IDC_GSTACK__UP1 3793
|
||||
#define IDC_GSTACK__DOWN1 3794
|
||||
#define IDC_GSTACK__SIGNALCOUNT1 3795
|
||||
#define IDC_GSTACK__SET1 3796
|
||||
#define IDC_GSTACK__RESET1 3797
|
||||
#define IDC_GSTACK__UNIT2 3798
|
||||
#define IDC_GSTACK__UP2 3799
|
||||
#define IDC_GSTACK__DOWN2 3800
|
||||
#define IDC_GSTACK__SIGNALCOUNT2 3801
|
||||
#define IDC_GSTACK__SET2 3802
|
||||
#define IDC_GSTACK__RESET2 3803
|
||||
#define IDC_GSTACK__UNIT3 3804
|
||||
#define IDC_GSTACK__UP3 3805
|
||||
#define IDC_GSTACK__DOWN3 3806
|
||||
#define IDC_GSTACK__SIGNALCOUNT3 3807
|
||||
#define IDC_GSTACK__SET3 3808
|
||||
#define IDC_GSTACK__RESET3 3809
|
||||
#define IDC_GSTACK__UNIT4 3810
|
||||
#define IDC_GSTACK__UP4 3811
|
||||
#define IDC_GSTACK__DOWN4 3812
|
||||
#define IDC_GSTACK__SIGNALCOUNT4 3813
|
||||
#define IDC_GSTACK__SET4 3814
|
||||
#define IDC_GSTACK__RESET4 3815
|
||||
#define IDC_GSTACK__UNIT5 3816
|
||||
#define IDC_GSTACK__UP5 3817
|
||||
#define IDC_GSTACK__DOWN5 3818
|
||||
#define IDC_GSTACK__SIGNALCOUNT5 3819
|
||||
#define IDC_GSTACK__SET5 3820
|
||||
#define IDC_GSTACK__RESET5 3821
|
||||
#define IDC_GSTACK__UNIT6 3822
|
||||
#define IDC_GSTACK__UP6 3823
|
||||
#define IDC_GSTACK__DOWN6 3824
|
||||
#define IDC_GSTACK__SIGNALCOUNT6 3825
|
||||
#define IDC_GSTACK__SET6 3826
|
||||
#define IDC_GSTACK__RESET6 3827
|
||||
#define IDC_GSTACK__UNIT7 3828
|
||||
#define IDC_GSTACK__UP7 3829
|
||||
#define IDC_GSTACK__DOWN7 3830
|
||||
#define IDC_GSTACK__SIGNALCOUNT7 3831
|
||||
#define IDC_GSTACK__SET7 3832
|
||||
#define IDC_GSTACK__RESET7 3833
|
||||
#define IDC_GSTACK__UNIT8 3834
|
||||
#define IDC_GSTACK__UP8 3835
|
||||
#define IDC_GSTACK__DOWN8 3836
|
||||
#define IDC_GSTACK__SIGNALCOUNT8 3837
|
||||
#define IDC_GSTACK__SET8 3838
|
||||
#define IDC_GSTACK__RESET8 3839
|
||||
#define IDC_GSTACK__UNIT9 3840
|
||||
#define IDC_GSTACK__UP9 3841
|
||||
#define IDC_GSTACK__DOWN9 3842
|
||||
#define IDC_GSTACK__SIGNALCOUNT9 3843
|
||||
#define IDC_GSTACK__SET9 3844
|
||||
#define IDC_GSTACK__RESET9 3845
|
||||
#define IDC_GSTACK__UNIT10 3846
|
||||
#define IDC_GSTACK__UP10 3847
|
||||
#define IDC_GSTACK__DOWN10 3848
|
||||
#define IDC_GSTACK__SIGNALCOUNT10 3849
|
||||
#define IDC_GSTACK__SET10 3850
|
||||
#define IDC_GSTACK__RESET10 3851
|
||||
#define IDC_GSTACK__UNIT11 3852
|
||||
#define IDC_GSTACK__UP11 3853
|
||||
#define IDC_GSTACK__DOWN11 3854
|
||||
#define IDC_GSTACK__SIGNALCOUNT11 3855
|
||||
#define IDC_GSTACK__SET11 3856
|
||||
#define IDC_GSTACK__RESET11 3857
|
||||
#define IDC_GSTACK__UNIT12 3858
|
||||
#define IDC_GSTACK__UP12 3859
|
||||
#define IDC_GSTACK__DOWN12 3860
|
||||
#define IDC_GSTACK__SIGNALCOUNT12 3861
|
||||
#define IDC_GSTACK__SET12 3862
|
||||
#define IDC_GSTACK__RESET12 3863
|
||||
#define IDC_GSTACK__UNIT13 3864
|
||||
#define IDC_GSTACK__UP13 3865
|
||||
#define IDC_GSTACK__DOWN13 3866
|
||||
#define IDC_GSTACK__SIGNALCOUNT13 3867
|
||||
#define IDC_GSTACK__SET13 3868
|
||||
#define IDC_GSTACK__RESET13 3869
|
||||
#define IDC_GSTACK__UNIT14 3870
|
||||
#define IDC_GSTACK__UP14 3871
|
||||
#define IDC_GSTACK__DOWN14 3872
|
||||
#define IDC_GSTACK__SIGNALCOUNT14 3873
|
||||
#define IDC_GSTACK__SET14 3874
|
||||
#define IDC_GSTACK__RESET14 3875
|
||||
#define IDC_GSTACK__UNIT15 3876
|
||||
#define IDC_GSTACK__UP15 3877
|
||||
#define IDC_GSTACK__DOWN15 3878
|
||||
#define IDC_GSTACK__SIGNALCOUNT15 3879
|
||||
#define IDC_GSTACK__SET15 3880
|
||||
#define IDC_GSTACK__RESET15 3881
|
||||
#define IDC_GSTACK__UNIT16 3882
|
||||
#define IDC_GSTACK__UP16 3883
|
||||
#define IDC_GSTACK__DOWN16 3884
|
||||
#define IDC_GSTACK__SIGNALCOUNT16 3885
|
||||
#define IDC_GSTACK__SET16 3886
|
||||
#define IDC_GSTACK__RESET16 3887
|
||||
#define IDC_GSTACK__UNIT17 3888
|
||||
#define IDC_GSTACK__UP17 3889
|
||||
#define IDC_GSTACK__DOWN17 3890
|
||||
#define IDC_GSTACK__SIGNALCOUNT17 3891
|
||||
#define IDC_GSTACK__SET17 3892
|
||||
#define IDC_GSTACK__RESET17 3893
|
||||
#define IDC_GSTACK__UNIT18 3894
|
||||
#define IDC_GSTACK__UP18 3895
|
||||
#define IDC_GSTACK__DOWN18 3896
|
||||
#define IDC_GSTACK__SIGNALCOUNT18 3897
|
||||
#define IDC_GSTACK__SET18 3898
|
||||
#define IDC_GSTACK__RESET18 3899
|
||||
#define IDC_GSTACK__UNIT19 3900
|
||||
#define IDC_GSTACK__UP19 3901
|
||||
#define IDC_GSTACK__DOWN19 3902
|
||||
#define IDC_GSTACK__SIGNALCOUNT19 3903
|
||||
#define IDC_GSTACK__SET19 3904
|
||||
#define IDC_GSTACK__RESET19 3905
|
||||
#define IDC_GSTACK__UNIT20 3906
|
||||
#define IDC_GSTACK__UP20 3907
|
||||
#define IDC_GSTACK__DOWN20 3908
|
||||
#define IDC_GSTACK__SIGNALCOUNT20 3909
|
||||
#define IDC_GSTACK__SET20 3910
|
||||
#define IDC_GSTACK__RESET20 3911
|
||||
#define IDC_GSTACK__UNIT21 3912
|
||||
#define IDC_GSTACK__UP21 3913
|
||||
#define IDC_GSTACK__DOWN21 3914
|
||||
#define IDC_GSTACK__SIGNALCOUNT21 3915
|
||||
#define IDC_GSTACK__SET21 3916
|
||||
#define IDC_GSTACK__RESET21 3917
|
||||
#define IDC_GSTACK__UNIT22 3918
|
||||
#define IDC_GSTACK__UP22 3919
|
||||
#define IDC_GSTACK__DOWN22 3920
|
||||
#define IDC_GSTACK__SIGNALCOUNT22 3921
|
||||
#define IDC_GSTACK__SET22 3922
|
||||
#define IDC_GSTACK__RESET22 3923
|
||||
#define IDC_GSTACK__UNIT23 3924
|
||||
#define IDC_GSTACK__UP23 3925
|
||||
#define IDC_GSTACK__DOWN23 3926
|
||||
#define IDC_GSTACK__SIGNALCOUNT23 3927
|
||||
#define IDC_GSTACK__SET23 3928
|
||||
#define IDC_GSTACK__RESET23 3929
|
||||
#define IDC_GSTACK__UNIT24 3930
|
||||
#define IDC_GSTACK__UP24 3931
|
||||
#define IDC_GSTACK__DOWN24 3932
|
||||
#define IDC_GSTACK__SIGNALCOUNT24 3933
|
||||
#define IDC_GSTACK__SET24 3934
|
||||
#define IDC_GSTACK__RESET24 3935
|
||||
#define IDC_GSTACK__UNIT25 3936
|
||||
#define IDC_GSTACK__UP25 3937
|
||||
#define IDC_GSTACK__DOWN25 3938
|
||||
#define IDC_GSTACK__SIGNALCOUNT25 3939
|
||||
#define IDC_GSTACK__SET25 3940
|
||||
#define IDC_GSTACK__RESET25 3941
|
||||
#define IDC_GSTACK__UNIT26 3942
|
||||
#define IDC_GSTACK__UP26 3943
|
||||
#define IDC_GSTACK__DOWN26 3944
|
||||
#define IDC_GSTACK__SIGNALCOUNT26 3945
|
||||
#define IDC_GSTACK__SET26 3946
|
||||
#define IDC_GSTACK__RESET26 3947
|
||||
#define IDC_GSTACK__UNIT27 3948
|
||||
#define IDC_GSTACK__UP27 3949
|
||||
#define IDC_GSTACK__DOWN27 3950
|
||||
#define IDC_GSTACK__SIGNALCOUNT27 3951
|
||||
#define IDC_GSTACK__SET27 3952
|
||||
#define IDC_GSTACK__RESET27 3953
|
||||
#define IDC_GSTACK__UNIT28 3954
|
||||
#define IDC_GSTACK__UP28 3955
|
||||
#define IDC_GSTACK__DOWN28 3956
|
||||
#define IDC_GSTACK__SIGNALCOUNT28 3957
|
||||
#define IDC_GSTACK__SET28 3958
|
||||
#define IDC_GSTACK__RESET28 3959
|
||||
#define IDC_GSTACK__UNIT29 3960
|
||||
#define IDC_GSTACK__UP29 3961
|
||||
#define IDC_GSTACK__DOWN29 3962
|
||||
#define IDC_GSTACK__SIGNALCOUNT29 3963
|
||||
#define IDC_GSTACK__SET29 3964
|
||||
#define IDC_GSTACK__RESET29 3965
|
||||
#define IDC_GSTACK__UNIT30 3966
|
||||
#define IDC_GSTACK__UP30 3967
|
||||
#define IDC_GSTACK__DOWN30 3968
|
||||
#define IDC_GSTACK__SIGNALCOUNT30 3969
|
||||
#define IDC_GSTACK__SET30 3970
|
||||
#define IDC_GSTACK__RESET30 3971
|
||||
#define IDC_GSTACK__UNIT31 3972
|
||||
#define IDC_GSTACK__UP31 3973
|
||||
#define IDC_GSTACK__DOWN31 3974
|
||||
#define IDC_GSTACK__SIGNALCOUNT31 3975
|
||||
#define IDC_GSTACK__SET31 3976
|
||||
#define IDC_GSTACK__RESET31 3977
|
||||
#define IDC_GSTACK__UNIT32 3978
|
||||
#define IDC_GSTACK__UP32 3979
|
||||
#define IDC_GSTACK__DOWN32 3980
|
||||
#define IDC_GSTACK__SIGNALCOUNT32 3981
|
||||
#define IDC_GSTACK__SET32 3982
|
||||
#define IDC_GSTACK__RESET32 3983
|
||||
#define IDC_DST_STEREO 5004
|
||||
|
||||
// Next default values for new objects
|
||||
//
|
||||
@ -588,7 +981,7 @@
|
||||
#ifndef APSTUDIO_READONLY_SYMBOLS
|
||||
#define _APS_NEXT_RESOURCE_VALUE 124
|
||||
#define _APS_NEXT_COMMAND_VALUE 40001
|
||||
#define _APS_NEXT_CONTROL_VALUE 5000
|
||||
#define _APS_NEXT_CONTROL_VALUE 5005
|
||||
#define _APS_NEXT_SYMED_VALUE 101
|
||||
#endif
|
||||
#endif
|
||||
|
||||
Reference in New Issue
Block a user