Omega, a new MSX2 compatible computer in development

Omega, a new MSX2 compatible computer in development

par PAC on 15-10-2019, 19:25
Sujet: Development
Étiquettes: msx2, V9938, V9958
Langues:

Source: MSXBlog

A new contender joins the club of modern MSX compatible computers. In the era of emulators and FPGA based MSX devices, Sergey Kiselev introduces Omega, an open source MSX2 computer with a conventional design and making use of original MSX parts. The device also includes a mechanical integrated keyboard giving a more MSX appearance, a very compact and smart solution that will delight the audience.

The Omega specifications are as follows:

  • Processor: Zilog Z80 CPU (CMOS version - Z84C00) running at 3.58 MHz.
  • RAM: 512 KiB SRAM, expandable to 4 MiB using an optional daugherboard. MSX* compatible memory pager.
  • ROM: 256 KiB or 512 KiB Flash ROM.
  • Video: Yamaha V9938 or Yamaha V9958 VDP.
  • 128 KiB Video RAM.
  • Composite, S-Video, and RGB video outputs.
  • Audio: Yamaha YM2149 or General Instrument AY-3-8910 PSG.
  • Two MSX compatible cartridge slots.
  • Keyboard, joysticks, printer and cassette recorder interfaces.
  • RTC: Ricoh RP5C01.
  • RTC battery backup.
  • BIOS: CBIOS.

The development is still on-going and all the project documentation is available on GitHub.

The Omega project doesn't have any commercial goals in mind. Sergey simply enjoys recreating "vintage" computers hardware using both old and newer components, while trying to keep the vintage feel (therefore no FPGA or Raspberry Pi emulation). He grew up in the former Soviet Union and spend hours programming these machines and of course playing games on Yamaha YIS-503IIIR and Yamaha YIS-805-128R2.

Relevant link: Sergey Kiselev's personal projects

Media browser (6)

  • Omega, a new MSX2 compatible computer in development
  • Omega, a new MSX2 compatible computer in development
  • Omega, a new MSX2 compatible computer in development
  • Omega, a new MSX2 compatible computer in development
  • Omega, a new MSX2 compatible computer in development
  • Omega, a new MSX2 compatible computer in development

Commentaires (30)

Par Omega

Master (213)

Portrait de Omega

15-10-2019, 20:42

I'm very honored. Cool

But seriously, I like it! Original parts are somewhat more difficult to source, but not impossible. And it will ensure proper compatibility Smile

Par Omega

Master (213)

Portrait de Omega

15-10-2019, 20:52

I've loaded the KiCad project and made a nice rendering of the board:

3d rendering!

Par Omega

Master (213)

Portrait de Omega

15-10-2019, 20:57

moar renderings

moar moar renderings

mmm.. naked pcb good...

Par Manuel

Ascended (15804)

Portrait de Manuel

15-10-2019, 22:01

V9939??

Par hamlet

Scribe (2605)

Portrait de hamlet

15-10-2019, 22:01

I very much like the idea of a new machine made with traditional components.
That's what MSX is all about.
Especially the designed keyboard raises this computer out of the conventional replica family.
The connections are well placed, the PCB layout is nicely solved. A very attractive project!
Well, I can live without HDMI connection and don't need SD or USB connections. All this I have already as accessories. This is about the pure device.
Let's design a case!
Also nice job Master Omega!

Par Vampier

Prophet (2297)

Portrait de Vampier

15-10-2019, 22:56

C-bios no basic I guess?

Par PAC

Guardian (5307)

Portrait de PAC

15-10-2019, 23:03

Manuel wrote:

V9939??

Fixed, sorry.

Par Tangent

Supporter (4)

Portrait de Tangent

16-10-2019, 02:08

Exciting project! I assembled Sergey's ZETA SBC V2 CP/M-80 hobby computer and really enjoy it. Now I'm very much looking forward to assembling one of these.

Earlier this year he demonstrated his computers at Vintage Computer Festival Pacific Northwest in Seattle. I hope he'll return with a working Omega this upcoming March.

hamlet wrote:

Let's design a case!

Indeed!

Par Grauw

Ascended (8507)

Portrait de Grauw

16-10-2019, 02:10

I like it! I think CPLD or FPGA for the glue logic is fine (MSX-Engine), but otherwise original components are the best! And a keyboard. And a case Big smile.

Par zett

Hero (581)

Portrait de zett

16-10-2019, 07:00

in honor of omega. nice.

Par Manuel

Ascended (15804)

Portrait de Manuel

16-10-2019, 09:53

PAC wrote:
Manuel wrote:

V9939??

Fixed, sorry.

Strangely enough the original list also says V9939 and V9959....

Par KdL

Paragon (1236)

Portrait de KdL

