 |
Snes9x.COM: News |
|
|
|
 |
 |
|
 |
Linux Snes9x v1.37c Released + Source Code |
 |
The changes since the last release Windows release:
- Added fix for Captain America's corrupt graphics - a ROM
bug causes it to read from what I thought should be an
unmapped memory area, but it expects the value returned
to be zero.
- Added code to support games that switch to the hi-res.
SNES screen mode part way down the screen while using the
3dfx bi-linear filter mode. The code basically has to
back out of the speed up hack it was using when the game
switches resolutions.
- Fixed support for games that have mixed lo-res.
(256x224), medium res. (512x224) and hi-res. (512x448)
all on the same screen - corrects the display of Majin
Tensei 2.
- Added support for games that use sub-screen addition to
the back-drop layer while displaying hi-res. graphics -
something I thought the SNES couldn't do but the game
Marvelous uses this.
- Reworked the UNIX/Linux output image handling code: the
image doesn't always have to be scaled when hi-res.
support is enabled, the PutImage operation only updates
the area of the screen it has to, the SNES image is now
always centred in the window/full-screen area and if the
SNES image changes size between frames, the old screen
areas are now correctly cleared.
- Fixed the corrupt graphics problem during the battle
scene of Last Bible 3 - it requires that previously
unknown DMA mode 5 should just act the same as DMA mode
1.
- Fixed a nasty bug when H-IRQs were being reused on the
same scanline - a logic bug could cause H-DMA processing
for that line to be skipped. Was causing the bridge and
the start banners to be the wrong colours in Top Gear 2.
- Added Kreed's display processing modes to the Linux port,
including his new asm version of the Super2xSaI mode and
the new software bi-linear filtering mode.
- Think I might have figured out the odd Mode 7 glitch
problems the games Illusion and Gaia and Chase HQ were
having. My original fix was to mod the centre X & Y
values with 1024, but looks like the true fix is to mod X
+ horizontal offset and Y + vertical offset with 1024
when screen wrapping is enabled.
- Disabled H-DMA'ing into V-RAM via registers 2118/2119.
The game Hook deliberately does this causing graphic
corruption while dialog boxes are displayed. Maybe the
real SNES disallowed this and it was left in the game by
mistake? Not sure what effect the game was trying to
produce because disabling the emulation of this feature
doesn't seem to affect the game at all, other than
stopping the corruption. - Also fixes graphics junk
problem on first screen of Bugs Bunny.
- Added a 'region-free' timing hack for Power Rangers Fight
- without it the NTSC version was displaying badly
glitching graphics; I'd already fixed the PAL version.
- Added true priority-per-pixel mode 7 support (the
previous support was just a hack to get the colours
correct) - level 2 of Contra 3 used this feature.
- The Japanese, German, French and Spanish version of
Illusion of Gaia needs the slow SPC700 timing.
- Deleted the Breath of Fire 2 S-RAM hack for the hacker
intro version - according to reports it was causing
problems for the non-hacked version.
- Legend, the PAL version, never sets the sound master
volume contro
Gary, 28-2-2001 17:40:00
|
|
 |
|
 |
 |
 |
 |
|
 |
Linux (PowerPC) updated to v1.34a |
 |
If your running Linux on your PowerPC then try the latest version of Snes9x. It should have working sound. Enjoy.
Jerremy, 26-1-2001 04:05:00
|
|
 |
|
 |
 |
 |
 |
|
 |
New Windows Snes9x Release v1.35 |
 |
