1/* 2 * Some or all of this work - Copyright (c) 2006 - 2016, Intel Corp. 3 * All rights reserved. 4 * 5 * Redistribution and use in source and binary forms, with or without modification, 6 * are permitted provided that the following conditions are met: 7 * 8 * Redistributions of source code must retain the above copyright notice, 9 * this list of conditions and the following disclaimer. 10 * Redistributions in binary form must reproduce the above copyright notice, 11 * this list of conditions and the following disclaimer in the documentation 12 * and/or other materials provided with the distribution. 13 * Neither the name of Intel Corporation nor the names of its contributors 14 * may be used to endorse or promote products derived from this software 15 * without specific prior written permission. 16 * 17 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" 18 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 19 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 20 * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE 21 * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 22 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 23 * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 24 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING 25 * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, 26 * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 27 */ 28 29/* 30 * Package 31 * 32 * (verify exceptions caused by the imprope use of Package type objects) 33 */ 34 35Name(z096, 96) 36 37Name(p100, Package(){0x61}) 38 39// Expected exceptions: 40// 41// 47 - AE_AML_OPERAND_TYPE 42// Note: Package can be used with Index 43Method(m4b4, 1, Serialized) 44{ 45 Name(ts, "m4b4") 46 47 Name(p000, Package(){0x62}) 48 49 Event(e000) 50 51 Name(i000, 0) 52 53 // Local Named Object 54 // ASL compiler prohibits to use Pakage 55 // Named Objects in the most of operators 56 Method(m000, 1, Serialized) 57 { 58 Name(p000, Package(){0x63}) 59 60 // CondRefOf 61 62 Store (CondRefOf(p000), Local1) 63 CH03(ts, z096, 0, 0, 0) 64 65 CondRefOf(p000, Local1) 66 CH03(ts, z096, 1, 0, 0) 67 68 // CopyObject 69 70 CopyObject(p000, Local1) 71 CH03(ts, z096, 2, 0, 0) 72 73 // Decrement 74 75 // DerefOf 76 77/* These are now caught by the compiler - Aug 2015 78 79 if (y083) { 80 Store (DerefOf(p000), Local1) 81 CH06(arg0, 0, 47) 82 } 83*/ 84 // FindSetLeftBit 85 86 // FindSetRightBit 87 88 // FromBCD 89 90 // Increment 91 92 // LNot 93 94 // Not 95 96 // ObjectType 97 98 Store (ObjectType(p000), Local1) 99 CH03(ts, z096, 3, 0, 0) 100 101 // RefOf 102 103 Store (RefOf(p000), Local1) 104 CH03(ts, z096, 4, 0, 0) 105 106 // Release 107 108 // Reset 109 110 // Signal 111 112 // SizeOf 113 114 Store (SizeOf(p000), Local1) 115 CH03(ts, z096, 5, 0, 0) 116 117 // Sleep 118 119 // Stall 120 121 // Store 122 123 Store(p000, Local1) 124 CH03(ts, z096, 6, 0, 0) 125 126 // ToBCD 127 128 // ToBuffer 129 130 // ToDecimalString 131 132 // ToHexString 133 134 // ToInteger 135 136 // Acquire 137 138 // Add 139 140 // And 141 142 // Concatenate 143 144 // ConcatenateResTemplate 145 146 // Divide 147 148 // Fatal 149 150 // Index 151 152 Index(p000, 0, Local1) 153 CH03(ts, z096, 7, 0, 0) 154 155 Store (Index(p000, 0), Local1) 156 CH03(ts, z096, 8, 0, 0) 157 158 // LEqual 159 160 // LGreater 161 162 // LGreaterEqual 163 164 // LLess 165 166 // LLessEqual 167 168 // LNotEqual 169 170 // LOr 171 172 // Mod 173 174 // Multiply 175 176 // NAnd 177 178 // NOr 179 180 // Or 181 182 // ShiftLeft 183 184 // ShiftRight 185 186 // Subtract 187 188 // ToString 189 190 // Wait 191 192 // XOr 193 194 // Mid 195 196 // Match 197 198 Store (Match(p000, MTR, 0, MTR, 0, 0), Local1) 199 CH03(ts, z096, 9, 0, 0) 200 } 201 202 // Global Named Object 203 Method(m001, 1) 204 { 205 // CondRefOf 206 207 CondRefOf(p100, Local1) 208 CH03(ts, z096, 11, 0, 0) 209 210 // CopyObject 211 212 CopyObject(p100, Local1) 213 CH03(ts, z096, 12, 0, 0) 214 215 // Decrement 216 217 // DerefOf 218/* These are now caught by the compiler - Aug 2015 219 220 if (y083) { 221 Store (DerefOf(p100), Local1) 222 CH06(arg0, 1, 47) 223 } 224*/ 225 // FindSetLeftBit 226 227 // FindSetRightBit 228 229 // FromBCD 230 231 // Increment 232 233 // LNot 234 235 // Not 236 237 // ObjectType 238 239 Store (ObjectType(p100), Local1) 240 CH03(ts, z096, 13, 0, 0) 241 242 // RefOf 243 244 Store (RefOf(p100), Local1) 245 CH03(ts, z096, 14, 0, 0) 246 247 // Release 248 249 // Reset 250 251 // Signal 252 253 // SizeOf 254 255 Store (SizeOf(p100), Local1) 256 CH03(ts, z096, 15, 0, 0) 257 258 // Sleep 259 260 // Stall 261 262 // Store 263 264 Store(p100, Local1) 265 CH03(ts, z096, 16, 0, 0) 266 267 // ToBCD 268 269 // ToBuffer 270 271 // ToDecimalString 272 273 // ToHexString 274 275 // ToInteger 276 277 // Acquire 278 279 // Add 280 281 // And 282 283 // Concatenate 284 285 // ConcatenateResTemplate 286 287 // Divide 288 289 // Fatal 290 291 // Index 292 293 Store (Index(p100, 0), Local1) 294 CH03(ts, z096, 18, 0, 0) 295 296 // LEqual 297 298 // LGreater 299 300 // LGreaterEqual 301 302 // LLess 303 304 // LLessEqual 305 306 // LNotEqual 307 308 // LOr 309 310 // Mod 311 312 // Multiply 313 314 // NAnd 315 316 // NOr 317 318 // Or 319 320 // ShiftLeft 321 322 // ShiftRight 323 324 // Subtract 325 326 // ToString 327 328 // Wait 329 330 // XOr 331 332 // Mid 333 334 // Match 335 336 Store (Match(p100, MTR, 0, MTR, 0, 0), Local1) 337 CH03(ts, z096, 19, 0, 0) 338 } 339 340 // Argument 341 Method(m002, 2, Serialized) 342 { 343 Event(e000) 344 345 // CondRefOf 346 347 CondRefOf(arg1, Local1) 348 CH03(ts, z096, 21, 0, 0) 349 350 // CopyObject 351 352 CopyObject(arg1, Local1) 353 CH03(ts, z096, 22, 0, 0) 354 355 // Decrement 356 357 Decrement(arg1) 358 CH06(arg0, 2, 47) 359 360 // DerefOf 361 362 Store (DerefOf(arg1), Local1) 363 CH06(arg0, 3, 47) 364 365 // FindSetLeftBit 366 367 FindSetLeftBit(arg1, Local1) 368 CH06(arg0, 5, 47) 369 370 // FindSetRightBit 371 372 FindSetRightBit(arg1, Local1) 373 CH06(arg0, 7, 47) 374 375 // FromBCD 376 377 FromBCD(arg1, Local1) 378 CH06(arg0, 9, 47) 379 380 // Increment 381 382 Increment(arg1) 383 CH06(arg0, 10, 47) 384 385 // LNot 386 387 Store (LNot(arg1), Local1) 388 CH06(arg0, 11, 47) 389 390 // Not 391 392 Not(arg1, Local1) 393 CH06(arg0, 13, 47) 394 395 // ObjectType 396 397 Store (ObjectType(arg1), Local1) 398 CH03(ts, z096, 23, 0, 0) 399 400 // RefOf 401 402 Store (RefOf(arg1), Local1) 403 CH03(ts, z096, 24, 0, 0) 404 405 // Release 406 407 Release(arg1) 408 CH06(arg0, 14, 47) 409 410 // Reset 411 412 Reset(arg1) 413 CH06(arg0, 15, 47) 414 415 // Signal 416 417 Signal(arg1) 418 CH06(arg0, 16, 47) 419 420 // SizeOf 421 422 Store (SizeOf(arg1), Local1) 423 CH03(ts, z096, 25, 0, 0) 424 425 // Sleep 426 427 Sleep(arg1) 428 CH06(arg0, 17, 47) 429 430 // Stall 431 432 Stall(arg1) 433 CH06(arg0, 18, 47) 434 435 // Store 436 437 Store(arg1, Local1) 438 CH03(ts, z096, 26, 0, 0) 439 440 // ToBCD 441 442 ToBCD(arg1, Local1) 443 CH06(arg0, 21, 47) 444 445 // ToBuffer 446 447 ToBuffer(arg1, Local1) 448 CH06(arg0, 23, 47) 449 450 // ToDecimalString 451 452 ToDecimalString(arg1, Local1) 453 CH06(arg0, 25, 47) 454 455 // ToHexString 456 457 ToHexString(arg1, Local1) 458 CH06(arg0, 27, 47) 459 460 // ToInteger 461 462 ToInteger(arg1, Local1) 463 CH06(arg0, 29, 47) 464 465 // Acquire 466 467 Store(Acquire(arg1, 100), Local1) 468 CH06(arg0, 30, 47) 469 470 // Add 471 472 Add(arg1, i000, Local1) 473 CH06(arg0, 33, 47) 474 475 Add(i000, arg1, Local1) 476 CH06(arg0, 34, 47) 477 478 // And 479 480 And(arg1, i000, Local1) 481 CH06(arg0, 37, 47) 482 483 And(i000, arg1, Local1) 484 CH06(arg0, 38, 47) 485 486 // Concatenate 487 488 Concatenate(arg1, i000, Local1) 489 CH06(arg0, 41, 47) 490 491 Concatenate(i000, arg1, Local1) 492 CH06(arg0, 42, 47) 493 494 // ConcatenateResTemplate 495 496 ConcatenateResTemplate(arg1, ResourceTemplate(){}, Local1) 497 CH06(arg0, 45, 47) 498 499 ConcatenateResTemplate(ResourceTemplate(){}, arg1, Local1) 500 CH06(arg0, 46, 47) 501 502 // Divide 503 504 Divide(arg1, i000, Local2) 505 CH06(arg0, 49, 47) 506 507 Divide(i000, arg1, Local2) 508 CH06(arg0, 50, 47) 509 510 Divide(arg1, i000, Local2, Local1) 511 CH06(arg0, 51, 47) 512 513 Divide(i000, arg1, Local2, Local1) 514 CH06(arg0, 52, 47) 515 516 // Fatal 517 518 Fatal(0xff, 0xffffffff, arg1) 519 CH06(arg0, 53, 47) 520 521 // Index 522 523 Index(arg1, 0, Local1) 524 CH03(ts, z096, 28, 0, 0) 525 526 Index("0", arg1, Local1) 527 CH06(arg0, 57, 47) 528 529 // LEqual 530 531 Store (LEqual(arg1, i000), Local1) 532 CH06(arg0, 58, 47) 533 534 Store (LEqual(i000, arg1), Local1) 535 CH06(arg0, 59, 47) 536 537 // LGreater 538 539 Store (LGreater(arg1, i000), Local1) 540 CH06(arg0, 60, 47) 541 542 Store (LGreater(i000, arg1), Local1) 543 CH06(arg0, 61, 47) 544 545 // LGreaterEqual 546 547 Store (LGreaterEqual(arg1, i000), Local1) 548 CH06(arg0, 62, 0xff) 549 550 Store (LGreaterEqual(i000, arg1), Local1) 551 CH06(arg0, 63, 0xff) 552 553 // LLess 554 555 Store (LLess(arg1, i000), Local1) 556 CH06(arg0, 64, 47) 557 558 Store (LLess(i000, arg1), Local1) 559 CH06(arg0, 65, 47) 560 561 // LLessEqual 562 563 Store (LLessEqual(arg1, i000), Local1) 564 CH06(arg0, 66, 0xff) 565 566 Store (LLessEqual(i000, arg1), Local1) 567 CH06(arg0, 67, 0xff) 568 569 // LNotEqual 570 571 Store (LNotEqual(arg1, i000), Local1) 572 CH06(arg0, 68, 0xff) 573 574 Store (LNotEqual(i000, arg1), Local1) 575 CH06(arg0, 69, 0xff) 576 577 // LOr 578 579 Store (LOr(arg1, i000), Local1) 580 CH06(arg0, 70, 47) 581 582 Store (LOr(i000, arg1), Local1) 583 CH06(arg0, 71, 47) 584 585 // Mod 586 587 Mod(arg1, i000, Local1) 588 CH06(arg0, 74, 47) 589 590 Mod(i000, arg1, Local1) 591 CH06(arg0, 75, 47) 592 593 // Multiply 594 595 Multiply(arg1, i000, Local1) 596 CH06(arg0, 78, 47) 597 598 Multiply(i000, arg1, Local1) 599 CH06(arg0, 79, 47) 600 601 // NAnd 602 603 NAnd(arg1, i000, Local1) 604 CH06(arg0, 82, 47) 605 606 NAnd(i000, arg1, Local1) 607 CH06(arg0, 83, 47) 608 609 // NOr 610 611 NOr(arg1, i000, Local1) 612 CH06(arg0, 86, 47) 613 614 NOr(i000, arg1, Local1) 615 CH06(arg0, 87, 47) 616 617 // Or 618 619 Or(arg1, i000, Local1) 620 CH06(arg0, 90, 47) 621 622 Or(i000, arg1, Local1) 623 CH06(arg0, 91, 47) 624 625 // ShiftLeft 626 627 ShiftLeft(arg1, i000, Local1) 628 CH06(arg0, 94, 47) 629 630 ShiftLeft(i000, arg1, Local1) 631 CH06(arg0, 95, 47) 632 633 // ShiftRight 634 635 ShiftRight(arg1, i000, Local1) 636 CH06(arg0, 98, 47) 637 638 ShiftRight(i000, arg1, Local1) 639 CH06(arg0, 99, 47) 640 641 // Subtract 642 643 Subtract(arg1, i000, Local1) 644 CH06(arg0, 102, 47) 645 646 Subtract(i000, arg1, Local1) 647 CH06(arg0, 103, 47) 648 649 // ToString 650 651 ToString(arg1, 1, Local1) 652 CH06(arg0, 106, 47) 653 654 ToString(i000, arg1, Local1) 655 CH06(arg0, 107, 47) 656 657 // Wait 658 659 Store(Wait(arg1, i000), Local1) 660 CH06(arg0, 108, 47) 661 662 Store(Wait(e000, arg1), Local1) 663 CH06(arg0, 109, 47) 664 665 // XOr 666 667 XOr(arg1, i000, Local1) 668 CH06(arg0, 112, 47) 669 670 XOr(i000, arg1, Local1) 671 CH06(arg0, 113, 47) 672 673 // Mid 674 675 Mid(arg1, 1, 1, Local1) 676 CH06(arg0, 117, 47) 677 678 Mid("123", arg1, 1, Local1) 679 CH06(arg0, 118, 47) 680 681 Mid("123", 1, arg1, Local1) 682 CH06(arg0, 119, 47) 683 684 // Match 685 686 Store (Match(arg1, MTR, 0, MTR, 0, 0), Local1) 687 CH03(ts, z096, 29, 0, 0) 688 689 Store (Match(Package(){1}, MTR, arg1, MTR, 0, 0), Local1) 690 CH06(arg0, 121, 47) 691 692 Store (Match(Package(){1}, MTR, 0, MTR, arg1, 0), Local1) 693 CH06(arg0, 122, 47) 694 695 Store (Match(Package(){1}, MTR, 0, MTR, 0, arg1), Local1) 696 CH06(arg0, 123, 47) 697 } 698 699 // Local 700 Method(m003, 1) 701 { 702 Store(Package(){0x63}, Local0) 703 704 // CondRefOf 705 706 CondRefOf(Local0, Local1) 707 CH03(ts, z096, 31, 0, 0) 708 709 // CopyObject 710 711 CopyObject(Local0, Local1) 712 CH03(ts, z096, 32, 0, 0) 713 714 // Decrement 715 716 Decrement(Local0) 717 CH06(arg0, 1, 47) 718 719 // DerefOf 720 721 Store (DerefOf(Local0), Local1) 722 CH06(arg0, 2, 47) 723 724 // FindSetLeftBit 725 726 FindSetLeftBit(Local0, Local1) 727 CH06(arg0, 4, 47) 728 729 // FindSetRightBit 730 731 FindSetRightBit(Local0, Local1) 732 CH06(arg0, 6, 47) 733 734 // FromBCD 735 736 FromBCD(Local0, Local1) 737 CH06(arg0, 8, 47) 738 739 // Increment 740 741 Increment(Local0) 742 CH06(arg0, 9, 47) 743 744 // LNot 745 746 Store (LNot(Local0), Local1) 747 CH06(arg0, 10, 47) 748 749 // Not 750 751 Not(Local0, Local1) 752 CH06(arg0, 12, 47) 753 754 // ObjectType 755 756 Store (ObjectType(Local0), Local1) 757 CH03(ts, z096, 33, 0, 0) 758 759 // RefOf 760 761 Store (RefOf(Local0), Local1) 762 CH03(ts, z096, 34, 0, 0) 763 764 // Release 765 766 Release(Local0) 767 CH06(arg0, 13, 47) 768 769 // Reset 770 771 Reset(Local0) 772 CH06(arg0, 14, 47) 773 774 // Signal 775 776 Signal(Local0) 777 CH06(arg0, 15, 47) 778 779 // SizeOf 780 781 Store (SizeOf(Local0), Local1) 782 CH03(ts, z096, 35, 0, 0) 783 784 // Sleep 785 786 Sleep(Local0) 787 CH06(arg0, 17, 47) 788 789 // Stall 790 791 Stall(Local0) 792 CH06(arg0, 18, 47) 793 794 // Store 795 796 Store(Local0, Local1) 797 CH03(ts, z096, 36, 0, 0) 798 799 // ToBCD 800 801 ToBCD(Local0, Local1) 802 CH06(arg0, 21, 47) 803 804 // ToBuffer 805 806 ToBuffer(Local0, Local1) 807 CH06(arg0, 23, 47) 808 809 // ToDecimalString 810 811 ToDecimalString(Local0, Local1) 812 CH06(arg0, 25, 47) 813 814 // ToHexString 815 816 ToHexString(Local0, Local1) 817 CH06(arg0, 27, 47) 818 819 // ToInteger 820 821 ToInteger(Local0, Local1) 822 CH06(arg0, 29, 47) 823 824 // Acquire 825 826 Store(Acquire(Local0, 100), Local1) 827 CH06(arg0, 30, 47) 828 829 // Add 830 831 Add(i000, Local0, Local1) 832 CH06(arg0, 34, 47) 833 834 // And 835 836 And(Local0, i000, Local1) 837 CH06(arg0, 37, 47) 838 839 And(i000, Local0, Local1) 840 CH06(arg0, 38, 47) 841 842 // Concatenate 843 844 Concatenate(Local0, i000, Local1) 845 CH06(arg0, 41, 47) 846 847 Concatenate(i000, Local0, Local1) 848 CH06(arg0, 42, 47) 849 850 // ConcatenateResTemplate 851 852 ConcatenateResTemplate(Local0, ResourceTemplate(){}, Local1) 853 CH06(arg0, 45, 47) 854 855 ConcatenateResTemplate(ResourceTemplate(){}, Local0, Local1) 856 CH06(arg0, 46, 47) 857 858 // Divide 859 860 Divide(Local0, i000, Local2) 861 CH06(arg0, 49, 47) 862 863 Divide(i000, Local0, Local2) 864 CH06(arg0, 50, 47) 865 866 Divide(Local0, i000, Local2, Local1) 867 CH06(arg0, 51, 47) 868 869 Divide(i000, Local0, Local2, Local1) 870 CH06(arg0, 52, 47) 871 872 // Fatal 873 874 Fatal(0xff, 0xffffffff, Local0) 875 CH06(arg0, 53, 47) 876 877 // Index 878 879 Index(Local0, 0, Local1) 880 CH03(ts, z096, 38, 0, 0) 881 882 Index("0", Local0, Local1) 883 CH06(arg0, 57, 47) 884 885 // LEqual 886 887 Store (LEqual(Local0, i000), Local1) 888 CH06(arg0, 58, 47) 889 890 Store (LEqual(i000, Local0), Local1) 891 CH06(arg0, 59, 47) 892 893 // LGreater 894 895 Store (LGreater(Local0, i000), Local1) 896 CH06(arg0, 60, 47) 897 898 Store (LGreater(i000, Local0), Local1) 899 CH06(arg0, 61, 47) 900 901 // LGreaterEqual 902 903 Store (LGreaterEqual(Local0, i000), Local1) 904 CH06(arg0, 62, 0xff) 905 906 Store (LGreaterEqual(i000, Local0), Local1) 907 CH06(arg0, 63, 0xff) 908 909 // LLess 910 911 Store (LLess(Local0, i000), Local1) 912 CH06(arg0, 64, 47) 913 914 Store (LLess(i000, Local0), Local1) 915 CH06(arg0, 65, 47) 916 917 // LLessEqual 918 919 Store (LLessEqual(Local0, i000), Local1) 920 CH06(arg0, 66, 0xff) 921 922 Store (LLessEqual(i000, Local0), Local1) 923 CH06(arg0, 67, 0xff) 924 925 // LNotEqual 926 927 Store (LNotEqual(Local0, i000), Local1) 928 CH06(arg0, 68, 0xff) 929 930 Store (LNotEqual(i000, Local0), Local1) 931 CH06(arg0, 69, 0xff) 932 933 // LOr 934 935 Store (LOr(Local0, i000), Local1) 936 CH06(arg0, 70, 47) 937 938 Store (LOr(i000, Local0), Local1) 939 CH06(arg0, 71, 47) 940 941 // Mod 942 943 Mod(Local0, i000, Local1) 944 CH06(arg0, 74, 47) 945 946 Mod(i000, Local0, Local1) 947 CH06(arg0, 75, 47) 948 949 // Multiply 950 951 Multiply(Local0, i000, Local1) 952 CH06(arg0, 78, 47) 953 954 Multiply(i000, Local0, Local1) 955 CH06(arg0, 79, 47) 956 957 // NAnd 958 959 NAnd(Local0, i000, Local1) 960 CH06(arg0, 82, 47) 961 962 NAnd(i000, Local0, Local1) 963 CH06(arg0, 83, 47) 964 965 // NOr 966 967 NOr(Local0, i000, Local1) 968 CH06(arg0, 86, 47) 969 970 NOr(i000, Local0, Local1) 971 CH06(arg0, 87, 47) 972 973 // Or 974 975 Or(Local0, i000, Local1) 976 CH06(arg0, 90, 47) 977 978 Or(i000, Local0, Local1) 979 CH06(arg0, 91, 47) 980 981 // ShiftLeft 982 983 ShiftLeft(Local0, i000, Local1) 984 CH06(arg0, 94, 47) 985 986 ShiftLeft(i000, Local0, Local1) 987 CH06(arg0, 95, 47) 988 989 // ShiftRight 990 991 ShiftRight(Local0, i000, Local1) 992 CH06(arg0, 98, 47) 993 994 ShiftRight(i000, Local0, Local1) 995 CH06(arg0, 99, 47) 996 997 // Subtract 998 999 Subtract(Local0, i000, Local1) 1000 CH06(arg0, 102, 47) 1001 1002 Subtract(i000, Local0, Local1) 1003 CH06(arg0, 103, 47) 1004 1005 // ToString 1006 1007 ToString(Local0, 1, Local1) 1008 CH06(arg0, 106, 47) 1009 1010 ToString(i000, Local0, Local1) 1011 CH06(arg0, 107, 47) 1012 1013 // Wait 1014 1015 Store(Wait(Local0, i000), Local1) 1016 CH06(arg0, 108, 47) 1017 1018 Store(Wait(e000, Local0), Local1) 1019 CH06(arg0, 109, 47) 1020 1021 // XOr 1022 1023 XOr(Local0, i000, Local1) 1024 CH06(arg0, 112, 47) 1025 1026 XOr(i000, Local0, Local1) 1027 CH06(arg0, 113, 47) 1028 1029 // Mid 1030 1031 Mid(Local0, 1, 1, Local1) 1032 CH06(arg0, 117, 47) 1033 1034 Mid("123", Local0, 1, Local1) 1035 CH06(arg0, 118, 47) 1036 1037 Mid("123", 1, Local0, Local1) 1038 CH06(arg0, 119, 47) 1039 1040 // Match 1041 1042 Store (Match(Local0, MTR, 0, MTR, 0, 0), Local1) 1043 CH03(ts, z096, 39, 0, 0) 1044 1045 Store (Match(Package(){1}, MTR, Local0, MTR, 0, 0), Local1) 1046 CH06(arg0, 121, 47) 1047 1048 Store (Match(Package(){1}, MTR, 0, MTR, Local0, 0), Local1) 1049 CH06(arg0, 122, 47) 1050 1051 Store (Match(Package(){1}, MTR, 0, MTR, 0, Local0), Local1) 1052 CH06(arg0, 123, 47) 1053 } 1054 1055 // An element of Package 1056 Method(m004, 1, Serialized) 1057 { 1058 Name(p000, Package(){Package(){0x63}}) 1059 1060 // DeRefOf(Index(Package, Ind)) 1061 1062 // CondRefOf 1063 1064 CondRefOf(DeRefOf(Index(p000, 0)), Local1) 1065 CH06(arg0, 1, 47) 1066 1067 // CopyObject 1068 1069 CopyObject(DeRefOf(Index(p000, 0)), Local1) 1070 CH03(ts, z096, 40, 0, 0) 1071 1072 // Decrement 1073 1074 Decrement(DeRefOf(Index(p000, 0))) 1075 CH06(arg0, 2, 47) 1076 1077 // DerefOf 1078 1079 Store (DerefOf(DeRefOf(Index(p000, 0))), Local1) 1080 CH06(arg0, 3, 47) 1081 1082 // FindSetLeftBit 1083 1084 FindSetLeftBit(DeRefOf(Index(p000, 0)), Local1) 1085 CH06(arg0, 5, 47) 1086 1087 // FindSetRightBit 1088 1089 FindSetRightBit(DeRefOf(Index(p000, 0)), Local1) 1090 CH06(arg0, 7, 47) 1091 1092 // FromBCD 1093 1094 FromBCD(DeRefOf(Index(p000, 0)), Local1) 1095 CH06(arg0, 9, 47) 1096 1097 // Increment 1098 1099 Increment(DeRefOf(Index(p000, 0))) 1100 CH06(arg0, 10, 47) 1101 1102 // LNot 1103 1104 Store (LNot(DeRefOf(Index(p000, 0))), Local1) 1105 CH06(arg0, 11, 47) 1106 1107 // Not 1108 1109 Not(DeRefOf(Index(p000, 0)), Local1) 1110 CH06(arg0, 13, 47) 1111 1112 // ObjectType 1113 1114 Store (ObjectType(DeRefOf(Index(p000, 0))), Local1) 1115 CH03(ts, z096, 41, 0, 0) 1116 1117 // RefOf 1118 1119 Store (RefOf(DeRefOf(Index(p000, 0))), Local1) 1120 CH06(arg0, 14, 47) 1121 1122 // Release 1123 1124 // Reset 1125 1126 // Signal 1127 1128 // SizeOf 1129 1130 Store (SizeOf(DeRefOf(Index(p000, 0))), Local1) 1131 CH03(ts, z096, 42, 0, 0) 1132 1133 // Sleep 1134 1135 Sleep(DeRefOf(Index(p000, 0))) 1136 CH06(arg0, 17, 47) 1137 1138 // Stall 1139 1140 Stall(DeRefOf(Index(p000, 0))) 1141 CH06(arg0, 18, 47) 1142 1143 // Store 1144 1145 Store(DeRefOf(Index(p000, 0)), Local1) 1146 CH03(ts, z096, 43, 0, 0) 1147 1148 // ToBCD 1149 1150 ToBCD(DeRefOf(Index(p000, 0)), Local1) 1151 CH06(arg0, 21, 47) 1152 1153 // ToBuffer 1154 1155 ToBuffer(DeRefOf(Index(p000, 0)), Local1) 1156 CH06(arg0, 23, 47) 1157 1158 // ToDecimalString 1159 1160 ToDecimalString(DeRefOf(Index(p000, 0)), Local1) 1161 CH06(arg0, 25, 47) 1162 1163 // ToHexString 1164 1165 ToHexString(DeRefOf(Index(p000, 0)), Local1) 1166 CH06(arg0, 27, 47) 1167 1168 // ToInteger 1169 1170 ToInteger(DeRefOf(Index(p000, 0)), Local1) 1171 CH06(arg0, 29, 47) 1172 1173 // Acquire 1174 1175 // Add 1176 1177 Add(DeRefOf(Index(p000, 0)), i000, Local1) 1178 CH06(arg0, 33, 47) 1179 1180 Add(i000, DeRefOf(Index(p000, 0)), Local1) 1181 CH06(arg0, 34, 47) 1182 1183 // And 1184 1185 And(DeRefOf(Index(p000, 0)), i000, Local1) 1186 CH06(arg0, 37, 47) 1187 1188 And(i000, DeRefOf(Index(p000, 0)), Local1) 1189 CH06(arg0, 38, 47) 1190 1191 // Concatenate 1192 1193 Concatenate(DeRefOf(Index(p000, 0)), i000, Local1) 1194 CH06(arg0, 41, 47) 1195 1196 Concatenate(i000, DeRefOf(Index(p000, 0)), Local1) 1197 CH06(arg0, 42, 47) 1198 1199 // ConcatenateResTemplate 1200 1201 ConcatenateResTemplate(DeRefOf(Index(p000, 0)), ResourceTemplate(){}, Local1) 1202 CH06(arg0, 45, 47) 1203 1204 ConcatenateResTemplate(ResourceTemplate(){}, DeRefOf(Index(p000, 0)), Local1) 1205 CH06(arg0, 46, 47) 1206 1207 // Divide 1208 1209 Divide(DeRefOf(Index(p000, 0)), i000, Local2) 1210 CH06(arg0, 49, 47) 1211 1212 Divide(i000, DeRefOf(Index(p000, 0)), Local2) 1213 CH06(arg0, 50, 47) 1214 1215 Divide(DeRefOf(Index(p000, 0)), i000, Local2, Local1) 1216 CH06(arg0, 51, 47) 1217 1218 Divide(i000, DeRefOf(Index(p000, 0)), Local2, Local1) 1219 CH06(arg0, 52, 47) 1220 1221 // Fatal 1222 1223 Fatal(0xff, 0xffffffff, DeRefOf(Index(p000, 0))) 1224 CH06(arg0, 53, 47) 1225 1226 // Index 1227 1228 Index(DeRefOf(Index(p000, 0)), 0, Local1) 1229 CH03(ts, z096, 45, 0, 0) 1230 1231 Index("0", DeRefOf(Index(p000, 0)), Local1) 1232 CH06(arg0, 57, 47) 1233 1234 // LEqual 1235 1236 Store (LEqual(DeRefOf(Index(p000, 0)), i000), Local1) 1237 CH06(arg0, 58, 47) 1238 1239 Store (LEqual(i000, DeRefOf(Index(p000, 0))), Local1) 1240 CH06(arg0, 59, 47) 1241 1242 // LGreater 1243 1244 Store (LGreater(DeRefOf(Index(p000, 0)), i000), Local1) 1245 CH06(arg0, 60, 47) 1246 1247 Store (LGreater(i000, DeRefOf(Index(p000, 0))), Local1) 1248 CH06(arg0, 61, 47) 1249 1250 // LGreaterEqual 1251 1252 Store (LGreaterEqual(DeRefOf(Index(p000, 0)), i000), Local1) 1253 CH06(arg0, 62, 0xff) 1254 1255 Store (LGreaterEqual(i000, DeRefOf(Index(p000, 0))), Local1) 1256 CH06(arg0, 63, 0xff) 1257 1258 // LLess 1259 1260 Store (LLess(DeRefOf(Index(p000, 0)), i000), Local1) 1261 CH06(arg0, 64, 47) 1262 1263 Store (LLess(i000, DeRefOf(Index(p000, 0))), Local1) 1264 CH06(arg0, 65, 47) 1265 1266 // LLessEqual 1267 1268 Store (LLessEqual(DeRefOf(Index(p000, 0)), i000), Local1) 1269 CH06(arg0, 66, 0xff) 1270 1271 Store (LLessEqual(i000, DeRefOf(Index(p000, 0))), Local1) 1272 CH06(arg0, 67, 0xff) 1273 1274 // LNotEqual 1275 1276 Store (LNotEqual(DeRefOf(Index(p000, 0)), i000), Local1) 1277 CH06(arg0, 68, 0xff) 1278 1279 Store (LNotEqual(i000, DeRefOf(Index(p000, 0))), Local1) 1280 CH06(arg0, 69, 0xff) 1281 1282 // LOr 1283 1284 Store (LOr(DeRefOf(Index(p000, 0)), i000), Local1) 1285 CH06(arg0, 70, 47) 1286 1287 Store (LOr(i000, DeRefOf(Index(p000, 0))), Local1) 1288 CH06(arg0, 71, 47) 1289 1290 // Mod 1291 1292 Mod(DeRefOf(Index(p000, 0)), i000, Local1) 1293 CH06(arg0, 74, 47) 1294 1295 Mod(i000, DeRefOf(Index(p000, 0)), Local1) 1296 CH06(arg0, 75, 47) 1297 1298 // Multiply 1299 1300 Multiply(DeRefOf(Index(p000, 0)), i000, Local1) 1301 CH06(arg0, 78, 47) 1302 1303 Multiply(i000, DeRefOf(Index(p000, 0)), Local1) 1304 CH06(arg0, 79, 47) 1305 1306 // NAnd 1307 1308 NAnd(DeRefOf(Index(p000, 0)), i000, Local1) 1309 CH06(arg0, 82, 47) 1310 1311 NAnd(i000, DeRefOf(Index(p000, 0)), Local1) 1312 CH06(arg0, 83, 47) 1313 1314 // NOr 1315 1316 NOr(DeRefOf(Index(p000, 0)), i000, Local1) 1317 CH06(arg0, 86, 47) 1318 1319 NOr(i000, DeRefOf(Index(p000, 0)), Local1) 1320 CH06(arg0, 87, 47) 1321 1322 // Or 1323 1324 Or(DeRefOf(Index(p000, 0)), i000, Local1) 1325 CH06(arg0, 90, 47) 1326 1327 Or(i000, DeRefOf(Index(p000, 0)), Local1) 1328 CH06(arg0, 91, 47) 1329 1330 // ShiftLeft 1331 1332 ShiftLeft(DeRefOf(Index(p000, 0)), i000, Local1) 1333 CH06(arg0, 94, 47) 1334 1335 ShiftLeft(i000, DeRefOf(Index(p000, 0)), Local1) 1336 CH06(arg0, 95, 47) 1337 1338 // ShiftRight 1339 1340 ShiftRight(DeRefOf(Index(p000, 0)), i000, Local1) 1341 CH06(arg0, 98, 47) 1342 1343 ShiftRight(i000, DeRefOf(Index(p000, 0)), Local1) 1344 CH06(arg0, 99, 47) 1345 1346 // Subtract 1347 1348 Subtract(DeRefOf(Index(p000, 0)), i000, Local1) 1349 CH06(arg0, 102, 47) 1350 1351 Subtract(i000, DeRefOf(Index(p000, 0)), Local1) 1352 CH06(arg0, 103, 47) 1353 1354 // ToString 1355 1356 ToString(DeRefOf(Index(p000, 0)), 1, Local1) 1357 CH06(arg0, 106, 47) 1358 1359 ToString(i000, DeRefOf(Index(p000, 0)), Local1) 1360 CH06(arg0, 107, 47) 1361 1362 // Wait 1363 1364 Store(Wait(e000, DeRefOf(Index(p000, 0))), Local1) 1365 CH06(arg0, 109, 47) 1366 1367 // XOr 1368 1369 XOr(DeRefOf(Index(p000, 0)), i000, Local1) 1370 CH06(arg0, 112, 47) 1371 1372 XOr(i000, DeRefOf(Index(p000, 0)), Local1) 1373 CH06(arg0, 113, 47) 1374 1375 // Mid 1376 1377 Mid(DeRefOf(Index(p000, 0)), 1, 1, Local1) 1378 CH06(arg0, 117, 47) 1379 1380 Mid("123", DeRefOf(Index(p000, 0)), 1, Local1) 1381 CH06(arg0, 118, 47) 1382 1383 Mid("123", 1, DeRefOf(Index(p000, 0)), Local1) 1384 CH06(arg0, 119, 47) 1385 1386 // Match 1387 1388 Store (Match(DeRefOf(Index(p000, 0)), MTR, 0, MTR, 0, 0), Local1) 1389 CH03(ts, z096, 46, 0, 0) 1390 1391 Store (Match(Package(){1}, MTR, DeRefOf(Index(p000, 0)), MTR, 0, 0), Local1) 1392 CH06(arg0, 121, 47) 1393 1394 Store (Match(Package(){1}, MTR, 0, MTR, DeRefOf(Index(p000, 0)), 0), Local1) 1395 CH06(arg0, 122, 47) 1396 1397 Store (Match(Package(){1}, MTR, 0, MTR, 0, DeRefOf(Index(p000, 0))), Local1) 1398 CH06(arg0, 123, 47) 1399 1400 1401 // DeRefOf(Index(Package, Ind, Dest)) 1402 1403 // CondRefOf 1404 1405 CondRefOf(DeRefOf(Index(p000, 0, Local0)), Local1) 1406 CH06(arg0, 204, 47) 1407 1408 // CopyObject 1409 1410 CopyObject(DeRefOf(Index(p000, 0, Local0)), Local1) 1411 CH03(ts, z096, 47, 0, 0) 1412 1413 // Decrement 1414 1415 Decrement(DeRefOf(Index(p000, 0, Local0))) 1416 CH06(arg0, 1, 47) 1417 1418 // DerefOf 1419 1420 Store (DerefOf(DeRefOf(Index(p000, 0, Local0))), Local1) 1421 CH06(arg0, 2, 47) 1422 1423 // FindSetLeftBit 1424 1425 FindSetLeftBit(DeRefOf(Index(p000, 0, Local0)), Local1) 1426 CH06(arg0, 4, 47) 1427 1428 // FindSetRightBit 1429 1430 FindSetRightBit(DeRefOf(Index(p000, 0, Local0)), Local1) 1431 CH06(arg0, 6, 47) 1432 1433 // FromBCD 1434 1435 FromBCD(DeRefOf(Index(p000, 0, Local0)), Local1) 1436 CH06(arg0, 8, 47) 1437 1438 // Increment 1439 1440 Increment(DeRefOf(Index(p000, 0, Local0))) 1441 CH06(arg0, 9, 47) 1442 1443 // LNot 1444 1445 Store (LNot(DeRefOf(Index(p000, 0, Local0))), Local1) 1446 CH06(arg0, 10, 47) 1447 1448 // Not 1449 1450 Not(DeRefOf(Index(p000, 0, Local0)), Local1) 1451 CH06(arg0, 12, 47) 1452 1453 // ObjectType 1454 1455 Store (ObjectType(DeRefOf(Index(p000, 0, Local0))), Local1) 1456 CH03(ts, z096, 48, 0, 0) 1457 1458 // RefOf 1459 1460 Store (RefOf(DeRefOf(Index(p000, 0, Local0))), Local1) 1461 CH06(arg0, 205, 47) 1462 1463 // Release 1464 1465 // Reset 1466 1467 // Signal 1468 1469 // SizeOf 1470 1471 Store (SizeOf(DeRefOf(Index(p000, 0, Local0))), Local1) 1472 CH03(ts, z096, 49, 0, 0) 1473 1474 // Sleep 1475 1476 Sleep(DeRefOf(Index(p000, 0, Local0))) 1477 CH06(arg0, 17, 47) 1478 1479 // Stall 1480 1481 Stall(DeRefOf(Index(p000, 0, Local0))) 1482 CH06(arg0, 18, 47) 1483 1484 // Store 1485 1486 Store(DeRefOf(Index(p000, 0, Local0)), Local1) 1487 CH03(ts, z096, 50, 0, 0) 1488 1489 // ToBCD 1490 1491 ToBCD(DeRefOf(Index(p000, 0, Local0)), Local1) 1492 CH06(arg0, 21, 47) 1493 1494 // ToBuffer 1495 1496 ToBuffer(DeRefOf(Index(p000, 0, Local0)), Local1) 1497 CH06(arg0, 23, 47) 1498 1499 // ToDecimalString 1500 1501 ToDecimalString(DeRefOf(Index(p000, 0, Local0)), Local1) 1502 CH06(arg0, 25, 47) 1503 1504 // ToHexString 1505 1506 ToHexString(DeRefOf(Index(p000, 0, Local0)), Local1) 1507 CH06(arg0, 27, 47) 1508 1509 // ToInteger 1510 1511 ToInteger(DeRefOf(Index(p000, 0, Local0)), Local1) 1512 CH06(arg0, 29, 47) 1513 1514 // Acquire 1515 1516 // Add 1517 1518 Add(DeRefOf(Index(p000, 0, Local0)), i000, Local1) 1519 CH06(arg0, 33, 47) 1520 1521 Add(i000, DeRefOf(Index(p000, 0, Local0)), Local1) 1522 CH06(arg0, 34, 47) 1523 1524 // And 1525 1526 And(DeRefOf(Index(p000, 0, Local0)), i000, Local1) 1527 CH06(arg0, 37, 47) 1528 1529 And(i000, DeRefOf(Index(p000, 0, Local0)), Local1) 1530 CH06(arg0, 38, 47) 1531 1532 // Concatenate 1533 1534 Concatenate(DeRefOf(Index(p000, 0, Local0)), i000, Local1) 1535 CH06(arg0, 41, 47) 1536 1537 Concatenate(i000, DeRefOf(Index(p000, 0, Local0)), Local1) 1538 CH06(arg0, 42, 47) 1539 1540 // ConcatenateResTemplate 1541 1542 ConcatenateResTemplate(DeRefOf(Index(p000, 0, Local0)), ResourceTemplate(){}, Local1) 1543 CH06(arg0, 45, 47) 1544 1545 ConcatenateResTemplate(ResourceTemplate(){}, DeRefOf(Index(p000, 0, Local0)), Local1) 1546 CH06(arg0, 46, 47) 1547 1548 // Divide 1549 1550 Divide(DeRefOf(Index(p000, 0, Local0)), i000, Local2) 1551 CH06(arg0, 49, 47) 1552 1553 Divide(i000, DeRefOf(Index(p000, 0, Local0)), Local2) 1554 CH06(arg0, 50, 47) 1555 1556 Divide(DeRefOf(Index(p000, 0, Local0)), i000, Local2, Local1) 1557 CH06(arg0, 51, 47) 1558 1559 Divide(i000, DeRefOf(Index(p000, 0, Local0)), Local2, Local1) 1560 CH06(arg0, 52, 47) 1561 1562 // Fatal 1563 1564 Fatal(0xff, 0xffffffff, DeRefOf(Index(p000, 0, Local0))) 1565 CH06(arg0, 53, 47) 1566 1567 // Index 1568 1569 Index(DeRefOf(Index(p000, 0, Local0)), 0, Local1) 1570 CH03(ts, z096, 52, 0, 0) 1571 1572 Index("0", DeRefOf(Index(p000, 0, Local0)), Local1) 1573 CH06(arg0, 57, 47) 1574 1575 // LEqual 1576 1577 Store (LEqual(DeRefOf(Index(p000, 0, Local0)), i000), Local1) 1578 CH06(arg0, 58, 47) 1579 1580 Store (LEqual(i000, DeRefOf(Index(p000, 0, Local0))), Local1) 1581 CH06(arg0, 59, 47) 1582 1583 // LGreater 1584 1585 Store (LGreater(DeRefOf(Index(p000, 0, Local0)), i000), Local1) 1586 CH06(arg0, 60, 47) 1587 1588 Store (LGreater(i000, DeRefOf(Index(p000, 0, Local0))), Local1) 1589 CH06(arg0, 61, 47) 1590 1591 // LGreaterEqual 1592 1593 Store (LGreaterEqual(DeRefOf(Index(p000, 0, Local0)), i000), Local1) 1594 CH06(arg0, 62, 0xff) 1595 1596 Store (LGreaterEqual(i000, DeRefOf(Index(p000, 0, Local0))), Local1) 1597 CH06(arg0, 63, 0xff) 1598 1599 // LLess 1600 1601 Store (LLess(DeRefOf(Index(p000, 0, Local0)), i000), Local1) 1602 CH06(arg0, 64, 47) 1603 1604 Store (LLess(i000, DeRefOf(Index(p000, 0, Local0))), Local1) 1605 CH06(arg0, 65, 47) 1606 1607 // LLessEqual 1608 1609 Store (LLessEqual(DeRefOf(Index(p000, 0, Local0)), i000), Local1) 1610 CH06(arg0, 66, 0xff) 1611 1612 Store (LLessEqual(i000, DeRefOf(Index(p000, 0, Local0))), Local1) 1613 CH06(arg0, 67, 0xff) 1614 1615 // LNotEqual 1616 1617 Store (LNotEqual(DeRefOf(Index(p000, 0, Local0)), i000), Local1) 1618 CH06(arg0, 68, 0xff) 1619 1620 Store (LNotEqual(i000, DeRefOf(Index(p000, 0, Local0))), Local1) 1621 CH06(arg0, 69, 0xff) 1622 1623 // LOr 1624 1625 Store (LOr(DeRefOf(Index(p000, 0, Local0)), i000), Local1) 1626 CH06(arg0, 70, 47) 1627 1628 Store (LOr(i000, DeRefOf(Index(p000, 0, Local0))), Local1) 1629 CH06(arg0, 71, 47) 1630 1631 // Mod 1632 1633 Mod(DeRefOf(Index(p000, 0, Local0)), i000, Local1) 1634 CH06(arg0, 74, 47) 1635 1636 Mod(i000, DeRefOf(Index(p000, 0, Local0)), Local1) 1637 CH06(arg0, 75, 47) 1638 1639 // Multiply 1640 1641 Multiply(DeRefOf(Index(p000, 0, Local0)), i000, Local1) 1642 CH06(arg0, 78, 47) 1643 1644 Multiply(i000, DeRefOf(Index(p000, 0, Local0)), Local1) 1645 CH06(arg0, 79, 47) 1646 1647 // NAnd 1648 1649 NAnd(DeRefOf(Index(p000, 0, Local0)), i000, Local1) 1650 CH06(arg0, 82, 47) 1651 1652 NAnd(i000, DeRefOf(Index(p000, 0, Local0)), Local1) 1653 CH06(arg0, 83, 47) 1654 1655 // NOr 1656 1657 NOr(DeRefOf(Index(p000, 0, Local0)), i000, Local1) 1658 CH06(arg0, 86, 47) 1659 1660 NOr(i000, DeRefOf(Index(p000, 0, Local0)), Local1) 1661 CH06(arg0, 87, 47) 1662 1663 // Or 1664 1665 Or(DeRefOf(Index(p000, 0, Local0)), i000, Local1) 1666 CH06(arg0, 90, 47) 1667 1668 Or(i000, DeRefOf(Index(p000, 0, Local0)), Local1) 1669 CH06(arg0, 91, 47) 1670 1671 // ShiftLeft 1672 1673 ShiftLeft(DeRefOf(Index(p000, 0, Local0)), i000, Local1) 1674 CH06(arg0, 94, 47) 1675 1676 ShiftLeft(i000, DeRefOf(Index(p000, 0, Local0)), Local1) 1677 CH06(arg0, 95, 47) 1678 1679 // ShiftRight 1680 1681 ShiftRight(DeRefOf(Index(p000, 0, Local0)), i000, Local1) 1682 CH06(arg0, 98, 47) 1683 1684 ShiftRight(i000, DeRefOf(Index(p000, 0, Local0)), Local1) 1685 CH06(arg0, 99, 47) 1686 1687 // Subtract 1688 1689 Subtract(DeRefOf(Index(p000, 0, Local0)), i000, Local1) 1690 CH06(arg0, 102, 47) 1691 1692 Subtract(i000, DeRefOf(Index(p000, 0, Local0)), Local1) 1693 CH06(arg0, 103, 47) 1694 1695 // ToString 1696 1697 ToString(DeRefOf(Index(p000, 0, Local0)), 1, Local1) 1698 CH06(arg0, 106, 47) 1699 1700 ToString(i000, DeRefOf(Index(p000, 0, Local0)), Local1) 1701 CH06(arg0, 107, 47) 1702 1703 // Wait 1704 1705 Store(Wait(e000, DeRefOf(Index(p000, 0, Local0))), Local1) 1706 CH06(arg0, 109, 47) 1707 1708 // XOr 1709 1710 XOr(DeRefOf(Index(p000, 0, Local0)), i000, Local1) 1711 CH06(arg0, 112, 47) 1712 1713 XOr(i000, DeRefOf(Index(p000, 0, Local0)), Local1) 1714 CH06(arg0, 113, 47) 1715 1716 // Mid 1717 1718 Mid(DeRefOf(Index(p000, 0, Local0)), 1, 1, Local1) 1719 CH06(arg0, 117, 47) 1720 1721 Mid("123", DeRefOf(Index(p000, 0, Local0)), 1, Local1) 1722 CH06(arg0, 118, 47) 1723 1724 Mid("123", 1, DeRefOf(Index(p000, 0, Local0)), Local1) 1725 CH06(arg0, 119, 47) 1726 1727 // Match 1728 1729 Store (Match(DeRefOf(Index(p000, 0, Local0)), MTR, 0, MTR, 0, 0), Local1) 1730 CH03(ts, z096, 53, 0, 0) 1731 1732 Store (Match(Package(){1}, MTR, DeRefOf(Index(p000, 0, Local0)), MTR, 0, 0), Local1) 1733 CH06(arg0, 121, 47) 1734 1735 Store (Match(Package(){1}, MTR, 0, MTR, DeRefOf(Index(p000, 0, Local0)), 0), Local1) 1736 CH06(arg0, 122, 47) 1737 1738 Store (Match(Package(){1}, MTR, 0, MTR, 0, DeRefOf(Index(p000, 0, Local0))), Local1) 1739 CH06(arg0, 123, 47) 1740 } 1741 1742 // Reference to Object 1743 Method(m005, 2) 1744 { 1745 Store(arg0, Debug) 1746 Store(arg1, Debug) 1747 1748 Store(ObjectType(arg1), Local0) 1749 if (LNotEqual(Local0, 4)) { 1750 err(arg0, z096, 0, 0, 0, Local0, 4) 1751 return (1) 1752 } 1753 1754 Store (DerefOf(arg1), Local1) 1755 CH03(ts, z096, 54, 0, 0) 1756 1757 // CondRefOf 1758 1759 Store (CondRefOf(DerefOf(arg1)), Local1) 1760 CH06(arg0, 1, 47) 1761 1762 Store (CondRefOf(DerefOf(arg1), Local1), Local1) 1763 CH06(arg0, 2, 47) 1764 1765 // CopyObject 1766 1767 CopyObject(DerefOf(arg1), Local1) 1768 CH03(ts, z096, 55, 0, 0) 1769 1770 // Decrement 1771 1772 Decrement(DerefOf(arg1)) 1773 CH06(arg0, 3, 47) 1774 1775 // DerefOf 1776 1777 Store (DerefOf(DerefOf(arg1)), Local1) 1778 CH06(arg0, 4, 47) 1779 1780 // FindSetLeftBit 1781 1782 FindSetLeftBit(DerefOf(arg1), Local1) 1783 CH06(arg0, 6, 47) 1784 1785 // FindSetRightBit 1786 1787 FindSetRightBit(DerefOf(arg1), Local1) 1788 CH06(arg0, 8, 47) 1789 1790 // FromBCD 1791 1792 FromBCD(DerefOf(arg1), Local1) 1793 CH06(arg0, 10, 47) 1794 1795 // Increment 1796 1797 Increment(DerefOf(arg1)) 1798 CH06(arg0, 11, 47) 1799 1800 // LNot 1801 1802 Store (LNot(DerefOf(arg1)), Local1) 1803 CH06(arg0, 12, 47) 1804 1805 // Not 1806 1807 Not(DerefOf(arg1), Local1) 1808 CH06(arg0, 14, 47) 1809 1810 // ObjectType 1811 1812 Store (ObjectType(DerefOf(arg1)), Local1) 1813 CH03(ts, z096, 56, 0, 0) 1814 1815 // RefOf 1816 1817 Store (RefOf(DerefOf(arg1)), Local1) 1818 CH06(arg0, 15, 47) 1819 1820 // Release 1821 1822 // Reset 1823 1824 // Signal 1825 1826 // SizeOf 1827 1828 Store (SizeOf(DerefOf(arg1)), Local1) 1829 CH03(ts, z096, 57, 0, 0) 1830 1831 // Sleep 1832 1833 Sleep(DerefOf(arg1)) 1834 CH06(arg0, 17, 47) 1835 1836 // Stall 1837 1838 Stall(DerefOf(arg1)) 1839 CH06(arg0, 18, 47) 1840 1841 // Store 1842 1843 Store(DerefOf(arg1), Local1) 1844 CH03(ts, z096, 58, 0, 0) 1845 1846 // ToBCD 1847 1848 ToBCD(DerefOf(arg1), Local1) 1849 CH06(arg0, 21, 47) 1850 1851 // ToBuffer 1852 1853 ToBuffer(DerefOf(arg1), Local1) 1854 CH06(arg0, 23, 47) 1855 1856 // ToDecimalString 1857 1858 ToDecimalString(DerefOf(arg1), Local1) 1859 CH06(arg0, 25, 47) 1860 1861 // ToHexString 1862 1863 ToHexString(DerefOf(arg1), Local1) 1864 CH06(arg0, 27, 47) 1865 1866 // ToInteger 1867 1868 ToInteger(DerefOf(arg1), Local1) 1869 CH06(arg0, 29, 47) 1870 1871 // Acquire 1872 1873 // Add 1874 1875 Add(DerefOf(arg1), i000, Local1) 1876 CH06(arg0, 33, 47) 1877 1878 Add(i000, DerefOf(arg1), Local1) 1879 CH06(arg0, 34, 47) 1880 1881 // And 1882 1883 And(DerefOf(arg1), i000, Local1) 1884 CH06(arg0, 37, 47) 1885 1886 And(i000, DerefOf(arg1), Local1) 1887 CH06(arg0, 38, 47) 1888 1889 // Concatenate 1890 1891 Concatenate(DerefOf(arg1), i000, Local1) 1892 CH06(arg0, 41, 47) 1893 1894 Concatenate(i000, DerefOf(arg1), Local1) 1895 CH06(arg0, 42, 47) 1896 1897 // ConcatenateResTemplate 1898 1899 ConcatenateResTemplate(DerefOf(arg1), ResourceTemplate(){}, Local1) 1900 CH06(arg0, 45, 47) 1901 1902 ConcatenateResTemplate(ResourceTemplate(){}, DerefOf(arg1), Local1) 1903 CH06(arg0, 46, 47) 1904 1905 // Divide 1906 1907 Divide(DerefOf(arg1), i000, Local2) 1908 CH06(arg0, 49, 47) 1909 1910 Divide(i000, DerefOf(arg1), Local2) 1911 CH06(arg0, 50, 47) 1912 1913 Divide(DerefOf(arg1), i000, Local2, Local1) 1914 CH06(arg0, 51, 47) 1915 1916 Divide(i000, DerefOf(arg1), Local2, Local1) 1917 CH06(arg0, 52, 47) 1918 1919 // Fatal 1920 1921 Fatal(0xff, 0xffffffff, DerefOf(arg1)) 1922 CH06(arg0, 53, 47) 1923 1924 // Index 1925 1926 Index(DerefOf(arg1), 0, Local1) 1927 CH03(ts, z096, 60, 0, 0) 1928 1929 Index("0", DerefOf(arg1), Local1) 1930 CH06(arg0, 57, 47) 1931 1932 // LEqual 1933 1934 Store (LEqual(DerefOf(arg1), i000), Local1) 1935 CH06(arg0, 58, 47) 1936 1937 Store (LEqual(i000, DerefOf(arg1)), Local1) 1938 CH06(arg0, 59, 47) 1939 1940 // LGreater 1941 1942 Store (LGreater(DerefOf(arg1), i000), Local1) 1943 CH06(arg0, 60, 47) 1944 1945 Store (LGreater(i000, DerefOf(arg1)), Local1) 1946 CH06(arg0, 61, 47) 1947 1948 // LGreaterEqual 1949 1950 Store (LGreaterEqual(DerefOf(arg1), i000), Local1) 1951 CH06(arg0, 62, 0xff) 1952 1953 Store (LGreaterEqual(i000, DerefOf(arg1)), Local1) 1954 CH06(arg0, 63, 0xff) 1955 1956 // LLess 1957 1958 Store (LLess(DerefOf(arg1), i000), Local1) 1959 CH06(arg0, 64, 47) 1960 1961 Store (LLess(i000, DerefOf(arg1)), Local1) 1962 CH06(arg0, 65, 47) 1963 1964 // LLessEqual 1965 1966 Store (LLessEqual(DerefOf(arg1), i000), Local1) 1967 CH06(arg0, 66, 0xff) 1968 1969 Store (LLessEqual(i000, DerefOf(arg1)), Local1) 1970 CH06(arg0, 67, 0xff) 1971 1972 // LNotEqual 1973 1974 Store (LNotEqual(DerefOf(arg1), i000), Local1) 1975 CH06(arg0, 68, 0xff) 1976 1977 Store (LNotEqual(i000, DerefOf(arg1)), Local1) 1978 CH06(arg0, 69, 0xff) 1979 1980 // LOr 1981 1982 Store (LOr(DerefOf(arg1), i000), Local1) 1983 CH06(arg0, 70, 47) 1984 1985 Store (LOr(i000, DerefOf(arg1)), Local1) 1986 CH06(arg0, 71, 47) 1987 1988 // Mod 1989 1990 Mod(DerefOf(arg1), i000, Local1) 1991 CH06(arg0, 74, 47) 1992 1993 Mod(i000, DerefOf(arg1), Local1) 1994 CH06(arg0, 75, 47) 1995 1996 // Multiply 1997 1998 Multiply(DerefOf(arg1), i000, Local1) 1999 CH06(arg0, 78, 47) 2000 2001 Multiply(i000, DerefOf(arg1), Local1) 2002 CH06(arg0, 79, 47) 2003 2004 // NAnd 2005 2006 NAnd(DerefOf(arg1), i000, Local1) 2007 CH06(arg0, 82, 47) 2008 2009 NAnd(i000, DerefOf(arg1), Local1) 2010 CH06(arg0, 83, 47) 2011 2012 // NOr 2013 2014 NOr(DerefOf(arg1), i000, Local1) 2015 CH06(arg0, 86, 47) 2016 2017 NOr(i000, DerefOf(arg1), Local1) 2018 CH06(arg0, 87, 47) 2019 2020 // Or 2021 2022 Or(DerefOf(arg1), i000, Local1) 2023 CH06(arg0, 90, 47) 2024 2025 Or(i000, DerefOf(arg1), Local1) 2026 CH06(arg0, 91, 47) 2027 2028 // ShiftLeft 2029 2030 ShiftLeft(DerefOf(arg1), i000, Local1) 2031 CH06(arg0, 94, 47) 2032 2033 ShiftLeft(i000, DerefOf(arg1), Local1) 2034 CH06(arg0, 95, 47) 2035 2036 // ShiftRight 2037 2038 ShiftRight(DerefOf(arg1), i000, Local1) 2039 CH06(arg0, 98, 47) 2040 2041 ShiftRight(i000, DerefOf(arg1), Local1) 2042 CH06(arg0, 99, 47) 2043 2044 // Subtract 2045 2046 Subtract(DerefOf(arg1), i000, Local1) 2047 CH06(arg0, 102, 47) 2048 2049 Subtract(i000, DerefOf(arg1), Local1) 2050 CH06(arg0, 103, 47) 2051 2052 // ToString 2053 2054 ToString(DerefOf(arg1), 1, Local1) 2055 CH06(arg0, 106, 47) 2056 2057 ToString(i000, DerefOf(arg1), Local1) 2058 CH06(arg0, 107, 47) 2059 2060 // Wait 2061 2062 Store(Wait(e000, DerefOf(arg1)), Local1) 2063 CH06(arg0, 109, 47) 2064 2065 // XOr 2066 2067 XOr(DerefOf(arg1), i000, Local1) 2068 CH06(arg0, 112, 47) 2069 2070 XOr(i000, DerefOf(arg1), Local1) 2071 CH06(arg0, 113, 47) 2072 2073 // Mid 2074 2075 Mid(DerefOf(arg1), 1, 1, Local1) 2076 CH06(arg0, 117, 47) 2077 2078 Mid("123", DerefOf(arg1), 1, Local1) 2079 CH06(arg0, 118, 47) 2080 2081 Mid("123", 1, DerefOf(arg1), Local1) 2082 CH06(arg0, 119, 47) 2083 2084 // Match 2085 2086 Store (Match(DerefOf(arg1), MTR, 0, MTR, 0, 0), Local1) 2087 CH03(ts, z096, 61, 0, 0) 2088 2089 Store (Match(Package(){1}, MTR, DerefOf(arg1), MTR, 0, 0), Local1) 2090 CH06(arg0, 121, 47) 2091 2092 Store (Match(Package(){1}, MTR, 0, MTR, DerefOf(arg1), 0), Local1) 2093 CH06(arg0, 122, 47) 2094 2095 Store (Match(Package(){1}, MTR, 0, MTR, 0, DerefOf(arg1)), Local1) 2096 CH06(arg0, 123, 47) 2097 2098 return (0) 2099 } 2100 2101 // Result of Method invocation 2102 Method(m006, 1, Serialized) 2103 { 2104 Method(m000) 2105 { 2106 // intermediate storing to force ASL compiler 2107 // not report "Invalid type (Method returns)" 2108 Store(Package(){0x63}, Local0) 2109 Return (Local0) 2110 } 2111 2112 Name(ss00, "0") 2113 2114 // CondRefOf 2115 2116 if (y601) { 2117 Store (CondRefOf(m000()), Local1) 2118 CH06(arg0, 0, 47) 2119 2120 CondRefOf(m000(), Local1) 2121 CH06(arg0, 1, 47) 2122 } 2123 2124 // CopyObject 2125 2126 CopyObject(m000(), Local1) 2127 CH03(ts, z096, 62, 0, 0) 2128 2129 // Decrement 2130 2131 Decrement(m000()) 2132 CH06(arg0, 2, 47) 2133 2134 // DerefOf 2135 2136 Store (DerefOf(m000()), Local1) 2137 CH06(arg0, 3, 47) 2138 2139 // FindSetLeftBit 2140 2141 FindSetLeftBit(m000(), Local1) 2142 CH06(arg0, 5, 47) 2143 2144 // FindSetRightBit 2145 2146 FindSetRightBit(m000(), Local1) 2147 CH06(arg0, 7, 47) 2148 2149 // FromBCD 2150 2151 FromBCD(m000(), Local1) 2152 CH06(arg0, 9, 47) 2153 2154 // Increment 2155 2156 Increment(m000()) 2157 CH06(arg0, 10, 47) 2158 2159 // LNot 2160 2161 Store (LNot(m000()), Local1) 2162 CH06(arg0, 11, 47) 2163 2164 // Not 2165 2166 Not(m000(), Local1) 2167 CH06(arg0, 13, 47) 2168 2169 // ObjectType 2170 /* Nov. 2012: Method invocation as arg to ObjectType is now illegal */ 2171// 2172// ObjectType(m000()) 2173// CH03(ts, z096, 63, 0, 0) 2174 2175 // RefOf 2176 2177 if (y601) { 2178 Store (RefOf(m000()), Local1) 2179 CH06(arg0, 14, 47) 2180 } 2181 2182 // Release 2183 2184 Release(m000()) 2185 CH06(arg0, 13, 47) 2186 2187 // Reset 2188 2189 Reset(m000()) 2190 CH06(arg0, 14, 47) 2191 2192 // Signal 2193 2194 Signal(m000()) 2195 CH06(arg0, 15, 47) 2196 2197 // SizeOf 2198 2199 Store (SizeOf(m000()), Local1) 2200 CH06(arg0, 16, 47) 2201 2202 // Sleep 2203 2204 Sleep(m000()) 2205 CH06(arg0, 17, 47) 2206 2207 // Stall 2208 2209 Stall(m000()) 2210 CH06(arg0, 18, 47) 2211 2212 // Store 2213 2214 // ToBCD 2215 2216 ToBCD(m000(), Local1) 2217 CH06(arg0, 21, 47) 2218 2219 // ToBuffer 2220 2221 ToBuffer(m000(), Local1) 2222 CH06(arg0, 23, 47) 2223 2224 // ToDecimalString 2225 2226 ToDecimalString(m000(), Local1) 2227 CH06(arg0, 25, 47) 2228 2229 // ToHexString 2230 2231 ToHexString(m000(), Local1) 2232 CH06(arg0, 27, 47) 2233 2234 // ToInteger 2235 2236 ToInteger(m000(), Local1) 2237 CH06(arg0, 29, 47) 2238 2239 // Acquire 2240 2241 Store(Acquire(m000(), 100), Local1) 2242 CH06(arg0, 30, 47) 2243 2244 // Add 2245 2246 Add(m000(), i000, Local1) 2247 CH06(arg0, 33, 47) 2248 2249 Add(i000, m000(), Local1) 2250 CH06(arg0, 34, 47) 2251 2252 // And 2253 2254 And(m000(), i000, Local1) 2255 CH06(arg0, 37, 47) 2256 2257 And(i000, m000(), Local1) 2258 CH06(arg0, 38, 47) 2259 2260 // Concatenate 2261 2262 Concatenate(m000(), i000, Local1) 2263 CH06(arg0, 41, 47) 2264 2265 Concatenate(i000, m000(), Local1) 2266 CH06(arg0, 42, 47) 2267 2268 // ConcatenateResTemplate 2269 2270 ConcatenateResTemplate(m000(), ResourceTemplate(){}, Local1) 2271 CH06(arg0, 45, 47) 2272 2273 ConcatenateResTemplate(ResourceTemplate(){}, m000(), Local1) 2274 CH06(arg0, 46, 47) 2275 2276 // Divide 2277 2278 Divide(m000(), i000, Local2) 2279 CH06(arg0, 49, 47) 2280 2281 Divide(i000, m000(), Local2) 2282 CH06(arg0, 50, 47) 2283 2284 Divide(m000(), i000, Local2, Local1) 2285 CH06(arg0, 51, 47) 2286 2287 Divide(i000, m000(), Local2, Local1) 2288 CH06(arg0, 52, 47) 2289 2290 // Fatal 2291 2292 Fatal(0xff, 0xffffffff, m000()) 2293 CH06(arg0, 53, 47) 2294 2295 // Index 2296 2297 if (y900) { 2298 Index(m000(), 0, Local1) 2299 CH03(ts, z096, 65, 0, 0) 2300 2301 Index("0", m000(), Local1) 2302 CH06(arg0, 57, 47) 2303 } else { 2304 CH03(ts, z096, 0x123, 0, 0) 2305 CH03(ts, z096, 0x127, 0, 0) 2306 Index(m000(), 0, Local1) 2307 CH04(ts, 0, 85, z094, 0x128, 0, 0) // AE_INDEX_TO_NOT_ATTACHED 2308 2309 CH03(ts, z096, 0x129, 0, 0) 2310 Index("0", m000(), Local1) 2311 CH04(ts, 0, 0xff, z094, 0x12a, 0, 0) // AE_INDEX_TO_NOT_ATTACHED 2312 2313 CH03(ts, z096, 0x129, 0, 0) 2314 Index(ss00, m000(), Local1) 2315 CH04(ts, 0, 47, z094, 0x12a, 0, 0) // AE_INDEX_TO_NOT_ATTACHED 2316 } 2317 2318 // LEqual 2319 2320 Store (LEqual(m000(), i000), Local1) 2321 CH06(arg0, 58, 47) 2322 2323 Store (LEqual(i000, m000()), Local1) 2324 CH06(arg0, 59, 47) 2325 2326 // LGreater 2327 2328 Store (LGreater(m000(), i000), Local1) 2329 CH06(arg0, 60, 47) 2330 2331 Store (LGreater(i000, m000()), Local1) 2332 CH06(arg0, 61, 47) 2333 2334 // LGreaterEqual 2335 2336 Store (LGreaterEqual(m000(), i000), Local1) 2337 CH06(arg0, 62, 0xff) 2338 2339 Store (LGreaterEqual(i000, m000()), Local1) 2340 CH06(arg0, 63, 0xff) 2341 2342 // LLess 2343 2344 Store (LLess(m000(), i000), Local1) 2345 CH06(arg0, 64, 47) 2346 2347 Store (LLess(i000, m000()), Local1) 2348 CH06(arg0, 65, 47) 2349 2350 // LLessEqual 2351 2352 Store (LLessEqual(m000(), i000), Local1) 2353 CH06(arg0, 66, 0xff) 2354 2355 Store (LLessEqual(i000, m000()), Local1) 2356 CH06(arg0, 67, 0xff) 2357 2358 // LNotEqual 2359 2360 Store (LNotEqual(m000(), i000), Local1) 2361 CH06(arg0, 68, 0xff) 2362 2363 Store (LNotEqual(i000, m000()), Local1) 2364 CH06(arg0, 69, 0xff) 2365 2366 // LOr 2367 2368 Store (LOr(m000(), i000), Local1) 2369 CH06(arg0, 70, 47) 2370 2371 Store (LOr(i000, m000()), Local1) 2372 CH06(arg0, 71, 47) 2373 2374 // Mod 2375 2376 Mod(m000(), i000, Local1) 2377 CH06(arg0, 74, 47) 2378 2379 Mod(i000, m000(), Local1) 2380 CH06(arg0, 75, 47) 2381 2382 // Multiply 2383 2384 Multiply(m000(), i000, Local1) 2385 CH06(arg0, 78, 47) 2386 2387 Multiply(i000, m000(), Local1) 2388 CH06(arg0, 79, 47) 2389 2390 // NAnd 2391 2392 NAnd(m000(), i000, Local1) 2393 CH06(arg0, 82, 47) 2394 2395 NAnd(i000, m000(), Local1) 2396 CH06(arg0, 83, 47) 2397 2398 // NOr 2399 2400 NOr(m000(), i000, Local1) 2401 CH06(arg0, 86, 47) 2402 2403 NOr(i000, m000(), Local1) 2404 CH06(arg0, 87, 47) 2405 2406 // Or 2407 2408 Or(m000(), i000, Local1) 2409 CH06(arg0, 90, 47) 2410 2411 Or(i000, m000(), Local1) 2412 CH06(arg0, 91, 47) 2413 2414 // ShiftLeft 2415 2416 ShiftLeft(m000(), i000, Local1) 2417 CH06(arg0, 94, 47) 2418 2419 ShiftLeft(i000, m000(), Local1) 2420 CH06(arg0, 95, 47) 2421 2422 // ShiftRight 2423 2424 ShiftRight(m000(), i000, Local1) 2425 CH06(arg0, 98, 47) 2426 2427 ShiftRight(i000, m000(), Local1) 2428 CH06(arg0, 99, 47) 2429 2430 // Subtract 2431 2432 Subtract(m000(), i000, Local1) 2433 CH06(arg0, 102, 47) 2434 2435 Subtract(i000, m000(), Local1) 2436 CH06(arg0, 103, 47) 2437 2438 // ToString 2439 2440 ToString(m000(), 1, Local1) 2441 CH06(arg0, 106, 47) 2442 2443 ToString(i000, m000(), Local1) 2444 CH06(arg0, 107, 47) 2445 2446 // Wait 2447 2448 Store(Wait(m000(), i000), Local1) 2449 CH06(arg0, 108, 47) 2450 2451 Store(Wait(e000, m000()), Local1) 2452 CH06(arg0, 109, 47) 2453 2454 // XOr 2455 2456 XOr(m000(), i000, Local1) 2457 CH06(arg0, 112, 47) 2458 2459 XOr(i000, m000(), Local1) 2460 CH06(arg0, 113, 47) 2461 2462 // Mid 2463 2464 Mid(m000(), 1, 1, Local1) 2465 CH06(arg0, 117, 47) 2466 2467 Mid("123", m000(), 1, Local1) 2468 CH06(arg0, 118, 47) 2469 2470 Mid("123", 1, m000(), Local1) 2471 CH06(arg0, 119, 47) 2472 2473 // Match 2474 2475 Store (Match(m000(), MTR, 0, MTR, 0, 0), Local1) 2476 CH03(ts, z096, 66, 0, 0) 2477 2478 Store (Match(Package(){1}, MTR, m000(), MTR, 0, 0), Local1) 2479 CH06(arg0, 121, 47) 2480 2481 Store (Match(Package(){1}, MTR, 0, MTR, m000(), 0), Local1) 2482 CH06(arg0, 122, 47) 2483 2484 Store (Match(Package(){1}, MTR, 0, MTR, 0, m000()), Local1) 2485 CH06(arg0, 123, 47) 2486 } 2487 2488 // Reference to Object as Result of Method invocation 2489 Method(m007, 1, Serialized) 2490 { 2491 Name(p000, Package(){0x63}) 2492 2493 Name(i000, 0) // Label to check m000 invocations 2494 2495 Method(m000, 2) 2496 { 2497 Store(arg0, i000) 2498 if (LEqual(arg1, 0)) { 2499 Store(Refof(p100), Local0) 2500 } elseif (LEqual(arg1, 1)) { 2501 Store(Refof(p000), Local0) 2502 } 2503 Return (Local0) 2504 } 2505 2506 Method(CH00, 2) 2507 { 2508 if (LNotEqual(i000, arg1)) { 2509 err(arg0, z096, 0, 0, 0, i000, arg1) 2510 } 2511 } 2512 2513 Name(lpN0, 2) 2514 Name(lpC0, 0) 2515 2516 While (lpN0) { 2517 Multiply(3, lpC0, Local0) 2518 2519 Store(0, i000) 2520 2521 Store (DerefOf(m000(1, lpC0)), Local1) 2522 CH03(ts, z096, Add(67, lpC0), 0, 0) 2523 CH00(arg0, 1) 2524 2525 Store (DerefOf(DerefOf(m000(2, lpC0))), Local1) 2526 CH06(arg0, Add(1, Local0), 47) 2527 CH00(arg0, 2) 2528 2529 Store (Index(DerefOf(m000(3, lpC0)), 0), Local1) 2530 CH06(arg0, Add(2, Local0), 47) 2531 CH00(arg0, 3) 2532 2533 Store (Match(DerefOf(m000(4, lpC0)), MTR, 0, MTR, 0, 0), Local1) 2534 CH06(arg0, Add(3, Local0), 47) 2535 CH00(arg0, 4) 2536 2537 Decrement(lpN0) 2538 Increment(lpC0) 2539 } 2540 } 2541 2542 // Result of Method with checking of invocation 2543 Method(m008, 1, Serialized) 2544 { 2545 Name(i000, 0) // Label to check m000 invocations 2546 2547 Method(m000, 1) 2548 { 2549 Store(arg0, i000) 2550 Store(Package(){0x63}, Local0) 2551 Return (Local0) 2552 } 2553 2554 Method(CH00, 2) 2555 { 2556 if (LNotEqual(i000, arg1)) { 2557 err(arg0, z096, 0, 0, 0, i000, arg1) 2558 } 2559 } 2560 2561 // CondRefOf 2562 2563 if (y601) { 2564 Store (CondRefOf(m000(1)), Local1) 2565 CH06(arg0, 1, 47) 2566 CH00(arg0, 1) 2567 } 2568 2569 Store (CondRefOf(m000(2)), Local1) 2570 CH06(arg0, 2, 47) 2571 if (y600) { 2572 CH00(arg0, 2) 2573 } 2574 2575 // DerefOf 2576 2577 Store (DerefOf(m000(3)), Local1) 2578 CH06(arg0, 3, 47) 2579 CH00(arg0, 3) 2580 2581 // RefOf 2582 2583 if (y601) { 2584 Store (RefOf(m000(4)), Local1) 2585 CH06(arg0, 4, 47) 2586 CH00(arg0, 4) 2587 } 2588 2589 // Release 2590 2591 Release(m000(5)) 2592 CH06(arg0, 5, 47) 2593 if (y600) { 2594 CH00(arg0, 5) 2595 } 2596 2597 // Reset 2598 2599 Reset(m000(6)) 2600 CH06(arg0, 6, 47) 2601 if (y600) { 2602 CH00(arg0, 6) 2603 } 2604 2605 // Signal 2606 2607 Signal(m000(7)) 2608 CH06(arg0, 7, 47) 2609 if (y600) { 2610 CH00(arg0, 7) 2611 } 2612 2613 // Acquire 2614 2615 Store(Acquire(m000(8), 0), Local1) 2616 CH06(arg0, 8, 47) 2617 if (y600) { 2618 CH00(arg0, 8) 2619 } 2620 2621 // Index 2622 2623 CH03(ts, z094, 0x123, 0, 0) 2624 Store (Index(m000(9), 0), Local1) 2625 if (y900) { 2626 CH03(ts, z096, 69, 0, 0) 2627 CH00(arg0, 9) 2628 } else { 2629 CH04(ts, 0, 85, z094, 0x124, 0, 0) // AE_INDEX_TO_NOT_ATTACHED 2630 } 2631 2632 // Wait 2633 2634 Store(Wait(m000(10), 0), Local1) 2635 CH06(arg0, 9, 47) 2636 if (y600) { 2637 CH00(arg0, 10) 2638 } 2639 2640 // Match 2641 2642 Store (Match(m000(11), MTR, 0, MTR, 0, 0), Local1) 2643 CH03(ts, z096, 70, 0, 0) 2644 CH00(arg0, 11) 2645 } 2646 2647 SET0(z096, ts, 0) 2648 2649 CH03(ts, z096, 70, 0, 0) 2650 2651 // Local Named Object 2652 m000(ts) 2653 2654 // Global Named Object 2655 m001(ts) 2656 2657 // Argument 2658 m002(ts, Package(){0x62}) 2659 2660 // Local 2661 m003(Concatenate(ts, "-m003")) 2662 2663 // An element of Package 2664 m004(Concatenate(ts, "-m004")) 2665 2666 2667 // Reference to Local Named Object 2668 2669 m005(Concatenate(ts, "-m005-RefLocName"), RefOf(p000)) 2670 2671 Store(RefOf(p000), Local0) 2672 m005(Concatenate(ts, "-m005-RefLocName2"), Local0) 2673 2674 CondRefOf(p000, Local0) 2675 m005(Concatenate(ts, "-m005-CondRefLocName"), Local0) 2676 2677 m005(Concatenate(ts, "-m005-RefGlobName"), RefOf(p100)) 2678 2679 Store(RefOf(p100), Local0) 2680 m005(Concatenate(ts, "-m005-RefGlobName2"), Local0) 2681 2682 CondRefOf(p100, Local0) 2683 m005(Concatenate(ts, "-m005-CondRefGlobName"), Local0) 2684 2685 2686 // Reference to Local 2687 2688 Store(Package(){0x62}, Local0) 2689 2690 m005(Concatenate(ts, "-m005-RefLocal"), RefOf(Local0)) 2691 2692 Store(RefOf(Local0), Local1) 2693 m005(Concatenate(ts, "-m005-RefLocal2"), Local1) 2694 2695 CondRefOf(Local0, Local1) 2696 m005(Concatenate(ts, "-m005-CondRefLocal"), Local1) 2697 2698 2699 // Reference to Arg 2700 2701 m005(Concatenate(ts, "-m005-RefArg"), RefOf(arg0)) 2702 2703 Store(RefOf(arg0), Local0) 2704 m005(Concatenate(ts, "-m005-RefArg2"), Local0) 2705 2706 CondRefOf(arg0, Local0) 2707 m005(Concatenate(ts, "-m005-CondRefArg"), Local0) 2708 2709 2710 // Index to Package 2711 2712 Name(pp00, Package(){Package(){0x62}}) 2713 2714 if (y113) { 2715 m005(Concatenate(ts, "-m005-Index"), Index(pp00, 0)) 2716 } 2717 2718 Store(Index(pp00, 0), Local0) 2719 m005(Concatenate(ts, "-m005-Index2"), Local0) 2720 2721 if (y113) { 2722 m005(Concatenate(ts, "-m005-Index3"), Index(pp00, 0, Local0)) 2723 } 2724 2725 Index(pp00, 0, Local0) 2726 m005(Concatenate(ts, "-m005-Index4"), Local0) 2727 2728 Store(Index(pp00, 0, Local0), Local1) 2729 m005(Concatenate(ts, "-m005-Index5"), Local1) 2730 2731 // Result of Method invocation 2732 m006(Concatenate(ts, "-m006")) 2733 2734 // Reference to Object as Result of Method invocation 2735 if (y500) { 2736 m007(Concatenate(ts, "-m007")) 2737 } 2738 2739 // Result of Method with checking of invocation 2740 m008(Concatenate(ts, "-m008")) 2741 2742 RST0() 2743} 2744