Toggle menu
Toggle personal menu
Not logged in
Your IP address will be publicly visible if you make any edits.

Surreal64CE Xbox: Difference between revisions

From GameBrew
No edit summary
No edit summary
 
(8 intermediate revisions by the same user not shown)
Line 1: Line 1:
{{Infobox XBOX homebrew
{{Infobox XBOX Homebrews
| title      = Surreal64CE
| title      = Surreal64CE
| image      = [[image:surreal 64.png|250px]]
| image      = surreal64ce2.png
| type        = Console
| type        = Console
| version    = B6.1 Beta 6 R342
| version    = B6.1 Beta 7 r352
| licence     = Mixed
| license     = Mixed
| author      = weinerschnitzel
| description = Nintendo 64 emulator for Xbox.
| website    = http://surreal64ce.sf.net
| lastupdated = 2017/12/17
| download    = https://www.gamebrew.org/images/over100m/Surreal64_CE_B6_1_Beta_r342.rar
| format      = XBE
| author      = weinerschnitzel, Ez0n3, Joel Middendorf, freakdave
| website    = http://surreal64ce.wikidot.com/
| download    = https://www.emuxtras.net/forum/viewtopic.php?p=79758#p79758
| source      = https://sourceforge.net/projects/surreal64ce/
| source      = https://sourceforge.net/projects/surreal64ce/
}}
}}
<youtube>KQ3v9nuHcFY</youtube>
Surreal64 Community Edition (Surreal64 CE for short) is a Nintendo64 emulator for the Microsoft Xbox. It is a continuation of Surreal 64, which was a port of three existing emulators for PC. Those emulators included 1964 0.8.5, Project 64 1.4, and UltraHLE.
 
Surreal64 CE is a modification made by several Xbox-Scene community members. This project is built off of Surreal64 XXX, and was previously known as Surreal64 XXX CE. The main goal of the project is to improve Surreal64 with the addition of:
*New or updated N64 emulators.
*New or updated audio, video and RSP plugins.
*Improved controls.
*A user friendly and skinnable ROM launcher.
 
==Installation==
The rom folder is set to D:\Roms\ by default and is editable in the Surreal.ini. The roms must be located in the directory specified in the ini.
 
The actual path may be different if you have the rom path set to a folder outside the directory containing the xbe executables. The folder containing the default.xbe will become the "root" path when it is launched.
 
The actual path may be E:\Emulators\Surreal64CE\, but when the launcher is running, it treats Surreal64CE\ as the root D:\. If the roms reside outside the "root", a full path must be specified. Otherwise, you can use the relative path using D:\ as the root (IE: D:\Roms\, D:\Skins\, D:\Media\).
 
If your roms don't show up in the rom list, you can try to:
*Hit the "Y" button while the rom list is showing and no menus are open.
*Delete E:\TDATA\a64fea57\RomlistCache.dat
*Delete E:\TDATA\64ce64ce\RomlistCache.dat
 
