Sega Saturn Compatible IP Core for FPGA
WARNING: This repository is in active development. There are no guarantees about stability. Breaking changes will occur until a stable release is made and announced.
The Saturn was a 32-bit console by Sega, released in 1994 in Japan and 1995 in North America and Europe. Sega designed its Saturn with advanced hardware and with dual CPUs, making it difficult for programmers. In addition, components were not specifically created to work together, graphics hardware was complex, and the system's basic geometric primitive was based on quadrilaterals which proved difficult for Sega because the rest of the industry based its design on triangles. Eventually, the Saturn was eclipsed by the release of Sega's own Dreamcast.
- CPU: 2x Hitachi SH2 32-bit RISC CPUs @ 28.63 MHz
- RAM: 16Mbit SDRAM
- VRAM: 12Mbit SDRAM
- Graphics:
- Sega/Hitachi VDP1 @ 28.63 MHz (sprite/texture and polygons)
- Sega/Yamaha VDP2 @ 28.63 MHz (background, scroll and 3D)
- Resolution: 320x224 to 704x224, 16,777,216 millions colors
- Sound CPU: Motorola 68EC000 @ 11.3 MHz
- Sound Processor: Yamaha SCSP (Saturn Custom Sound Processor) YMF292 @ 22.6 MHz
- Media: CD-ROM
- 128 MB SDRAM Module (Primary)
- SDRAM Module of any size (32MB-128MB) (Secondary)
Note: Dual SDRAM modules is recommended for better compatibility.
Test builds can be downloaded from the GitHub Actions, they are automatic generated on push against the current code of the repository and should not be considered releases.
To download select a workflow bellow, click on the most recent run and download the zip file under Artifacts produced during runtime
.
Note: Actions has a 90-day retention rule by default, after that the artifacts are not available anymore.
- F1 - VDP2 NBG0
- F2 - VDP2 NBG1
- F3 - VDP2 NBG2
- F4 - VDP2 NBG3
- F5 - VDP2 RBG0
- F6 - VDP2 Sprite
- F7 - VDP2 Windows
- F8 - SCSP Direct sound
- F9 - SCSP DSP sound
- F10 - CD audio
- F11 - enable all
To build this project you also need the following repositories Saturn and SH
git clone https://github.com/srg320/Saturn_MiSTer.git
git clone https://github.com/srg320/Saturn.git
git clone https://github.com/srg320/SH.git
The repositories must be on the same level:
.
├── SH
├── Saturn
└── Saturn_MiSTer
Inside the folder Saturn_MiSTer
you will find 2 Quartus project files.
Saturn.qpf
- Build project for usage with Single SDRAM.Saturn_SD.qpf
- Build project for usage with Dual SDRAM (recommended).
Note: For both builds the primary SDRAM module must be 128MB (i.e. with two chips)!
BIOS NOT INCLUDED: In order to use this core, you need to provide your own BIOS.
Rename your Saturn bios file to boot.rom
and place it in the games/Saturn/
folder.
Console | Version | Region | SHA1 | Size | Status |
---|---|---|---|---|---|
Sega Saturn | 1.00 | Japan | 2b8cb4f87580683eb4d760e4ed210813d667f0a2 | 512 KB | ✅ |
Sega Saturn | 1.00a | USA | 3bb41feb82838ab9a35601ac666de5aacfd17a58 | 512 KB | ✅ |
Sega Saturn | 1.00 | Europe | faa8ea183a6d7bbe5d4e03bb1332519800d3fbc3 | 512 KB | ✅ |
Sega Saturn | 1.003 | Japan | 7b23b53d62de0f29a23e423d0fe751dfb469c2fa | 512 KB | ❌ |
Sega Saturn | 1.01 | Japan | df94c5b4d47eb3cc404d88b33a8fda237eaf4720 | 512 KB | ✅ |
Sega Saturn | 1.01a | USA | faa8ea183a6d7bbe5d4e03bb1332519800d3fbc3 | 512 KB | ✅ |
Hitachi Hi-Saturn | 1.01 | Japan | 49d8493008fa715ca0c94d99817a5439d6f2c796 | 512 KB | ✅ |
Hitachi Hi-Saturn | 1.02 | Japan | 8a22710e09ce75f39625894366cafe503ed1942d | 512 KB | ✅ |
Hitachi Hi-Saturn | 1.03 | Japan | 8c031bf9908fd0142fdd10a9cdd79389f8a3f2fc | 512 KB | ✅ |
Victor V-Saturn | 1.01 | Japan | 4154e11959f3d5639b11d7902b3a393a99fb5776 | 512 KB | ✅ |
Note: You can also place a file named
cd_bios.rom
in the same directory as the CD image. This can be used for games that depend on a specific BIOS.
Work in progress, don't report any bugs!
- 512×256 Framebuffer (current size is limited to 352x256 pixels). Games that make usage of the framebuffer as temporary data storage will not work (e.g., Burning Rangers)
- Mosaic
- LFO
Made with ❤️ by Sergey Dvodnenko.
- To all my Patreon supporters. Your support keeps me working on the core and helps me bring it to life.
- Jorge Cwik - FX68K 68000 SystemVerilog core.
Sega Saturn™ - Copyright © 1994, 1995 SEGA ENTERPRISES, LTD. All rights reserved. SEGA and the SEGA logo are registered trademarks of SEGA CORPORATION. All other trademarks, logos, and copyrights are property of their respective owners.
The authors and contributors or any of its maintainers are in no way associated with or endorsed by SEGA®.