Skip to content

umjammer/vavi-nio-file-jnode

ย 
ย 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

6,253 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

Release Java CI CodeQL Java Parent

vavi-nio-file-jnode

logo

A Java nio fileSystem SPI based on jnode.

you can also mount all formats using fuse.

Status

fs list upload download copy move rm mkdir cache watch comment
nfs2
exfat โœ…
iso9660
jfat โœ…
ext2
hfs
ftpfs edtFTPj
smbfs jcifs-ng
ntfs
fat
hfsplus
apfs java-fs
xfs java-fs
emu โœ… vavi-nio-file-emu
apm partition
gpt partition
ibm (dmg:jfat(fat16)) โœ… partition
pc98 (jfat(fat16)) โœ… partition
raw (exfat) โœ… virtual partition
vdisk (nhd:pc98:fat16) โœ… virtual disk, partition
fuse (vdisk(nhd):pc98:fat16) โœ… fuse, virtualDisk, partition
vdisk (d88:raw:emu(n88)) โœ… virtualDisk, rawPartition, emu
vdisk (d88:pc98:fat16) โœ…
vdisk (fdi:pc98:fat12) โœ… virtual disk, partition

Install

Usage

JSR-203 & fuse

    URI uri = URI.create("jnode:file:/foo/bar.nhd");
    fs = FileSystems.newFileSystem(uri, Collections.emptyList());
    Fuse fuse = Fuse.getFuse().mount(fs, MOUNT_POINT, Collections.emptyList());

system properties

  • org.jnode.file.encoding ... filename encoding for Charset#forName(String), default is MS932
  • vavix.io.partition.validator.fat ... , validator for finding fat literal default is false
  • vavix.io.partition.validator.ipl ... , validator for finding ipl literal default is true
  • vavix.io.partition.validator.nec ... , validator for finding nec literal, default is true
  • vavix.io.fat.PC98BiosParameterBlock.validation ... true: do default validation, false: no validation, else: validation function name class#method, the method must return boolean
  • org.jnode.fs.jfat.ATBootSector.validation ... true: do default validation, false: no validation, else: validation function name class#method, the method must return boolean

for emulator user

it's possible to mount old school japanese computer pc-9801's virtual disk by fuse.
we can see nostalgic files autoexec.bat, command.com, mifes... etc.
time stamps are so old lol.

mount nhd

References

TODO

  • BlockDeviceAPI can only support [header] + solid image
    • api separation from device is in high esteem
    • however we need accessing disk data by logical sector No. but offset like BiosDeviceAPI for emu disks like d88 ... resolved by ad-hoc way

disk image ยฉ๏ธ Apple Inc. edited by Nano Banana

About

๐Ÿ—‚๏ธ Java filesystem SPI over jnode (ntfs, ext2, fat, pc98, etc...)

Topics

Resources

Stars

Watchers

Forks

Contributors

Languages

  • Java 100.0%