An update to “List of Homebrew Video Games Consoles”

January 31, 2011

I’ve neglected my list of homebrew video game consoles, so here’s a update:

  • www.xcores.orgMy friend Yvo’s site related to the awesome Xmos chip.
  • mikronauts.comPropCade is a self-contained and affordable Propeller platform for emulating old computers (Z80, 6809, etc) and old game consoles.
  • www.retrode.orgNot a console as such but a handy way feeding games to your SNES or Mega Drive / Genesis emulator from your original cartridges.
  • www.4dsystems.com.auPoGa, a Portable Game Development console looking a lot like a SNES controller.
  • www.chameleon-dev.comChameleon PIC 16-Bit and the Chameleon AVR 8-Bit are yet another Propeller based systems this time with the addition of a standard Microchip PIC or Atmel AVR microcontroller.
  • www.fpgaarcade.comA site dedicate to recreating gaming hardware from the past in modern programmable FPGA devices.
  • www.lucidscience.comA beautifully documented insight to designing and building your own classic console
  • www.microvga.coma design offering a low-cost Microcontroller to VGA interface
  • www.ladyada.netA new system from LadyAda offering a 320×240 TFT color display with resistive touch screen.
  • rossum.posterous.comRBox: A diy 32 bit game console for the price of a latte
  • www.linusakesson.net linusakesson “craft”

the original list is still here:

Advertisements

Super VDP2 !?

August 29, 2010

I’m pleased to say our good friend Yvo is back. You may remember his brilliant VDP1 (Video Display Processor) video engine for the Xmos and his great Mario demo video. Yvo has said he’s working the specs for VDP2 and promises some great new features. In the meantime check out his VDP1 video engine on the Xcore Exchange.


XArduino – A 400-MIPS co-processor for Arduino

February 7, 2010

Recently I’ve been working on XArduino which is a XMOS XS1 L1 co-processor for the Arduino open-source electronics prototyping platform.

The XArduino board provides Arduino applications with a 400 MIP’s multi-threaded 32-bit co-processor, as well as providing a VGA video output and PS/2 keyboard/mouse input for Arduino application.

It features a standard XTAG-2 to for programming and debugging. In addition the XTAG-2 interface will allow for XK-1 boards to access the VGA and PS/2 interfaces as well as way of connecting standard Arduino shields.

Note: This is a 3.3V-only board

The project is hosted at xcores.com/projects/xarduino

Creative Commons Attribution-ShareAlike 3.0 License


X-DTV – Preliminary schematic and PCB v0.42

January 7, 2010

X-DTV is a project I’ve been working on with Yvo of xcores.org. The idea is to make a XS1-L1 64 based retro-minimalist homebrew game console similar in concept to the Uzebox and Zuzebox.

Like the X-One before it, X-DTV will use Yvo’s VDP video engine but instead of driving a VGA output it will drive a NTSC TV output. We hope to get PAL TV as well but the 35.46895MHz oscillators have proven difficult to get a hold off (If anyone know where we can get them off the shelve without a large MOQ then drop me a comment).

The X-DTV’s specification is:

  • XS1-L1 64 internally clocked to 400MHz with 64K RAM.
  • 5-bit R-2R Video DAC for driving NTSC
  • 2x NES or SNES D-PAD connectors
  • SD Card interface
  • Stereo PWM audio
  • XTAG-2 Interface
  • 2x 5-way XLINK for expansion

The latest (not quite complete) PCB is below:

A PDF of the schematic is here.


X-One – Preliminary schematic v0.10

November 24, 2009

I’ve talked a few times about the X-One Xmos based console so I thought better put up a schematic to show how it all goes together. A Xmos XC-2 is found at the heart of the console with the rest of the circuit providing a R-2R video DAC, PWM audio and SD Card interface. Ethernet is provided by the XC-2 card its self. The software kernel is Yvo’s VDP video engine.

The pdf is here: XC-2 VGA 0v10


Sparkfun XS1-L164 Development Board

November 7, 2009

Sparkfun have a new Xmos based development board. It features the powerful Xmos XS1-L1, multi-threaded processor. The processor is the XS1-L1-64 processor and is housed in a 64LQFP package and has the following features:

  • Event driven processing at 400MIPS
  • 64 kBytes of SRAM
  • 8 threads
  • 36 user I/O pins
  • 8 kBytes of OTP
  • power consumption typically 450µW/MHz

sparkfun XS1-L1-64 2

As well as the Xmos processor the SparkFun development board also features a USB interface based on FTDI FT232, external Flash EEPROM and a JTAG header. I/O is provided by 32 I/O pins brought out to pin headers next to a small prototyping area. Checking out its schematic, it looks like it can be powered form both a wall adapter and its USB port. The USB interface is to support a UART over USB and can’t be used to directly program the processor. Instead a 20-pin JTAG interface is provided. This looks to be compatible with Xmos’s own XK-1 JTAG interface and therefore Xmos new XTAG2. I’m hoping my XC-2 JTAG adapter will work with it as well.

Its competitively price at $50 or ~£30 but you still need to provide a JTAG adapter but these are available for $50. The only criticism I would make is I would liked to see the on board USB used to provide a programming (JTAG) interface as Xmos did with their XC-5 board but that said I’m hoping to get one soon and use it in my X-One console with Yvo’s VDP VGA video driver.


Manic Miner on X-One Console

November 3, 2009

As promised in my post of 15th October, here’s some screen shots of Manic Miner on my Xmos XC-2 based X-One console. So far I’ve only coded level 1 and I need to add code for the SNES controllers and game play and off course the rest of the 20 levels to finish it off.

Manic Miner Lvl 1

The graphics were hand coded by extracting the pixel data and colour attributes for the first level from a Manic Miner ZX spectrum binary. A very mandraulic process involving switching between two editors and a couple of editor macros but it got the job done. I used Andrew Broads and Icemans (Chris Wild) excellent web sites for the screen layout information. The video engine is Yvo’s VDP for the XC-2 which provides up to 2 backgrounds and up to 32 sprites (8×8, 16×16, 32×32, 64×64 etc)

Manic Miner on X-One
Watch this space more to come.