TinLethax

AFG3000C LED to keycode map

Dec 18th, 2025
24
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.93 KB | Source Code | 0 0
  1. void frontPanel_LEDControlOnByButton(undefined4 keyCode)
  2.  
  3. {
  4.   int iVar1;
  5.  
  6.   pthread_mutex_lock((pthread_mutex_t *)&DAT_0058cee8);
  7.   switch(keyCode) {
  8.   case 0:
  9.     DAT_002dd0b8 = DAT_002dd0b8 & 0xfec0 | 0x100;
  10.     DAT_002dd0ba = DAT_002dd0ba & 0xfd80 | 0x200;
  11.     break;
  12.   default:
  13.     break;
  14.   case 0xc:
  15.                     /* CH2 out button */
  16.     DAT_002dd0ba = DAT_002dd0ba & 0xfdfd | 0x200;
  17.     break;
  18.   case 0xe:
  19.                     /* CH1 out button */
  20.     DAT_002dd0ba = DAT_002dd0ba & 0xfdfe | 0x200;
  21.     break;
  22.   case 0x16:
  23.                     /* More Waveform */
  24.     DAT_002dd0b8 = DAT_002dd0b8 & 0xfefe | 0x100;
  25.     break;
  26.   case 0x1e:
  27.                     /* Arb */
  28.     DAT_002dd0b8 = DAT_002dd0b8 & 0xfefd | 0x100;
  29.     break;
  30.   case 0x26:
  31.                     /* Pulse */
  32.     DAT_002dd0b8 = DAT_002dd0b8 & 0xfefb | 0x100;
  33.     break;
  34.   case 0x2e:
  35.                     /* Ramp */
  36.     DAT_002dd0b8 = DAT_002dd0b8 & 0xfef7 | 0x100;
  37.     break;
  38.   case 0x36:
  39.                     /* Square */
  40.     DAT_002dd0b8 = DAT_002dd0b8 & 0xfeef | 0x100;
  41.     break;
  42.   case 0x3a:
  43.                     /* Burst */
  44.     DAT_002dd0ba = DAT_002dd0ba & 0xfdfb | 0x200;
  45.     break;
  46.   case 0x3b:
  47.                     /* Sweep */
  48.     DAT_002dd0ba = DAT_002dd0ba & 0xfdf7 | 0x200;
  49.     break;
  50.   case 0x3c:
  51.                     /* Modulation */
  52.     DAT_002dd0ba = DAT_002dd0ba & 0xfdef | 0x200;
  53.     break;
  54.   case 0x3d:
  55.                     /* Continuous */
  56.     DAT_002dd0ba = DAT_002dd0ba & 0xfddf | 0x200;
  57.     break;
  58.   case 0x3e:
  59.                     /* Sine */
  60.     DAT_002dd0b8 = DAT_002dd0b8 & 0xfedf | 0x100;
  61.     break;
  62.   case 0x40:
  63.     DAT_002dd0ba = DAT_002dd0ba & 0xfdbf | 0x200;
  64.   }
  65.   ioctl(frontPanel_FD,0x44430002,(uint)DAT_002dd0b8);
  66.   iVar1 = ioctl(frontPanel_FD,0x44430002,(uint)DAT_002dd0ba);
  67.   if (iVar1 == -1) {
  68.     printf("\n turn on led fail");
  69.   }
  70.   pthread_mutex_unlock((pthread_mutex_t *)&DAT_0058cee8);
  71.   return;
  72. }
Advertisement
Add Comment
Please, Sign In to add comment