Kepler X

Multifunction expansion board for X680x0 series

(Latest information is available in Japanese)

What is Kepler X?

More than 30 years have passed since the release of the X68000. It is now the 21st century, and the auction prices of expansion boards, not to mention the main units, continue to rise year after year, making it especially difficult to obtain expansion boards such as the Mercury Unit and Neptune-X, which were not widely distributed.

I wanted to change this situation and began developing the Kepler X with the spirit of "if we don't have it, we will make it".

It is composed of FPGA and Raspberry Pi, and is designed as an "evolving expansion board" that allows new functions to be added one after another by rewriting the FPGA circuit configuration and Raspberry Pi software.

※ The Raspberry Pi is optional. If added, additional functions can be used.

 

Origin of the name

The name comes from Kepler, a space telescope launched by NASA to discover exoplanets in our solar system.

 As many know, the X68000 doujin hardware products were named after planets, but I decided with the name Kepler X not because we want it to become a new planet in its own right, but because I want it to be the foundation for discovering future possibilities for the X68000.

I hope those who have Kepler X in their hands will discover new possibilities.

 

What can it do?

At this point (as of January 11, 2023), the following features, while rough, are starting to evolve.

  • Full memory (automatically expanded to 12M)
  • PCM and FM sound source compatible with Mercury Unit
  • Built-in audio digital output (not supported on X68030)
  • MIDI IN/OUT
  • Built-in mt32-pi (requires Raspberry Pi)

Additional features such as Ethernet, Wi-Fi, USB, BLE, and storage will be added in the future.

 

Expansion Memory

It automatically recognizes and expands the internal memory of the X68000 up to its maximum limit. 1MB machines are not yet supported, but will be in the future.

Mercury Unit

It is able to simulate the functions of Mercury Unitt V4 (MK-MU1O). Two FM sounds (YM2610 compatible cores) are available.

MIDI I/F

MIDI I/F board functions allow you to play MIDI instruments. MIDI terminals are TRS-MIDI (3.5mm jack).

mt32-pi

If a Raspberry Pi is attached to the Kepler X, it can be operated as an mt32-pi. Audio is digitally mixed with other sound sources and output.

Digital Audio

All audio synthesized on the Kepler X output through the digital audio jack. Analog output is also possible due to the on board PCM5102.

Future

Kepler X is customizable because it works with cooperative operation of FPGA and Raspberry Pi. It has the potential to be rewritten with firmware to add networking, graphics, and other functions.

Block Diagram

keplerx-block-diagram.png

Audio Routing

keplerx-audio-block-diagram.png

 

 

Progress

The following is a list of features to be implemented and their progress.

  • 🟢Expansion Memory
    • 🟢Automatic recognition of the amount of memory installed and automatic expansion of the necessary area in 1 MB increments
    • 🟢Memory access is still delayed and not running with no wait time. Will be improved at a later date.
    • 🔴The memory area 1MB to 2MB (0x100000〜0x1fffff) is not supported.
      • The reason: https://twitter.com/kunichiko/status/1657620113603035138?s=20
  • 🟡Digital Sound
    • 🟢Volume adjustment for each sound source
    • 🔴Aliasing noise due to unimplemented LPF at sampling rate conversion
  • 🟡Mercury Unit
    • 🟢PCM playing
    • 🟡PCM recording (S/PDIF 48kHz only)
    • 🟡OPN playing
      • 🟡When using the music mode with OPN on the 2022 version of Ys I & Ys II, it becomes a series of hits (and garbage on the screen) when the decision button is held down. It seems that this is not a problem with the real Mercury Unit. The cause is unknown. (The 2022 version of WANDERERS FROM Ys has no problem.)
  • 🟢Built-in audio emulation
    • 🟢FM sound (YM2151) emulation
    • 🟢ADPCM (MSM6258) emulation
  • 🟡MIDI I/F
    • 🟢MIDI OUT
    • 🟡MIDI IN (It may work. Never tested it.)
  • 🟢mt32-pi
    • 🟢play with mt32-pi
    • ○control mt32-pi from X68000
  • ○Neptune-X
    • ○support Raspberry Pi's Ethernet
    • ○support Raspberry Pi's Wi-Fi
  • ○Nereid
    • ○support Raspberry Pi's USB
  • ○TS-6BGA
    • ○ Enable extended graphics output from DVI output
      • Might have to install special FPGA configuration that supports only extended graphics
      • In that case, may install two Kepler X
  • ○Other functions
    • ○save configuration to on board EEPROM
    • ○control from your phone via BLE
    • ○Bluetooth audio
    • ○effective use of DVI output

 

Limitations with the X68030

Kepler X has the ability to monitor other I/O accesses, such as the built-in FM sound (YM2151) and built-in ADPCM (MSM6258). This makes it possible to emulate the built-in sound on the Kepler X board, and the sound signal of the built-in sound is available from the audio output terminal on the board. This means that there is no need to use an external mixer to mix the audio.

Of course, this is an emulation, but it is a level of perfection that can withstand practical use.

However, the X68030 doesn't allow monitoring to the built-in I/O from the expansion I/O slot. Therefore, the X68030 has the following limitations:

  • The emulation of the built-in sound source does not work, so the board can only output sounds such as Mercury Unit, mt32-pi, etc.
  • X68030 will not be supported in the event of future graphic system enhancements, such as monitoring access to the built-in VRAM

I hope that you will understand the above limitations before making a purchase decision.

 

WHEN CAN I BUY IT?

I'm currently producing V2 board for general distribution. Please be patient on the distribution.

I'm a 40-something engineer who spent my teenage years with MSX, X68000, and Mac. And I built the VDP portion of a 1-chip MSX when I was in my 20's. My office work at the company are extensive and demanding, so my stress-reliever is restoring and playing with the old computers I played with in my youth.

Kunichiko (くにちこ)