// this is the binary file format for CT version 8 // the first 1024 bytes are the header (struct restart_header) // the remainder of the file is in 50 byte rcords (struct loag_data) typedef unsigned char uchar; typedef unsigned int uint; typedef unsigned long ulong; typedef unsigned short ushort; struct restart_header // info in front of log data in .BIN file { char contest_title[32]; char version_str[12]; short category_int; short tx_pwr; char call[32]; char name[32]; char address[64]; char town[32]; char state[8]; char data[32]; struct comm_data // comm port setup info { char device; char baud; // 0 = 1200, 1 = 2400, 2 = 4800, 3 = 9600, 4 = 19.2 } comm[4]; uchar contest; uchar mode; uchar category; uchar tnc; uchar cw_port; uchar dvk_port; uchar station; uchar radio; struct { uchar no_work_dupe uchar m_stn uchar post uchar beep uchar band_rate uchar sound uchar correct uchar cw_abbrev uchar autosav uchar nocompress uchar see_warc uchar print uchar rpt uchar kw_right uchar spare[16 } flags; char cq_msg[64]; char qrz_msg[64]; char ex_msg[64]; char zip[16]; char zone[8]; char F6_text[64]; char F7_text[64]; char club[64]; struct ss_stuff { char prec[4]; char chk[4]; } ss; struct fd_stuff { uchar ep_bonus ; uchar pr_bonus ; uchar loc_bonus ; uchar info_bonus ; uchar msg_bonus ; uchar sat_bonus ; uchar nat_bonus ; uchar w1aw_bonus ; uchar pkt_bonus ; uchar power ; uchar tx_count ; char category ; uchar tfc_bonus ; uchar spare[3] ; } fd; char my_grid[8]; char sec[8]; char dupe_msg[32]; struct dvp_stuff { uchar ingain; uchar outgain; uchar onair; uchar mon; char ram_disk; uchar ptt; uchar backcopy; uchar spare; ushort clipping_pt; ushort rpt_delay; long auto_space; char dvp_spare[16]; } dvp; char last_op[16]; short off_thresh; char cont; char spare[199]; }; struct log_data // binary records kept in .BIN file { char call[16]; // callsign of station worked char info[8]; // received info: zone, power, grid, sec, etc uchar band; // 1 = 160, 2 = 80 ... 6 = 10 uchar mode; // 0 = CW, 1 = SSB, 2 = RTTY uchar status; // split or transceive, which VFO active uchar stn_num; // tag identifying computer this logged on short rst; // received RST, sent is always 59 or 599 short serial; // received serial number in SS struct fd_info { uchar tx_count; // Tx count uchar category; } fd; ulong freq[2]; // frequency read from VFO A and B long time; // UNIX time: seconds since Jan 1, 1970 union { uchar novice; // novice in 10 mtr test uchar check; // check in SS short tx_pwr; // for ARRL DX test outside W/VE short qtc_num;}; // number of qtc record this sent to (WAE) uchar qsl_sent; // qsl sent flag };