This is the Neotron BIOS that lets you run the Neotron OS as a Linux, macOS or Windows application!
This BIOS uses pix-engine, so should run on any platform that pix-engine supports.
If you have a Mac, run:
brew install sdl2
brew install sdl2_mixer
brew install sdl2_image
export LIBRARY_PATH="$LIBRARY_PATH:$(brew --prefix)/lib"
You will need to re-run the export
command before you re-build the application.
Build and run this BIOS (and use it to boot Neotron OS) with...
~ $ git checkout https://github.com/neotron-compute/Neotron-Desktop-BIOS.git
~ $ cd Neotron-Desktop-BIOS
~/Neotron-Desktop-BIOS $ gunzip -c disk.img.gz > disk.img
~/Neotron-Desktop-BIOS $ RUST_LOG=debug cargo run -- --nvram=./nvram.dat --os=./libneotron_os.so --disk=./disk.img
In the OS run the shutdown
command to quit.
The file libneotron_os.so
is not supplied. You can build it with:
~ $ git checkout https://github.com/neotron-compute/neotron-os.git
~ $ cd neotron-os
~/neotron-os $ cargo build --release --lib
~/neotron-os $ ls ./target/release/*.so
./target/release/libneotron_os.so
~/neotron-os $ cp ./target/release/libneotron_os.so ~/Neotron-Desktop-BIOS
-
Install and bootstrap vcpkg
-
Install the SDL2 libraries with vcpkg:
C:\Users\user\Documents\vcpkg> ./vcpkg.exe install sdl2-ttf:x64-windows sdl2:x64-windows sdl2-mixer:x64-windows sdl2-gfx:x64-windows sdl2-ttf:x64-windows sdl2-image:x64-windows
-
Set your PATH, INCLUDE and LIB to include the directories in your vcpkg install folder:
C:\Users\user\Documents> set PATH=%PATH%;C:\Users\user\Documents\vcpkg\installed\x64-windows\bin C:\Users\user\Documents> set INCLUDE=%INCLUDE%;C:\Users\user\Documents\vcpkg\installed\x64-windows\include C:\Users\user\Documents> set LIB=%LIB%;C:\Users\user\Documents\vcpkg\installed\x64-windows\lib
-
Build as usual:
C:\Users\user\Documents\neotron-desktop-bios> cargo run --release -- --nvram=.\nvram.dat --os=.\neotron_os.dll
Sorry, if you want to use the disk image you'll need a Windows version of
gunzip
to unpack it. Git Bash might work.In the OS run the
shutdown
command to quit.The file
neotron_os.dll
is not supplied. You can build it with:C:\Users\user\Documents> git checkout https://github.com/neotron-compute/neotron-os.git C:\Users\user\Documents> cd neotron-os C:\Users\user\Documents\neotron-os> cargo build --release --lib C:\Users\user\Documents\neotron-os> copy .\target\release\neotron_os.dll ..\Neotron-Desktop-BIOS
- GUI window with pixel-perfect video rendering
- Block device support
- Keyboard support
- Power-off support
- Config file support
- TODO: Audio support
- TODO: UART support
Unreleased Changes (Source)
- None
v0.2.0 (Source)
- Added config get/set
- Updated to Neotron Common BIOS v0.12 to support Neotron OS v0.8
v0.1.0 (Source)
- First release
- Works with OS 0.5.0
- Fix colour palette to match Pico BIOS
Neotron-Desktop-BIOS Copyright (c) Jonathan 'theJPster' Pallant, 2023
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <https://www.gnu.org/licenses/>.
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you shall be licensed as above, without any additional terms or conditions.