Difference between revisions of "MiSTer"
(New WIP page) |
FosterHaven (talk | contribs) (there are still areas that can be improved, but it's no longer a placeholder page.) |
||
Line 3: | Line 3: | ||
{{Infobox emulator | {{Infobox emulator | ||
− | |title = | + | |title = MiSTer |
|logo = | |logo = | ||
|logowidth = | |logowidth = | ||
− | |developer = | + | |developer = MiSTer-devel<br/><small>(MiSTer Team)</small> |
− | |version = | + | |version = [https://github.com/MiSTer-devel Git] |
|active = Yes | |active = Yes | ||
− | |platform = | + | |platform = Terasic DE10-nano (with add-ons) |
− | |architecture = | + | |architecture = [[FPGA]] |
− | |target = | + | |target = Various |
− | |compatibility = | + | |compatibility = Varies, see [[#Supported systems|supported systems]] |
|accuracy = | |accuracy = | ||
|website = [https://github.com/MiSTer-devel/Main_MiSTer/wiki MiSTer wiki] | |website = [https://github.com/MiSTer-devel/Main_MiSTer/wiki MiSTer wiki] | ||
− | |prog-lang = | + | |prog-lang = Verilog, VHDL, SystemVerilog |
− | |support = | + | |support = [https://www.paypal.me/FPGAMiSTer PayPal]<br/>[https://www.patreon.com/FPGAMiSTer Patreon] |
− | |license = | + | |license = Varies between GPL3 and MIT |
|source = [https://github.com/MiSTer-devel GitHub] | |source = [https://github.com/MiSTer-devel GitHub] | ||
− | }} | + | }}<!-- TODO: figure out the capacities of both the DDR3 and SDRAM components. --> |
+ | '''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 [https://www.terasic.com.tw/cgi-bin/page/archive.pl?Language=English&CategoryNo=167&No=1046 Terasic DE10-nano] development board as opposed to running projects like [[Lakka]] on an ARM-based [[Emulation Boxes|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 [https://github.com/MiSTer-devel/Main_MiSTer/wiki/Desktop-Linux 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 is needed if VGA connectivity is desired. | |
+ | ==Setup== | ||
+ | <!--this is based on a quick skim through the wiki. there may be more that could be needed--> | ||
+ | Follow [https://github.com/MiSTer-devel/Main_MiSTer/wiki/How-to-start-with-MiSTer these] [https://github.com/MiSTer-devel/Main_MiSTer/wiki/Setup-Guide two] pages to get started (and [https://github.com/MiSTer-devel/Main_MiSTer/wiki/SDRAM-Board this one] if you plan on using a core that requires SDRAM). | ||
− | == | + | ==Overview== |
+ | ===Supported systems=== | ||
+ | <!-- Information taken from https://github.com/MiSTer-devel/Main_MiSTer/wiki/Core-Status. Possibly add it as a reference? --> | ||
+ | <!-- TODO: Arcade systems require a different table. Their wiki lists a lot of them on the side, so it may be optimal to set it as collapsible. --> | ||
+ | <!-- TODO: Add an informational legend. They use their own terminology when determining the status of cores. They are (in order from best to worst) SuperStar, Good, Advanced, and WIP. These terms are kept in the table but the distinction between "Good" and "SuperStar" might be necessary. --> | ||
− | == | + | {| class="wikitable sortable" |
+ | |- | ||
+ | ! scope="col"|System | ||
+ | ! scope="col"|Classification | ||
+ | ! scope="col"|Status | ||
+ | |- | ||
+ | |Bally Astrocade | ||
+ | |Console | ||
+ | |SuperStar | ||
+ | |- | ||
+ | |[[Atari 2600 emulators|Atari 2600]] | ||
+ | |Console | ||
+ | |SuperStar | ||
+ | |- | ||
+ | |[[Atari 5200 emulators|Atari 5200]] | ||
+ | |Console | ||
+ | |SuperStar | ||
+ | |- | ||
+ | |[[ColecoVision emulators|ColecoVision]] | ||
+ | |Console | ||
+ | |SuperStar | ||
+ | |- | ||
+ | |[[Nintendo Entertainment System emulators|Nintendo Entertainment System]] | ||
+ | |Console | ||
+ | |SuperStar | ||
+ | |- | ||
+ | |[[Game Boy/Game Boy Color emulators|Nintendo Gameboy]] | ||
+ | |Console | ||
+ | |SuperStar | ||
+ | |- | ||
+ | |[[Magnavox Odyssey² emulators|Odyssey²]] | ||
+ | |Console | ||
+ | |SuperStar | ||
+ | |- | ||
+ | |[[PC Engine (TurboGrafx-16) emulators|PC Engine/TurboGrafx 16 (SuperGrafx)]] | ||
+ | |Console | ||
+ | |SuperStar | ||
+ | |- | ||
+ | |[[Sega Genesis emulators|Sega Genesis/Mega Drive]] | ||
+ | |Console | ||
+ | |SuperStar | ||
+ | |- | ||
+ | |[[Master System emulators|Sega Master System]] and [[Master System emulators|Game Gear]] | ||
+ | |Console | ||
+ | |SuperStar | ||
+ | |- | ||
+ | |[[Super Nintendo emulators|SNES/Super Famicom]] | ||
+ | |Console | ||
+ | |SuperStar | ||
+ | |- | ||
+ | |[[Vectrex emulators|Vectrex]] | ||
+ | |Console | ||
+ | |SuperStar | ||
+ | |- | ||
+ | |[[Amstrad CPC emulators|Amstrad CPC 6128]] | ||
+ | |Computer | ||
+ | |SuperStar | ||
+ | |- | ||
+ | |[[Super Nintendo emulators|SNES (Super Famicom)]] | ||
+ | |Computer | ||
+ | |SuperStar | ||
+ | |- | ||
+ | |[[Atari 8-bit|Atari 800 XL]] | ||
+ | |Computer | ||
+ | |SuperStar | ||
+ | |- | ||
+ | |[[Amiga Line|Amiga]] | ||
+ | |Computer | ||
+ | |SuperStar | ||
+ | |- | ||
+ | |[[Commodore 64 emulators|Commodore 64]] | ||
+ | |Computer | ||
+ | |SuperStar | ||
+ | |- | ||
+ | |Commodore 16 / Plus/4 | ||
+ | |Computer | ||
+ | |SuperStar | ||
+ | |- | ||
+ | |Commodore PET | ||
+ | |Computer | ||
+ | |SuperStar | ||
+ | |- | ||
+ | |Commodore VIC-20 | ||
+ | |Computer | ||
+ | |SuperStar | ||
+ | |- | ||
+ | |[[Intel CPUs|ao486]] | ||
+ | |Computer | ||
+ | |SuperStar | ||
+ | |- | ||
+ | |SAM Coupe | ||
+ | |Computer | ||
+ | |SuperStar | ||
+ | |- | ||
+ | |[[ZX Spectrum emulators|ZX Spectrum]] | ||
+ | |Computer | ||
+ | |SuperStar | ||
+ | |- | ||
+ | |[[Apple II Line|Apple II+]] | ||
+ | |Computer | ||
+ | |Good | ||
+ | |- | ||
+ | |[[Macintosh line|Apple Macintosh Plus]] | ||
+ | |Computer | ||
+ | |Good | ||
+ | |- | ||
+ | |[[Altair 8800]] | ||
+ | |Computer | ||
+ | |Advanced | ||
+ | |- | ||
+ | |DEC PDP-1 | ||
+ | |Computer | ||
+ | |Advanced | ||
+ | |- | ||
+ | |[[Neo Geo and variants|Neo Geo]] | ||
+ | |Console | ||
+ | |WIP | ||
+ | |- | ||
+ | |[[Sharp X68000 emulators|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. | ||
+ | ;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. | ||
==Resources== | ==Resources== | ||
* [https://www.retrorgb.com/tag/mister RetroRGB MiSTer news] | * [https://www.retrorgb.com/tag/mister RetroRGB MiSTer news] |
Revision as of 13:41, 21 June 2019
This page is a WIP, feel free to help out
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 is needed if VGA connectivity is desired.
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.
- 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.