summaryrefslogtreecommitdiffstats
path: root/system/virtualxt/README
blob: afffbd9b001c7962f583a3a42a8de6a31815ab77 (plain)
VirtualXT is an IBM PC/XT (8088/V20) emulator that runs on modern
hardware and operating systems. It is designed to be simple and
lightweight yet still capable enough to run a large library of old
applications and games.

VirtualXT uses a module system that loads dynamic plugins, which are
files that end with an extension of .vxt. By default, all modules will
be built. Modules may be excluded by using the EXCLUDE_MODULES variable.

For example:

EXCLUDE_MODULES=network ./virtualxt.SlackBuild

More than one module can be excluded as long as each module is separated
by a comma.

For example:

EXCLUDE_MODULES=serial,network ./virtualxt.SlackBuild

The following modules cannot be excluded:

adlib
arstech_isa
bios
cga
ch36x_isa
chipset
covox
ctrl
disk
ems
joystick
mouse
rifs
rtc
uart

The virtualxt binary is built with an SDL2 frontend and meant to be run
by a non-root user. The user will need to be added to the "users"
group because the binary will open the provided boot images in read-
write mode, and "users" has write access to those images.

For example:

usermod -aG users bob

Either the LD_LIBRARY_PATH or LD_PRELOAD variable must be configured
to point to /usr/lib64/virtualxt. For bash users, this can be
accomplished as follows:

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/lib64/virtualxt
echo "export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/lib64/virtualxt" \
 >> ~/.bashrc

...or...

LD_PRELOAD=/usr/lib64/virtualxt/libvxt.so virtualxt

The path to the boot image must be specified when running virtualxt.

For example:

virtualxt -a /usr/share/virtualxt/boot/freedos.img

If after upgrading from a previous version of virtualxt the console 
fails to start, then you may need to generate a new config file as 
follows:

virtualxt --clean