• Stars
    star
    263
  • Rank 155,624 (Top 4 %)
  • Language
    Shell
  • License
    GNU General Publi...
  • Created over 4 years ago
  • Updated 8 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Mr. Fusion - Universal MiSTer SD card image

Mr. Fusion - Universal MiSTer installation image

Mr. Fusion is a tiny, custom Linux distribution designed to run on the DE10-Nano and install MiSTer.

It comes in the form of a compact image that you can download and flash onto an SD card of any size with a tool like Apple Pi Baker, balenaEtcher, Win32 Disk Imager or even dd.

When you put this SD card into your DE10-nano and start it up, it will expand the card to its full capacity and install a basic MiSTer setup. This will be familiar to anyone who's worked with a Raspberry Pi before.

From there, using the built-in scripts, you can configure WiFi (or use Ethernet out of the box) and run the standard MiSTer Downloader script to get an up to date MiSTer installation.

You can provide custom WiFi and Samba configuration which Mr. Fusion will install alongside the basic MiSTer setup.

Requirements

  • A Micro SD card of minimum 2 GB, for example the one that came with your DE10-nano kit.
  • Windows, Mac or Linux based computer with a (micro)SD card reader.
  • An SD card flash utility.

Instructions

Step 1

Download the latest version from the releases page.

Step 2

Download and install an SD card flash utility for your system. Here are a few example in no particular order:

Refer to the documentation of the SD card flash utility for more information.

Step 3

Follow your SD card flash utility's instructions to flash the downloaded image onto your SD card.

Note: Extract the downloaded SD card image zip file if your SD card flash utility does not support flashing zip files!

Step 4

Put the SD card into the DE10-nano and power it on. After a few seconds the orange LED on the board should light up. If you have a TV or monitor connected to the HDMI port, the screen will turn blue and then show an installation notice splash screen:

MiSTer installation splash screen

Mr. Fusion will automatically re-partition and resize your SD card and copy all the necessary MiSTer files onto it. When it's done it will reboot your DE10-nano and you will be greeted by the MiSTer menu.

If you have an I/O board, you can pair a Bluetooth controller by holding the OSD button and you can map controller buttons by holding the "User" button. Otherwise you can connect a USB keyboard and hit F12 to open the MiSTer menu.

Through the Scripts section you can configure WiFi and update your MiSTer. Please refer to the MiSTer documentation for more information.

Note: From powering on the DE10-nano and getting to the MiSTer menu should not take more than 90 seconds. If you don't see the MiSTer menu appear after two minutes, power off the DE10-nano, remove the SD card and start over.

MiSTer scripts support

The MiSTer Downloader script is included by default in every MiSTer installation. This image also includes the WiFi setup script to allow you to quickly setup a wireless internet connection after installation.

Adding more scripts

You can add more scripts if necessary: After you have flashed your SD card and before you move it over to the DE10-nano, re-insert it into your computer. A new drive called MRFUSION will appear. In it is a Scripts folder. Put any script you want to have available in your MiSTer in this folder. It will be copied to your MiSTer's Scripts folder automatically during the installation.

Custom WiFi configuration (optional)

You can copy a custom wpa_supplicant.conf file in the root of the SD card after flashing the Mr. Fusion image. It will automatically be copied to the correct place during the installation of MiSTer. This allows you to configure your WiFi credentials before you install MiSTer and thus removes the need to connect a keyboard after installation.

Custom Samba configuration (optional)

You can copy a custom samba.sh file in the root of the SD card after flashing the Mr. Fusion image. It will automatically be copied to the correct place during the installation of MiSTer. This allows you to enable Samba before you install and thus removes the need to connect a keyboard to your MiSTer or having to ssh into it.

How is this an improvement to the MiSTer setup process?

Having a universal flash image means we can just use any SD card image flashing tool on any platform instead of a bespoke MiSTer SD card creation app. We no longer need to maintain such a custom made app or port it to other platforms.

A fixed size image based approach has one caveat: We want the image to be as small as possible to reduce the time it takes to download and to support a wide variety of SD card capacities. We've managed to cram everything MiSTer needs into approximately 100 MB. When you flash a 100 MB image onto any size SD card, you will get only 100 MB of storage, most of which will be taken up by the MiSTer files. Your whopping 256 GB capacity SD card will only have a few megabytes free space. The filesystem must be resized to match its full capacity.

MiSTer uses the exFAT filesystem for maximum compatibility across different platforms (Windows, macOS, Linux, ...). Linux, the operating system that MiSTer uses under the hood does not (yet) support resizing exFAT filesystems. The only way to ensure maximum SD card capacity is to recreate the filesystem with the proper size. However, we can't know in advance what that capacity is going to be so we let the DE10-nano do the resize before installing MiSTer. That's what Mr. Fusion does. Because everyone has different computers but we all have the same DE10-nano board, it makes sense to do it this way.

Getting help

If you need help, come find us in the #help channel on the MiSTer FPGA Discord server.

Reporting issues

If you think you found a bug or you have an idea for an improvement, please open an issue.