See the [http://surreal64ce.wikidot.com/manual online manual] For more information.
 
==User guide==
===FAQ===
'''Q. What does Range Fog and Linear Fog mean?'''
 
Range Fog is the default fog method and usually correct method fog. Linear Fog refers to depth based fog on a linear filter.
 
It is less costly, but requires the Software Vertex Clipper, which itself uses more resources than the old hardware method.


[[File:surreal 64 zelda gameplay.jpg|400px]]
Linear Fog can create a more visually appealing thickness of fog, but some less desirable artifacts may appear. Rice 6.12 only.                     
[[File:surreal 64 menu.jpg|400px]]


==Compatibility list WIP==
'''Q: Software Vertex Clipper, what?'''


https://docs.google.com/spreadsheets/d/1oKgtu5GzvWCui-hb1Vlf481viAuodHec7HIhgnKGkDY/edit#gid=0
The Software Vertex Clipper uses code that also relies on DirectX features unsupported by XBOX. You can witness the missing side textures on treasure chests in Legend of Zelda.  


===new update of the N64 emulator for xbox.===
The rest of the functionality is enough to work, and it also corrects some bad vertex clipping seen in Conker's BFD in the level "Enter the Vertex."
[[:File:Surreal64_CE_B6.1_Beta7_r352.7z|Surreal64 CE B6.1 Beta7 r352]]


==Changes/Additions==
You can enable the Software Vertex Clipper by selecting "Software Vertex Processing" in Video Settings. Rice 6.12 only.
===Core Updates===                                             
*1964 1.1 added                                                     
-Starting in 2009, freakdave, Ez0n3 and schibo all gave their       
efforts to porting this to Xbox. I only finished what they started. 
*PJ64 1.6 added                                                     
-Before the leak gained publicity in 2012, Mudlord and Squarepusher 
shared their discovery with me and the xbox port happened shortly   
after.                                                               
*UltraHLE updated to match UHLE Alpha codebase                       
-UHLE Alpha uses some larger buffers for sound and textures, and has 
very slight changes to syncing.                                     
                                                                     
===RSP Plugin Updates===                                               
*RSP Recompiler updated to 1.7.0.9                                   
*HLE RSP Plugin updated with MusyX HLE                               
-MusyX will require use of "AudioMusyX" until a proper HLE audio     
plugin is ported.                                                    
                                                                     
===Video Plugin Updates===                                             
*Rice Video 6.12 updated with several changes from mainline and some 
backport fixes from Rice 5.60.                                       
-Near Plane Clipping hack for Zelda                                 
-HW vertex handling from Rice Video 5.60                             
-Pixel Shader combiner switched to PC version (faster and complete) 
-Software Vertex Clipper as an option for corner cases               
-Glide64 LOD fix for correct fog depth                               
-Moveword insert matrix fix for SSB                                 
-Fill_Rect primColor fix for MK64                                   
-Various renames/refactors and other less noticeable bug fixes       
                                                                     
===Input Plugin Updates===                                             
*Deadzone threshold decreased for better button-to-analog mapping   
                                                                     
                                                                     
==Frequently Asked Questions==


                                                                     
'''Q: What does Range Fog and Linear Fog mean?'''
                         
A: Range Fog is the default fog method and usually correct method   
fog. Linear Fog refers to depth based fog on a linear filter. It is 
less costly, but requires the Software Vertex Clipper, which itself 
uses more resources than the old hardware method. Linear Fog can     
create a more visually appealing thickness of fog, but some less     
desirable artifacts may appear. Rice 6.12 only.                     
                                                                     
'''Q: Software Vertex Clipper, what?'''   
                               
A: The Software Vertex Clipper uses code that also relies on DirectX 
features unsupported by XBOX. You can witness the missing side       
textures on treasure chests in Legend of Zelda. The rest of the     
functionality is enough to work, and it also corrects some bad       
vertex clipping seen in Conker's BFD in the level "Enter the Vertex."
You can enable the Software Vertex Clipper by selecting "Software   
Vertex Processing" in Video Settings. Rice 6.12 only.               
                                                                     
'''Q: 1964 1.1 and PJ64 1.6 support cheats, what gives?'''   
           
A: I never implemented a menu scheme to modify and activate cheats. 
In the meantime, PJ64 1.6 can load "permanent cheats" that correct   
some big issues. (i.e. Zelda SubScreen Delay Fix, and Pokemon Snap) 
                                                                     
'''Q: I am experiencing graphics glitches in X game.'''
'''Q: I am experiencing graphics glitches in X game.'''
                   
 
A: That's not really helpful. :/ The most common graphics issues    
The most common graphics issues result from Rice Video's lack of [Hardware] Framebuffer Emulation.
result from Rice Video's lack of [Hardware] Framebuffer Emulation.  
 
Garbled textures, missing effects, bad vertex clipping, and black/  
Garbled textures, missing effects, bad vertex clipping, and black/missing textures can be a result of a plugin incompatibility rather than a port incompatibility.  
missing textures can be a result of a plugin incompatibility rather  
 
than a port incompatibility. Check your PC for compatibility with    
Check your PC for compatibility with the closest Rice Video plugin to determine if the bug is in fact a regression or something that can be fixed.  
the closest Rice Video plugin to determine if the bug is in fact a  
 
regression or something that can be fixed. Next, you can do some    
Next, you can do some research to find out what type of bug you are encountering and if it can be fixed. [http://gliden64.blogspot.com/ Gonetz' GLideN64 dev blog] has great explanations for N64 HLE graphics problems.
research to find out what type of bug you are encountering and if it
can be fixed. Emutalk.net forums and BigHead's compaitibility list   
are helpful here. Gonetz' GLideN64 dev blog has great explanations  
for N64 HLE graphics problems here: http://gliden64.blogspot.com/   
After that, report the game, tell me exactly whats wrong, what       
emulator and plugins you're using, include a screenshot, and I might 
look into fixing it. Otherwise... Don't bother! :P                   
                                                                        
                                                                        
'''Q: I am experiencing a crash after X in Y game.'''
'''Q: I am experiencing a crash after X in Y game.'''
                     
 
A: Make sure you are giving the emulator enough RAM, and try setting
Make sure you are giving the emulator enough RAM, and try setting Texture Memory to AUTO.  
Texture Memory to AUTO. Some games handle the auto texture memory    
 
trick better than others. If crashes persist, report the game,       
Some games handle the auto texture memory trick better than others.  
emulator & plugins, how to reproduce the crash, and any combination 
 
of plugins that worked in the past.                                 
                                                                     
'''Q: PJ64 1.6 doesn't play opening animations all of the time. Why?'''
'''Q: PJ64 1.6 doesn't play opening animations all of the time. Why?'''
   
 
A: There are some changes to PJ64 where previous optimizations don't
There are some changes to PJ64 where previous optimizations don't work as gracefully.  
work as gracefully. The result is that some opening animations get  
 
skipped at the cost of good emulation speed.                        
The result is that some opening animations get skipped at the cost of good emulation speed.
                                                                     
 
'''Q: Turok Dinosaur Hunter doesn't work or crashes on me. Why?'''
'''Q: Turok Dinosaur Hunter doesn't work or crashes on me. Why?'''
         
 
A: PJ64 1.6 won't boot it due to optimization issues. 1964 1.1 will  
PJ64 1.6 won't boot it due to optimization issues. 1964 1.1 will only boot it with audioMusyX.  
only boot it with audioMusyX. Both emulators will eventually crash,  
 
either randomly, or after the first key is recovered. Mupen64 would  
Both emulators will eventually crash, either randomly, or after the first key is recovered. Mupen64 would be needed to play this game fully.
be needed to play this game fully.                                  
 
                                                                     
'''Q: Players 2 and 4 are unplayable in Conker's BFD deathmatch.'''
'''Q: Players 2 and 4 are unplayable in Conker's BFD deathmatch.'''
       
 
A: Sorry. Again, this is a core issue.                              
Sorry. Again, this is a core issue.
                                                                     
 
'''Q: Can I tweak the speed of a game?'''  
'''Q: Can I tweak the speed of a game?'''
                               
 
A: Yes. Adjust the Counter Factor value in the emulator's .ini or    
Yes. Adjust the Counter Factor value in the emulator's .ini or .rdb.  
.rdb. A lower CF value emulates closer to a real N64, while a higher
 
CF value will create a better experience on old hardware like the    
A lower CF value emulates closer to a real N64, while a higher CF value will create a better experience on old hardware like the Xbox.  
Xbox. Generally, adjusting CF will do a better job than Frameskip.  
 
                                                                     
Generally, adjusting CF will do a better job than Frameskip.
 
'''Q: Load/Save States as well as the In Game Menu cause me crashes.'''
'''Q: Load/Save States as well as the In Game Menu cause me crashes.'''
   
 
A: Yes, these bugs have been around since Surreal64 1.0. They are a  
Yes, these bugs have been around since Surreal64 1.0. They are a result of the emulator and plugins running natively with the lower level xbox functionality written into various parts of Surreal64.
result of the emulator and plugins running natively with the lower  
 
level xbox functionality written into various parts of Surreal64.    
Most emulators for the Xbox include a simple App that the emulator is built ontop of.with Surreal64, when a problem occurs, the interface becomes inaccessible.
Most emulators for the Xbox include a simple App that the emulator  
 
is built ontop of.with Surreal64, when a problem occurs, the        
==Screenshots==
interface becomes inaccessible.
https://dlhb.gamebrew.org/xboxhomebrews/surreal64ce3.png
 
https://dlhb.gamebrew.org/xboxhomebrews/surreal64ce4.png
 
https://dlhb.gamebrew.org/xboxhomebrews/surreal64ce5.png
 
https://dlhb.gamebrew.org/xboxhomebrews/surreal64ce6.png
 
==Media==
'''Conker's BFD Surreal64CE B6.0''' ([https://www.youtube.com/watch?v=KQ3v9nuHcFY Surreal64CE]) <br>
<youtube>KQ3v9nuHcFY</youtube>
 
==Changelog==
'''B6.0 2015/01/15'''
 
Core Updates:
*1964 1.1 added - Starting in 2009, freakdave, Ez0n3 and schibo all gave their efforts to porting this to Xbox. I only finished what they started.
*PJ64 1.6 added - Before the leak gained publicity in 2012, Mudlord and Squarepusher shared their discovery with me and the xbox port happened shortly after.
*UltraHLE updated to match UHLE Alpha codebase - UHLE Alpha uses some larger buffers for sound and textures, and has very slight changes to syncing.
 
RSP Plugin Updates:
*RSP Recompiler updated to 1.7.0.9.
*HLE RSP Plugin updated with MusyX HLE.
*MusyX will require use of "AudioMusyX" until a proper HLE audio plugin is ported.
 
Video Plugin Updates:
*Rice Video 6.12 updated with several changes from mainline and some backport fixes from Rice 5.60.
*Near Plane Clipping hack for Zelda.
*HW vertex handling from Rice Video 5.60.
*Pixel Shader combiner switched to PC version (faster and complete).
*Software Vertex Clipper as an option for corner cases.
*Glide64 LOD fix for correct fog depth.
*Moveword insert matrix fix for SSB.
*Fill_Rect primColor fix for MK64.
*Various renames/refactors and other less noticeable bug fixes.
 
Input Plugin Updates:
*Deadzone threshold decreased for better button-to-analog mapping.
 
==Credits==
Greets to my old teammates Ez0n3 and freakdave for the hours of fun spent hacking away at Surreal64 when we all had time for it.
 
A very special thanks to the emulator developers that have given me direct help and support:
*Schibo (1964 author).
*Azimer (HLE audio plugin author).
*death-droid (Rice Video plugin maintainer).
*Salvy (DaedalusX64 developer).
*Mudlord & SquarePusher (for sharing hcs' leak of PJ64 1.6).
*ratop46 (Rice Video bug fixes).
*X-Scale (CIC-NUS-6105 reverse engineering and Pif2.dat fixes).
 
Thanks to the authors of the software:
*Schibo (again).
*Rice.
*Zilmar.
*Jabo.
*Gent.
*Smiff.
*Witten.
*Azimer (again).
*JttL.
*bobby.smiles32.
*Hacktarux.
*StrmnNrmn.
 
Also thanks to oDD, Lantus and GogoAckman.
 
N64 Greets to emu_kidid, Salvy, Wally, gonetz, Narann.
 
Xbox Greets to Madmab, hcf, gamezfan, FrankMorris, Neil222, cbagy, waal, Wimpy, Perr, NeoBomb, Bigby, MMQ, everyone who has taken enough interest in Surreal64 to give feedback, and the other current developers and artists at EmuXtras.net.
 
==External links==
* Official website - http://surreal64ce.wikidot.com/
* SourceForge - https://surreal64ce.sourceforge.net/
* SourceForge - https://sourceforge.net/projects/surreal64ce/
* EmuXtras - https://www.emuxtras.net/forum/viewtopic.php?p=79758#p79758
* EmuXtras - https://www.emuxtras.net/forum/viewtopic.php?f=181&t=4732#p58713

Latest revision as of 06:36, 29 Ocak 2024

Surreal64CE
Surreal64ce2.png
General
Authorweinerschnitzel, Ez0n3, Joel Middendorf, freakdave
TypeConsole
VersionB6.1 Beta 7 r352
LicenseMixed
Last Updated2017/12/17
Links
Download
Website
Source

Surreal64 Community Edition (Surreal64 CE for short) is a Nintendo64 emulator for the Microsoft Xbox. It is a continuation of Surreal 64, which was a port of three existing emulators for PC. Those emulators included 1964 0.8.5, Project 64 1.4, and UltraHLE.

Surreal64 CE is a modification made by several Xbox-Scene community members. This project is built off of Surreal64 XXX, and was previously known as Surreal64 XXX CE. The main goal of the project is to improve Surreal64 with the addition of:

  • New or updated N64 emulators.
  • New or updated audio, video and RSP plugins.
  • Improved controls.
  • A user friendly and skinnable ROM launcher.

Installation

The rom folder is set to D:\Roms\ by default and is editable in the Surreal.ini. The roms must be located in the directory specified in the ini.

The actual path may be different if you have the rom path set to a folder outside the directory containing the xbe executables. The folder containing the default.xbe will become the "root" path when it is launched.

The actual path may be E:\Emulators\Surreal64CE\, but when the launcher is running, it treats Surreal64CE\ as the root D:\. If the roms reside outside the "root", a full path must be specified. Otherwise, you can use the relative path using D:\ as the root (IE: D:\Roms\, D:\Skins\, D:\Media\).

If your roms don't show up in the rom list, you can try to:

  • Hit the "Y" button while the rom list is showing and no menus are open.
  • Delete E:\TDATA\a64fea57\RomlistCache.dat
  • Delete E:\TDATA\64ce64ce\RomlistCache.dat

See the online manual For more information.

User guide

FAQ

Q. What does Range Fog and Linear Fog mean?

Range Fog is the default fog method and usually correct method fog. Linear Fog refers to depth based fog on a linear filter.

It is less costly, but requires the Software Vertex Clipper, which itself uses more resources than the old hardware method.

Linear Fog can create a more visually appealing thickness of fog, but some less desirable artifacts may appear. Rice 6.12 only.

Q: Software Vertex Clipper, what?

The Software Vertex Clipper uses code that also relies on DirectX features unsupported by XBOX. You can witness the missing side textures on treasure chests in Legend of Zelda.

The rest of the functionality is enough to work, and it also corrects some bad vertex clipping seen in Conker's BFD in the level "Enter the Vertex."

You can enable the Software Vertex Clipper by selecting "Software Vertex Processing" in Video Settings. Rice 6.12 only.

Q: I am experiencing graphics glitches in X game.

The most common graphics issues result from Rice Video's lack of [Hardware] Framebuffer Emulation.

Garbled textures, missing effects, bad vertex clipping, and black/missing textures can be a result of a plugin incompatibility rather than a port incompatibility.

Check your PC for compatibility with the closest Rice Video plugin to determine if the bug is in fact a regression or something that can be fixed.

Next, you can do some research to find out what type of bug you are encountering and if it can be fixed. Gonetz' GLideN64 dev blog has great explanations for N64 HLE graphics problems.

Q: I am experiencing a crash after X in Y game.

Make sure you are giving the emulator enough RAM, and try setting Texture Memory to AUTO.

Some games handle the auto texture memory trick better than others.

Q: PJ64 1.6 doesn't play opening animations all of the time. Why?

There are some changes to PJ64 where previous optimizations don't work as gracefully.

The result is that some opening animations get skipped at the cost of good emulation speed.

Q: Turok Dinosaur Hunter doesn't work or crashes on me. Why?

PJ64 1.6 won't boot it due to optimization issues. 1964 1.1 will only boot it with audioMusyX.

Both emulators will eventually crash, either randomly, or after the first key is recovered. Mupen64 would be needed to play this game fully.

Q: Players 2 and 4 are unplayable in Conker's BFD deathmatch.

Sorry. Again, this is a core issue.

Q: Can I tweak the speed of a game?

Yes. Adjust the Counter Factor value in the emulator's .ini or .rdb.

A lower CF value emulates closer to a real N64, while a higher CF value will create a better experience on old hardware like the Xbox.

Generally, adjusting CF will do a better job than Frameskip.

Q: Load/Save States as well as the In Game Menu cause me crashes.

Yes, these bugs have been around since Surreal64 1.0. They are a result of the emulator and plugins running natively with the lower level xbox functionality written into various parts of Surreal64.

Most emulators for the Xbox include a simple App that the emulator is built ontop of.with Surreal64, when a problem occurs, the interface becomes inaccessible.

Screenshots

surreal64ce3.png

surreal64ce4.png

surreal64ce5.png

surreal64ce6.png

Media

Conker's BFD Surreal64CE B6.0 (Surreal64CE)

Changelog

B6.0 2015/01/15

Core Updates:

  • 1964 1.1 added - Starting in 2009, freakdave, Ez0n3 and schibo all gave their efforts to porting this to Xbox. I only finished what they started.
  • PJ64 1.6 added - Before the leak gained publicity in 2012, Mudlord and Squarepusher shared their discovery with me and the xbox port happened shortly after.
  • UltraHLE updated to match UHLE Alpha codebase - UHLE Alpha uses some larger buffers for sound and textures, and has very slight changes to syncing.

RSP Plugin Updates:

  • RSP Recompiler updated to 1.7.0.9.
  • HLE RSP Plugin updated with MusyX HLE.
  • MusyX will require use of "AudioMusyX" until a proper HLE audio plugin is ported.

Video Plugin Updates:

  • Rice Video 6.12 updated with several changes from mainline and some backport fixes from Rice 5.60.
  • Near Plane Clipping hack for Zelda.
  • HW vertex handling from Rice Video 5.60.
  • Pixel Shader combiner switched to PC version (faster and complete).
  • Software Vertex Clipper as an option for corner cases.
  • Glide64 LOD fix for correct fog depth.
  • Moveword insert matrix fix for SSB.
  • Fill_Rect primColor fix for MK64.
  • Various renames/refactors and other less noticeable bug fixes.

Input Plugin Updates:

  • Deadzone threshold decreased for better button-to-analog mapping.

Credits

Greets to my old teammates Ez0n3 and freakdave for the hours of fun spent hacking away at Surreal64 when we all had time for it.

A very special thanks to the emulator developers that have given me direct help and support:

  • Schibo (1964 author).
  • Azimer (HLE audio plugin author).
  • death-droid (Rice Video plugin maintainer).
  • Salvy (DaedalusX64 developer).
  • Mudlord & SquarePusher (for sharing hcs' leak of PJ64 1.6).
  • ratop46 (Rice Video bug fixes).
  • X-Scale (CIC-NUS-6105 reverse engineering and Pif2.dat fixes).

Thanks to the authors of the software:

  • Schibo (again).
  • Rice.
  • Zilmar.
  • Jabo.
  • Gent.
  • Smiff.
  • Witten.
  • Azimer (again).
  • JttL.
  • bobby.smiles32.
  • Hacktarux.
  • StrmnNrmn.

Also thanks to oDD, Lantus and GogoAckman.

N64 Greets to emu_kidid, Salvy, Wally, gonetz, Narann.

Xbox Greets to Madmab, hcf, gamezfan, FrankMorris, Neil222, cbagy, waal, Wimpy, Perr, NeoBomb, Bigby, MMQ, everyone who has taken enough interest in Surreal64 to give feedback, and the other current developers and artists at EmuXtras.net.

External links

Advertising: