Here is an update to Bochs 2.3.5. Please try this out.
Index: Makefile =================================================================== RCS file: /cvs/ports/emulators/bochs/Makefile,v retrieving revision 1.40 diff -u -p -r1.40 Makefile --- Makefile 16 Sep 2007 00:45:13 -0000 1.40 +++ Makefile 18 Sep 2007 08:20:19 -0000 @@ -3,130 +3,72 @@ COMMENT= x86 machine simulator -DISTNAME= bochs-2.1.1 -PKGNAME= ${DISTNAME}p0 +DISTNAME= bochs-2.3.5 CATEGORIES= emulators MASTER_SITES= ${MASTER_SITE_SOURCEFORGE:=bochs/} HOMEPAGE= http://bochs.sourceforge.net/ -MAINTAINER= Todd T. Fries <[EMAIL PROTECTED]> - -# GPL +# LGPL PERMIT_PACKAGE_CDROM= Yes PERMIT_PACKAGE_FTP= Yes PERMIT_DISTFILES_CDROM= Yes PERMIT_DISTFILES_FTP= Yes -WANTLIB= ICE SM X11 c m stdc++ termlib z +WANTLIB= c m stdc++ termlib USE_LIBTOOL= Yes CONFIGURE_STYLE= gnu -CONFIGURE_ARGS= --enable-cdrom \ - --enable-fpu \ - --enable-ne2000 \ - --with-nogui \ - --with-term \ - --enable-all-optimizations +CONFIGURE_ARGS+= --enable-acpi \ + --enable-all-optimizations \ + --enable-apic \ + --enable-cpu-level="6" \ + --enable-fpu \ + --enable-ne2000 \ + --enable-pci \ + --enable-smp \ + --enable-vbe \ + --enable-x86-64 \ + --with-term -FLAVORS= debug i386 i486 i686 x86_64 smp smp_4 smp_8 \ - no_x11 no_mmx no_comp no_pci +FLAVORS= debug no_x11 FLAVOR?= .if ${FLAVOR:L:Mdebug} -CONFIGURE_ARGS+= --enable-debugger --enable-disasm --enable-x86-debugger -CONFIGURE_ARGS+= --enable-readline -WANTLIB+= curses readline +CONFIGURE_ARGS+= --enable-debugger \ + --enable-disasm \ + --enable-x86-debugger \ + --enable-port-e9-hack \ + --enable-readline \ +WANTLIB+= curses readline +CFLAGS+= -DMAGIC_BREAKPOINT .endif -.if !${FLAVOR:L:Mno_x11} +.if ${FLAVOR:L:Mno_x11} +CONFIGURE_ARGS+= --with-nogui +.else USE_X11= Yes CONFIGURE_ARGS+= --with-x11 +WANTLIB+= ICE SM X11 Xau Xdmcp .endif -.if ${FLAVOR:L:Mi386} -CONFIGURE_ARGS+= --enable-cpu-level="3" --disable-mmx -. if ${FLAVOR:L:Mi486} || ${FLAVOR:L:Mi686} || ${FLAVOR:L:Mx86_64} -ERRORS += "Fatal: cannot use i486, i686, or x86_64 flavors with i386" -. endif -.endif - -.if ${FLAVOR:L:Mi486} -CONFIGURE_ARGS+= --enable-cpu-level="4" --disable-mmx -. if ${FLAVOR:L:Mi386} || ${FLAVOR:L:Mi686} || ${FLAVOR:L:Mx86_64} -ERRORS += "Fatal: cannot use i386, i686, or x86_64 flavors with i486" -. endif -.endif - -.if ! ${FLAVOR:L:Mi386} && ! ${FLAVOR:L:Mi486} && ! ${FLAVOR:L:Mi686} -CONFIGURE_ARGS+= --enable-cpu-level="5" -.endif - -.if ${FLAVOR:L:Mi686} -CONFIGURE_ARGS+= --enable-cpu-level="6" -. if ${FLAVOR:L:Mi386} || ${FLAVOR:L:Mi486} -ERRORS += "Fatal: cannot use i386 or i486 flavors with i686" -. endif -.endif - -.if ${FLAVOR:L:Mx86_64} -CONFIGURE_ARGS+= --enable-x86-64 --enable-cpu-level="6" -.else -CONFIGURE_ARGS+= --disable-x86-64 -.endif - -.if !${FLAVOR:L:Mno_pci} -CONFIGURE_ARGS+= --enable-pci -.endif - -.if ${FLAVOR:L:Msmp} || ${FLAVOR:L:Msmp_4} || ${FLAVOR:L:Msmp_8} -. if ! ${FLAVOR:L:Mi686} -ERRORS += "Fatal: i686 flavor required for smp" -. endif -. if ${FLAVOR:L:Msmp_8} -CONFIGURE_ARGS+= --enable-processors=8 -. elif ${FLAVOR:L:Msmp_4} -CONFIGURE_ARGS+= --enable-processors=4 -. else -CONFIGURE_ARGS+= --enable-processors=2 -. endif -CONFIGURE_ARGS+= --enable-apic -.else -CONFIGURE_ARGS+= --disable-apic -.endif - -.if !${FLAVOR:L:Mno_mmx} -CONFIGURE_ARGS+= --enable-mmx -. if ${FLAVOR:L:Mi386} || ${FLAVOR:L:Mi486} -ERRORS += "Fatal: cannot use i386 or i486 with mmx" -. endif -.endif - -.if !${FLAVOR:L:Mno_comp} -CONFIGURE_ARGS+= --enable-compressed-hd -.endif - -pre-build: - @sed -e '[EMAIL PROTECTED]@${PREFIX}@' \ - < ${WRKSRC}/.bochsrc > ${WRKSRC}/bochsrc - NO_REGRESS= Yes -.for _ncpu in 2 4 8 -BIOS += BIOS-bochs-${_ncpu}-processors -.endfor BIOS += BIOS-bochs-latest BIOS += VGABIOS-elpin-2.40 VGABIOS-elpin-LICENSE BIOS += VGABIOS-lgpl-latest VGABIOS-lgpl-README +BIOS += VGABIOS-lgpl-latest-cirrus VGABIOS-lgpl-latest-cirrus-debug + +BINS+= bochs bxcommit bximage do-install: - ${INSTALL_DATA_DIR} ${PREFIX}/share/bochs/bios + ${INSTALL_DATA_DIR} ${PREFIX}/share/bochs ${INSTALL_DATA_DIR} ${PREFIX}/share/doc/bochs - cd ${WRKBUILD}; ${INSTALL_PROGRAM} bochs bximage ${PREFIX}/bin - cd ${WRKSRC}/bios; ${INSTALL_DATA} ${BIOS} ${PREFIX}/share/bochs/bios + cd ${WRKBUILD}; ${INSTALL_PROGRAM} ${BINS} ${PREFIX}/bin + cd ${WRKSRC}/bios; ${INSTALL_DATA} ${BIOS} ${PREFIX}/share/bochs ${INSTALL_MAN} ${WRKSRC}/doc/man/*.1 ${PREFIX}/man/man1 ${INSTALL_MAN} ${WRKSRC}/doc/man/*.5 ${PREFIX}/man/man5 ${INSTALL_DATA} ${WRKSRC}/docs-html/*.html ${PREFIX}/share/doc/bochs - ${INSTALL_DATA} ${WRKSRC}/bochsrc ${PREFIX}/share/bochs + ${INSTALL_DATA} ${WRKSRC}/.bochsrc ${PREFIX}/share/bochs/bochsrc .include <bsd.port.mk> Index: distinfo =================================================================== RCS file: /cvs/ports/emulators/bochs/distinfo,v retrieving revision 1.9 diff -u -p -r1.9 distinfo --- distinfo 5 Apr 2007 15:38:08 -0000 1.9 +++ distinfo 18 Sep 2007 08:03:03 -0000 @@ -1,5 +1,5 @@ -MD5 (bochs-2.1.1.tar.gz) = eyHvvitWzBXREJkyNCWbMw== -RMD160 (bochs-2.1.1.tar.gz) = 5D7G9YyLjyrw1AiWgqqagb1eaxo= -SHA1 (bochs-2.1.1.tar.gz) = TTq2YqT7Adhcx31/jdvR96GbCOc= -SHA256 (bochs-2.1.1.tar.gz) = 41CpOCQSbuiPVXUrCol/M/zraccU8iBHEL5fhsNlNDA= -SIZE (bochs-2.1.1.tar.gz) = 3653487 +MD5 (bochs-2.3.5.tar.gz) = LZssHhe066LUayCL4J30qQ== +RMD160 (bochs-2.3.5.tar.gz) = olS24EhX1weLa5gtRmo7qVuwce4= +SHA1 (bochs-2.3.5.tar.gz) = hUvDfuYhIStsc/XFwZSpe2tDafA= +SHA256 (bochs-2.3.5.tar.gz) = /2t9frlQ0FreL1/uALO9UFQtXSLcXH6lZKDQIAHg+xY= +SIZE (bochs-2.3.5.tar.gz) = 3916867 Index: patches/patch-_bochsrc =================================================================== RCS file: /cvs/ports/emulators/bochs/patches/patch-_bochsrc,v retrieving revision 1.1 diff -u -p -r1.1 patch-_bochsrc --- patches/patch-_bochsrc 11 Aug 2004 04:46:49 -0000 1.1 +++ patches/patch-_bochsrc 18 Sep 2007 08:15:33 -0000 @@ -1,43 +1,23 @@ $OpenBSD: patch-_bochsrc,v 1.1 2004/08/11 04:46:49 brad Exp $ ---- .bochsrc.orig Tue Aug 10 17:28:34 2004 -+++ .bochsrc Tue Aug 10 17:32:42 2004 -@@ -66,7 +66,7 @@ - # You can also use the environment variable $BXSHARE to specify the - # location of the BIOS. - #======================================================================= --romimage: file=$BXSHARE/BIOS-bochs-latest, address=0xf0000 -+romimage: file=!!PREFIX!!/share/bochs/bios/BIOS-bochs-latest, address=0xf0000 - #romimage: file=bios/BIOS-bochs-2-processors, address=0xf0000 - #romimage: file=bios/BIOS-bochs-4-processors, address=0xf0000 - #romimage: file=bios/rombios.bin, address=0xf0000 -@@ -107,7 +107,7 @@ megs: 32 - #======================================================================= - #vgaromimage: bios/VGABIOS-lgpl-latest - #vgaromimage: bios/VGABIOS-elpin-2.40 --vgaromimage: $BXSHARE/VGABIOS-elpin-2.40 -+vgaromimage: !!PREFIX!!/share/bochs/bios/VGABIOS-elpin-2.40 - - #======================================================================= - # FLOPPYA: -@@ -130,7 +130,7 @@ vgaromimage: $BXSHARE/VGABIOS-elpin-2.40 - # drive letters such as a: or b: as the path. Raw floppy access is not - # supported on Windows 95 and 98. +--- .bochsrc.orig Sat Sep 15 12:00:17 2007 ++++ .bochsrc Tue Sep 18 04:15:27 2007 +@@ -197,13 +197,13 @@ vga: extension=vbe + # such as a: or b: as the path. The parameter 'image' works with image files + # only. In that case the size must match one of the supported types. #======================================================================= -floppya: 1_44=/dev/fd0, status=inserted -+floppya: 1_44=/dev/rfd0a, status=inserted - #floppya: file=../1.44, status=inserted ++#floppya: 1_44=/dev/fd0, status=inserted + #floppya: image=../1.44, status=inserted #floppya: 1_44=/dev/fd0H1440, status=inserted #floppya: 1_2=../1_2, status=inserted -@@ -143,7 +143,7 @@ floppya: 1_44=/dev/fd0, status=inserted - # See FLOPPYA above for syntax - #======================================================================= - #floppyb: 1_44=b:, status=inserted --floppyb: 1_44=b.img, status=inserted -+#floppyb: 1_44=b.img, status=inserted + #floppya: 1_44=a:, status=inserted + #floppya: 1_44=a.img, status=inserted +-#floppya: 1_44=/dev/rfd0a, status=inserted ++floppya: 1_44=/dev/rfd0a, status=inserted #======================================================================= - # ATA0, ATA1, ATA2, ATA3 -@@ -309,8 +309,8 @@ floppy_bootsig_check: disabled=0 + # FLOPPYB: +@@ -358,8 +358,8 @@ floppy_bootsig_check: disabled=0 # log: ./bochs.out # log: /dev/tty #======================================================================= Index: patches/patch-gui_siminterface_h =================================================================== RCS file: patches/patch-gui_siminterface_h diff -N patches/patch-gui_siminterface_h --- patches/patch-gui_siminterface_h 22 Jan 2004 14:43:01 -0000 1.1 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,14 +0,0 @@ -$OpenBSD: patch-gui_siminterface_h,v 1.1 2004/01/22 14:43:01 todd Exp $ ---- gui/siminterface.h.orig 2004-01-05 23:18:01.000000000 +0100 -+++ gui/siminterface.h 2004-01-16 17:35:43.000000000 +0100 -@@ -1211,8 +1211,8 @@ enum { - #define BX_ATA_MODE_GROWING 7 - #define BX_ATA_MODE_VOLATILE 8 - #define BX_ATA_MODE_LAST 8 --//#define BX_ATA_MODE_Z_UNDOABLE 9 --//#define BX_ATA_MODE_Z_VOLATILE 10 -+#define BX_ATA_MODE_Z_UNDOABLE 9 -+#define BX_ATA_MODE_Z_VOLATILE 10 - //#define BX_ATA_MODE_SPLIT 6 - - #define BX_CLOCK_SYNC_NONE 0 Index: patches/patch-gui_term_cc =================================================================== RCS file: patches/patch-gui_term_cc diff -N patches/patch-gui_term_cc --- patches/patch-gui_term_cc 22 Jan 2004 14:43:01 -0000 1.4 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,24 +0,0 @@ -$OpenBSD: patch-gui_term_cc,v 1.4 2004/01/22 14:43:01 todd Exp $ ---- gui/term.cc.orig 2003-08-18 03:40:38.000000000 +0400 -+++ gui/term.cc 2004-01-13 22:39:33.000000000 +0300 -@@ -134,7 +134,8 @@ bx_term_gui_c::get_sighandler_mask () - #ifdef SIGTSTP - | (1<<SIGTSTP) - #endif -- | (1<<SIGTERM); -+ | (1<<SIGTERM) -+ | (1<<SIGUSR1); - } - - void -@@ -154,6 +155,10 @@ bx_term_gui_c::sighandler(int signo) - do_scan(BX_KEY_Z,0,1,0); - break; - #endif -+ case SIGUSR1: -+ LOG_THIS floppyA_status = !LOG_THIS floppyA_status; -+ DEV_floppy_set_media_status(0, LOG_THIS floppyA_status); -+ break; - default: - BX_INFO(("sig %d caught",signo)); - break; Index: patches/patch-iodev_eth_tap_cc =================================================================== RCS file: patches/patch-iodev_eth_tap_cc diff -N patches/patch-iodev_eth_tap_cc --- patches/patch-iodev_eth_tap_cc 22 Jan 2004 14:43:01 -0000 1.1 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,12 +0,0 @@ -$OpenBSD: patch-iodev_eth_tap_cc,v 1.1 2004/01/22 14:43:01 todd Exp $ ---- iodev/eth_tap.cc.orig 2004-01-13 22:40:00.000000000 +0300 -+++ iodev/eth_tap.cc 2004-01-13 22:40:30.000000000 +0300 -@@ -100,7 +100,7 @@ - #include <sys/socket.h> - #include <sys/uio.h> - #include <sys/wait.h> --#if defined(__FreeBSD__) || defined(__APPLE__) // Should be fixed for other *BSD -+#if defined(__FreeBSD__) || defined(__OpenBSD__) || defined(__APPLE__) // Should be fixed for other *BSD - #include <net/if.h> - #else - #include <asm/types.h> Index: patches/patch-main_cc =================================================================== RCS file: patches/patch-main_cc diff -N patches/patch-main_cc --- patches/patch-main_cc 22 Jan 2004 14:43:01 -0000 1.5 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,11 +0,0 @@ -$OpenBSD: patch-main_cc,v 1.5 2004/01/22 14:43:01 todd Exp $ ---- main.cc.orig 2004-01-06 01:18:01.000000000 +0300 -+++ main.cc 2004-01-13 22:39:33.000000000 +0300 -@@ -2501,6 +2501,7 @@ bx_init_hardware() - #if !BX_DEBUGGER - signal(SIGINT, bx_signal_handler); - #endif -+ signal(SIGUSR1, bx_signal_handler); - - #if BX_SHOW_IPS - #ifndef __MINGW32__ Index: pkg/DESCR =================================================================== RCS file: /cvs/ports/emulators/bochs/pkg/DESCR,v retrieving revision 1.14 diff -u -p -r1.14 DESCR --- pkg/DESCR 22 Jan 2004 14:55:15 -0000 1.14 +++ pkg/DESCR 18 Sep 2007 08:05:05 -0000 @@ -4,15 +4,5 @@ related AT hardware, and BIOS to run DOS other OS's, all on your workstation. Flavors: - debug - build with Bochs' internal debugging support - i386 - emulate 386 instruction set - i486 - emulate 486 instruction set - i686 - emulate 686 instruction set - x86_64 - emulate x86-64 instruction set - smp - build with support for SMP (2 CPUs) - smp_4 - build with support for SMP (4 CPUs) - smp_8 - build with support for SMP (8 CPUs) - no_comp - do not build with compressed hard drive support - no_mmx - do not build with mmx support - no_pci - build with support for i440FX PCI chipset - no_x11 - do not build with X support + debug - Build with Bochs' internal debugging support + no_x11 - Do not build with X support Index: pkg/PLIST =================================================================== RCS file: /cvs/ports/emulators/bochs/pkg/PLIST,v retrieving revision 1.16 diff -u -p -r1.16 PLIST --- pkg/PLIST 15 Sep 2004 00:42:04 -0000 1.16 +++ pkg/PLIST 18 Sep 2007 08:19:47 -0000 @@ -1,5 +1,6 @@ @comment $OpenBSD: PLIST,v 1.16 2004/09/15 00:42:04 espie Exp $ bin/bochs +bin/bxcommit bin/bximage @man man/man1/bochs-dlx.1 @man man/man1/bochs.1 @@ -7,23 +8,15 @@ bin/bximage @man man/man1/bximage.1 @man man/man5/bochsrc.5 share/bochs/ -share/bochs/bios/ -share/bochs/bios/BIOS-bochs-2-processors -share/bochs/bios/BIOS-bochs-4-processors -share/bochs/bios/BIOS-bochs-8-processors -share/bochs/bios/BIOS-bochs-latest -share/bochs/bios/VGABIOS-elpin-2.40 -share/bochs/bios/VGABIOS-elpin-LICENSE -share/bochs/bios/VGABIOS-lgpl-README -share/bochs/bios/VGABIOS-lgpl-latest +share/bochs/BIOS-bochs-latest +share/bochs/VGABIOS-elpin-2.40 +share/bochs/VGABIOS-elpin-LICENSE +share/bochs/VGABIOS-lgpl-README +share/bochs/VGABIOS-lgpl-latest +share/bochs/VGABIOS-lgpl-latest-cirrus +share/bochs/VGABIOS-lgpl-latest-cirrus-debug share/bochs/bochsrc share/doc/bochs/ -share/doc/bochs/3rdparty.license.html share/doc/bochs/Linux.html -share/doc/bochs/Minix.html -share/doc/bochs/changelog.html -share/doc/bochs/codingguidelines.html share/doc/bochs/cosimulation.html -share/doc/bochs/guestNT.html share/doc/bochs/index.html -share/doc/bochs/iodebug.html