16-10-2019, 11:32

Cool! I love the original components. Running Naked in a Field of Flowers

Par hamlet

Scribe (2605)

Portrait de hamlet

16-10-2019, 12:42

Sergey sent me a mail to clear up some issues:

Quote:

Reading the comments on that blog, it looks that some clarifications might be in order :-)

- The Omega project doesn't have any commercial goals in mind. I simply enjoy recreating "vintage" computers hardware using both old and newer components, while trying to keep the vintage feel (therefore no FPGA or Raspberry Pi emulation). There are other people that enjoy this hobby too. And I am happy to make my project available to these people. It appears that there is a substantial commercial activity around MSX. It is not my goal to compete with any one of them. But surely these projects can compliment my design.
- I am not Russian, and I never lived in Russia... Yes, I was living in Soviet Union 25+ years ago, and that's where I got exposed to MSX2 machines. In some schools we used to have classes with Yamaha YIS-503IIIR and Yamaha YIS-805-128R2 (https://www.msx.org/wiki/Yamaha_YIS-503IIIR and https://www.msx.org/wiki/Yamaha_YIS-805-128R2 respectively). And I've spent multiple hours programming these machines and of course playing games (which were much better than contemporary IBM PC games). I am not even trying to target Russian market here (again, not a commercial product). But I won't be surprised if people in Russia will produce my boards and build their own computers.

BTW, I am wondering what is the MSX licensing story? Do you have any details on this?
I am less interested in putting the MSX logo on my work, but more in software/firmware licensing. How legal it is to run an original MSX BIOS or BASIC on another hardware? I know that people do that on virtual machines. For example it seems to be semi-legal to use a ROM as long as you have the original piece of hardware...

Thanks,
Sergey

Par konamiman

Paragon (1044)

Portrait de konamiman

16-10-2019, 13:00

Quote:

How legal it is to run an original MSX BIOS or BASIC on another hardware?

"Thou shalt use all MSX system ROMS freely. Thou shalt pay $1 to Microsoft for the MSX-BASIC ROM." Said by God himself.

Par zett

Hero (581)

Portrait de zett

16-10-2019, 14:00

Realy nice dude!

Par sd_snatcher

Prophet (3089)

Portrait de sd_snatcher

16-10-2019, 14:19

Great initiative! If I may, I would like to make some suggestions:

1) Allow MSX2+ support: the differences in the design are minimal. You need one extra ROM slot for the boot logo (can also be combined with some other ROMs), the RAM should be placed at the slot 3-0, and there’s a latch for the reset status.

2) Add Z80 turbo support, with the CHGCPU/GETCPU routines on BIOS. This makes all the difference in performance. IMHO, any new MSX project should support turbo as it brings so much benefit at very little cost. For the MSX2+, the VRAM access speed is greatly improved.

3) Be extra careful with the sound mixer circuitry. Lots of designs have mistakes in this aspect. My recommendation is to use the MSX Turbo-R circuitry with the fixes presented at this article.

Par xavirompe

Resident (37)

Portrait de xavirompe

16-10-2019, 14:30

Absolutely amazing project, nice and coold, definitely a great job!

Congratulations to Sergey for this achievement.

Thumbs up!

Par Wolverine_nl

Paragon (1046)

Portrait de Wolverine_nl

16-10-2019, 16:52

This is really cool, actual original hardware.
Can't wait for the endresult! Cool

Par Omega

Master (213)

Portrait de Omega

16-10-2019, 17:18

sd_snatcher wrote:

Great initiative! If I may, I would like to make some suggestions:

1) Allow MSX2+ support: the differences in the design are minimal. You need one extra ROM slot for the boot logo (can also be combined with some other ROMs), the RAM should be placed at the slot 3-0, and there’s a latch for the reset status.

2) Add Z80 turbo support, with the CHGCPU/GETCPU routines on BIOS. This makes all the difference in performance. IMHO, any new MSX project should support turbo as it brings so much benefit at very little cost. For the MSX2+, the VRAM access speed is greatly improved.

3) Be extra careful with the sound mixer circuitry. Lots of designs have mistakes in this aspect. My recommendation is to use the MSX Turbo-R circuitry with the fixes presented at this article.

1) he has a 4mbit flash rom on board, there seems some sub slot decoding logic already there, around U13
2) how so, V9958 vram access speed improved? I suppose you have to connect the vdp WAIT signal to CPU then?
3) while not exactly the turboR circuit, his design looks OK to me.

schematics

Par Manuel

Ascended (15804)

Portrait de Manuel

16-10-2019, 22:03

Sergey, I personally do not know any really commercial MSX project. Actually, I think it would be rather foolish, as it is such a small and specialist market.

Par SergeyK

Supporter (1)

Portrait de SergeyK

