/* BasyouhuP200003.h ver.1.00 * Special header file for BasyouhuP200003.c * ----- for Japan Special Time in March, 2000 ---- * * ******************************** * * This version _DOES_ include * * * new Tiger Tasmanian code !!! * * * new Kerguelen radar code !!! * * * & provisional Kodiak code !! * * ******************************** * * on Jan.24, 2000 * by Sessai@NIPR */ // some special beams such as spbm[mode][1][?]>=0 will be treated // also as normal beams, (scan will be 0 for them.) ///////////////////////////////////// #ifdef TIGER #ifndef LEICESTER #define LEICESTER #endif #endif ///////////////////////////////////// ///////////////////////////////////// #ifndef KODIAK #define KODIAK 7 #endif ///////////////////////////////////// #define MODEMAX 4 #define SUBMODEMAX 2 // must be >=2 (not 1!!!) #define SPBMMAX 14 #define SPBMNUM 2 // means there is AT MOST SPBMNUM spec_beams... #define SP_SMR_B -1 #define SP_SMR_P 0 unsigned long spdate[MODEMAX]={20000305,20000316,20000321,20000326}; #if SD_RADAR_ID == GOOSEBAY #define SPRSEP 45 short int sptgate[MODEMAX][SUBMODEMAX-1]={{24},{24},{10},{24}}; short int spintt[MODEMAX][SUBMODEMAX]={{ 3, 3},{ 3, 3},{ 3, 3},{ 3, 3}}; short int sponly[MODEMAX][SUBMODEMAX]={{ 0, 0},{ 0, 0},{ 0, 0},{ 0, 0}}; short int spstbm[MODEMAX][SUBMODEMAX]={{ 0, 0},{ 1, 1},{ 1, 1},{ 0, 0}}; short int spedbm[MODEMAX][SUBMODEMAX]={{15,15},{15,15},{15,15},{15,15}}; short int spbm[MODEMAX][SUBMODEMAX][2][SPBMNUM]={ {{{14, 3},{ 6,11}},{{-1,-1},{-1,-1}}}, {{{ 9,-1},{ 1,-1}},{{-1,-1},{-1,-1}}}, {{{14,-1},{10,-1}},{{ 4,-1},{11,-1}}}, {{{15, 9},{12, 9}},{{-1,-1},{-1,-1}}}}; unsigned short int spsmbm[MODEMAX][SUBMODEMAX]= {{0x4528,0x0520},{0x0720,0x0520},{0x4520,0x0530},{0x8720,0x0520}}; // ea853/ (a85) / a985/ (a85) / ea85/ a854 / fa985/ (a85) #elif SD_RADAR_ID == KAPUSKASING #define SPRSEP 45 short int sptgate[MODEMAX][SUBMODEMAX-1]={{24},{24},{18},{14}}; short int spintt[MODEMAX][SUBMODEMAX]={{ 3, 3},{ 3, 3},{ 3, 3},{ 3, 3}}; short int sponly[MODEMAX][SUBMODEMAX]={{ 0, 0},{ 0, 0},{ 0, 0},{ 0, 0}}; short int spstbm[MODEMAX][SUBMODEMAX]={{15,15},{15,15},{14,15},{14,14}}; short int spedbm[MODEMAX][SUBMODEMAX]={{ 0, 0},{ 1, 1},{ 1, 1},{ 0, 0}}; short int spbm[MODEMAX][SUBMODEMAX][2][SPBMNUM]={ {{{ 5, 1},{ 4, 5}},{{-1,-1},{-1,-1}}}, {{{ 5,-1},{ 5,-1}},{{-1,-1},{-1,-1}}}, {{{15,-1},{10,-1}},{{ 5,-1},{ 5,-1}}}, {{{ 5,-1},{ 9,-1}},{{ 0,-1},{ 6,-1}}}}; unsigned short int spsmbm[MODEMAX][SUBMODEMAX]= {{0x0522,0x0520},{0x0520,0x0520},{0x8520,0x0520},{0x0520,0x0521}}; // a851/ (a85) / a85/ (a85) / fa85/ a85 / a85/ a850 #elif SD_RADAR_ID == SASKATOON #define SPRSEP 45 short int sptgate[MODEMAX][SUBMODEMAX-1]={{24},{24},{18},{24}}; short int spintt[MODEMAX][SUBMODEMAX]={{ 3, 3},{ 3, 3},{ 3, 3},{ 3, 3}}; short int sponly[MODEMAX][SUBMODEMAX]={{ 0, 0},{ 0, 0},{ 0, 0},{ 0, 0}}; short int spstbm[MODEMAX][SUBMODEMAX]={{ 0, 0},{ 1, 1},{ 1, 1},{ 0, 0}}; short int spedbm[MODEMAX][SUBMODEMAX]={{15,15},{15,15},{15,15},{15,15}}; short int spbm[MODEMAX][SUBMODEMAX][2][SPBMNUM]={ {{{14, 7},{ 6,11}},{{-1,-1},{-1,-1}}}, {{{ 7,-1},{ 4,-1}},{{-1,-1},{-1,-1}}}, {{{15,-1},{ 6,-1}},{{ 7,-1},{ 4,-1}}}, {{{ 7,15},{12,13}},{{-1,-1},{-1,-1}}}}; unsigned short int spsmbm[MODEMAX][SUBMODEMAX]= {{0x45a0,0x0520},{0x05a0,0x0520},{0x8520,0x05a0},{0x85a0,0x0520}}; // ea875/ (a85) / a875/ (a85) / fa85/ a875 / fa875/ (a85) #elif SD_RADAR_ID == KODIAK #define SPRSEP 45 short int sptgate[MODEMAX][SUBMODEMAX-1]={{24},{24},{24},{20}}; short int spintt[MODEMAX][SUBMODEMAX]={{ 3, 3},{ 3, 3},{ 3, 3},{ 3, 3}}; short int sponly[MODEMAX][SUBMODEMAX]={{ 0, 0},{ 0, 0},{ 0, 0},{ 0, 0}}; short int spstbm[MODEMAX][SUBMODEMAX]={{ 0, 0},{ 1, 1},{ 1, 1},{ 1, 1}}; short int spedbm[MODEMAX][SUBMODEMAX]={{15,15},{15,15},{15,15},{15,15}}; short int spbm[MODEMAX][SUBMODEMAX][2][SPBMNUM]={ {{{ 2,15},{ 4,13}},{{-1,-1},{-1,-1}}}, {{{14,-1},{10,-1}},{{-1,-1},{-1,-1}}}, {{{12,-1},{13,-1}},{{-1,-1},{-1,-1}}}, {{{15,-1},{ 6,-1}},{{13,-1},{ 2,-1}}}}; unsigned short int spsmbm[MODEMAX][SUBMODEMAX]= {{0x8524,0x0520},{0x4520,0x0520},{0x1520,0x0520},{0x8520,0x2520}}; // fa852/ (a85) / ea85/ (a85) / ca85/ (a85) / fa85/ da85 #elif SD_RADAR_ID == ICEWEST #define SPRSEP 45 short int sptgate[MODEMAX][SUBMODEMAX-1]={{24},{24},{ 9},{24}}; short int spintt[MODEMAX][SUBMODEMAX]={{ 3, 3},{ 3, 3},{ 3, 3},{ 3, 3}}; short int sponly[MODEMAX][SUBMODEMAX]={{ 0, 0},{ 0, 0},{ 0, 0},{ 0, 0}}; short int spstbm[MODEMAX][SUBMODEMAX]={{15,15},{15,15},{14,14},{15,15}}; short int spedbm[MODEMAX][SUBMODEMAX]={{ 0, 0},{ 1, 1},{ 0, 0},{ 0, 0}}; short int spbm[MODEMAX][SUBMODEMAX][2][SPBMNUM]={ {{{11, 5},{ 0, 3}},{{-1,-1},{-1,-1}}}, {{{11,-1},{ 0,-1}},{{-1,-1},{-1,-1}}}, {{{ 6,-1},{ 1,-1}},{{ 3,-1},{13,-1}}}, {{{ 3,11},{ 0, 1}},{{-1,-1},{-1,-1}}}}; unsigned short int spsmbm[MODEMAX][SUBMODEMAX]= {{0x0d20,0x0520},{0x0d20,0x0520},{0x0560,0x0528},{0x0d28,0x0520}}; // ba85/ (a85) / ba85/ (a85) / a865/ a853 / ba853/ (a85) #elif SD_RADAR_ID == ICEEAST #define SPRSEP 45 short int sptgate[MODEMAX][SUBMODEMAX-1]={{24},{12},{ 4},{24}}; short int spintt[MODEMAX][SUBMODEMAX]={{ 3, 3},{ 3, 3},{ 3, 3},{ 3, 3}}; short int sponly[MODEMAX][SUBMODEMAX]={{ 0, 0},{ 0, 0},{ 0, 0},{ 0, 0}}; short int spstbm[MODEMAX][SUBMODEMAX]={{ 0, 0},{ 0, 0},{ 0, 0},{ 0, 0}}; short int spedbm[MODEMAX][SUBMODEMAX]={{14,14},{14,14},{14,14},{15,15}}; short int spbm[MODEMAX][SUBMODEMAX][2][SPBMNUM]={ {{{ 5,-1},{ 8,-1}},{{-1,-1},{-1,-1}}}, {{{ 9,-1},{ 9,-1}},{{ 5,-1},{ 8,-1}}}, {{{ 7,-1},{12,-1}},{{ 5,-1},{ 8,-1}}}, {{{ 5,10},{ 8, 5}},{{-1,-1},{-1,-1}}}}; unsigned short int spsmbm[MODEMAX][SUBMODEMAX]= {{0x0520,0x0520},{0x0720,0x0520},{0x05a0,0x0520},{0x0520,0x0520}}; // a85/ (a85) / a985/ a85 / a875/ a85 / a85/ (a85) #elif SD_RADAR_ID == FINLAND #define SPRSEP 45 short int sptgate[MODEMAX][SUBMODEMAX-1]={{24},{24},{24},{24}}; short int spintt[MODEMAX][SUBMODEMAX]={{ 3, 3},{ 3, 3},{ 3, 3},{ 3, 3}}; short int sponly[MODEMAX][SUBMODEMAX]={{ 0, 0},{ 0, 0},{ 0, 0},{ 0, 0}}; short int spstbm[MODEMAX][SUBMODEMAX]={{14,14},{14,14},{14,14},{14,14}}; short int spedbm[MODEMAX][SUBMODEMAX]={{ 0, 0},{ 0, 0},{ 0, 0},{ 0, 0}}; short int spbm[MODEMAX][SUBMODEMAX][2][SPBMNUM]={ {{{ 8,-1},{ 4,-1}},{{-1,-1},{-1,-1}}}, {{{ 8,-1},{ 4,-1}},{{-1,-1},{-1,-1}}}, {{{ 8,-1},{ 4,-1}},{{-1,-1},{-1,-1}}}, {{{ 8,-1},{ 4,-1}},{{-1,-1},{-1,-1}}}}; unsigned short int spsmbm[MODEMAX][SUBMODEMAX]= {{0x0520,0x0520},{0x0520,0x0520},{0x0520,0x0520},{0x0520,0x0520}}; // a85/ (a85)/ a85/ (a85) / a85/ (a85) / a85/ (a85) #elif SD_RADAR_ID == HALLEY #define SPRSEP 45 short int sptgate[MODEMAX][SUBMODEMAX-1]={{24},{17},{24},{24}}; short int spintt[MODEMAX][SUBMODEMAX]={{ 3, 3},{ 3, 3},{ 3, 3},{ 3, 3}}; //short int spintt[MODEMAX][SUBMODEMAX]={{ 4, 4},{ 4, 4},{ 4, 4},{ 4, 4}}; // is better???? short int sponly[MODEMAX][SUBMODEMAX]={{ 0, 0},{ 0, 0},{ 0, 0},{ 0, 0}}; short int spstbm[MODEMAX][SUBMODEMAX]={{ 0, 0},{ 1, 1},{ 0, 0},{ 0, 0}}; short int spedbm[MODEMAX][SUBMODEMAX]={{15,15},{15,15},{14,14},{15,15}}; short int spbm[MODEMAX][SUBMODEMAX][2][SPBMNUM]={ {{{13, 3},{10,11}},{{-1,-1},{-1,-1}}}, {{{13,-1},{ 2,-1}},{{ 3,-1},{ 3,-1}}}, {{{ 3,-1},{11,-1}},{{-1,-1},{-1,-1}}}, {{{13, 3},{10,11}},{{-1,-1},{-1,-1}}}}; unsigned short int spsmbm[MODEMAX][SUBMODEMAX]= {{0x2528,0x0528},{0x2528,0x0528},{0x0528,0x0528},{0x2528,0x0528}}; // da853/ a853 / da853/ a853 / a853/(a853) / da853/(a853) #elif SD_RADAR_ID == SANAE ////// Sanae's boresite=173.20 #define SPRSEP 45 short int sptgate[MODEMAX][SUBMODEMAX-1]={{24},{17},{12},{24}}; short int spintt[MODEMAX][SUBMODEMAX]={{ 3, 3},{ 3, 3},{ 3, 3},{ 3, 3}}; short int sponly[MODEMAX][SUBMODEMAX]={{ 0, 0},{ 0, 0},{ 0, 0},{ 0, 0}}; short int spstbm[MODEMAX][SUBMODEMAX]={{15,15},{14,15},{15,14},{15,15}}; short int spedbm[MODEMAX][SUBMODEMAX]={{ 0, 0},{ 1, 1},{ 1, 0},{ 0, 0}}; short int spbm[MODEMAX][SUBMODEMAX][2][SPBMNUM]={ {{{ 5,13},{ 4, 3}},{{-1,-1},{-1,-1}}}, {{{15,-1},{10,-1}},{{ 5,-1},{ 5,-1}}}, {{{ 5,-1},{ 5,-1}},{{ 2,-1},{ 2,-1}}}, {{{ 5,10},{ 4, 7}},{{-1,-1},{-1,-1}}}}; unsigned short int spsmbm[MODEMAX][SUBMODEMAX]= {{0x2520,0x0520},{0x8520,0x0520},{0x0520,0x0524},{0x0520,0x0520}}; // da85/ (a85)/ fa85/ a85 / a85/ a852 / a85/ (a85) #elif SD_RADAR_ID == SYOWA #define SPRSEP 45 short int sptgate[MODEMAX][SUBMODEMAX-1]={{24},{17},{18},{24}}; short int spintt[MODEMAX][SUBMODEMAX]={{ 3, 3},{ 3, 3},{ 3, 3},{ 3, 3}}; short int sponly[MODEMAX][SUBMODEMAX]={{ 0, 0},{ 0, 0},{ 0, 0},{ 0, 0}}; short int spstbm[MODEMAX][SUBMODEMAX]={{15,15},{15,15},{14,14},{15,15}}; short int spedbm[MODEMAX][SUBMODEMAX]={{ 0, 0},{ 1, 1},{ 0, 0},{ 0, 0}}; short int spbm[MODEMAX][SUBMODEMAX][2][SPBMNUM]={ {{{ 2,13},{ 8, 3}},{{-1,-1},{-1,-1}}}, {{{ 8,-1},{12,-1}},{{ 3,-1},{ 2,-1}}}, {{{ 0,-1},{ 6,-1}},{{ 3,-1},{13,-1}}}, {{{ 3, 0},{ 2,13}},{{-1,-1},{-1,-1}}}}; unsigned short int spsmbm[MODEMAX][SUBMODEMAX]= {{0x200c,0x8008},{0x8108,0x8008},{0x8009,0x8008},{0x8009,0x8008}}; // d32/ (f3) / f83/ f3 / f30/ f3 / f30 / (f3) #elif SD_RADAR_ID == SYOWAEAST #define SPRSEP 45 short int sptgate[MODEMAX][SUBMODEMAX-1]={{24},{12},{ 4},{24}}; short int spintt[MODEMAX][SUBMODEMAX]={{ 3, 3},{ 3, 3},{ 3, 3},{ 3, 3}}; short int sponly[MODEMAX][SUBMODEMAX]={{ 0, 0},{ 0, 0},{ 0, 0},{ 0, 0}}; short int spstbm[MODEMAX][SUBMODEMAX]={{ 0, 0},{ 1, 1},{ 0, 0},{ 0, 0}}; short int spedbm[MODEMAX][SUBMODEMAX]={{15,15},{15,15},{14,14},{15,15}}; short int spbm[MODEMAX][SUBMODEMAX][2][SPBMNUM]={ {{{12, 7},{ 2,11}},{{-1,-1},{-1,-1}}}, {{{13,-1},{ 2,-1}},{{ 7,-1},{ 4,-1}}}, {{{11,-1},{12,-1}},{{ 7,-1},{12,-1}}}, {{{13, 7},{10,11}},{{-1,-1},{-1,-1}}}}; unsigned short int spsmbm[MODEMAX][SUBMODEMAX]= {{0x1081,0x1081},{0x3081,0x1081},{0x1881,0x1081},{0x3081,0x1081}}; // c70 / (c70) / dc70/ c70 / cb70/ c70 / dc70/ (c70) #elif SD_RADAR_ID == TIGERTAS #define SPRSEP 45 short int sptgate[MODEMAX][SUBMODEMAX-1]={{24},{24},{24},{24}}; short int spintt[MODEMAX][SUBMODEMAX]={{ 3, 3},{ 3, 3},{ 3, 3},{ 3, 3}}; short int sponly[MODEMAX][SUBMODEMAX]={{ 0, 0},{ 0, 0},{ 0, 0},{ 0, 0}}; #ifdef BACKWARDS //their favorite short int spstbm[MODEMAX][SUBMODEMAX]={{14,14},{14,14},{15,15},{15,15}}; short int spedbm[MODEMAX][SUBMODEMAX]={{ 0, 0},{ 0, 0},{ 1, 1},{ 0, 0}}; short int spbm[MODEMAX][SUBMODEMAX][2][SPBMNUM]={ {{{15, 5},{10, 9}},{{-1,-1},{-1,-1}}}, {{{ 5,-1},{ 9,-1}},{{-1,-1},{-1,-1}}}, {{{ 5,-1},{ 5,-1}},{{-1,-1},{-1,-1}}}, {{{14, 5},{ 6, 5}},{{-1,-1},{-1,-1}}}}; #else //SuperDARN standard short int spstbm[MODEMAX][SUBMODEMAX]={{ 0, 0},{ 0, 0},{ 1, 1},{ 0, 0}}; short int spedbm[MODEMAX][SUBMODEMAX]={{15,15},{14,14},{15,15},{15,15}}; short int spbm[MODEMAX][SUBMODEMAX][2][SPBMNUM]={ {{{ 5,15},{ 8,13}},{{-1,-1},{-1,-1}}}, {{{ 5,-1},{ 8,-1}},{{-1,-1},{-1,-1}}}, {{{ 5,-1},{ 0,-1}},{{-1,-1},{-1,-1}}}, {{{14, 5},{ 6, 7}},{{-1,-1},{-1,-1}}}}; #endif unsigned short int spsmbm[MODEMAX][SUBMODEMAX]= {{0x8521,0x8521},{0x8521,0x8521},{0x8521,0x8521},{0xc521,0x8521}}; // fa850/(fa850)/ fa850/(fa850)/ fa850/(fa850)/ fea850/(fa850) #elif SD_RADAR_ID == KERGUELEN #define SPRSEP 45 short int sptgate[MODEMAX][SUBMODEMAX-1]={{24},{10},{24},{24}}; short int spintt[MODEMAX][SUBMODEMAX]={{ 3, 3},{ 3, 3},{ 3, 3},{ 3, 3}}; short int sponly[MODEMAX][SUBMODEMAX]={{ 0, 0},{ 0, 0},{ 0, 0},{ 0, 0}}; short int spstbm[MODEMAX][SUBMODEMAX]={{15,15},{14,14},{14,14},{15,15}}; short int spedbm[MODEMAX][SUBMODEMAX]={{ 0, 0},{ 0, 0},{ 0, 0},{ 0, 0}}; short int spbm[MODEMAX][SUBMODEMAX][2][SPBMNUM]={ {{{11, 6},{ 0, 7}},{{-1,-1},{-1,-1}}}, {{{ 8,-1},{ 4,-1}},{{ 6,-1},{ 1,-1}}}, {{{ 6,-1},{ 1,-1}},{{-1,-1},{-1,-1}}}, {{{11, 6},{ 0, 7}},{{-1,-1},{-1,-1}}}}; unsigned short int spsmbm[MODEMAX][SUBMODEMAX]= {{0x0d60,0x0560},{0x0560,0x0560},{0x0560,0x0560},{0x0d60,0x0560}}; // ba865/ (a865)/ a865/ a865 / a865/ (a865)/ ba865/ a865) #else // should never get here... just a dummy... //Nna Ahona! Are you Alaska, Kerguelen, B.C. or TigerNZ radar or someone else?!?! Nna Ahona! Are you KingSalmon, B.C. or TigerNZ radar or someone else?!?! //#define SPRSEP 45 //short int spintt[MODEMAX]={ 3}; //short int sponly[MODEMAX]={ 0}; //short int spstbm[MODEMAX]={ 0}; //short int spedbm[MODEMAX]={15}; //short int spbm[MODEMAX][2][SPBMNUM]={{{ 5,-1,-1},{ 8,-1,-1}}}; //unsigned short int spsmbm[MODEMAX]={0xffff}; #endif