2021-03-10 00:35:24 +00:00
|
|
|
open import "prelude.ml"
|
|
|
|
open import "../dolphin.ml"
|
|
|
|
open import "../pretty.ml"
|
|
|
|
open import "../mem/decode.ml"
|
|
|
|
open import "../mem/int.ml"
|
|
|
|
|
|
|
|
type item =
|
|
|
|
| DekuSticks
|
|
|
|
| NoItem
|
2021-03-10 01:04:59 +00:00
|
|
|
| UnknownItem of int
|
2021-03-10 00:35:24 +00:00
|
|
|
|
|
|
|
instance decode item begin
|
|
|
|
let decode addr =
|
|
|
|
let code = Dolphin.read_value_8 addr
|
|
|
|
match code with
|
|
|
|
| 0 -> DekuSticks
|
|
|
|
| 255 -> NoItem
|
2021-03-10 01:04:59 +00:00
|
|
|
| x -> UnknownItem x
|
2021-03-10 00:35:24 +00:00
|
|
|
end
|
|
|
|
|
|
|
|
instance show item begin
|
|
|
|
let show = function
|
|
|
|
| DekuSticks -> "Deku Sticks"
|
|
|
|
| NoItem -> "No Item"
|
2021-03-10 01:04:59 +00:00
|
|
|
| UnknownItem x -> "Unknown Item " ^ (show x)
|
2021-03-10 00:35:24 +00:00
|
|
|
end
|