This article copyrighted (c) 1997 by Bill Cheek UNDERSTANDING AND MAKING AUTOPROGRAMMER FILES FOR THE CE-232 SCANNER/COMPUTER INTERFACE One of the singular greatest advantages and features of the CE-232 Interface is its ability to AutoProgram a scanner's memory banks with FREQUENCIES by CHANNEL NUMBER and other custom settings of MODE, DELAY, and LOCKOUT. Beauty lies in the simplicity by how this is done; that is, from a plain ASCII text file. No proprietary or complex formats here, Bunky; just plain ASCII text. The CE-232 uses a variant of plain ASCII text called a comma-delimited format, but which we call an AutoProgrammer or *.APF file. If you don't know about ASCII text, there isn't much I can do in this limited space and forum to help. But I will clarify to the extent that any files created with Windows NOTEPAD.EXE or MS-DOS's EDIT.EXE, or (heaven forbid) EDLIN.EXE will, most assuredly, be plain ASCII text files. Most text editors and even word processors are capable of creating plain ASCII text files, but you have to be cautious with word processors because they usually embellish text for printing. The printer control codes, fonts, and other embellishments take this type of text out of the plain ASCII category. 1. The cardinal rule for CE-232 AutoProgrammer files is that they must be in plain ASCII text format (like *.TXT, except that we use the *.APF extension.) You really need to know a little something about data, databases, data organization, and logic, too. Nothing real weird or horrific, mind you; just some basics. After all, your AutoProgrammer (*.APF) files really are databases if you want to get technical about it. The simplest of all databases is a table. You know, a block of information, organized into meaningful rows and columns. Now here is the only real technical part to understand and remember: rows are really called records, and columns are really called fields. Here is an example of a table that will mean something to you: TABLE 1: A FREQUENCY TABLE A B C D E F G 1 7 21 168.0110 nfm D L Audio Intelligence (Body Bugs);Yellow 2 7 22 168.0620 nfm D L Audio Intelligence (Body Bugs);Green 3 7 23 168.0860 nfm D L Audio Intelligence (Body Bugs);Blue 4 7 24 171.6500 nfm D L Audio Intelligence (Body Bugs);Red 5 7 25 171.9500 nfm D L Audio Intelligence (Body Bugs);Silver Obviously, this is a frequency table. Rows 1-5 are just Records 1-5. Columns A-G are just Fields A-G. With exceptions of Fields A, B, E, and F, you can tell at a glance what all this information means. Now consider that Field A is an identifying group number for this table of frequencies. Field B is the program channel number. Field C, obviously, is the frequency. Field D is the mode setting for that frequency. Field E is an indicator of Delay setting (D if set; blank if not). Field F is an indicator of LockOut setting (L if locked out; blank if not). Finally, Field G is a description. What more do you need to know about a frequency table? Well, there are a couple of minor things, like limits and restrictions. You'd have a problem making any sense out of the table if the columns or fields weren't the same width, which necessarily restricts the amount of information that a field can hold. Physical width is usually the criteria for fields in tables printed on paper. Number of characters per field is the criterion for computer tables. There are restrictions and limits for all tables of information, and *.APF files are no different. 2. A *.APF file must consist of one or more lines, each to contain not more than 255-characters, maximum. Each line, properly called a record, must end with a carriage return and a line feed . (This is normal for text files.) 3. *.APF files are organized just like tables on paper, except that instead of spaces or lines between columns or fields, commas are used to separate one field from the next. Six fields of information are required by a *.APF file with definitions, limits, and restrictions shown as follows: Field A: (Alpha/numeric; 0-12 chars, max); an optional "filter" field. Used to identify a record or group of records. For example, you might have several different frequency files and want to tell at a glance which record belongs to which group. GOV-DEA might be a chosen identifier for "Government-Drug Enforcement Administration" frequencies. Field B: (Numeric; 0-3 chars, max); an optional "channel number" field; denotes the channel number that should be programmed with this record Field C: (Numeric; 9 chars, max); the required "frequency" field, best organized as four digits, decimal, and four more digits, such as: 0121.5000 although any format accepted by your scanner is fine. This could include any of the following: 121.5 121.50 etc. It wouldn't hurt to get in the habit of entering all your frequencies in the "4-dot-4" format, which helps the numbers line up for best visual effect. Leading zeroes are acceptable in Fields B and C, like: 025 and 0171.6500. Leading zeroes help align data and make it look better. Field D: (Alphameric; 0-3 chars, max); optional field for Mode setting. Only four entries are legit: which tells the scanner to use the default mode for that frequency, or , , or . Some scanners, like the PRO-43, won't recognize the setting, so it may or may not matter what you put in this field. Note: What matters is that any entry in this field must be lower case, due to a bug in the CE-232 program. Upper case is ignored. Mode is the only case-sensitive field. Field E: (Alphameric; 0-1 char, max); optional field for Delay setting. Two entries are legit: which turns off the Delay, or which turns it on. Field F: (Alphameric; 0-1 char, max); optional field for LockOut setting. Two entries are legit: which turns off the L/O, or which locks out the channel. Fields G and up: (Alphameric/numeric; no special limits other than no line or record can exceed a total of 255 characters, including the total of Fields A-F.) Fields G and up are purely optional and can be in any format or logic that suits your fancy. 4. A CE-232 AutoProgrammer file requires six commas, at a minimum, but ignores any more than six. Commas are used to separate one field from the next. Commas are separators; not starts and ends. The six fields are required in the following form: aaaaaaaaaaaa,bbb,cccc.cccc,ddd,e,f,g-z.....doesn't matter Six commas and a legit entry in Field C are required for APF files, but the other five fields are optional. Table 2 shows a minimum legit APF file created from Table 1: TABLE 2: MINIMUM LEGIT APF FILE ,,168.0110,,,, ,,168.0620,,,, ,,168.0860,,,, ,,171.6500,,,, ,,171.9500,,,, Table 3 is all the data in Table 1 converted into an APF file: TABLE 3: APF FILE FROM TABLE 1 7,21,168.0110,nfm,D,L,Audio Intelligence (Body Bugs);Yellow 7,22,168.0620,nfm,D,L,Audio Intelligence (Body Bugs);Green 7,23,168.0860,nfm,D,L,Audio Intelligence (Body Bugs);Blue 7,24,171.6500,nfm,D,L,Audio Intelligence (Body Bugs);Red 7,25,171.9500,nfm,D,L,Audio Intelligence (Body Bugs);Silver Summary: The CE-232 AutoPrograms a scanner with a plain, comma-delimited ASCII file, with six required commas, ignoring any more than six. Any single line or record is limited to 255 characters, with additional limits on the length of each field as discussed above. CREATING APF FILES ==================== THE HARD WAY: The simplest (hardest) way to create an APF file is to type it using a text editor like NOTEPAD, EDIT, QEDIT, etc. You can use a word processor if you unfailingly remember to SAVE AS a plain ASCII textfile when you're done editing. Do not insert End Of File (EOF) codes, nor any other codes, for that matter. Never use weird symbols and characters in your APF files, (just regular keyboard characters, please!) Follow the rules and limits as discussed. When done, save or rename the file as . EASIER WAYS: Of course, typing your APF files is a lot of work. Fortunately, there are better ways to create APF files, even if not quite as simple. If your frequency records are in a formal database or spreadsheet, it's a cinch to export some or all the data to a textfile format as required by the CE-232's AutoProgrammer. Therefore, it could be "smart" to structure any formal databases to start with the first six fields as required by the CE-232. This will simplify the export of data to APF format. The export functions of most database managers and spreadsheets are self-guiding and explanatory. I prefer MS-Access, Excel, and Works. The premier supplier of FCC frequency databases is: PerCon Corp 4906 Maple Springs / Ellery Rd. Bemus Point, NY 14712 [9]716-386-6015; Fax: [10]716-386-6013; Email: [11]sa...@perconcorp.com Web: [12]http://www.perconcorp.com PerCon's software just happens to have an export feature that makes APF files for the CE-232 "on the fly" as you need them. Press a few buttons, and presto! You'll have most any desired number and size of APF files! Another great source of frequency data is via the Internet and a huge, but hodge-podge assortment of public messages, BBS and FTP files that contain frequency data. At first glance, you might think this junk needs retyped to be of any use as an APF. Wrong! Enter Reid Drummond and his magnificent program called APFTools; a very low-cost shareware utility that can "read" a nasty, disorganized text file containing frequency information, and output a perfectly organized APF file, ready to go into a scanner via the CE-232! APFTools is easy to use and is affordable by the tightest budget. APFTools is available from my FTP sites in the \pub\montimes directory, or from the author by e-mail at: [13]Reid.D...@jpl.nasa.gov Computer Aided Technologies (of ScanCat fame) offers MAGIC, a frequency extraction program similar to APFTools, that prepares orderly APF files from loathsome, disorganized text files. For details, get MAGIC.ZIP, a demo, from our FTP site or contact Computer Aided Technologies PO Box 18285 Shreveport, LA 71138 E-mail: sca...@scancat.com Web: http://www.scancat.com phones: 888-722-6228; 318-687-4444 fax (318) 686-0449 Take your pick; both APF extractors are good, and both make quick work of extracting frequency information from text files and converting that data into ready-to-use APF files. Beats the heck out of typing! Concluding, here is a real world example of an APF file that follows the rules, but varies in detail and style. TABLE 4: A REAL APF FILE 1 MilAir,0182,0395.900,am,D,L,Blue Angels - Air to Air Channel 2 ,183,362.6,am,D,,Air Show Control 3 Emrg,184,0243.00,am,D,L,Emergency/MayDay/Distress/ELT 4 ,185,0,,,L, 5 MilAir,,121.9000,am,,,Blue Angels - Ground Support 6 ,002, 123.4,wfm,D,L,Blue Angels - Airshow Common 7 File3,03,141.560,,D,,Blue Angels - Maintenance Charlie 8 Bank1,4,142.000,,,L,Blue Angels - Maintenance Alfa 9 ,,143.600,,D,,Blue Angels - Maintenance Channel 10 10 blangel.apf,,143.000,nfm,D,L,Blue Angels - Maintenance Bravo 11 Block2,169,0241.400,am,D,,Blue Angels - Air to Air Channel Table 4 is a real world APF file except for the line numbers given for clarity. Line 1 uses most everything that can be used, including a descriptive "filter" field. Line 10 uses a filename for the filter. Line 6 shows leading zeroes and a leading space. Line 4 is about as simple as it gets. Each line shows something unique, but it's all legit APF technique! You don't especially want to mix techniques, like leading zeroes or spaces in one case and not in another, but that's a matter of personal preference - not technical. The CE-232 has other features, like LookUp that suggests the worthwhile effort make the data line up for visual impact. Leading zeroes or spaces in the first six fields contribute to good looks without a negative effect. This short document should give you all the tools you need to make AutoProgrammer files for your CE-232 Scanner/Computer Interface. If you have any questions or difficulties, tech support is always available on my Web and FTP sites as well as by e-mail. See my signature box below for details. This article copyrighted (c) 1997 by Bill Cheek