Skip to content

Commit 6fd635b

Browse files
authored
Merge pull request #604 from ChinYikMing/update-readme
Update README
2 parents a09ca99 + d0f0394 commit 6fd635b

File tree

1 file changed

+11
-4
lines changed

1 file changed

+11
-4
lines changed

README.md

Lines changed: 11 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,7 @@ Features:
3030
* Newlib-compatible system-call layer for standalone programs
3131
* Minimal system emulation capable of booting an RV32 Linux kernel and running user-space binaries
3232
* Experimental SDL-based display/event/audio system calls for running video games
33+
* WebAssembly build for user-mode and system emulation with SDL graphics and audio in modern browsers
3334
* Remote debugging through the GDB Remote Serial Protocol
3435
* Tiered JIT compilation for performance boost while maintaining a small footprint
3536

@@ -104,10 +105,16 @@ Mount the virtual block device and create a test file after booting, note that r
104105
```
105106
Reboot and re-mount the virtual block device, the written file should remain existing.
106107
108+
#### Customize bootargs
109+
Build and run with customized bootargs to boot the guestOS. Otherwise, the default bootargs defined in `src/devices/minimal.dts` will be used.
110+
```shell
111+
$ build/rv32emu -k <kernel_img_path> -i <rootfs_img_path> [-b <bootargs>]
112+
```
113+
107114
#### Build Linux image
108115
An automated build script is provided to compile the RISC-V cross-compiler, Busybox, and Linux kernel from source. Please note that it only supports the Linux host environment. It can be found at tools/build-linux-image.sh.
109116
```shell
110-
$ make build-linux-img
117+
$ make build-linux-image
111118
```
112119
113120
### Verify with prebuilt RISC-V ELF files
@@ -378,7 +385,7 @@ $ source ~/emsdk/emsdk_env.sh
378385
Change the Emscripten SDK environment path if necessary.
379386
380387
At this point, you can build and start a web server service to serve WebAssembly by running:
381-
- user space emulation:
388+
- user-mode emulation:
382389
```shell
383390
$ make CC=emcc start-web -j8
384391
```
@@ -389,11 +396,11 @@ $ make CC=emcc start-web ENABLE_SYSTEM=1 INITRD_SIZE=32 -j8
389396
You would see the server's IP:PORT in your terminal. Copy and paste it to the browsers and
390397
you just access the index page of `rv32emu`.
391398
392-
You would see a dropdown menu which you can use to select the ELF executable for user space emulation, select one and
399+
You would see a dropdown menu which you can use to select the ELF executable for user-mode emulation, select one and
393400
click the 'Run' button to run it. For system emulation, click the 'Run Linux' button to boot Linux.
394401
395402
Alternatively, you may want to view a hosted `rv32emu` since building takes some time.
396-
- [user space emulation demo page](https://sysprog21.github.io/rv32emu-demo/)
403+
- [user-mode emulation demo page](https://sysprog21.github.io/rv32emu-demo/)
397404
- [system emulation demo page](https://sysprog21.github.io/rv32emu-demo/system)
398405
399406
Both pages can be easily switched using the navigation button.

0 commit comments

Comments
 (0)