Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/hobbyoss/opennask
nask clone assembly, it can boot tiny OS with Linux
https://github.com/hobbyoss/opennask
assembly bootloader hobby-os
Last synced: 2 months ago
JSON representation
nask clone assembly, it can boot tiny OS with Linux
- Host: GitHub
- URL: https://github.com/hobbyoss/opennask
- Owner: HobbyOSs
- License: gpl-3.0
- Created: 2016-05-10T21:40:24.000Z (over 8 years ago)
- Default Branch: master
- Last Pushed: 2023-09-21T14:19:38.000Z (over 1 year ago)
- Last Synced: 2024-04-17T05:36:10.006Z (9 months ago)
- Topics: assembly, bootloader, hobby-os
- Language: C
- Homepage: https://github.com/HobbyOSs/opennask/wiki/%E5%8B%95%E4%BD%9C%E3%83%81%E3%82%A7%E3%83%83%E3%82%AF
- Size: 3.54 MB
- Stars: 20
- Watchers: 1
- Forks: 3
- Open Issues: 2
-
Metadata Files:
- Readme: README
- Changelog: ChangeLog
- License: COPYING
Awesome Lists containing this project
README
# opennask [![Build Status](https://github.com/HobbyOSs/opennask/actions/workflows/cmake.yml/badge.svg)](https://github.com/HobbyOSs/opennask/actions/workflows/cmake.yml) [![License: GPL v3](https://img.shields.io/badge/License-GPL%20v3-blue.svg)](http://www.gnu.org/licenses/gpl-3.0)
An 80x86 assembler like MASM/NASM for the tiny OS# Build (debian)
* You need to install cmake, and ninja / make
```
// example
# apt-get install cmake ninja-build clang clang++ lld libc6-dev-i386 linux-headers-generic bison flex libfl-dev coreutils$ mkdir build
$ cd build# if you use Unix environment
$ cmake -G "Unix Makefiles" ..
$ make# if you can use Ninja
$ cmake -G Ninja ..
$ ninja# or, you may want to specify compile option
# use backward.cpp for debugging
$ CMAKE_OPT="-DWITH_BACKWARDS_CPP=ON" ./ninja_build.sh# clang is faster than gcc
$ CMAKE_OPT="-DCMAKE_C_COMPILER=clang -DCMAKE_CXX_COMPILER=clang++" ./ninja_build.sh
```# Build osask project files (debian)
* You need to install mtools to build these files
* You need to install QEMU (> 3.1) to test it'wine' should be very useful for you to debug
## Build day 03, harib00i img (debian)
* Target names are formatted like `XX_day_haribxxx_{action}`
* Actions are `sys`, `run`, `clean` and so on```
# apt-get install qemu$ cd opennask/build
$ ninja
$ ninja 03_day_harib00i_img
$ ninja 03_day_harib00i_run
```You can use `make` command instead of `ninja`
## Screenshots
| day3 harib00j | day4 harib01a |
|---------------|---------------|
|![harib00j](https://raw.githubusercontent.com/HobbyOSs/opennask/master/harib00j.png)|![harib01a](https://raw.githubusercontent.com/HobbyOSs/opennask/master/harib01a.png)|| day4 harib01d | day5 harib02a |
|---------------|---------------|
|![harib01d](https://raw.githubusercontent.com/HobbyOSs/opennask/master/harib01d.png)|![harib02a](https://raw.githubusercontent.com/HobbyOSs/opennask/master/harib02a.png)|| day5 harib02e | day5 harib02h |
|---------------|---------------|
|![harib02e](https://raw.githubusercontent.com/HobbyOSs/opennask/master/harib02e.png)|![harib02h](https://raw.githubusercontent.com/HobbyOSs/opennask/master/harib02h.png)|| day6 harib03e | day8 harib05d |
|---------------|---------------|
|![harib03e](https://raw.githubusercontent.com/HobbyOSs/opennask/master/harib03e.png)|![harib05d](https://raw.githubusercontent.com/HobbyOSs/opennask/master/harib05d.png)|| day20 harib17a |
|----------------|
|![harib17a.png](https://raw.githubusercontent.com/HobbyOSs/opennask/master/harib17a.png)|