From 07209b6f1eeff7d5d35956da8ca877257324076e Mon Sep 17 00:00:00 2001 From: uebayasi Date: Wed, 25 Dec 2002 01:12:36 +0000 Subject: [PATCH] Update to Bochs 2.0. A very brief summary of changes: - 2x emulation speedup!!! - added plugin devices and guis. Now you can compile with many more options, and choose between them at runtime. - added emulation of AMD x86-64, MMX, SSE, SSE2 instructions. - add wxWindows port (a graphical configuration interface and display lib) and SVGAlib port (full screen display for Linux without X11). - improvements in many I/O devices: for example up to 8 hard disks/cdroms, TUN/TAP network interface, 360k floppies. - improved MacOSX/Carbon interface and updated MacOS9port. - GDB remote stub, allows symbolic debugging with Bochs simulation. - support for up to 32gig hard disk images. --- doc/CHANGES | 3 +- emulators/bochs/Makefile | 8 +++-- emulators/bochs/PLIST | 8 ++--- emulators/bochs/distinfo | 16 +++++----- emulators/bochs/patches/patch-aa | 53 ++++++++++++++++---------------- emulators/bochs/patches/patch-ab | 13 -------- emulators/bochs/patches/patch-ac | 14 --------- emulators/bochs/patches/patch-ad | 6 ++-- emulators/bochs/patches/patch-ae | 12 ++++---- emulators/bochs/patches/patch-af | 24 +++++++-------- 10 files changed, 65 insertions(+), 92 deletions(-) delete mode 100644 emulators/bochs/patches/patch-ab delete mode 100644 emulators/bochs/patches/patch-ac diff --git a/doc/CHANGES b/doc/CHANGES index 4788fe6bd452..e0681ace2f24 100644 --- a/doc/CHANGES +++ b/doc/CHANGES @@ -1,4 +1,4 @@ -$NetBSD: CHANGES,v 1.907 2002/12/25 00:45:38 wiz Exp $ +$NetBSD: CHANGES,v 1.908 2002/12/25 01:13:42 uebayasi Exp $ Changes to the packages collection and infrastructure in 2002: @@ -4252,3 +4252,4 @@ Changes to the packages collection and infrastructure in 2002: Updated Speex to 0.99.4 [wiz 2002-12-24] Updated pan to 0.13.2 (gtk2-pan) [wiz 2002-12-24] Updated dnstop to 20021224 [wiz 2002-12-25] + Updated bochs to 2.0 [uebayasi 2002-12-25] diff --git a/emulators/bochs/Makefile b/emulators/bochs/Makefile index d034ea690f00..5a984da67848 100644 --- a/emulators/bochs/Makefile +++ b/emulators/bochs/Makefile @@ -1,6 +1,6 @@ -# $NetBSD: Makefile,v 1.22 2002/07/12 03:39:15 itojun Exp $ +# $NetBSD: Makefile,v 1.23 2002/12/25 01:12:36 uebayasi Exp $ -DISTNAME= bochs-1.4.1 +DISTNAME= bochs-2.0 CATEGORIES= emulators MASTER_SITES= ${MASTER_SITE_SOURCEFORGE:=bochs/} @@ -36,10 +36,11 @@ do-install: ${INSTALL_DATA_DIR} ${BOCHS_BIOSDIR} ${INSTALL_DATA} ${WRKSRC}/bios/BIOS-bochs-2-processors ${BOCHS_BIOSDIR} ${INSTALL_DATA} ${WRKSRC}/bios/BIOS-bochs-4-processors ${BOCHS_BIOSDIR} + ${INSTALL_DATA} ${WRKSRC}/bios/BIOS-bochs-8-processors ${BOCHS_BIOSDIR} ${INSTALL_DATA} ${WRKSRC}/bios/BIOS-bochs-latest ${BOCHS_BIOSDIR} ${INSTALL_DATA} ${WRKSRC}/bios/VGABIOS-elpin-2.40 ${BOCHS_BIOSDIR} ${INSTALL_DATA} ${WRKSRC}/bios/VGABIOS-elpin-LICENSE ${BOCHS_BIOSDIR} - ${INSTALL_DATA} ${WRKSRC}/bios/VGABIOS-lgpl-0.3a ${BOCHS_BIOSDIR} + ${INSTALL_DATA} ${WRKSRC}/bios/VGABIOS-lgpl-latest ${BOCHS_BIOSDIR} ${INSTALL_DATA} ${WRKSRC}/bios/VGABIOS-lgpl-README ${BOCHS_BIOSDIR} ${INSTALL_DATA_DIR} ${BOCHS_DOCDIR} ${INSTALL_DATA} ${WRKSRC}/docs-html/00README ${BOCHS_DOCDIR} @@ -54,6 +55,7 @@ do-install: ${INSTALL_PROGRAM} ${WRKSRC}/bximage ${PREFIX}/bin ${INSTALL_DATA} ${WRKSRC}/bochsrc ${PREFIX}/share/bochs ${INSTALL_MAN} ${WRKSRC}/doc/man/*.1 ${PREFIX}/man/man1 + ${INSTALL_MAN} ${WRKSRC}/doc/man/*.5 ${PREFIX}/man/man5 ${X11BASE}/bin/mkfontdir ${PREFIX}/share/bochs/xfonts .include "../../mk/bsd.pkg.mk" diff --git a/emulators/bochs/PLIST b/emulators/bochs/PLIST index cc5b72007bd0..ab7c443e2c93 100644 --- a/emulators/bochs/PLIST +++ b/emulators/bochs/PLIST @@ -1,17 +1,18 @@ -@comment $NetBSD: PLIST,v 1.4 2002/05/13 14:47:41 wiz Exp $ +@comment $NetBSD: PLIST,v 1.5 2002/12/25 01:12:37 uebayasi Exp $ bin/bochs bin/bximage man/man1/bochs-dlx.1 man/man1/bochs.1 -man/man1/bochsrc.1 man/man1/bximage.1 +man/man5/bochsrc.5 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-0.3a share/bochs/bios/VGABIOS-lgpl-README +share/bochs/bios/VGABIOS-lgpl-latest share/bochs/bochsrc share/bochs/xfonts/fonts.dir share/bochs/xfonts/hercules.bdf @@ -30,7 +31,6 @@ share/doc/html/bochs/construction.html share/doc/html/bochs/cosimulation.html share/doc/html/bochs/cvs-status.html share/doc/html/bochs/cvs-structure.txt -share/doc/html/bochs/debugger.html share/doc/html/bochs/developers.html share/doc/html/bochs/faq.html share/doc/html/bochs/features.html diff --git a/emulators/bochs/distinfo b/emulators/bochs/distinfo index 59dbe416c077..911eeb66fd8d 100644 --- a/emulators/bochs/distinfo +++ b/emulators/bochs/distinfo @@ -1,11 +1,9 @@ -$NetBSD: distinfo,v 1.9 2002/07/12 03:39:15 itojun Exp $ +$NetBSD: distinfo,v 1.10 2002/12/25 01:12:37 uebayasi Exp $ -SHA1 (bochs-1.4.1.tar.gz) = 990924632c000ea15ea02ac9198de4c37938fb31 -Size (bochs-1.4.1.tar.gz) = 1395173 bytes -SHA1 (patch-aa) = 8c65fa102f606dc7d34611cfc5e5b7ab8542cfb6 -SHA1 (patch-ab) = 13ef85883d8f66862194f3ee3ffc577a3676fb3a -SHA1 (patch-ac) = 1536b5a110c05452aa423f1581cd09c8f4a486f4 -SHA1 (patch-ad) = b5d295145a1ba98adce99fd8b0aafdb0717cc400 -SHA1 (patch-ae) = 05b4d7663735594f427a236428d6cea9510c080e -SHA1 (patch-af) = b76fa463ade0d95e3aa9f1c4f8759e8361d51d57 +SHA1 (bochs-2.0.tar.gz) = 1a652f4e461cb2e7a3f9db3969802ba41eac1c50 +Size (bochs-2.0.tar.gz) = 3266323 bytes +SHA1 (patch-aa) = bbe026a0487dee7ac00cf75500d38b600f473c8f +SHA1 (patch-ad) = 3ce76c962920677c383ce2f61fb20565ddbd8777 +SHA1 (patch-ae) = 510238ed28e8aa79f4dd8780d54ac66f317a9380 +SHA1 (patch-af) = 931805d3523baab6cc16bd1052f059309aab75a7 SHA1 (patch-ag) = a22ca6f8abf0db67de714f53e3db94cb06e33db6 diff --git a/emulators/bochs/patches/patch-aa b/emulators/bochs/patches/patch-aa index bae4a3c5d8d8..5d0c8b492dcb 100644 --- a/emulators/bochs/patches/patch-aa +++ b/emulators/bochs/patches/patch-aa @@ -1,32 +1,32 @@ -$NetBSD: patch-aa,v 1.7 2002/05/14 13:52:52 fredb Exp $ +$NetBSD: patch-aa,v 1.8 2002/12/25 01:12:37 uebayasi Exp $ ---- .bochsrc.orig Thu Mar 28 01:49:52 2002 +--- .bochsrc.orig Sun Dec 22 04:30:48 2002 +++ .bochsrc -@@ -9,9 +9,9 @@ - # directory, named BIOS-bochs-yymmdd. Use the latest one in there. +@@ -66,9 +66,9 @@ + # directory, named BIOS-bochs-latest. #======================================================================= #romimage: bios/BIOS-bochs-970717a -romimage: file=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=XXXPREFIXXXX/share/bochs/bios/BIOS-bochs-latest, address=0xf0000 -+#romimage: file=XXXPREFIXXXX/share/bios/BIOS-bochs-2-processors, address=0xf0000 -+#romimage: file=XXXPREFIXXXX/share/bios/BIOS-bochs-4-processors, address=0xf0000 ++#romimage: file=XXXPREFIXXXX/share/bochs/bios/BIOS-bochs-2-processors, address=0xf0000 ++#romimage: file=XXXPREFIXXXX/share/bochs/bios/BIOS-bochs-4-processors, address=0xf0000 #romimage: file=bios/rombios.bin, address=0xf0000 #======================================================================= -@@ -32,8 +32,8 @@ +@@ -105,8 +105,8 @@ # VGAROMIMAGE # You now need to load a VGA ROM BIOS into C0000. #======================================================================= --#vgaromimage: bios/VGABIOS-lgpl-0.3a +-#vgaromimage: bios/VGABIOS-lgpl-latest -vgaromimage: bios/VGABIOS-elpin-2.40 -+#vgaromimage: XXXPREFIXXXX/share/bios/VGABIOS-lgpl-0.3a ++#vgaromimage: XXXPREFIXXXX/share/bochs/bios/VGABIOS-lgpl-latest +vgaromimage: XXXPREFIXXXX/share/bochs/bios/VGABIOS-elpin-2.40 #======================================================================= # FLOPPYA: -@@ -52,7 +52,7 @@ +@@ -126,7 +126,7 @@ # drive letters such as a: or b: as the path. Raw floppy access is not # supported on Windows 95 and 98. #======================================================================= @@ -35,32 +35,31 @@ $NetBSD: patch-aa,v 1.7 2002/05/14 13:52:52 fredb Exp $ #floppya: file=../1.44, status=inserted #floppya: 1_44=/dev/fd0H1440, status=inserted #floppya: 1_2=../1_2, status=inserted -@@ -84,7 +84,7 @@ - # diskc: file=112M.sample, cyl=900, heads=15, spt=17 - # diskc: file=483M.sample, cyl=1024, heads=15, spt=63 +@@ -206,7 +206,7 @@ + # ata3-master: type=disk, path=483M.sample, cylinders=1024, heads=15, spt=63 + # ata3-slave: type=cdrom, path=iso.sample, status=inserted #======================================================================= --diskc: file="30M.sample", cyl=615, heads=6, spt=17 -+#diskc: file="30M.sample", cyl=615, heads=6, spt=17 - - #======================================================================= - # DISKD: -@@ -108,7 +108,7 @@ +-ata0-master: type=disk, path="30M.sample", cylinders=615, heads=6, spt=17 ++#ata0-master: type=disk, path="30M.sample", cylinders=615, heads=6, spt=17 + #ata0-slave: type=cdrom, path=D:, status=inserted + #ata0-slave: type=cdrom, path=/dev/cdrom, status=inserted + #ata0-slave: type=cdrom, path="drive", status=inserted +@@ -263,7 +263,7 @@ # NOTE: diskd and cdromd must not be used together! #======================================================================= - #cdromd: dev=D:, status=inserted # for win32 + #cdromd: dev=D:, status=inserted -#cdromd: dev=/dev/cdrom, status=inserted +cdromd: dev=/dev/rcd0d, status=ejected + #cdromd: dev="drive", status=inserted #======================================================================= - # NEWHARDDRIVESUPPORT: enabled=[0|1] -@@ -125,8 +125,8 @@ +@@ -285,7 +285,8 @@ # boot: a - # boot: cdrom #======================================================================= --#boot: a --boot: c + #boot: floppy +-boot: disk ++#boot: disk +boot: a -+#boot: c #======================================================================= - # LOG: + # FLOPPY_BOOTSIG_CHECK: disabled=[0|1] diff --git a/emulators/bochs/patches/patch-ab b/emulators/bochs/patches/patch-ab deleted file mode 100644 index 1ec2881d194a..000000000000 --- a/emulators/bochs/patches/patch-ab +++ /dev/null @@ -1,13 +0,0 @@ -$NetBSD: patch-ab,v 1.3 2002/05/13 14:47:41 wiz Exp $ - ---- Makefile.in.orig Thu Mar 28 01:28:42 2002 -+++ Makefile.in -@@ -164,7 +164,7 @@ - @DISASM_VAR@ @INSTRUMENT_VAR@ @DYNAMIC_VAR@ $(BX_OBJS) \ - $(SIMX86_OBJS) \ - $(FPU_LIB) -- @LINK@ $(BX_OBJS) \ -+ @LINK@ $(LDFLAGS) $(BX_OBJS) \ - $(SIMX86_OBJS) \ - iodev/libiodev.a \ - cpu/libcpu.a memory/libmemory.a gui/libgui.a \ diff --git a/emulators/bochs/patches/patch-ac b/emulators/bochs/patches/patch-ac deleted file mode 100644 index 59f758e02bec..000000000000 --- a/emulators/bochs/patches/patch-ac +++ /dev/null @@ -1,14 +0,0 @@ -$NetBSD: patch-ac,v 1.5 2002/05/13 14:47:41 wiz Exp $ - ---- gui/Makefile.in.orig Sun May 12 23:47:32 2002 -+++ gui/Makefile.in -@@ -82,6 +82,9 @@ - beos.o: beos.@CPP_SUFFIX@ - $(CXX) -c $(CXXFLAGS) $(LOCAL_CXXFLAGS) $(BX_INCDIRS) $(BEOS_CFLAGS) $< - -+gui.o: gui.@CPP_SUFFIX@ -+ $(CXX) -c $(CXXFLAGS) $(LOCAL_CXXFLAGS) $(BX_INCDIRS) $(X_CFLAGS) $< -+ - x.o: x.@CPP_SUFFIX@ - $(CXX) -c $(CXXFLAGS) $(LOCAL_CXXFLAGS) $(BX_INCDIRS) $(X_CFLAGS) $< - diff --git a/emulators/bochs/patches/patch-ad b/emulators/bochs/patches/patch-ad index 1c91789f17a1..39f1aae2d34a 100644 --- a/emulators/bochs/patches/patch-ad +++ b/emulators/bochs/patches/patch-ad @@ -1,8 +1,8 @@ -$NetBSD: patch-ad,v 1.4 2002/07/12 03:39:16 itojun Exp $ +$NetBSD: patch-ad,v 1.5 2002/12/25 01:12:38 uebayasi Exp $ ---- iodev/cdrom.cc.orig Tue Mar 19 19:24:16 2002 +--- iodev/cdrom.cc.orig Tue Dec 24 12:50:46 2002 +++ iodev/cdrom.cc -@@ -357,6 +357,22 @@ +@@ -662,6 +662,22 @@ return(true); } diff --git a/emulators/bochs/patches/patch-ae b/emulators/bochs/patches/patch-ae index 13181a6fec48..6bc9f28d87e6 100644 --- a/emulators/bochs/patches/patch-ae +++ b/emulators/bochs/patches/patch-ae @@ -1,13 +1,13 @@ -$NetBSD: patch-ae,v 1.2 2001/12/13 18:03:53 fredb Exp $ +$NetBSD: patch-ae,v 1.3 2002/12/25 01:12:38 uebayasi Exp $ ---- debug/lexer.c.orig Wed Nov 28 12:40:02 2001 +--- debug/lexer.c.orig Tue Nov 19 18:25:20 2002 +++ debug/lexer.c -@@ -1368,7 +1368,7 @@ - case 109: +@@ -1379,7 +1379,7 @@ + case 110: YY_RULE_SETUP - #line 129 "lexer.l" + #line 133 "../../debug/lexer.l" -{ bxlval.ulval = strtoull(bxtext, NULL, 10); return(BX_TOKEN_LONG_NUMERIC); } +{ bxlval.ulval = strtouq(bxtext, NULL, 10); return(BX_TOKEN_LONG_NUMERIC); } YY_BREAK - case 110: + case 111: YY_RULE_SETUP diff --git a/emulators/bochs/patches/patch-af b/emulators/bochs/patches/patch-af index 8a323f3a51bb..7ed841ccf97c 100644 --- a/emulators/bochs/patches/patch-af +++ b/emulators/bochs/patches/patch-af @@ -1,15 +1,15 @@ -$NetBSD: patch-af,v 1.3 2002/05/14 13:52:52 fredb Exp $ +$NetBSD: patch-af,v 1.4 2002/12/25 01:12:38 uebayasi Exp $ ---- iodev/harddrv.cc.orig Sun Mar 24 19:47:14 2002 +--- iodev/harddrv.cc.orig Sun Dec 15 06:29:42 2002 +++ iodev/harddrv.cc -@@ -1000,8 +1000,8 @@ - - if (!LoEj && !Start) { // stop the disc - BX_PANIC(("Stop disc not implemented")); +@@ -1323,8 +1323,8 @@ + BX_ERROR(("FIXME: Stop disc not implemented")); + atapi_cmd_nop(channel); + raise_interrupt(channel); - } else if (!LoEj && Start) { // start the disc and read the TOC -- BX_PANIC(("Start disc not implemented")); -+ } else if (!LoEj && Start) { // Start (spin up) the disc. -+ BX_HD_THIS s[1].cdrom.cd->start_cdrom(); - } else if (LoEj && !Start) { // Eject the disc - atapi_cmd_nop(); - if (BX_HD_THIS s[1].cdrom.ready) { +- // BX_PANIC(("Start disc not implemented")); ++ } else if (!LoEj && Start) { // start (spin up) the disc ++ BX_SELECTED_DRIVE(channel).cdrom.cd->start_cdrom(); + BX_ERROR(("FIXME: ATAPI start disc not reading TOC")); + atapi_cmd_nop(channel); + raise_interrupt(channel);