10d02842fSSascha Wildner /****************************************************************************** 20d02842fSSascha Wildner * 30d02842fSSascha Wildner * Module Name: ahamlops - Table of all known AML opcodes 40d02842fSSascha Wildner * 50d02842fSSascha Wildner *****************************************************************************/ 60d02842fSSascha Wildner 70d02842fSSascha Wildner /* 8f5f76cf2SSascha Wildner * Copyright (C) 2000 - 2016, Intel Corp. 90d02842fSSascha Wildner * All rights reserved. 100d02842fSSascha Wildner * 110d02842fSSascha Wildner * Redistribution and use in source and binary forms, with or without 120d02842fSSascha Wildner * modification, are permitted provided that the following conditions 130d02842fSSascha Wildner * are met: 140d02842fSSascha Wildner * 1. Redistributions of source code must retain the above copyright 150d02842fSSascha Wildner * notice, this list of conditions, and the following disclaimer, 160d02842fSSascha Wildner * without modification. 170d02842fSSascha Wildner * 2. Redistributions in binary form must reproduce at minimum a disclaimer 180d02842fSSascha Wildner * substantially similar to the "NO WARRANTY" disclaimer below 190d02842fSSascha Wildner * ("Disclaimer") and any redistribution must be conditioned upon 200d02842fSSascha Wildner * including a substantially similar Disclaimer requirement for further 210d02842fSSascha Wildner * binary redistribution. 220d02842fSSascha Wildner * 3. Neither the names of the above-listed copyright holders nor the names 230d02842fSSascha Wildner * of any contributors may be used to endorse or promote products derived 240d02842fSSascha Wildner * from this software without specific prior written permission. 250d02842fSSascha Wildner * 260d02842fSSascha Wildner * Alternatively, this software may be distributed under the terms of the 270d02842fSSascha Wildner * GNU General Public License ("GPL") version 2 as published by the Free 280d02842fSSascha Wildner * Software Foundation. 290d02842fSSascha Wildner * 300d02842fSSascha Wildner * NO WARRANTY 310d02842fSSascha Wildner * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 320d02842fSSascha Wildner * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 330d02842fSSascha Wildner * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR 340d02842fSSascha Wildner * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 350d02842fSSascha Wildner * HOLDERS OR CONTRIBUTORS BE LIABLE FOR SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 360d02842fSSascha Wildner * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 370d02842fSSascha Wildner * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 380d02842fSSascha Wildner * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, 390d02842fSSascha Wildner * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING 400d02842fSSascha Wildner * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 410d02842fSSascha Wildner * POSSIBILITY OF SUCH DAMAGES. 420d02842fSSascha Wildner */ 430d02842fSSascha Wildner 440d02842fSSascha Wildner #include "acpihelp.h" 450d02842fSSascha Wildner 46277350a0SSascha Wildner 470d02842fSSascha Wildner /* 480d02842fSSascha Wildner * AML opcodes with related syntax and grammar information. 490d02842fSSascha Wildner * This table was extracted from the ACPI specification. 500d02842fSSascha Wildner */ 51*38b5d46cSSascha Wildner const AH_AML_OPCODE Gbl_AmlOpcodeInfo[] = 520d02842fSSascha Wildner { 530d02842fSSascha Wildner {0x00, 0x00, "0x00", "ZeroOp", "DataObject", NULL, NULL, 540d02842fSSascha Wildner NULL}, 550d02842fSSascha Wildner {0x01, 0x01, "0x01", "OneOp", "DataObject", NULL, NULL, 560d02842fSSascha Wildner NULL}, 570d02842fSSascha Wildner {0x02, 0x05, "0x02-0x05", NULL, NULL, NULL, NULL, 580d02842fSSascha Wildner NULL}, 590d02842fSSascha Wildner {0x06, 0x06, "0x06", "AliasOp", "TermObject", "NameString NameString", NULL, 600d02842fSSascha Wildner "DefAlias := AliasOp NameString NameString"}, 610d02842fSSascha Wildner {0x07, 0x07, "0x07", NULL, NULL, NULL, NULL, 620d02842fSSascha Wildner NULL}, 630d02842fSSascha Wildner {0x08, 0x08, "0x08", "NameOp", "TermObject", "NameString DataRefObject", NULL, 640d02842fSSascha Wildner "DefName := NameOp NameString DataRefObject"}, 650d02842fSSascha Wildner {0x09, 0x09, "0x09", NULL, NULL, NULL, NULL, 660d02842fSSascha Wildner NULL}, 670d02842fSSascha Wildner {0x0A, 0x0A, "0x0A", "BytePrefix", "DataObject", "ByteData", NULL, 680d02842fSSascha Wildner "ByteConst := BytePrefix ByteData"}, 690d02842fSSascha Wildner {0x0B, 0x0B, "0x0B", "WordPrefix", "DataObject", "WordData", NULL, 700d02842fSSascha Wildner "WordConst := WordPrefix WordData"}, 710d02842fSSascha Wildner {0x0C, 0x0C, "0x0C", "DWordPrefix", "DataObject", "DWordData", NULL, 720d02842fSSascha Wildner "DWordConst := DWordPrefix DWordData"}, 730d02842fSSascha Wildner {0x0D, 0x0D, "0x0D", "StringPrefix", "DataObject", "AsciiCharList NullChar", NULL, 740d02842fSSascha Wildner "String := StringPrefix AsciiCharList NullChar"}, 750d02842fSSascha Wildner {0x0E, 0x0E, "0x0E", "QWordPrefix", "DataObject", "QWordData", NULL, 760d02842fSSascha Wildner "QWordConst := QWordPrefix QWordData"}, 770d02842fSSascha Wildner {0x0F, 0x0F, "0x0F", NULL, NULL, NULL, NULL, 780d02842fSSascha Wildner NULL}, 790d02842fSSascha Wildner {0x10, 0x10, "0x10", "ScopeOp", "TermObject", "NameString", "TermList", 800d02842fSSascha Wildner "DefScope := ScopeOp PkgLength NameString TermList"}, 810d02842fSSascha Wildner {0x11, 0x11, "0x11", "BufferOp", "TermObject", "TermArg", "ByteList", 820d02842fSSascha Wildner "DefBuffer := BufferOp PkgLength BufferSize ByteList"}, 830d02842fSSascha Wildner {0x12, 0x12, "0x12", "PackageOp", "TermObject", "ByteData", "Package TermList", 840d02842fSSascha Wildner "DefPackage := PackageOp PkgLength NumElements PackageElementList"}, 850d02842fSSascha Wildner {0x13, 0x13, "0x13", "VarPackageOp", "TermObject", "TermArg", "Package TermList", 860d02842fSSascha Wildner "DefVarPackage := VarPackageOp PkgLength VarNumElements PackageElementList"}, 870d02842fSSascha Wildner {0x14, 0x14, "0x14", "MethodOp", "TermObject", "NameString ByteData", "TermList", 880d02842fSSascha Wildner "DefMethod := MethodOp PkgLength NameString MethodFlags TermList"}, 8925ca8c79SSascha Wildner {0x15, 0x15, "0x15", "ExternalOp", "NameObject", "NameString ByteData ByteData", NULL, 9025ca8c79SSascha Wildner "DefExternal := ExternalOp NameString ObjectType ArgumentCount"}, 9125ca8c79SSascha Wildner {0x16, 0x2D, "0x16-0x2D", NULL, NULL, NULL, NULL, 920d02842fSSascha Wildner NULL}, 930d02842fSSascha Wildner {0x2E, 0x2E, "0x2E", "DualNamePrefix", "NameObject", "NameSeg NameSeg", NULL, 940d02842fSSascha Wildner "DualNamePath := DualNamePrefix NameSeg NameSeg"}, 950d02842fSSascha Wildner {0x2F, 0x2F, "0x2F", "MultiNamePrefix", "NameObject", "ByteData NameSeg", NULL, 960d02842fSSascha Wildner "MultiNamePath := MultiNamePrefix SegCount NameSeg(SegCount)"}, 970d02842fSSascha Wildner {0x30, 0x39, "0x30-0x39", "DigitChar", "NameObject", NULL, NULL, 980d02842fSSascha Wildner NULL}, 990d02842fSSascha Wildner {0x3A, 0x40, "0x3A-0x40", NULL, NULL, NULL, NULL, 1000d02842fSSascha Wildner NULL}, 1010d02842fSSascha Wildner {0x41, 0x5A, "0x41-0x5A", "NameChar", "NameObject", NULL, NULL, 1020d02842fSSascha Wildner NULL}, 1030d02842fSSascha Wildner {0x5B, 0x5B, "0x5B", "ExtOpPrefix", "DataObject", "ByteData", NULL, 1040d02842fSSascha Wildner NULL}, 1050d02842fSSascha Wildner {0x5B00, 0x5B00, "0x5B00", NULL, NULL, NULL, NULL, 1060d02842fSSascha Wildner NULL}, 1070d02842fSSascha Wildner {0x5B01, 0x5B01, "0x5B01", "MutexOp", "TermObject", "NameString ByteData", NULL, 1080d02842fSSascha Wildner "DefMutex := MutexOp NameString SyncFlags"}, 1090d02842fSSascha Wildner {0x5B02, 0x5B02, "0x5B02", "EventOp", "TermObject", "NameString", NULL, 1100d02842fSSascha Wildner "DefEvent := EventOp NameString"}, 1110d02842fSSascha Wildner {0x5B12, 0x5B12, "0x5B12", "CondRefOfOp", "TermObject", "SuperName SuperName", NULL, 1120d02842fSSascha Wildner "DefCondRefOf := CondRefOfOp SuperName Target"}, 1130d02842fSSascha Wildner {0x5B13, 0x5B13, "0x5B13", "CreateFieldOp", "TermObject", "TermArg TermArg TermArg NameString", NULL, 1140d02842fSSascha Wildner "DefCreateField := CreateFieldOp SourceBuff BitIndex NumBits NameString"}, 1150d02842fSSascha Wildner {0x5B1F, 0x5B1F, "0x5B1F", "LoadTableOp", "TermObject", "TermArg TermArg TermArg TermArg TermArg TermArg", NULL, 1160d02842fSSascha Wildner "DefLoadTable := LoadTableOp TermArg TermArg TermArg TermArg TermArg TermArg"}, 1170d02842fSSascha Wildner {0x5B20, 0x5B20, "0x5B20", "LoadOp", "TermObject", "NameString SuperName", NULL, 1185943f66cSSascha Wildner "DefLoad := LoadOp NameString DdbHandleObject"}, 1190d02842fSSascha Wildner {0x5B21, 0x5B21, "0x5B21", "StallOp", "TermObject", "TermArg", NULL, 1200d02842fSSascha Wildner "DefStall := StallOp UsecTime"}, 1210d02842fSSascha Wildner {0x5B22, 0x5B22, "0x5B22", "SleepOp", "TermObject", "TermArg", NULL, 1220d02842fSSascha Wildner "DefSleep := SleepOp MsecTime"}, 1230d02842fSSascha Wildner {0x5B23, 0x5B23, "0x5B23", "AcquireOp", "TermObject", "SuperName WordData", NULL, 1240d02842fSSascha Wildner "DefAcquire := AcquireOp MutexObject Timeout"}, 1250d02842fSSascha Wildner {0x5B24, 0x5B24, "0x5B24", "SignalOp", "TermObject", "SuperName", NULL, 1260d02842fSSascha Wildner "DefSignal := SignalOp EventObject"}, 1270d02842fSSascha Wildner {0x5B25, 0x5B25, "0x5B25", "WaitOp", "TermObject", "SuperName TermArg", NULL, 1280d02842fSSascha Wildner "DefWait := WaitOp EventObject Operand"}, 1290d02842fSSascha Wildner {0x5B26, 0x5B26, "0x5B26", "ResetOp", "TermObject", "SuperName", NULL, 1300d02842fSSascha Wildner "DefReset := ResetOp EventObject"}, 1310d02842fSSascha Wildner {0x5B27, 0x5B27, "0x5B27", "ReleaseOp", "TermObject", "SuperName", NULL, 1320d02842fSSascha Wildner "DefRelease := ReleaseOp MutexObject"}, 1335943f66cSSascha Wildner {0x5B28, 0x5B28, "0x5B28", "FromBcdOp", "TermObject", "TermArg Target", NULL, 1345943f66cSSascha Wildner "DefFromBcd := FromBcdOp BcdValue Target"}, 1355943f66cSSascha Wildner {0x5B29, 0x5B29, "0x5B29", "ToBcd", "TermObject", "TermArg Target", NULL, 1365943f66cSSascha Wildner "DefToBcd := ToBcdOp Operand Target"}, 1370d02842fSSascha Wildner {0x5B2A, 0x5B2A, "0x5B2A", "UnloadOp", "TermObject", "SuperName", NULL, 1385943f66cSSascha Wildner "DefUnload := UnloadOp DdbHandleObject"}, 1390d02842fSSascha Wildner {0x5B30, 0x5B30, "0x5B30", "RevisionOp", "DataObject", NULL, NULL, 1400d02842fSSascha Wildner NULL}, 1410d02842fSSascha Wildner {0x5B31, 0x5B31, "0x5B31", "DebugOp", "DebugObject", NULL, NULL, 1420d02842fSSascha Wildner NULL}, 1430d02842fSSascha Wildner {0x5B32, 0x5B32, "0x5B32", "FatalOp", "TermObject", "ByteData DWordData TermArg", NULL, 1440d02842fSSascha Wildner "DefFatal := FatalOp FatalType FatalCode FatalArg"}, 1450d02842fSSascha Wildner {0x5B33, 0x5B33, "0x5B33", "TimerOp", "TermObject", NULL, NULL, 1460d02842fSSascha Wildner "DefTimer := TimerOp"}, 147d4972a9cSSascha Wildner {0x5B80, 0x5B80, "0x5B80", "OperationRegionOp", "TermObject", "NameString ByteData TermArg TermArg", NULL, 1480d02842fSSascha Wildner "DefOpRegion := OpRegionOp NameString RegionSpace RegionOffset RegionLen"}, 1490d02842fSSascha Wildner {0x5B81, 0x5B81, "0x5B81", "FieldOp", "TermObject", "NameString ByteData", "FieldList", 1500d02842fSSascha Wildner "DefField := FieldOp PkgLength NameString FieldFlags FieldList"}, 1510d27ae55SSascha Wildner {0x5B82, 0x5B82, "0x5B82", "DeviceOp", "TermObject", "NameString", "TermList", 1520d27ae55SSascha Wildner "DefDevice := DeviceOp PkgLength NameString TermList"}, 1530d27ae55SSascha Wildner {0x5B83, 0x5B83, "0x5B83", "ProcessorOp", "TermObject", "NameString ByteData DWordData ByteData", "TermList", 1540d27ae55SSascha Wildner "DefProcessor := ProcessorOp PkgLength NameString ProcId PblkAddr PblkLen TermList"}, 1550d27ae55SSascha Wildner {0x5B84, 0x5B84, "0x5B84", "PowerResOp", "TermObject", "NameString ByteData WordData", "TermList", 1560d27ae55SSascha Wildner "DefPowerRes := PowerResOp PkgLength NameString SystemLevel ResourceOrder TermList"}, 1570d27ae55SSascha Wildner {0x5B85, 0x5B85, "0x5B85", "ThermalZoneOp", "TermObject", "NameString", "TermList", 1580d27ae55SSascha Wildner "DefThermalZone := ThermalZoneOp PkgLength NameString TermList"}, 1590d02842fSSascha Wildner {0x5B86, 0x5B86, "0x5B86", "IndexFieldOp", "TermObject", "NameString NameString ByteData", "FieldList", 1600d02842fSSascha Wildner "DefIndexField := IndexFieldOp PkgLength NameString NameString FieldFlags FieldList"}, 1610d02842fSSascha Wildner {0x5B87, 0x5B87, "0x5B87", "BankFieldOp", "TermObject", "NameString NameString TermArg ByteData", "FieldList", 1620d02842fSSascha Wildner "DefBankField := BankFieldOp PkgLength NameString NameString BankValue FieldFlags FieldList"}, 1630d02842fSSascha Wildner {0x5B88, 0x5B88, "0x5B88", "DataRegionOp", "TermObject", "NameString TermArg TermArg TermArg", NULL, 1640d02842fSSascha Wildner "DefDataRegion := DataRegionOp NameString TermArg TermArg TermArg"}, 1650d02842fSSascha Wildner {0x5B89, 0x5BFF, "0x5B89-0x5BFF", NULL, NULL, NULL, NULL, 1660d02842fSSascha Wildner NULL}, 1670d02842fSSascha Wildner {0x5C, 0x5C, "0x5C", "RootChar", "NameObject", NULL, NULL, 1680d02842fSSascha Wildner NULL}, 1690d02842fSSascha Wildner {0x5D, 0x5D, "0x5D", NULL, NULL, NULL, NULL, 1700d02842fSSascha Wildner NULL}, 1710d02842fSSascha Wildner {0x5E, 0x5E, "0x5E", "ParentPrefixChar", "NameObject", NULL, NULL, 1720d02842fSSascha Wildner NULL}, 1730d02842fSSascha Wildner {0x5F, 0x5F, "0x5F", "NameChar", "NameObject", NULL, NULL, 1740d02842fSSascha Wildner NULL}, 1750d02842fSSascha Wildner {0x60, 0x60, "0x60", "Local0Op", "LocalObject", NULL, NULL, 1760d02842fSSascha Wildner NULL}, 1770d02842fSSascha Wildner {0x61, 0x61, "0x61", "Local1Op", "LocalObject", NULL, NULL, 1780d02842fSSascha Wildner NULL}, 1790d02842fSSascha Wildner {0x62, 0x62, "0x62", "Local2Op", "LocalObject", NULL, NULL, 1800d02842fSSascha Wildner NULL}, 1810d02842fSSascha Wildner {0x63, 0x63, "0x63", "Local3Op", "LocalObject", NULL, NULL, 1820d02842fSSascha Wildner NULL}, 1830d02842fSSascha Wildner {0x64, 0x64, "0x64", "Local4Op", "LocalObject", NULL, NULL, 1840d02842fSSascha Wildner NULL}, 1850d02842fSSascha Wildner {0x65, 0x65, "0x65", "Local5Op", "LocalObject", NULL, NULL, 1860d02842fSSascha Wildner NULL}, 1870d02842fSSascha Wildner {0x66, 0x66, "0x66", "Local6Op", "LocalObject", NULL, NULL, 1880d02842fSSascha Wildner NULL}, 1890d02842fSSascha Wildner {0x67, 0x67, "0x67", "Local7Op", "LocalObject", NULL, NULL, 1900d02842fSSascha Wildner NULL}, 1910d02842fSSascha Wildner {0x68, 0x68, "0x68", "Arg0Op", "ArgObject", NULL, NULL, 1920d02842fSSascha Wildner NULL}, 1930d02842fSSascha Wildner {0x69, 0x69, "0x69", "Arg1Op", "ArgObject", NULL, NULL, 1940d02842fSSascha Wildner NULL}, 1950d02842fSSascha Wildner {0x6A, 0x6A, "0x6A", "Arg2Op", "ArgObject", NULL, NULL, 1960d02842fSSascha Wildner NULL}, 1970d02842fSSascha Wildner {0x6B, 0x6B, "0x6B", "Arg3Op", "ArgObject", NULL, NULL, 1980d02842fSSascha Wildner NULL}, 1990d02842fSSascha Wildner {0x6C, 0x6C, "0x6C", "Arg4Op", "ArgObject", NULL, NULL, 2000d02842fSSascha Wildner NULL}, 2010d02842fSSascha Wildner {0x6D, 0x6D, "0x6D", "Arg5Op", "ArgObject", NULL, NULL, 2020d02842fSSascha Wildner NULL}, 2030d02842fSSascha Wildner {0x6E, 0x6E, "0x6E", "Arg6Op", "ArgObject", NULL, NULL, 2040d02842fSSascha Wildner NULL}, 2050d02842fSSascha Wildner {0x6F, 0x6F, "0x6F", NULL, NULL, NULL, NULL, 2060d02842fSSascha Wildner NULL}, 2070d02842fSSascha Wildner {0x70, 0x70, "0x70", "StoreOp", "TermObject", "TermArg SuperName", NULL, 2080d02842fSSascha Wildner "DefStore := StoreOp TermArg SuperName"}, 2090d02842fSSascha Wildner {0x71, 0x71, "0x71", "RefOfOp", "TermObject", "SuperName ", NULL, 2100d02842fSSascha Wildner "DefRefOf := RefOfOp SuperName"}, 2110d02842fSSascha Wildner {0x72, 0x72, "0x72", "AddOp", "TermObject", "TermArg TermArg Target", NULL, 2120d02842fSSascha Wildner "DefAdd := AddOp Operand Operand Target"}, 2130d02842fSSascha Wildner {0x73, 0x73, "0x73", "ConcatOp", "TermObject", "TermArg TermArg Target", NULL, 2140d02842fSSascha Wildner "DefConcat := ConcatOp Data Data Target"}, 2150d02842fSSascha Wildner {0x74, 0x74, "0x74", "SubtractOp", "TermObject", "TermArg TermArg Target", NULL, 2160d02842fSSascha Wildner "DefSubtract := SubtractOp Operand Operand Target"}, 2170d02842fSSascha Wildner {0x75, 0x75, "0x75", "IncrementOp", "TermObject", "SuperName", NULL, 2180d02842fSSascha Wildner "DefIncrement := IncrementOp SuperName"}, 2190d02842fSSascha Wildner {0x76, 0x76, "0x76", "DecrementOp", "TermObject", "SuperName", NULL, 2200d02842fSSascha Wildner "DefDecrement := DecrementOp SuperName"}, 2210d02842fSSascha Wildner {0x77, 0x77, "0x77", "MultiplyOp", "TermObject", "TermArg TermArg Target", NULL, 2220d02842fSSascha Wildner "DefMultiply := MultiplyOp Operand Operand Target"}, 2230d02842fSSascha Wildner {0x78, 0x78, "0x78", "DivideOp", "TermObject", "TermArg TermArg Target Target", NULL, 2240d02842fSSascha Wildner "DefDivide := DivideOp Dividend Divisor Remainder Quotient"}, 2250d02842fSSascha Wildner {0x79, 0x79, "0x79", "ShiftLeftOp", "TermObject", "TermArg TermArg Target", NULL, 2260d02842fSSascha Wildner "DefShiftLeft := ShiftLeftOp Operand ShiftCount Target"}, 2270d02842fSSascha Wildner {0x7A, 0x7A, "0x7A", "ShiftRightOp", "TermObject", "TermArg TermArg Target", NULL, 2280d02842fSSascha Wildner "DefShiftRight := ShiftRightOp Operand ShiftCount Target"}, 2290d02842fSSascha Wildner {0x7B, 0x7B, "0x7B", "AndOp", "TermObject", "TermArg TermArg Target", NULL, 2300d02842fSSascha Wildner "DefAnd := AndOp Operand Operand Target"}, 2310d02842fSSascha Wildner {0x7C, 0x7C, "0x7C", "NandOp", "TermObject", "TermArg TermArg Target", NULL, 2325943f66cSSascha Wildner "DefNand := NandOp Operand Operand Target"}, 2330d02842fSSascha Wildner {0x7D, 0x7D, "0x7D", "OrOp", "TermObject", "TermArg TermArg Target", NULL, 2340d02842fSSascha Wildner "DefOr := OrOp Operand Operand Target"}, 2350d02842fSSascha Wildner {0x7E, 0x7E, "0x7E", "NorOp", "TermObject", "TermArg TermArg Target", NULL, 2365943f66cSSascha Wildner "DefNor := NorOp Operand Operand Target"}, 2370d02842fSSascha Wildner {0x7F, 0x7F, "0x7F", "XorOp", "TermObject", "TermArg TermArg Target", NULL, 2385943f66cSSascha Wildner "DefXor := XorOp Operand Operand Target"}, 2390d02842fSSascha Wildner {0x80, 0x80, "0x80", "NotOp", "TermObject", "TermArg Target", NULL, 2400d02842fSSascha Wildner "DefNot := NotOp Operand Target"}, 2410d02842fSSascha Wildner {0x81, 0x81, "0x81", "FindSetLeftBitOp", "TermObject", "TermArg Target", NULL, 2420d02842fSSascha Wildner "DefFindSetLeftBit := FindSetLeftBitOp Operand Target"}, 2430d02842fSSascha Wildner {0x82, 0x82, "0x82", "FindSetRightBitOp", "TermObject", "TermArg Target", NULL, 2440d02842fSSascha Wildner "DefFindSetRightBit := FindSetRightBitOp Operand Target"}, 2450d02842fSSascha Wildner {0x83, 0x83, "0x83", "DerefOfOp", "TermObject", "TermArg", NULL, 2460d02842fSSascha Wildner "DefDerefOf := DerefOfOp ObjReference"}, 2470d02842fSSascha Wildner {0x84, 0x84, "0x84", "ConcatResOp", "TermObject", "TermArg TermArg Target", NULL, 2480d02842fSSascha Wildner "DefConcatRes := ConcatResOp BufData BufData Target"}, 2490d02842fSSascha Wildner {0x85, 0x85, "0x85", "ModOp", "TermObject", "TermArg TermArg Target", NULL, 2500d02842fSSascha Wildner "DefMod := ModOp Dividend Divisor Target"}, 2510d02842fSSascha Wildner {0x86, 0x86, "0x86", "NotifyOp", "TermObject", "SuperName TermArg", NULL, 2520d02842fSSascha Wildner "DefNotify := NotifyOp NotifyObject NotifyValue"}, 2530d02842fSSascha Wildner {0x87, 0x87, "0x87", "SizeOfOp", "TermObject", "SuperName", NULL, 2540d02842fSSascha Wildner "DefSizeOf := SizeOfOp SuperName"}, 2550d02842fSSascha Wildner {0x88, 0x88, "0x88", "IndexOp", "TermObject", "TermArg TermArg Target", NULL, 2560d02842fSSascha Wildner "DefIndex := IndexOp BuffPkgStrObj IndexValue Target"}, 2570d02842fSSascha Wildner {0x89, 0x89, "0x89", "MatchOp", "TermObject", "TermArg ByteData TermArg ByteData TermArg TermArg", NULL, 2580d02842fSSascha Wildner "DefMatch := MatchOp SearchPkg MatchOpcode Operand MatchOpcode Operand StartIndex"}, 2590d02842fSSascha Wildner {0x8A, 0x8A, "0x8A", "CreateDWordFieldOp", "TermObject", "TermArg TermArg NameString", NULL, 2600d02842fSSascha Wildner "DefCreateDWordField := CreateDWordFieldOp SourceBuff ByteIndex NameString"}, 2610d02842fSSascha Wildner {0x8B, 0x8B, "0x8B", "CreateWordFieldOp", "TermObject", "TermArg TermArg NameString", NULL, 2620d02842fSSascha Wildner "DefCreateWordField := CreateWordFieldOp SourceBuff ByteIndex NameString"}, 2630d02842fSSascha Wildner {0x8C, 0x8C, "0x8C", "CreateByteFieldOp", "TermObject", "TermArg TermArg NameString", NULL, 2640d02842fSSascha Wildner "DefCreateByteField := CreateByteFieldOp SourceBuff ByteIndex NameString"}, 2650d02842fSSascha Wildner {0x8D, 0x8D, "0x8D", "CreateBitFieldOp", "TermObject", "TermArg TermArg NameString", NULL, 2660d02842fSSascha Wildner "DefCreateBitField := CreateBitFieldOp SourceBuff BitIndex NameString"}, 2670d02842fSSascha Wildner {0x8E, 0x8E, "0x8E", "ObjectTypeOp", "TermObject", "SuperName", NULL, 2680d02842fSSascha Wildner "DefObjectType := ObjectTypeOp SuperName"}, 2690d02842fSSascha Wildner {0x8F, 0x8F, "0x8F", "CreateQWordFieldOp", "TermObject", "TermArg TermArg NameString", NULL, 2700d02842fSSascha Wildner "DefCreateQWordField := CreateQWordFieldOp SourceBuff ByteIndex NameString"}, 2710d02842fSSascha Wildner {0x90, 0x90, "0x90", "LAndOp", "TermObject", "TermArg TermArg", NULL, 2725943f66cSSascha Wildner "DefLAnd := LAndOp Operand Operand"}, 2730d02842fSSascha Wildner {0x91, 0x91, "0x91", "LOrOp", "TermObject", "TermArg TermArg", NULL, 2745943f66cSSascha Wildner "DefLOr := LOrOp Operand Operand"}, 2750d02842fSSascha Wildner {0x92, 0x92, "0x92", "LNotOp", "TermObject", "TermArg", NULL, 2765943f66cSSascha Wildner "DefLNot := LNotOp Operand"}, 2770d02842fSSascha Wildner {0x9293, 0x9293, "0x9293", "LNotEqualOp", "TermObject", "TermArg TermArg", NULL, 2785943f66cSSascha Wildner "DefLNotEqual := LNotEqualOp Operand Operand"}, 2790d02842fSSascha Wildner {0x9294, 0x9294, "0x9294", "LLessEqualOp", "TermObject", "TermArg TermArg", NULL, 2805943f66cSSascha Wildner "DefLLessEqual := LLessEqualOp Operand Operand"}, 2810d02842fSSascha Wildner {0x9295, 0x9295, "0x9295", "LGreaterEqualOp", "TermObject", "TermArg TermArg", NULL, 2825943f66cSSascha Wildner "DefLGreaterEqual := LGreaterEqualOp Operand Operand"}, 2830d02842fSSascha Wildner {0x93, 0x93, "0x93", "LEqualOp", "TermObject", "TermArg TermArg", NULL, 2845943f66cSSascha Wildner "DefLEqual := LEqualOp Operand Operand"}, 2850d02842fSSascha Wildner {0x94, 0x94, "0x94", "LGreaterOp", "TermObject", "TermArg TermArg", NULL, 2865943f66cSSascha Wildner "DefLGreater := LGreaterOp Operand Operand"}, 2870d02842fSSascha Wildner {0x95, 0x95, "0x95", "LLessOp", "TermObject", "TermArg TermArg", NULL, 2885943f66cSSascha Wildner "DefLLess := LLessOp Operand Operand"}, 2890d02842fSSascha Wildner {0x96, 0x96, "0x96", "ToBufferOp", "TermObject", "TermArg Target", NULL, 2900d02842fSSascha Wildner "DefToBuffer := ToBufferOp Operand Target"}, 2910d02842fSSascha Wildner {0x97, 0x97, "0x97", "ToDecimalStringOp", "TermObject", "TermArg Target", NULL, 2920d02842fSSascha Wildner "DefToDecimalString := ToDecimalStringOp Operand Target"}, 2930d02842fSSascha Wildner {0x98, 0x98, "0x98", "ToHexStringOp", "TermObject", "TermArg Target", NULL, 2940d02842fSSascha Wildner "DefToHexString := ToHexStringOp Operand Target"}, 2950d02842fSSascha Wildner {0x99, 0x99, "0x99", "ToIntegerOp", "TermObject", "TermArg Target", NULL, 2960d02842fSSascha Wildner "DefToInteger := ToIntegerOp Operand Target"}, 2970d02842fSSascha Wildner {0x9A, 0x9B, "0x9A-0x9B", NULL, NULL, NULL, NULL, 2980d02842fSSascha Wildner NULL}, 2990d02842fSSascha Wildner {0x9C, 0x9C, "0x9C", "ToStringOp", "TermObject", "TermArg TermArg Target", NULL, 3000d02842fSSascha Wildner "DefToString := ToStringOp TermArg LengthArg Target"}, 3010d02842fSSascha Wildner {0x9D, 0x9D, "0x9D", "CopyObjectOp", "TermObject", "TermArg SimpleName", NULL, 3020d02842fSSascha Wildner "DefCopyObject := CopyObjectOp TermArg SimpleName"}, 3030d02842fSSascha Wildner {0x9E, 0x9E, "0x9E", "MidOp", "TermObject", "TermArg TermArg TermArg Target", NULL, 3040d02842fSSascha Wildner "DefMid := MidOp MidObj TermArg TermArg Target"}, 3050d02842fSSascha Wildner {0x9F, 0x9F, "0x9F", "ContinueOp", "TermObject", NULL, NULL, 3060d02842fSSascha Wildner "DefContinue := ContinueOp"}, 3070d02842fSSascha Wildner {0xA0, 0xA0, "0xA0", "IfOp", "TermObject", "TermArg", "TermList", 3080d02842fSSascha Wildner "DefIfElse := IfOp PkgLength Predicate TermList DefElse"}, 3090d02842fSSascha Wildner {0xA1, 0xA1, "0xA1", "ElseOp", "TermObject", NULL, "TermList", 3100d02842fSSascha Wildner "DefElse := Nothing | <ElseOp PkgLength TermList>"}, 3110d02842fSSascha Wildner {0xA2, 0xA2, "0xA2", "WhileOp", "TermObject", "TermArg", "TermList", 3120d02842fSSascha Wildner "DefWhile := WhileOp PkgLength Predicate TermList"}, 3135943f66cSSascha Wildner {0xA3, 0xA3, "0xA3", "NoOpOp", "TermObject", NULL, NULL, 3145943f66cSSascha Wildner "DefNoOp := NoOpOp"}, 3150d02842fSSascha Wildner {0xA4, 0xA4, "0xA4", "ReturnOp", "TermObject", "TermArg", NULL, 3160d02842fSSascha Wildner "DefReturn := ReturnOp ArgObject"}, 3170d02842fSSascha Wildner {0xA5, 0xA5, "0xA5", "BreakOp", "TermObject", NULL, NULL, 3180d02842fSSascha Wildner "DefBreak := BreakOp"}, 3190d02842fSSascha Wildner {0xA6, 0xCB, "0xA6-0xCB", NULL, NULL, NULL, NULL, 3200d02842fSSascha Wildner NULL}, 3210d02842fSSascha Wildner {0xCC, 0xCC, "0xCC", "BreakPointOp", "TermObject", NULL, NULL, 3220d02842fSSascha Wildner "DefBreakPoint := BreakPointOp"}, 3230d02842fSSascha Wildner {0xCD, 0xFE, "0xCD-0xFE", NULL, NULL, NULL, NULL, 3240d02842fSSascha Wildner NULL}, 3250d02842fSSascha Wildner {0xFF, 0xFF, "0xFF", "OnesOp", "DataObject", NULL, NULL, 3260d02842fSSascha Wildner NULL}, 3270d02842fSSascha Wildner {0, 0, NULL, NULL, NULL, NULL, NULL, NULL} 3280d02842fSSascha Wildner }; 329