;-------------------------------------------------------------------------------------
;                  ICOM IC-756 Pro command set, version 29 MAY 05
;
; -File created by Alex Shovkoplyas, VE3NEA ve3nea@dxatlas.com, for an IC-756 Pro II
; -First modification by Brendan, EI6IZ, ei6iz@oceanfree.net, for an IC-756 Pro II
; -Second modification by John, K6JJ: Conversion of the set for use with an IC-756 Pro
;-------------------------------------------------------------------------------------


;-------------------------------------------------------------------------------------
;                                 initialize
;-------------------------------------------------------------------------------------

[INIT]
;None

;-------------------------------------------------------------------------------------
;                                set frequency
;-------------------------------------------------------------------------------------

[pmFreqA]
;Not supported

[pmFreqB]
;Not supported

[pmFreq]
;Set operating frequency
Command=FEFE5CE0.05.0000000000.FD
Value=5|5|vfBcdLU|1|0
ReplyLength=17
Validate=FEFE5CE0050000000000FD.FEFEE05CFBFD

[pmRitOffset]
;Not supported

[pmRit0]
;Not supported

[pmPitch]
;Set CW pitch
Command=FEFE5CE0.14.09.0000.FD
;300Hz=5 600Hz=128 900Hz=255
;there's a fundamental problem here, anything between 0 and 9 = 300 10-19 =325 20-29 =350 etc
;how do we scale for this?
;Note: This command function was borrowed in total from the IC-756 Pro II command set,
;      with changes to make it recognized by the IC-756 Pro. It works more or less,
;      but needs additional tweaking. It was included since both the IC-756 Pro rig
;      and the Omni-Rig Client testing program support this function. K6JJ
Value=6|2|vfBcdBU|1|1
ReplyLength=15
Validate=FEFE5CE014090000FD.FEFEE05CFBFD

;-------------------------------------------------------------------------------------
;                          set rit/xit/split/rx/tx
;-------------------------------------------------------------------------------------

[pmSplitOn]
;Enable split operation, using VFO B (transmit frequency) and VFO A (receive frequency)
Command=FEFE5CE0.0F01.FD
ReplyLength=13
Validate=FEFE5CE00F01FD.FEFEE05CFBFD

[pmSplitOff]
;Disable split operation, transmit and receive frequencies set to VFO A frequency
Command=FEFE5CE0.0F00.FD
ReplyLength=13
Validate=FEFE5CE00F00FD.FEFEE05CFBFD

[pmVfoA]
;Set receiver to VFO A frequency
Command=FEFE5CE0.07D0.FD
ReplyLength=13
Validate=FEFE5CE007D0FD.FEFEE05CFBFD

[pmVfoB]
;Set receiver to VFO B frequency
Command=FEFE5CE0.07D1.FD
ReplyLength=13
Validate=FEFE5CE007D1FD.FEFEE05CFBFD

[pmVfoEqual]
;Set VFO B parameters (split transmit VFO) equal to VFO A parameters (receive VFO)
Command=FEFE5CE0.07B1.FD
ReplyLength=13
Validate=FEFE5CE007B1FD.FEFEE05CFBFD

[pmVfoSwap]
;Swap VFO B frequency (split transmit VFO) with VFO A frequency (receive VFO)
Command=FEFE5CE0.07B0.FD
ReplyLength=13
Validate=FEFE5CE007B0FD.FEFEE05CFBFD

[pmVfoAA]
;Not supported

[pmVfoAB]
;Not supported

[pmVfoBA]
;Not supported

[pmVfoBB]
;Not supported

[pmRitOn]
;Not supported

[pmRitOff]
;Not supported

[pmXitOn]
;Not supported

[pmXitOff]
;Not supported

[pmRx]
;Enable the receive mode
Command=FEFE5CE0.1C00.00.FD
ReplyLength=14
Validate=FEFE5CE01C0000FD.FEFEE05CFBFD

