MB03+ Ultimate

From Sinclair Wiki
Revision as of 12:25, 13 June 2020 by Samcoupe (talk | contribs) (more (pro-)links added)


The MB03+ Ultimate is a compact all-in-one interface, made by LMN128, that replaces an assembly of more than 13 single hardware and system add-ons. It is compatible with many popular sound, graphics and memory expansions and also with several modern storage interfaces. The MB03+ is not a self-running FPGA computer, such as the ZX-UNO or the NEXT.

MB03+ Ultimate
ZX Spectrum +2A with MB03+

This interface provides graphic, sound and other hardware enhancements, even for basic ZX Spectrum model. It imitates a lot of combinations of small single interfaces joined together to the computer and improves some functionalities of software, e.g. displays the Gigascreen without flickering. The basic concepts of the device include the possibility of using modern PC peripherals with an old 8-bit home computer. Operating systems in the MB03+ support standard PC FAT-formatted media: SD card cards and CompactFlash cards. The MB03+ works with computer USB mice that support the PS/2 protocol and can be connected to LCD TVs and PC monitors with HDMI input via an universal digital video output connector.

All development and production of the MB03+ is a hobby and one-man-show project on non-profit basis.

History

 
MB03+ prototype with older MB-02

The story of the MB-family interfaces goes to 1990, when the AP-01, a ZX Spectrum compatible computer was created by Slovak coder and designer Róbert Letko, named MDV. The computer consisted of various peripherals and supporting circuits: 8255, 8251, Z80-CTC, Z80-DMA and also with a floppy disk drive. Almost the same progressive equipment had an interface made by Slovak coder Slavomír Lábsky (Busy): WD2797 and Z80-DMA chips, 64KB battery-backed additional RAM, two 8255 with six parallel ports, memory LED maps and connectors for two disk drives. And so the name "MB" came from nicknames of the authors - MDV and Busy.

Around 1996 the MB-01 was substantially improved to the MB-02. Then two Moravian Speccy-fans, Last Monster and Blazko/systems, associated in the 8bc group, made a new MB-02+ with a RTC chip, a bigger RAM up to 512KB, a booting EPROM and 4 disk drives. About 90 MB-02+ units were produced and delivered mainly to Germany, Austria, Slovakia, the Czech Republic, the Netherlands, the United Kingdom and Poland. After years, the design of the new MB03+ continues with the same philosophy of expanding the old good ZX Spectrum computer for modern times, in an effort to overcome the limitations that arise with new chips and modern peripherals when connected to older circuity of a 8-bit home computer.

Basic hardware

 
MB03+ HW parts description
  • Xilinx Spartan 7 XC7S50, the FPGA brain of the machine, with 484pins
  • 16MB SRAM
  • 4MB Fast SRAM
  • 2MB FlashRAM
  • 8KB FRAM for the system info and the BIOS config
  • Maxim DS3234 - extremely accurate SPI bus Real-time clock with integrated crystal and SRAM
  • UART with a Wi-Fi ESP8266 module
  • Matrix LED display

The MB03+ is internally expandable (incl. every type of RAM), through two expansion sockets.

The hardware design meets the requirements of the ZX Interface standard, that is, as a ZXI™ compliant device, the MB03+ is inter-operable with other compliant interfaces without conflicts.

Connectors and buttons

  • 2x microSD cards sockets
  • CompactFlash(IDE) card socket
  • Type-A USB (for a PC-mouse)
  • Mini-B USB (PC-link and update connector)
  • Digital video and audio (e.g. HDMI)
  • Stereo jack output
  • Reset, Extra and NMI buttons

Memory layouts

The MB03+ can work in several operational modes, based on memory configurations. It can operate with its own or with legacy memory models, so-called "machines". It is possible to switch between machines. The basic memory paging size is 8KB. All-RAM mode (with or without a write protection) is supported. Other various interfaces, configurations and I/O ports, incl. extra ROMs, implemented in the MB03+, can be programmable switch on or off independently on the selected machine.

Currently the MB03+ provides these machines:

  • 16MB Ultimate/MB03+
  • 512KB divMMC
  • 512KB divIDE
  • 512KB MB-02+
  • ESXDOS Ultimate with a memory of 7MB RAM and 64KB FlashRAM
  • BSDOS Ultimate with a memory of 7MB RAM and 64KB FlashRAM
  • recovery/rescue mode

Because the MB03+ is only an external interface and original ZX Spectrum models do not have a RAM/CS signal on their expansion buses (as was a case with the previous ZX-80 and ZX-81 models), it cannot map the upper part of the computer's memory. However, this issue is solvable when handling a second videoRAM and graphics modes.

