Minimig
From Wikipedia, the free encyclopedia
Minimig (short for "Mini Amiga") is a soon to be released open source exact FPGA re-implementation of an OCS/ECS based Amiga 500.
Minimig started life in secrecy around January 2005 as a proof of concept type of deal by a dutch electrical engineer named "Dennis van Weeren". He intended Minimig as the answer to the ongoing discussions within the Amiga community on implementing the Amiga Custom Chipset on FPGA and will be releasing it under an open source licence.
The Amiga Custom Chipset in the Minimig is intended to be an exact recreation of that of an Amiga 500, in contrast to the rumours circulating throughout the Amiga Community.
Contents |
[edit] Original Prototype
The original Minimig prototype is based on the Xilinx Spartan-3 Starter Kit, the OCS/ECS chipset is synthesised in the FPGA. Two pcb boards are attached via the fpga kit expansion ports. The first one contains a 3.3V M68000 type CPU. The second provides MMC memory card slot with the use of a small PIC Microcontroller as acting disc controller that supports the FAT16 filesystem and does -on-the-fly .ADF decoding.
VGA-+-PS2 (joystick etc..) | CPU <-> FPGA <-> Microcontroller <-> Flashmemory
The prototype was shown at an Amiga meet and loads most Amiga programs although bugs do exist. Coding is done in Verilog on a PC using Xilinx Webpack software.
Some users have suggested plans to make a joystick style direct-to-tv device for people wanting to play old Amiga software. A new printed circuit board is being designed at present to make a single board version, moving away from the Xilinx Starter kit.
[edit] Why
- Run Amiga specific application software to convert files to newer platforms.
- Games.
- FPGA development experience using Verilog.
- Creating something for the community.
- Proof of Concept.
- Can create new games to take advantages of the new features in Minimig (faster memory, more memory sprites, colours, etc), while maintaining full compatibility with the classic Amiga.
[edit] Hardware
- Xilinx Spartan-3 400K gate FPGA (60% used).
- A500 MC68000 (running at 7.09379 Mhz OCS.
- PAL video (as for now).
- Merged the Amiga ChipRAM bus and FastRAM bus into a single synchronous bus running at 7.09379 Mhz.
- 1MB SRAM ChipRAM, 1MB SRAM kickstart (currently only 512k/512k).
- PIC18LF252 based flashcard controller with FAT16 support and on-the-fly .ADF decoding.
- MMC Flashcard to load fpga + programs.
- 3x LEDs to display the MC68000 processor's run-status.
- PS/2 Keyboard + Mouse
- Video D/A consists of 4 resistors for each color R, G, B.
- 8 bit audio from a dithering sigma-delta converter with 2nd order analogue filter.
- Freescale MC68SEC000, 3.3V. (However there's no 'E' clock, MOVE sr,<EA> is privileged and there is no real replacement instruction. This does not seem to affect any programs as of yet.)
[edit] Roadmap
Date | Event |
---|---|
2006-Spring | Verilog sources completed. |
2007-Summer | Board + sources to be released under Open Source licence? |
[edit] Similar projects
On 2006-10-11 Jens Schönfeld at Individual Computers revealed that they have been working on a commercial Amiga in FPGA for the past year called "Clone-A" which is infact similar to Minimig. In contrary to Minimig, Individual Computers's Clone-A is being developed by a three man strong development team that employ a full blown logic analyzer.
[edit] External links
- Picture of Minimig rev 1.0 PCB screen (2006-06-11)
- Picture of completed Minimig rev 1.0 board (2006-11-15)
- Site with Minimig related pictures (Dennis + board at Commodore/Amiga shows) (under construction)
- HCC Commodore GG meet
- Xilinx ISE Webpack
- Announcement of the Minimig project (Amiga.org forum)
- The BoXeR project a Motorola 68040 75 MHz based motherboard.