diff --git a/src/acpi/aml/type2opcode.rs b/src/acpi/aml/type2opcode.rs index 2d7946bb187410b49a97e7114e0bfd0e5d290ed9..1d235d49e4847d8f627449d9b7f820e033bb09e5 100644 --- a/src/acpi/aml/type2opcode.rs +++ b/src/acpi/aml/type2opcode.rs @@ -601,15 +601,16 @@ fn parse_def_to_buffer(data: &[u8], }) } - // TODO: Compute the result - // TODO: Store the result, if appropriate parser_opcode!(data, 0x96); let operand = parse_term_arg(&data[2..], ctx)?; let target = parse_target(&data[2 + operand.len..], ctx)?; + let res = AmlValue::Buffer(operand.val.get_as_buffer()?); + ctx.modify(target.val, res.clone()); + Ok(AmlParseType { - val: AmlValue::Uninitialized, + val: res, len: 1 + operand.len + target.len }) }