Skip to content

Commit

Permalink
Upgrade snes9x to version 1.43. May affect PR#33084.
Browse files Browse the repository at this point in the history
Builds but does not run correctly on amd64 and sparc64.

Unix-specific changes include:
* Removed bundled zlib in favour of detecting the system zlib.
* Fixed mouse offset in resized X11 window.
* Fixed compilation on AMD64.
* Rewrote keyboard setup code
* Unmap all joystick buttons before applying -joymapX
* Loading a zip file on binaries without zip support will give
an appropriate error message
* Added install target with proper --prefix handling.
* Added VPATH handling.
* Added fallback to C-core if configure can't find nasm.
* Changed the default controller setting to use just the plain
SNES controller pad. Mouse, Superscope and multiplayer adapters
are now turned off by default. This reflects how the Windows
port has been doing it for some time.
* Added a new command line option: -sdd1-pack
* Fixed the x86 SuperFx assembler core.
* Added possibility to enable the debugger via configure.
* Moved full screen button from 'Print Screen' to 'Alt'+'Return'.
* Added screenshot capability. Available by pressing 'Print Screen'.
* Fixed OpenGL target.
* Fixed sound on some big endian Linux systems.

General changes include:
- Rewrote Unfreeze, renamed it S9xUnfreezeFromStream,
  failing to load a freeze file no longer resets emulation  (blip)
- Fixed Unfreeze to restore IPPU.HDMA properly              (blip)
- Rewrote OBC1 code to match the real chip                  (Overload)
- More updates the to DSP-1 code, fixes to projection       (Overload, Andreas Naive)
- Added movie recording+rerecording support                 (blip, Bisqwit)
- Added -hidemenu CLI switch                                (funkyass)
- Added internal support for emulating the new-style SNES   (MKendora)
- Cleaned up many quirks of the cheat search engine         (MKendora, Don Vincenzo)
- Fix mosaic in hires SNES modes (Tokimeki Memorial)        (MKendora, zones)
- Rewrote Legend's hack, added another game to it           (MKendora)
- Optimized the Open ROM dialog                             (MKendora)
- Rewrote the Seta DSP map                                  (The Dumper, MKendora)
- Began string isolation for the UI, eases translation      (funkyass)
- added -nopatch -nocheat, and -cheat CLI items             (MKendora)
- fixed a UI typo                                           (funkyass)
- fixed several C core stack ops in emulation mode          (MKendora)
- split emulation mode ops from native mode ops             (MKendora)
- Seta special chip emulation enhancements                  (Feather, The Dumper, Overload, MKendora)
- code tweaks to the ST010                                  (Nach, pagefault)
- fix some C/asm quirks and HDMA quirks (all my fault)      (MKendora)
- several timing hacks to fix games                         (lantus)
- improved checksumming for odd mirrorings                  (MKendora)
- Snes9x uses a standard zlib instead of a packaged one     (PBortas)
- Exhaust Heat 2 and regional ports are playable            (Feather, The Dumper, Overload, MKendora)
- Game Doctor dumps that are 24 Mbit are now supported by
  a force option                                            (MKendora, Nach)
- SuperFx interleave format is now considered deprecated.
  Support will be removed in future versions                (Team decision)
- made SuperFx interleave detection a compile option        (MKendora)
- added memory maps for slotted games                       (MKendora)
- fixed a typo in the usage messages                        (MKendora)
- fixed the bug that had nuked optimizations                (The Dumper)
- restored full speed optimizations in release builds       (funkyass)
- Added non-speed-hack version of color subtraction.        (zones)
- OpenGL info message font fix                              (zones)
- APU timer fix                                             (zones, Nach)
- Fixed mouse offset in resized X11 window.                 (PhaethonH)
- Fixed a (presumably) long-standing bug: Mode 6's BG is
  depth 4, not depth 8!                                     (anomie)