Building it yourself

See BUILDING.md for more details.

Acknowledgements

Thanks to Sorgelig, Rysha, Ziggurat, alanswx, r0ni and Locutus73 for their insights. Thanks to amoore2600 for pushing me to build this. Thanks to everyone else who contributes to the MiSTer FPGA project.

Disclaimer

This program is free software. It comes without any warranty, to the extent permitted by applicable law. See LICENSE for more details.

More Repositories

1

Main_MiSTer

Main MiSTer binary and Wiki
C
2,805
star
2

ao486_MiSTer

ao486 port for MiSTer
Verilog
264
star
3

PSX_MiSTer

PSX for MiSTer
VHDL
212
star
4

SNES_MiSTer

SNES for MiSTer
VHDL
196
star
5

Hardware_MiSTer

Daughter boards
HTML
191
star
6

NES_MiSTer

SystemVerilog
169
star
7

NeoGeo_MiSTer

NeoGeo for MiSTer
Verilog
145
star
8

GBA_MiSTer

GBA for MiSTer
VHDL
144
star
9

Minimig-AGA_MiSTer

Verilog
121
star
10

Genesis_MiSTer

Sega Genesis for MiSTer
Verilog
118
star
11

Wiki_MiSTer

115
star
12

Downloader_MiSTer

Tool for installing and updating MiSTer cores and other files
Python
109
star
13

Gameboy_MiSTer

Gameboy for MiSTer
Verilog
103
star
14

TurboGrafx16_MiSTer

TurboGrafx-16 CD / PC Engine CD for MiSTer
VHDL
94
star
15

C64_MiSTer

SystemVerilog
93
star
16

Distribution_MiSTer

This repository contains all the files that you'll want in your MiSTer
Shell
90
star
17

Arcade-Cave_MiSTer

MiSTer arcade core for Cave 68K arcade classics.
Verilog
77
star
18

Template_MiSTer

Template with latest framework for MiSTer
Verilog
75
star
19

Updater_script_MiSTer

Bash script for updating MiSTer
Shell
75
star
20

SD-Installer-Win64_MiSTer

MiSTer SD card installer (Windows 64bit)
72
star
21

Scripts_MiSTer

Miscellaneous Bash scripts for MiSTer
Shell
63
star
22

X68000_MiSTer

Sharp X68000 for MiSTer
VHDL
56
star
23

MegaCD_MiSTer

Mega CD for MiSTer
Verilog
56
star
24

S32X_MiSTer

Sega 32X implementation for MiSTer
SystemVerilog
54
star
25

Saturn_MiSTer

Sega Saturn for MiSTer
SystemVerilog
54
star
26

MkDocs_MiSTer

MiSTer FPGA Documentation site built using Material for MkDocs.
HTML
53
star
27

MegaDrive_MiSTer

Sega Megadrive for MiSTer
Verilog
46
star
28

MiSTerLaggy_MiSTer

A display latency measurement tool
Verilog
44
star
29

C128_MiSTer

Verilog
42
star
30

SMS_MiSTer

Sega Master System for MiSTer
VHDL
40
star
31

N64_MiSTer

VHDL
38
star
32

Menu_MiSTer

Verilog
37
star
33

Apple-II_MiSTer

Apple II+ for MiSTer
VHDL
36
star
34

Filters_MiSTer

Custom Filters for MiSTer's HDMI Scaler
MATLAB
35
star
35

MSX_MiSTer

MSX for MiSTer
VHDL
35
star
36

Fonts_MiSTer

Fonts for MiSTer
Python
34
star
37

MacPlus_MiSTer

Macintosh Plus for MiSTer
SystemVerilog
32
star
38

Atari2600_MiSTer

Atari 2600 for MiSTer
VHDL
31
star
39

AtariST_MiSTer

Atari ST/STe for MiSTer
Verilog
27
star
40

ZXNext_MISTer

VHDL
27
star
41

Atari800_MiSTer

Atari 800XL/65XE/130XE for MiSTer
VHDL
24
star
42

Archie_MiSTer

Acorn Archimedes for MiSTer
Verilog
21
star
43

Amstrad_MiSTer

Amstrad CPC 6128 for MiSTer
VHDL
21
star
44

TI-99_4A_MiSTer

Texas Instrument 99/4A Home Computer
VHDL
20
star
45

Arcade-Pacman_MiSTer

Arcade: Pacman for MiSTer
VHDL
20
star
46

MemTest_MiSTer

Verilog
19
star
47

Arcade-DonkeyKong_MiSTer

Arcade: Donkey Kong for MiSTer
VHDL
19
star
48

PC88_MiSTer

NEC PC8801 MKII SR For MiSTer
VHDL
19
star
49

BBCMicro_MiSTer

BBC Micro B and Master 128K for MiSTer
VHDL
19
star
50

PDP1_MiSTer

PDP-1 for MiSTer
Verilog
18
star
51

Arcade-IremM92_MiSTer

VHDL
17
star
52

MSX1_MiSTer

Computer MSX1
VHDL
17
star
53

