Commit graph

68 commits

Author SHA1 Message Date
wiz
fef09a0f3e Update to 2.3.7, based on diffs by Juan Romero Pardines.
+ More optimizations in CPU code - Bochs 2.3.7 is more than 2x faster
  than Bochs 2.3.5 build !
- Implemented LBA48 support in BIOS
- Added memory access tracing for Bochs internal debugger
- Implemented Intel(R) XSAVE/XRSTOR and AES instruction set extensions
- Many fixes in CPU emulation and internal debugger
  - MenuetOS64 floppy images booting perfect again !
- updated LGPL'd VGABIOS to version 0.6b

XXX: Darwin PLIST probably wrong, someone please fix and integrate
better.
2008-12-06 12:00:56 +00:00
joerg
ba171a91fa Add DESTDIR support. 2008-06-12 02:14:13 +00:00
jmmv
141c060e62 Fix Mac OS X and debug-enabled builds. 2008-01-18 10:21:01 +00:00
xtraeme
cc24a12873 Update to 2.3.6:
+ More than 25% emulation speedup vs Bochs 2.3.5 release!
+ Up to 40% speedup vs Bochs 2.3.5 release with trace cache optimization!
- Lots of bugfixes in CPU emulation
- Bochs benchmarking support
- Added emulation of Intel SSE4.2 instruction set

and others, please review the CHANGES file.
2008-01-03 21:03:45 +00:00
hira
8951aa3012 Back out previous. Pointed out by uebayasi@ and martti@. 2007-09-25 10:03:52 +00:00
hira
8b4409d328 mv -> ${MV}. 2007-09-25 08:49:03 +00:00
joerg
ece30012c5 Modular Xorg support. 2007-02-09 14:58:30 +00:00
jmmv
eab243665e Update to 2.3 from 2.2.1. Tested under NetBSD-current and Mac OS X 10.4.
Changes in 2.3 (August 27, 2006):

Brief summary :
- limited save/restore support added (config + log options, hardware state)
- configuration parameter handling rewritten to a parameter tree
- lots of cpu and internal debugger fixes
- hard disk geometry autodetection now supported by most of the image types
- hard disk emulation now supports ATA-3 (multiple sector transfers)
- VBE memory size increased to 8MB and several VGA/VBE fixes
- updated LGPL'd VGABIOS to version 0.6a

Detailed change log :

- CPU and internal debugger fixes
  - Fixed bug in FSTENV instruction (Stanislav Shwartsman)
  - Recognize #XF exception (19) when SSE is enabled
  - Fixed bug in PSRAW/PSRAD MMX and SSE instructions
  - Save and restore RIP/RSP only for FAULT-type exceptions, not for traps
  - Correctly decode, disassemble and execute multi-byte NOP '0F F1' opcode
  - Raise A20 line after system reset (Stanislav Shwartsman)
  - Implemented SMI and NMI delivery (APIC) and handling in CPU (Stanislav)
  - Experimental implementation of System Management Mode (Stanislav)
  - Added emulation of SSE4 instructions (Stanislav Shwarstman)
  - Save and restore FPU opcode, FIP and FDP in FXSAVE/FRSTOR instructions
  - Fixed bug in MOVD_EdVd opcode (always generated #UD exception)
  - Fixed critical issue, Bochs was not supporting > 16 bit LDT.LIMIT values
  - Many fixes in Bochs debugger and disassembler

- CPU x86-64 fixes
  - Fixed SYSRET instruction implementation
  - Fixed bug in CALL/JMP far through 64-bit callgate in x86-64 mode
  - Correctly decode, disassemble and execute 'XCHG R8, rAX' instruction
  - Correctly decode and execute 'BSWAP R8-R15' instructions
  - Fixed ENTER and LEAVE instructions in x86-64 mode (Stanislav)
  - Fixed CR4 exception condition (No Name)
  - Fixed x86 debugger to support x86-64 mode (Stanislav)

- APIC and SMP
  - Support for Dual Core and Intel(R) HyperThreading Technology. Now you
    could choose amount of cores per processor and amount of HT threads per
    core from .bochsrc for SMP simulation (Stanislav Shwartsman)
  - Allow to control SMP quantum value through .bochsrc CPU
    option parameter. Previous Bochs versions used hardcoded quantum=5
    value.
  - Fixed interrupt priority bug in service_local_apic()
  - Fixed again reading of APIC IRR/ISR/TMR registers. Finally it becomes
    fully correct :-)

- Configure and compile
  - Moved configure time --enable-reset-on-triple-fault option to runtime,
    the 'cpu' option in .bochsrc is extended and the old configure option
    is deprecated (Stanislav Shwartsman)
  - Removed --enable-pni configure option, to compile with PNI use
    --enable-sse=3 instead (Stanislav Shwartsman)
  - enable SEP (SYSENTER/SYSEXIT) support by default for Penitum II+
    processor emulation (i.e. if cpu-level >= 6 and MMX is enabled)

- general
  - Limited save/restore support added. The state of CPU, memory and all
    devices can be saved now (state of harddisk images not handled yet).
  - Fixed several memory leaks

