1 1.1 jruoho 2 1.1 jruoho Instructions for integrating iASL compiler into MS VC++ 6.0 environment. 3 1.1 jruoho 4 1.1 jruoho Part 1. Integration as a custom tool 5 1.1 jruoho 6 1.1 jruoho This procedure adds the iASL compiler as a custom tool that can be used 7 1.1 jruoho to compile ASL source files. The output is sent to the VC output 8 1.1 jruoho window. 9 1.1 jruoho 10 1.1 jruoho a) Select Tools->Customize. 11 1.1 jruoho 12 1.1 jruoho b) Select the "Tools" tab. 13 1.1 jruoho 14 1.1 jruoho c) Scroll down to the bottom of the "Menu Contents" window. There you 15 1.1 jruoho will see an empty rectangle. Click in the rectangle to enter a 16 1.1 jruoho name for this tool. 17 1.1 jruoho 18 1.1 jruoho d) Type "iASL Compiler" in the box and hit enter. You can now edit 19 1.1 jruoho the other fields for this new custom tool. 20 1.1 jruoho 21 1.1 jruoho e) Enter the following into the fields: 22 1.1 jruoho 23 1.1 jruoho Command: C:\Acpi\iasl.exe 24 1.1 jruoho Arguments: -e "$(FilePath)" 25 1.1 jruoho Initial Directory "$(FileDir)" 26 1.1 jruoho Use Output Window <Check this option> 27 1.1 jruoho 28 1.1 jruoho "Command" must be the path to wherever you copied the compiler. 29 1.1 jruoho "-e" instructs the compiler to produce messages appropriate for VC. 30 1.1 jruoho Quotes around FilePath and FileDir enable spaces in filenames. 31 1.1 jruoho 32 1.1 jruoho f) Select "Close". 33 1.1 jruoho 34 1.1 jruoho These steps will add the compiler to the tools menu as a custom tool. 35 1.1 jruoho By enabling "Use Output Window", you can click on error messages in 36 1.1 jruoho the output window and the source file and source line will be 37 1.1 jruoho automatically displayed by VC. Also, you can use F4 to step through 38 1.1 jruoho the messages and the corresponding source line(s). 39 1.1 jruoho 40 1.1 jruoho 41 1.1 jruoho Part 2. Integration into a project build 42 1.1 jruoho 43 1.1 jruoho This procedure creates a project that compiles ASL files to AML. 44 1.1 jruoho 45 1.1 jruoho a) Create a new, empty project and add your .ASL files to the project 46 1.1 jruoho 47 1.1 jruoho b) For all ASL files in the project, specify a custom build (under 48 1.1 jruoho Project/Settings/CustomBuild with the following settings (or similar): 49 1.1 jruoho 50 1.1 jruoho Commands: 51 1.1 jruoho c:\acpi\libraries\iasl.exe -vs -vi "$(InputPath)" 52 1.1 jruoho 53 1.1 jruoho Output: 54 1.1 jruoho $(InputDir)\$(InputPath).aml 55 1.1 jruoho 56 1.1 jruoho 57 1.1 jruoho 58 1.1 jruoho Compiler Generation From Source 59 1.1 jruoho 60 1.1 jruoho Generation of the ASL compiler from source code requires these items: 61 1.1 jruoho 62 1.1 jruoho 63 1.1 jruoho Required Tools 64 1.1 jruoho 1) The Flex (or Lex) lexical analyzer generator. 65 1.1 jruoho 2) The Bison (or Yacc) parser generator. 66 1.1 jruoho 3) An ANSI C compiler. 67 1.1 jruoho 68 1.1 jruoho 69 1.1 jruoho Required Source Code. 70 1.1 jruoho 71 1.1 jruoho There are three major source code components that are required to 72 1.1 jruoho generate the compiler: 73 1.1 jruoho 74 1.1 jruoho 1) The ASL compiler source. 75 1.1 jruoho 2) The ACPI CA Core Subsystem source. In particular, the Namespace Manager 76 1.1 jruoho component is used to create an internal ACPI namespace and symbol table, 77 1.1 jruoho and the AML Interpreter is used to evaluate constant expressions. 78 1.1 jruoho 3) The Common source for all ACPI components. 79 1.1 jruoho 80 1.1 jruoho 81 1.1 jruoho 82 1.1 jruoho 83 1.1 jruoho 84 1.1 jruoho 85 1.1 jruoho 86