- Dreamcast: Added SH4 assembler                            (PBortas, Marcus Comstedt, Per Hedbor)
- C90 and aclocal 1.8 warning fixes (thanks Ville Skytt�   (PBortas)
- Added support for NSRT Team's JMA format                  (Nach, NSRT Team, funkyass)
- Added 8-bit rendering filters                             (funkyass)
- Added Sanity Checks for the Display Dialog                (funkyass)
- New Layout for the Joypad Dialog,                         (funkyass)
- Fixed that anoying Joypad dialog bug. Now check to see
  if the axis exists before asking for the info form it     (funkyass)
- Added full POV support.                                   (funkyass)
- Fixed sram sizes for SuperFx games                        (Nach, MKendora)
- Stopped saving sram for games with no battery             (Nach, Mkendora)
- stack wrapping fix in C core                              (MKendora)
- removed some dead hacks (Oda Nobunaga and Dezaemon)       (MKendora)
- fixed some DMA and HDMA modes                             (anomie, MKendora)
- improved HDMA timing                                      (anomie)
- cleaned up load and deinterleave code                     (MKendora)
- removed old UI DLL                                        (MKendora)
- new cheat dialogs                                         (MKendora)
- Implement odd sprite sizes, sprite priority rotation.     (anomie)
- RTO code that hopefully works. MK's #define is
  "MK_DEBUG_RTO" to try to debug the RTO code.              (anomie)
- SDD1 decompression support for Linux. Also added a new
  command line option -sdd1-pack.                           (anomie)
- Added correct VRAM read logic. #define CORRECT_VRAM_READS
  if you want it.                                           (anomie)
- removed the non-VAR_CYCLES path                           (MKendora)
- changed access timing map to be address-based.            (MKendora, anomie)
- DSP-1 updates                                             (Overload, Andreas Naive)
- S-DD1 decompression support                               (Andreas Naive)
- optimized S-DD1 code                                      (anomie)
- S-DD1 can use packs or decompression                      (MKendora)
- More work on Exhaust Heat 2                               (MKendora, Overload, The Dumper)
- separated ROM detection from file reading                 (lantus)
- fixed a mirroring bug in LoROMs                           (MKendora)
- cleaned up some mapping issues                            (MKendora)
- ST018 games now boot before locking up                    (Mkendora, Overload)
- SA-1 state was not completely reset, crashed Marvelous    (zones)
- Removed sample caching. It caused problems, and was not
  noticably faster.                                         (MKendora)
- Fixed interlace without breaking the displays for MK      (anomie)
- Fixed a PPU OpenBus hack                                  (anomie)
- Moved SPC7110 and S-DD1 regs to speed up the general case
  of reading the $4xxx registers                            (MKendora)
- altered Hi/Lo ROM detection to fix a few misdetects.      (MKendora)
- Implemented RTO flags. With MK's implementation of $213F's
  interlace bit, we now pass the SNES Test Cart's
  Electronics Test                                          (anomie)
- Fix sprite windowing bug                                  (anomie)
- cleaned up the hacks section somewhat                     (MKendora)
- removed some interleave hacks                             (MKendora)
- fixed a bug in KartContents                               (MKendora)
- transparency fix for Jurassic Park                        (lantus)
- Kludged Mark Davis until I get stable APU timing          (MKendora)
- Fixed an FMOD bug                                         (MKendora)
- cosmetic tweaks                                           (Everyone)
- Fixed 2 special chip bugs in the C core                   (zones)
- Added some sanity fixes to the C core, fixes MLBPA
  Baseball for C core users                                 (zones)
- updated zlib source (includes 1.1.4-1 patch)              (MKendora)
- compiler warning fixes                                    (PBortas)
- Updated the SuperFx asm core                              (pagefault)
- Hacked Robocop vs. Terminator using Daffy Duck hack. Stops
  flashing.                                                 (MKendora)
- Added some defines to the asm core                        (MKendora)
- Initialize the C SuperFx core better                      (PBortas)
- Kludge a Japanese golf game until the APU timing is fixed (MKendora)
- Oops, in the asm CPU core i was stomping on %eax too
  early, so register $4210 wasn't getting set properly.     (anomie)
- Generic accuracy fix in main SUperscope emulation         (MKendora)
- sprite bug fixed (gah! How'd we miss that)                (anomie)
- SPC saving compatibility fix                              (Caz and zones)
- Window clipping update                                    (anomie)
- Mode 7 clipping fix                                       (TRAC)
- latching fix                                              (anomie)
- BS BIOS checksum and mapping fix                          (MKendora)
- Working Uniracers hack (dma.cpp)                          (anomie)
- HDMA Indirect Address fix for Romancing Saga 2            (anomie)
- Better savestate hack, does it break anything?            (anomie)
- C4 C core fixes. Mostly Trapezoid (thanks Nach),
  some s/short/int16/, some indentation.                    (anomie)
- Damn, but the indentation in ppu.cpp was screwed up.
  Killed some dead code too (twas commented forevermore).   (anomie)
- fixed a potential crash in S-DD1 logging                  (MKendora)
- Improved accuracy of Hi/LoROM detection (~500 ROM test)   (MKendora)
- Hack for Moryou Senki Madara 2, don't call
  SelectTileRenderer from DrawOBJS if BGMode is 5 or 6. A
  real fix requires at least rewriting SelectTileRenderer,
  or inlining a special version in DrawOBJS.                (anomie)
- DMA traces: add additional address info to reads too.     (anomie)
- Killed the old Borland Joypad dialog                      (funkyass)
- Fixed issues with Dezaemon and CT, maybe others           (anomie, MKendora)
- Changed the internal snapshot key from \ to VK_F12        (funkyass)
  Fixes issues with non-US keyboard layouts.
- Fixed OAM reset to not occur during forced blank.         (anomie)
- Killed some dead OAM reset code that doesn't need saving. (anomie)
- Fixed OAM reset timing (beginning of V-Blank rather than
  end) for R-TYPE 3 (J).                                    (anomie)
- Tweaked the About Dialog so its read-only and no scroll   (funkyass)
- cleaned up a sound skipping code issue. Same as the
  RTC issue                                                 (lantus)
- re-fixed the invalid BRR header behavior twice            (Lord Nightmare, FatlXception, Mkendora)
- More BS mapping fixes.                                    (The Dumper, MKendora)
- Fixed Ranma Bun no 1 - Chonai Gekitou Hen (J) and
  Street Combat (U). Interlace is not supported in the
  non-Hi-res modes, as far as I can tell.                   (MKendora)
- Also fixes Maka Maka (J). Frank Yang's report, and
  anomie's code both provided clues to this one.
- Removed special casing on setting 5c77 version to one.
  This seems to be true for U and J units always. I need
  it checked out on PAL...                                  (neviksti)
- Using SNEeSe's values for 5c78 and 5A22. Note we know
  that the 5c78 version can also be 1 or 2, instead of 3.   (TRAC, neviksti)
- Added turbo buttons. Credit/blame for the design goes
  to slack, Nave, Gogo, and myself.                         (MKendora)
- fixed a bug in turbo                                      (slack, MKendora)
- Tried merging the behavior of Old $4200 with new $4200    (MKendora)
- Made $4200's return value match what VSMC Explorer
  showed on Fancia's SNES                                   (MKendora)
- Fixed a matrix multiplcation bug in ZSNES state loads     (MKendora)
- Fixed Dezaemon and Ys3 mode 7                             (lantus)
- Fixed H-DMA modes 5-7. Thanks to The Dumper for the
  extra motivation needed. GunForce and Genocide 2 work.    (The Dumper, MKendora)
- Fixed BG3 Priority. I'm stupid. anomie had fixed it,
  but lantus fixed it again, because I didn't use it.       (anomie, lantus)
- Added a Star Fox 2 hack, and an interleave skip           (The Dumper, lantus, MKendora)
- Cleared BS setting on load                                (lantus)
- Fix for Mode 7 priorities. fixes F-1 Grand Prix (all 3)   (anomie)
- JANJYU GAKUEN 2 needs Multi-tap 5 off.                    (Frank Yang, MKendora)
- HONKAKUHA IGO GOSEI: No multi-tap 5, allow mouse          (lantus, MKendora)
- Added a few missed conditional compiles                   (Nach)
- disabled multitap 5 by default, added menu to enable      (MKendora)
- special thanks to anomie and lantus. One of them is
  responsible for a bug fix I forgot already.               (anomie, lantus)
- Removed several Multitap5 disable hacks.                  (MKendora)
- Added an SPC dumping upgrade from kode54                  (kode54)
- cleaned up some resource leaks                            (MKendora)
- I forgot this since 1.39mk, but SPC700 flag fixes         (anomie)
- Mode 7 interpolation screen flip fix                      (anomie)
- Updated SPC7110 code a bit, for compatibility             (Daniel, anomie)
- Changed RTC saving. (Byte exact to old format on Win32)
  The submitted patch for "safety" doubled the file size,
  so I had to write it in explicitly little-endian.         (MKendora)
- Removed the old hidden cursor                             (MKendora)
- Applied a WAI correction from anomie.                     (anomie)
- Added a patch for Pseudo hi-res                           (anomie)
- Hacked around Word writes to $7F:FFFF. Thanks to lantus
  and The Dumper for verification.                          (MKendora)
- PPC compile fix? and debugger reversion                   (anomie)
- Set defaults differently to improve sound quality.        (MKendora)
- Clear Force load settings after Init                      (lantus)
- Made menu reset a soft reset. Fixed BL Sound Test & more  (CaitSith2)
- Fixed word writes to block bounds in asm core.            (MKendora)
- redone version of my bounds fix, only this one WORKS!     (TRAC)
- Thanks to TRAC for the AT&T syntax refresher!             (TRAC)
- Fixed screen saver disable                                (kode54)
- Fixed OAM and sprite priority in the asm core             (anomie)
- Proper Interlace fix for mid-frame changes                (anomie)
- Fixed OpenGL to accomodate previous patch                 (MKendora)
- Fixed ROM Info bugs                                       (_pentium_five, MKendora)
- Fixed non-stretched interlacing, but it's s.l.o.w.        (anomie)
- Superscope and Mouse need to be enabled by the menu.      (MKendora)
- Fixed HiROM sram reads in asm and C cores                 (anomie, MKendora)
- Added Company 48 to the list. Thanks to _pentium_five_    (StatMat)
- Set Super Drift Out's S-ram correctly.                    (Snes9xppSE Team)
- Fixed NTSC timing. Helps ToP Intro greatly                (kode54)
- Added several entries to the company list, from uCON64    (Nach)
- Lots more companies                                       (StatMat, Nach)
- Added ZSNES OBC1 code ported from asm to C                (sanmaiwashi)
- Implemented Justifier emulation                           (neviksti, MKendora)
- Fixed Rudora no Hihou's clip window bug                   (anomie)
- Fixed Flintstones sprite issue                            (lantus)
- Fixed sram mappings for Big Sky Troopers and
  Taikyoku - IGO Goliath. Both map in bank F0               (MKendora)
- Fixed a possible crash when switching audio settings      (MKendora)
- Added per-pack gfx pack configuration                     (MKendora)
- Fixed glitches in DSP-1 games (Flintstones fix)           (lantus)
- Added delay to Superscope latching. Fixes X-Zone.         (neviksti, MKendora, zones)
- Added DSP-2 support                                       (Overload, The Dumper, Lord Nightmare,
                                                             MKendora, neviksti)
- Fixed Super Bases Loaded 2 (and J/K ports) DSP-1 seems
  to ignore the A15 line in LoROM maps                      (MKendora)
- Corrected $4200 again                                     (The Dumper)
- Corrected $2100, $2102, and $2102 read behavior           (anomie)
- Fixed Cancel on the Sound Options dialog.                 (MKendora)
- Fixed the sound options dialog (Thanks, Quattro)          (MKendora)
- updated DSP-1 support to match chip better                (Overload, neviksti, The Dumper)
- added a few Ops to the DSP-4 routine (Nothing plays yet)  (neviksti, The Dumper, Overload, MKendora)
- added screenshot support                                  (anomie, sanmaiwashi)
- stubbed the ST010 chip in Exhaust Heat 2                  (Overload, MKendora)
- hacked around War 2410's lockup                           (pagefault, _Demo_, MKendora)
- updated tests for type 1 ROMs (based on reset vector)     (MKendora)
- Emulation mode CPU fix                                    (The Dumper)
- Open Bus fixes                                            (anomie)
- Better Expansion port emulation                           (anomie)
- More Open Bus fixes                                       (Overload, anomie)
- HDMA fixes (fix colors only in Full Throttle Racing)      (anomie)
- Migrated DKJM2 onto the Tales map                         (MKendora)
- Tried to remove Dragon Knight 4 hack (LoROM sram fix)     (MKendora)
- Fixed ROM Mirroring for LoROMs (<= 32 Mbit)               (MKendora, TRAC)
- blocked wram to wram DMAs                                 (neviksti)
- fixed HiROM mirroring, too. Thanks TRAC!                  (MKendora, TRAC)
- fixed C core RMW and Push ops to write in the correct
  order, fixes Michael Jordan gfx.                          (anomie, Overload, MKendora)
- set RDIO to start as 0xFF, fixes SuperFx games.           (anomie, Overload)
- New connect dialog                                        (funkyass)
- better conditional compile of FMOD                        (funkyass)
- fixed screenshot code when libpng is not used             (funkyass)
- added portability fixes                                   (zones)
- fixed asm Pushes                                          (anomie)
- fixed asm LoROM s-ram decode                              (MKendora)
- migrated DEZAEMON to standard LoROM map                   (MKendora)
- fixed the Madara 2 OpenGL bug (key found in Rudra)        (MKendora)
- fixed asm RMW instructions                                (MKendora)
- fixed ADC opcode                                          (The Dumper)
- added DSP-2 Op09                                          (The Dumper)
- updated C4 C code                                         (anomie)
- updated C4 asm code                                       (Nach)
- Keep OpenGL in ratio                                      (kode54)
- Replaced many more Borland dialogs                        (funkyass, MKendora, Nach)
- Added CRC32 to displayed ROM Info                         (Nach, MKendora)
- Fix cheat support                                         (The Dumper)
- improved DMA timing                                       (MKendora, Overload, The Dumper)
- Fixed Mode 7 math, removed Dezaemon, Gaia, Ys 3 hacks     (TRAC, MKendora)
- Mode 7 flip fix                                           (TRAC)
- Multiple safety and initialization fixes                  (zones)
- Platform safety fixes                                     (PBortas)
- Memmap cleanups                                           (MKendora)
- More preliminary work on special chips                    (The Dumper, Overload, MKendora)
- Added color coding                                        (MKendora)
- Another HDMA fix                                          (anomie)
- added another known hack to the hacked games list         (Nach)
- ToP memmap changes                                        (MKendora)
- Checksum calculation changes                              (MKendora)
- Special cased a few games for OAM issues                  (MKendora)
- Reverted OAM reset to 1.39 timing                         (MKendora)
- Reworked vram wrapping                                    (zones, Mkendora)
- Fixed $4210 and Super Professional Baseball 2             (Overload, MKendora)
- Fixed APU RAM init                                        (Overload, MKendora)
- More support for Exhaust Heat 2 (not playable)            (The Dumper, Overload, neviksti)
- removed some debris from save states                      (MKendora)
- fixed? Doom's save state bug                              (MKendora)
- simple overdump detection warning                         (MKendora)
  • Loading branch information
ben committed Mar 18, 2006
1 parent f24b7ee commit b0cdd1f
Show file tree
Hide file tree
Showing 20 changed files with 483 additions and 267 deletions.
45 changes: 22 additions & 23 deletions emulators/snes9x/Makefile
@@ -1,32 +1,35 @@
# $NetBSD: Makefile,v 1.34 2006/03/18 13:28:53 ben Exp $ # $NetBSD: Makefile,v 1.35 2006/03/18 15:56:00 ben Exp $


DISTNAME= s9xs139 SNESVER= 1.43
PKGNAME= snes9x-1.39 DISTNAME= snes9x-${SNESVER}-src
PKGREVISION= 4 PKGNAME= snes9x-${SNESVER}
CATEGORIES= emulators CATEGORIES= emulators
MASTER_SITES= http://www.snes9x.com/zips/ MASTER_SITES= http://www.lysator.liu.se/snes9x/${SNESVER}/ \
EXTRACT_SUFX= .zip http://files.ipherswipsite.com/snes9x/ \
http://vincent.grigorieff.free.fr/snes9x/


MAINTAINER= ben@NetBSD.org MAINTAINER= ben@NetBSD.org
HOMEPAGE= http://www.snes9x.com/ HOMEPAGE= http://www.snes9x.com/
COMMENT= Super Nintendo Entertainment System (SNES) emulator COMMENT= Super Nintendo Entertainment System (SNES) emulator


WRKSRC= ${WRKDIR}/release WRKSRC= ${WRKDIR}/${DISTNAME}/snes9x
USE_TOOLS+= gmake USE_TOOLS+= gmake
PTHREAD_OPTS+= require PTHREAD_OPTS+= require
INSTALLATION_DIRS= bin INSTALLATION_DIRS= bin
GNU_CONFIGURE= YES


do-install: do-install:
${INSTALL_PROGRAM} ${WRKSRC}/snes9x ${PREFIX}/bin ${INSTALL_PROGRAM} ${WRKSRC}/snes9x ${PREFIX}/bin
${INSTALL_PROGRAM} ${WRKSRC}/offsets ${PREFIX}/bin ${INSTALL_PROGRAM} ${WRKSRC}/offsets ${PREFIX}/bin
${INSTALL_DATA_DIR} ${PREFIX}/share/doc/snes9x ${INSTALL_DATA_DIR} ${PREFIX}/share/doc/snes9x
${INSTALL_MAN} ${WRKSRC}/CHANGES.TXT ${PREFIX}/share/doc/snes9x ${INSTALL_MAN} ${WRKSRC}/doc/porting.txt ${PREFIX}/share/doc/snes9x
${INSTALL_MAN} ${WRKSRC}/COPYRIGHT.TXT ${PREFIX}/share/doc/snes9x ${INSTALL_MAN} ${WRKSRC}/changes.txt ${PREFIX}/share/doc/snes9x
${INSTALL_MAN} ${WRKSRC}/HARDWARE.TXT ${PREFIX}/share/doc/snes9x ${INSTALL_MAN} ${WRKSRC}/hardware.txt ${PREFIX}/share/doc/snes9x
${INSTALL_MAN} ${WRKSRC}/HOW2PORT.TXT ${PREFIX}/share/doc/snes9x ${INSTALL_MAN} ${WRKSRC}/problems.txt ${PREFIX}/share/doc/snes9x
${INSTALL_MAN} ${WRKSRC}/PROBLEMS.TXT ${PREFIX}/share/doc/snes9x ${TR} -d '\r' <${WRKDIR}/${DISTNAME}/readme.txt >${WRKSRC}/readme.txt
${INSTALL_MAN} ${WRKSRC}/README.TXT ${PREFIX}/share/doc/snes9x ${INSTALL_MAN} ${WRKSRC}/readme.txt ${PREFIX}/share/doc/snes9x
${INSTALL_MAN} ${WRKSRC}/TODO.TXT ${PREFIX}/share/doc/snes9x ${INSTALL_MAN} ${WRKDIR}/${DISTNAME}/readme.unix \
${PREFIX}/share/doc/snes9x


.include "../../mk/bsd.prefs.mk" .include "../../mk/bsd.prefs.mk"


Expand All @@ -38,25 +41,21 @@ PKG_SUPPORTED_OPTIONS= mmx


.include "../../mk/bsd.options.mk" .include "../../mk/bsd.options.mk"


MAKE_ENV+= THREAD_SOUND=1
.if ${MACHINE_ARCH} == "i386" .if ${MACHINE_ARCH} == "i386"
MAKE_ENV+= USING_I386=1 CONFIGURE_ARGS+= --with-assembler
.if !empty(PKG_OPTIONS:Mmmx)
CONFIGURE_ARGS+= --with-mmx
.endif
.if ${OBJECT_FMT} == "a.out" .if ${OBJECT_FMT} == "a.out"
MAKE_ENV+= FILEFORMAT=aoutb MAKE_ENV+= FILEFORMAT=aoutb
MAKE_ENV+= _ASM_UNDERBARS=1 MAKE_ENV+= _ASM_UNDERBARS=1
.else .else
MAKE_ENV+= FILEFORMAT=elf MAKE_ENV+= FILEFORMAT=elf
.endif .endif
MAKE_ENV+= ZSNESFX=1
MAKE_ENV+= ZSNESC4=1
MAKE_ENV+= ASMCPU=1
.if !empty(PKG_OPTIONS:Mmmx)
MAKE_ENV+= ASMKREED=1
.endif
.endif .endif


.if exists(${X11BASE}/lib/libXxf86dga.a) .if exists(${X11BASE}/lib/libXxf86dga.a)
MAKE_ENV+= NETBSD_USE_DGA=1 CONFIGURE_ARGS+= --with-extensions
.endif .endif


.if exists(/usr/include/usb.h) || exists(/usr/include/usbhid.h) .if exists(/usr/include/usb.h) || exists(/usr/include/usbhid.h)
Expand Down
15 changes: 7 additions & 8 deletions emulators/snes9x/PLIST
@@ -1,11 +1,10 @@
@comment $NetBSD: PLIST,v 1.1 2001/10/31 23:53:23 zuntum Exp $ @comment $NetBSD: PLIST,v 1.2 2006/03/18 15:56:00 ben Exp $
bin/snes9x bin/snes9x
bin/offsets bin/offsets
share/doc/snes9x/CHANGES.TXT share/doc/snes9x/changes.txt
share/doc/snes9x/COPYRIGHT.TXT share/doc/snes9x/hardware.txt
share/doc/snes9x/HARDWARE.TXT share/doc/snes9x/porting.txt
share/doc/snes9x/HOW2PORT.TXT share/doc/snes9x/problems.txt
share/doc/snes9x/PROBLEMS.TXT share/doc/snes9x/readme.txt
share/doc/snes9x/README.TXT share/doc/snes9x/readme.unix
share/doc/snes9x/TODO.TXT
@dirrm share/doc/snes9x @dirrm share/doc/snes9x
40 changes: 21 additions & 19 deletions emulators/snes9x/distinfo
@@ -1,20 +1,22 @@
$NetBSD: distinfo,v 1.11 2005/11/17 14:21:02 joerg Exp $ $NetBSD: distinfo,v 1.12 2006/03/18 15:56:00 ben Exp $


SHA1 (s9xs139.zip) = 15acf6d8a31dc51b26a42abf747cec1b72c2aa29 SHA1 (snes9x-1.43-src.tar.gz) = c6883c451aeb442030862ec19a8dca25ee02d82c
RMD160 (s9xs139.zip) = b7ede5bda5adb4ee92428264d689624212becc5d RMD160 (snes9x-1.43-src.tar.gz) = d2003f7afb208109405b41f4eec586b93518f9b2
Size (s9xs139.zip) = 666463 bytes Size (snes9x-1.43-src.tar.gz) = 1016251 bytes
SHA1 (patch-aa) = 29b335e4e6f2057ae22e3d9e0ed2e1483e440ef6 SHA1 (patch-aa) = a21b9902095de675cbff28787a2f3cd7af3292cb
SHA1 (patch-ab) = b99893934074d8693a9609d49e49953ade2b2062 SHA1 (patch-ab) = 7dfd2d7a92caceed82549fed3f175746871b3985
SHA1 (patch-ac) = e54f4fff397dd4ca3be28711fd23c4fbef57ed54 SHA1 (patch-ac) = c1e35daa7e53536d05c1633b78c00d511ae7feb5
SHA1 (patch-ad) = 72cc9904c74e0668cce450fcada24453aec344e4 SHA1 (patch-ad) = c5febcdd6b5bf0f3b4b5d8b0bc19c4716434a23e
SHA1 (patch-ae) = cb2ed8dc3ad409ffb88cb9851b04c6c42c3b2b0e SHA1 (patch-ae) = c4258835925ee3a6e3606ad895ff697f379cb22f
SHA1 (patch-af) = 302967c91a1e0b384c4990687fb11bf236202783 SHA1 (patch-af) = 19d86d23e3af2c0cef09b8eeff1303d6f100c2f8
SHA1 (patch-ag) = 79a6339bf1e1b7b8f1d7977df1a8096ea96abea7 SHA1 (patch-ag) = 64de847f4b3f11386567c6e5caa5e253d0146a0c
SHA1 (patch-ah) = 60bd35e51faca36fbd8d8d6354487554af17fe7a SHA1 (patch-ah) = eb5ff0fed972644f9c8599ec5eb6a3cd3ce160cb
SHA1 (patch-ai) = 2f522a560577aff89af9efa7a6b129faa99670fd SHA1 (patch-ai) = 06bd00790d1a84ee31114de4205bba22b48cd547
SHA1 (patch-aj) = 131a2a64a14ebeabb8e988b1882acbb533e893d6 SHA1 (patch-aj) = f5cdf8e917f787d7e9fc657ed7197a2c28460375
SHA1 (patch-ak) = 4154979877ac98976a6eaf364030b840e8715e30 SHA1 (patch-ak) = a15a54d7b0585ce84bf9d04f200c2d1f3e1c615c
SHA1 (patch-al) = 7c703d57d7b0058d9ef7e598c7a03e18a9a234f8 SHA1 (patch-al) = 71043b1ec2ee66399ef7a10f6258f15b12dab980
SHA1 (patch-am) = 0630f836f8f7d44ee5476a73de4f7934897814f2 SHA1 (patch-am) = 31d0ccf2e6124126929d9064ef2212d2a8bb963e
SHA1 (patch-an) = 2cbcd9376cdd98734a7dcd7eba63698946323474 SHA1 (patch-an) = 3ae10526aa66ef235c223e891c67b4aed6fc48df
SHA1 (patch-ao) = 2cb334bed163ef1965fb42ab5f0fa9cd919af835 SHA1 (patch-ao) = b5b721563aee09909b7d6143bd699ec86ccaed3b
SHA1 (patch-ap) = 1c1b7f1b45d75688870a94dadadb6da055e99cd0
SHA1 (patch-aq) = 6c591ec195bd06c2d0dfd6a947d0e57657fb306e
135 changes: 23 additions & 112 deletions emulators/snes9x/patches/patch-aa
@@ -1,57 +1,17 @@
$NetBSD: patch-aa,v 1.11 2005/11/17 14:21:02 joerg Exp $ $NetBSD: patch-aa,v 1.12 2006/03/18 15:56:00 ben Exp $
--- Makefile.orig Tue Sep 18 08:03:58 2001
+++ Makefile Sun Sep 21 19:48:50 2003 --- Makefile.in.orig 2006-03-18 05:54:27.000000000 -0800
@@ -1,14 +1,14 @@ +++ Makefile.in
-ZSNESFX=1 @@ -113,6 +113,20 @@ SPC7110OBJ=spc7110.o
-ZSNESC4=1 OBC1OBJ=obc1.o
-ASMCPU=1 SETAOBJ=seta.o seta010.o seta011.o seta018.o
+#ZSNESFX=1
+#ZSNESC4=1
+#ASMCPU=1
#SPC700ASM=1
NETPLAY=1
UNZIP=1
#GLIDE=1
#OPENGL=1
#GUI=1
-THREAD_SOUND=1
-ASMKREED=1
+#THREAD_SOUND=1
+#ASMKREED=1

ifdef ZSNESFX
FXOBJ=i386/fxemu2b.o i386/fxemu2.o i386/fxemu2c.o i386/fxtable.o i386/sfxproc.o i386/zsnes.o
@@ -34,13 +34,20 @@
C4NO_DEPENDS=zsnes_c4
endif

+ifdef NETBSD_USE_DGA
LINUXDEFINES=-DUSE_DGA_EXTENSION -DUSE_VIDMODE_EXTENSION
+DGALIBS=-lXxf86dga -lXxf86vm
+endif

ifdef SPC700ASM
SOUNDOBJ=spctool/spc700.o spctool/dsp.o spctool.o spctool/soundmod.o spc.o
SOUNDDEFINES=-DSPCTOOL
else
+ifdef USING_I386
SOUNDOBJ=spc700.o soundux.o apu.o i386/spc.o
+else
+SOUNDOBJ=spc700.o soundux.o apu.o
+endif
SOUNDDEFINES=-DSPC700_C
endif

@@ -58,6 +65,20 @@
KREEDOBJ=2xsai.o
endif


+ifdef USBJOY +ifdef USBJOY
+ifdef USBHID_H +ifdef USBHID_H
+USBJOYDEFINES=-DJOYSTICK_SUPPORT -DHAVE_USBHID_H +USBJOYDEFINES=-DHAVE_USBHID_H
+EXTRALIBS+=-lusbhid +EXTRALIBS+=-lusbhid
+else +else
+USBJOYDEFINES=-DJOYSTICK_SUPPORT +USBJOYDEFINES=
+EXTRALIBS+=-lusb +EXTRALIBS+=-lusb
+endif +endif
+endif +endif
Expand All @@ -61,10 +21,10 @@ $NetBSD: patch-aa,v 1.11 2005/11/17 14:21:02 joerg Exp $
+endif +endif
+ +
OBJECTS=$(CPUOBJ) $(SOUNDOBJ) apudebug.o $(FXOBJ) $(C4OBJ) \ OBJECTS=$(CPUOBJ) $(SOUNDOBJ) apudebug.o $(FXOBJ) $(C4OBJ) \
cpu.o sa1.o debug.o sdd1.o tile.o srtc.o \ cpu.o sa1.o debug.o sdd1.o tile.o srtc.o gfx.o memmap.o clip.o \
gfx.o memmap.o snaporig.o clip.o dsp1.o \ dsp1.o ppu.o dma.o snes9x.o data.o globals.o \
@@ -81,9 +102,10 @@ @@ -136,9 +150,10 @@ OBJECTS += jma/s9x-jma.o jma/7zlzma.o jm
UNZIPDEFINES=-DUNZIP_SUPPORT JMADEFINES=-DJMA_SUPPORT -fexceptions
endif endif


+EXTRALIBS += ${LIBOSSAUDIO} +EXTRALIBS += ${LIBOSSAUDIO}
Expand All @@ -76,70 +36,21 @@ $NetBSD: patch-aa,v 1.11 2005/11/17 14:21:02 joerg Exp $
endif endif


ifdef GLIDE ifdef GLIDE
@@ -113,9 +135,13 @@ @@ -206,6 +221,8 @@ $(AIDODEFINES) \
CC = gcc
NASM = nasm

-INCLUDES=-I/usr/X11R6/include -I/usr/local/include
+INCLUDES=-I${X11BASE}/include

-OPTIMISE= -O6 -mpentium -fomit-frame-pointer -fno-exceptions -Wall -W -pedantic -pipe
+ifdef USING_I386
+OPTIMISE= -O6 -mpentium -fomit-frame-pointer -fno-exceptions -Wall -W -pipe
+else
+OPTIMISE=-fno-exceptions -Wall -W -fomit-frame-pointer
+endif

#OPTIMISE=-g -fno-exceptions
#-DMITSHM
@@ -124,10 +150,8 @@
-Ii386 \
-I. \
-Iunzip \
--DJOYSTICK_SUPPORT \
-DZLIB \
-DVAR_CYCLES \
--DDEBUGGER \
-DCPU_SHUTDOWN \
-DSPC700_SHUTDOWN \
-DOLD_COLOUR_BLENDING \
@@ -142,7 +166,8 @@
$(OPENGLDEFINES) \
$(GUIDEFINES) \
$(KREEDDEFINES) \ $(KREEDDEFINES) \
--DNO_INLINE_SET_GET $(SDD1DEFINES) \
$(JOYDEFINES) \
+$(USBJOYDEFINES) \ +$(USBJOYDEFINES) \
+$(EXTRADEFINES) +$(EXTRADEFINES) \

-DNO_INLINE_SET_GET @SYSDEFINES@
#-DSOUND
#-DDEBUGGER
@@ -154,9 +179,9 @@
CFLAGS=$(CCFLAGS)

.SUFFIXES: .o .cpp .c .cc .h .m .i .S .asm .obj
-LDLIBS = -L/usr/X11R6/lib
+LDLIBS = -Wl,-R${X11BASE}/lib -L${X11BASE}/lib

-all: offsets snes9x ssnes9x
+all: offsets snes9x

#ggisnes9x
#xf86snes9x
@@ -182,7 +207,7 @@
./offsets >i386/offsets.h

snes9x: $(OBJECTS) unix/x11.o $(GLIDEOBJS) $(OPENGLOBJS) $(GUIOBJS) $(KREEDOBJ)
- $(CCC) $(INCLUDES) -o $@ $(OBJECTS) $(GLIDEOBJS) $(OPENGLOBJS) $(KREEDOBJ) unix/x11.o $(GUIOBJS) $(LDLIBS) $(GLIDELIBS) $(OPENGLLIBS) $(GUILIBS) -lXxf86dga -lXxf86vm -lXext -lX11 $(EXTRALIBS) -lz -lm
+ $(CCC) $(INCLUDES) -o $@ $(OBJECTS) $(GLIDEOBJS) $(OPENGLOBJS) $(KREEDOBJ) unix/x11.o $(GUIOBJS) $(LDLIBS) $(GLIDELIBS) $(OPENGLLIBS) $(GUILIBS) $(DGALIBS) -lXext -lX11 $(EXTRALIBS) -lz -lm


ssnes9x: $(OBJECTS) unix/svga.o $(GLIDEOBJS) #-DOLD_COLOUR_BLENDING
$(CCC) $(INCLUDES) -o $@ $(OBJECTS) $(GLIDEOBJS) unix/svga.o $(LDLIBS) $(GLIDELIBS) -lvga -lvgagl -lz $(EXTRALIBS) -lm @@ -302,7 +319,7 @@ s9xserver: $(SERVER_OBJECTS)
@@ -212,7 +237,7 @@ sh-elf-as -little $(srcdir)/$*.s -o $@
$(CCC) $(INCLUDES) -c -E $(CCFLAGS) $*.S -o $@


.asm.o: .asm.o:
- $(NASM) -f elf $(FXDEFINES) -i. -ii386 -o $@ $*.asm - $(NASM) -f elf $(FXDEFINES) -I$(srcdir)/ -I$(srcdir)/$(CPU)/ -o $@ $(srcdir)/$*.asm
+ $(NASM) -f ${FILEFORMAT} $(FXDEFINES) $(EXTRADEFINES) -i. -ii386 -o $@ $*.asm + $(NASM) -f ${FILEFORMAT} $(FXDEFINES) $(EXTRADEFINES) -I$(srcdir)/ -I$(srcdir)/$(CPU)/ -o $@ $(srcdir)/$*.asm


.obj.o: .obj.o:
cp $*.obj $*.o cp $*.obj $*.o
12 changes: 6 additions & 6 deletions emulators/snes9x/patches/patch-ab
@@ -1,11 +1,11 @@
$NetBSD: patch-ab,v 1.2 2001/07/17 15:31:25 wiz Exp $ $NetBSD: patch-ab,v 1.3 2006/03/18 15:56:00 ben Exp $


--- i386/asmstruc.h.orig Wed Feb 28 22:12:23 2001 --- i386/asmstruc.h.orig 2004-12-30 14:15:44.000000000 -0800
+++ i386/asmstruc.h +++ i386/asmstruc.h
@@ -38,7 +38,7 @@ @@ -86,7 +86,7 @@
* Super NES and Super Nintendo Entertainment System are trademarks of Super NES and Super Nintendo Entertainment System are trademarks of
* Nintendo Co., Limited and its subsidiary companies. Nintendo Co., Limited and its subsidiary companies.
*/ *******************************************************************************/
-#if defined(__DJGCC) || defined(MICROSOFT_C) || defined(_WINDOWS) -#if defined(__DJGCC) || defined(MICROSOFT_C) || defined(_WINDOWS)
+#if defined(__DJGCC) || defined(MICROSOFT_C) || defined(_WINDOWS) || defined(_ASM_UNDERBARS) +#if defined(__DJGCC) || defined(MICROSOFT_C) || defined(_WINDOWS) || defined(_ASM_UNDERBARS)
#define S9xTraceMessage _S9xTraceMessage #define S9xTraceMessage _S9xTraceMessage
Expand Down
20 changes: 12 additions & 8 deletions emulators/snes9x/patches/patch-ac
@@ -1,14 +1,18 @@
$NetBSD: patch-ac,v 1.3 2002/07/08 01:04:10 kristerw Exp $ $NetBSD: patch-ac,v 1.4 2006/03/18 15:56:00 ben Exp $
--- 2xsai.cpp.orig Mon Jul 8 01:58:01 2002
+++ 2xsai.cpp Mon Jul 8 01:58:55 2002 --- 2xsai.cpp.orig 2004-12-30 14:15:47.000000000 -0800
@@ -46,10 +46,6 @@ +++ 2xsai.cpp
@@ -95,13 +95,6 @@
#include "port.h" #include "port.h"
#include "gfx.h" #include "gfx.h"


-#if (defined (__i386__) || defined (__i486__) ||\ -#if (defined(USE_X86_ASM) && (defined (__i386__) || defined (__i486__) || \
- defined (__i586__) || defined (__WIN32__) || defined (__DJGPP)) - defined (__i586__) || defined (__WIN32__) || defined (__DJGPP)))
-#define MMX -# ifndef MMX
-# define MMX
-# endif
-#endif -#endif
-
extern "C" extern "C"
{ {

9 changes: 5 additions & 4 deletions emulators/snes9x/patches/patch-ad
@@ -1,8 +1,8 @@
$NetBSD: patch-ad,v 1.2 2001/07/17 15:31:25 wiz Exp $ $NetBSD: patch-ad,v 1.3 2006/03/18 15:56:00 ben Exp $


--- netplay.cpp.orig Wed Feb 28 22:12:22 2001 --- netplay.cpp.orig 2004-12-30 14:15:45.000000000 -0800
+++ netplay.cpp +++ netplay.cpp
@@ -75,8 +75,12 @@ @@ -126,9 +126,13 @@


#ifdef USE_THREADS #ifdef USE_THREADS
#include <pthread.h> #include <pthread.h>
Expand All @@ -11,7 +11,8 @@ $NetBSD: patch-ad,v 1.2 2001/07/17 15:31:25 wiz Exp $
+#else +#else
#include <sched.h> #include <sched.h>
#include <semaphore.h> #include <semaphore.h>
+#endif
#endif #endif
+#endif


#include "snes9x.h" #include "snes9x.h"
#include "cpuexec.h"
6 changes: 3 additions & 3 deletions emulators/snes9x/patches/patch-ae
@@ -1,8 +1,8 @@
$NetBSD: patch-ae,v 1.2 2001/07/17 15:31:25 wiz Exp $ $NetBSD: patch-ae,v 1.3 2006/03/18 15:56:00 ben Exp $


--- port.h.orig Wed Feb 28 22:12:22 2001 --- port.h.orig 2004-12-30 14:15:47.000000000 -0800
+++ port.h +++ port.h
@@ -188,6 +188,10 @@ @@ -281,6 +281,10 @@ EXTERN_C void MixSound(void);
#define TITLE "Snes9X: Linux" #define TITLE "Snes9X: Linux"
#endif #endif


Expand Down
6 changes: 3 additions & 3 deletions emulators/snes9x/patches/patch-af
@@ -1,8 +1,8 @@
$NetBSD: patch-af,v 1.3 2001/07/17 15:31:25 wiz Exp $ $NetBSD: patch-af,v 1.4 2006/03/18 15:56:00 ben Exp $


--- soundux.h.orig Wed Feb 28 22:12:23 2001 --- soundux.h.orig 2004-12-30 14:15:47.000000000 -0800
+++ soundux.h +++ soundux.h
@@ -79,7 +79,7 @@ @@ -127,7 +127,7 @@ typedef struct {
int stereo; int stereo;
bool8 sixteen_bit; bool8 sixteen_bit;
bool8 encoded; bool8 encoded;
Expand Down

0 comments on commit b0cdd1f

Please sign in to comment.