- configuration interface
  - Configuration parameter handling rewritten to a parameter tree. This is
    required for dynamic menus/dialogs, user-defined options and save/restore.
  - Support for user-defined bochsrc options added
  - help support at the parameter prompt in textconfig added

- I/O devices (Volker)
  - Floppy
    - partial sector transfers fixed
  - Hard drive / cdrom
    - several fixes to the IDE register behaviour (e.g. in case of a channel
      with only one drive connected)
    - fixed data alignment of 'growing' hard drive images (sharing images
      between Windows and Linux now possible)
    - disk geometry autodetection now supported by most of the image types
      (unsupported: external, dll and compressed modes)
    - multi sector read/write commands implemented
    - hard disk now reporting ATA-3 supported
    - ATAPI 'inquiry' now returns a unique device name
  - Keyboard
    - reset sent to keyboard has no effect on the 8042 (scancode translation)
  - PCI
    - forward PIRQ register changes to the I/O APIC (if present)
    - attempt to fix and update the emulation part of 'pcidev' (untested)
  - VGA
    - VBE memory size increased to 8MB and several VBE fixes
    - VGA memory read access fixed (bit plane access and read mode)
    - VGA memory is now a part of the common video memory

- System BIOS (Volker)
  - enable interrupts before executing INT 19h
  - fixed ATA device detection in case of one drive only connected to controller
  - improved INT 15h function AX=E820h
  - real mode PCI BIOS now returns IRQ routing information (function 0Eh)
  - keyboard LED flags handling fixed and improved
  - fixed handling of extended keys in INT 09h
  - Updated LGPL'd VGABIOS to version 0.6a

- SF patches applied
 [1340111] fixes and updates to usb support by Ben Lunt
 [1539420] minor addition to pci_usb code by Ben Lunt
 [1455958] call/jmp through call gate in 64-bit mode
 [1433107] PATCH: fix compile with wxwindows 2.6 (unicode / utf8) by jwrdegoede
 [1386671] Combined dual core and hyper-threading patch

- these S.F. bugs were closed
  [833927] TTD: System Error TNT.40025: Unexpected processor exception
  [789230] Sending code that shows lock up when setting idt
  [909670] Problems with Symantec Ghost
 [1540241] include missing in osdep.cc
 [1539373] Incorrect disasm for "mov moffset,bla" in 64bit
 [1538419] incorrect disassembly of [rip+disp] with rex.b
 [1535432] shift+cursor key maps to a digit
 [1504891] Knoopix 5.0.1 error
 [1424355] bochs-2.2.6 ata failure in windoze 98se
 [1533979] wrong disassembly of IN instruction
  [620059] paste won't stop
 [1164904] status bar doesn't show num/caps/scroll lock status
 [1061720] ATA Support level for HD
 [1522196] Broken CHANGES link in main page
 [1438415] crash if screen scrolled downwards
  [778441] Shouldn't interrupts be enable after BIOS?
 [1514949] I got a problem with the 8253 timer
 [1513544] disasm of 0xec (in AL,DX) returns ilen of 2 instead of 1
 [1508947] APIC interrupt priority checking and interrupt delivery
  [766286] Debugger halts after any GPF exception
  [639143] va_list is not a pointer on linuxppc
 [1501815] debugger examines memory over page-boundary wrong
 [1503978] movsb/w/d doesn't work when direction is stored
 [1499405] WinPCap has changed URL hosting
 [1498519] APIC IRR bits not set while interrupts disabled
 [1498193] Bochs segfaults on LTR instruction
  [787140] Guest2HostTLB optimization bug
 [1492070] instrument stop
 [1487772] No SEP on P4
 [1488335] Growing hard disk images severe interoperability errors!
 [1076312] Shadow RAM and TLB
 [1282249] The real i440FX chipset Award bios hangs
 [1479763] mistake "mov ax,[es:di]" for "mov ax,[ds:di]"
 [1453575] Misconfigured floppy DMA transfers do not terminate.
 [1460068] Incorrect handling for the Options Menu Item
  [910203] bochs-2.1.1 wx.lo failed
 [1438654] PANIC when trying to run install-amd64-minimal-2005.0.iso
 [1458320] compile hdimage.h fails
 [1455880] bochs-2.2.6,2: make error on FreeBSD
  [696890] Network wouldn't run under W2k hosting MSDOS
  [673391] SMP timer problems
 [1291059] wxWindows GUI on non-windows/configure issue
 [1356450] bochs 2.2.1 errors-omittions
 [1178017] Win98 guest cannot receive network packets from host
 [1076315] a20_mask after restarting
 [1436323] real hw does not panic when bad Ib in CMPSS_VssWssIb
 [1435269] cdrom_amigaos is not compilable
 [1433314] disasm issues
 [1170614] relative jumps/calls wrong in debugger
  [758121] user might get confused when interrupt handler invoked
 [1170622] You cannot toggle OFF "show" flags
 [1406387] JMP instruction should display absolute address
 [1428813] PANIC: ROM address space out of range
 [1426288] DR-DOSs EMM386 problem
 [1412036] Bochs cannot recognize PCI NIC correctly
  [435115] dbg: modebp broken and no docs
 [1419366] disasm cs:eip does not work anymore
 [1419393] SSE's #XF exception -> "exception(19): bad vector"
 [1419429] disassembly of "260f6f00" show DS: instead of ES: prefix
 [1417583] Interrupt behaviour changed from 2.2.1 to 2.2.5
 [1418281] 'push' (6A) incorrectly disassembled
 [1417791] FLDENV generating exception when real hw does not.
 [1264583] OS/2 1.1 doesn't run