17-10-2019, 06:17

Hi guys,

Thank you for all the feedback!

A few comments:

  • Project name: I choose Omega not because of (now defunct?!) MSX software publisher, and not to honor Master Omega (sorry dude :D ), but because I like using random Greek letters to name my projects.
  • VDP is V9938... yeah, fixed that. V9958 should work as well. I've ordered one, will test when it arrives
  • I plan to show this system (and a couple more) at Vintage Computer Festival Pacific Northwest in Seattle next March
  • SPLD vs CPLD... I use SPLDs because they can be programmed with the same TL866 EPROM programmer I use to program Flash ROMs, and because they are cheap. CPLD is definitely an option for future updates. It should be possible to replace most of 74-series logic and perhaps 8255 with a single CPLD. FPGA - the whole MSX2 can be implemented in FPGA, so it feels kind of weird to mix FPGA and older VPD/PSG/etc. Also others already implemented MSX compatible systems using an FPGA...
  • MSX2+ support. V9958 should work. With a little change in SPLD code it is possible to map SRAM to slot 3-0. There is plenty of Flash ROM space, and it can be mapped to secondary slots in any variation of 16 KiB blocks. Turbo mode is not trivial to implement. MSX2+ machines with turbo mode normally used MSX engine that supported this feature. To replicate turbo functionality I would need to implement: Glitch-less clock switching circuit, an I/O port to turn on/off turbo, a wait state generator to generate additional wait states when accessing PSG and perhaps the cartridge slots. And frankly, the benefit won't be that great... only a few MSX2+ machines had this feature. Mainstream was MSX/MSX2.
  • Audio mixing circuit - I have a fairly primitive low-pass filter with roughly 20 kHz cutoff frequency (I did my math). That should do it for mixing PSG output with cartridge slots sound and PPI key-click sound. I personally don't have any cartridges to validate the sound volume, but in the worst case mixer resistors can be replaced with other values.
  • BIOS - I've tested the board both with the latest C-BIOS and with a ROM image from Sanyo PHC-23J. I am not planning to distribute either one... It is the people's choice what to run.
  • MSX-BASIC - where do I put that $1? :)

The current status is that I finished testing my prototype (version 1.0) system, and I fixed all the issues found so far. The next step is reviewing PCB design for version 1.1, manufacturing the PCBs, building and testing the board.

-SK

Par AbrahamCas

Expert (77)

Portrait de AbrahamCas

17-10-2019, 13:39

Congratulations Sergey!!, Very nice project!!
I will be looking forward for your progress with it and maybe trying to make one unit on near future
Thanks!

Par PAC

Guardian (5307)

Portrait de PAC

17-10-2019, 18:36

SergeyK wrote:
  • SPLD vs CPLD... I use SPLDs because they can be programmed with the same TL866 EPROM programmer I use to program Flash ROMs, and because they are cheap. CPLD is definitely an option for future updates. It should be possible to replace most of 74-series logic and perhaps 8255 with a single CPLD. FPGA - the whole MSX2 can be implemented in FPGA, so it feels kind of weird to mix FPGA and older VPD/PSG/etc. Also others already implemented MSX compatible systems using an FPGA...

IMO, as long as the VDP or other specific IC implementation in FPGA are not perfect, it does make sense to mix both technologies.

The most interesting MSX compatible computer to me since MSX dissapeared commercially, congratulations. We can smell the MSX essence there. Smile

Par hamlet

Scribe (2605)

Portrait de hamlet

17-10-2019, 19:11

Quote:

We can smell the MSX essence there. Smile

Yeah! Breath!
It is kinda GR8bit.

Par zett

Hero (581)

Portrait de zett

18-10-2019, 06:08

hamlet wrote:
Quote:

We can smell the MSX essence there. Smile

Yeah! Breath!
It is kinda GR8bit.

na better smell. its a nice size to

Par Meits

Scribe (5636)

Portrait de Meits

18-10-2019, 13:15

I like the idea of having one.

Par АIеks

Hero (644)

Portrait de АIеks

20-10-2019, 12:58

That's cool! But, you still have to work before MSX-EXT. I wish you success Smile

Par UsagiPretzels

Supporter (16)

Portrait de UsagiPretzels

29-10-2019, 04:46

Good to hear Sergei, if you have to suggest any MSX1 computer outside Soviet schools and in the Russian language, what would it be?

Par zett

Hero (581)

Portrait de zett

29-10-2019, 19:53

АIеks wrote:

That's cool! But, you still have to work before MSX-EXT. I wish you success Smile

Seen a msx like that build befor ad a mvm meeting

Par erpirao

Paladin (962)

Portrait de erpirao

01-12-2019, 16:43

this thread is really interesting
MSX2 Compatible Computer Project