# ACPI

This unit interprets ACPI tables in order to supply you with useful information
about the host system.

## Status: work in progress

I've created this unit to explore ACPI and could see that indeed, as seems to
be common wisdom, it's a pretty complicated world.

My immediate problem when I created this unit was to figure out how to snooze
[drv/timer] a bit better than HLT on my HP Mini, which had its fan running too
loud to my taste. Being able to print the DSDT AML was enough to figure out
where to poke, I think I'm good now. Even if I wasn't, I don't have the
intention of digging further in the short term.

All of this to say, this unit is very crude.

## Example usage

needs drv/acpi drv/pc/acpi
scanrsdp acpi$
.acpi

## API

acpi$ ( rsdp -- )
  Initializes the ACPI driver using the supplied RSD Pointer. The way to get
  this pointer is machine-dependent. On a PC, you'll want to use "scanrsdp" from
  the unit [drv/pc/acpi].

.acpi ( -- )
  Print general information about ACPI such as the address of the RSDP and the
  list of the root tables present.
