Close
0%
0%

MSX COMPATIBLE BOARDS FOR RC2014

Create a series of boards designed for the RC2014 bus to achieve MSX/MSX2 compatiblity

Similar projects worth following
Is it possible to achieve full MSX/MSX2 compatibility on a RC2014 platform, using standard discrete components and no tricks? Can a set of boards be designed and built (graphics, sound, RAM/ROM, IO, etc) which can be installed into an existing RC2014 build? And once all boards are installed - can full MSX2 compatibility be achieved? This project is my attempt to find out. RC2014 is a retro Z80 based homebrew platform designed and sold by Spencer Owen. It allows for easy expansion - and there are lots of kits availble to make your retro computer shine. (https://rc2014.co.uk/) MSX is a series of computers sold in the 80s, standarised onto a common platform - providing a consistent hardware and software implementation. (https://en.wikipedia.org/wiki/MSX) UPDATE: I have begun selling kits on my tindie store (https://www.tindie.com/stores/dinotron/) I have combined my project journals into a single site - check it out at: https://www.dinoboards.com.au/

References and inspiration

  • RC2014 - Where this all started for me.
  • OMEGA MSX kit. Demonstrates that its possible to build a compatible MSX2 system, using off the shelf components with a few ebay purchases.  The published designs are a great implementation reference.
  • Artemisa MSX Computer System.  A MSX kit using discrete component. 
  • MSX Technical Data book.
  • https://www.msx.org/

Main Goals:

  • Each board to operate independantly.
  • Each board to operate on a standard RC2014 platform - with appropriate RomWBW HBIOS support.
  • Board sizes will need to be kept small enough to ensure PCB manufacturing costs are manageable.

Stretch Goals:

  • Figure out how to add Floppy and HDD interfaces - can we just use the existing kits available?

Targeted Specifications

  • Graphics: v9958 with full 192K of RAM
  • ROM/RAM Board(s) - Support for MSX Rom images and lots of RAM
  • YM2149 Based Sound chip and Joystick connectors
  • RP5C01 Based RTC
  • Full size keyboard
  • Support for 2 Cartridge Slot expansions (a new backplane perhaps)
  • Optional - cassette interface - because retro!

Schematic_RC2014-MSX-KEYBOARD_2020-11-16_09-20-51.png

Portable Network Graphics (PNG) - 195.87 kB - 11/15/2020 at 22:29

Preview

Schematic_RC2014-MSX-PPI_2020-11-16_09-20-02.png

Portable Network Graphics (PNG) - 123.48 kB - 11/15/2020 at 22:28

Preview

Schematic_RC2014-MSX-RTC_v1.0.pdf

Schematic for RTC board

Adobe Portable Document Format - 89.58 kB - 10/26/2020 at 08:10

Preview

  • Stegosaur YM2149 Game Module for RC2014/RCBus

    Dean Netherton01/13/2026 at 04:33 0 comments

    Next module to be downsized, is the YM2149 Game Module

    Here is the new module in the Stegosaur series. The Stegosaur YM2149 Game Module.

    Like the other modules, it is an alternative to the Yellow Module. With some difference - and the big visual difference is the height reduction.

    Let me highlight some of the key changes:

    Pseudo Stereo Output

    By popular demand, I have updated the design to incorporate the ‘golden ratio’ stereo mix. I am not 100% sure where it first appeared - I see references to https://hw.speccy.cz/ayinterface.html - so not 100% sure who to credit. Many kits based on the YM2149/AY-3-8910 chip have implemented this output circuit.

    The chip has three separate channel outputs (A, B and C) - and by using some resistors dividers to spread the signals across the left and right channels, we get a very full wall of stereo sounds for our games and music playing programs.

    Updating the GAME module to produce stereo output, also meant I needed to update the design of the MSX Music module to pass-through this stereo mix. So its design also had to be updated. More on that in the next post.

    Controller Connectors

    In comparison to the Yellow MSX module, I remove the game controller DB9 connectors to an optional expansion board.

    This new revised packaging should help anyone who wants to place their kit in a custom designed case. As most games and applications will work just fine using the keyboard, the lack of a controller interface is not too big a deal.

    Optional Support for AY-3-8910

    An extra jumper and an optional on-board clock divider circuit, and we can support the very similar and compatible chip - the AY-3-8910.

    Dropped the on-board clock

    In the interest of saving space and simplifying as much as possible, I removed the on-board clock generator. This module is expected to get a clock signal from the main bus (CLK1 or CLK2). Typically that will be generated by the V99x8 RGB Module - which will be used by this module and some other modules of the series.

    I have more details of the module and schematic up on my site now: https://www.dinoboards.com.au/stegosaur/game/

    And its listed on my shop for sale as a kit https://shop.dinoboards.com.au/product/stegosaur-ym2149-game/

  • Next module to be downsized, is the Turbo CPU module.

    Dean Netherton01/11/2026 at 03:56 0 comments

    Next module to be downsized, is the Turbo CPU module.

    Stegosaur Turbo CPU Module
    Stegosaur Turbo CPU Module

    I manage to reduce the PCB size, by removing the on-board slow clock, and relying on an external slow clock source, such as a RC2014 Dual Clock module, or the RGB Video Module.

    I am particularly proud of this module – as it was perhaps the first design I did that wasn’t so much based on stock MSX schematics.

    For those that don’t know - the Turbo CPU module runs a standard Z80 40 pin chip (Z84C0020PEG), at up to 20Mhz. Its not overclocking it - nor does it require the backplane clock to run at 20Mhz. It dynamically switches the clock of the CPU between the bus-clock and its 20Mhz turbo boost speed.

    The clock speed of the CPU is switched to the bus-clock, when the IOREQ line goes low. It holds the processor at the ‘slow’ bus clock for 31 slow clock ticks.

    This means when the processor is communicating with any I/O device, its running at the modest bus clock speed - to ensure compatibility. But when its just ‘processing’ or reading/writing to memory - it runs at its boost speed.

    This turbo boost process gives it a lot of compatibility with existing devices - but can really improve those very slow IX/IY+n operations a lot.

    It was an interesting challenge, to do the clock switch - can’t just do an immediate switch between the two clocks. You have to ensure when it transitions from one clock to the other, that its not done too quickly, that we end up momentarily having a super high frequency sent to the CPU’s clock input; the 2 clock sources (20Mhz fast and the standard bus clock) are not in phase - so when switching it would glitch unless it waits. When transitioning, the clock is ‘stretched’ a little until we sync up with the other clock.

    This module will work just find as a replacement for the stock RC2014/RCBus Z80 processor modules as well as a perfect speedy CPU solution for the MSX2 configuration.

    I have more details of the module and schematic up on my site now: https://www.dinoboards.com.au/stegosaur/turbo-cpu/

    And its listed on my shop for sale as a kit https://shop.dinoboards.com.au/product/stegosaur-turbo-cpu/

  • New Series of Modules

    Dean Netherton01/04/2026 at 02:55 0 comments

    It’s a new year, and I have some new modules under development.

    I have started to look at updating my Yellow MSX series with new PCB designs that fit the more conventional RC2014/RCBus height of around 5 to 5.5 centimeters.

    The original Yellow MSX PCB have a height of around 8cm - near double the typical height. The greater height was generally required, as I needed the extra PCB space to fit all the components for each of the various modules.

    In particular, the V99x8 module is quite a challenge - the 64 PIN DIL chip takes up almost half of the PCB area of a conventional height of ~5cms. Then when you add the RAM chips (4 of them) - well its just not physically possible.

    That is, unless I reduce the RAM to just 64K (down from the 128K). With just 64K, it is possible to fit all components onto the smaller PCB. The lower RAM still allows the VDP to displays all the game graphic modes, just with less RAM available for paging - so some games might not work - but I think many still will.

    But I still want to support the 128K of VRAM - and in fact, it would be very nice if I could extend support to the VDP’s maximum of 192K VRAM.

    What I ended up designing is a main board - at the 5.5cm height, with support for 64K - and an ‘expansion board’ that allows the module to support the full 192K. The height is still the same, but the width is increased a bit.

    Here is a picture of the new design, with the 64K RAM on a single 5.5cm PCB:

    And here is it with the expansion installed:

    With the expansion board, its a tight fit - and the width of the 2 combined PCBs does extend beyond the RC2014/RCBus’s typical spacing. (If the RAM was soldered directly and not socketed it would probably fit in the BUSs’ standard spacing).

    I am calling this series of boards - the Green Stegosaur Series. The intention is that the series will be compatible and mostly the same as the Yellow MSX series, but with the smaller height. It will probably necessitate that some modules are split into 2 - eg the MSX Memory module will definitely need to be split into 2 separate PCBs. So this series will probably require more slots on the backplane.

    If you are not interested in MSX, though, this new Video Module’s form factory, might be a better fit for your RC2014/RCBus rigs.

    I have more details of the module and schematic up on my site now: https://www.dinoboards.com.au/stegosaur/v9958/

    And its listed on my shop for sale as a kit https://shop.dinoboards.com.au/product/stegosaur-msx-v9958-rgb/

  • Art is never finished

    Dean Netherton06/07/2024 at 06:13 1 comment

    Art is never finished only abandoned


    Don't worry - I haven't abandon the project.

    I've been working on the MSX Music Module (and listed a new revision in my Tindie store).

    This revision further reduces some of that annoying digital background noise that could be heard when no music or sound playing. Its still emanate some background noise -- I think it be very hard to eliminate as so much of the various RC2014 modules will generate a lot of EMF noise.

    The latest revision (1.9), increases the gain of the op-amp stage and adjusted some of the capacitors on the feedback. This seems to improve the signal to noise ratio, and it also improved its higher frequency responses.  Its sound much brighter.

    Updated schematic on the github

  • CH376 Module Challenge

    Dean Netherton11/19/2023 at 00:24 0 comments

    Can you tell the difference between these modules - they are both sold as CH376 Modules?

    Both were purchased from ebay/aliexpress traders. Both are sold as CH376 modules.  Both have the same CH376 chip.  

    The one of the left though, has a different pin out.  Notice the 2x3 header pin.  Whereas, the one on the right only has a 1x3 pin header.  And just to add to the change,  the main headers have been swapped.  For the left/original, the outermost pins are the data lines, and for the right, its the inner most pins.

    This alternative form-factor is not compatible with my PCB design.

    On my Tindie store, I had packaged up some kits - and only at the last minute did I notice this very different pinout/form factor change.  I very nearly sent out kits with an incompatible module!  

    I have not been able to source any more of the module as shown on the left.  Only seem to get the one on the right.  

    It now seems that the ebay/ali-express traders are only selling the one on the right -- even if their product page shows the original 2x3 pin header.  You just can not trust what you will end up getting. 

    So I had to redesign the PCB for my Cassette+USB kit to accommodate the change.  As this is just a form factor/pin out change - the software and electronics all still work the same.  Only need to re-route and reposition the cut outs on my PCB.

    So now I have 2 PCB versions for this kit, to accommodate the 2 form factors:

    I have just assembled a kit using this new module form factor - and so far all seems to work just fine.  I do need to do a bit of testing to double check everything.  So if u are waiting to get one of these kits - I can hopefully have new stock listed next weekend.

  • USB Software updates

    Dean Netherton10/28/2023 at 23:58 0 comments

    I have been updating the USB software over the last week or so and making some progress with support for additional hardware types.

    USB Keyboard

    I managed to get a USB keyboard to work.  At this stage, it has very limited functionality.  (arrow keys for instance don't work).  But I was able to boot and control the kit without the matrix keyboard attached - using a USB keyboard only.

    Almost certainly, few games would work with the USB keyboard, but MSXDOS/NEXTOR and CP/M apps seem to work just fine.

    The kit would need the PPI card (part of the keyboard kit) as without the PPI, the system will not boot. 

    I still need to add extra support - arrow keys, caps lock -- and I do wonder if I am able to control the keyboard's capslock LED.

    FTDI Serial Adapter

    This one is interesting.  Have a couple of USB/Serial adapters I've used to connect my PC to the original RC2014's SIO/2.  But I thought, can I now go the other way?  

    But this USB adapter is a vendor specific class.  That is, the USB protocol to control the adapter is not part of the USB specification - its the manufacturer's proprietary protocol.  I could not find any published specification - but there is the public Linux driver for it. The code is quite simple, and so by reviewing that code, it was quite easy to figure out how to configure the adapter and send/receive data over the serial chip.

    This is still very early in the development - managed to get some experimental code to do a loop back test - (connect the TX/RX lines of the adapter).  The code confirms what it sends is also what is receives.  Have this operational at baud rates up to about 38400 - I think I can go higher!

    I've only coded for the specific FTDI 232R chip - as I don't have any other chips to test and verify.  Including from other manufacturers. 

    Also I am starting to run out of ROM space.  All my USB code, mostly written in C using Z88DK/SDCC compiler needs to fit in about 16K.  I am at about 15K!  All part of the challenge.

  • Cassette + USB Module

    Dean Netherton10/21/2023 at 02:05 0 comments

    Okay,

    This one has been quite an effort to get here.  But I finally have a version of the Cassette/USB module completed.  About to list the product on Tindie.

    It was a huge effort developing the software for it.  There was a lot of 2 steps forward, 1 step back, 1 step side, and a few loop-do-loops!

    Learning how USB protocols work for floppy, flash thumbs drives and old magnetic external HDD has been quite a journey.

    After this massive effort, I can now :

    1. Load a BASIC program from cassette (and save), then save it to a USB Flash drive. 
    2. Boot MSX-DOS/Nextor from a flash drive (and use the same drive on my PC for quick file transfer)
    3. Read and write to 1.44MB and 720K 3.5" Floppy disks
    4. Format the floppies

    And also - something that I think was kind of cool.  I got a USB to Centronics adapter and can now print to my 9pin dot matrix printer.

    I have released on new ROM image on GitHub, that has all the new drivers and software.

    More info at: https://github.com/vipoo/yellow-msx-series-for-rc2014/tree/dev-msx-usb-4/cassette-and-usb#msx-cassette--usb-module-designed-for-rc2014

    Product will be on Tindie soon:  https://www.tindie.com/products/dinotron/msx-cassette-usb-module-designed-for-rc2014/

  • Progress Update

    Dean Netherton09/28/2023 at 23:31 2 comments

    Its been a while since I posted here about the project. 

    I have been really struggling to find the time (the usual suspects, work, life etc)

    First, I want to express my thanks to everyone who has taken an interested in my little project, liked/commented here on Hackaday or purchased some of my kits.   Your encouragement and support is fantastic and much appreciated.

    And with that, I was finally able to dust off the soldering iron and get back into developing and updating stuff.

    I am working on 3 main tasks at the moment.

    1. A new revision for the Video Module to support the V9938 chip.
    2. A new revision of the MSX Music module that reduces the idle background noise caused by nearby digital signals.
    3. And a new kit under development, the USB Module (based on the CH376 module). 

    And I also managed to restock my Tindie store.

    V9938 version of the Video Module

    When I was restocking my store recently, I needed to source some new V9958 chips.  I found that the price for the chip has gone up a lot - at about $45-$50 USD.  That seems like its doubled in price since I started this project.  This would have been a better investment than an AI company! 

    But the previous generation video chip, the V9938, still seems to be generally easy to source and at a lower price.  

    One day though, these chips will become virtually impossible to get.

    Given this, I decided to update the Video kit to enable support for the V9938. (I guess that makes it more retro!).

    I also redesigned the power filtering and re-arrange the layout a bit to help reduce noise leaking into the video signal paths.

    The V9938 has some minor differences to the V9958.  

    It has features that were removed in the V9958, such as a mouse interface (I don't think was used very much) and direct support for a composite video out.

    Graphically the V9938 does not support the 'near true' colour screen mode.  It also lack the support for smooth horizontal scrolling that some games took advantage of.  But it still offers a very similar capability, including all the other screen modes, sprites and memory support.  Its programmed in the same way, so the software and games just work.

    Hopefully I can have this new revision listed in my Tindie store soon - with schematic and more details to follow.

    New Revision of the MSX Music

    One of the things I was less than pleased with this kit, is its susceptibility to the digital noise and nearby EMF interference, causing buzzes and hums to be heard when no music was playing.  This was especially noticeable when running the Z80 at the 20Mhz speed. After experimenting with a few inductors and capacitors, I managed to isolate a good chunk of the noise.  Its now much better.

    I am perhaps starting to run the YM2413 audio chip at closer to its minimum power specification.  The low pass filter applied to isolate the digital noise, does drop the voltage a little.  If you combine perhaps a slightly lower than 5V source, some general loss in the backplane power rail - we start to approach the minimum spec voltage of 4.75.  But I think there is enough headroom to ensure its always above spec.  I have done lots of testing, and all seems rock solid reliable. 

    The USB Module

    This has been my main focus over the last few weekends.  The amount of effort applied to get this working is rather ridiculous when I think about it.  I was beginning to wonder if I was insane trying to get this to work.  Most of the effort is in the software.  I have had to learn a lot about USB protocols as well as the specific USB floppy and thumb drive protocols.   Not to mention figuring out how to enumerating devices plugged into hubs.

    The CH376 module seems capable enough, but the documentation did leave me pondering a lot.  

    Trying to fit all this USB protocol logic into a page of the ROM (approx:...

    Read more »

  • Sponsorship from PCBWay

    Dean Netherton05/07/2022 at 03:30 0 comments

    As I started to design and explore creating a USB/Cassette storage module for the Yellow MSX series for the RC2014 platform, PCBWay reached out to me and offer to help me out with my little MSX project.  

    It was amazing to get the support for my little project from PCBWay - to be noticed was a little overwhelming.  I have seen PCBWay sponsor and support many in the Retro community - but I never thought in a million years that they would be so kind and gracious to support my little adventure.

    Last weekend I received my first PCBs under their sponsorship support.  I was very excited as I open and saw my latest PCBs - including the next iteration of the USB module.  I need an updated iteration for the module to allow the CH376 to fit nicely.  It requires a 'cut-out' space for the USB socket.  PCBWay had manufactured the board precisely and the CH376 module fit perfectly.

    I am very excited to solder this board up and test it all out.

    Thanks PCBWay for your support https://www.pcbway.com/

    The production and delivery of the boards were very prompt.

    What's in the box?

    Packaged safely and securely.


    PCBWay had supplied with new Video and MUSIC boards for my tindie customers, and the latest prototype for the USB/Cassette board!  See the odd cut out for the CH376 module!

    The CH376 module fit perfectly and keeps a low profile on the new board

    Thanks again PCBWay for stepping up and supporting me and the community of hackers and tinkers.

    https://www.pcbway.com/

  • USB

    Dean Netherton05/07/2022 at 02:40 0 comments

    One of the final things missing from the Yellow MSX series of kits for the RC2014, is the ability to access typical MSX storage devices (floppy and cassette).

    Without storage such as this, its hard to claim that we have achieved full MSX compatibility.

    There are plenty of schematics online for how to give the MSX access to cassette storage.  Its not a very complicate design -- that is the easy part - although I have yet to get a working old-timey cassette player that works - so that makes it hard to test and validate cassette storage!

    For the floppy interface, I considered designing something based on the work of Dr. Scott M. Baker (https://www.smbaker.com/z80-retrocomputing-part-14-rc2014-floppy-controller-boards).  I have actually built one of his designs for the RC2014 CPM configuration - and its worked well - it would only need the appropriate software driver written to support MSX-DOS/Nextor.

    But I decided to go for a different and slightly more modern approach and create a USB interface for the system.  Based on the very cheap and easy to source CH376 modules.  There has been a fair bit of effort by some members of the MSX community to support this module.  The work done to date was invaluable to get the software and hardware working: 

    https://github.com/S0urceror/MSX-USB 

    https://www.msx.org/news/en/use-your-msx-as-an-usb-keyboard

    http://rookiedrive.com/en/

    https://github.com/Konamiman/MSX

    By going with USB it gives me:

    * A more reliable access to floppy - purchasing cheap new USB drives, will be more reliable than attempting to use old used floppy hardware.

    * Aside from floppy, we can access many other storage systems: flash storage, USB HDD, etc - making it easy to transfer files from a PC to the system

    * Other device types can be considered - if the software can be written - such as network interface, serial interface, keyboards - so many possibilities - although the software work is quite demanding.

    I have uploaded 3 videos that shows the work in progress for access floppy, flash storage.  The driver written to-date, currently supports many USB thumb drivers - and I have tested the floppy access for 2 floppy drives (an older IBM/Teac drive and a brand new no-brand drive from ebay)

    It took an enormous effort for me to learn how to access drives over usb, how to use the various USB protocol/standards for floppies, flash and hub access.  The software still has more work -- it currently is about 8k in length.   

    The video shows an early version of the PCB and schematic.  It changes a bit.  With better physical support for the CH376 module and the layout for the cassette design (cassette is yet to be tested and validated)

View all 40 project logs

Enjoy this project?

Share

Discussions

Jorisclayton wrote 11/18/2024 at 22:36 point

Hi friend, Your project looks amazing, Im trying to do something close to this. Can you share with me more information abouth the V9958 board using the SRAM? I already built a Z80 computer with a TMS9918 and 32K SRAM with a 62256 but, this time, Im trying to build a better one with Z180 and V9958, I pretend to make it portable, like a complete and independent 8 bits notebook. For that, the 61464 DRAM chips are a mess, as their consuption is around 0,5W for each chip and a SRAM like AS6C4008 uses only 150mW by itself. I do not find much about this V9958 board that you build, only some photos. Did it works without problem? can you share the Schematic? Thanks

  Are you sure? yes | no

Dean Netherton wrote 11/18/2024 at 23:29 point

Hi there,

> Your project looks amazing,

Thank you.

> Im trying to do something close to this. Can you share with me more information...

That's going back in time for me a bit - I abandon using the SRAM against the V9958.  For me, it was more a question of footprint.  The DRAM option actually needed less footprint - as the SRAM required a big 32 pin chip, plus some other logic.

I recall the issue I had, was it seem to work, but there were artifacts - and at the time I put it down to some weird timing issue I could not fathom.

In hindsight, it may have simply been a software issue - I learnt that although the V9958 is more capable than the TMS9918 - its actually slower (and needs the software to wait a bit more) in the compatible text modes.  So it may be, that the visual artefacts I was observing was down just to software and the original design was ok.

But, by the time I reasoned this, I had already moved on to using the DRAM.

Not sure I have any of the schematics from the original design - if I can find them, i certainly send what i have - but its a few years in the past now...

Dean

  Are you sure? yes | no

Richard Riley wrote 05/03/2022 at 18:54 point

You really need an index and overview. It's nigh on impossible to figure out what works and how from incomplete , out of date, and unserviced hackaday blogs.  It all looks great , but it's very hard to follow.

  Are you sure? yes | no

Dean Netherton wrote 05/07/2022 at 01:56 point

The blog is more to follow the journey of my learning and progress - not really the best place to learn the system in total.  I would recommend for an overview to checkout the github project pages: https://github.com/vipoo/yellow-msx-series-for-rc2014.  There are a lot of modules, so it will require a bit of time to read thru them all and get an understanding of the system.

This is purely a very part time project these days - Saturday afternoons only kind of thing - its hard to find the time to document and make it a professional like experience. 

  Are you sure? yes | no

mselkin wrote 05/01/2022 at 14:45 point

Hi, thank you for this project. I have placed an order. Could you please provide some advice for a beginner: would I need any boards or modules from a RC2014 kit (I do not currently have a RC2014), or if I use your backplane and all your modules, would I have everything I need to build a working system?

  Are you sure? yes | no

Dean Netherton wrote 05/07/2022 at 01:53 point

Thanks for the order.  For a beginner I would strongly recommend you give yourself time to develop the soldering skills.  But if you take your time, test with a multimeter as you go and carefully inspect as you go - you should be fine.

I have pretty much replaced all the standard RC2014 modules. If you get my backplane and associated modules - you will have a working system.  But you will not have any way to save programs.  The Compact Flash module is the only module from the standard set i use - which allows saving/loading programs/files etc to a compact flash module.

I do have a new module under development to allow access to floppy and cassette - but its still very early days for that one.

  Are you sure? yes | no

mselkin wrote 05/07/2022 at 18:14 point

Thank you very much for your reply - I think I'm ok with the soldering - I've assembled many kits, but I am new to understanding the hardware. I look forward to building your kit and learning along the way. I will certainly purchase the disc and tape module, when you have it ready. Thanks again, Mark.

  Are you sure? yes | no

Dean Netherton wrote 05/20/2021 at 09:16 point

For those who are waiting for new stock of the kits on tindie, I plan to have new stock listed this weekend.

  Are you sure? yes | no

Similar Projects

Does this project spark your interest?

Become a member to follow this project and never miss any updates