#perl -w # 00-US-0-138-144.pl # Perl script to generate a specific type of (BCD396T scanner) USD file # n6lhv@arrl.net (Wayne Smith) # created: 26-August-2005 # updated: 27-November-2005 # Set up the environment use strict; # Initialize some variables my $systemRoot = "00-US-0-138-144"; my $fileRoot = $systemRoot . "-perl"; my $fileExt = ".usd"; my $fileHandle = ""; my $quickKey = "0"; my $freqStart = 138.0125; my $freqEnd = 143.9875; my $freqStep = .0125; my $freqCurrent = 0; my $freqCurrentString = ""; # Routine to generate a complete BC396T USD file (ASCII) sub main { # Open the text file open ( fileHandle, ">" . $fileRoot . $fileExt ) or die "Cannot open file '" . $fileRoot . $fileExt . " for writing..."; print "Generating " . $fileRoot . $fileExt . " ...\n"; print fileHandle "SystemCT" . "," . "CNV" . "," . '"' . $systemRoot . '"' . "," . $quickKey . "," . # QuickKey {None,0-99} "0" . "," . # Hold Time {0-255} "UNLOCKED" . "," . # LockOut Status {UNLOCKED,LOCKOUT} "OFF" . "," . "4" . "," . # Delay {0-5} default=2 "ON" . "," . # Data Skip {ON,OFF} "0" . "," . "0" . "," . "AUTO" . "," . # P25 Mode {AUTO,MAN,DFLT} "8" . # P25 MANual Level {0-20} default=8 "\n"; print fileHandle "CGroup" . "," . # "CGroup" '"' . "Unknown Use" . '"' . "," . # For now, these are all "Unknown" "None" . "," . # QuickKey {None,0-9} "UNLOCKED" . # LockOut Status {UNLOCKED,LOCKOUT} "\n"; $freqCurrent = sprintf( "%.4f", $freqStart ); while ( $freqCurrent <= $freqEnd ) { $freqCurrentString = $freqCurrent; print fileHandle "Channel" . "," . # "Channel" '"' . $freqCurrentString . '"' . "," . # Channel name "" . # prepend a leading "0" (if desired) $freqCurrentString . "," . # Frequency "," . "AUTO" . "," . # Modulation {AUTO,AM,FM,NFM,WFM} "SEARCH" . "," . # Tone {NONE,SEARCH,Cxxxx,Dxxx} "OFF" . "," . # Tone Lock Out (OFF,ON} "UNLOCKED" . "," . # LockOut Status {UNLOCKED,LOCKOUT} "OFF" . "," . # Priority {OFF,ON} "OFF" . "," . # Attenuation (OFF,ON} "OFF" . "," . # Alert {OFF,1-9} "AUTO" . # Level (AUTO,1-14} "\n"; $freqCurrent = sprintf( "%.4f", $freqCurrent + $freqStep ); } # Close the text file close( fileHandle ); } # Main main;