Sunday, November 20, 2016

Retroactive's New 64drive HW2 - Now You're Playing with Ultra Power!

Retroactive recently began shipping their completely redesigned 64drive. It offers a solid alternative to the Everdrive 64 and provides a number of special development oriented features. The new HW2 features an Altera Cyclone IV FPGA and retires the Compact Flash (CF) interface in favor of a discretely positioned micro SD card slot and USB interface for N64 game development.

Here's a quick run down of the notable electrical components contained in this cartridge:
FPGA - Altera Cyclone IV (EP4CE10F17C8N)
2x SDRAM - Alliance Memory 1Gb DDR2-800 (AS4C128M8D2-25BCN)
USB Interface - FTDI Hi-Speed USB to Multipurpose UART/FIFO (FT232HQ)
ST 8Mbit Serial Flash memory (25P80VP)
Microchip Technology 8-bit MCU (PIC16F1613-I/ST)
Ai-Thinker Serial WIFI MCU module (ESP8266MOD)

What's most surprising is the inclusion of a Wi-Fi Module! When inquired as to it's usage, the tentative future feature is - "to [sic]be able to post doge pics on twitter from my N64".

A "fuller" review to come soon. So far everything I've tried with the ED64 v3 also works with the 64drive HW2. The UX is a bit nicer on the 64drive than the ED64!  Stay tuned!


Sunday, November 13, 2016

NES Classic Palette - Ready for Consumption!

After sifting through the NES Classic's noise texturing, I've extracted the color palette for the NES Classic! The "sifting" was accomplished by running a median filter to select the correct "original" color.  This allows the palette to be used on other devices that may add the noise texturing Nintendo provides with the NES Classic.

If you'd like to try my NESCLASSIC palette, you can download it here.

Here are sample images using the NESCLASSIC palette.



Thursday, November 10, 2016

NES Classic Palette "Beta" - Sifting Through the Noise

Without further ado, here is my capture based extraction of the NES color palette used by the new NES Classic! Nintendo added a surprising feature - subtle active "noise" throughout the picture. I surmise this was to give a "magic" texture to the image for games with large flat fields of colors. See the following image capture with zoomed in snippet to observe the noise.

UPDATE: Release version of the NESCLASSIC.pal can be found here.

If you'd like to try my NESCLASSIC palette, you can download it here.

Thursday, November 3, 2016

NES "Hybrid" Palette - Striking a Balance Between Composite and RGB

After "accurately" capturing the NES composite video signal and creating a palette, I felt that the resulting image could use some seasoning of sorts.  While I enjoy the FCEUX palette, it can be a little too vibrant with a number of titles in the NES library.  I took the opportunity to create a "Hybrid" palette - an interpolation between my NESCAP and the FCEUX palettes.  The results of this palette give a best of both worlds colors.  Even the purple-ish sky in Super Mario Bros. retains some of it's purple-ish without going too deep into saturated sky blue.  Keep in mind that the color temperature and other settings on your display heavily influence the perceived color as well as the viewer's vision system (eyes and brains!).

If you'd like to try my HYBRID palette, you can download it here.

If you'd like to try my NESCAP palette, you can download it here.

The following images have NESCAP on the left, HYBRID in the middle, and FCEUX on the right.

Sunday, October 30, 2016

Creating an "accurate" NES NTSC Color Palette - Revisited

After discussing my NES palette capture pursuits with Brian Parker (RetroUSB) at PRGE 2016 I decided to revisit the sampling process of the paltest palette capture images.  Instead of running multiple median filter passes to normalize the captured image for sampling, it was discussed to try taking an area of pixel values and averaging them.

If you'd like to try my NESCAP palette, you can download it here.

The following is a debug image that plots out the pixels I sampled for the average.  This was useful for ensuring that I wasn't sampling erroneous data and/or sampling unintended colors.

The resulting palette, NESCAP.pal, was within +/- 1% difference, so the original NTSCU.pal still is a valid palette to use, but there's always the nth degree of improvement to be made as seen below!

Friday, October 14, 2016

N64 HDMI "bit-perfect" Captures: UltraHDMI + BMD Intensity Pro 4K

