Rustation: Difference between revisions

 
Ilyagredasov (talk | contribs)
No edit summary
Tags: Mobile edit Mobile web edit
 
(13 intermediate revisions by 10 users not shown)
Line 1: Line 1:
[[Playstation]] emulator
{{Infobox emulator
|title = Rustation
|logo = Rustation_logo.png
|logowidth =
|version = 0.0.3
|active = No
|platform = [[Emulators on Windows|Windows]]<br/>[[Emulators on Linux|Linux]]<br/>[[Emulators on macOS|macOS]]
|target = [[PlayStation emulators|PlayStation]]
|developer = Lionel Flandrin <small>(simias)</small>
|prog-lang = {{Proglang|Rust}}
|website =
|license = {{license|GPLv2}}
|source = [https://github.com/simias/rustation GitHub]<br/>[https://github.com/simias/rustation-libretro GitHub] <small>(libretro upstream)</small>
|issuetracker = [https://github.com/simias/rustation/issues GitHub]
}}
 
'''Rustation''' is an open-source [[PlayStation emulators|PlayStation emulator]] that doesn't require a plugin-based system. It's written in the Rust programming language and has a [[libretro]] core.
 
==Overview==
The first commit for Rustation was made on [https://github.com/simias/rustation/commit/017db106eaf9b8268eb58a24612da948f4b8c2fc February 17, 2015], and many commits have since been added over the next two years. However, the last commit was made in [https://github.com/simias/rustation/commits/master September 2017] and was never followed up; the same is also true of the libretro core. The libretro team, meanwhile, used the work done in Rustation to create the [[Mednafen|Beetle PSX]] ''HW'' core, in which an OpenGL 3.3 renderer is used instead of the previous software renderer.<ref name="libretro-Rustation">{{cite web|url=https://www.phoronix.com/scan.php?page=news_item&px=PSX-OpenGL-Experimental|title=PlayStation Emulator Gets Experimental OpenGL Renderer|publisher=Phoronix|author=Michael Larabel|accessdate=2018-12-14|date=31 May 2016}}</ref> That core is said to be one of the first PlayStation emulators to use modern OpenGL, as it differs from the fixed-function OpenGL used in older OpenGL-based emulator plugins.
 
The original repository only contains the source code for the core of the emulator. The OpenGL renderer and the libretro interface is in the rustation-libretro repository. Game performance is poor; only a few games can boot.
 
===Features===
These things are either fully or partially implemented:
* CPU
* Basic GTE support (ported from mednafen PSX)
* Instruction cache
* Interrupts
* Basic GPU (no semi-transparency or mask bit emulation)
* Timers (incomplete)
* DMA
* Debugger
* CDROM controller (missing many commands)
* Gamepad controller (only digital pad for now)
 
<u>'''To-do list:'''</u>
* Many things in the GPU
* MDEC (Probably for movie playback. [[Avocado]] is in the midst of implementing this one)
* SPU
* Memory card
* CPU pipeline emulation
* More accurate timings
* Many, many other things...
 
==References==
{{Reflist}}
 
==External Links==
* [https://www.libretro.com/index.php/category/rustation/ Official blog] (For Rustation in libretro)
* [https://8ch.net/psx/index.html /psx/ board on 8chan] (Informal place created by simias to discuss this emulator and PlayStation related things)
 
[[Category:Emulators]]
[[Category:Emulators]]
[[Category:Console emulators]]
[[Category:Home console emulators]]
[[Category:PlayStation emulators]]
[[Category:PlayStation emulators]]
[[Category:Windows emulation software]]
[[Category:Linux emulation software]]
[[Category:macOS emulation software]]
[[Category:Inactive emulation software]]