Four UserApp ROMs and eight system CustomROMs are part of the MB03+ firmware and can be (auto)run instead of the ZX BASIC ROM.

Other hardware via FPGA

  • LCU – hardware calculator and LED display controller
  • I/O ports-based LIFO stack
  • RTC-72421 (MB-02 legacy)
  • Z80-DMA
  • K-Mouse interface (3 buttons supported)

Graphics enhancements

 
Gigascreen graphics via MB03+
 
new KeyLayer graphic mode
  • Timex Hi-Color graphic mode (8*1 attributes)
  • Timex Hi-Res graphic mode (512*192 pixels)
  • ULA+ colour palette
  • 3 types of Gigascreen graphic mode
  • KeyLayer (Transparent) graphic mode
  • legacy TV scan-line mode (7 levels)

Gigascreen is not originally a real graphic mode. It's an effect created by quickly alternating the image, and some TVs, old CRTs or LCD monitors can combine these images, each doing this effect a little differently, but most of them have a color mix. On the MB03+, screens are mixed in advance and then a digital output is generated, thus achieving a more perfect display, without flickering the image.

The new KeyLayer graphic mode allows to display image data from the second video RAM at the place of one selected color in the video RAM no.1.

Sound enhancements

  • 3x General Instrument AY-3-8910 soundchip (TurboSound)
  • 2x Yamaha YM2203 soundchip (TurboSound FM)
  • Philips SAA1099 soundchip
  • MonsterBlaster (Soundrive/Czech DA/Stereo Covox)
  • SpecDrum
  • General Sound
  • ULA Sound (Beeper)

Compatibility with other interfaces

The MB03+ was tested and works fine with ZX-HD and ZX-VGA-JOY. It may be risky and is not suggested to connect devices that are already implemented in the MB03+, such as DivMMC or K-mouse interfaces. The full list of hardware, interfaces and accessories tested so far is written in the annex to the MB03+ Quick Start Guide.

Firmware

 
MB03+ user experience info

The firmware consist of a BIOS and a startup for installed operating systems and modes and also a detailed setup menu in order to configure or completely switch-off any part of hardware expansions.

Based on internal counters in the MB03+, the BIOS provides an info about time of use, number of button presses and device start-ups. From these data are following levels of user experience evaluated: "Loser", "Rookie", "Novice", "Beginner", "Enhanced", "Geek", "Guru" and "Ultimate".

Operating systems

Basically, the MB03+ can start (and switch between) 3 operating systems in a configuration for DivMMC, DivIDE and MB hardware.

From the start menu it is possible to run directly one of the 4 UserApp ROMs.

CustomROM

 
CustomROM setup for MB03+
 
64char ROM

With the MB03+ connected, the ZX BASIC stored in ROM can be partly or fully switched off. The MB03+ does extra ROMs in combination of

  • 8x16KB ROM
  • 4x16KB ROM and 1x64KB ROM
  • 2x64KB ROM

The 64KB ROM system is identical to the ROM paging of the ZX Spectrum +3/+2A.

Alternative and esxDOS-compatible ROMs tested on the MB03+ are:

  • 64Char 16KB ROM
  • "Pretty" Color 16KB ROM
  • GAMA81 16KB ROM
  • GOSH Wonderful 16KB ROM
  • GROOT 16KB ROM
  • IMC 16KB ROM
  • Derby PRO 64KB ROM

Software

The interface is designed to run all software for ZX Spectrum computers, incl. software written for specific (Mid- and East-European) Speccy-clones and their peripherals, such as a Beta Disk drive interface or General Sound and TurboSound FM sound interfaces. Most software run smoothly without having to change the setup.

 
esxDOS for MB03+

Software that uses special options and expansions of the MB03+:

  • esxDOS v0.8.8 by Lordcoxis - an advanced operation system with FAT16/FAT32 read/write support, virtual disks (images) support, TR-DOS and tape emulation using TRD and TAP files, extended BASIC commands, BASIC files integration using +3DOS headers for FAT filesystems, system "DOT" commands and POSIX-based API
  • TurboSound FM Demo by LMN128 and Lanex, a demo with more than 100 FM tunes for YM2203
  • HQ Digital Audio Demo by LMN128, with 15MB sample based music and Gigascreen graphics
  • utilities TimeSync, SoftwareUpdater and WifiConnection by Shrek
  • WifiBIOS by Hood and Busy
  • Wifi (http) downloader by Lanex, Hood and Busy
  • ReFlasher by Zoom, a tool which helps customize easily a set of operating systems and system ROMs

Emulation

The MB03+ is emulated on the LnxSpectrum emulator, which can provide most functionalitites of the interface, except LCU, Covox and General Sound.

External links