PDA

View Full Version : Looking for a generic comm1 script



djcevera20
11-03-2009, 03:58 PM
Hello I have been looking everywhere to locate a sioc script for a generic
comm1 radio a local builder who is new in my area asked me to help and unfortunatly i cannot find an example of a generic comm1 radio using fsuipc offsets. I believe he is using the leveld 767 but is limited to hardware issues so he is unable to use nicos script i think he is limited to the number of displays he wants to use and is looking to just display and control the active freq. any help would be great.

Georg Schneider
11-03-2009, 04:15 PM
Hi djcevera !

Here you go:
General comm script with 2 encoders and standby frequency.

// *************************************** COMM 1 *****************************************************************************************************************

Var 0910, name FS_C1_SWAP, Link FSUIPC_OUT, Offset $3123, Length 1 // FS COMM1 active standby swap

Var 0911, name FS_C1SBBCD, Link FSUIPC_IN, Offset $311A, Length 2 // FS COMM1 standby frequency in BCD format
{
L0 = FROMBCD &FS_C1SBBCD
&C1SBFreq = L0
&C1SBFreqHigh = DIV L0 ,100
&C1SBFreqLow = MOD L0 ,100
CALL &OutC1SBFreq // display new freq value
}

Var 0912, name C1SBFreqLow

Var 0913, name C1SBFreqHigh

Var 0914, name C1SBFreq

Var 0915, name CalcC1SBFreq, Link SUBRUTINE
{
L0 = &C1SBFreqHigh * 100 // high * 100
&C1SBFreq = L0 + &C1SBFreqLow // + low
&FO_C1SBFreq = TOBCD &C1SBFreq // BCD value to panel
CALL &OutC1SBFreq // display new freq value
}

Var 0916, name OutC1SBFreq, Link SUBRUTINE
{
&D_C1SBFreq = &C1SBFreq + 10000 // to display + '1'
}

Var 0917, name SW_C1_SWAP, Link IOCARD_SW, Device 3, Input 17 // TOGGLE ACT_STB
{
&FS_C1_SWAP = TOGGLE 3
}

Var 0918, name FI_C1Freq, Link FSUIPC_IN, Offset $034E, Length 2 // FS COMM1 active frequency in BCD format
{
&OutC1Freq = FROMBCD &FI_C1Freq
}

Var 0919, name OutC1Freq, Link SUBRUTINE
{
&D_C1Freq = &OutC1Freq + 10000 // to display + '1'
}

Var 0920, name RO_C1SBFL, Link IOCARD_ENCODER, Device 3, Input 12, Aceleration 1, Type 2
{
L0 = &RO_C1SBFL * 1
&C1SBFreqLow = ROTATE 0 ,99 ,L0
CALL &CalcC1SBFreq
}

Var 0921, name RO_C1SBFH, Link IOCARD_ENCODER, Device 3, Input 10, Aceleration 1, Type 2
{
L0 = &RO_C1SBFH
&C1SBFreqHigh = ROTATE 18 ,36 ,L0
CALL &CalcC1SBFreq
}

Var 0922, name D_C1Freq, Link IOCARD_DISPLAY, Device 3, Digit 39, Numbers 5

Var 0923, name D_C1SBFreq, Link IOCARD_DISPLAY, Device 3, Digit 33, Numbers 5

Var 0924, name FO_C1SBFreq, Link FSUIPC_OUT, Offset $311A, Length 2 // FS DISPL COMM1 SB_FREQ


Hope that helps:D

Kind regards
Georg

djcevera20
11-03-2009, 04:39 PM
georg thanks for the reply after reviewing the script please tell me if im correct with my interpitation. from the looks of this you have 10 display digits 2 rotary encodes on for the high part and one for the decimals. also a toggle to switch from active to standby.....so when you use this radio you would switch the toggle to the standby side then adjust the channel and by throwing the toggle to the other side it would then change the active freq to the the freq you just set? is this correct?

Georg Schneider
11-04-2009, 03:09 PM
;)Hi dj !

Thats exactly right !

2 encoders and 2 displays with 5 segments.

You change the freq on the standby side and move
the standby freq with "TFR" switch to the active side.

One encoder is for the high freq. and the other for the low freq.

Kind regards
Georg