Linux_Image_creator_MiSTer

Shell
17
star
54

TRS-80_MiSTer

Tandy TRS-80 Model I (port of HT1080Z to MiSTer)
VHDL
16
star
55

ShadowMasks_MiSTer

HDMI Shadow Masks
16
star
56

Arcade-IremM72_MiSTer

C++
15
star
57

Arcade-GnG_MiSTer

Arcade Ghosts'n Goblins for MiSTer
Verilog
15
star
58

Arcade-Raizing_MiSTer

Bakraid, Batrider, Garegga, Kingdom Grandprix & Sorcer Striker MiSTer Cores
Verilog
15
star
59

VIC20_MiSTer

Commodore VIC-20 for MiSTer
VHDL
14
star
60

N64_ROM_Database

A database of rom metadata for properly handling N64 games.
13
star
61

AtariLynx_MiSTer

VHDL
13
star
62

Linux-Kernel_MiSTer

C
12
star
63

C16_MiSTer

Commodore C16 and Plus/4 for MiSTer
SystemVerilog
12
star
64

GnW_MiSTer

MiSTer Port of Game and Watch Games
Verilog
12
star
65

Presets_MiSTer

A collection of preset video configurations for MiSTer.
12
star
66

Arcade-Galaga_MiSTer

Arcade: Galaga for MiSTer
VHDL
12
star
67

WonderSwan_MiSTer

WonderSwan Color for MiSTer
VHDL
12
star
68

Arduboy_MiSTer

Arduboy core for MiSTer, based on Iulian Gheorghiu's atmega core.
Verilog
12
star
69

Arcade-Tecmo_MiSTer

MiSTer arcade core for Tecmo arcade classics: Rygar (1986), Gemini Wing (1987), and Silkworm (1988).
VHDL
12
star
70

Intv_MiSTer

Intellivision for MiSTer
VHDL
11
star
71

Vectrex_MiSTer

Vectrex for MiSTer
VHDL
11
star
72

QL_MiSTer

Sinclair QL for MiSTer
VHDL
11
star
73

CoCo3_MiSTer

CoCo3FPGA port to MiSTer
VHDL
11
star
74

Arcade-Centipede_MiSTer

Arcade: Centipede
C++
11
star
75

EDSAC_MiSTer

FPGA Verilog implementation of 1949 EDSAC Computer with animated tape reader, panel, teleprinter and CRT scope
Verilog
11
star
76

Arcade-Galaxian_MiSTer

Arcade: Galaxian for MiSTer
VHDL
11
star
77

PET2001_MiSTer

Commodore PET for MiSTer
Verilog
10
star
78

MultiComp_MiSTer

Port of Grant Searle's MultiComp to the MiSTer
Assembly
10
star
79

AliceMC10_MiSTer

Matra-Hachette Alice MC-10 for MiSTer FPGA
Verilog
10
star
80

Arcade-TaitoSystemSJ_MiSTer

Taito System SJ Arcade Core
VHDL
9
star
81

Apple-I_MiSTer

Apple I for MiSTer
Verilog
9
star
82

Arcade-1943_MiSTer

CAPCOM's 1943 arcade clone. (port of JT1943 core)
Verilog
9
star
83

Arcade-Scramble_MiSTer

Arcade: Scramble for MiSTer
VHDL
9
star
84

Arcade-IremM62_MiSTer

Irem62 from pace, and mist including Lode Runner, etc
VHDL
9
star
85

Hardware_alternative

128MB sdram module, horizontal. Fits on official IO addon
9
star
86

SD-InstallTool_Win_MiSTer

SD Card preparation tool for MiSTer FPGA project
C#
9
star
87

SharpMZ_MiSTer

Sharp MZ Series Personal/Business Computer Emulator for FPGA
VHDL
8
star
88

Arcade-BurgerTime_MiSTer

Arcade: Burger Time for MiSTer
Verilog
8
star
89

Arcade-Defender_MiSTer

Arcade: Defender for MiSTer
VHDL
8
star
90

MRA-Alternatives_MiSTer

Alternative (hacks, other versions) MRA files for arcade cores
8
star
91

Amstrad-PCW_MiSTer

Amstrad PCW MiSTer core
Verilog
8
star
92

Arcade-BombJack_MiSTer

Arcade: Bomb Jack for MiSTer
VHDL
8
star
93

xow_MiSTer

Linux driver for the Xbox One wireless dongle compiled for MiSTer
Shell
8
star
94

Life_MiSTer

Conway's Game of Life for MiSTer
Verilog
7
star
95

AY-3-8500-MiSTer

Port of AY-3-8500 to MiSTer
Verilog
7
star
96

Chess_MiSTer

VHDL
7
star
97

Arcade-SEGASYS1_MiSTer

Sega System 1 for MiSTer
Verilog
7
star
98

BK0011M_MiSTer

Verilog
7
star
99

ColecoVision_MiSTer

ColecoVision for MiSTer
VHDL
7
star
100

Arcade-MrDo_MiSTer

Mr. Do! Universal 1982
Verilog
7
star