Skip to content

ergo720/halfix

 
 

Repository files navigation

Halfix x86 emulator

Halfix is a portable x86 emulator originally written in C99, but this fork was ported to C++20. It allows you to run legacy operating systems on modern platforms.

Why?

This fork is used to test lib86cpu, a cpu dynamic recompiler library.

Building

This fork is focused only on Windows compatibility for now. You will need a C++20 compatible compiler, zlib, cmake and Visual Studio 2022. Only 64 bit builds are supported.

  1. cd to the directory of halfix
  2. mkdir build && cd build
  3. cmake .. -G "Visual Studio 17 2022" -A x64 -Thost=x64
  4. Build the resulting solution file halfix.sln with Visual Studio

System Specifications

Compatibility

Currently, when used with the Boch's BIOS and the LGPL'ed VGA BIOS, it can boot the Windows XP installation CD up to the point where Windows tries to set up the FPU.

Screenshots

Windows XP

Transferring Files

Create a directory with all the files you want to transfer and create an ISO image.

mkisofs -o programs.iso -max-iso9660-filenames -iso-level 4 programs/

Now update the configuration file as follows:

# Note: it does not hae to be ata0-slave. 
# I have not tested it with anything but ata0-slave.
[ata0-slave]
inserted=1
type=cd
file=/tmp/programs.iso
driver=sync

Now boot up your operating system and copy the files from the CD-ROM to the hard drive.

License

GNU General Public License version 3

Similar Projects

Releases

No releases published

Packages

No packages published

Languages

  • C 65.2%
  • C++ 26.9%
  • JavaScript 6.3%
  • HTML 1.5%
  • CMake 0.1%