Load cartridge

This commit is contained in:
Fabien Freling 2019-05-15 14:03:53 +02:00
parent 2f31756be8
commit d197159f5a
7 changed files with 40 additions and 9 deletions

View file

@ -67,6 +67,8 @@ let get_RAM_size = function
let read_cartridge file =
Printf.printf "Read cartridge: %s" file;
print_newline ();
try
let ic = open_in_bin file in

View file

@ -1,3 +1,4 @@
let () =
Callback.register "oboy_name" Version.name;
Callback.register "oboy_version" Version.version;
Callback.register "oboy_load" State.load_cartridge;

View file

@ -1,9 +1,16 @@
(* State of the world, contains all the required information at any point *)
type t = {
cartridge : option Cartridge.t;
mutable cartridge : Cartridge.t option;
}
(* Global reference *)
let state = ref {
cartridge = None
}
let load_cartridge file =
let cartridge = Cartridge.read_cartridge file in
!state.cartridge <- cartridge;
match cartridge with
| Some _ -> true
| None -> false