DE10 Nano

Back in business!

Just got this board a few days ago! Thank yous go to mahen, who was kind enough to sponsor the board for me (thanks again man, I really appreciate it!).

DE10 Nano board

For those not familiar with it, this board is the basis of MiSTer, which is a project that aims to recreate various classic computers, game consoles, and arcade machines on FPGA hardware – and as the name implies, you could say it is a continuation of the MiST project.

The board is surprisingly small, almost the size of an Arduino Mega, but really powerful, with a CycloneV FPGA with more LEs than the one on the DE1-SoC board, plus it has an HDMI output. The only thing missing is some extra SDRAM, but that can be attached to the expansion connector. You can read more about the board here.

The reason I got this board was to continue working on the minimig core, and the first thing I have planned is to try and implement a CPU emulation on the hard ARM CPU cores, that could replace (or at least be an alternative) the tg68k CPU core.

I’ll have to wait to receive the other MiSTer parts besides the FPGA board (at least the SDRAM addon is mandatory for the minimig core), but until then, I really want to try and make something with the HDMI output, as I’ve never worked with it.

And I have just the right project in mind! Will post an update in a day or so.

 

Until then … cheers!

 

p.s.: I can’t believe how long it’s been since I posted anything :S

An update on minimig, and a (late) Happy New Year!

I know there wasn’t much updates on the minimig status, but with good (;)) reason: I’ve been pretty busy, so I had little time to work on minimig updates. I did spend quite some time on rewriting the CPU <-> minimig interface, which will hopefully reduce timing problems and enable me to finally add the ethernet Zorro interface. The CPU clock will also be reduced to 28MHz, hopefully that won’t affect the CPU speed much. This is quite a complex task, so don’t expect results immediately.

On the other hand, I’m trying to fix some smaller problems and bug reports, and the intermediate beta releases will be available as I work toward the v1.3 release. I already have the supporting scripts ready that will help me build the firmware & core, increase build numbers, git tag & commit, zip it up and upload it to the server. First of these releases is already available here:

Or, alternatively, there will be a .zip file that will always contain the last released version here:

Don’t expect too many changes though – each new release will probably only contain two or three small updates. In this release, just two changes are important: fixing the SDRAM refresh counter, which should help with RAM stability, and the OSD display fix for productivity video modes. More to follow soon, though! 😉

 

UPDATE:

The latest beta builds will be available here: https://somuch.guru/minimig/minimig-mist/#latest-beta

 

Cheers!

minimig AGA v1.2 for the MiST board released

There is a new release of minimig-AGA for the MiST board available, grab it on the minimig-mist page!

While the CPU is still not as stable as I’d like, the latest bitfield fixes by Till Harbaum fixed a lot of games and demos that didn’t work properly before. The OSD Turbo option is not needed or recommended for games or demos anymore, but could still be used for a little speed up in Workbench or programs. F11 key was fixed – when HRTmon is enabled, the F11 key enters the monitor program, when it is disabled, the F11 key acts as a normal Amiga HELP key. There is a CD32Pad option in the OSD, but I didn’t have time to fix the CD32 joypad emulation, so the option doesn’t have any effect for now. Initial support for programmable display modes (productivity modes, like 640x480x60Hz) is available in this core, but there are still some problems with them – some pixels are missing on the right edge of screen, and lowres sprites (mouse pointer) seem to have some problems – You can switch to hires pointer to get around this problem.

The planned ethernet support will unfortunately have to wait till the next release.

Please report any bugs or problems here:
https://github.com/rkrajnc/minimig-mist/issues (if you have a Github account)
– or –
https://gitreports.com/issue/rkrajnc/minimig-mist (no account needed)

Here are all of the updates made in this release:

  • initial implementation of programmable display modes
  • OSD HRTmon enable / disable switch is working (ON – F11 acts as NMI and enters HRTmon, OFF – F11 is HELP key)
  • proper handling of CPU access to chipRAM & custom regs – CPU waits for free slot when turbo option is disabled
  • fixed playfield 2 color lut offset when playfield 2 has priority for OCS/ECS modes
  • some IRQ changes
  • added support for undocumented Agnus / Denise behaviour when BPL=7 in ECS/OCS mode (fixes demos like SushiBoyz by Ghostown, Sliced&Diced by Dekadence, etc)
  • blitter line mode fixed (fixes demos like SushiBoyz & Sunglasses by Ghostown, Vectorize by RSi, etc)
  • bitfield instructions fixed, barrel shifter implemented by Till Harbaum
  • fixed colortable for sprites (bplxor) – fixes Alien Breed 3D (and probably many others)
  • fixed keyboard rate
  • kickstart ROM is also uploaded to mirror position (E0)
  • fixed reset problems & fastRAM disappearing
  • added CPU CACR cache control, fixed reading CACR reg
  • added scanlines for non-doublescaned config
  • fixed video dithering – both spatial & random dithering weren’t working properly

Enjoy!

A new release for the original minimig board

Two bugs were discovered and fixed for the original minimig board, and a new release was prepared.

The first bug was in the minimig blitter implementation, which was missing an undocumented feature of the original Amiga chipset. When using the blitter in line mode, the first pixel of the line is written to D pointer address, and all subsequent pixels are written to C pointer address. This bug was obvious in demos like SushiBoyz & Sunglasses by Ghostown, Vectorize by RSi, etc.

The second bug was a special undocumented feature of Denise / Agnus when number of bitplanes in BPLCON0 is set to 7. In this case, Denise enables six bitplanes, but Agnus DMA sequence only fetches four bitplanes. This way, the remaining two bitplanes can be updated ‘manually’ with CPU / Copper writes. This bug was seen in demos like SushiBoyz by Ghostown, Sliced&Diced by Dekadence, etc.

Both fixes, together with my previous addons to the minimig core for the original minimig board are available in the new release minimig-rel4.

Head over to the Original minimig page, grab your copy and enjoy your minimig!