Skip to content

opengateware/computer-msx

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

MSX


Active Development Build release license issues stars discord Twitter Follow

MSX Compatible Gateware IP Core

This Implementation of a compatible MSX home computer hardware in HDL is the work of Molekula.

Overview

The MSX, launched by ASCII Corporation and Microsoft in 1983, aimed to standardize the home computer market, akin to the VHS format for video. Despite its ambitious goals, the MSX found regional success, particularly in Asia, South America, Europe, and the former Soviet Union, but remained largely unknown in the United States. Its architecture, featuring a Zilog Z80A CPU and TMS9918 video processor, made it a versatile platform for both education and gaming.

The acronym "MSX" has sparked much debate over its meaning. Initially, many interpreted it as "Microsoft Extended," a nod to its built-in Microsoft eXtended BASIC. However, Kazuhiko Nishi, a key figure behind the MSX, offered various interpretations over the years, including "Machines with Software Exchangeability" and references to major electronics companies Matsushita (Panasonic) and Sony. Nishi's vision was for a name that signified the system's next-generation capabilities and its association with leading tech giants.

Despite not achieving its goal of global standardization, the MSX left a lasting legacy in the realms of computing and gaming. Before the dominance of Nintendo's gaming consoles, the MSX was a preferred platform for pioneering game developers. The system's versatile architecture and software library made it a beloved platform among enthusiasts, maintaining a dedicated community and influencing generations of users and creators.

Technical specifications

  • Main CPU: Zilog Z80 @ 3.579545 MHz
  • Sound Chip: AY-3-8912 @ 1.789772 MHz
  • Video Resolution: 256×192 pixels @ 5.369317 MHz
  • Aspect Ratio: 4:3
  • Video Processor: TMS9918 or TMS9928 Video Display Processor (VDP)
  • Memory: 64kB of RAM, expandable through the use of cartridge slots and external peripherals
  • Storage: Supports floppy disk, cassette tape and cartridge-based storage

Features

  • Reference Model: Philips VG8020/00
  • Video Support: NTSC/PAL
  • Input: Joystick, Joy2Key and Keyboard
  • Sound: Yamaha YM2149 (SSG)
  • Memory: 64kB RAM in Slot 3
  • Expansion: 2 Cartridge Slots (.ROM)
  • Supported Mappers:
    • Auto/Mirrored
    • GameMaster2
    • Konami
    • Konami SCC
    • ASCII8
    • ASCII16
    • Linear64k
    • R-TYPE
  • BIOS: Supports different BIOS and Hangul BASIC via FWBIOS, by default will use C-BIOS

Status of Features (Not Yet Implemented)

  • Floppy Disk Support (.DSK)
  • Cassette Support (.CAS)
  • On-Screen Keyboard

Compatible Platforms

  • Analogue Pocket

Usage

MSX1 ROMs and BIOS should be placed in /Assets/msx/common.

C-BIOS is not a real BIOS rom and has certain restrictions, such as no support for anything other then cartridges (ROMs). So there is no support for disk, cassette or games that required BASIC.

Memory limitations

  • Slot 1 ROM image max size 4MB
  • Slot 2 ROM image max size 4MB
  • Slot 3 64Kb RAM

Credits and acknowledgment

Powered by Open-Source Software

This project borrowed and use code from several other projects. A great thanks to their efforts!

Modules Copyright/Developer
MSX RTL 2022 (c) Molekula
T80 2001 (c) Daniel Wallner
VDP18 2006 (c) Arnim Laeuger
JT49 2018 (c) Jose Tejada
JT8255 2021 (c) Jose Tejada
C-BIOS 2001 (c) C-BIOS Team

License

This work is licensed under multiple licenses.

Open Gateware and any contributors reserve all others rights, whether under their respective copyrights, patents, or trademarks, whether by implication, estoppel or otherwise.

Individual files may contain the following SPDX license tags as a shorthand for the above copyright and warranty notices:

SPDX-License-Identifier: GPL-3.0-or-later
SPDX-License-Identifier: CC-BY-SA-4.0
SPDX-License-Identifier: CC0-1.0

This eases machine processing of licensing information based on the SPDX License Identifiers that are available at https://spdx.org/licenses/.

Legal Notices

The Open Gateware authors and contributors or any of its maintainers are in no way associated with or endorsed by ASCII Corporation, Microsoft or any other company not implicit indicated. All other brands or product names are the property of their respective holders.