Embed fox32rom into the main fox32 executable, prepare for 1st release
This commit is contained in:
parent
2d6730bb0b
commit
881b9c1620
7
.github/workflows/fox32-unstable-linux.yml
vendored
7
.github/workflows/fox32-unstable-linux.yml
vendored
|
@ -13,6 +13,13 @@ jobs:
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v2
|
- uses: actions/checkout@v2
|
||||||
|
|
||||||
|
- name: Download latest fox32rom artifact
|
||||||
|
uses: dawidd6/action-download-artifact@v2
|
||||||
|
with:
|
||||||
|
repo: fox32-arch/fox32rom
|
||||||
|
workflow: fox32rom-unstable.yml
|
||||||
|
workflow_conclusion: success
|
||||||
|
|
||||||
- name: Install Rust toolchain
|
- name: Install Rust toolchain
|
||||||
uses: actions-rs/toolchain@v1
|
uses: actions-rs/toolchain@v1
|
||||||
with:
|
with:
|
||||||
|
|
7
.github/workflows/fox32-unstable-windows.yml
vendored
7
.github/workflows/fox32-unstable-windows.yml
vendored
|
@ -13,6 +13,13 @@ jobs:
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v2
|
- uses: actions/checkout@v2
|
||||||
|
|
||||||
|
- name: Download latest fox32rom artifact
|
||||||
|
uses: dawidd6/action-download-artifact@v2
|
||||||
|
with:
|
||||||
|
repo: fox32-arch/fox32rom
|
||||||
|
workflow: fox32rom-unstable.yml
|
||||||
|
workflow_conclusion: success
|
||||||
|
|
||||||
- name: Install Rust toolchain
|
- name: Install Rust toolchain
|
||||||
uses: actions-rs/toolchain@v1
|
uses: actions-rs/toolchain@v1
|
||||||
with:
|
with:
|
||||||
|
|
10
README.md
10
README.md
|
@ -10,17 +10,17 @@
|
||||||
|
|
||||||
**Note: This software is still very much in an early stage, and is currently more focused towards developers rather than end-users.**
|
**Note: This software is still very much in an early stage, and is currently more focused towards developers rather than end-users.**
|
||||||
|
|
||||||
Prebuilt binaries are available on the [GitHub Actions page](https://github.com/fox32-arch/fox32/actions).
|
Stable releases are available on the [Releases page](https://github.com/fox32-arch/fox32/releases).
|
||||||
|
|
||||||
|
Prebuilt binaries of the latest commit are also available on the [GitHub Actions page](https://github.com/fox32-arch/fox32/actions).
|
||||||
|
|
||||||
### Building
|
### Building
|
||||||
|
|
||||||
Simply run `cargo build --release`. The resulting binary will be saved as `target/release/fox32`. You can also run `cargo run --release` if you want to run it directly.
|
Download the latest release of [**fox32rom**](https://github.com/fox32-arch/fox32rom/releases). Create a folder in the root of this repo called `fox32.rom`, and place the downloaded `fox32.rom` file into that directory. Then simply run `cargo build --release`. The resulting binary will be saved as `target/release/fox32`. You can also run `cargo run --release` if you want to run it directly.
|
||||||
|
|
||||||
### Usage
|
### Usage
|
||||||
|
|
||||||
**fox32** attempts to read its ROM (called **fox32rom**) from a file called `fox32.rom` in the current directory. If this file isn't found then it falls back to `../fox32rom/fox32.rom`, and if this file isn't found then it exits. **fox32rom** can be found [here](https://github.com/fox32-arch/fox32rom).
|
Passing files as arguments will mount those files as disks, in the order that the arguments were passed. The most common use case is passing the [**fox32os**](https://github.com/fox32-arch/fox32os) disk image as the first argument: `fox32 fox32os.img`
|
||||||
|
|
||||||
Passing files as arguments will mount those files as disks, in the order that the arguments were passed.
|
|
||||||
|
|
||||||
See [encoding.md](docs/encoding.md) for information about the instruction set.
|
See [encoding.md](docs/encoding.md) for information about the instruction set.
|
||||||
|
|
||||||
|
|
|
@ -58,9 +58,9 @@ pub struct Overlay {
|
||||||
|
|
||||||
fn read_rom() -> Vec<u8> {
|
fn read_rom() -> Vec<u8> {
|
||||||
read("fox32.rom").unwrap_or_else(|_| {
|
read("fox32.rom").unwrap_or_else(|_| {
|
||||||
println!("fox32.rom not found, attempting to open ../fox32rom/fox32.rom instead");
|
|
||||||
read("../fox32rom/fox32.rom").unwrap_or_else(|_| {
|
read("../fox32rom/fox32.rom").unwrap_or_else(|_| {
|
||||||
error("fox32.rom not found!");
|
println!("fox32.rom file not found, using embedded ROM");
|
||||||
|
include_bytes!("../fox32.rom/fox32.rom").to_vec()
|
||||||
})
|
})
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
@ -79,10 +79,6 @@ fn main() {
|
||||||
println!("{}", version_string);
|
println!("{}", version_string);
|
||||||
|
|
||||||
let args: Vec<String> = env::args().collect();
|
let args: Vec<String> = env::args().collect();
|
||||||
/*if args.len() != 2 {
|
|
||||||
println!("fox32\nUsage: {} <binary>", &args[0]);
|
|
||||||
exit(1);
|
|
||||||
}*/
|
|
||||||
|
|
||||||
let mut display = Display::new();
|
let mut display = Display::new();
|
||||||
let keyboard = Arc::new(Mutex::new(Keyboard::new()));
|
let keyboard = Arc::new(Mutex::new(Keyboard::new()));
|
||||||
|
|
Loading…
Reference in New Issue
Block a user