CrackLewis / lewis-fswizard

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

FsWizard

Intro

A Unix V6++ diskfile program.

Expected features:

  • Unix V6++ disk formatting and operations.
  • Unix V6++ command line interface.
  • Transforming between Unix V6++ and other disk formats (e.g. VHDx).

Building

This project is built using MinGW GCC 12.2.0 under Windows 11. Other versions of GCC or Clang compilers might work, but the language support for C++17 is mandatory.

Other compilers currently known to support the project:

  • TDM-GCC 9.2.0

Using CMake

$ mkdir build
$ cd build -G "MinGW Makefiles"
$ cmake ..
$ make

Using Makefile

$ mkdir build
$ make all

How to use

To create a Unix V6++ image, the bootloader file, kernel file and all diskfiles must be prepared. This is normally done by building the Unix V6++ system and copying these generated files to a reachable local path.

Suppose your files are in the directory ./etc, and the makeimage program is in the directory ./build:

fswizard:
  build:
    makeimage.exe:
  etc:
    boot.bin: "bootloader file"
    kernel.bin: "kernel file"
    rootfs: "root file system"
      bin:
        ...:
      demos:
        ...:
      Shell.exe:

Then run the following commands and the generated image shall be at ./etc/c.img:

$ cd build
$ makeimage.exe -image ../etc/c.img -kernel ../etc/kernel.bin -boot ../etc/boot.bin -rootfs ../etc/rootfs

Once a disk image is generated, you can operate the image using the file system client program:

$ v6pp-fs-cli.exe -image ../etc/c.img

The client program not only supports a variety of basic Unix file utilities, but it also allows you to read disk data by using testblock <block_id>.

Courtesy

Disclaimer

The source code of this repository can only be used for personal learning purposes. The source code and its creators are not responsible for the use of the source code. Any form of improper use is at your own peril.

For more details view the LICENSE file.

About

License:MIT License


Languages

Language:C++ 97.7%Language:CMake 1.2%Language:Makefile 0.8%Language:Assembly 0.2%