From 15ede208d8bd3fd83b86bf6d861e4bc697ccb949 Mon Sep 17 00:00:00 2001 From: hadaq Date: Tue, 12 Nov 2024 14:35:15 +0100 Subject: [PATCH] new T sensors for plane 2 --- installation/mbo_positions.db | 200 +++++++-------- installation/powerdistributor_positions.db | 20 +- installation/temperature_sensors.db | 30 +-- scripts/MDC.pm | 7 +- scripts/read_1wire_sensors.pl | 154 +++++++++--- settings_power/settings_voltage.db | 280 ++++++++++----------- 6 files changed, 393 insertions(+), 298 deletions(-) diff --git a/installation/mbo_positions.db b/installation/mbo_positions.db index 13f1a00..f21e6b3 100644 --- a/installation/mbo_positions.db +++ b/installation/mbo_positions.db @@ -16,7 +16,7 @@ 0 0 13 0 306 0 1 0 0 341 -0 1 1 1 837 +0 1 1 1 822 0 1 2 1 838 0 1 3 0 338 0 1 4 0 330 @@ -67,17 +67,17 @@ 0 4 4 0 362 0 4 5 0 342 0 4 6 1 827 -0 4 7 1 825 +0 4 7 1 818 0 4 8 0 360 0 4 9 0 357 0 4 10 1 840 0 4 11 0 348 0 4 12 1 843 -0 4 13 0 349 +0 4 13 0 435 0 5 0 0 312 0 5 1 1 809 -0 5 2 1 819 +0 5 2 1 800 0 5 3 0 361 0 5 4 0 354 0 5 5 0 335 @@ -92,107 +92,107 @@ ########################################## -1 0 0 0 0 -1 0 1 0 0 -1 0 2 0 0 -1 0 3 0 0 -1 0 4 0 0 -1 0 5 0 0 -1 0 6 0 0 -1 0 7 0 0 -1 0 8 0 0 -1 0 9 0 0 -1 0 10 0 0 -1 0 11 0 0 -1 0 12 0 0 -1 0 13 0 0 -1 0 14 1 0 -1 0 15 1 0 +1 0 0 0 432 +1 0 1 0 452 +1 0 2 0 439 +1 0 3 0 448 +1 0 4 0 436 +1 0 5 0 316 +1 0 6 0 326 +1 0 7 0 329 +1 0 8 0 442 +1 0 9 0 445 +1 0 10 0 416 +1 0 11 0 444 +1 0 12 0 424 +1 0 13 0 441 +1 0 14 1 871 +1 0 15 1 873 -1 1 0 0 0 -1 1 1 0 0 -1 1 2 0 0 -1 1 3 0 0 -1 1 4 0 0 -1 1 5 0 0 -1 1 6 0 0 -1 1 7 0 0 -1 1 8 0 0 -1 1 9 0 0 -1 1 10 0 0 -1 1 11 0 0 -1 1 12 0 0 -1 1 13 0 0 -1 1 14 1 0 -1 1 15 1 0 +1 1 0 0 463 +1 1 1 0 462 +1 1 2 0 386 +1 1 3 0 383 +1 1 4 0 307 +1 1 5 0 417 +1 1 6 0 461 +1 1 7 0 447 +1 1 8 0 464 +1 1 9 0 453 +1 1 10 0 323 +1 1 11 0 460 +1 1 12 0 408 +1 1 13 0 303 +1 1 14 1 875 +1 1 15 1 876 -1 2 0 0 0 -1 2 1 0 0 -1 2 2 0 0 -1 2 3 0 0 -1 2 4 0 0 -1 2 5 0 0 -1 2 6 0 0 -1 2 7 0 0 -1 2 8 0 0 -1 2 9 0 0 -1 2 10 0 0 -1 2 11 0 0 -1 2 12 0 0 -1 2 13 0 0 -1 2 14 1 0 -1 2 15 1 0 +1 2 0 0 450 +1 2 1 0 457 +1 2 2 0 344 +1 2 3 0 451 +1 2 4 0 376 +1 2 5 0 414 +1 2 6 0 308 +1 2 7 0 409 +1 2 8 0 387 +1 2 9 0 405 +1 2 10 0 331 +1 2 11 0 420 +1 2 12 0 410 +1 2 13 0 395 +1 2 14 1 112 +1 2 15 1 855 -1 3 0 0 0 -1 3 1 0 0 -1 3 2 0 0 -1 3 3 0 0 -1 3 4 0 0 -1 3 5 0 0 -1 3 6 0 0 -1 3 7 0 0 -1 3 8 0 0 -1 3 9 0 0 -1 3 10 0 0 -1 3 11 0 0 -1 3 12 0 0 -1 3 13 0 0 -1 3 14 1 0 -1 3 15 1 0 +1 3 0 0 392 +1 3 1 0 372 +1 3 2 0 393 +1 3 3 0 418 +1 3 4 0 332 +1 3 5 0 394 +1 3 6 0 367 +1 3 7 0 390 +1 3 8 0 412 +1 3 9 0 373 +1 3 10 0 419 +1 3 11 0 391 +1 3 12 0 374 +1 3 13 0 304 +1 3 14 1 850 +1 3 15 1 880 -1 4 0 0 0 -1 4 1 0 0 -1 4 2 0 0 -1 4 3 0 0 -1 4 4 0 0 -1 4 5 0 0 -1 4 6 0 0 -1 4 7 0 0 -1 4 8 0 0 -1 4 9 0 0 -1 4 10 0 0 -1 4 11 0 0 -1 4 12 0 0 -1 4 13 0 0 -1 4 14 1 0 -1 4 15 1 0 +1 4 0 0 415 +1 4 1 0 328 +1 4 2 0 381 +1 4 3 0 334 +1 4 4 0 369 +1 4 5 0 368 +1 4 6 0 400 +1 4 7 0 429 +1 4 8 0 422 +1 4 9 0 427 +1 4 10 0 389 +1 4 11 0 430 +1 4 12 0 301 +1 4 13 0 437 +1 4 14 1 872 +1 4 15 1 803 -1 5 0 0 0 -1 5 1 0 0 -1 5 2 0 0 -1 5 3 0 0 -1 5 4 0 0 -1 5 5 0 0 -1 5 6 0 0 -1 5 7 0 0 -1 5 8 0 0 -1 5 9 0 0 -1 5 10 0 0 -1 5 11 0 0 -1 5 12 0 0 -1 5 13 0 0 -1 5 14 1 0 -1 5 15 1 0 +1 5 0 0 421 +1 5 1 0 314 +1 5 2 0 352 +1 5 3 0 440 +1 5 4 0 349 +1 5 5 0 428 +1 5 6 0 320 +1 5 7 0 411 +1 5 8 0 309 +1 5 9 0 433 +1 5 10 0 401 +1 5 11 0 318 +1 5 12 0 317 +1 5 13 0 319 +1 5 14 1 802 +1 5 15 1 801 ########################################## diff --git a/installation/powerdistributor_positions.db b/installation/powerdistributor_positions.db index 6848c65..7d09d1a 100644 --- a/installation/powerdistributor_positions.db +++ b/installation/powerdistributor_positions.db @@ -4,18 +4,18 @@ # Plane # Sector # Serial ################################### 0 0 066 - 0 1 000 - 0 2 000 - 0 3 000 - 0 4 000 + 0 1 067 + 0 2 069 + 0 3 061 + 0 4 059 0 5 062 - 1 0 000 - 1 1 000 - 1 2 000 - 1 3 000 - 1 4 000 - 1 5 000 + 1 0 073 + 1 1 064 + 1 2 072 + 1 3 077 + 1 4 055 + 1 5 065 2 0 000 2 1 000 diff --git a/installation/temperature_sensors.db b/installation/temperature_sensors.db index cbbe995..ad2eace 100644 --- a/installation/temperature_sensors.db +++ b/installation/temperature_sensors.db @@ -1,23 +1,23 @@ -# Plane # Sector # inner short # outer short # inner long # outer long # -############################################################################################################### - 0 0 0 0 ce000001f1108e28 0 - 0 1 22000001f1438f28 54000001f130e628 54000001f130e628 81000001f1496e28 - 0 2 0 0 0 0 - 0 3 df000001f1508528 1f000001f1449e28 68000001f1438228 2d000001f1299428 - 0 4 3b000001f159ad28 21000001f110ad28 1c0000028f6efa28 e4000001f12a8028 - 0 5 3f000001f10c6928 1e000001f12efc28 0 53000001f122ed28 +# Plane # Sector # inner short # outer short # inner long # outer long # inner center # +##################################################################################################################################### + 0 0 A3000001f1408528 1F000001f14F7D28 B7000001f110A428 78000001F149E028 A2000001F1194E28 + 0 1 22000001f1438f28 54000001f130e628 7e000001f12f9e28 81000001f1496e28 72000001F10CD428 + 0 2 96000001f1132328 a6000001f14adc28 55000001f141EE28 AD000001F12B0228 0D000001F10B8428 + 0 3 df000001f1508528 1f000001f1449e28 68000001f1438228 2d000001f1299428 94000001F1CF2628 + 0 4 3b000001f159ad28 21000001f110ad28 1c0000028f6efa28 e4000001f12a8028 D4000001F12B2828 + 0 5 3f000001f10c6928 1e000001f12efc28 ce000001f1108e28 53000001f122ed28 66000001F140D028 - 1 0 5c000001f111b828 0 0 0 - 1 1 4d000001f14ebd28 0 d4000001f12b2828 0a0000028f9a8b28 - 1 2 0 0 d1000001f116bc28 df000001f128d928 - 1 3 fb000001f129cf28 0 d4000001f1291a28 0 - 1 4 0f000001f12b9c28 0 70000001f1217928 b2000001f1284d28 - 1 5 0 0 0c000001f14e6a28 a40000028f6ac728 + 1 0 5c000001f111b828 0 46000001F1325F28 3A000001F13F6328 70000001f14cd128 + 1 1 4d000001f14ebd28 0 d4000001f12b2828 0a0000028f9a8b28 87000001f12C3B28 + 1 2 42000001f1188828 0 d1000001f116bc28 df000001f128d928 E3000001f1278528 + 1 3 fb000001f129cf28 0 F6000001F1162528 00000001F1485628 C2000001f1424928 + 1 4 0f000001f12b9c28 0 70000001f1217928 b2000001f1284d28 D5000001f13C6B28 + 1 5 0 0 0c000001f14e6a28 a40000028f6ac728 18000001f10BBF28 2 0 0 0 0 0 2 1 0 0 0 0 2 2 0 0 0 0 - 2 3 0 0 0 0 + 2 3 5C000001F116F728 0 0 0 2 4 0 0 0 0 2 5 0 0 0 0 diff --git a/scripts/MDC.pm b/scripts/MDC.pm index afa7250..0c0d0d9 100644 --- a/scripts/MDC.pm +++ b/scripts/MDC.pm @@ -41,20 +41,23 @@ sub get_position { my $addr = shift @_; my ($p,$s,$b,$e); - if(($addr&0xf000) == 0x8000) { + if(($addr&0xfe00) == 0x8e00) { $e = 5; $b = $addr & 0xf; $s = (($addr>>4)&0xf)%6; $p = (($addr>>8)==0x8e)?0:2; $p += 1 if (($addr>>4)&0xf)>=6; } - else { + elsif($addr > 0xa000 && $addr < 0xbfff) { $e = $addr & 0x3; $b = ($addr>>4) & 0xf; $s = (($addr>>8)&0xf)%6; $p = (($addr>>12)&1)?2:0; $p += 1 if (($addr>>8)&0xf)>=6; } + else { + return(-1,-1,-1,-1); + } if($e == 2) { if($longboards->[$p][$b]==0) { return(-1,-1,-1,-1); } diff --git a/scripts/read_1wire_sensors.pl b/scripts/read_1wire_sensors.pl index 58c5b9f..3dda5df 100755 --- a/scripts/read_1wire_sensors.pl +++ b/scripts/read_1wire_sensors.pl @@ -4,50 +4,135 @@ use Getopt::Long; use HADES::TrbNet; use Time::HiRes qw(usleep); use Data::Dumper; +use POSIX qw/strftime/; trb_init_ports() or die trb_strerror(); -i2c_cmd(0xfe90,0x30,0xd2,0xe1); -usleep(1000); +my $boards; -i2c_cmd(0xfe90,0x30,,0xb4); -usleep(2000); -i2c_cmd(0xfe90,0x30,0xa5,0xcc); -usleep(2000); -i2c_cmd(0xfe90,0x30,0xa5,0x44); -usleep(2000); +trb_register_write(0xfe90,0xd680,25); #not 400kHz speed +#Configure I2C chips +i2c_cmd(0xfe90,0x30,0xd2,0xe1); +usleep(1000); -sleep(1); +#Detect I2C buses +my $res = trb_register_read(0xfe90,0xd684); +foreach my $b (keys %$res) { + if (($res->{$b}&0xff0000) == 0) { + $boards->{$b}=(); + } + } -i2c_cmd(0xfe90,0x30,,0xb4); -usleep(2000); +#print Dumper $res; +#exit; +#Loop through buses and find sensors +foreach my $b (sort keys %$boards) { + searchROM($b); + } -i2c_cmd(0xfe90,0x30,0xa5,0xcc); -usleep(2000); -i2c_cmd(0xfe90,0x30,0xa5,0xbe); -usleep(2000); +while(1) { + print strftime("%Y-%m-%d %H:%M:%S\n",localtime); + #Send broadcast conversion command + i2c_cmd(0xfe90,0x30,,0xb4); + usleep(2000); + i2c_cmd(0xfe90,0x30,0xa5,0xcc); + usleep(2000); + i2c_cmd(0xfe90,0x30,0xa5,0x44); + sleep(1); + + #Loop through buses and read data + foreach my $b (sort keys %$boards) { + readData($b); + } + last; + sleep 10; + } -i2c_cmd(0xfe90,0x30,0x96); -usleep(2000); -i2c_cmd(0xfe90,0x30,0xe1,0xe1); -usleep(2000); -my $ret1 = i2c_cmd(0xfe90,0x30,0xe1); -i2c_cmd(0xfe90,0x30,0x96); -usleep(2000); -i2c_cmd(0xfe90,0x30,0xe1,0xe1); -usleep(2000); -my $ret2 = i2c_cmd(0xfe90,0x30,0xe1); -foreach my $f (keys %$ret1) { - next if ($ret1->{$f} == 0xff && $ret2->{$f} == 0xff); - printf("%04x\t%2.1f\n",$f,($ret1->{$f}+($ret2->{$f} << 8))/2); +sub searchROM { + my($board) = @_; + my $LastDiscrepancy = -1; + my $LastZero = -1; + my $currentROM = 0; + my $lastROM = 0; + my $direction = 0; +# printf("%04x\n",$board); + while(1) { + $currentROM = 0; + $LastZero = -1; + #reset, search ROM + i2c_cmd($board,0x30,,0xb4); + usleep(2000); + i2c_cmd($board,0x30,0xa5,0xf0); + usleep(2000); + + for my $i (0..63) { + $direction = 0 if $i > $LastDiscrepancy; + $direction = 1 if $i == $LastDiscrepancy; + $direction = ($lastROM>>$i)&1 if $i < $LastDiscrepancy; + + i2c_cmd($board,0x30,0x78,$direction << 7); + usleep(2000); + my $ret2 = i2c_cmd(0xfe90,0x30,0xe1); + my $idbit = ($ret2->{$board}&0x20)?1:0; + my $notidbit = ($ret2->{$board}&0x40)?1:0; + my $realdir = ($ret2->{$board}&0x80)?1:0; + return if $idbit && $notidbit; + $LastZero = $i if ($realdir == 0 && $idbit == 0 && $notidbit == 0); + $currentROM |= ($realdir << $i); + } +# printf("%08x %i %i\n",$currentROM,$LastZero,$LastDiscrepancy); + $LastDiscrepancy = $LastZero; + $boards->{$board}{$currentROM}=0; + $lastROM = $currentROM; + last if $LastDiscrepancy == -1; + } + + return; } - +sub readData { + my($board) = @_; + foreach my $uid (sort keys %{$boards->{$board}}) { + i2c_cmd($board,0x30,,0xb4); + usleep(2000); + i2c_cmd($board,0x30,0xa5,0x55); + usleep(2000); + + for my $i (0..7) { + i2c_cmd($board,0x30,0xa5,($uid>>8*$i)&0xff); + usleep(2000); + } + i2c_cmd($board,0x30,0xa5,0xbe); + usleep(2000); + + i2c_cmd($board,0x30,0x96); + usleep(2000); + i2c_cmd($board,0x30,0xe1,0xe1); + usleep(2000); + my $ret1 = i2c_cmd($board,0x30,0xe1); + i2c_cmd($board,0x30,0x96); + usleep(2000); + i2c_cmd($board,0x30,0xe1,0xe1); + usleep(2000); + my $ret2 = i2c_cmd($board,0x30,0xe1); + usleep(2000); + + my $temp = ($ret1->{$board}+($ret2->{$board} << 8)); + printf("%04x\t%016x\t---\n",$board,$uid) and next if $temp == 0xffff; + $temp /= 16; + printf("%04x\t%016x\t%2.2f\n",$board,$uid,$temp); + $boards->{$board}{$uid} = $temp; + } + } + + + + sub i2c_cmd { my ($fpga,$addr,$cmd,$byte1,$byte2) = @_; @@ -64,13 +149,20 @@ sub i2c_cmd { if(defined($byte1)) { trb_register_write_mem($fpga,0xd681,0,[$reg_flag,$reg_data],2); + usleep(2000); + $reg_return = trb_register_read($fpga,0xd684); + my $error = ($reg_return->{$fpga} >> 16) & 0xdf; + print STDERR $error."\n" if $error; + printf("E: %x %x %x %x %x\n",$fpga,$addr,$cmd,$byte1,$byte2) and die if $error == 0x80; } else { $reg_flag |= 0x100; trb_register_write_mem($fpga,0xd681,0,[$reg_flag,$reg_data],2); - usleep(1000); + usleep(2000); $reg_return = trb_register_read($fpga,0xd684); - + my $error = ($reg_return->{$fpga} >> 16) & 0xdf; + print STDERR $error."\n" if $error; + printf("E: %x %x %x %x %x\n",$fpga,$addr,$cmd,$byte1,$byte2) and die if $error == 0x80; my $ret; foreach my $f (keys %$reg_return) { $ret->{$f} = $reg_return->{$f}&($word?0xffff:0xff); diff --git a/settings_power/settings_voltage.db b/settings_power/settings_voltage.db index c00547c..6b4631d 100644 --- a/settings_power/settings_voltage.db +++ b/settings_power/settings_voltage.db @@ -20,140 +20,140 @@ 0x8e0b 4 5 0x8e0c 4 5 0x8e0d 4 4 - 0x8e10 7 7 - 0x8e11 7 7 - 0x8e12 7 7 - 0x8e13 7 7 - 0x8e14 7 7 - 0x8e15 7 7 - 0x8e16 7 7 - 0x8e17 7 7 - 0x8e18 7 7 - 0x8e19 7 7 - 0x8e1a 7 7 - 0x8e1b 7 7 - 0x8e1c 7 7 - 0x8e1d 7 7 - 0x8e20 7 7 - 0x8e21 7 7 - 0x8e22 7 7 - 0x8e23 7 7 - 0x8e24 7 7 - 0x8e25 7 7 - 0x8e26 7 7 - 0x8e27 7 7 - 0x8e28 7 7 - 0x8e29 7 7 - 0x8e2a 7 7 - 0x8e2b 7 7 - 0x8e2c 7 7 - 0x8e2d 7 7 - 0x8e30 7 7 - 0x8e31 7 7 - 0x8e32 7 7 - 0x8e33 7 7 - 0x8e34 7 7 - 0x8e35 7 7 - 0x8e36 7 7 - 0x8e37 7 7 - 0x8e38 7 7 - 0x8e39 7 7 - 0x8e3a 7 7 - 0x8e3b 7 7 - 0x8e3c 7 7 - 0x8e3d 7 7 - 0x8e40 7 7 - 0x8e41 7 7 - 0x8e42 7 7 - 0x8e43 7 7 - 0x8e44 7 7 - 0x8e45 7 7 - 0x8e46 7 7 - 0x8e47 7 7 - 0x8e48 7 7 - 0x8e49 7 7 - 0x8e4a 7 7 - 0x8e4b 7 7 - 0x8e4c 7 7 - 0x8e4d 7 7 - 0x8e50 5 6 - 0x8e51 4 4 - 0x8e52 4 4 - 0x8e53 4 6 - 0x8e54 5 5 - 0x8e55 6 7 + 0x8e10 4 4 + 0x8e11 4 4 + 0x8e12 5 6 + 0x8e13 5 5 + 0x8e14 5 5 + 0x8e15 5 6 + 0x8e16 4 5 + 0x8e17 4 4 + 0x8e18 4 4 + 0x8e19 4 4 + 0x8e1a 4 5 + 0x8e1b 4 4 + 0x8e1c 5 5 + 0x8e1d 4 4 + 0x8e20 4 5 + 0x8e21 3 3 + 0x8e22 3 3 + 0x8e23 4 4 + 0x8e24 3 4 + 0x8e25 3 3 + 0x8e26 3 4 + 0x8e27 3 3 + 0x8e28 3 3 + 0x8e29 3 3 + 0x8e2a 3 4 + 0x8e2b 3 3 + 0x8e2c 4 4 + 0x8e2d 3 3 + 0x8e30 4 5 + 0x8e31 3 5 + 0x8e32 3 3 + 0x8e33 4 5 + 0x8e34 4 5 + 0x8e35 2 3 + 0x8e36 3 3 + 0x8e37 2 3 + 0x8e38 5 5 + 0x8e39 4 5 + 0x8e3a 4 5 + 0x8e3b 3 3 + 0x8e3c 4 4 + 0x8e3d 3 3 + 0x8e40 4 4 + 0x8e41 4 5 + 0x8e42 4 4 + 0x8e43 5 6 + 0x8e44 5 6 + 0x8e45 5 5 + 0x8e46 4 4 + 0x8e47 4 4 + 0x8e48 5 6 + 0x8e49 5 6 + 0x8e4a 4 4 + 0x8e4b 4 5 + 0x8e4c 4 4 + 0x8e4d 4 5 + 0x8e50 5 5 + 0x8e51 3 4 + 0x8e52 3 3 + 0x8e53 4 7 + 0x8e54 4 5 + 0x8e55 5 7 0x8e56 4 4 0x8e57 4 4 - 0x8e58 6 7 + 0x8e58 5 6 0x8e59 5 6 0x8e5a 4 5 0x8e5b 4 4 0x8e5c 4 5 - 0x8e5d 4 5 + 0x8e5d 4 4 0x8e60 7 7 - 0x8e61 7 7 - 0x8e62 7 7 - 0x8e63 7 7 - 0x8e64 7 7 - 0x8e65 7 7 - 0x8e66 7 7 - 0x8e67 7 7 - 0x8e68 7 7 - 0x8e69 7 7 - 0x8e6a 7 7 - 0x8e6b 7 7 - 0x8e6c 7 7 - 0x8e6d 7 7 - 0x8e6e 7 7 + 0x8e61 3 4 + 0x8e62 3 4 + 0x8e63 3 4 + 0x8e64 3 3 + 0x8e65 4 4 + 0x8e66 3 4 + 0x8e67 3 4 + 0x8e68 3 4 + 0x8e69 3 4 + 0x8e6a 3 3 + 0x8e6b 4 4 + 0x8e6c 3 3 + 0x8e6d 3 3 + 0x8e6e 3 3 0x8e6f 7 7 - 0x8e70 7 7 - 0x8e71 7 7 - 0x8e72 7 7 - 0x8e73 7 7 - 0x8e74 7 7 - 0x8e75 7 7 - 0x8e76 7 7 - 0x8e77 7 7 - 0x8e78 7 7 - 0x8e79 7 7 - 0x8e7a 7 7 - 0x8e7b 7 7 - 0x8e7c 7 7 - 0x8e7d 7 7 - 0x8e7e 7 7 - 0x8e7f 7 7 - 0x8e80 7 7 - 0x8e81 7 7 - 0x8e82 7 7 - 0x8e83 7 7 - 0x8e84 7 7 - 0x8e85 7 7 - 0x8e86 7 7 - 0x8e87 7 7 - 0x8e88 7 7 - 0x8e89 7 7 - 0x8e8a 7 7 - 0x8e8b 7 7 - 0x8e8c 7 7 - 0x8e8d 7 7 - 0x8e8e 7 7 - 0x8e8f 7 7 - 0x8e90 7 7 - 0x8e91 7 7 - 0x8e92 7 7 - 0x8e93 7 7 - 0x8e94 7 7 - 0x8e95 7 7 + 0x8e70 2 2 + 0x8e71 2 3 + 0x8e72 2 3 + 0x8e73 2 3 + 0x8e74 2 3 + 0x8e75 3 4 + 0x8e76 3 3 + 0x8e77 3 3 + 0x8e78 2 3 + 0x8e79 2 3 + 0x8e7a 2 2 + 0x8e7b 3 4 + 0x8e7c 2 2 + 0x8e7d 2 3 + 0x8e7e 2 2 + 0x8e7f 3 3 + 0x8e80 2 2 + 0x8e81 2 3 + 0x8e82 4 4 + 0x8e83 2 3 + 0x8e84 2 3 + 0x8e85 3 4 + 0x8e86 2 3 + 0x8e87 2 3 + 0x8e88 3 3 + 0x8e89 2 3 + 0x8e8a 2 3 + 0x8e8b 4 4 + 0x8e8c 2 2 + 0x8e8d 2 2 + 0x8e8e 2 2 + 0x8e8f 2 2 + 0x8e90 2 3 + 0x8e91 3 3 + 0x8e92 3 3 + 0x8e93 3 3 + 0x8e94 2 3 + 0x8e95 3 3 0x8e96 7 7 - 0x8e97 7 7 - 0x8e98 7 7 - 0x8e99 7 7 - 0x8e9a 7 7 - 0x8e9b 7 7 - 0x8e9c 7 7 - 0x8e9d 7 7 - 0x8e9e 7 7 - 0x8e9f 7 7 + 0x8e97 2 3 + 0x8e98 3 3 + 0x8e99 3 3 + 0x8e9a 2 3 + 0x8e9b 3 3 + 0x8e9c 2 2 + 0x8e9d 2 2 + 0x8e9e 2 2 + 0x8e9f 2 2 0x8ea0 7 7 0x8ea1 7 7 0x8ea2 7 7 @@ -170,22 +170,22 @@ 0x8ead 7 7 0x8eae 7 7 0x8eaf 7 7 - 0x8eb0 7 7 - 0x8eb1 7 7 - 0x8eb2 7 7 - 0x8eb3 7 7 - 0x8eb4 7 7 - 0x8eb5 7 7 - 0x8eb6 7 7 - 0x8eb7 7 7 - 0x8eb8 7 7 - 0x8eb9 7 7 - 0x8eba 7 7 - 0x8ebb 7 7 - 0x8ebc 7 7 + 0x8eb0 3 3 + 0x8eb1 3 4 + 0x8eb2 3 4 + 0x8eb3 3 4 + 0x8eb4 3 4 + 0x8eb5 4 4 + 0x8eb6 4 4 + 0x8eb7 3 4 + 0x8eb8 4 4 + 0x8eb9 3 4 + 0x8eba 3 4 + 0x8ebb 4 4 + 0x8ebc 4 4 0x8ebd 7 7 - 0x8ebe 7 7 - 0x8ebf 7 7 + 0x8ebe 3 3 + 0x8ebf 4 4 0x8f00 7 7 0x8f01 7 7 0x8f02 7 7 -- 2.43.0