Announcing VisopsysN 0.75N1

General discussion about Visopsys. We'll create more specific forums if the number of posts justifies that.
Post Reply
Posts: 30
Joined: Sun Sep 01, 2013 7:58 pm

Announcing VisopsysN 0.75N1

Post by nextvolume »

I'm annoucing the first release of my own distribution of Visopsys, think of it as my personal playground, where I try adding features or fix issues I find. It's not at the point where I really wanted to make a first release, but well, I thought it was better to do this release than making it linger on my hard drive, anyway.

From VisopsysN.txt:
VisopsysN is a distribution of the Visopsys operating system.
It is a release based on the official releases released at the official Visopsys web site, tracking them.
As such, this is not a fork of Visopsys.
VisopsysN adds eventual enhancements, features, bug fixes or programs that may or may not be added to official Visopsys releases.
Moreover, compatibility is not guaranteed between these releases and official ones.

This release is VisopsysN 0.75N1.
For more information, read the change log in the src/ directory.

Some things are not fully finished yet. in the utils/ directory
works but some checks for eventual errors have not implemented yet.
Using the old install scripts should work for CD and USB images but won't
for floppy images - as floppy images have their executables and libraries compressed.
Always use when generating floppy images.

Minimum requirements to run VisopsysN:
- IBM PC-compatible with at least an i586 processor (Pentium, K5, Cyrix, etc.)
- VGA compatible video card
- 16MB of RAM for graphics mode, 12MB of RAM for text mode

kernelInflate.c contains code from the zlib distribution (namely puff.c)
Version 0.75N1 03/12/2014

Overview: First VisopsysN release. Mouse emulation, VGA video driver,
compressed binaries and much better CDROM booting are the highlights.

- Support for zlib-compressed executable and library files
- Support for mouse emulation
- Several mouse APIs are exported that weren't in the past
- Lists of basic installation files and full installation files totally revampled:
a basic install now is much more complete and functional.
Due to this, a functional system can also be installed from floppy disk.
This was made possible by the support for zlib-compressed binaries.
- VGA 640x480 16-color video driver added.
This makes possible to use the graphics mode on most PC-compatibles supported.
- Added supporting logic to the OS loader in order to make the
VGA video driver work. Now instead of bailing out to text mode, the OS loader
sets a VGA mode. Text-mode operation can always be forced by placing a file
named "nograph" in the root directory of the filesystem.
- Placing a file named "forcevga" in the filesystem's root directory will force
operation in VGA mode, ignoring any possibly supported VESA 2.0 linear
framebuffer mode.
- Timeout when doing polling operations on IDE drives has been increased tenfold,
and ATAPI reset is no longer done on ATAPI devices. Due to this, success rate
when booting from CDROM is much higher now. Almost all drives should now be able
to boot Visopsys from CDROM, fixing this annoying problem that was plaguing
the operating system.
- APIC support is left disabled by default, as it needs more testing.
Some systems and emulators (notably QEMU) had problems running the kernel
if APIC support was enabled.
- Totally new pre-installed image creation tool, in Bash shell language,
that relies completely on portable userland tools, such as MTools.
It makes it usable on many operating systems and does not require root
privileges. It is named and in the utils directory.
- Removed Linux-specific hack in copy-boot
- strlen(), strnlen() do not have a predetermined size limit anymore, as it is
common in most C library implementations.
- Applied RTC driver patch that fixes some issues on QEMU and VirtualBox
(patch here: ... 2&start=12 )
Testing was made on several computers (dating from 1999 to 2006) - and yes, Visopsys in 16-colors! It looks quite pretty actually, better than I thought it would:

If you want to try this out, either boot on a system without VESA 2.0 linear framebuffer support, or make a file named 'forcevga' in the root directory when using the floppy or USB image.

How to use mouse emulation (MouseEmulation.txt in the source):
How to use mouse emulation
This document explains how to use the mouse emulation built in
VisopsysN. Mouse emulation is especially useful in situations where
you do not have access to a working mouse.

You can toggle mouse emulation by pressing Ctrl+Alt+Ins.
Once mouse emulation is enabled, Num-Lock must be turned off in order
to use the virtual mouse.

The virtual mouse is mapped to the keypad as follows:

8 -> Up
4 -> Left
6 -> Right
2 -> Down
/ -> Left mouse button
* -> Middle mouse button
- -> Right mouse button

When Num-Lock is enabled, the keypad behaves as it would usually when
it is enabled. Thus, it is important to remember to turn Num-Lock off.
Also, as I implemented support for compressed binaries and libraries, which are uncompressed on the fly when they are run, the floppy image is much feature-complete and can even be installed to disk.

Source code
Floppy disk image
USB image

Enjoy, and hope this helps the development of this operating system.

EDIT: ISO image link fixed.
Last edited by nextvolume on Fri Dec 12, 2014 10:25 pm, edited 2 times in total.
Visopsys@Unhaut -
User avatar
Posts: 566
Joined: Tue Nov 16, 2010 7:20 pm

Re: Announcing VisopsysN 0.75N1

Post by andymc »

Hey nextvolume! That's really great, mate. Well done (and this way you don't have to wait for me to fix all the things that annoy you!).

When I do a new minor release (0.75 to 0.76 for example), I always keep the changes as a set of patches. Would those be useful to you when I do a release? Helpful for keeping them in sync?

I do have a home-grown compression library that's nearly complete. I did most of it a while ago, then had to put it down to work on hardware support. I was planning to release it with 0.8. It would be cool if you could eventually use that instead of zlib (assuming mine turns out alright).

The mouse emulation seems like a good idea. Heads-up that touchscreen support is coming as well. It's finished, maybe needs a bit more testing, and it'll be available as of 0.8

Again, well done. :clap:
Posts: 30
Joined: Sun Sep 01, 2013 7:58 pm

Re: Announcing VisopsysN 0.75N1

Post by nextvolume »

Yes, a set of release-to-release patches would be helpful to me to keep it in sync.
This compression library you speak of sounds interesting, I look forward to it.
And as usual, thank you :)
Visopsys@Unhaut -
User avatar
Posts: 18
Joined: Fri Jul 11, 2014 6:18 pm

Re: Announcing VisopsysN 0.75N1

Post by ivan »

Hi nextvolume, the download link for the ISO it's wrong, link to the instead of

Corrected link:
Download CDROM ISO image

Now I going to download this version to see what's new. Thank's for your work.
User avatar
Posts: 566
Joined: Tue Nov 16, 2010 7:20 pm

Re: Announcing VisopsysN 0.75N1

Post by andymc »

Hi nextvolume,

The new version, 0.76, is released. As promised, here is a collection of individual patches to upgrade from 0.75.

They should be applied in numerical order, e.g. 01-xxxx_formatting.patch ... 62-xxxx_changelog.patch

(318.85 KiB) Downloaded 627 times
Posts: 30
Joined: Sun Sep 01, 2013 7:58 pm

Re: Announcing VisopsysN 0.75N1

Post by nextvolume »

Thank you. I have just applied the patchset.
Visopsys@Unhaut -
Post Reply