Difference between revisions of "MiSTer"
m (Added theypsilon's update_all script which very much helps new users get up and running) |
(→Controllers) |
||
Line 170: | Line 170: | ||
====Controllers==== | ====Controllers==== | ||
;LL Cool Joy:Ultra-Low-Latency Controller Board<ref name="LL Cool Joy">[https://www.retrorgb.com/mister-ll-cool-joy-ultra-low-latency-controller-board-update.html 'LL Cool Joy' naming update] (October 20, 2018)</ref>. This is a controller add-on board that links to the I/O board and is made by ElectronAsh & rattboi. ElectronAsh officially named it the "LL Cool Joy". It is designed to support native controllers of original retro consoles and third party controllers with those native ports. <ref>[https://www.retrorgb.com/mister-ultra-low-latency-controller-add-on-board.html Controller board news] on RetroRGB. The ports are "DB15 (Neo Geo MVS/AES/CD, and Arcade), DB9 (Genesis, Atari, etc), & RJ45 (MC Cthulhu standard) inputs. RJ45 dongles could be made for any controller under the sun as long as code is added to support them. This would bypass the need to use USB controller adapters (which all add some lag) to plug in native controllers." (October 12, 2018)</ref> It also has USB ports for extra convenience. | ;LL Cool Joy:Ultra-Low-Latency Controller Board<ref name="LL Cool Joy">[https://www.retrorgb.com/mister-ll-cool-joy-ultra-low-latency-controller-board-update.html 'LL Cool Joy' naming update] (October 20, 2018)</ref>. This is a controller add-on board that links to the I/O board and is made by ElectronAsh & rattboi. ElectronAsh officially named it the "LL Cool Joy". It is designed to support native controllers of original retro consoles and third party controllers with those native ports. <ref>[https://www.retrorgb.com/mister-ultra-low-latency-controller-add-on-board.html Controller board news] on RetroRGB. The ports are "DB15 (Neo Geo MVS/AES/CD, and Arcade), DB9 (Genesis, Atari, etc), & RJ45 (MC Cthulhu standard) inputs. RJ45 dongles could be made for any controller under the sun as long as code is added to support them. This would bypass the need to use USB controller adapters (which all add some lag) to plug in native controllers." (October 12, 2018)</ref> It also has USB ports for extra convenience. | ||
− | ;Bliss-Box BlisSTer: [https://bliss-box.net/support] Alternative to LL Cool Joy. This product from Bliss-Box makes similar utilization of the ultra-low-latency API found in the MiSTer range for adapting native controllers. The Bliss-Box LLAPI (Low Level API) is a protocol written for the Bliss-Box Bridge not yet released but was adopted in the Mister cores available here [https://github.com/Kitrinx/LLAPI]. The BlisSTer enables original console controllers that inter-operate with Bliss-Box's universal adapter chips to connect to a MiSTer hardware (Read their Support page for more details). If you already have the Bliss-Box adapters [https://bliss-box.net/ 4-Play or Gamer-Pro] then you can use a level shifter that plugs on to the serial I/O port on the input board. Level shifters can be made (simple design) or bought from Bliss-Box. The Bliss-Box also works with consoles like original Xbox and Nintendo Switch<ref>[http://www.racketboy.com/forum/viewtopic.php?f=27&t=52566 Bliss-Box now goes live to a console near you.] (Racketboy thread. Thu Jan 10, 2019.)</ref>. The BlisSter [ | + | ;Bliss-Box BlisSTer: [https://bliss-box.net/support] Alternative to LL Cool Joy. This product from Bliss-Box makes similar utilization of the ultra-low-latency API found in the MiSTer range for adapting native controllers. The Bliss-Box LLAPI (Low Level API) is a protocol written for the Bliss-Box Bridge not yet released but was adopted in the Mister cores available here [https://github.com/Kitrinx/LLAPI]. The BlisSTer enables original console controllers that inter-operate with Bliss-Box's universal adapter chips to connect to a MiSTer hardware (Read their Support page for more details). If you already have the Bliss-Box adapters [https://bliss-box.net/ 4-Play or Gamer-Pro] then you can use a level shifter that plugs on to the serial I/O port on the input board. Level shifters can be made (simple design) or bought from Bliss-Box. The Bliss-Box also works with consoles like original Xbox and Nintendo Switch<ref>[http://www.racketboy.com/forum/viewtopic.php?f=27&t=52566 Bliss-Box now goes live to a console near you.] (Racketboy thread. Thu Jan 10, 2019.)</ref>. The BlisSter [https://paradisearcadeshop.com/home/electrical/pcbs-lighting/pcbs-for-controllers/2595_blisster-rev2-usb-hub-by-bliss-box?ipa=0&ins=/ BlisSTer],[https://misterfpga.co.uk/product/blisster-v2/ or HERE] input board for the MiSTer has USB and HDMI ports. Adapter cables can be ordered along with the BlisSTer for original controllers to be used with those HDMI ports in low-latency mode. Support for the BlisSTer at this time is not in the main fork but you can use these cores [https://github.com/MiSTer-LLAPI] |
<u>Note:</u> Check the Racketboy retrospective in Resources list below as it particularly covers these solutions to using old controllers well. | <u>Note:</u> Check the Racketboy retrospective in Resources list below as it particularly covers these solutions to using old controllers well. |
Revision as of 12:13, 10 October 2020
Original developer(s) | Sorgelig (aka Alexey Melkinov) |
---|---|
Current developer(s) | MiSTer-devel (MiSTer Team) |
Latest version | Git |
Active | Yes |
Platform(s) | Terasic DE10-nano (with add-ons) |
Architecture(s) | FPGA |
Emulates | Various |
Compatibility | Varies, see supported systems |
Website | MiSTer wiki |
Support ($) | PayPal Patreon |
Programmed in | Verilog, VHDL, SystemVerilog |
License | Varies between GPL3 and MIT |
Source code | GitHub |
MiSTer is an open source hardware reimplementation project designed to be used on an FPGA. It reimplements various console, arcade, and computer hardware on the Terasic DE10-nano development board as opposed to running projects like Lakka on an ARM-based DIY emulation box. MiSTer is a fork of MiST, which is a similar project; the difference is that MiSTer targets a more powerful board to allow for more complex hardware implementations.
Contrary to what one might think, the Terasic DE10-nano doesn't just have an FPGA; the system also contains an ARM processor and DDR3 memory which is used with an optimized Linux kernel to interface with files-- the system can even run Lubuntu 16.04 if one wanted to. The difference between a board like the DE10-nano and, say, a Raspberry Pi is the addition of an entire FPGA which handles the bulk of the system core.
MiSTer also maintains schematics for a few additional boards; some cores will often require the SDRAM board, as it allows for better handling of memory than what the DDR3 unit provides. The DE10-nano only includes HDMI output so the I/O board, or an HDMI to VGA adapter, are required if VGA output is desired.
Contents
Setup
Follow these two pages to get started (and this one if you plan on using a core that requires SDRAM).
Overview
Supported systems
System | Classification | Status |
---|---|---|
Bally Astrocade | Console | SuperStar |
Atari 2600 | Console | SuperStar |
Atari 5200 | Console | SuperStar |
ColecoVision | Console | SuperStar |
Nintendo Entertainment System | Console | SuperStar |
Nintendo Gameboy | Console | SuperStar |
Odyssey² | Console | SuperStar |
PC Engine/TurboGrafx 16 (SuperGrafx) | Console | SuperStar |
Sega Genesis/Mega Drive | Console | SuperStar |
Sega Master System and Game Gear | Console | SuperStar |
SNES/Super Famicom | Console | SuperStar |
Vectrex | Console | SuperStar |
Amstrad CPC 6128 | Computer | SuperStar |
SNES (Super Famicom) | Computer | SuperStar |
Atari 800 XL | Computer | SuperStar |
Amiga | Computer | SuperStar |
Commodore 64 | Computer | SuperStar |
Commodore 16 / Plus/4 | Computer | SuperStar |
Commodore PET | Computer | SuperStar |
Commodore VIC-20 | Computer | SuperStar |
ao486 | Computer | SuperStar |
SAM Coupe | Computer | SuperStar |
ZX Spectrum | Computer | SuperStar |
Apple II+ | Computer | Good |
Apple Macintosh Plus | Computer | Good |
Altair 8800 | Computer | Advanced |
DEC PDP-1 | Computer | Advanced |
Neo Geo | Console | WIP |
Sharp X68000 | Computer | WIP |
Add-on boards
The project also maintains schematics for add-on boards that users can add onto the DE10-nano. All of them are optional for the basic usage of the FPGA, but some cores may require the SDRAM board.
- SDRAM
- Allows FPGA cores to use memory that's better suited for reimplementations.
- I/O
- Adds a VGA connector, a 3.5mm audio jack, optical audio, three buttons, three LEDs, a secondary SD card slot, a USB 3.0-like expansion connector, and a fan that cools the FPGA. The DE10-nano only includes an HDMI connector, so this board is needed if one wants VGA support. The I/O board already features zero-latency analog video output if a RGB, component or other cables is used.
- RTC
- Provides a real-time clock for enthusiasts. The clock can be automatically configured if the FPGA is connected to the internet via the DE10's Ethernet port, and only two cores make use of it anyway.
- USB hub
- Adds seven USB ports under the main board.
Controllers
- LL Cool Joy
- Ultra-Low-Latency Controller Board[1]. This is a controller add-on board that links to the I/O board and is made by ElectronAsh & rattboi. ElectronAsh officially named it the "LL Cool Joy". It is designed to support native controllers of original retro consoles and third party controllers with those native ports. [2] It also has USB ports for extra convenience.
- Bliss-Box BlisSTer
- [1] Alternative to LL Cool Joy. This product from Bliss-Box makes similar utilization of the ultra-low-latency API found in the MiSTer range for adapting native controllers. The Bliss-Box LLAPI (Low Level API) is a protocol written for the Bliss-Box Bridge not yet released but was adopted in the Mister cores available here [2]. The BlisSTer enables original console controllers that inter-operate with Bliss-Box's universal adapter chips to connect to a MiSTer hardware (Read their Support page for more details). If you already have the Bliss-Box adapters 4-Play or Gamer-Pro then you can use a level shifter that plugs on to the serial I/O port on the input board. Level shifters can be made (simple design) or bought from Bliss-Box. The Bliss-Box also works with consoles like original Xbox and Nintendo Switch[3]. The BlisSter BlisSTer,or HERE input board for the MiSTer has USB and HDMI ports. Adapter cables can be ordered along with the BlisSTer for original controllers to be used with those HDMI ports in low-latency mode. Support for the BlisSTer at this time is not in the main fork but you can use these cores [3]
Note: Check the Racketboy retrospective in Resources list below as it particularly covers these solutions to using old controllers well.
Comparison to alternatives
If you are interested in buying an FPGA board/unit(s) to accurately recreate retro consoles, that at the same time plays well on modern visual screens (TVs, computer monitors, etc), it might be better to get one of the sophisticated FPGA clones from Analogue covering one console and parts for this MiSTer board covering a wide array of console cores:
- - Analogue Super NT: This clone recreates the normal SNES/Famicom console almost perfectly. It doesn't support all the special chips embedded inside select game carts. However, you may buy the SD2SNES cart from Ukrainian developer Krikkz from one of the many online stores. It supports the vast array of special chips found in those special carts, including the SuperFX and SA-1 (Both added in firmware updates in 2018). Though it has a large added impost of $200 US on top of the clone. MiSTer on the other hand has gradually been adding support for several special chip game types, though not everything yet.
- - Analogue MegaSG: Another clone from Analogue, this one recreates the regular Sega Megadrive/Genesis console line perfectly. It doesn't support the Sega Genesis 32X or SegaCD add-ons. However, TerraOnion, another firm that probably made the world's first ever FPGA-driven flash cart for any retro console with a cart for the Neo Geo console in the late 1990's (Needs citation/research), has started releasing a new FPGA-based SegaCD drive simulator cart called the MegaSD for the Megadrive hardware and MegaSG clone. While inserted into original Megadrive, the MegaSD is compatible with the 32X add-on and SegaCD add-on; but is NOT able to support the 32X hardware while inserted into the MegaSG probably due to the complications arising from signalling routines that were shared between the original Megadrive and 32X hardware. It does support the SegaCD hardware perfectly with the MegaSG. A curious tidbit: The MegaSD cart couldn't support the only game cart embedded with a special chip called the "SVP" for the game Virtua Racing (One of many ports of a Sega Model 1 arcade original). The MiSTer officially supported that SVP game in mid-2019!
- - MiSTer: Your mileage may vary as to which one of the Analogue-made clones that you want along with a MiSTer setup. The cores currently found in the MiSTer range for top 16-bit consoles like the SNES and/or Megadrive are not necessarily as fully compatible nor perfect with all games (Both normal carts and those with many special chips) as an Analogue unit and recommended flash cart can achieve.
Otherwise, if you really can only afford one FPGA unit to do it all, then the MiSTer hardware with add-on boards & a 3D-printed case is really the one to pick; it however requires some reading and learning to set up.
Resources
- RetroRGB's start guide with links to shop pages for various parts
- RetroRGB MiSTer news
- Racketboy's retrospective (February 20th, 2019. MUST-READ for everybody interested in learning about origins of FPGA used for simulating retro game systems and getting started with the MiSTer! There is also a big topic on controllers & their solutions.)
- MiSTer FPGA (computer/console/arcade hardware simulation) (forums.overclockers.com.au thread. Started on Oct 14, 2018 and running across many pages. It has nice coverage of many basic summaries, embedded video links especially for new & updated system cores, feedback and advice.)
- Atari-Forums MiSTer subforum (Mainly for discussions on development of cores, packaged kits, info of changelog updates, sale page links and etc.)
- MiSTer Console BIOS Pack (Necessary BIOS files for various console cores on the MiSTer)
- theypsilon's update_all script (Very helpful improved updater script that includes a lot of files to get you up and running easily)
References
- ↑ 'LL Cool Joy' naming update (October 20, 2018)
- ↑ Controller board news on RetroRGB. The ports are "DB15 (Neo Geo MVS/AES/CD, and Arcade), DB9 (Genesis, Atari, etc), & RJ45 (MC Cthulhu standard) inputs. RJ45 dongles could be made for any controller under the sun as long as code is added to support them. This would bypass the need to use USB controller adapters (which all add some lag) to plug in native controllers." (October 12, 2018)
- ↑ Bliss-Box now goes live to a console near you. (Racketboy thread. Thu Jan 10, 2019.)
External Links
- Twitter feed (By SmokeMonster, a RetroRGB.com journalist)
- YT channel (By SmokeMonster, a RetroRGB.com journalist)
- Core availability on the MiSTer (Atari-Forum thread. Tue May 08, 2018. Early comparisons between the original MiST hardware and this new MiSTer fork regarding supported system cores. Original developer of both hardware, Sorgelig, also discussed in this conversation.)
- FPGA Technology: How Does It Preserve Retro Gaming? at Game Bros Central (August 12, 2019. By Lord Gamesly. An article with several topics including a summary; Limitations of Emulation; Use of FPGA in clone consoles, flash carts & resolution enhancements; and Final Thoughts.)