Finally, a new Windows port release! Much code has changed since the last
release. Hopefully, the only things you'll notice are that more games work,
several emulation bugs have been fixed and the GUI has a few more 'nice-to-haves'.
The sound CPU timing has been changed rather radically in this release
based on evidence I gained from tracing Earth Worm Jim 2; this seems to
get several more games working and fixes some lock up problems a few games
where having. Unfortunately, I've found four games that object to the new
timing and I've had to special cased them; I guess there will be more.
Please let me know if you find a game that worked in v1.33a but doesn't
work now.
There was no v1.34 Windows release, so this new release has all the
changes from v1.33a to v1.34 (see the entry below for details) plus the
following additional changes:
-
Added a recently played game list to the Windows port File menu so you
can quickly load up your favourite games.
-
Included IPS patching support based on code from Neill Corlett - just rename
the patch file to match your ROM image name but with a .ips extension and
copy it into your ROM or freeze-file folder.
-
Added John Weidman's S-RTC, (Real Time Clock) emulation code. The only
game that seems to use it is Dai Kaijyu Monogatari II.
-
Included code from Nose000 for games with 128Kbytes of S-RAM. Now Sound
Novel-Tcool, Thoroughbred Breeder 3, RPG-Tcool 2 and Dezaemon are supported.
-
The Windows port now has an option to make the 'turbo speed' button a toggle
button.
-
The optimised fixed colour addition/subtraction code was ignoring the colour
window. Thanks to John Weidman for pointing this out.
-
Added mode 7 and hi-res. hack for Dezaemon from Nose000 - the mode 7 hack
looks interesting (to me); I wonder if some other games would benefit?
-
Both Tales of Phantasia and Star Ocean need custom sound CPU timing. Hmm.
That's 4 ROMs now, there will be more... That means I still haven't discovered
all the major SNES timing quirks. :-(
-
Windows port now has an option to save the S-RAM data at any time.
-
Windows port saving SPC dumps now auto-increments the filename.
-
Added work-around for a Super Robot Wars Ex ROM bug - the game was checking
the wrong PPU register for end of h-blank. The game must have only worked
by chance rather than by design on a real SNES.
Have fun!
Gary, 21-1-2001 19:18:00
|
|
 |
|
 |
 |
 |
 |
|
 |
Snes9x v1.34a Source Code Released |
 |
I've uploaded the Snes9x source code so Snes9x porters can update their ports. Still not completed the translation of the ZSNES C4 asm emulation code into C, sorry.
Gary, 12-1-2001 17:57:00
|
|
 |
|
 |
 |
 |
 |
|
 |
New Linux Snes9x Release v1.34 |
 |
Its been a long time since the last Snes9x, but I have been busy, mainly fixing long-standing emulation bugs and adding a few new features, notably being able to load ZSNES freeze-file game saves.
I want to do some work on the Windows port GUI before I release a Windows version, but keep checking back, it should be in a few days or so.
Anyway, here's the full list of changes in the Linux release:
-
Corrected the colour addition/subtraction and halve the result code not
to halve the result when only the fixed colour is used, i.e. the sub-screen
is clear. Discovered and fixed this awhile ago, but I accidentally reintroduced
the bug when adding some optimisations a few versions back.
-
Finally cleared the last of the offset per tile background mode bugs. There
was something odd about the tile at the left-hand edge of the screen that
I couldn't figure out - well now I have. Yoshi's Island level 6 boss screen,
Mario RPG mine cart screen and Jim Power title screen now all display correctly.
-
Made reading blank areas of the SNES memory map return the middle byte
of the address - fixes Home Alone which tries to execute code in an empty
part of its memory map but only works because the real SNES seems to return
the middle byte of the address - $60 in this case, which corresponds to
the ReTurn from Subroutine instruction.
-
Added auto-cycle skipping disable for Earth Worm Jim 2 and several other
games that spool sample data using H-DMA as the sample is being played.
Improves some sound effects in these games.
-
Fixed joy-pad routines to only report up or left if down or right are also
pressed respectively. Works around a game bug in Empire Strikes Back in
the asteroid stage where the game crashes if both left and right are pressed
- something impossible to do on the original SNES game-pad.
-
Added custom SPC700 timing for Rendering Ranger R2 - the game now works
with full sound. No idea why it needs custom SPC700 timing.
-
The ROM type detection was broken for Treasure Hunter G and Test Drive
2 - fixed the code so type 2 ROMs can be LoROM.
-
Adjusted the main CPU cycles per scan-line from 341 to 342 to give an exact
match for the timing required for Earth Worm Jim 2. All EWJ2 needs now
for perfect sound emulation is a method of synchronising the emulation
speed to the host hardware's sound card playback rate and a fast CPU. The
Linux port already has this but seems to be broken because games play at
double-speed when this option is enabled.
-
Some SPC700 code in Earth Worm Jim 2 seemed to prove that I had guessed
the clock speed of the SPC700 sound CPU incorrectly - out by almost a factor
of two, in fact. Changed the relative emulated clock speed of SPC700. Now
Chrono Trigger doesn't lock up at certain points anymore, the special SPC700
timing for games written by the Human Software company isn't required and
you can hear some more of the sound samples in Earth Worm Jim 2, etc.
-
H-IRQ triggering code was broken - if a ROM turned on H-IRQ but later turned
it off, Snes9x could continued to generate H-IRQs, crashing some games.
Added a generic test for Human Entertainment games - they need special
sound CPU timing to work. Gets Taekwon-Do working.
-
Disabled offset-per-tile mode for Theme Park; the world map screen is corrupt
with it enabled.
-
Yet more changes to the offset-per-tile backgrounds modes 2 and 4. Added
64 tile wide screen support for Mario RPG's mine cart ride and fixed multiple
bugs with the handling of horizontal offset-per-tile used in Chrono Trigger's
fade in of the space ship.
-
New feature: Snes9x can now load ZSNES freeze state files! Just copy them
into the freeze file folder and Snes9x will load them when you load a freeze
file, but only if the corre
Gary, 6-1-2001 09:09:00
|
|
 |
|
 |
 |
Go back in time
|
|
|
|