[pmTx]
;Enable the transmit mode
Command=FEFE5CE0.1C00.01.FD
ReplyLength=14
Validate=FEFE5CE01C0001FD.FEFEE05CFBFD

;-------------------------------------------------------------------------------------
;                                 set mode
;-------------------------------------------------------------------------------------

[pmCW_U]
;Set the CW mode
Command=FEFE5CE0.06.03.FD
ReplyLength=13
Validate=FEFE5CE00603FD.FEFEE05CFBFD

[pmCW_L]
;Set the CW-R mode
Command=FEFE5CE0.06.07.FD
ReplyLength=13
Validate=FEFE5CE00607FD.FEFEE05CFBFD

[pmSSB_U]
;Set the USB mode
Command=FEFE5CE0.06.01.FD
ReplyLength=13
Validate=FEFE5CE00601FD.FEFEE05CFBFD

[pmSSB_L]
;Set the LSB mode
Command=FEFE5CE0.06.00.FD
ReplyLength=13
Validate=FEFE5CE00600FD.FEFEE05CFBFD

[pmDIG_U]
;Set the Digital RTTY mode (microphone muted)
Command=FEFE5CE0.06.04.FD.FEFE5CE0.1A.06.04.FD
ReplyLength=13
Validate=FEFE5CE00604FD.FEFEE05CFBFD

[pmDIG_L]
;Set the Digital RTTY-R mode (microphone muted)
Command=FEFE5CE0.06.08.FD.FEFE5CE0.1A.06.08.FD
ReplyLength=13
Validate=FEFE5CE00608FD.FEFEE05CFBFD

[pmAM]
;Set the AM mode
Command=FEFE5CE0.06.02.FD
ReplyLength=13
Validate=FEFE5CE00602FD.FEFEE05CFBFD

[pmFM]
;Set the FM mode
Command=FEFE5CE0.06.05.FD
ReplyLength=13
Validate=FEFE5CE00605FD.FEFEE05CFBFD

;-------------------------------------------------------------------------------------
;                               read status
;-------------------------------------------------------------------------------------

[STATUS1]
;Read the operating frequency
Command=FEFE5CE0.03.FD
ReplyLength=17
Validate=FEFE5CE003FD.FEFEE05C.03.0000000000.FD
Value1=11|5|vfBcdLU|1|0|pmFreq

[STATUS2]
;Read the operating mode
Command=FEFE5CE0.04.FD
ReplyLength=14
Validate=FEFE5CE004FD.FEFEE05C.04.0000.FD
Flag1=000000000000.0000000000.0F.0000|000000000000.0000000000.00.0000|pmSSB_L
Flag2=000000000000.0000000000.01.0000|pmSSB_U
Flag3=000000000000.0000000000.02.0000|pmAM
Flag4=000000000000.0000000000.03.0000|pmCW_U
Flag5=000000000000.0000000000.04.0000|pmDIG_U
Flag6=000000000000.0000000000.05.0000|pmFM
Flag7=000000000000.0000000000.07.0000|pmCW_L
Flag8=000000000000.0000000000.08.0000|pmDIG_L

[STATUS3]
;Read the CW pitch
;need to read pitch offset in cw mode
;there's a fundamental problem here, anything between 0 and 9 = 300 10-19 =325 20-29 =350 etc
;how do we scale for this?
;Note: Also see the comments included with: Set CW Pitch  K6JJ
Command=FEFE5CE0.1409.FD
ReplyLength=16
Validate=FEFE5CE01409FD.FEFEE05C1409.0000.FD
Value1=13|2|vfBcdBU|1|1|pmPitch

[STATUS4]
;Read the transmit or receive mode
Command=FEFE5CE0.1C00.FD
ReplyLength=15
Validate=FEFE5CE01C00FD.FEFEE05C.1C00.00.FD
Flag1=00000000000000.00000000.0000.01.00|pmTx
Flag2=00000000000000.00000000.0000.FF.00|00000000000000.00000000.0000.00.00|pmRx