Here are some "bit-perfect" 1080p captures of the UltraHDMI mod for the Nintendo 64 in action. The special thing about the BMD Intensity Pro 4K is it's ability to capture 1080p60 HDMI sources with no color space conversion, which results in a 1:1 copy of the source signal! The UltraHDMI was set to 1080p60, Sharp Pixels set to Integer+ (5x scale), and VI de-blur enabled where applicable. Enjoy!

Monday, October 10, 2016

Creating an "accurate" NES NTSC Color Palette

On the heels of comparing existing color palettes included with the Hi-Def NES and AVS I decided to see if the BMD IP4K could capture composite video from the original NES.  To my surprise, the IP4K does, so the creation of a NTSC palette was imperative.  While the unsaturated palette claims to be an "accurate" palette, I've found that there are a number of color errors in the palette that I surmise are the result of inaccurate capture equipment.  The errors are consistent with lossy color space conversion (green/purple errors).  See below for an illustration of my palette (NTSCU.PAL) compared to the existing capture based palette.

If you'd like to try my NTSCU palette, you can download it here.

Here are some examples of the NTSCU palette in action.



Sunday, October 9, 2016

AVS and Hi-Def NES Palettes Revisited with the BMD Intensity Pro 4K

In my last post I discussed taking screen captures of the various color palettes currently available for the AVS and Hi-Def NES.

After writing a .NET program that takes an image capture and generates a palette file for use with software emulators, such as FCEUX, I confirmed that the PEXHDCAP (with its RGB 4:4:4 to YUV 4:2:2 color space conversion) is unsuitable for accurate image analysis and palette file generation.  RGB 4:4:4 to YUV 4:2:2 color space conversion (includes chroma subsampling) is found on virtually all HDMI capture cards on the market including the Elgato solutions that are popular with the streaming crowd.

After searching for an affordable solution I discovered that the latest Black Magic Designs Intensity Pro 4K supported uncompressed RGB 4:4:4 HDMI input at 1080p60!  After having troubles with their original card, the Intensity Pro (IP), with its obtuse and strict UX, I was leery to try again with the IP4K.  Like the PEXHDCAP, the original IP color space converts the HDMI input as well, making it impossible to get accurate pixel values from captures.  Thankfully, the Pro 4K has proved to be a redemption, as you can get bit perfect captures with the IP4K!  Being able to capture 1080p60 sources is a huge boon over the IP and PEXHDCAP as well.

Without further ado, here are the raw captures for the 7 palette options (4 AVS, 3 Hi-Def NES).  As noted before, and now fully confirmed, the FCEUX palette on the Hi-Def NES is without a doubt, not actually the FCEUX palette, but rather a custom palette that appears to be Kevtris' own custom creation (diff comparison pictured first).


Download UNSATv6.pal

Download YUVv3.PAL



Download HDN_PC10.PAL

Sunday, September 25, 2016

RetroUSB AVS and Analogue Nt (Hi-Def NES) Palette Comparisons

With the recent release of the RetroUSB AVS along with beta v1.20 firmware the option to select pre-defined palettes is now available. While I really enjoy the new NES color palette provided by RetroUSB (aka "Original"), I can also see why some may like some alternatives including myself! Thankfully per my request to the creator of the AVS, my favorite NESRGB palette (FCEUX aka "Improved") was added to the new firmware. While it's a bit garish (not nearly bad as the Play Choice 10 palette), it had me wondering whether or not the FCEUX palette included by default with the Hi-Def NES was actually the FCEUX palette afterall!  I had noticed from the get go that the Hi-Def NES produced unfamiliar colors, despite the FCEUX name label.

After taking HDMI captures using a StarTech PEXHDCAP it appears that the "FCEUX" palette on the Hi-Def NES isn't acutally the FCEUX after all!  I used Loopy's PALTEST NES program ( that uses HW tricks to display all of the NES colors on screen at once to capture the 7 palette choices available on the AVS and Hi-Def NES (4+3 respectively).

Here is the FCEUX palette comparison (AVS then Hi-Def NES). Notice how a number of colors are quite a bit different, especially in the red colors.

AVS FCEUX aka "Improved" Palette
Hi-Def NES "FCEUX's" Palette
Notice the darker reds along with de-saturated colors that do not match the original palette
I will be following up with "diff" pictures of the various palettes so that the differences between palettes can easily be consumed.  Stay tuned!