-------------------------------------------------------------------------
Changes in 2.2.6 (January 29, 2006):

- First major SMP release !
  - several APIC and I/O APIC fixes make SMP Bochs booting Windows NT4.0
    or Knoppix 4.0.2 without noapic kernel option in SMP configuration.
  - critical APIC timer bug fixed
  - obsolete SMP BIOS images removed (MP tables created dynamicaly)
  - determine number of processors in SMP configuration through .bochsrc
    new .bochsrc option 'CPU' allows to choose number of processors to emulate
  - new configure option --enable-smp to configure Bochs for SMP support,
    the old --enable-processors=N option is deprecated
- CPU and internal debugger fixes
  - enabled #PCE bit in CR4 register, previosly setting of this bit
    generated #GP(0) fault
  - enabled LAHF/SAHF instructions in x86-64 mode
  - fixed bug in PMULUDQ SSE2 instruction
  - fixes in Bochs debugger
- Configure and compile
  - enable VME (virtual 8086 mode extensions) by default if cpu-level >= 5
  - enable Bochs disassembler by default for all configurations
  - win32 installer script improvements
  - ips parameter moved to new 'CPU' option
  - show IPS value in status bar if BX_SHOW_IPS is enabled
- Other
  - several fixes in the hard drive, keyboard, timer, usb and vga code
  - new user button shortcut "bksl" (backslash)
  - updated Bochs instrumentation examples
  - user and development documentation improved

-------------------------------------------------------------------------
Changes in 2.2.5 (December 30, 2005):

Brief summary :
- added virtual 8086 mode extensions (VME) implementation
- several fixes/improvements in x86-64 emulation, debugger and disassembler
- new serial mode 'socket' connects a network socket
- IDE busmaster DMA feature for harddisks and cdroms completed and enabled
- many improvements in Bochs emulated I/O devices (e.g. floppy, cdrom)
- Updated LGPL'd VGABIOS to version 0.5d

Detailed change log :

- CPU
  - fixed XMM registers restore in FXRSTOR instruction (Andrej Palkovsky)
  - print registers dump to the log if tripple fault occured
  - fixed PANIC in LTR instruction (Stanislav)
  - added virtual 8086 mode extensions (VME) implementation, to enable
    configure with --enable-vme (Stanislav)
  - flush caches and TLBs when executing WBINVD and INVD instructions
  - do not modify segment limit and AR bytes when modifying segment
    register in real mode (support for unreal mode)
  - fixed init/reset values for LDTR and TR registers
  - reimplemented hardware task switching mechanism (Stanislav)
  - generate #GP(0) when fetching instruction cross segment boundary

- CPU (x86-64) (Stanislav Shwartsman)
  - implemented call_far/ret_far/jmp_far instructions in long mode
  - fixed IRET operation in long mode
  - fixed bug prevented setting of NXE/FFXSR bits in MSR.EFER register
  - implemented RDTSCP instruction
  - do not check CS.limit when prefetching instructions in long mode
  - fixed masked write instructions (MASKMOVQ/MASKMOVDQU) in long mode
  - fetchdecode fixes for x86-64

