--- /dev/null
+/* Examples of switch statements with many cases (with default values).
+ Adapted from Linux 5.9-rc1:drivers/media/v4l2-core/v4l2-ctrls.c. */
+
+/* { dg-additional-options "-O1 -Wno-analyzer-too-complex" } */
+// TODO: remove need for -Wno-analyzer-too-complex
+
+typedef unsigned int u32;
+typedef long long s64;
+typedef unsigned long long u64;
+
+enum v4l2_ctrl_type {
+ V4L2_CTRL_TYPE_INTEGER = 1,
+ V4L2_CTRL_TYPE_BOOLEAN = 2,
+ V4L2_CTRL_TYPE_MENU = 3,
+ V4L2_CTRL_TYPE_BUTTON = 4,
+ V4L2_CTRL_TYPE_INTEGER64 = 5,
+ V4L2_CTRL_TYPE_CTRL_CLASS = 6,
+ V4L2_CTRL_TYPE_STRING = 7,
+ V4L2_CTRL_TYPE_BITMASK = 8,
+ V4L2_CTRL_TYPE_INTEGER_MENU = 9,
+
+ V4L2_CTRL_COMPOUND_TYPES = 0x0100,
+ V4L2_CTRL_TYPE_U8 = 0x0100,
+ V4L2_CTRL_TYPE_U16 = 0x0101,
+ V4L2_CTRL_TYPE_U32 = 0x0102,
+ V4L2_CTRL_TYPE_AREA = 0x0106,
+};
+
+const char *v4l2_ctrl_get_name(u32 id) {
+ switch (id) {
+ case (0x00980000 | 1):
+ return "User Controls";
+ case ((0x00980000 | 0x900) + 0):
+ return "Brightness";
+ case ((0x00980000 | 0x900) + 1):
+ return "Contrast";
+ case ((0x00980000 | 0x900) + 2):
+ return "Saturation";
+ case ((0x00980000 | 0x900) + 3):
+ return "Hue";
+ case ((0x00980000 | 0x900) + 5):
+ return "Volume";
+ case ((0x00980000 | 0x900) + 6):
+ return "Balance";
+ case ((0x00980000 | 0x900) + 7):
+ return "Bass";
+ case ((0x00980000 | 0x900) + 8):
+ return "Treble";
+ case ((0x00980000 | 0x900) + 9):
+ return "Mute";
+ case ((0x00980000 | 0x900) + 10):
+ return "Loudness";
+ case ((0x00980000 | 0x900) + 11):
+ return "Black Level";
+ case ((0x00980000 | 0x900) + 12):
+ return "White Balance, Automatic";
+ case ((0x00980000 | 0x900) + 13):
+ return "Do White Balance";
+ case ((0x00980000 | 0x900) + 14):
+ return "Red Balance";
+ case ((0x00980000 | 0x900) + 15):
+ return "Blue Balance";
+ case ((0x00980000 | 0x900) + 16):
+ return "Gamma";
+ case ((0x00980000 | 0x900) + 17):
+ return "Exposure";
+ case ((0x00980000 | 0x900) + 18):
+ return "Gain, Automatic";
+ case ((0x00980000 | 0x900) + 19):
+ return "Gain";
+ case ((0x00980000 | 0x900) + 20):
+ return "Horizontal Flip";
+ case ((0x00980000 | 0x900) + 21):
+ return "Vertical Flip";
+ case ((0x00980000 | 0x900) + 24):
+ return "Power Line Frequency";
+ case ((0x00980000 | 0x900) + 25):
+ return "Hue, Automatic";
+ case ((0x00980000 | 0x900) + 26):
+ return "White Balance Temperature";
+ case ((0x00980000 | 0x900) + 27):
+ return "Sharpness";
+ case ((0x00980000 | 0x900) + 28):
+ return "Backlight Compensation";
+ case ((0x00980000 | 0x900) + 29):
+ return "Chroma AGC";
+ case ((0x00980000 | 0x900) + 30):
+ return "Color Killer";
+ case ((0x00980000 | 0x900) + 31):
+ return "Color Effects";
+ case ((0x00980000 | 0x900) + 32):
+ return "Brightness, Automatic";
+ case ((0x00980000 | 0x900) + 33):
+ return "Band-Stop Filter";
+ case ((0x00980000 | 0x900) + 34):
+ return "Rotate";
+ case ((0x00980000 | 0x900) + 35):
+ return "Background Color";
+ case ((0x00980000 | 0x900) + 36):
+ return "Chroma Gain";
+ case ((0x00980000 | 0x900) + 37):
+ return "Illuminator 1";
+ case ((0x00980000 | 0x900) + 38):
+ return "Illuminator 2";
+ case ((0x00980000 | 0x900) + 39):
+ return "Min Number of Capture Buffers";
+ case ((0x00980000 | 0x900) + 40):
+ return "Min Number of Output Buffers";
+ case ((0x00980000 | 0x900) + 41):
+ return "Alpha Component";
+ case ((0x00980000 | 0x900) + 42):
+ return "Color Effects, CbCr";
+ case (0x00990000 | 1):
+ return "Codec Controls";
+ case ((0x00990000 | 0x900) + 0):
+ return "Stream Type";
+ case ((0x00990000 | 0x900) + 1):
+ return "Stream PMT Program ID";
+ case ((0x00990000 | 0x900) + 2):
+ return "Stream Audio Program ID";
+ case ((0x00990000 | 0x900) + 3):
+ return "Stream Video Program ID";
+ case ((0x00990000 | 0x900) + 4):
+ return "Stream PCR Program ID";
+ case ((0x00990000 | 0x900) + 5):
+ return "Stream PES Audio ID";
+ case ((0x00990000 | 0x900) + 6):
+ return "Stream PES Video ID";
+ case ((0x00990000 | 0x900) + 7):
+ return "Stream VBI Format";
+ case ((0x00990000 | 0x900) + 100):
+ return "Audio Sampling Frequency";
+ case ((0x00990000 | 0x900) + 101):
+ return "Audio Encoding";
+ case ((0x00990000 | 0x900) + 102):
+ return "Audio Layer I Bitrate";
+ case ((0x00990000 | 0x900) + 103):
+ return "Audio Layer II Bitrate";
+ case ((0x00990000 | 0x900) + 104):
+ return "Audio Layer III Bitrate";
+ case ((0x00990000 | 0x900) + 105):
+ return "Audio Stereo Mode";
+ case ((0x00990000 | 0x900) + 106):
+ return "Audio Stereo Mode Extension";
+ case ((0x00990000 | 0x900) + 107):
+ return "Audio Emphasis";
+ case ((0x00990000 | 0x900) + 108):
+ return "Audio CRC";
+ case ((0x00990000 | 0x900) + 109):
+ return "Audio Mute";
+ case ((0x00990000 | 0x900) + 110):
+ return "Audio AAC Bitrate";
+ case ((0x00990000 | 0x900) + 111):
+ return "Audio AC-3 Bitrate";
+ case ((0x00990000 | 0x900) + 112):
+ return "Audio Playback";
+ case ((0x00990000 | 0x900) + 113):
+ return "Audio Multilingual Playback";
+ case ((0x00990000 | 0x900) + 200):
+ return "Video Encoding";
+ case ((0x00990000 | 0x900) + 201):
+ return "Video Aspect";
+ case ((0x00990000 | 0x900) + 202):
+ return "Video B Frames";
+ case ((0x00990000 | 0x900) + 203):
+ return "Video GOP Size";
+ case ((0x00990000 | 0x900) + 204):
+ return "Video GOP Closure";
+ case ((0x00990000 | 0x900) + 205):
+ return "Video Pulldown";
+ case ((0x00990000 | 0x900) + 206):
+ return "Video Bitrate Mode";
+ case ((0x00990000 | 0x900) + 207):
+ return "Video Bitrate";
+ case ((0x00990000 | 0x900) + 208):
+ return "Video Peak Bitrate";
+ case ((0x00990000 | 0x900) + 209):
+ return "Video Temporal Decimation";
+ case ((0x00990000 | 0x900) + 210):
+ return "Video Mute";
+ case ((0x00990000 | 0x900) + 211):
+ return "Video Mute YUV";
+ case ((0x00990000 | 0x900) + 212):
+ return "Decoder Slice Interface";
+ case ((0x00990000 | 0x900) + 213):
+ return "MPEG4 Loop Filter Enable";
+ case ((0x00990000 | 0x900) + 214):
+ return "Number of Intra Refresh MBs";
+ case ((0x00990000 | 0x900) + 215):
+ return "Frame Level Rate Control Enable";
+ case ((0x00990000 | 0x900) + 218):
+ return "H264 MB Level Rate Control";
+ case ((0x00990000 | 0x900) + 216):
+ return "Sequence Header Mode";
+ case ((0x00990000 | 0x900) + 217):
+ return "Max Number of Reference Pics";
+ case ((0x00990000 | 0x900) + 300):
+ return "H263 I-Frame QP Value";
+ case ((0x00990000 | 0x900) + 301):
+ return "H263 P-Frame QP Value";
+ case ((0x00990000 | 0x900) + 302):
+ return "H263 B-Frame QP Value";
+ case ((0x00990000 | 0x900) + 303):
+ return "H263 Minimum QP Value";
+ case ((0x00990000 | 0x900) + 304):
+ return "H263 Maximum QP Value";
+ case ((0x00990000 | 0x900) + 350):
+ return "H264 I-Frame QP Value";
+ case ((0x00990000 | 0x900) + 351):
+ return "H264 P-Frame QP Value";
+ case ((0x00990000 | 0x900) + 352):
+ return "H264 B-Frame QP Value";
+ case ((0x00990000 | 0x900) + 354):
+ return "H264 Maximum QP Value";
+ case ((0x00990000 | 0x900) + 353):
+ return "H264 Minimum QP Value";
+ case ((0x00990000 | 0x900) + 355):
+ return "H264 8x8 Transform Enable";
+ case ((0x00990000 | 0x900) + 356):
+ return "H264 CPB Buffer Size";
+ case ((0x00990000 | 0x900) + 357):
+ return "H264 Entropy Mode";
+ case ((0x00990000 | 0x900) + 358):
+ return "H264 I-Frame Period";
+ case ((0x00990000 | 0x900) + 359):
+ return "H264 Level";
+ case ((0x00990000 | 0x900) + 360):
+ return "H264 Loop Filter Alpha Offset";
+ case ((0x00990000 | 0x900) + 361):
+ return "H264 Loop Filter Beta Offset";
+ case ((0x00990000 | 0x900) + 362):
+ return "H264 Loop Filter Mode";
+ case ((0x00990000 | 0x900) + 363):
+ return "H264 Profile";
+ case ((0x00990000 | 0x900) + 364):
+ return "Vertical Size of SAR";
+ case ((0x00990000 | 0x900) + 365):
+ return "Horizontal Size of SAR";
+ case ((0x00990000 | 0x900) + 366):
+ return "Aspect Ratio VUI Enable";
+ case ((0x00990000 | 0x900) + 367):
+ return "VUI Aspect Ratio IDC";
+ case ((0x00990000 | 0x900) + 368):
+ return "H264 Enable Frame Packing SEI";
+ case ((0x00990000 | 0x900) + 369):
+ return "H264 Set Curr. Frame as Frame0";
+ case ((0x00990000 | 0x900) + 370):
+ return "H264 FP Arrangement Type";
+ case ((0x00990000 | 0x900) + 371):
+ return "H264 Flexible MB Ordering";
+ case ((0x00990000 | 0x900) + 372):
+ return "H264 Map Type for FMO";
+ case ((0x00990000 | 0x900) + 373):
+ return "H264 FMO Number of Slice Groups";
+ case ((0x00990000 | 0x900) + 374):
+ return "H264 FMO Direction of Change";
+ case ((0x00990000 | 0x900) + 375):
+ return "H264 FMO Size of 1st Slice Grp";
+ case ((0x00990000 | 0x900) + 376):
+ return "H264 FMO No. of Consecutive MBs";
+ case ((0x00990000 | 0x900) + 377):
+ return "H264 Arbitrary Slice Ordering";
+ case ((0x00990000 | 0x900) + 378):
+ return "H264 ASO Slice Order";
+ case ((0x00990000 | 0x900) + 379):
+ return "Enable H264 Hierarchical Coding";
+ case ((0x00990000 | 0x900) + 380):
+ return "H264 Hierarchical Coding Type";
+ case ((0x00990000 | 0x900) + 381):
+ return "H264 Number of HC Layers";
+ case ((0x00990000 | 0x900) + 382):
+ return "H264 Set QP Value for HC Layers";
+ case ((0x00990000 | 0x900) + 383):
+ return "H264 Constrained Intra Pred";
+ case ((0x00990000 | 0x900) + 384):
+ return "H264 Chroma QP Index Offset";
+ case ((0x00990000 | 0x900) + 385):
+ return "H264 I-Frame Minimum QP Value";
+ case ((0x00990000 | 0x900) + 386):
+ return "H264 I-Frame Maximum QP Value";
+ case ((0x00990000 | 0x900) + 387):
+ return "H264 P-Frame Minimum QP Value";
+ case ((0x00990000 | 0x900) + 388):
+ return "H264 P-Frame Maximum QP Value";
+ case ((0x00990000 | 0x900) + 1000):
+ return "H264 Sequence Parameter Set";
+ case ((0x00990000 | 0x900) + 1001):
+ return "H264 Picture Parameter Set";
+ case ((0x00990000 | 0x900) + 1002):
+ return "H264 Scaling Matrix";
+ case ((0x00990000 | 0x900) + 1003):
+ return "H264 Slice Parameters";
+ case ((0x00990000 | 0x900) + 1004):
+ return "H264 Decode Parameters";
+ case ((0x00990000 | 0x900) + 1005):
+ return "H264 Decode Mode";
+ case ((0x00990000 | 0x900) + 1006):
+ return "H264 Start Code";
+ case ((0x00990000 | 0x900) + 270):
+ return "MPEG2 Level";
+ case ((0x00990000 | 0x900) + 271):
+ return "MPEG2 Profile";
+ case ((0x00990000 | 0x900) + 400):
+ return "MPEG4 I-Frame QP Value";
+ case ((0x00990000 | 0x900) + 401):
+ return "MPEG4 P-Frame QP Value";
+ case ((0x00990000 | 0x900) + 402):
+ return "MPEG4 B-Frame QP Value";
+ case ((0x00990000 | 0x900) + 403):
+ return "MPEG4 Minimum QP Value";
+ case ((0x00990000 | 0x900) + 404):
+ return "MPEG4 Maximum QP Value";
+ case ((0x00990000 | 0x900) + 405):
+ return "MPEG4 Level";
+ case ((0x00990000 | 0x900) + 406):
+ return "MPEG4 Profile";
+ case ((0x00990000 | 0x900) + 407):
+ return "Quarter Pixel Search Enable";
+ case ((0x00990000 | 0x900) + 219):
+ return "Maximum Bytes in a Slice";
+ case ((0x00990000 | 0x900) + 220):
+ return "Number of MBs in a Slice";
+ case ((0x00990000 | 0x900) + 221):
+ return "Slice Partitioning Method";
+ case ((0x00990000 | 0x900) + 222):
+ return "VBV Buffer Size";
+ case ((0x00990000 | 0x900) + 223):
+ return "Video Decoder PTS";
+ case ((0x00990000 | 0x900) + 224):
+ return "Video Decoder Frame Count";
+ case ((0x00990000 | 0x900) + 225):
+ return "Initial Delay for VBV Control";
+ case ((0x00990000 | 0x900) + 227):
+ return "Horizontal MV Search Range";
+ case ((0x00990000 | 0x900) + 228):
+ return "Vertical MV Search Range";
+ case ((0x00990000 | 0x900) + 226):
+ return "Repeat Sequence Header";
+ case ((0x00990000 | 0x900) + 229):
+ return "Force Key Frame";
+ case ((0x00990000 | 0x900) + 250):
+ return "MPEG-2 Slice Parameters";
+ case ((0x00990000 | 0x900) + 251):
+ return "MPEG-2 Quantization Matrices";
+ case ((0x00990000 | 0x900) + 292):
+ return "FWHT Stateless Parameters";
+ case ((0x00990000 | 0x900) + 290):
+ return "FWHT I-Frame QP Value";
+ case ((0x00990000 | 0x900) + 291):
+ return "FWHT P-Frame QP Value";
+
+ case ((0x00990000 | 0x900) + 500):
+ return "VPX Number of Partitions";
+ case ((0x00990000 | 0x900) + 501):
+ return "VPX Intra Mode Decision Disable";
+ case ((0x00990000 | 0x900) + 502):
+ return "VPX No. of Refs for P Frame";
+ case ((0x00990000 | 0x900) + 503):
+ return "VPX Loop Filter Level Range";
+ case ((0x00990000 | 0x900) + 504):
+ return "VPX Deblocking Effect Control";
+ case ((0x00990000 | 0x900) + 505):
+ return "VPX Golden Frame Refresh Period";
+ case ((0x00990000 | 0x900) + 506):
+ return "VPX Golden Frame Indicator";
+ case ((0x00990000 | 0x900) + 507):
+ return "VPX Minimum QP Value";
+ case ((0x00990000 | 0x900) + 508):
+ return "VPX Maximum QP Value";
+ case ((0x00990000 | 0x900) + 509):
+ return "VPX I-Frame QP Value";
+ case ((0x00990000 | 0x900) + 510):
+ return "VPX P-Frame QP Value";
+ case ((0x00990000 | 0x900) + 511):
+ return "VP8 Profile";
+ case ((0x00990000 | 0x900) + 512):
+ return "VP9 Profile";
+ case ((0x00990000 | 0x900) + 2000):
+ return "VP8 Frame Header";
+
+ case ((0x00990000 | 0x900) + 602):
+ return "HEVC I-Frame QP Value";
+ case ((0x00990000 | 0x900) + 603):
+ return "HEVC P-Frame QP Value";
+ case ((0x00990000 | 0x900) + 604):
+ return "HEVC B-Frame QP Value";
+ case ((0x00990000 | 0x900) + 600):
+ return "HEVC Minimum QP Value";
+ case ((0x00990000 | 0x900) + 601):
+ return "HEVC Maximum QP Value";
+ case ((0x00990000 | 0x900) + 615):
+ return "HEVC Profile";
+ case ((0x00990000 | 0x900) + 616):
+ return "HEVC Level";
+ case ((0x00990000 | 0x900) + 618):
+ return "HEVC Tier";
+ case ((0x00990000 | 0x900) + 617):
+ return "HEVC Frame Rate Resolution";
+ case ((0x00990000 | 0x900) + 619):
+ return "HEVC Maximum Coding Unit Depth";
+ case ((0x00990000 | 0x900) + 623):
+ return "HEVC Refresh Type";
+ case ((0x00990000 | 0x900) + 626):
+ return "HEVC Constant Intra Prediction";
+ case ((0x00990000 | 0x900) + 625):
+ return "HEVC Lossless Encoding";
+ case ((0x00990000 | 0x900) + 627):
+ return "HEVC Wavefront";
+ case ((0x00990000 | 0x900) + 620):
+ return "HEVC Loop Filter";
+ case ((0x00990000 | 0x900) + 605):
+ return "HEVC QP Values";
+ case ((0x00990000 | 0x900) + 606):
+ return "HEVC Hierarchical Coding Type";
+ case ((0x00990000 | 0x900) + 607):
+ return "HEVC Hierarchical Coding Layer";
+ case ((0x00990000 | 0x900) + 608):
+ return "HEVC Hierarchical Layer 0 QP";
+ case ((0x00990000 | 0x900) + 609):
+ return "HEVC Hierarchical Layer 1 QP";
+ case ((0x00990000 | 0x900) + 610):
+ return "HEVC Hierarchical Layer 2 QP";
+ case ((0x00990000 | 0x900) + 611):
+ return "HEVC Hierarchical Layer 3 QP";
+ case ((0x00990000 | 0x900) + 612):
+ return "HEVC Hierarchical Layer 4 QP";
+ case ((0x00990000 | 0x900) + 613):
+ return "HEVC Hierarchical Layer 5 QP";
+ case ((0x00990000 | 0x900) + 614):
+ return "HEVC Hierarchical Layer 6 QP";
+ case ((0x00990000 | 0x900) + 636):
+ return "HEVC Hierarchical Lay 0 BitRate";
+ case ((0x00990000 | 0x900) + 637):
+ return "HEVC Hierarchical Lay 1 BitRate";
+ case ((0x00990000 | 0x900) + 638):
+ return "HEVC Hierarchical Lay 2 BitRate";
+ case ((0x00990000 | 0x900) + 639):
+ return "HEVC Hierarchical Lay 3 BitRate";
+ case ((0x00990000 | 0x900) + 640):
+ return "HEVC Hierarchical Lay 4 BitRate";
+ case ((0x00990000 | 0x900) + 641):
+ return "HEVC Hierarchical Lay 5 BitRate";
+ case ((0x00990000 | 0x900) + 642):
+ return "HEVC Hierarchical Lay 6 BitRate";
+ case ((0x00990000 | 0x900) + 628):
+ return "HEVC General PB";
+ case ((0x00990000 | 0x900) + 629):
+ return "HEVC Temporal ID";
+ case ((0x00990000 | 0x900) + 630):
+ return "HEVC Strong Intra Smoothing";
+ case ((0x00990000 | 0x900) + 632):
+ return "HEVC Intra PU Split";
+ case ((0x00990000 | 0x900) + 633):
+ return "HEVC TMV Prediction";
+ case ((0x00990000 | 0x900) + 631):
+ return "HEVC Max Num of Candidate MVs";
+ case ((0x00990000 | 0x900) + 634):
+ return "HEVC ENC Without Startcode";
+ case ((0x00990000 | 0x900) + 624):
+ return "HEVC Num of I-Frame b/w 2 IDR";
+ case ((0x00990000 | 0x900) + 621):
+ return "HEVC Loop Filter Beta Offset";
+ case ((0x00990000 | 0x900) + 622):
+ return "HEVC Loop Filter TC Offset";
+ case ((0x00990000 | 0x900) + 635):
+ return "HEVC Size of Length Field";
+ case ((0x00990000 | 0x900) + 643):
+ return "Reference Frames for a P-Frame";
+ case ((0x00990000 | 0x900) + 644):
+ return "Prepend SPS and PPS to IDR";
+ case ((0x00990000 | 0x900) + 1008):
+ return "HEVC Sequence Parameter Set";
+ case ((0x00990000 | 0x900) + 1009):
+ return "HEVC Picture Parameter Set";
+ case ((0x00990000 | 0x900) + 1010):
+ return "HEVC Slice Parameters";
+ case ((0x00990000 | 0x900) + 1015):
+ return "HEVC Decode Mode";
+ case ((0x00990000 | 0x900) + 1016):
+ return "HEVC Start Code";
+
+ case (0x009a0000 | 1):
+ return "Camera Controls";
+ case ((0x009a0000 | 0x900) + 1):
+ return "Auto Exposure";
+ case ((0x009a0000 | 0x900) + 2):
+ return "Exposure Time, Absolute";
+ case ((0x009a0000 | 0x900) + 3):
+ return "Exposure, Dynamic Framerate";
+ case ((0x009a0000 | 0x900) + 4):
+ return "Pan, Relative";
+ case ((0x009a0000 | 0x900) + 5):
+ return "Tilt, Relative";
+ case ((0x009a0000 | 0x900) + 6):
+ return "Pan, Reset";
+ case ((0x009a0000 | 0x900) + 7):
+ return "Tilt, Reset";
+ case ((0x009a0000 | 0x900) + 8):
+ return "Pan, Absolute";
+ case ((0x009a0000 | 0x900) + 9):
+ return "Tilt, Absolute";
+ case ((0x009a0000 | 0x900) + 10):
+ return "Focus, Absolute";
+ case ((0x009a0000 | 0x900) + 11):
+ return "Focus, Relative";
+ case ((0x009a0000 | 0x900) + 12):
+ return "Focus, Automatic Continuous";
+ case ((0x009a0000 | 0x900) + 13):
+ return "Zoom, Absolute";
+ case ((0x009a0000 | 0x900) + 14):
+ return "Zoom, Relative";
+ case ((0x009a0000 | 0x900) + 15):
+ return "Zoom, Continuous";
+ case ((0x009a0000 | 0x900) + 16):
+ return "Privacy";
+ case ((0x009a0000 | 0x900) + 17):
+ return "Iris, Absolute";
+ case ((0x009a0000 | 0x900) + 18):
+ return "Iris, Relative";
+ case ((0x009a0000 | 0x900) + 19):
+ return "Auto Exposure, Bias";
+ case ((0x009a0000 | 0x900) + 20):
+ return "White Balance, Auto & Preset";
+ case ((0x009a0000 | 0x900) + 21):
+ return "Wide Dynamic Range";
+ case ((0x009a0000 | 0x900) + 22):
+ return "Image Stabilization";
+ case ((0x009a0000 | 0x900) + 23):
+ return "ISO Sensitivity";
+ case ((0x009a0000 | 0x900) + 24):
+ return "ISO Sensitivity, Auto";
+ case ((0x009a0000 | 0x900) + 25):
+ return "Exposure, Metering Mode";
+ case ((0x009a0000 | 0x900) + 26):
+ return "Scene Mode";
+ case ((0x009a0000 | 0x900) + 27):
+ return "3A Lock";
+ case ((0x009a0000 | 0x900) + 28):
+ return "Auto Focus, Start";
+ case ((0x009a0000 | 0x900) + 29):
+ return "Auto Focus, Stop";
+ case ((0x009a0000 | 0x900) + 30):
+ return "Auto Focus, Status";
+ case ((0x009a0000 | 0x900) + 31):
+ return "Auto Focus, Range";
+ case ((0x009a0000 | 0x900) + 32):
+ return "Pan, Speed";
+ case ((0x009a0000 | 0x900) + 33):
+ return "Tilt, Speed";
+ case ((0x009e0000 | 0x900) + 8):
+ return "Unit Cell Size";
+ case ((0x009a0000 | 0x900) + 34):
+ return "Camera Orientation";
+ case ((0x009a0000 | 0x900) + 35):
+ return "Camera Sensor Rotation";
+
+ case (0x009b0000 | 1):
+ return "FM Radio Modulator Controls";
+ case ((0x009b0000 | 0x900) + 1):
+ return "RDS Signal Deviation";
+ case ((0x009b0000 | 0x900) + 2):
+ return "RDS Program ID";
+ case ((0x009b0000 | 0x900) + 3):
+ return "RDS Program Type";
+ case ((0x009b0000 | 0x900) + 5):
+ return "RDS PS Name";
+ case ((0x009b0000 | 0x900) + 6):
+ return "RDS Radio Text";
+ case ((0x009b0000 | 0x900) + 7):
+ return "RDS Stereo";
+ case ((0x009b0000 | 0x900) + 8):
+ return "RDS Artificial Head";
+ case ((0x009b0000 | 0x900) + 9):
+ return "RDS Compressed";
+ case ((0x009b0000 | 0x900) + 10):
+ return "RDS Dynamic PTY";
+ case ((0x009b0000 | 0x900) + 11):
+ return "RDS Traffic Announcement";
+ case ((0x009b0000 | 0x900) + 12):
+ return "RDS Traffic Program";
+ case ((0x009b0000 | 0x900) + 13):
+ return "RDS Music";
+ case ((0x009b0000 | 0x900) + 14):
+ return "RDS Enable Alt Frequencies";
+ case ((0x009b0000 | 0x900) + 15):
+ return "RDS Alternate Frequencies";
+ case ((0x009b0000 | 0x900) + 64):
+ return "Audio Limiter Feature Enabled";
+ case ((0x009b0000 | 0x900) + 65):
+ return "Audio Limiter Release Time";
+ case ((0x009b0000 | 0x900) + 66):
+ return "Audio Limiter Deviation";
+ case ((0x009b0000 | 0x900) + 80):
+ return "Audio Compression Enabled";
+ case ((0x009b0000 | 0x900) + 81):
+ return "Audio Compression Gain";
+ case ((0x009b0000 | 0x900) + 82):
+ return "Audio Compression Threshold";
+ case ((0x009b0000 | 0x900) + 83):
+ return "Audio Compression Attack Time";
+ case ((0x009b0000 | 0x900) + 84):
+ return "Audio Compression Release Time";
+ case ((0x009b0000 | 0x900) + 96):
+ return "Pilot Tone Feature Enabled";
+ case ((0x009b0000 | 0x900) + 97):
+ return "Pilot Tone Deviation";
+ case ((0x009b0000 | 0x900) + 98):
+ return "Pilot Tone Frequency";
+ case ((0x009b0000 | 0x900) + 112):
+ return "Pre-Emphasis";
+ case ((0x009b0000 | 0x900) + 113):
+ return "Tune Power Level";
+ case ((0x009b0000 | 0x900) + 114):
+ return "Tune Antenna Capacitor";
+
+ case (0x009c0000 | 1):
+ return "Flash Controls";
+ case ((0x009c0000 | 0x900) + 1):
+ return "LED Mode";
+ case ((0x009c0000 | 0x900) + 2):
+ return "Strobe Source";
+ case ((0x009c0000 | 0x900) + 3):
+ return "Strobe";
+ case ((0x009c0000 | 0x900) + 4):
+ return "Stop Strobe";
+ case ((0x009c0000 | 0x900) + 5):
+ return "Strobe Status";
+ case ((0x009c0000 | 0x900) + 6):
+ return "Strobe Timeout";
+ case ((0x009c0000 | 0x900) + 7):
+ return "Intensity, Flash Mode";
+ case ((0x009c0000 | 0x900) + 8):
+ return "Intensity, Torch Mode";
+ case ((0x009c0000 | 0x900) + 9):
+ return "Intensity, Indicator";
+ case ((0x009c0000 | 0x900) + 10):
+ return "Faults";
+ case ((0x009c0000 | 0x900) + 11):
+ return "Charge";
+ case ((0x009c0000 | 0x900) + 12):
+ return "Ready to Strobe";
+
+ case (0x009d0000 | 1):
+ return "JPEG Compression Controls";
+ case ((0x009d0000 | 0x900) + 1):
+ return "Chroma Subsampling";
+ case ((0x009d0000 | 0x900) + 2):
+ return "Restart Interval";
+ case ((0x009d0000 | 0x900) + 3):
+ return "Compression Quality";
+ case ((0x009d0000 | 0x900) + 4):
+ return "Active Markers";
+
+ case (0x009e0000 | 1):
+ return "Image Source Controls";
+ case ((0x009e0000 | 0x900) + 1):
+ return "Vertical Blanking";
+ case ((0x009e0000 | 0x900) + 2):
+ return "Horizontal Blanking";
+ case ((0x009e0000 | 0x900) + 3):
+ return "Analogue Gain";
+ case ((0x009e0000 | 0x900) + 4):
+ return "Red Pixel Value";
+ case ((0x009e0000 | 0x900) + 5):
+ return "Green (Red) Pixel Value";
+ case ((0x009e0000 | 0x900) + 6):
+ return "Blue Pixel Value";
+ case ((0x009e0000 | 0x900) + 7):
+ return "Green (Blue) Pixel Value";
+
+ case (0x009f0000 | 1):
+ return "Image Processing Controls";
+ case ((0x009f0000 | 0x900) + 1):
+ return "Link Frequency";
+ case ((0x009f0000 | 0x900) + 2):
+ return "Pixel Rate";
+ case ((0x009f0000 | 0x900) + 3):
+ return "Test Pattern";
+ case ((0x009f0000 | 0x900) + 4):
+ return "Deinterlacing Mode";
+ case ((0x009f0000 | 0x900) + 5):
+ return "Digital Gain";
+
+ case (0x00a00000 | 1):
+ return "Digital Video Controls";
+ case ((0x00a00000 | 0x900) + 1):
+ return "Hotplug Present";
+ case ((0x00a00000 | 0x900) + 2):
+ return "RxSense Present";
+ case ((0x00a00000 | 0x900) + 3):
+ return "EDID Present";
+ case ((0x00a00000 | 0x900) + 4):
+ return "Transmit Mode";
+ case ((0x00a00000 | 0x900) + 5):
+ return "Tx RGB Quantization Range";
+ case ((0x00a00000 | 0x900) + 6):
+ return "Tx IT Content Type";
+ case ((0x00a00000 | 0x900) + 100):
+ return "Power Present";
+ case ((0x00a00000 | 0x900) + 101):
+ return "Rx RGB Quantization Range";
+ case ((0x00a00000 | 0x900) + 102):
+ return "Rx IT Content Type";
+
+ case (0x00a10000 | 1):
+ return "FM Radio Receiver Controls";
+ case ((0x00a10000 | 0x900) + 1):
+ return "De-Emphasis";
+ case ((0x00a10000 | 0x900) + 2):
+ return "RDS Reception";
+ case (0x00a20000 | 1):
+ return "RF Tuner Controls";
+ case ((0x00a20000 | 0x900) + 32):
+ return "RF Gain";
+ case ((0x00a20000 | 0x900) + 41):
+ return "LNA Gain, Auto";
+ case ((0x00a20000 | 0x900) + 42):
+ return "LNA Gain";
+ case ((0x00a20000 | 0x900) + 51):
+ return "Mixer Gain, Auto";
+ case ((0x00a20000 | 0x900) + 52):
+ return "Mixer Gain";
+ case ((0x00a20000 | 0x900) + 61):
+ return "IF Gain, Auto";
+ case ((0x00a20000 | 0x900) + 62):
+ return "IF Gain";
+ case ((0x00a20000 | 0x900) + 11):
+ return "Bandwidth, Auto";
+ case ((0x00a20000 | 0x900) + 12):
+ return "Bandwidth";
+ case ((0x00a20000 | 0x900) + 91):
+ return "PLL Lock";
+ case ((0x00a10000 | 0x900) + 3):
+ return "RDS Program Type";
+ case ((0x00a10000 | 0x900) + 4):
+ return "RDS PS Name";
+ case ((0x00a10000 | 0x900) + 5):
+ return "RDS Radio Text";
+ case ((0x00a10000 | 0x900) + 6):
+ return "RDS Traffic Announcement";
+ case ((0x00a10000 | 0x900) + 7):
+ return "RDS Traffic Program";
+ case ((0x00a10000 | 0x900) + 8):
+ return "RDS Music";
+
+ case (0x00a30000 | 1):
+ return "Detection Controls";
+ case ((0x00a30000 | 0x900) + 1):
+ return "Motion Detection Mode";
+ case ((0x00a30000 | 0x900) + 2):
+ return "MD Global Threshold";
+ case ((0x00a30000 | 0x900) + 3):
+ return "MD Threshold Grid";
+ case ((0x00a30000 | 0x900) + 4):
+ return "MD Region Grid";
+ default:
+ return ((void *)0);
+ }
+}
+
+void v4l2_ctrl_fill(u32 id, const char **name, enum v4l2_ctrl_type *type,
+ s64 *min, s64 *max, u64 *step, s64 *def, u32 *flags) {
+ *name = v4l2_ctrl_get_name(id);
+ *flags = 0;
+
+ switch (id) {
+ case ((0x00980000 | 0x900) + 9):
+ case ((0x00980000 | 0x900) + 10):
+ case ((0x00980000 | 0x900) + 12):
+ case ((0x00980000 | 0x900) + 18):
+ case ((0x00980000 | 0x900) + 20):
+ case ((0x00980000 | 0x900) + 21):
+ case ((0x00980000 | 0x900) + 25):
+ case ((0x00980000 | 0x900) + 29):
+ case ((0x00980000 | 0x900) + 30):
+ case ((0x00980000 | 0x900) + 32):
+ case ((0x00990000 | 0x900) + 109):
+ case ((0x00990000 | 0x900) + 210):
+ case ((0x00990000 | 0x900) + 204):
+ case ((0x00990000 | 0x900) + 205):
+ case ((0x009a0000 | 0x900) + 3):
+ case ((0x009a0000 | 0x900) + 12):
+ case ((0x009a0000 | 0x900) + 16):
+ case ((0x009b0000 | 0x900) + 64):
+ case ((0x009b0000 | 0x900) + 80):
+ case ((0x009b0000 | 0x900) + 96):
+ case ((0x00980000 | 0x900) + 37):
+ case ((0x00980000 | 0x900) + 38):
+ case ((0x009c0000 | 0x900) + 5):
+ case ((0x009c0000 | 0x900) + 11):
+ case ((0x009c0000 | 0x900) + 12):
+ case ((0x00990000 | 0x900) + 213):
+ case ((0x00990000 | 0x900) + 212):
+ case ((0x00990000 | 0x900) + 215):
+ case ((0x00990000 | 0x900) + 218):
+ case ((0x00990000 | 0x900) + 355):
+ case ((0x00990000 | 0x900) + 366):
+ case ((0x00990000 | 0x900) + 407):
+ case ((0x00990000 | 0x900) + 226):
+ case ((0x009a0000 | 0x900) + 21):
+ case ((0x009a0000 | 0x900) + 22):
+ case ((0x00a10000 | 0x900) + 2):
+ case ((0x00a20000 | 0x900) + 41):
+ case ((0x00a20000 | 0x900) + 51):
+ case ((0x00a20000 | 0x900) + 61):
+ case ((0x00a20000 | 0x900) + 11):
+ case ((0x00a20000 | 0x900) + 91):
+ case ((0x009b0000 | 0x900) + 7):
+ case ((0x009b0000 | 0x900) + 8):
+ case ((0x009b0000 | 0x900) + 9):
+ case ((0x009b0000 | 0x900) + 10):
+ case ((0x009b0000 | 0x900) + 11):
+ case ((0x009b0000 | 0x900) + 12):
+ case ((0x009b0000 | 0x900) + 13):
+ case ((0x009b0000 | 0x900) + 14):
+ case ((0x00a10000 | 0x900) + 6):
+ case ((0x00a10000 | 0x900) + 7):
+ case ((0x00a10000 | 0x900) + 8):
+ *type = V4L2_CTRL_TYPE_BOOLEAN;
+ *min = 0;
+ *max = *step = 1;
+ break;
+ case ((0x00980000 | 0x900) + 34):
+ *type = V4L2_CTRL_TYPE_INTEGER;
+ *flags |= 0x0400;
+ break;
+ case ((0x00990000 | 0x900) + 227):
+ case ((0x00990000 | 0x900) + 228):
+ *type = V4L2_CTRL_TYPE_INTEGER;
+ break;
+ case ((0x00990000 | 0x900) + 229):
+ case ((0x009a0000 | 0x900) + 6):
+ case ((0x009a0000 | 0x900) + 7):
+ case ((0x009c0000 | 0x900) + 3):
+ case ((0x009c0000 | 0x900) + 4):
+ case ((0x009a0000 | 0x900) + 28):
+ case ((0x009a0000 | 0x900) + 29):
+ case ((0x00980000 | 0x900) + 13):
+ *type = V4L2_CTRL_TYPE_BUTTON;
+ *flags |= 0x0040 | 0x0200;
+ *min = *max = *step = *def = 0;
+ break;
+ case ((0x00980000 | 0x900) + 24):
+ case ((0x00990000 | 0x900) + 100):
+ case ((0x00990000 | 0x900) + 101):
+ case ((0x00990000 | 0x900) + 102):
+ case ((0x00990000 | 0x900) + 103):
+ case ((0x00990000 | 0x900) + 104):
+ case ((0x00990000 | 0x900) + 111):
+ case ((0x00990000 | 0x900) + 105):
+ case ((0x00990000 | 0x900) + 106):
+ case ((0x00990000 | 0x900) + 107):
+ case ((0x00990000 | 0x900) + 108):
+ case ((0x00990000 | 0x900) + 112):
+ case ((0x00990000 | 0x900) + 113):
+ case ((0x00990000 | 0x900) + 200):
+ case ((0x00990000 | 0x900) + 201):
+ case ((0x00990000 | 0x900) + 206):
+ case ((0x00990000 | 0x900) + 0):
+ case ((0x00990000 | 0x900) + 7):
+ case ((0x009a0000 | 0x900) + 1):
+ case ((0x009a0000 | 0x900) + 31):
+ case ((0x00980000 | 0x900) + 31):
+ case ((0x009a0000 | 0x900) + 20):
+ case ((0x009b0000 | 0x900) + 112):
+ case ((0x009c0000 | 0x900) + 1):
+ case ((0x009c0000 | 0x900) + 2):
+ case ((0x00990000 | 0x900) + 216):
+ case ((0x00990000 | 0x900) + 221):
+ case ((0x00990000 | 0x900) + 357):
+ case ((0x00990000 | 0x900) + 359):
+ case ((0x00990000 | 0x900) + 362):
+ case ((0x00990000 | 0x900) + 363):
+ case ((0x00990000 | 0x900) + 367):
+ case ((0x00990000 | 0x900) + 370):
+ case ((0x00990000 | 0x900) + 372):
+ case ((0x00990000 | 0x900) + 1005):
+ case ((0x00990000 | 0x900) + 1006):
+ case ((0x00990000 | 0x900) + 270):
+ case ((0x00990000 | 0x900) + 271):
+ case ((0x00990000 | 0x900) + 405):
+ case ((0x00990000 | 0x900) + 406):
+ case ((0x009d0000 | 0x900) + 1):
+ case ((0x009a0000 | 0x900) + 24):
+ case ((0x009a0000 | 0x900) + 25):
+ case ((0x009a0000 | 0x900) + 26):
+ case ((0x00a00000 | 0x900) + 4):
+ case ((0x00a00000 | 0x900) + 5):
+ case ((0x00a00000 | 0x900) + 6):
+ case ((0x00a00000 | 0x900) + 101):
+ case ((0x00a00000 | 0x900) + 102):
+ case ((0x009f0000 | 0x900) + 3):
+ case ((0x009f0000 | 0x900) + 4):
+ case ((0x00a10000 | 0x900) + 1):
+ case ((0x00990000 | 0x900) + 506):
+ case ((0x00990000 | 0x900) + 511):
+ case ((0x00990000 | 0x900) + 512):
+ case ((0x00a30000 | 0x900) + 1):
+ case ((0x00990000 | 0x900) + 615):
+ case ((0x00990000 | 0x900) + 616):
+ case ((0x00990000 | 0x900) + 606):
+ case ((0x00990000 | 0x900) + 623):
+ case ((0x00990000 | 0x900) + 635):
+ case ((0x00990000 | 0x900) + 618):
+ case ((0x00990000 | 0x900) + 620):
+ case ((0x00990000 | 0x900) + 1015):
+ case ((0x00990000 | 0x900) + 1016):
+ case ((0x009a0000 | 0x900) + 34):
+ *type = V4L2_CTRL_TYPE_MENU;
+ break;
+ case ((0x009f0000 | 0x900) + 1):
+ *type = V4L2_CTRL_TYPE_INTEGER_MENU;
+ break;
+ case ((0x009b0000 | 0x900) + 5):
+ case ((0x009b0000 | 0x900) + 6):
+ case ((0x00a10000 | 0x900) + 4):
+ case ((0x00a10000 | 0x900) + 5):
+ *type = V4L2_CTRL_TYPE_STRING;
+ break;
+ case ((0x009a0000 | 0x900) + 23):
+ case ((0x009a0000 | 0x900) + 19):
+ case ((0x00990000 | 0x900) + 500):
+ case ((0x00990000 | 0x900) + 502):
+ *type = V4L2_CTRL_TYPE_INTEGER_MENU;
+ break;
+ case (0x00980000 | 1):
+ case (0x009a0000 | 1):
+ case (0x00990000 | 1):
+ case (0x009b0000 | 1):
+ case (0x009c0000 | 1):
+ case (0x009d0000 | 1):
+ case (0x009e0000 | 1):
+ case (0x009f0000 | 1):
+ case (0x00a00000 | 1):
+ case (0x00a10000 | 1):
+ case (0x00a20000 | 1):
+ case (0x00a30000 | 1):
+ *type = V4L2_CTRL_TYPE_CTRL_CLASS;
+
+ *flags |= 0x0004 | 0x0040;
+ *min = *max = *step = *def = 0;
+ break;
+ case ((0x00980000 | 0x900) + 35):
+ *type = V4L2_CTRL_TYPE_INTEGER;
+ *step = 1;
+ *min = 0;
+
+ *max = 0xFFFFFF;
+ break;
+ case ((0x009c0000 | 0x900) + 10):
+ case ((0x009d0000 | 0x900) + 4):
+ case ((0x009a0000 | 0x900) + 27):
+ case ((0x009a0000 | 0x900) + 30):
+ case ((0x00a00000 | 0x900) + 1):
+ case ((0x00a00000 | 0x900) + 2):
+ case ((0x00a00000 | 0x900) + 3):
+ case ((0x00a00000 | 0x900) + 100):
+ *type = V4L2_CTRL_TYPE_BITMASK;
+ break;
+ case ((0x00980000 | 0x900) + 39):
+ case ((0x00980000 | 0x900) + 40):
+ *type = V4L2_CTRL_TYPE_INTEGER;
+ *flags |= 0x0004;
+ break;
+ case ((0x00990000 | 0x900) + 223):
+ *type = V4L2_CTRL_TYPE_INTEGER64;
+ *flags |= 0x0080 | 0x0004;
+ *min = *def = 0;
+ *max = 0x1ffffffffLL;
+ *step = 1;
+ break;
+ case ((0x00990000 | 0x900) + 224):
+ *type = V4L2_CTRL_TYPE_INTEGER64;
+ *flags |= 0x0080 | 0x0004;
+ *min = *def = 0;
+ *max = 0x7fffffffffffffffLL;
+ *step = 1;
+ break;
+ case ((0x009f0000 | 0x900) + 2):
+ *type = V4L2_CTRL_TYPE_INTEGER64;
+ *flags |= 0x0004;
+ break;
+ case ((0x00a30000 | 0x900) + 4):
+ *type = V4L2_CTRL_TYPE_U8;
+ break;
+ case ((0x00a30000 | 0x900) + 3):
+ *type = V4L2_CTRL_TYPE_U16;
+ break;
+ case ((0x009b0000 | 0x900) + 15):
+ *type = V4L2_CTRL_TYPE_U32;
+ break;
+ case ((0x00990000 | 0x900) + 250):
+ *type = 0x0103;
+ break;
+ case ((0x00990000 | 0x900) + 251):
+ *type = 0x0104;
+ break;
+ case ((0x00990000 | 0x900) + 292):
+ *type = 0x0105;
+ break;
+ case ((0x00990000 | 0x900) + 1000):
+ *type = 0x0110;
+ break;
+ case ((0x00990000 | 0x900) + 1001):
+ *type = 0x0111;
+ break;
+ case ((0x00990000 | 0x900) + 1002):
+ *type = 0x0112;
+ break;
+ case ((0x00990000 | 0x900) + 1003):
+ *type = 0x0113;
+ break;
+ case ((0x00990000 | 0x900) + 1004):
+ *type = 0x0114;
+ break;
+ case ((0x00990000 | 0x900) + 2000):
+ *type = 0x301;
+ break;
+ case ((0x00990000 | 0x900) + 1008):
+ *type = 0x0120;
+ break;
+ case ((0x00990000 | 0x900) + 1009):
+ *type = 0x0121;
+ break;
+ case ((0x00990000 | 0x900) + 1010):
+ *type = 0x0122;
+ break;
+ case ((0x009e0000 | 0x900) + 8):
+ *type = V4L2_CTRL_TYPE_AREA;
+ *flags |= 0x0004;
+ break;
+ default:
+ *type = V4L2_CTRL_TYPE_INTEGER;
+ break;
+ }
+ switch (id) {
+ case ((0x00990000 | 0x900) + 101):
+ case ((0x00990000 | 0x900) + 105):
+ case ((0x00990000 | 0x900) + 206):
+ case ((0x00990000 | 0x900) + 202):
+ case ((0x00990000 | 0x900) + 0):
+ *flags |= 0x0008;
+ break;
+ case ((0x00980000 | 0x900) + 5):
+ case ((0x00980000 | 0x900) + 6):
+ case ((0x00980000 | 0x900) + 7):
+ case ((0x00980000 | 0x900) + 8):
+ case ((0x00980000 | 0x900) + 0):
+ case ((0x00980000 | 0x900) + 1):
+ case ((0x00980000 | 0x900) + 2):
+ case ((0x00980000 | 0x900) + 3):
+ case ((0x00980000 | 0x900) + 14):
+ case ((0x00980000 | 0x900) + 15):
+ case ((0x00980000 | 0x900) + 16):
+ case ((0x00980000 | 0x900) + 27):
+ case ((0x00980000 | 0x900) + 36):
+ case ((0x009b0000 | 0x900) + 1):
+ case ((0x009b0000 | 0x900) + 65):
+ case ((0x009b0000 | 0x900) + 66):
+ case ((0x009b0000 | 0x900) + 81):
+ case ((0x009b0000 | 0x900) + 82):
+ case ((0x009b0000 | 0x900) + 83):
+ case ((0x009b0000 | 0x900) + 84):
+ case ((0x009b0000 | 0x900) + 97):
+ case ((0x009b0000 | 0x900) + 98):
+ case ((0x009b0000 | 0x900) + 113):
+ case ((0x009b0000 | 0x900) + 114):
+ case ((0x00a20000 | 0x900) + 32):
+ case ((0x00a20000 | 0x900) + 42):
+ case ((0x00a20000 | 0x900) + 52):
+ case ((0x00a20000 | 0x900) + 62):
+ case ((0x00a20000 | 0x900) + 12):
+ case ((0x00a30000 | 0x900) + 2):
+ *flags |= 0x0020;
+ break;
+ case ((0x009a0000 | 0x900) + 4):
+ case ((0x009a0000 | 0x900) + 5):
+ case ((0x009a0000 | 0x900) + 11):
+ case ((0x009a0000 | 0x900) + 18):
+ case ((0x009a0000 | 0x900) + 14):
+ *flags |= 0x0040 | 0x0200;
+ break;
+ case ((0x009c0000 | 0x900) + 5):
+ case ((0x009a0000 | 0x900) + 30):
+ case ((0x009c0000 | 0x900) + 12):
+ case ((0x00a00000 | 0x900) + 1):
+ case ((0x00a00000 | 0x900) + 2):
+ case ((0x00a00000 | 0x900) + 3):
+ case ((0x00a00000 | 0x900) + 100):
+ case ((0x00a00000 | 0x900) + 102):
+ case ((0x00a10000 | 0x900) + 3):
+ case ((0x00a10000 | 0x900) + 4):
+ case ((0x00a10000 | 0x900) + 5):
+ case ((0x00a10000 | 0x900) + 6):
+ case ((0x00a10000 | 0x900) + 7):
+ case ((0x00a10000 | 0x900) + 8):
+ case ((0x009a0000 | 0x900) + 34):
+ case ((0x009a0000 | 0x900) + 35):
+ *flags |= 0x0004;
+ break;
+ case ((0x00a20000 | 0x900) + 91):
+ *flags |= 0x0080;
+ break;
+ }
+}