open import "prelude.ml" open import "../pretty.ml" open import "../mem/decode.ml" open import "../mem/int.ml" open import "./item.ml" open import "./equipment.ml" type item_equips = ItemEquips of { button_item_b: item, button_item_c_left: item, button_item_c_down: item, button_item_c_right: item, button_slot_c_left: u8, button_slot_c_down: u8, button_slot_c_right: u8, equipment: equipment } instance decode item_equips begin let decode addr = ItemEquips { button_item_b = decode (addr + 0x00), button_item_c_left = decode (addr + 0x01), button_item_c_down = decode (addr + 0x02), button_item_c_right = decode (addr + 0x03), button_slot_c_left = decode (addr + 0x04), button_slot_c_down = decode (addr + 0x05), button_slot_c_right = decode (addr + 0x06), equipment = decode (addr + 0x08) } end instance prettyrecord item_equips begin let name _ = "ItemEquips" let fields (ItemEquips x) = [ ("button_item_b", S x.button_item_b), ("button_item_c_left", S x.button_item_c_left), ("button_item_c_down", S x.button_item_c_down), ("button_item_c_right", S x.button_item_c_right), ("button_slot_c_left", S x.button_slot_c_left), ("button_slot_c_down", S x.button_slot_c_down), ("button_slot_c_right", S x.button_slot_c_right), ("equipment", P x.equipment) ] end instance pretty item_equips begin let pretty = pretty_from_record end