The RBSC Carnivore2 is one of the coolest multi-function MSX cartridges available today. It was created by the Russian Bear Service Crew (RBSC) in 2017 and offers a lot of features for the MSX line of computers.

The project was released as open source, and several manufacturers were authorized to produce the cartridge commercially, but as all resources are openly available, you can just go ahead, and order everything you need to build one for yourself.

The cartridge has the following cool features:

  • Compact Flash card storage
    • Maximum partition size: 4GB
    • Uses Nextor as DOS (native FAT12/16 support)
    • High speed transfer (read and write)
    • Supports CF-to-MicroSD adapters
    • Nextor supports DSK emulation
    • MSX-DOS and MSX-DOS2 capable tools
    • Can be configured as RAM expansion, disk drive, FM-PAC or SCC/SCC+ cartridge or as a combination of those
  • RAM: 2048KB (2MB)
    • Distribution:
      • 1024KB Memory mapper
      • 256KB for BIOS ROM shadowing
      • 720KB MegaRAM-alike mapper
      • 4KB (in the last 64KB block) for PAC SRAM (requires in internal battery to preserve data after power-off)
  • FlashROM: 8MB (64Mbits)
    • Fast Writing
    • First 256kb used for service areas and BIOS ROMs
    • Mapper emulation:
      • up to 64K plain ROM
      • ASCII 8K
      • ASCII 16K
      • Konami4
      • Konami5 (SCC/SCC+)
      • custom-configurable mapper
  • Sound
    • Extra PPI clicker and PSG emulation (at the normal I/O ports, to have PSG output on the mini jack)
    • Konami SCC and SCC+ emulation
    • Emulated OPLL (YM2413, MSX-MUSIC) with its ROM BIOS translated to English
    • volume control for each emulated device
    • PSG and PPI can be disabled in the UI
    • Dual PSG support
  • Additional info
    • Boot menu with multiple entries (ROM or configuration)
      • Entry sorting
      • Customizable UI (colors, entry sorting, key repeat speed, fade effects)
      • Help pages
      • Volume control for all emulated sound hardware
      • Joystick and joypad support
      • 50/60Hz instant switching support
      • Turbo/R800 mode switching support
      • Supports entry’s auto-start with timer
      • Allows to run 2 ROMs at the same time in the Dual-Slot screen
      • Mono/stereo modes for FMPAC output
      • Allows to set the default startup frequency (50 or 60Hz)
    • Konami sized cartridge
    • Operates at standard 3.58 MHz as well as at overclocked 7.11 MHz bus speeds
    • Powered by a FPGA (EP2C5Q208C8 Altera CYCLONE II)
    • Uses proprietary software to manage all functions
      • ROM loader into FlashROM and RAM
      • backup tool for FlashROM, configuration mini FlashROM and PAC SRAM
      • IDE interface testing tool, etc.

Here is my attempt to build a few for family and friends and documenting all steps (and challenges).

PCB and Components

All the files required to order PCBs are available on the RBSC Carnivore2 Github repo at RBSC/Carnivore2: Carnivore2 MultiFunctional Cartridge for MSX (github.com). There is a Gerber folder with all the files you need. Just download them (or clone the repo), create the zip file with the content and upload to the PCB manufacturer of your choice.

This time I ordered a few PCBs from JLCPCB.

The bill of materials is also available on the same GitHub repo under the Doc folder. There are versions in Russian and English. The table below document all the components required (from the table you can find on GitHub, plus a few links I used to buy the components). Feel free to use those links if you are interested in build your cartridge.

