Halfix es un emulador portátil X86 escrito en C99. Le permite ejecutar sistemas operativos heredados en plataformas modernas.
Hice esto principalmente por diversión, y porque era una excelente manera de aprender sobre la arquitectura de PC x86. En un nivel más práctico, se puede usar para:
Necesitará node.js , un compilador compatible con C99, zlib y Emscripten (solo si se dirige al navegador). Asegúrese de que las bibliotecas requeridas estén en un lugar donde el compilador pueda encontrarlas. No se requiere configuración previa a la construcción.
El controlador de pantalla usa libsdl , pero si está en Windows, hay un puerto nativo que usa la API Win32 y no requiere SDL.
# Debug, native
node makefile.js
# Debug, Emscripten, asm.js
node makefile.js emscripten
# Debug, Emscripten, WebAssembly
node makefile.js emscripten --enable-wasm
# Release, native
node makefile.js release
# Release, Emscripten, asm.js
node makefile.js emscripten release
# Release, Emscripten, WebAssembly
node makefile.js emscripten --enable-wasm release
# Win32 API build (no SDL required)
node makefile.js win32
# Win32 API build, release
node makefile.js win32 release
# For more options and fine tuning
node makefile.js --help
# Chunk an image
node tools/imgsplit.js os.img
# Run in browser
http-serverConsulte el wiki del proyecto para obtener más detalles.
Botea una amplia gama de software del sistema operativo, incluidas todas las versiones de DOS, la mayoría de las versiones de Windows (excluyendo Windows 8), versiones más nuevas de OS/2 Warp (3 y 4.5), Reactos, algunas variedades de Linux (ISO Linux, Damn Small Linux, Red Star OS 2, Buildroot, Ubuntu), 9front, Next Step, varios hobbys y probablemente más.
Ver compatibilidad para más detalles.
¿Puedes ejecutar el emulador dentro del emulador?
Sí, pero no muy rápido.

MS-DOS

OS/2 Warp 4.5

Windows Vista

Windows 7

La misma imagen de disco de Windows 98 que en Halfix en Halfix captura de captura de pantalla en Firefox

CPU-Z en Windows XP

Windows 10

Ubuntu

Cree un directorio con todos los archivos que desea transferir y crear una imagen ISO.
mkisofs -o programs.iso -max-iso9660-filenames -iso-level 4 programs/
Ahora actualice el archivo de configuración de la siguiente manera:
# 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
Ahora inicie su sistema operativo y copie los archivos del CD-ROM al disco duro.
GNU General Public License Versión 3
El emulador de FPU utiliza una versión modificada de Berkeley Softfloat del emulador de Bochs.