- APIC
  - Fixed bug in changing local APIC id (Stanislav)
  - Fixed reading of IRR/ISR/TMR registers (patch by wmrieker)
  - Implemented spurious interrupt register (Stanislav, patch by wmrieker)
  - Fixed interrupt delivery bug (anonymous #SF patch)
  - Correctly implemented ESR APIC register (Stanislav)

- Bochs debugger
  - Fixed bug in bochs debugger caused breakpoints doesn't fire sometimes
    (Alexander Krisak)
  - watchpoints in device memory fixed (Nickolai Zeldovich)
  - new debug interface to access Bochs CPU general purpose registers
    with support for x86-64

- Disassembler (Stanislav Shwartsman)
  - Fixed disassembly for FCOMI/FUCOMI instructions
  - Full x86-64 support in disassembler. The disassembler module extended
    to support x86-64 extensions. Still limited by Bochs debugger which
    is not supporting x86-64 at all ;(

- I/O devices (Volker)
  - general
    - memory management prepared for large BIOS images (up to 512k)
    - slowdown timer sleep rate fixed (now using 1 msec on all platforms)
    - some device specific parameter handlers moved into the device code
  - serial
    - new serial mode 'socket' connects a network socket (#SF patch by Andrew Backer)
  - hard drive / cdrom
    - assign a unique serial number to each drive (fixes harddrive detection
      problems with Linux kernels 2.6.x: "ignoring undecoded slave")
    - geometry autodetection for 'flat' hard disk images added. Works with
      images created with bximage (heads = 16, sectors per track = 63)
    - ATAPI command 'read cd' implemented, some other commands improved
    - cdrom read block function now tries up to 3 times before giving up
    - emulation of raw cdrom reads added, some other lowlevel cdrom fixes
    - IDE busmaster DMA feature for harddisks and cdroms completed and enabled
    - disk image size limit changed from 32 to 127 GB
    - split ATA/ATAPI emulation code and image handling code
  - floppy
    - fixes for OS/2 (patch by Robin Kay)
    - disk change line behaviour fixed (initial patch by Ben Lunt)
    - end-of-track (EOT) condition handling implemented
    - more accurate timing for read/write data and format track commands using
      a motor speed of 300 RPM
    - timing of recalibrate and seek commands now depends on the step rate,
      date rate and the steps to do
    - floppy controller type changed to 82077AA
  - cmos
    - RTC 12-hour and binary mode implemented
    - number of CMOS registers changed from 64 to 128
    - bochsrc option 'cmosimage' improved
    - save cmos image on exit if enabled
  - speaker
    - simple speaker support for OS X added (patch by brianonn@telus.net)
  - pci
    - BeOS boot failure fix in the PCI IDE code
    - don't register i/o and memory regions during PCI probe
  - vga
    - memory allocation for vga extensions fixed
  - usb
    - some bugfixes by Ben Lunt (mouse and keypad are usable now)
  - networking modules
    - VDE networking module now enabled on Linux

- display libraries
  - general
    - new syntax for the userbutton shortcut string and more keys supported
  - win32
    - fixed keycode generation for right alt/ctrl/shift keys
    - runtime dialog is now a property sheet
  - x11
    - simple dialog boxes for the "ask" and "user shortcut" feature implemented
    - Slovenian keymap added (contributed by Mitja Ursic)

- configuration interface
  - ask dialog is now enabled by default for win32, wx and x display libraries
  - bochsrc option floppy_command_delay is obsolete now (floppy timing now based
    on hardware specs)
  - floppy image size detection now available in the whole config interface
  - some device specific parameter handlers moved into the device code
  - calculate BIOS ROM start address from image if not specified

- System BIOS (Volker)
  - PCI i/o and memory base address initialization added
  - several keyboard interrupt handler fixes (e.g. patch by japheth)
  - several floppy fixes (e.g. OS/2 works with patch by Robin Kay)
  - some more APM functions added
  - Updated LGPL'd VGABIOS to version 0.5d
  - generate SMP specific tables dynamicly by the Bochs memory init code

- SF patches applied
 [1389776] Disk sizes over 64 Gbytes by Andrzej Zaborowski
 [1359162] disasm support for x86-64 by Stanislav Shwartsman
  [857235] task priority and other APIC bugs, etc by wmrieker
 [1359011] build breaks for 386 + debugger + disasm by shirokuma
 [1352761] Infinite loop when trying to debug a triple exception
 [1311170] small APIC bug fix (interrupt sent to the wrong CPU)
 [1309763] Watchpoints don't work in device memory by Nickolai Zeldovich
 [1294930] change line status on floppy by Ben Lunt
 [1282033] SSE FXRESTORE not working correctly by Ondrej Palkovsky
  [816979] wget generalizations by Lyndon Nerenberg
 [1214886] No more pageWriteStamp / unified icache by H. Johansson
 [1107945] com->socket redirection support by Andrew Backer

- these S.F. bugs were closed
  [669180] win95 install : unknown SET FEATURES subcommand 0x03
 [1346692] bochs 2.2.1 VGA BIOS error
 [1354963] floppy in KolibriOS
 [1378204] error: bochs-2.2.1, --enable-sb16, --disable-gameport
 [1368412] VDE problems in BOCHS
  [533446] CPU and APIC devices appear twice
 [1000796] bximage fails to create image of specified size
 [1170793] Quarterdeck QEMM doesn't work
  [923704] Multiple opcode prefixes don't reflect Trap 13
 [1166392] DocBook/documentation issues
 [1368239] broken grater than 4GB size of sparse type hd image
 [1365830] i386 compile breaks on paging
  [427550] Incomplete IRETD implementation
 [1215081] MSVC workspace STILL not fixed
  [736279] Jump to Task
 [1356488] FD change fail & occur error
  [957615] [CPU ] prefetch: RIP > CS.limit
 [1353866] not booting linux-2.6.14
 [1351667] load32bitOSImage does not work with --enable-x86-debugger
 [1217476] Incorrect (?) handling of segment registers in real mode
 [1184711] OS2 DOS crash [2.2.pre2]
  [624330] support for disks > 32GiB
 [1348368] bochs 2.2.1 bximage error
 [1342081] Configuration Menu option failed
 [1138616] OS/2 Warp 4 hangs when booting
 [1049840] mouse and video conflict
 [1164570] Unable to perform Fedora Core 4 test 1 installation
 [1183201] Windows 2000 (MSDN build 2150?) does not completely install
 [1194284] Can't boot from CD-ROM (Windows NT)
  [962969] Windows NT crashes while trying to intall them.
 [1054594] WinXP install halts (redo)
 [1153107] Windows XP fails with BSOD on 'vga'
  [938518] Win XP installation fails
  [645420] getHostMemAddr vetoed direct read
 [1179985] MS XENIX: >>PANIC<< VGABIOS panic at vgabios.c, line 0
 [1329600] WBINVD and INVD should flush caches and TLB
  [638924] eliminate BX_USE_CONFIG_INTERFACE
 [1048711] Funny behaviour with CTRL
 [1288450] keyboard BIOS error
 [1310706] Keyboard - about key SHIFT
 [1295981] Ubuntu 5.04 Live-CD won't boot in Bochs
  [879047] APIC timer behavior different before reset and after
 [1188506] I still can't install the german Windows XP!
 [1301847] Windows XP dosn't boot - FXRSTOR problem ?
  [661259] does not boot QNX under WinX
  [924412] Keyboard lock states all whacked
  [681127] MIPSpro compiler (IRIX) is allergic to ^M
 [1285923] BIOS keyboard handler
  [516639] ATA controller revisited...
  [657918] does not boot BeOS under WinX
  [649245] BeOS CD locks halfway on boot
 [1094385] Attachment for bug 1090339 (beos failure)
 [1183196] BeOS 4.5 developer CD does not install
 [1090339] BeOS fails to boot
  [639484] panics when int 13 is called
  [711701] divide by zero
  [704295] ATAPI/BIOS call missing
  [682856] hard drive problems
  [627691] Cursor keys problem
  [588011] keyboard not working
  [542260] os/2 warp crashes with floppy handling
 [1273878] SB16 doesn't work in pure DOS
  [542254] OS/2 FDC driver dies
 [1099610] Windows 98 SE Does not install
  [875479] cr3 problem on task switch
  [731423] NE2000 causing PANIC on Win2K detection
 [1156155] bochs fails to boot plan9 iso
 [1251979] --enable-cpu-level=3 should assume --without-fpu
 [1257538] Interupt 15h 83h - set wait event interval
  [658396] Panic for DR DOS emm386
  [679339] /? doesn't divulge Bochs command-line syntax
 [1167016] call/jump/return_protected doesn't support x86-64
 [1252432] Mac OS X compile bug
  [881442] Bochs 2.1 PANIC when loading DOS Turbo Pascal protected mode
 [1249324] Boch2.2.1 Buffer Overfollow in void bx_local_apic_c::init ()
 [1197144] 'make install' has dependency on wget
 [1079595] LTR:386TSS: loading tr.limit < 103
 [1244070] Compilation Error in gui/rfb.cc
  [761707] CPU error when trying to start Privateer
  [517281] Crash running Privateer in DOS...
2006-12-04 17:37:24 +00:00
jmmv
63d38e2f2d Make this build and install under Mac OS X. I doubt this is the best way
to handle this, but it is good (and simple!) enough for now.  It'd be
improved by moving some more files around and trying to make it more
consistent with "regular" installs.

The problem is that the build results are completely different under OS X
than those produced in other systems.

Not bumping PKGREVISION because this was unbuildable before.
2006-12-03 22:18:16 +00:00
wiz
0ebdc85711 Add -DPARANOID to CXXFLAGS, which fixes the build with gcc4
on NetBSD-3.99.21. Go figure.
2006-06-25 18:00:05 +00:00
jlam
9c8b5ede43 Point MAINTAINER to pkgsrc-users@NetBSD.org in the case where no
developer is officially maintaining the package.

The rationale for changing this from "tech-pkg" to "pkgsrc-users" is
that it implies that any user can try to maintain the package (by
submitting patches to the mailing list).  Since the folks most likely
to care about the package are the folks that want to use it or are
already using it, this would leverage the energy of users who aren't
developers.
2006-03-04 21:28:51 +00:00
joerg
5911def816 Recursive revision bump / recommended bump for gettext ABI change. 2006-02-05 23:08:03 +00:00
ben
75219f332a Fix bochs-2.2.1 build on NetBSD by adding missed patch. 2005-12-03 03:17:14 +00:00
ben
58c8ef2470 Update bochs to version 2.2.1. Changes include:
- Fixed several compilation warnings and errors for different platforms (Volker)
- Fixed FPU tag word restore in FXRSTOR instruction (Stanislav)
- Added missing scancodes for F11 and F12 to BIOS translation table (Volker)
- Bochs disassembler bugfixes (h.johansson)
- About 5% emulation speed improvement (h.johansson)
- Handle writing of zero to APIC timer initial count register (Stanislav)
- Enable Idle-Hack for 'TERM' GUI (h.johansson)
- Reduced overhead of BX_SHOW_IPS option to minimum. Now every simulation
  could run with --enable-show-ips without significant performance
  penalty. (Stanislav)
- Fixed pcipnic register access (Volker)
- Limited write support for TFTP server in 'vnet' networking module added (Volker)
- Changed some timing defaults changed to more useful values (Volker)
- WinXP/2003 style common controls now supported (Vitaly Vorobyov)
- Updated LGPL'd VGABIOS to version 0.5c (Volker)
- New floating point emulator based on SoftFloat floating point
  emulation library.
- improved x86-64 emulation
- Cirrus SVGA card emulation added
- status bar with indicators for keyboard, floppy, cdrom and disk (gui dependant)
- many improvements in Bochs emulated I/O devices (e.g. PCI subsystem)
2005-11-26 06:15:00 +00:00
rillig
9984e0604a Removed trailing white-space. 2005-09-28 14:15:48 +00:00
jlam
95fd1f6ec9 Massive cleanup of buildlink3.mk and builtin.mk files in pkgsrc.
Several changes are involved since they are all interrelated.  These
changes affect about 1000 files.

The first major change is rewriting bsd.builtin.mk as well as all of
the builtin.mk files to follow the new example in bsd.builtin.mk.
The loop to include all of the builtin.mk files needed by the package
is moved from bsd.builtin.mk and into bsd.buildlink3.mk.  bsd.builtin.mk
is now included by each of the individual builtin.mk files and provides
some common logic for all of the builtin.mk files.  Currently, this
includes the computation for whether the native or pkgsrc version of
the package is preferred.  This causes USE_BUILTIN.* to be correctly
set when one builtin.mk file includes another.

The second major change is teach the builtin.mk files to consider
files under ${LOCALBASE} to be from pkgsrc-controlled packages.  Most
of the builtin.mk files test for the presence of built-in software by
checking for the existence of certain files, e.g. <pthread.h>, and we
now assume that if that file is under ${LOCALBASE}, then it must be
from pkgsrc.  This modification is a nod toward LOCALBASE=/usr.  The
exceptions to this new check are the X11 distribution packages, which
are handled specially as noted below.

The third major change is providing builtin.mk and version.mk files
for each of the X11 distribution packages in pkgsrc.  The builtin.mk
file can detect whether the native X11 distribution is the same as
the one provided by pkgsrc, and the version.mk file computes the
version of the X11 distribution package, whether it's built-in or not.

The fourth major change is that the buildlink3.mk files for X11 packages
that install parts which are part of X11 distribution packages, e.g.
Xpm, Xcursor, etc., now use imake to query the X11 distribution for
whether the software is already provided by the X11 distribution.
This is more accurate than grepping for a symbol name in the imake
config files.  Using imake required sprinkling various builtin-imake.mk
helper files into pkgsrc directories.  These files are used as input
to imake since imake can't use stdin for that purpose.

The fifth major change is in how packages note that they use X11.
Instead of setting USE_X11, package Makefiles should now include
x11.buildlink3.mk instead.  This causes the X11 package buildlink3
and builtin logic to be executed at the correct place for buildlink3.mk
and builtin.mk files that previously set USE_X11, and fixes packages
that relied on buildlink3.mk files to implicitly note that X11 is
needed.  Package buildlink3.mk should also include x11.buildlink3.mk
when linking against the package libraries requires also linking
against the X11 libraries.  Where it was obvious, redundant inclusions
of x11.buildlink3.mk have been removed.
2005-06-01 18:02:37 +00:00
jlam
585534220c Remove USE_GNU_TOOLS and replace with the correct USE_TOOLS definitions:
USE_GNU_TOOLS	-> USE_TOOLS
	awk		-> gawk
	m4		-> gm4
	make		-> gmake
	sed		-> gsed
	yacc		-> bison
2005-05-22 20:07:36 +00:00
jlam
2aee708a3f This package uses gzip and gunzip during build & installation. 2005-05-16 18:22:57 +00:00
agc
459a5bb28d Add RMD160 digests to the SHA1 ones 2005-02-23 18:49:17 +00:00
reed
c30c63008a Remove information from MESSAGE about the HTML documentation.
And remove references of it from Makefile.
The HTML documentation is not installed in the first place.

TODO: maybe make a bochs-docs package that builds the documentation
from the docbook source.

Bump PKGREVISION (I also updated DESCR in previous commmit too).
2005-02-11 22:28:42 +00:00
reed
5b23924607 Improved description. And removed reference to bochs.com URL which is wrong. 2005-02-11 22:26:21 +00:00
jlam
43ac8c39e1 Replace USE_GCC_SHLIB with "USE_LANGUAGE=c c++" (the latter implies the
former) for applications that are known to require C++.
2004-11-13 22:04:52 +00:00
grant
88b1567d1d this has little hope of building with anything but gcc. make it so. 2004-06-13 08:43:00 +00:00
grant
1d4b15aa11 this uses a c and c++ compiler. 2004-06-13 08:42:24 +00:00
grant
52f1b46a37 remove unneeded CONFIG_{GUESS,SUB}_OVERRIDE, as bsd.pkg.mk does this
automatically now.
2004-02-14 00:54:44 +00:00
hubertf
3574066d66 Update bochs to 2.1.1 (doh). Changes:
- fix bug in int15h function 0xe820 (Christian Neubert)
- fix vmware3 disk support on big-endian platforms (Christophe Bothamy)
- fix conditions for NM exception on FWAIT instruction (Christophe)
- fix symbol conflict in rfb and x display libraries (Volker Ruppert)
- allow 16 bit writes to ne2k page 0 (Volker)
- notify display libraries on change of bpp (Volker)
- fix bug in int13h function 0x10 (Volker)
- fix floppy dialog error on win2k (Volker)
- fix adress check in TSS IO permission bitmap (Christophe)
- fix buffer overflow vulnerability pointed out by SeSoX (Christophe)
- updates for MacOS compile (Daniel Gimpelevich)
2004-02-12 01:57:52 +00:00
hubertf
fa70d4e4aa Update bochs to 2.1. Changes:
- New disassembler
- 3DNow!/SSE/SSE2/PNI instruction support
- Vmware3/Sparse/Undoable/Growing harddisk images support
- many VGA emulation improvements (e.g. high/true color VBE modes added)
- No more X11 vga font required
2004-02-12 00:10:30 +00:00
grant
398893a6b4 replace deprecated USE_GMAKE with USE_GNU_TOOLS+=make. 2004-01-22 08:36:03 +00:00
gavan
3218f2e1d3 Set USE_GCC_SHLIB. Fixes linking on Solaris. 2003-11-06 18:26:46 +00:00
kristerw
fc2ea4c330 Override config.guess and config.sub to make the pkg recognize shark. 2003-10-26 17:40:31 +00:00
bouyer
206c9772ec Add a patch so that it builds with gcc3.
Confirmed to still build with gcc2 by Julio M. Merino Vidal.
2003-10-24 22:03:53 +00:00
grant
4083b24390 s/netbsd.org/NetBSD.org/ 2003-07-17 21:31:04 +00:00
jschauma
e366d0c694 Use tech-pkg@ in favor of packages@ as MAINTAINER for orphaned packages.
Should anybody feel like they could be the maintainer for any of thewe packages,
please adjust.
2003-06-02 01:15:31 +00:00
fredb
a4473c58af Upgrade to version 2.0.2. Changes from 2.0.1, from the
CHANGES file:

Changes in 2.0.2 (January 21, 2003):

- fix possible segfault in wxWindows (Volker Ruppert)
- fix instrumentation (Stanislav Shwartsman)
- fix cdrom read_toc() function for *BSD (Keith Matthew Jones)
- fix NetBSD boot from cdrom (Christophe Bothamy)
- fix cmos checksum (Volker)
- fix "refresh bit" behaviour in pit (Volker)
- fix .bochsrc parsing (Volker)
- fix vga resize/redraw problems (Volker)
- fix compilation issues on Irix and Tru64 (Christophe)
- fix MMX/SSE bugs (Stanislav, Peter Tattam)
2003-02-07 04:00:33 +00:00
fredb
0cb3465387 Update bochs to 2.0.1. From the ChangeLog:
Changes in 2.0.1 (January 4, 2003):

    - fix corrupt saved configuration files (Christophe Bothamy)
    - fix missing break statements in apic (Shai Fultheim)
    - fix compiling sb16 under FreeBSD (Volker Ruppert)
    - updates to the documentation (Volker)
    - fix text mode colors 8 to 15 (Volker)
    - fix FPU integer load bug (Volker)
    - stop pasting on hardware reset (Volker)
2003-01-13 20:18:46 +00:00
uebayasi
3b095a9665 Enable NE2000 ethernet module. Bump revision. 2002-12-30 05:52:41 +00:00
uebayasi
07209b6f1e 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.
2002-12-25 01:12:36 +00:00
wiz
e8817c9088 Complete standardization of messages according to latest pkglint. 2002-09-24 12:29:55 +00:00
itojun
f6c4cd6740 upgrade to 1.4.1.
-------------------------------------------------------------------------
Changes in 1.4.1 (June 22, 2002):

- now cdrom is enabled in configure, unless you specifically disable
  it with --disable-cdrom. (Christophe)
- fix compile error in main.cc when SMP or APIC is enabled (Dave)
- the runtime menu now displays 11 (continue) by default (Bryce)
- initialize DMA controller before floppy and SB16
- fix DMA panic when installing win95 (Volker)
- first character of the vga bitmap is blank on win32 (Volker)
  Before, it was incorrectly coded as a '@'.
- AltGr key on European keyboards works now on win32 (Volker)
- fix problem with console/serial port on Bochs exit (Volker)
- enable serial port for GNU and GNU/Linux (Volker)
- small documentation fixes (Volker)
- remove unnecessary include statements for X11 (Volker)
- italian keymap added (Emanuele Goldoni)
- fix win32 ethernet frames error. It will no longer reject packets
  that are less than 60 bytes long. (Peter Tattam)
- BIOS fixes :
  - win2k cd-boot (Christophe)
  - emm386 crash (Dave)
  - cs=0 at boot time (Christophe)
  - keyboard failure in scandisk (Dave)
- fix bug in forming the 64-bit APIC base address from two 32-bit registers.
  A compiler warning in cpu/proc_ctrl.cc pointed this out.
- fix default choice in the runtime options menu
2002-07-12 03:39:15 +00:00
grant
21cfd3f8e4 set CXXFLAGS to use arch specific default optimization
suggested by Martin Husemann on tech-pkg and noted by Chris Pinnock in
private mail.
2002-06-06 23:19:45 +00:00
grant
57c5554baa add CXXFLAGS=-O2
reported by Wojciech Puchar <wojtek@3miasto.net> in pkg/17181.
2002-06-06 08:09:08 +00:00
fredb
8283b7e3ca - - Enable the cdrom driver, and begin to make it work on NetBSD.
It can boot a Norton Utilities CD, but not run any of the
    utilities. That may be the known problem with the Windows 98 CD.
- - Add the ability, on NetBSD, to spin up the CD-ROM. This keeps
    "disklabel cd0" while booted from the NetBSD 1.5.3 rescue floppy
    from panicing the emulation, but it still doesn't return a label.
- - Go ahead and enable the network driver and dummy sound driver.
    The network driver almost works under the NetBSD  rescue floppy
    (ifconfig works, but not ping). I have no way, currently, of
    verifying the (dummy, silent) sound driver.
- - Bump to 1.4nb1.
2002-05-14 13:52:51 +00:00
wiz
8441909a8e Install some more files (bximage, man pages, docs), sort PLIST,
regen a patch, and handle gui.cc slightly differently (sent back).
2002-05-13 14:47:41 +00:00
fredb
0ee7c724e1 Update package to version 1.4. Many changes. Here's an abbreviated list of some
of the more visible ones.

- ROM BIOS
  - Christophe Bothamy added ability to boot from El Torito CDROM.

- VGA
  - vga memory read/write functions in text mode fixed
  - implementation of CGA mode 320*200*4 (patch from Sebastien Bechet)

- GUI changes
  - cdrom button: click this to notify Bochs when you changed the CDROM (Volker)
  - snapshot button: saves the text on the Bochs screen into a file called
    snapshot.txt (Volker)
  - copy button: on Win32 and X windows, copy the text on the Bochs screen
    to the clipboard (Volker)
  - paste button: on Win32 and X windows, paste the characters on the
    clipboard into the Bochs window.  This requires keyboard_mapping to
    be enabled. (Bryce Denney)

- keyboard
  - added an optional keyboard_mapping option that enables to use your
    country specific keyboard with Bochs.  If enabled, the keymap file must be
    specified in bochsrc.  The available keymaps are US, German, Spanish and
    French for PCs running X11.  Contributions are welcomed.  (Christophe
    Bothamy)
  - added Windows(tm) key definitions (Volker Ruppert)
  - added paste button, which causes the emulated keyboard to type characters
    from the system clipboard.  This only works when keyboard_mapping is
    enabled. (Bryce Denney)
2002-05-13 14:12:03 +00:00
fredb
4c5c9e6203 Update bochs to 1.3. Version 1.3 clearly performs better, and is more
stable than, version 1.1.2. Extensive changes include a new text-based
configuration menu (which starts at launch and upon pressing the config
button), LBA support for hard disks, better error handling for "hard
disk" configuration errors, and a new VGABIOS (optional). Plus, bochs
can now simulate an SMP machine! [The last is not tested on NetBSD,
and is not enabled by default in the package.]
2001-12-13 18:03:52 +00:00
zuntum
d038a73ebd Move pkg/ files into package's toplevel directory 2001-10-31 22:52:58 +00:00
kei
95a0205abc Updated to version 1.1.2 (bugfix3, 2001-05-16)
- updated Elpin VGA BIOS to version 2.40, and changed pointer in .bochsrc
- fixed .conf.x86 script so that it uses c++ instead of egcs for C++ files
- now Makefile targets that recurse into subdirectories use double colons,
  so that it will always recurse into subdirectories.  Now a single make
  command should notice a modified source file in a subdir.
- fixed bug in bx_panic.  If BX_PANIC_IS_FATAL==0 and a (non-fatal) panic
  occurs, it used to call bx_atexit() and then return.  It should never
  call bx_atexit, which starts to shut down the simulator, unless it's
  really going to quit!
- support 2.88 MB floppy disks
- since dataseghack is checked in as non-executable, invoke it with
  "csh dataseghack"
- double fault patch from Thomas Petazzoni <thomas.petazzoni@ifrance.com>,
  sourceforge patch #423726.
- removed -fno-builtin from fpu makefiles
- redefine u_char, u_short, etc. in order to not conflict with system
  definitions of these same types.
- in cdrom.cc, remove the extern "C" { } structure around some of the
  header files.  This is no longer necessary.
- do not panic on hard disk command 0x1f2 (read sector count)
- in keyboard.cc:
  - apply Todd Fries' reset patch
  - recognize most of the "Grey" insert/delete/home/end/etc. keys the
    same as keypad keys.
  - removed panic on "kbd_ctrl_to_kbd(): got value of 0x??"
  - implement mouse command 0xf6 (set defaults)
- apply Suboner@aol.com's Xwindows timing patch from
  http://sourceforge.net/tracker/index.php?func=detail&aid=418730&group_id=12580
&atid=312580
- remove all patches from patches subdir which have already been applied.
  The remaining ones are under consideration but not applied.
2001-05-25 23:01:30 +00:00
wiz
4dabc5b0fe Update to bochs-bugfix-20010409-beta. Changes are lots of bugfixes. 2001-05-15 22:43:25 +00:00
fredb
54c3906258 New homepage, per bryce.denney@bigfoot.com (PR admin/12948). 2001-05-15 20:20:07 +00:00
agc
7e2fedb405 Move to sha1 digests, and add distfile sizes. 2001-04-20 10:49:52 +00:00