From fb9f8ccf930b2926f2e82be107cf13bf67536dda Mon Sep 17 00:00:00 2001 From: Ry Date: Wed, 26 Oct 2022 18:02:30 -0700 Subject: [PATCH] Remove Rust emulator --- Cargo.lock | 3222 ---------------------- Cargo.toml | 21 - LICENSE | 21 - build.rs | 9 - docs/encoding.md | 51 - docs/logos/32.png | Bin 8698 -> 0 bytes docs/logos/32.svg | 150 - docs/logos/fox32.png | Bin 25845 -> 0 bytes docs/logos/fox32.svg | 162 -- docs/screenshots/screenshot_fox32rom.png | Bin 12490 -> 0 bytes docs/screenshots/screenshot_launcher.png | Bin 600398 -> 0 bytes src/32.png | Bin 8698 -> 0 bytes src/audio.rs | 70 - src/bus.rs | 300 -- src/cpu.rs | 2935 -------------------- src/disk.rs | 84 - src/keyboard.rs | 122 - src/main.rs | 352 --- src/memory.rs | 303 -- src/mouse.rs | 15 - 20 files changed, 7817 deletions(-) delete mode 100644 Cargo.lock delete mode 100644 Cargo.toml delete mode 100644 LICENSE delete mode 100644 build.rs delete mode 100644 docs/encoding.md delete mode 100644 docs/logos/32.png delete mode 100644 docs/logos/32.svg delete mode 100644 docs/logos/fox32.png delete mode 100644 docs/logos/fox32.svg delete mode 100644 docs/screenshots/screenshot_fox32rom.png delete mode 100644 docs/screenshots/screenshot_launcher.png delete mode 100644 src/32.png delete mode 100644 src/audio.rs delete mode 100644 src/bus.rs delete mode 100644 src/cpu.rs delete mode 100644 src/disk.rs delete mode 100644 src/keyboard.rs delete mode 100644 src/main.rs delete mode 100644 src/memory.rs delete mode 100644 src/mouse.rs diff --git a/Cargo.lock b/Cargo.lock deleted file mode 100644 index e758ee5..0000000 --- a/Cargo.lock +++ /dev/null @@ -1,3222 +0,0 @@ -# This file is automatically @generated by Cargo. -# It is not intended for manual editing. -version = 3 - -[[package]] -name = "adler" -version = "1.0.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe" - -[[package]] -name = "adler32" -version = "1.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aae1277d39aeec15cb388266ecc24b11c80469deae6067e17a1a7aa9e5c1f234" - -[[package]] -name = "ahash" -version = "0.4.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "739f4a8db6605981345c5654f3a85b056ce52f37a39d34da03f25bf2151ea16e" - -[[package]] -name = "aho-corasick" -version = "0.7.18" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e37cfd5e7657ada45f742d6e99ca5788580b5c529dc78faf11ece6dc702656f" -dependencies = [ - "memchr", -] - -[[package]] -name = "alsa" -version = "0.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5915f52fe2cf65e83924d037b6c5290b7cee097c6b5c8700746e6168a343fd6b" -dependencies = [ - "alsa-sys", - "bitflags", - "libc", - "nix 0.23.1", -] - -[[package]] -name = "alsa-sys" -version = "0.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "db8fee663d06c4e303404ef5f40488a53e062f89ba8bfed81f42325aafad1527" -dependencies = [ - "libc", - "pkg-config", -] - -[[package]] -name = "anyhow" -version = "1.0.62" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1485d4d2cc45e7b201ee3767015c96faa5904387c9d87c6efdd0fb511f12d305" - -[[package]] -name = "arrayvec" -version = "0.7.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "be4dc07131ffa69b8072d35f5007352af944213cde02545e2103680baed38fcd" - -[[package]] -name = "ash" -version = "0.34.0+1.2.203" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b0f780da53d0063880d45554306489f09dd8d1bda47688b4a57bc579119356df" -dependencies = [ - "libloading", -] - -[[package]] -name = "ashpd" -version = "0.2.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7915e26e0786f91768d23de32afafa4ee5e2ea76be21c0ecd8e14441543c1655" -dependencies = [ - "enumflags2", - "futures", - "rand", - "serde", - "serde_repr", - "zbus", -] - -[[package]] -name = "async-broadcast" -version = "0.3.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "90622698a1218e0b2fb846c97b5f19a0831f6baddee73d9454156365ccfa473b" -dependencies = [ - "easy-parallel", - "event-listener", - "futures-core", -] - -[[package]] -name = "async-channel" -version = "1.6.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2114d64672151c0c5eaa5e131ec84a74f06e1e559830dabba01ca30605d66319" -dependencies = [ - "concurrent-queue", - "event-listener", - "futures-core", -] - -[[package]] -name = "async-executor" -version = "1.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "871f9bb5e0a22eeb7e8cf16641feb87c9dc67032ccf8ff49e772eb9941d3a965" -dependencies = [ - "async-task", - "concurrent-queue", - "fastrand", - "futures-lite", - "once_cell", - "slab", -] - -[[package]] -name = "async-io" -version = "1.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a811e6a479f2439f0c04038796b5cfb3d2ad56c230e0f2d3f7b04d68cfee607b" -dependencies = [ - "concurrent-queue", - "futures-lite", - "libc", - "log", - "once_cell", - "parking", - "polling", - "slab", - "socket2", - "waker-fn", - "winapi", -] - -[[package]] -name = "async-lock" -version = "2.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e6a8ea61bf9947a1007c5cada31e647dbc77b103c679858150003ba697ea798b" -dependencies = [ - "event-listener", -] - -[[package]] -name = "async-recursion" -version = "0.3.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d7d78656ba01f1b93024b7c3a0467f1608e4be67d725749fdcd7d2c7678fd7a2" -dependencies = [ - "proc-macro2", - "quote", - "syn", -] - -[[package]] -name = "async-task" -version = "4.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "677d306121baf53310a3fd342d88dc0824f6bbeace68347593658525565abee8" - -[[package]] -name = "async-trait" -version = "0.1.52" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "061a7acccaa286c011ddc30970520b98fa40e00c9d644633fb26b5fc63a265e3" -dependencies = [ - "proc-macro2", - "quote", - "syn", -] - -[[package]] -name = "atk-sys" -version = "0.15.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "58aeb089fb698e06db8089971c7ee317ab9644bade33383f63631437b03aafb6" -dependencies = [ - "glib-sys", - "gobject-sys", - "libc", - "system-deps", -] - -[[package]] -name = "autocfg" -version = "1.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cdb031dd78e28731d87d56cc8ffef4a8f36ca26c38fe2de700543e627f8a464a" - -[[package]] -name = "bindgen" -version = "0.59.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2bd2a9a458e8f4304c52c43ebb0cfbd520289f8379a52e329a38afda99bf8eb8" -dependencies = [ - "bitflags", - "cexpr", - "clang-sys", - "lazy_static", - "lazycell", - "peeking_take_while", - "proc-macro2", - "quote", - "regex", - "rustc-hash", - "shlex", -] - -[[package]] -name = "bit-set" -version = "0.5.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6e11e16035ea35e4e5997b393eacbf6f63983188f7a2ad25bfb13465f5ad59de" -dependencies = [ - "bit-vec", -] - -[[package]] -name = "bit-vec" -version = "0.6.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "349f9b6a179ed607305526ca489b34ad0a41aed5f7980fa90eb03160b69598fb" - -[[package]] -name = "bit_field" -version = "0.10.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dcb6dd1c2376d2e096796e234a70e17e94cc2d5d54ff8ce42b28cef1d0d359a4" - -[[package]] -name = "bitflags" -version = "1.3.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" - -[[package]] -name = "block" -version = "0.1.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0d8c1fef690941d3e7788d328517591fecc684c084084702d6ff1641e993699a" - -[[package]] -name = "bumpalo" -version = "3.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8f1e260c3a9040a7c19a12468758f4c16f31a81a1fe087482be9570ec864bb6c" - -[[package]] -name = "bytemuck" -version = "1.7.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "72957246c41db82b8ef88a5486143830adeb8227ef9837740bdec67724cf2c5b" - -[[package]] -name = "byteorder" -version = "1.4.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "14c189c53d098945499cdfa7ecc63567cf3886b3332b312a5b4585d8d3a6a610" - -[[package]] -name = "bytes" -version = "1.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c4872d67bab6358e59559027aa3b9157c53d9358c51423c17554809a8858e0f8" - -[[package]] -name = "cache-padded" -version = "1.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c1db59621ec70f09c5e9b597b220c7a2b43611f4710dc03ceb8748637775692c" - -[[package]] -name = "cairo-sys-rs" -version = "0.15.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3c55d429bef56ac9172d25fecb85dc8068307d17acd74b377866b7a1ef25d3c8" -dependencies = [ - "libc", - "system-deps", -] - -[[package]] -name = "calloop" -version = "0.9.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bf2eec61efe56aa1e813f5126959296933cf0700030e4314786c48779a66ab82" -dependencies = [ - "log", - "nix 0.22.0", -] - -[[package]] -name = "cc" -version = "1.0.71" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "79c2681d6594606957bbb8631c4b90a7fcaaa72cdb714743a437b156d6a7eedd" -dependencies = [ - "jobserver", -] - -[[package]] -name = "cesu8" -version = "1.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6d43a04d8753f35258c91f8ec639f792891f748a1edbd759cf1dcea3382ad83c" - -[[package]] -name = "cexpr" -version = "0.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6fac387a98bb7c37292057cffc56d62ecb629900026402633ae9160df93a8766" -dependencies = [ - "nom", -] - -[[package]] -name = "cfg-expr" -version = "0.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "edae0b9625d1fce32f7d64b71784d9b1bf8469ec1a9c417e44aaf16a9cbd7571" -dependencies = [ - "smallvec", -] - -[[package]] -name = "cfg-if" -version = "0.1.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4785bdd1c96b2a846b2bd7cc02e86b6b3dbf14e7e53446c4f54c92a361040822" - -[[package]] -name = "cfg-if" -version = "1.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" - -[[package]] -name = "cfg_aliases" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fd16c4719339c4530435d38e511904438d07cce7950afa3718a84ac36c10e89e" - -[[package]] -name = "chrono" -version = "0.4.20" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6127248204b9aba09a362f6c930ef6a78f2c1b2215f8a7b398c06e1083f17af0" -dependencies = [ - "js-sys", - "num-integer", - "num-traits", - "time 0.1.44", - "wasm-bindgen", - "winapi", -] - -[[package]] -name = "clang-sys" -version = "1.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4cc00842eed744b858222c4c9faf7243aafc6d33f92f96935263ef4d8a41ce21" -dependencies = [ - "glob", - "libc", - "libloading", -] - -[[package]] -name = "claxon" -version = "0.4.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4bfbf56724aa9eca8afa4fcfadeb479e722935bb2a0900c2d37e0cc477af0688" - -[[package]] -name = "cocoa" -version = "0.24.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6f63902e9223530efb4e26ccd0cf55ec30d592d3b42e21a28defc42a9586e832" -dependencies = [ - "bitflags", - "block", - "cocoa-foundation", - "core-foundation 0.9.2", - "core-graphics 0.22.2", - "foreign-types", - "libc", - "objc", -] - -[[package]] -name = "cocoa-foundation" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7ade49b65d560ca58c403a479bb396592b155c0185eada742ee323d1d68d6318" -dependencies = [ - "bitflags", - "block", - "core-foundation 0.9.2", - "core-graphics-types", - "foreign-types", - "libc", - "objc", -] - -[[package]] -name = "codespan-reporting" -version = "0.11.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3538270d33cc669650c4b093848450d380def10c331d38c768e34cac80576e6e" -dependencies = [ - "termcolor", - "unicode-width", -] - -[[package]] -name = "color_quant" -version = "1.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3d7b894f5411737b7867f4827955924d7c254fc9f4d91a6aad6b097804b1018b" - -[[package]] -name = "combine" -version = "4.6.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2a604e93b79d1808327a6fca85a6f2d69de66461e7620f5a4cbf5fb4d1d7c948" -dependencies = [ - "bytes", - "memchr", -] - -[[package]] -name = "concurrent-queue" -version = "1.2.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "30ed07550be01594c6026cff2a1d7fe9c8f683caa798e12b68694ac9e88286a3" -dependencies = [ - "cache-padded", -] - -[[package]] -name = "copyless" -version = "0.1.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a2df960f5d869b2dd8532793fde43eb5427cceb126c929747a26823ab0eeb536" - -[[package]] -name = "core-foundation" -version = "0.7.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "57d24c7a13c43e870e37c1556b74555437870a04514f7685f5b354e090567171" -dependencies = [ - "core-foundation-sys 0.7.0", - "libc", -] - -[[package]] -name = "core-foundation" -version = "0.9.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6888e10551bb93e424d8df1d07f1a8b4fceb0001a3a4b048bfc47554946f47b3" -dependencies = [ - "core-foundation-sys 0.8.3", - "libc", -] - -[[package]] -name = "core-foundation-sys" -version = "0.7.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b3a71ab494c0b5b860bdc8407ae08978052417070c2ced38573a9157ad75b8ac" - -[[package]] -name = "core-foundation-sys" -version = "0.8.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5827cebf4670468b8772dd191856768aedcb1b0278a04f989f7766351917b9dc" - -[[package]] -name = "core-graphics" -version = "0.19.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b3889374e6ea6ab25dba90bb5d96202f61108058361f6dc72e8b03e6f8bbe923" -dependencies = [ - "bitflags", - "core-foundation 0.7.0", - "foreign-types", - "libc", -] - -[[package]] -name = "core-graphics" -version = "0.22.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "269f35f69b542b80e736a20a89a05215c0ce80c2c03c514abb2e318b78379d86" -dependencies = [ - "bitflags", - "core-foundation 0.9.2", - "core-graphics-types", - "foreign-types", - "libc", -] - -[[package]] -name = "core-graphics-types" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3a68b68b3446082644c91ac778bf50cd4104bfb002b5a6a7c44cca5a2c70788b" -dependencies = [ - "bitflags", - "core-foundation 0.9.2", - "foreign-types", - "libc", -] - -[[package]] -name = "core-video-sys" -version = "0.1.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "34ecad23610ad9757664d644e369246edde1803fcb43ed72876565098a5d3828" -dependencies = [ - "cfg-if 0.1.10", - "core-foundation-sys 0.7.0", - "core-graphics 0.19.2", - "libc", - "objc", -] - -[[package]] -name = "coreaudio-rs" -version = "0.10.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "11894b20ebfe1ff903cbdc52259693389eea03b94918a2def2c30c3bf227ad88" -dependencies = [ - "bitflags", - "coreaudio-sys", -] - -[[package]] -name = "coreaudio-sys" -version = "0.2.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3dff444d80630d7073077d38d40b4501fd518bd2b922c2a55edcc8b0f7be57e6" -dependencies = [ - "bindgen", -] - -[[package]] -name = "cpal" -version = "0.13.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "74117836a5124f3629e4b474eed03e479abaf98988b4bb317e29f08cfe0e4116" -dependencies = [ - "alsa", - "core-foundation-sys 0.8.3", - "coreaudio-rs", - "jni", - "js-sys", - "lazy_static", - "libc", - "mach", - "ndk 0.6.0", - "ndk-glue 0.6.2", - "nix 0.23.1", - "oboe", - "parking_lot", - "stdweb", - "thiserror", - "web-sys", - "winapi", -] - -[[package]] -name = "crc32fast" -version = "1.3.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b540bd8bc810d3885c6ea91e2018302f68baba2129ab3e88f32389ee9370880d" -dependencies = [ - "cfg-if 1.0.0", -] - -[[package]] -name = "crossbeam-channel" -version = "0.5.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e54ea8bc3fb1ee042f5aace6e3c6e025d3874866da222930f70ce62aceba0bfa" -dependencies = [ - "cfg-if 1.0.0", - "crossbeam-utils", -] - -[[package]] -name = "crossbeam-deque" -version = "0.8.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6455c0ca19f0d2fbf751b908d5c55c1f5cbc65e03c4225427254b46890bdde1e" -dependencies = [ - "cfg-if 1.0.0", - "crossbeam-epoch", - "crossbeam-utils", -] - -[[package]] -name = "crossbeam-epoch" -version = "0.9.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c00d6d2ea26e8b151d99093005cb442fb9a37aeaca582a03ec70946f49ab5ed9" -dependencies = [ - "cfg-if 1.0.0", - "crossbeam-utils", - "lazy_static", - "memoffset", - "scopeguard", -] - -[[package]] -name = "crossbeam-utils" -version = "0.8.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b5e5bed1f1c269533fa816a0a5492b3545209a205ca1a54842be180eb63a16a6" -dependencies = [ - "cfg-if 1.0.0", - "lazy_static", -] - -[[package]] -name = "cty" -version = "0.2.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b365fabc795046672053e29c954733ec3b05e4be654ab130fe8f1f94d7051f35" - -[[package]] -name = "d3d12" -version = "0.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2daefd788d1e96e0a9d66dee4b828b883509bc3ea9ce30665f04c3246372690c" -dependencies = [ - "bitflags", - "libloading", - "winapi", -] - -[[package]] -name = "darling" -version = "0.13.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d0d720b8683f8dd83c65155f0530560cba68cd2bf395f6513a483caee57ff7f4" -dependencies = [ - "darling_core", - "darling_macro", -] - -[[package]] -name = "darling_core" -version = "0.13.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7a340f241d2ceed1deb47ae36c4144b2707ec7dd0b649f894cb39bb595986324" -dependencies = [ - "fnv", - "ident_case", - "proc-macro2", - "quote", - "strsim", - "syn", -] - -[[package]] -name = "darling_macro" -version = "0.13.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "72c41b3b7352feb3211a0d743dc5700a4e3b60f51bd2b368892d1e0f9a95f44b" -dependencies = [ - "darling_core", - "quote", - "syn", -] - -[[package]] -name = "deflate" -version = "1.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c86f7e25f518f4b81808a2cf1c50996a61f5c2eb394b2393bd87f2a4780a432f" -dependencies = [ - "adler32", -] - -[[package]] -name = "derivative" -version = "2.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fcc3dd5e9e9c0b295d6e1e4d811fb6f157d5ffd784b8d202fc62eac8035a770b" -dependencies = [ - "proc-macro2", - "quote", - "syn", -] - -[[package]] -name = "dispatch" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bd0c93bb4b0c6d9b77f4435b0ae98c24d17f1c45b2ff844c6151a07256ca923b" - -[[package]] -name = "dlib" -version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ac1b7517328c04c2aa68422fc60a41b92208182142ed04a25879c26c8f878794" -dependencies = [ - "libloading", -] - -[[package]] -name = "downcast-rs" -version = "1.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9ea835d29036a4087793836fa931b08837ad5e957da9e23886b29586fb9b6650" - -[[package]] -name = "easy-parallel" -version = "3.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6907e25393cdcc1f4f3f513d9aac1e840eb1cc341a0fccb01171f7d14d10b946" - -[[package]] -name = "either" -version = "1.6.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e78d4f1cc4ae33bbfc157ed5d5a5ef3bc29227303d595861deb238fcec4e9457" - -[[package]] -name = "enum-iterator" -version = "1.1.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "45a0ac4aeb3a18f92eaf09c6bb9b3ac30ff61ca95514fc58cbead1c9a6bf5401" -dependencies = [ - "enum-iterator-derive", -] - -[[package]] -name = "enum-iterator-derive" -version = "1.0.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b13f1e69590421890f90448c3cd5f554746a31adc6dc0dac406ec6901db8dc25" -dependencies = [ - "proc-macro2", - "quote", - "syn", -] - -[[package]] -name = "enumflags2" -version = "0.7.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a25c90b056b3f84111cf183cbeddef0d3a0bbe9a674f057e1a1533c315f24def" -dependencies = [ - "enumflags2_derive", - "serde", -] - -[[package]] -name = "enumflags2_derive" -version = "0.7.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "144ec79496cbab6f84fa125dc67be9264aef22eb8a28da8454d9c33f15108da4" -dependencies = [ - "proc-macro2", - "quote", - "syn", -] - -[[package]] -name = "event-listener" -version = "2.5.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "77f3309417938f28bf8228fcff79a4a37103981e3e186d2ccd19c74b38f4eb71" - -[[package]] -name = "exr" -version = "1.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d4badb9489a465cb2c555af1f00f0bfd8cecd6fc12ac11da9d5b40c5dd5f0200" -dependencies = [ - "bit_field", - "deflate", - "flume", - "half", - "inflate", - "lebe", - "smallvec", - "threadpool", -] - -[[package]] -name = "fastrand" -version = "1.7.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c3fcf0cee53519c866c09b5de1f6c56ff9d647101f81c1964fa632e148896cdf" -dependencies = [ - "instant", -] - -[[package]] -name = "flate2" -version = "1.0.22" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e6988e897c1c9c485f43b47a529cef42fde0547f9d8d41a7062518f1d8fc53f" -dependencies = [ - "cfg-if 1.0.0", - "crc32fast", - "libc", - "miniz_oxide 0.4.4", -] - -[[package]] -name = "flume" -version = "0.10.12" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "843c03199d0c0ca54bc1ea90ac0d507274c28abcc4f691ae8b4eaa375087c76a" -dependencies = [ - "futures-core", - "futures-sink", - "nanorand", - "pin-project", - "spin", -] - -[[package]] -name = "fnv" -version = "1.0.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1" - -[[package]] -name = "foreign-types" -version = "0.3.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f6f339eb8adc052cd2ca78910fda869aefa38d22d5cb648e6485e4d3fc06f3b1" -dependencies = [ - "foreign-types-shared", -] - -[[package]] -name = "foreign-types-shared" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b" - -[[package]] -name = "form_urlencoded" -version = "1.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5fc25a87fa4fd2094bffb06925852034d90a17f0d1e05197d4956d3555752191" -dependencies = [ - "matches", - "percent-encoding", -] - -[[package]] -name = "fox32" -version = "0.5.0" -dependencies = [ - "anyhow", - "chrono", - "image", - "log", - "pixels", - "rfd", - "ringbuf", - "rodio", - "vergen", - "winit", - "winit_input_helper", -] - -[[package]] -name = "futures" -version = "0.3.19" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "28560757fe2bb34e79f907794bb6b22ae8b0e5c669b638a1132f2592b19035b4" -dependencies = [ - "futures-channel", - "futures-core", - "futures-executor", - "futures-io", - "futures-sink", - "futures-task", - "futures-util", -] - -[[package]] -name = "futures-channel" -version = "0.3.19" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ba3dda0b6588335f360afc675d0564c17a77a2bda81ca178a4b6081bd86c7f0b" -dependencies = [ - "futures-core", - "futures-sink", -] - -[[package]] -name = "futures-core" -version = "0.3.19" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d0c8ff0461b82559810cdccfde3215c3f373807f5e5232b71479bff7bb2583d7" - -[[package]] -name = "futures-executor" -version = "0.3.19" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "29d6d2ff5bb10fb95c85b8ce46538a2e5f5e7fdc755623a7d4529ab8a4ed9d2a" -dependencies = [ - "futures-core", - "futures-task", - "futures-util", -] - -[[package]] -name = "futures-io" -version = "0.3.19" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b1f9d34af5a1aac6fb380f735fe510746c38067c5bf16c7fd250280503c971b2" - -[[package]] -name = "futures-lite" -version = "1.12.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7694489acd39452c77daa48516b894c153f192c3578d5a839b62c58099fcbf48" -dependencies = [ - "fastrand", - "futures-core", - "futures-io", - "memchr", - "parking", - "pin-project-lite", - "waker-fn", -] - -[[package]] -name = "futures-macro" -version = "0.3.19" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6dbd947adfffb0efc70599b3ddcf7b5597bb5fa9e245eb99f62b3a5f7bb8bd3c" -dependencies = [ - "proc-macro2", - "quote", - "syn", -] - -[[package]] -name = "futures-sink" -version = "0.3.19" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e3055baccb68d74ff6480350f8d6eb8fcfa3aa11bdc1a1ae3afdd0514617d508" - -[[package]] -name = "futures-task" -version = "0.3.19" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6ee7c6485c30167ce4dfb83ac568a849fe53274c831081476ee13e0dce1aad72" - -[[package]] -name = "futures-util" -version = "0.3.19" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d9b5cf40b47a271f77a8b1bec03ca09044d99d2372c0de244e66430761127164" -dependencies = [ - "futures-channel", - "futures-core", - "futures-io", - "futures-macro", - "futures-sink", - "futures-task", - "memchr", - "pin-project-lite", - "pin-utils", - "slab", -] - -[[package]] -name = "fxhash" -version = "0.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c31b6d751ae2c7f11320402d34e41349dd1016f8d5d45e48c4312bc8625af50c" -dependencies = [ - "byteorder", -] - -[[package]] -name = "gdk-pixbuf-sys" -version = "0.15.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "413424d9818621fa3cfc8a3a915cdb89a7c3c507d56761b4ec83a9a98e587171" -dependencies = [ - "gio-sys", - "glib-sys", - "gobject-sys", - "libc", - "system-deps", -] - -[[package]] -name = "gdk-sys" -version = "0.15.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "32e7a08c1e8f06f4177fb7e51a777b8c1689f743a7bc11ea91d44d2226073a88" -dependencies = [ - "cairo-sys-rs", - "gdk-pixbuf-sys", - "gio-sys", - "glib-sys", - "gobject-sys", - "libc", - "pango-sys", - "pkg-config", - "system-deps", -] - -[[package]] -name = "getrandom" -version = "0.2.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d39cd93900197114fa1fcb7ae84ca742095eed9442088988ae74fa744e930e77" -dependencies = [ - "cfg-if 1.0.0", - "js-sys", - "libc", - "wasi", - "wasm-bindgen", -] - -[[package]] -name = "getset" -version = "0.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e45727250e75cc04ff2846a66397da8ef2b3db8e40e0cef4df67950a07621eb9" -dependencies = [ - "proc-macro-error", - "proc-macro2", - "quote", - "syn", -] - -[[package]] -name = "gif" -version = "0.11.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c3a7187e78088aead22ceedeee99779455b23fc231fe13ec443f99bb71694e5b" -dependencies = [ - "color_quant", - "weezl", -] - -[[package]] -name = "gio-sys" -version = "0.15.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "04b57719ccaacf2a0d9c79f151be629f3a3ef3991658ee2af0bb66287e4ea86c" -dependencies = [ - "glib-sys", - "gobject-sys", - "libc", - "system-deps", - "winapi", -] - -[[package]] -name = "git2" -version = "0.14.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d0155506aab710a86160ddb504a480d2964d7ab5b9e62419be69e0032bc5931c" -dependencies = [ - "bitflags", - "libc", - "libgit2-sys", - "log", - "url", -] - -[[package]] -name = "glib-sys" -version = "0.15.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c668102c6e15e0a7f6b99b59f602c2e806967bb86414f617b77e19b1de5b3fac" -dependencies = [ - "libc", - "system-deps", -] - -[[package]] -name = "glob" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9b919933a397b79c37e33b77bb2aa3dc8eb6e165ad809e58ff75bc7db2e34574" - -[[package]] -name = "glow" -version = "0.11.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d8bd5877156a19b8ac83a29b2306fe20537429d318f3ff0a1a2119f8d9c61919" -dependencies = [ - "js-sys", - "slotmap", - "wasm-bindgen", - "web-sys", -] - -[[package]] -name = "gobject-sys" -version = "0.15.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6edb1f0b3e4c08e2a0a490d1082ba9e902cdff8ff07091e85c6caec60d17e2ab" -dependencies = [ - "glib-sys", - "libc", - "system-deps", -] - -[[package]] -name = "gpu-alloc" -version = "0.5.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0e64cbb8d36508d3e19da95e56e196a84f674fc190881f2cc010000798838aa6" -dependencies = [ - "bitflags", - "gpu-alloc-types", -] - -[[package]] -name = "gpu-alloc-types" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "54804d0d6bc9d7f26db4eaec1ad10def69b599315f487d32c334a80d1efe67a5" -dependencies = [ - "bitflags", -] - -[[package]] -name = "gpu-descriptor" -version = "0.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d7a237f0419ab10d17006d55c62ac4f689a6bf52c75d3f38b8361d249e8d4b0b" -dependencies = [ - "bitflags", - "gpu-descriptor-types", - "hashbrown 0.9.1", -] - -[[package]] -name = "gpu-descriptor-types" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "363e3677e55ad168fef68cf9de3a4a310b53124c5e784c53a1d70e92d23f2126" -dependencies = [ - "bitflags", -] - -[[package]] -name = "gtk-sys" -version = "0.15.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "013419d486809ebafd7d8c2450afcfcf384c1a52dd079660f88c2a3b2e19f82f" -dependencies = [ - "atk-sys", - "cairo-sys-rs", - "gdk-pixbuf-sys", - "gdk-sys", - "gio-sys", - "glib-sys", - "gobject-sys", - "libc", - "pango-sys", - "system-deps", -] - -[[package]] -name = "half" -version = "1.8.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eabb4a44450da02c90444cf74558da904edde8fb4e9035a9a6a4e15445af0bd7" - -[[package]] -name = "hashbrown" -version = "0.9.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d7afe4a420e3fe79967a00898cc1f4db7c8a49a9333a29f8a4bd76a253d5cd04" -dependencies = [ - "ahash", -] - -[[package]] -name = "hashbrown" -version = "0.11.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ab5ef0d4909ef3724cc8cce6ccc8572c5c817592e9285f5464f8e86f8bd3726e" - -[[package]] -name = "heck" -version = "0.3.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6d621efb26863f0e9924c6ac577e8275e5e6b77455db64ffa6c65c904e9e132c" -dependencies = [ - "unicode-segmentation", -] - -[[package]] -name = "hermit-abi" -version = "0.1.19" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "62b467343b94ba476dcb2500d242dadbb39557df889310ac77c5d99100aaac33" -dependencies = [ - "libc", -] - -[[package]] -name = "hex" -version = "0.4.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70" - -[[package]] -name = "hexf-parse" -version = "0.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dfa686283ad6dd069f105e5ab091b04c62850d3e4cf5d67debad1933f55023df" - -[[package]] -name = "hound" -version = "3.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8a164bb2ceaeff4f42542bdb847c41517c78a60f5649671b2a07312b6e117549" - -[[package]] -name = "ident_case" -version = "1.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b9e0384b61958566e926dc50660321d12159025e767c18e043daf26b70104c39" - -[[package]] -name = "idna" -version = "0.2.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "418a0a6fab821475f634efe3ccc45c013f742efe03d853e8d3355d5cb850ecf8" -dependencies = [ - "matches", - "unicode-bidi", - "unicode-normalization", -] - -[[package]] -name = "image" -version = "0.24.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "db207d030ae38f1eb6f240d5a1c1c88ff422aa005d10f8c6c6fc5e75286ab30e" -dependencies = [ - "bytemuck", - "byteorder", - "color_quant", - "exr", - "gif", - "jpeg-decoder 0.2.2", - "num-iter", - "num-rational", - "num-traits", - "png", - "scoped_threadpool", - "tiff", -] - -[[package]] -name = "indexmap" -version = "1.7.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bc633605454125dec4b66843673f01c7df2b89479b32e0ed634e43a91cff62a5" -dependencies = [ - "autocfg", - "hashbrown 0.11.2", -] - -[[package]] -name = "inflate" -version = "0.4.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1cdb29978cc5797bd8dcc8e5bf7de604891df2a8dc576973d71a281e916db2ff" -dependencies = [ - "adler32", -] - -[[package]] -name = "inplace_it" -version = "0.3.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "90953f308a79fe6d62a4643e51f848fbfddcd05975a38e69fdf4ab86a7baf7ca" - -[[package]] -name = "instant" -version = "0.1.12" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7a5bbe824c507c5da5956355e86a746d82e0e1464f65d862cc5e71da70e94b2c" -dependencies = [ - "cfg-if 1.0.0", - "js-sys", - "wasm-bindgen", - "web-sys", -] - -[[package]] -name = "itoa" -version = "1.0.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6c8af84674fe1f223a982c933a0ee1086ac4d4052aa0fb8060c12c6ad838e754" - -[[package]] -name = "jni" -version = "0.19.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c6df18c2e3db7e453d3c6ac5b3e9d5182664d28788126d39b91f2d1e22b017ec" -dependencies = [ - "cesu8", - "combine", - "jni-sys", - "log", - "thiserror", - "walkdir", -] - -[[package]] -name = "jni-sys" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8eaf4bc02d17cbdd7ff4c7438cafcdf7fb9a4613313ad11b4f8fefe7d3fa0130" - -[[package]] -name = "jobserver" -version = "0.1.24" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "af25a77299a7f711a01975c35a6a424eb6862092cc2d6c72c4ed6cbc56dfc1fa" -dependencies = [ - "libc", -] - -[[package]] -name = "jpeg-decoder" -version = "0.1.22" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "229d53d58899083193af11e15917b5640cd40b29ff475a1fe4ef725deb02d0f2" - -[[package]] -name = "jpeg-decoder" -version = "0.2.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "105fb082d64e2100074587f59a74231f771750c664af903f1f9f76c9dedfc6f1" -dependencies = [ - "rayon", -] - -[[package]] -name = "js-sys" -version = "0.3.55" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7cc9ffccd38c451a86bf13657df244e9c3f37493cce8e5e21e940963777acc84" -dependencies = [ - "wasm-bindgen", -] - -[[package]] -name = "khronos-egl" -version = "4.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8c2352bd1d0bceb871cb9d40f24360c8133c11d7486b68b5381c1dd1a32015e3" -dependencies = [ - "libc", - "libloading", -] - -[[package]] -name = "lazy_static" -version = "1.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646" - -[[package]] -name = "lazycell" -version = "1.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "830d08ce1d1d941e6b30645f1a0eb5643013d835ce3779a5fc208261dbe10f55" - -[[package]] -name = "lebe" -version = "0.5.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7efd1d698db0759e6ef11a7cd44407407399a910c774dd804c64c032da7826ff" - -[[package]] -name = "lewton" -version = "0.10.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "777b48df9aaab155475a83a7df3070395ea1ac6902f5cd062b8f2b028075c030" -dependencies = [ - "byteorder", - "ogg", - "tinyvec", -] - -[[package]] -name = "libc" -version = "0.2.125" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5916d2ae698f6de9bfb891ad7a8d65c09d232dc58cc4ac433c7da3b2fd84bc2b" - -[[package]] -name = "libgit2-sys" -version = "0.13.4+1.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d0fa6563431ede25f5cc7f6d803c6afbc1c5d3ad3d4925d12c882bf2b526f5d1" -dependencies = [ - "cc", - "libc", - "libz-sys", - "pkg-config", -] - -[[package]] -name = "libloading" -version = "0.7.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c0cf036d15402bea3c5d4de17b3fce76b3e4a56ebc1f577be0e7a72f7c607cf0" -dependencies = [ - "cfg-if 1.0.0", - "winapi", -] - -[[package]] -name = "libz-sys" -version = "1.1.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "de5435b8549c16d423ed0c03dbaafe57cf6c3344744f1242520d59c9d8ecec66" -dependencies = [ - "cc", - "libc", - "pkg-config", - "vcpkg", -] - -[[package]] -name = "lock_api" -version = "0.4.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "712a4d093c9976e24e7dbca41db895dabcbac38eb5f4045393d17a95bdfb1109" -dependencies = [ - "scopeguard", -] - -[[package]] -name = "log" -version = "0.4.14" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "51b9bbe6c47d51fc3e1a9b945965946b4c44142ab8792c50835a980d362c2710" -dependencies = [ - "cfg-if 1.0.0", -] - -[[package]] -name = "mach" -version = "0.3.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b823e83b2affd8f40a9ee8c29dbc56404c1e34cd2710921f2801e2cf29527afa" -dependencies = [ - "libc", -] - -[[package]] -name = "malloc_buf" -version = "0.0.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "62bb907fe88d54d8d9ce32a3cceab4218ed2f6b7d35617cafe9adf84e43919cb" -dependencies = [ - "libc", -] - -[[package]] -name = "matches" -version = "0.1.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a3e378b66a060d48947b590737b30a1be76706c8dd7b8ba0f2fe3989c68a853f" - -[[package]] -name = "memchr" -version = "2.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "308cc39be01b73d0d18f82a0e7b2a3df85245f84af96fdddc5d202d27e47b86a" - -[[package]] -name = "memmap2" -version = "0.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "00b6c2ebff6180198788f5db08d7ce3bc1d0b617176678831a7510825973e357" -dependencies = [ - "libc", -] - -[[package]] -name = "memoffset" -version = "0.6.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "59accc507f1338036a0477ef61afdae33cde60840f4dfe481319ce3ad116ddf9" -dependencies = [ - "autocfg", -] - -[[package]] -name = "metal" -version = "0.23.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e0514f491f4cc03632ab399ee01e2c1c1b12d3e1cf2d667c1ff5f87d6dcd2084" -dependencies = [ - "bitflags", - "block", - "core-graphics-types", - "foreign-types", - "log", - "objc", -] - -[[package]] -name = "minimal-lexical" -version = "0.1.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9c64630dcdd71f1a64c435f54885086a0de5d6a12d104d69b165fb7d5286d677" - -[[package]] -name = "minimp3" -version = "0.5.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "985438f75febf74c392071a975a29641b420dd84431135a6e6db721de4b74372" -dependencies = [ - "minimp3-sys", - "slice-deque", - "thiserror", -] - -[[package]] -name = "minimp3-sys" -version = "0.3.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e21c73734c69dc95696c9ed8926a2b393171d98b3f5f5935686a26a487ab9b90" -dependencies = [ - "cc", -] - -[[package]] -name = "miniz_oxide" -version = "0.4.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a92518e98c078586bc6c934028adcca4c92a53d6a958196de835170a01d84e4b" -dependencies = [ - "adler", - "autocfg", -] - -[[package]] -name = "miniz_oxide" -version = "0.5.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d2b29bd4bc3f33391105ebee3589c19197c4271e3e5a9ec9bfe8127eeff8f082" -dependencies = [ - "adler", -] - -[[package]] -name = "mio" -version = "0.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ba272f85fa0b41fc91872be579b3bbe0f56b792aa361a380eb669469f68dafb2" -dependencies = [ - "libc", - "log", - "miow", - "ntapi", - "winapi", -] - -[[package]] -name = "miow" -version = "0.3.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b9f1c5b025cda876f66ef43a113f91ebc9f4ccef34843000e0adf6ebbab84e21" -dependencies = [ - "winapi", -] - -[[package]] -name = "naga" -version = "0.8.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a4419062f8aa39fb25938169486341945758679e260ddbc1f94bfd1f33924dc2" -dependencies = [ - "bit-set", - "bitflags", - "codespan-reporting", - "hexf-parse", - "indexmap", - "log", - "num-traits", - "rustc-hash", - "spirv", - "thiserror", -] - -[[package]] -name = "nanorand" -version = "0.7.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6a51313c5820b0b02bd422f4b44776fbf47961755c74ce64afc73bfad10226c3" -dependencies = [ - "getrandom", -] - -[[package]] -name = "ndk" -version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "96d868f654c72e75f8687572699cdabe755f03effbb62542768e995d5b8d699d" -dependencies = [ - "bitflags", - "jni-sys", - "ndk-sys 0.2.2", - "num_enum", - "thiserror", -] - -[[package]] -name = "ndk" -version = "0.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2032c77e030ddee34a6787a64166008da93f6a352b629261d0fee232b8742dd4" -dependencies = [ - "bitflags", - "jni-sys", - "ndk-sys 0.3.0", - "num_enum", - "thiserror", -] - -[[package]] -name = "ndk-context" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "27b02d87554356db9e9a873add8782d4ea6e3e58ea071a9adb9a2e8ddb884a8b" - -[[package]] -name = "ndk-glue" -version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fc291b8de2095cba8dab7cf381bf582ff4c17a09acf854c32e46545b08085d28" -dependencies = [ - "lazy_static", - "libc", - "log", - "ndk 0.5.0", - "ndk-macro", - "ndk-sys 0.2.2", -] - -[[package]] -name = "ndk-glue" -version = "0.6.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0d0c4a7b83860226e6b4183edac21851f05d5a51756e97a1144b7f5a6b63e65f" -dependencies = [ - "lazy_static", - "libc", - "log", - "ndk 0.6.0", - "ndk-context", - "ndk-macro", - "ndk-sys 0.3.0", -] - -[[package]] -name = "ndk-macro" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0df7ac00c4672f9d5aece54ee3347520b7e20f158656c7db2e6de01902eb7a6c" -dependencies = [ - "darling", - "proc-macro-crate", - "proc-macro2", - "quote", - "syn", -] - -[[package]] -name = "ndk-sys" -version = "0.2.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e1bcdd74c20ad5d95aacd60ef9ba40fdf77f767051040541df557b7a9b2a2121" - -[[package]] -name = "ndk-sys" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6e5a6ae77c8ee183dcbbba6150e2e6b9f3f4196a7666c02a715a95692ec1fa97" -dependencies = [ - "jni-sys", -] - -[[package]] -name = "nix" -version = "0.22.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cf1e25ee6b412c2a1e3fcb6a4499a5c1bfe7f43e014bdce9a6b6666e5aa2d187" -dependencies = [ - "bitflags", - "cc", - "cfg-if 1.0.0", - "libc", - "memoffset", -] - -[[package]] -name = "nix" -version = "0.23.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9f866317acbd3a240710c63f065ffb1e4fd466259045ccb504130b7f668f35c6" -dependencies = [ - "bitflags", - "cc", - "cfg-if 1.0.0", - "libc", - "memoffset", -] - -[[package]] -name = "nom" -version = "7.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7ffd9d26838a953b4af82cbeb9f1592c6798916983959be223a7124e992742c1" -dependencies = [ - "memchr", - "minimal-lexical", - "version_check", -] - -[[package]] -name = "ntapi" -version = "0.3.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3f6bb902e437b6d86e03cce10a7e2af662292c5dfef23b65899ea3ac9354ad44" -dependencies = [ - "winapi", -] - -[[package]] -name = "num-derive" -version = "0.3.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "876a53fff98e03a936a674b29568b0e605f06b29372c2489ff4de23f1949743d" -dependencies = [ - "proc-macro2", - "quote", - "syn", -] - -[[package]] -name = "num-integer" -version = "0.1.44" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d2cc698a63b549a70bc047073d2949cce27cd1c7b0a4a862d08a8031bc2801db" -dependencies = [ - "autocfg", - "num-traits", -] - -[[package]] -name = "num-iter" -version = "0.1.42" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b2021c8337a54d21aca0d59a92577a029af9431cb59b909b03252b9c164fad59" -dependencies = [ - "autocfg", - "num-integer", - "num-traits", -] - -[[package]] -name = "num-rational" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d41702bd167c2df5520b384281bc111a4b5efcf7fbc4c9c222c815b07e0a6a6a" -dependencies = [ - "autocfg", - "num-integer", - "num-traits", -] - -[[package]] -name = "num-traits" -version = "0.2.14" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9a64b1ec5cda2586e284722486d802acf1f7dbdc623e2bfc57e65ca1cd099290" -dependencies = [ - "autocfg", -] - -[[package]] -name = "num_cpus" -version = "1.13.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "19e64526ebdee182341572e50e9ad03965aa510cd94427a4549448f285e957a1" -dependencies = [ - "hermit-abi", - "libc", -] - -[[package]] -name = "num_enum" -version = "0.5.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3f9bd055fb730c4f8f4f57d45d35cd6b3f0980535b056dc7ff119cee6a66ed6f" -dependencies = [ - "derivative", - "num_enum_derive", -] - -[[package]] -name = "num_enum_derive" -version = "0.5.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "486ea01961c4a818096de679a8b740b26d9033146ac5291b1c98557658f8cdd9" -dependencies = [ - "proc-macro-crate", - "proc-macro2", - "quote", - "syn", -] - -[[package]] -name = "num_threads" -version = "0.1.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2819ce041d2ee131036f4fc9d6ae7ae125a3a40e97ba64d04fe799ad9dabbb44" -dependencies = [ - "libc", -] - -[[package]] -name = "objc" -version = "0.2.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "915b1b472bc21c53464d6c8461c9d3af805ba1ef837e1cac254428f4a77177b1" -dependencies = [ - "malloc_buf", - "objc_exception", -] - -[[package]] -name = "objc-foundation" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1add1b659e36c9607c7aab864a76c7a4c2760cd0cd2e120f3fb8b952c7e22bf9" -dependencies = [ - "block", - "objc", - "objc_id", -] - -[[package]] -name = "objc_exception" -version = "0.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ad970fb455818ad6cba4c122ad012fae53ae8b4795f86378bce65e4f6bab2ca4" -dependencies = [ - "cc", -] - -[[package]] -name = "objc_id" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c92d4ddb4bd7b50d730c215ff871754d0da6b2178849f8a2a2ab69712d0c073b" -dependencies = [ - "objc", -] - -[[package]] -name = "oboe" -version = "0.4.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "27f63c358b4fa0fbcfefd7c8be5cfc39c08ce2389f5325687e7762a48d30a5c1" -dependencies = [ - "jni", - "ndk 0.6.0", - "ndk-context", - "num-derive", - "num-traits", - "oboe-sys", -] - -[[package]] -name = "oboe-sys" -version = "0.4.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3370abb7372ed744232c12954d920d1a40f1c4686de9e79e800021ef492294bd" -dependencies = [ - "cc", -] - -[[package]] -name = "ogg" -version = "0.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6951b4e8bf21c8193da321bcce9c9dd2e13c858fe078bf9054a288b419ae5d6e" -dependencies = [ - "byteorder", -] - -[[package]] -name = "once_cell" -version = "1.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "692fcb63b64b1758029e0a96ee63e049ce8c5948587f2f7208df04625e5f6b56" - -[[package]] -name = "ordered-stream" -version = "0.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "44630c059eacfd6e08bdaa51b1db2ce33119caa4ddc1235e923109aa5f25ccb1" -dependencies = [ - "futures-core", - "pin-project-lite", -] - -[[package]] -name = "pango-sys" -version = "0.15.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7022c2fb88cd2d9d55e1a708a8c53a3ae8678234c4a54bf623400aeb7f31fac2" -dependencies = [ - "glib-sys", - "gobject-sys", - "libc", - "system-deps", -] - -[[package]] -name = "parking" -version = "2.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "427c3892f9e783d91cc128285287e70a59e206ca452770ece88a76f7a3eddd72" - -[[package]] -name = "parking_lot" -version = "0.11.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7d17b78036a60663b797adeaee46f5c9dfebb86948d1255007a1d6be0271ff99" -dependencies = [ - "instant", - "lock_api", - "parking_lot_core", -] - -[[package]] -name = "parking_lot_core" -version = "0.8.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d76e8e1493bcac0d2766c42737f34458f1c8c50c0d23bcb24ea953affb273216" -dependencies = [ - "cfg-if 1.0.0", - "instant", - "libc", - "redox_syscall", - "smallvec", - "winapi", -] - -[[package]] -name = "peeking_take_while" -version = "0.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "19b17cddbe7ec3f8bc800887bab5e717348c95ea2ca0b1bf0837fb964dc67099" - -[[package]] -name = "percent-encoding" -version = "2.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d4fd5641d01c8f18a23da7b6fe29298ff4b55afcccdf78973b24cf3175fee32e" - -[[package]] -name = "pin-project" -version = "1.0.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "58ad3879ad3baf4e44784bc6a718a8698867bb991f8ce24d1bcbe2cfb4c3a75e" -dependencies = [ - "pin-project-internal", -] - -[[package]] -name = "pin-project-internal" -version = "1.0.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "744b6f092ba29c3650faf274db506afd39944f48420f6c86b17cfe0ee1cb36bb" -dependencies = [ - "proc-macro2", - "quote", - "syn", -] - -[[package]] -name = "pin-project-lite" -version = "0.2.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e280fbe77cc62c91527259e9442153f4688736748d24660126286329742b4c6c" - -[[package]] -name = "pin-utils" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184" - -[[package]] -name = "pixels" -version = "0.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a3be4951b24b374c72b0aaaeb59e51e1acb38b8e680b11f43c1d0049b8550891" -dependencies = [ - "bytemuck", - "pollster", - "raw-window-handle", - "thiserror", - "ultraviolet", - "wgpu", -] - -[[package]] -name = "pkg-config" -version = "0.3.21" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "10e2fcbb64ecbe64c8e040a386c3104d384583af58b956d870aaaf229df6e66d" - -[[package]] -name = "png" -version = "0.17.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dc38c0ad57efb786dd57b9864e5b18bae478c00c824dc55a38bbc9da95dde3ba" -dependencies = [ - "bitflags", - "crc32fast", - "deflate", - "miniz_oxide 0.5.1", -] - -[[package]] -name = "polling" -version = "2.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "685404d509889fade3e86fe3a5803bca2ec09b0c0778d5ada6ec8bf7a8de5259" -dependencies = [ - "cfg-if 1.0.0", - "libc", - "log", - "wepoll-ffi", - "winapi", -] - -[[package]] -name = "pollster" -version = "0.2.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bb20dcc30536a1508e75d47dd0e399bb2fe7354dcf35cda9127f2bf1ed92e30e" - -[[package]] -name = "ppv-lite86" -version = "0.2.16" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eb9f9e6e233e5c4a35559a617bf40a4ec447db2e84c20b55a6f83167b7e57872" - -[[package]] -name = "proc-macro-crate" -version = "1.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1ebace6889caf889b4d3f76becee12e90353f2b8c7d875534a71e5742f8f6f83" -dependencies = [ - "thiserror", - "toml", -] - -[[package]] -name = "proc-macro-error" -version = "1.0.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "da25490ff9892aab3fcf7c36f08cfb902dd3e71ca0f9f9517bea02a73a5ce38c" -dependencies = [ - "proc-macro-error-attr", - "proc-macro2", - "quote", - "syn", - "version_check", -] - -[[package]] -name = "proc-macro-error-attr" -version = "1.0.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a1be40180e52ecc98ad80b184934baf3d0d29f979574e439af5a55274b35f869" -dependencies = [ - "proc-macro2", - "quote", - "version_check", -] - -[[package]] -name = "proc-macro2" -version = "1.0.43" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0a2ca2c61bc9f3d74d2886294ab7b9853abd9c1ad903a3ac7815c58989bb7bab" -dependencies = [ - "unicode-ident", -] - -[[package]] -name = "profiling" -version = "1.0.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "87dfd5592a8eed7e74f56ad7b125f8234763b805c30f0c7c95c486920026a6ec" - -[[package]] -name = "quote" -version = "1.0.21" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bbe448f377a7d6961e30f5955f9b8d106c3f5e449d493ee1b125c1d43c2b5179" -dependencies = [ - "proc-macro2", -] - -[[package]] -name = "rand" -version = "0.8.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2e7573632e6454cf6b99d7aac4ccca54be06da05aca2ef7423d22d27d4d4bcd8" -dependencies = [ - "libc", - "rand_chacha", - "rand_core", - "rand_hc", -] - -[[package]] -name = "rand_chacha" -version = "0.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88" -dependencies = [ - "ppv-lite86", - "rand_core", -] - -[[package]] -name = "rand_core" -version = "0.6.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d34f1408f55294453790c48b2f1ebbb1c5b4b7563eb1f418bcfcfdbb06ebb4e7" -dependencies = [ - "getrandom", -] - -[[package]] -name = "rand_hc" -version = "0.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d51e9f596de227fda2ea6c84607f5558e196eeaf43c986b724ba4fb8fdf497e7" -dependencies = [ - "rand_core", -] - -[[package]] -name = "range-alloc" -version = "0.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "63e935c45e09cc6dcf00d2f0b2d630a58f4095320223d47fc68918722f0538b6" - -[[package]] -name = "raw-window-handle" -version = "0.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fba75eee94a9d5273a68c9e1e105d9cffe1ef700532325788389e5a83e2522b7" -dependencies = [ - "cty", -] - -[[package]] -name = "rayon" -version = "1.5.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c06aca804d41dbc8ba42dfd964f0d01334eceb64314b9ecf7c5fad5188a06d90" -dependencies = [ - "autocfg", - "crossbeam-deque", - "either", - "rayon-core", -] - -[[package]] -name = "rayon-core" -version = "1.9.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d78120e2c850279833f1dd3582f730c4ab53ed95aeaaaa862a2a5c71b1656d8e" -dependencies = [ - "crossbeam-channel", - "crossbeam-deque", - "crossbeam-utils", - "lazy_static", - "num_cpus", -] - -[[package]] -name = "redox_syscall" -version = "0.2.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8383f39639269cde97d255a32bdb68c047337295414940c68bdd30c2e13203ff" -dependencies = [ - "bitflags", -] - -[[package]] -name = "regex" -version = "1.5.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d07a8629359eb56f1e2fb1652bb04212c072a87ba68546a04065d525673ac461" -dependencies = [ - "aho-corasick", - "memchr", - "regex-syntax", -] - -[[package]] -name = "regex-syntax" -version = "0.6.25" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f497285884f3fcff424ffc933e56d7cbca511def0c9831a7f9b5f6153e3cc89b" - -[[package]] -name = "renderdoc-sys" -version = "0.7.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f1382d1f0a252c4bf97dc20d979a2fdd05b024acd7c2ed0f7595d7817666a157" - -[[package]] -name = "rfd" -version = "0.7.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2aaf1d71ccd44689f7c2c72da1117fd8db71f72a76fe9b5c5dbb17ab903007e0" -dependencies = [ - "ashpd", - "block", - "dispatch", - "glib-sys", - "gobject-sys", - "gtk-sys", - "js-sys", - "lazy_static", - "log", - "objc", - "objc-foundation", - "objc_id", - "pollster", - "raw-window-handle", - "wasm-bindgen", - "wasm-bindgen-futures", - "web-sys", - "windows", -] - -[[package]] -name = "ringbuf" -version = "0.2.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fd3064490f4a0c5bc127544803fbc2bb5f77ec5170f0208f2d7b605a4f396d44" -dependencies = [ - "cache-padded", -] - -[[package]] -name = "rodio" -version = "0.15.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ec0939e9f626e6c6f1989adb6226a039c855ca483053f0ee7c98b90e41cf731e" -dependencies = [ - "claxon", - "cpal", - "hound", - "lewton", - "minimp3", -] - -[[package]] -name = "rustc-hash" -version = "1.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2" - -[[package]] -name = "rustversion" -version = "1.0.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "97477e48b4cf8603ad5f7aaf897467cf42ab4218a38ef76fb14c2d6773a6d6a8" - -[[package]] -name = "safe_arch" -version = "0.5.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c1ff3d6d9696af502cc3110dacce942840fb06ff4514cad92236ecc455f2ce05" -dependencies = [ - "bytemuck", -] - -[[package]] -name = "same-file" -version = "1.0.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "93fc1dc3aaa9bfed95e02e6eadabb4baf7e3078b0bd1b4d7b6b0b68378900502" -dependencies = [ - "winapi-util", -] - -[[package]] -name = "scoped-tls" -version = "1.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ea6a9290e3c9cf0f18145ef7ffa62d68ee0bf5fcd651017e586dc7fd5da448c2" - -[[package]] -name = "scoped_threadpool" -version = "0.1.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1d51f5df5af43ab3f1360b429fa5e0152ac5ce8c0bd6485cae490332e96846a8" - -[[package]] -name = "scopeguard" -version = "1.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d29ab0c6d3fc0ee92fe66e2d99f700eab17a8d57d1c1d3b748380fb20baa78cd" - -[[package]] -name = "serde" -version = "1.0.130" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f12d06de37cf59146fbdecab66aa99f9fe4f78722e3607577a5375d66bd0c913" -dependencies = [ - "serde_derive", -] - -[[package]] -name = "serde_derive" -version = "1.0.130" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d7bc1a1ab1961464eae040d96713baa5a724a8152c1222492465b54322ec508b" -dependencies = [ - "proc-macro2", - "quote", - "syn", -] - -[[package]] -name = "serde_repr" -version = "0.1.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "98d0516900518c29efa217c298fa1f4e6c6ffc85ae29fd7f4ee48f176e1a9ed5" -dependencies = [ - "proc-macro2", - "quote", - "syn", -] - -[[package]] -name = "sha1" -version = "0.6.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c1da05c97445caa12d05e848c4a4fcbbea29e748ac28f7e80e9b010392063770" -dependencies = [ - "sha1_smol", -] - -[[package]] -name = "sha1_smol" -version = "1.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ae1a47186c03a32177042e55dbc5fd5aee900b8e0069a8d70fba96a9375cd012" - -[[package]] -name = "shlex" -version = "1.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "43b2853a4d09f215c24cc5489c992ce46052d359b5109343cbafbf26bc62f8a3" - -[[package]] -name = "slab" -version = "0.4.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9def91fd1e018fe007022791f865d0ccc9b3a0d5001e01aabb8b40e46000afb5" - -[[package]] -name = "slice-deque" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "31ef6ee280cdefba6d2d0b4b78a84a1c1a3f3a4cec98c2d4231c8bc225de0f25" -dependencies = [ - "libc", - "mach", - "winapi", -] - -[[package]] -name = "slotmap" -version = "1.0.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e1e08e261d0e8f5c43123b7adf3e4ca1690d655377ac93a03b2c9d3e98de1342" -dependencies = [ - "version_check", -] - -[[package]] -name = "smallvec" -version = "1.7.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1ecab6c735a6bb4139c0caafd0cc3635748bbb3acf4550e8138122099251f309" - -[[package]] -name = "smithay-client-toolkit" -version = "0.15.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1325f292209cee78d5035530932422a30aa4c8fda1a16593ac083c1de211e68a" -dependencies = [ - "bitflags", - "calloop", - "dlib", - "lazy_static", - "log", - "memmap2", - "nix 0.22.0", - "pkg-config", - "wayland-client", - "wayland-cursor", - "wayland-protocols", -] - -[[package]] -name = "socket2" -version = "0.4.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "66d72b759436ae32898a2af0a14218dbf55efde3feeb170eb623637db85ee1e0" -dependencies = [ - "libc", - "winapi", -] - -[[package]] -name = "spin" -version = "0.9.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "511254be0c5bcf062b019a6c89c01a664aa359ded62f78aa72c6fc137c0590e5" -dependencies = [ - "lock_api", -] - -[[package]] -name = "spirv" -version = "0.2.0+1.5.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "246bfa38fe3db3f1dfc8ca5a2cdeb7348c78be2112740cc0ec8ef18b6d94f830" -dependencies = [ - "bitflags", - "num-traits", -] - -[[package]] -name = "static_assertions" -version = "1.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f" - -[[package]] -name = "stdweb" -version = "0.1.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ef5430c8e36b713e13b48a9f709cc21e046723fe44ce34587b73a830203b533e" - -[[package]] -name = "strsim" -version = "0.10.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623" - -[[package]] -name = "syn" -version = "1.0.99" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "58dbef6ec655055e20b86b15a8cc6d439cca19b667537ac6a1369572d151ab13" -dependencies = [ - "proc-macro2", - "quote", - "unicode-ident", -] - -[[package]] -name = "system-deps" -version = "6.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7b1487aaddaacbc5d60a2a507ba1617c5ca66c57dd0dd07d0c5efd5b693841d4" -dependencies = [ - "cfg-expr", - "heck", - "pkg-config", - "toml", - "version-compare", -] - -[[package]] -name = "termcolor" -version = "1.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2dfed899f0eb03f32ee8c6a0aabdb8a7949659e3466561fc0adf54e26d88c5f4" -dependencies = [ - "winapi-util", -] - -[[package]] -name = "thiserror" -version = "1.0.32" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f5f6586b7f764adc0231f4c79be7b920e766bb2f3e51b3661cdb263828f19994" -dependencies = [ - "thiserror-impl", -] - -[[package]] -name = "thiserror-impl" -version = "1.0.32" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "12bafc5b54507e0149cdf1b145a5d80ab80a90bcd9275df43d4fff68460f6c21" -dependencies = [ - "proc-macro2", - "quote", - "syn", -] - -[[package]] -name = "threadpool" -version = "1.8.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d050e60b33d41c19108b32cea32164033a9013fe3b46cbd4457559bfbf77afaa" -dependencies = [ - "num_cpus", -] - -[[package]] -name = "tiff" -version = "0.7.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0247608e998cb6ce39dfc8f4a16c50361ce71e5b52e6d24ea1227ea8ea8ee0b2" -dependencies = [ - "flate2", - "jpeg-decoder 0.1.22", - "weezl", -] - -[[package]] -name = "time" -version = "0.1.44" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6db9e6914ab8b1ae1c260a4ae7a49b6c5611b40328a735b21862567685e73255" -dependencies = [ - "libc", - "wasi", - "winapi", -] - -[[package]] -name = "time" -version = "0.3.13" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "db76ff9fa4b1458b3c7f077f3ff9887394058460d21e634355b273aaf11eea45" -dependencies = [ - "itoa", - "libc", - "num_threads", -] - -[[package]] -name = "tinyvec" -version = "1.5.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2c1c1d5a42b6245520c249549ec267180beaffcc0615401ac8e31853d4b6d8d2" -dependencies = [ - "tinyvec_macros", -] - -[[package]] -name = "tinyvec_macros" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cda74da7e1a664f795bb1f8a87ec406fb89a02522cf6e50620d016add6dbbf5c" - -[[package]] -name = "toml" -version = "0.5.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a31142970826733df8241ef35dc040ef98c679ab14d7c3e54d827099b3acecaa" -dependencies = [ - "serde", -] - -[[package]] -name = "ultraviolet" -version = "0.8.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "16b9e3507eba17043af05c8a72fce3ec2c24b58945f45732e71dbc6646d904a7" -dependencies = [ - "wide", -] - -[[package]] -name = "unicode-bidi" -version = "0.3.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1a01404663e3db436ed2746d9fefef640d868edae3cceb81c3b8d5732fda678f" - -[[package]] -name = "unicode-ident" -version = "1.0.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c4f5b37a154999a8f3f98cc23a628d850e154479cd94decf3414696e12e31aaf" - -[[package]] -name = "unicode-normalization" -version = "0.1.19" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d54590932941a9e9266f0832deed84ebe1bf2e4c9e4a3554d393d18f5e854bf9" -dependencies = [ - "tinyvec", -] - -[[package]] -name = "unicode-segmentation" -version = "1.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8895849a949e7845e06bd6dc1aa51731a103c42707010a5b591c0038fb73385b" - -[[package]] -name = "unicode-width" -version = "0.1.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3ed742d4ea2bd1176e236172c8429aaf54486e7ac098db29ffe6529e0ce50973" - -[[package]] -name = "url" -version = "2.2.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a507c383b2d33b5fc35d1861e77e6b383d158b2da5e14fe51b83dfedf6fd578c" -dependencies = [ - "form_urlencoded", - "idna", - "matches", - "percent-encoding", -] - -[[package]] -name = "vcpkg" -version = "0.2.15" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "accd4ea62f7bb7a82fe23066fb0957d48ef677f6eeb8215f372f52e48bb32426" - -[[package]] -name = "vergen" -version = "7.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1ffa80ed519f45995741e70664d4abcf147d2a47b8c7ea0a4aa495548ef9474f" -dependencies = [ - "anyhow", - "cfg-if 1.0.0", - "enum-iterator", - "getset", - "git2", - "rustversion", - "thiserror", - "time 0.3.13", -] - -[[package]] -name = "version-compare" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fe88247b92c1df6b6de80ddc290f3976dbdf2f5f5d3fd049a9fb598c6dd5ca73" - -[[package]] -name = "version_check" -version = "0.9.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5fecdca9a5291cc2b8dcf7dc02453fee791a280f3743cb0905f8822ae463b3fe" - -[[package]] -name = "waker-fn" -version = "1.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9d5b2c62b4012a3e1eca5a7e077d13b3bf498c4073e33ccd58626607748ceeca" - -[[package]] -name = "walkdir" -version = "2.3.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "808cf2735cd4b6866113f648b791c6adc5714537bc222d9347bb203386ffda56" -dependencies = [ - "same-file", - "winapi", - "winapi-util", -] - -[[package]] -name = "wasi" -version = "0.10.0+wasi-snapshot-preview1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1a143597ca7c7793eff794def352d41792a93c481eb1042423ff7ff72ba2c31f" - -[[package]] -name = "wasm-bindgen" -version = "0.2.78" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "632f73e236b219150ea279196e54e610f5dbafa5d61786303d4da54f84e47fce" -dependencies = [ - "cfg-if 1.0.0", - "wasm-bindgen-macro", -] - -[[package]] -name = "wasm-bindgen-backend" -version = "0.2.78" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a317bf8f9fba2476b4b2c85ef4c4af8ff39c3c7f0cdfeed4f82c34a880aa837b" -dependencies = [ - "bumpalo", - "lazy_static", - "log", - "proc-macro2", - "quote", - "syn", - "wasm-bindgen-shared", -] - -[[package]] -name = "wasm-bindgen-futures" -version = "0.4.28" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8e8d7523cb1f2a4c96c1317ca690031b714a51cc14e05f712446691f413f5d39" -dependencies = [ - "cfg-if 1.0.0", - "js-sys", - "wasm-bindgen", - "web-sys", -] - -[[package]] -name = "wasm-bindgen-macro" -version = "0.2.78" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d56146e7c495528bf6587663bea13a8eb588d39b36b679d83972e1a2dbbdacf9" -dependencies = [ - "quote", - "wasm-bindgen-macro-support", -] - -[[package]] -name = "wasm-bindgen-macro-support" -version = "0.2.78" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7803e0eea25835f8abdc585cd3021b3deb11543c6fe226dcd30b228857c5c5ab" -dependencies = [ - "proc-macro2", - "quote", - "syn", - "wasm-bindgen-backend", - "wasm-bindgen-shared", -] - -[[package]] -name = "wasm-bindgen-shared" -version = "0.2.78" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0237232789cf037d5480773fe568aac745bfe2afbc11a863e97901780a6b47cc" - -[[package]] -name = "wayland-client" -version = "0.29.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "91223460e73257f697d9e23d401279123d36039a3f7a449e983f123292d4458f" -dependencies = [ - "bitflags", - "downcast-rs", - "libc", - "nix 0.22.0", - "scoped-tls", - "wayland-commons", - "wayland-scanner", - "wayland-sys", -] - -[[package]] -name = "wayland-commons" -version = "0.29.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "94f6e5e340d7c13490eca867898c4cec5af56c27a5ffe5c80c6fc4708e22d33e" -dependencies = [ - "nix 0.22.0", - "once_cell", - "smallvec", - "wayland-sys", -] - -[[package]] -name = "wayland-cursor" -version = "0.29.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c52758f13d5e7861fc83d942d3d99bf270c83269575e52ac29e5b73cb956a6bd" -dependencies = [ - "nix 0.22.0", - "wayland-client", - "xcursor", -] - -[[package]] -name = "wayland-protocols" -version = "0.29.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "60147ae23303402e41fe034f74fb2c35ad0780ee88a1c40ac09a3be1e7465741" -dependencies = [ - "bitflags", - "wayland-client", - "wayland-commons", - "wayland-scanner", -] - -[[package]] -name = "wayland-scanner" -version = "0.29.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "39a1ed3143f7a143187156a2ab52742e89dac33245ba505c17224df48939f9e0" -dependencies = [ - "proc-macro2", - "quote", - "xml-rs", -] - -[[package]] -name = "wayland-sys" -version = "0.29.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d9341df79a8975679188e37dab3889bfa57c44ac2cb6da166f519a81cbe452d4" -dependencies = [ - "dlib", - "lazy_static", - "pkg-config", -] - -[[package]] -name = "web-sys" -version = "0.3.55" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "38eb105f1c59d9eaa6b5cdc92b859d85b926e82cb2e0945cd0c9259faa6fe9fb" -dependencies = [ - "js-sys", - "wasm-bindgen", -] - -[[package]] -name = "weezl" -version = "0.1.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d8b77fdfd5a253be4ab714e4ffa3c49caf146b4de743e97510c0656cf90f1e8e" - -[[package]] -name = "wepoll-ffi" -version = "0.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d743fdedc5c64377b5fc2bc036b01c7fd642205a0d96356034ae3404d49eb7fb" -dependencies = [ - "cc", -] - -[[package]] -name = "wgpu" -version = "0.12.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b97cd781ff044d6d697b632a2e212032c2e957d1afaa21dbf58069cbb8f78567" -dependencies = [ - "arrayvec", - "js-sys", - "log", - "naga", - "parking_lot", - "raw-window-handle", - "smallvec", - "wasm-bindgen", - "wasm-bindgen-futures", - "web-sys", - "wgpu-core", - "wgpu-hal", - "wgpu-types", -] - -[[package]] -name = "wgpu-core" -version = "0.12.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cfe9cb9c9d728c0f7ea0c309f1b3d5e9d5c7d379890d0a4e3df3103323ff7a84" -dependencies = [ - "arrayvec", - "bitflags", - "cfg_aliases", - "codespan-reporting", - "copyless", - "fxhash", - "log", - "naga", - "parking_lot", - "profiling", - "raw-window-handle", - "smallvec", - "thiserror", - "wgpu-hal", - "wgpu-types", -] - -[[package]] -name = "wgpu-hal" -version = "0.12.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "742ec904d0577e1a88b82dba6cf0347c12197cd664b859b05f868bceb8cfff4d" -dependencies = [ - "arrayvec", - "ash", - "bit-set", - "bitflags", - "block", - "core-graphics-types", - "d3d12", - "foreign-types", - "fxhash", - "glow", - "gpu-alloc", - "gpu-descriptor", - "inplace_it", - "js-sys", - "khronos-egl", - "libloading", - "log", - "metal", - "naga", - "objc", - "parking_lot", - "profiling", - "range-alloc", - "raw-window-handle", - "renderdoc-sys", - "thiserror", - "wasm-bindgen", - "web-sys", - "wgpu-types", - "winapi", -] - -[[package]] -name = "wgpu-types" -version = "0.12.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "549533d9e1cdd4b4cda7718d33ff500fc4c34b5467b71d76b547ae0324f3b2a2" -dependencies = [ - "bitflags", -] - -[[package]] -name = "wide" -version = "0.6.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "46bbe7c604a27ca0b05c5503221e76da628225b568e6f1280b42dbad3b72d89b" -dependencies = [ - "bytemuck", - "safe_arch", -] - -[[package]] -name = "winapi" -version = "0.3.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419" -dependencies = [ - "winapi-i686-pc-windows-gnu", - "winapi-x86_64-pc-windows-gnu", -] - -[[package]] -name = "winapi-i686-pc-windows-gnu" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6" - -[[package]] -name = "winapi-util" -version = "0.1.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "70ec6ce85bb158151cae5e5c87f95a8e97d2c0c4b001223f33a334e3ce5de178" -dependencies = [ - "winapi", -] - -[[package]] -name = "winapi-x86_64-pc-windows-gnu" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" - -[[package]] -name = "windows" -version = "0.30.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b749ebd2304aa012c5992d11a25d07b406bdbe5f79d371cb7a918ce501a19eb0" -dependencies = [ - "windows_aarch64_msvc", - "windows_i686_gnu", - "windows_i686_msvc", - "windows_x86_64_gnu", - "windows_x86_64_msvc", -] - -[[package]] -name = "windows_aarch64_msvc" -version = "0.30.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "29277a4435d642f775f63c7d1faeb927adba532886ce0287bd985bffb16b6bca" - -[[package]] -name = "windows_i686_gnu" -version = "0.30.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1145e1989da93956c68d1864f32fb97c8f561a8f89a5125f6a2b7ea75524e4b8" - -[[package]] -name = "windows_i686_msvc" -version = "0.30.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d4a09e3a0d4753b73019db171c1339cd4362c8c44baf1bcea336235e955954a6" - -[[package]] -name = "windows_x86_64_gnu" -version = "0.30.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8ca64fcb0220d58db4c119e050e7af03c69e6f4f415ef69ec1773d9aab422d5a" - -[[package]] -name = "windows_x86_64_msvc" -version = "0.30.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "08cabc9f0066848fef4bc6a1c1668e6efce38b661d2aeec75d18d8617eebb5f1" - -[[package]] -name = "winit" -version = "0.26.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9b43cc931d58b99461188607efd7acb2a093e65fc621f54cad78517a6063e73a" -dependencies = [ - "bitflags", - "cocoa", - "core-foundation 0.9.2", - "core-graphics 0.22.2", - "core-video-sys", - "dispatch", - "instant", - "lazy_static", - "libc", - "log", - "mio", - "ndk 0.5.0", - "ndk-glue 0.5.0", - "ndk-sys 0.2.2", - "objc", - "parking_lot", - "percent-encoding", - "raw-window-handle", - "smithay-client-toolkit", - "wasm-bindgen", - "wayland-client", - "wayland-protocols", - "web-sys", - "winapi", - "x11-dl", -] - -[[package]] -name = "winit_input_helper" -version = "0.11.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "72c8618b5c5e3f44a9d0a2ace15ad580cb7402d585507f4f9c74d07af7603909" -dependencies = [ - "winit", -] - -[[package]] -name = "x11-dl" -version = "2.19.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ea26926b4ce81a6f5d9d0f3a0bc401e5a37c6ae14a1bfaa8ff6099ca80038c59" -dependencies = [ - "lazy_static", - "libc", - "pkg-config", -] - -[[package]] -name = "xcursor" -version = "0.3.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "463705a63313cd4301184381c5e8042f0a7e9b4bb63653f216311d4ae74690b7" -dependencies = [ - "nom", -] - -[[package]] -name = "xml-rs" -version = "0.8.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d2d7d3948613f75c98fd9328cfdcc45acc4d360655289d0a7d4ec931392200a3" - -[[package]] -name = "zbus" -version = "2.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2ac8424f5aa1f239d2d7ecb32f9d5ffc6fcf5fb9298d2d524a7e7c8b258c3f80" -dependencies = [ - "async-broadcast", - "async-channel", - "async-executor", - "async-io", - "async-lock", - "async-recursion", - "async-task", - "async-trait", - "byteorder", - "derivative", - "enumflags2", - "event-listener", - "futures-core", - "futures-sink", - "futures-util", - "hex", - "nix 0.23.1", - "once_cell", - "ordered-stream", - "rand", - "serde", - "serde_repr", - "sha1", - "static_assertions", - "zbus_macros", - "zbus_names", - "zvariant", -] - -[[package]] -name = "zbus_macros" -version = "2.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3e03af45fc15e2c977161c5ffea56c43c41f425a963affd7074bf91b5bf5a8cf" -dependencies = [ - "proc-macro-crate", - "proc-macro2", - "quote", - "regex", - "syn", -] - -[[package]] -name = "zbus_names" -version = "2.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "45dfcdcf87b71dad505d30cc27b1b7b88a64b6d1c435648f48f9dbc1fdc4b7e1" -dependencies = [ - "serde", - "static_assertions", - "zvariant", -] - -[[package]] -name = "zvariant" -version = "3.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "49ea5dc38b2058fae6a5b79009388143dadce1e91c26a67f984a0fc0381c8033" -dependencies = [ - "byteorder", - "enumflags2", - "libc", - "serde", - "static_assertions", - "zvariant_derive", -] - -[[package]] -name = "zvariant_derive" -version = "3.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8c2cecc5a61c2a053f7f653a24cd15b3b0195d7f7ddb5042c837fb32e161fb7a" -dependencies = [ - "proc-macro-crate", - "proc-macro2", - "quote", - "syn", -] diff --git a/Cargo.toml b/Cargo.toml deleted file mode 100644 index 20c36fb..0000000 --- a/Cargo.toml +++ /dev/null @@ -1,21 +0,0 @@ -[package] -name = "fox32" -version = "0.5.0" -authors = ["ry"] -edition = "2021" -build = "build.rs" - -[dependencies] -chrono = "0.4" -image = "0.24" -log = "0.4" -pixels = "0.9.0" -rfd = "0.7.0" -ringbuf = "0.2" -rodio = "0.15.0" -winit = "0.26" -winit_input_helper = "0.11" - -[build-dependencies] -anyhow = "1.0" -vergen = { version = "7", default-features = false, features = ["build", "git"] } diff --git a/LICENSE b/LICENSE deleted file mode 100644 index e3189df..0000000 --- a/LICENSE +++ /dev/null @@ -1,21 +0,0 @@ -MIT License - -Copyright (c) 2022 ryfox/ry755 - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. \ No newline at end of file diff --git a/build.rs b/build.rs deleted file mode 100644 index 6ed42d8..0000000 --- a/build.rs +++ /dev/null @@ -1,9 +0,0 @@ -use anyhow::Result; -use vergen::{Config, ShaKind, vergen}; - -fn main() -> Result<()> { - let mut config = Config::default(); - *config.git_mut().sha_kind_mut() = ShaKind::Short; - *config.git_mut().skip_if_error_mut() = true; - vergen(config) -} diff --git a/docs/encoding.md b/docs/encoding.md deleted file mode 100644 index 78424be..0000000 --- a/docs/encoding.md +++ /dev/null @@ -1,51 +0,0 @@ -# Encoding -``` -size instr . cond dest src -xx xxxxxx 0 xxx xx xx <8,16,32 bits> <8,16,32 bits> -``` - - -# Size table -If the instruction doesn't allow variable sizes or a size was not specified, set the size bits to Word (0b10) -| | | -| :--: | -------------- | -| 0b00 | byte (8 bits) | -| 0b01 | half (16 bits) | -| 0b10 | word (32 bits) | - -# Instruction table -| 0x | -0 | -1 | -2 | -3 | -4 | -5 | -6 | -7 | -8 | -9 | -A | -B | -C | -D | -E | -F | -| :-: | ---- | ------------- | ------------- | ------------- | ------------- | ------------- | ------------- | -------------- | ---- | ----- | -------------- | --- | --- | --- | --- | --- | -| 0- | NOP | ADD[.8,16,32] | MUL[.8,16,32] | AND[.8,16,32] | SLA[.8,16,32] | SRA[.8,16,32] | BSE[.8,16,32] | CMP[.8,16,32] | JMP | RJMP | PUSH[.8,16,32] | IN | ISE | MSE | | | -| 1- | HALT | INC[.8,16,32] | | OR[.8,16,32] | | SRL[.8,16,32] | BCL[.8,16,32] | MOV[.8,16,32] | CALL | RCALL | POP[.8,16,32] | OUT | ICL | MCL | | | -| 2- | BRK | SUB[.8,16,32] | DIV[.8,16,32] | XOR[.8,16,32] | ROL[.8,16,32] | ROR[.8,16,32] | BTS[.8,16,32] | MOVZ[.8,16,32] | LOOP | RLOOP | RET | | INT | TLB | | | -| 3- | | DEC[.8,16,32] | REM[.8,16,32] | NOT[.8,16,32] | | | | | | RTA | RETI | | | FLP | | | - -# Condition table -| | | | -| :---: | ------ | --------------------------------------------- | -| 0b000 | --- | always | -| 0b001 | IFZ | zero | -| 0b010 | IFNZ | not zero | -| 0b011 | IFC | carry | -| 0b011 | IFLT | less than (equivalent to IFC) | -| 0b100 | IFNC | not carry | -| 0b100 | IFGTEQ | greater than or equal to (equivalent to IFNC) | -| 0b101 | IFGT | greater than | -| 0b110 | IFLTEQ | less than or equal to | - -# Destination table -| | | -| :--: | ------------------- | -| 0b00 | register | -| 0b01 | register (pointer) | -| 0b10 | (invalid) | -| 0b11 | immediate (pointer) | - -# Source table -| | | -| :--: | ------------------- | -| 0b00 | register | -| 0b01 | register (pointer) | -| 0b10 | immediate | -| 0b11 | immediate (pointer) | diff --git a/docs/logos/32.png b/docs/logos/32.png deleted file mode 100644 index 6d0c77bdee4e688f5494fc890b7da9053dccd7cd..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8698 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 Y13vo)a$ - - - - - - - - - - - - - - - - - - - - - - - - - - - 32 - diff --git a/docs/logos/fox32.png b/docs/logos/fox32.png deleted file mode 100644 index 17aaf8bfe06e56163c8f02a5126f2ccd41c517f5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 25845 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 diff --git a/docs/logos/fox32.svg b/docs/logos/fox32.svg deleted file mode 100644 index 134a450..0000000 --- a/docs/logos/fox32.svg +++ /dev/null @@ -1,162 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - 32 - fox - diff --git a/docs/screenshots/screenshot_fox32rom.png b/docs/screenshots/screenshot_fox32rom.png deleted file mode 100644 index d5683821554fb47d51ac2f6e1b3613eff046f572..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12490 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 diff --git a/docs/screenshots/screenshot_launcher.png b/docs/screenshots/screenshot_launcher.png deleted file mode 100644 index f7ff1182e06620eb2cc81a05fa7e7013846eb76d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 600398 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 z�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