[package] name = "vm6502" version = "0.1.1" edition = "2021" description = "A 6502 virtual machine backend." license = "GPL-3.0-or-later" repository = "https://github.com/GRAYgoose124/vm6502" # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html [dependencies] arrayvec = "0.7.2" bitmatch = "0.1.1" bytes = "1.2.1" derivative = "2.2.0" hex = "0.4.3" rand = "0.8.5" [lib] crate-type = ["rlib"] [features] default = ["check_heap_bounds", "passthrough_failure", "full_debug_printing"] # Debug features ## Useful features. # For using with cargo test to turn off test printing. show_test_debug = [] ops_only = ["show_vm_instr_tick_match"] pretty_printing = ["ops_only"] ## Debug packs debug_instrs = ["show_vm_instr", "show_vm_instr_tick_match"] full_debug_printing = ["show_vm_step", "show_vm_post_op", "debug_printing", "show_test_debug"] debug_printing = ["show_run_time","show_relative_offset", "show_mode", "show_status", "short_printing"] short_printing = ["show_vm_instr", "show_vm_tick_arms"] ## Debug printing flags show_vm_instr = [] show_vm_step = [] show_vm_tick_arms = [] show_vm_post_op = [] show_mode = [] show_status = ["show_status_set", "show_status_get"] show_status_set = [] show_status_get = [] show_relative_offset =[] show_fetched = [] show_vm_instr_tick_match = [] # For enabling more strict constraints to passthrough the virtual machine's errors to the rust compiler. # TODO: Rename to virtual bounds panic. vm_errors = ["passthrough_failure"] passthrough_failure = [] check_heap_bounds = [] external_exception_on_null_heap = [] # Printing/Package features show_run_time = []