TUCoPS :: Radio :: ft736r_4.txt

Yaesu FT-736 mods

FT736R.4

DEF PROCsat_mode(F%,B%(1))
IF F%=tx B%(5)=&27 ELSE B%(5)=&17
PROCput: ENDPROC
:
DEF PROCfreq(F)
B%(5)=1
PROCfr(F)
PROCput: ENDPROC
:
DEF PROCsat_freq(F%,F)
IF F%=tx B%(5)=&2E ELSE B%(5)=&1E
PROCfr(F)
PROCput: ENDPROC
:
DEF PROCfr(F)
IF F>=1000 FX%=on ELSE FX%=off
F=(F+0.000005)/1000
FOR I%=1 TO 4: F=F*100: F%=INT(F): F=F-F%
B%(I%)=(F% DIV 10)*16 + F% MOD 10
NEXT
IF FX%=on B%(1)=B%(1)AND &F + &C0: REM 1200 MHz band
corrrection
ENDPROC
:
DEF FNsqlch
B%(5)=&E7: PROCput: PROCget
IF B%(1)=0 THEN =0 ELSE= -1
:
DEF FNmeter
B%(5)=&F7: PROCput: PROCget
=B%(1)
:
DEF PROCset_up
REM Establish constants etc
DIM B%(5)
off=0: on=-1
rx =0: tx=-1
plus=+1: minus=-1
lsb=0: usb=1: cw=2: cwn=&82: fm=8: fmn=&88
:
REM Most code after this is for controlling the BBC micro
hardware
REM and needs recoding for any other machine.  Note "*FXn,m"
is
REM merely a BBC micro operating system call, no. n, parameter
m.
REM
REM Set up RS423 = 4800,8,N,2
*FX8,6
*FX7,6
*FX156,16,227
ENDPROC
:
DEF PROCput
REM Procedure sends five bytes to RS432c port, spaced by 50ms
REM bytes are in array B%(1) ... B%(5)
FOR I%=1 TO 5
REM Delay below is in the spec, but can actually be omitted 
T%=TIME: REPEAT UNTIL TIME >= T%+5: REM Wait 50 ms/byte
REM Now direct output to RS423, o/p char, and restore o/p to
screen
*FX3,3
VDU B%(I%)
*FX3,0
NEXT
ENDPROC
:
DEF PROCget
REM Flush RS423 I/P buffer, then read bytes from input stream
REM until op code is detected.  Previous value is result.  
REM (straight reading 5 bytes found to be unreliable)
*FX15,1
*FX2,1
REPEAT B%(1)=B%: B%=GET: UNTIL B%=B%(5)
*FX2,0
ENDPROC
:
REM End of code
REM de G3RUH @ GB7SPV 1990 May 29
JAS>
 

TUCoPS is optimized to look best in Firefox® on a widescreen monitor (1440x900 or better).
Site design & layout copyright © 1986-2024 AOH