QtdPartValuePackageTypeLink
1EP2C5Q208C8 Altera CYCLONE IIN/APQFP208FPGAUTSource
1M29W640GB Flash Memory 64 MbitTSOP48FLASHAliExpress
1CY62167DV30 Static RAM16 MbitTSOP48RAMUTSource
1EPCS4 Altera Configuration Memory 4 MBitSOIC8FLASHAliExpress
1YAC516-E 16 bitSSOP24DACAliExpress
1M93C46MN1 1 MBitSOP8EEPROMAliExpress
24558DSOIC8AmplifierAliExpress
1SG-31050 MhzOscillatorAliExpress
1AMS11171.2VSOT223RegulatorAliExpress
2AMS11173.3VSOT223RegulatorAliExpress
8C1–C4, C22, C23, C26, C2810 uF 10vSMD 1210 BTantalum CapacitorAliExpress
2C20, C2116V 47uF 476CSMD 1210 BTantalum CapacitorAliExpress
1C296V 47uF 476JSMD 1210 BTantalum CapacitorAliExpress
4C103, C105, C203, C20525V 4.7uF 475ESMD 1206 ATantalum CapacitorAliExpress
19C5–C19, C24, C25, C27, C30100 nFSMD 0603Ceramic CapacitorAliExpress
4C101, C102, C201, C2021 nFSMD 0603Ceramic CapacitorAliExpress
2C104, C204390 pFSMD 0603Ceramic CapacitorAliExpress
41R2-R42330 OhmSMD 0603ResistorAliExpress
4R43, R44, R54, R6410 OhmSMD 0603ResistorAliExpress
3R55, R56, R45220 OhmSMD 0603ResistorAliExpress
10R46–48, R50, R52, R65, R66, R60, R101, R20110K OhmSMD 0603ResistorAliExpress
7R51, R106, R206, R57–R59, R531K OhmSMD 0603ResistorAliExpress
3R61-R631-2.2K OhmSMD 0603ResistorAliExpress
4R102, R103, R202, R2034.7K OhmSMD 0603ResistorAliExpress
2R105, R2051.8K OhmSMD 0603ResistorAliExpress
2R104, R204100K OhmSMD 0603ResistorAliExpress
6D1-D61N4148PTHDiodeAliExpress
1AX1ST-2223.5 mmStereo JackAliExpress
1CF Card Slot3-1734451-150PSlotAliExpress
4T1, T3, T4, T52SC945 NPNSOT23TransistorAliExpress
2T2, T62SA733 PNPSOT23TransistorAliExpress
1LED1SMD 0805LEDAliExpress
1KN1N/AN/APush ButtonAliExpress

Soldering

Here is where the Carnivore challenge starts. The cartridge is based solely on 0603 SMD components and its Altera FPGA uses super thin pads. If you are trying to build the cartridge manually, I do recommend start with the FPGA and take triple care. Tin the pads first, leverage flux and use a thin solder tip. Place and align carefully the chip on the pads. Use a microscope to see what you’re doing and please, have patience.

Here is a video of the manual soldering process in case you are curious.

If you happen to have the board stencil, dedicate the appropriate time to align it to the board. I don’t have the PCB stencil printer, but I used a few extra boards to create a bed for the one I want to transfer solder paste and then use a mix of solder paste and flux to ensure the appropriate amount on each pad.

The cartridge has SMD components in both sides, and I use a hot table to solder, because of that I chose one of the sides to leverage this approach with stencil and soldered the other side manually.

Firmware

The cartridge firmware is loaded to the EPCS4 soldered on the card and is loaded into the FPGA every time you turn on your MSX with the cartridge inserted.

To upload the firmware, you will need Quartus and a USB blaster programmer. You will first connect the programmer to your PC and load Quartus programmer. Then you need to load the POF file and program the EPCS4 with the content of the file.

Boot Menu

To load the boot menu you will need a way to boot your MSX with MSXDOS and with the Carnivore 2 cartridge inserted. Then using a set of tools you will load multiple files, including the boot menu and the roms for the FMPAC and IDE interface.

After the configuation, the cartridge will be able to boot into the flashROM selection menu.

Here is a quick video showing how to load the boot menu (and the other roms) to the cartridge.

The CF Card

This is a quick video showing how to configure a new CF card to be used with the cartridge.

Leave a Reply

Your email address will not be published. Required fields are marked *