This commit is contained in:
Cadey Ratio 2019-10-23 23:26:47 -04:00
parent c627aa6133
commit cee9a17f90
5 changed files with 33 additions and 1 deletions

7
Cargo.lock generated
View File

@ -33,6 +33,11 @@ name = "cast"
version = "0.2.2" version = "0.2.2"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
[[package]]
name = "compiler_builtins"
version = "0.1.19"
source = "git+https://github.com/rust-lang/compiler-builtins#462b73c1fe1f67a62223a3ccf830f02a2571c016"
[[package]] [[package]]
name = "cpuio" name = "cpuio"
version = "0.2.0" version = "0.2.0"
@ -174,6 +179,7 @@ name = "xe_os"
version = "0.1.0" version = "0.1.0"
dependencies = [ dependencies = [
"bootloader 0.8.2 (registry+https://github.com/rust-lang/crates.io-index)", "bootloader 0.8.2 (registry+https://github.com/rust-lang/crates.io-index)",
"compiler_builtins 0.1.19 (git+https://github.com/rust-lang/compiler-builtins)",
"lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)", "lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
"linked_list_allocator 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)", "linked_list_allocator 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)",
"pc-keyboard 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", "pc-keyboard 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
@ -192,6 +198,7 @@ dependencies = [
"checksum bitflags 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "cf1de2fe8c75bc145a2f577add951f8134889b4795d47466a54a5c846d691693" "checksum bitflags 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "cf1de2fe8c75bc145a2f577add951f8134889b4795d47466a54a5c846d691693"
"checksum bootloader 0.8.2 (registry+https://github.com/rust-lang/crates.io-index)" = "abfbe6cdea6367860818facc8e4a184f003cb83d7d004acaaf57baebf1949da0" "checksum bootloader 0.8.2 (registry+https://github.com/rust-lang/crates.io-index)" = "abfbe6cdea6367860818facc8e4a184f003cb83d7d004acaaf57baebf1949da0"
"checksum cast 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "926013f2860c46252efceabb19f4a6b308197505082c609025aa6706c011d427" "checksum cast 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "926013f2860c46252efceabb19f4a6b308197505082c609025aa6706c011d427"
"checksum compiler_builtins 0.1.19 (git+https://github.com/rust-lang/compiler-builtins)" = "<none>"
"checksum cpuio 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "22b8e308ccfc5acf3b82f79c0eac444cf6114cb2ac67a230ca6c177210068daa" "checksum cpuio 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "22b8e308ccfc5acf3b82f79c0eac444cf6114cb2ac67a230ca6c177210068daa"
"checksum lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646" "checksum lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646"
"checksum libm 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "7fc7aa29613bd6a620df431842069224d8bc9011086b1db4c0e0cd47fa03ec9a" "checksum libm 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "7fc7aa29613bd6a620df431842069224d8bc9011086b1db4c0e0cd47fa03ec9a"

View File

@ -16,6 +16,7 @@ pic8259_simple = "0.1.1"
pc-keyboard = "0.3.1" pc-keyboard = "0.3.1"
linked_list_allocator = "0.6.4" linked_list_allocator = "0.6.4"
wasmi = {version = "*", default-features=false, features = ["core"]} wasmi = {version = "*", default-features=false, features = ["core"]}
compiler_builtins = { git = "https://github.com/rust-lang/compiler-builtins" }
[patch.crates-io] [patch.crates-io]
wasmi = { path = "/Users/within/Code/xeos_forks/wasmi" } wasmi = { path = "/Users/within/Code/xeos_forks/wasmi" }

20
src/hack.rs Normal file
View File

@ -0,0 +1,20 @@
#[no_mangle]
extern "C" fn fmod(x: f64, _y: f64) -> f64 { x }
#[no_mangle]
extern "C" fn fmodf(x: f32, _y: f32) -> f32 { x }
#[no_mangle]
extern "C" fn fmin(x: f64, _y: f64) -> f64 { x }
#[no_mangle]
extern "C" fn fminf(x: f32, _y: f32) -> f32 { x }
#[no_mangle]
extern "C" fn fmax(x: f64, _y: f64) -> f64 { x }
#[no_mangle]
extern "C" fn fmaxf(x: f32, _y: f32) -> f32 { x }
#[no_mangle]
extern "C" fn __truncdfsf2(x: f64) -> f32 { 0.0 }

View File

@ -5,6 +5,7 @@
#![reexport_test_harness_main = "test_main"] #![reexport_test_harness_main = "test_main"]
extern crate alloc; extern crate alloc;
mod hack;
use bootloader::{entry_point, BootInfo}; use bootloader::{entry_point, BootInfo};
use core::panic::PanicInfo; use core::panic::PanicInfo;
@ -18,6 +19,7 @@ use wasmi::{
entry_point!(kernel_main); entry_point!(kernel_main);
fn kernel_main(boot_info: &'static BootInfo) -> ! { fn kernel_main(boot_info: &'static BootInfo) -> ! {
println!("booted");
xe_os::init(&boot_info); xe_os::init(&boot_info);
println!("Hello World{}", "!"); println!("Hello World{}", "!");

View File

@ -11,5 +11,7 @@
"linker": "rust-lld", "linker": "rust-lld",
"panic-strategy": "abort", "panic-strategy": "abort",
"disable-redzone": true, "disable-redzone": true,
"no-compiler-rt": true,
"no-default-libraries": true,
"features": "-mmx,-sse,+soft-float" "features": "-mmx,-sse,+soft-float"
} }