Last modified on 17 May 2025, at 22:24

Difference between revisions of "MSX"

(History)
(Generation 0: Precursors to MSX)
 
(69 intermediate revisions by the same user not shown)
Line 1: Line 1:
'''MSX''' was a standardized range of Z80 based 8 bit computers developed by Microsoft and various (mostly) Japanese producers to exploit... Microsoft Software.
+
[[File:MSX Sony HitBit HB-10P.jpg|thumb|right|MSX Sony HitBit HB-10P]]
 +
[[File:MSX2.jpg|thumb|right|MSX2 Sony HitBit HB-F1]]
 +
[[File:MSX2+ Sony HB-F1XDJ.jpg|thumb|right|MSX2+ Sony HitBit HB-F1XDJ]]
 +
[[File:MSX Turbo-R Panasonic FS-A1ST.jpg|thumb|right|MSX Turbo-R Panasonic FS-A1ST]]
 +
[[File:MSX BASIC.jpg|thumb|right|MSX BASIC]]
 +
[[File:Msx-dos.jpg|thumb|right|MSX-DOS]]
 +
'''MSX''' was a standardized range of [[Z80]] based 8 bit computers developed by Microsoft and various (mostly) Japanese producers to exploit... Microsoft Software.
  
 
MSX stands for "Machines with Software eXchangeability".
 
MSX stands for "Machines with Software eXchangeability".
 +
 +
MSX-DOS was binary compatible with [[CP/M]], allowing access to its vast library of available software.
  
 
'''4 generations of MSX were produced''', each with it's own system specs upgrades and retro compatible with past specifications.
 
'''4 generations of MSX were produced''', each with it's own system specs upgrades and retro compatible with past specifications.
 +
 +
Although it was using off-the-shelf components at the very beginning, the design quickly became very Yamaha-centric.
 +
 +
<br>
  
 
== History ==
 
== History ==
Line 19: Line 31:
  
 
The MSX 2 introduced hardware vertical scrolling but it wasn't until the MSX2+ that the MSX could do proper hardware horizontal scrolling; the video card makes software scrolling very difficult, so only as of the MSX2+ and later is smooth scrolling available.
 
The MSX 2 introduced hardware vertical scrolling but it wasn't until the MSX2+ that the MSX could do proper hardware horizontal scrolling; the video card makes software scrolling very difficult, so only as of the MSX2+ and later is smooth scrolling available.
 +
 +
According to Kazuhiko Nishi, the creator of the MSX standard, the MSX sold about 3 million units in Japan and 1 million units overseas. [https://diamond.jp/articles/-/253320 Source (JP)]
  
 
The MSX was perhaps to Japan what the CPC was to France (keeping to the proportions of course).
 
The MSX was perhaps to Japan what the CPC was to France (keeping to the proportions of course).
Line 24: Line 38:
  
 
A "serious" computer mostly used as home computer  for gaming purpose by kids.
 
A "serious" computer mostly used as home computer  for gaming purpose by kids.
 +
 +
<br>
  
 
== Specifications ==
 
== Specifications ==
  
=== MSX 1 ===
+
Unlike the [[Commodore 64]] and [[Atari 8-bit]] computers, the MSX standard mandates the same Z80 CPU clock speed (3.579545 MHz, exactly the NTSC color subcarrier frequency) for both PAL and NTSC machines.
  
Standard features Obligatory:
+
However, PAL and NTSC still have to be taken into consideration when developing a game, as there is less time to do updates at 60 Hz than it does at 50 Hz:
 +
* In games made for 60 Hz, the CPU sits idle for 20% of the time when running at 50Hz.
 +
* Games made for 50 Hz and which utilise the full CPU can not run properly at 60 Hz.
  
*CPU Zilog Z80A compatible at 3.579 MHz (8-bit)
+
This is why when developing a game, it’s best to make it targeted for 60 Hz. Then it will be much easier to get it to work at both frequencies.
*RAM at least 8kB. (Most of machines had 64kB built in.)
+
*32kB Main-ROM containing the BIOS and MSX-BASIC version 1.0)
+
*Video Display Processor: Texas Instruments TMS-9918/TMS-9928/TMS-9929
+
**Video RAM 16kB
+
*General Instrument AY-3-8910 Programmable Sound Generator. 8 octaves and 3 sound channels.
+
*At least 70 keys (including five programmable function keys, Graph, Code/Hangul/Kana/РУС, Select, Stop and four arrow keys. Caps and Accents/Dead keys are optional)
+
*Connectivity
+
**One connector for tape/data recorder. Transfer speed: 1200 or 2400 baud in MSX-BASIC (FSK format). The speed can be altered though, with some POKEing or easily in Machine Language programs.
+
**At least one expansion BUS or cartridge slot. Usually it is the cartridge slot. An expansion BUS must have the standard 50 pin. The pins -/+12V and Sound IN may not connected on expansion bus.
+
**One or two General Purpose ports. The connector is a normal 9-pin D-connector, male. (Game controllers and paddle controllers are optional)
+
  
Standard features Optional:
+
=== Generation 0: Precursors to MSX ===
  
*Kanji-ROM level 1
+
The machines in Generation 0 are considered the foundational steps toward the creation of the MSX standard. While not officially part of the MSX family, they share significant hardware similarities with MSX1 systems.
*Floppy disk drive interface
+
**16kB Disk-ROM containing the Disk BASIC and MSX-DOS 1 kernel
+
**Floppy disk drive 3.5 or 5.25 inch. Some MSX1 computers were sold together with a disk-drive interface and a 360kB (single sided) floppy drive, mostly 3.5" but also 5.25" (mainly used in Brazil, but in the beginning also in the Netherlands)
+
*Printer interface (8-bit, output only, Centronics 14 pin) (optional, but is actually available on most MSX1 computers)
+
*MSX-AUDIO with up to 256kB of sample RAM
+
  
 +
Systems: ColecoVision, Sega SG-1000, Sega SC-3000, Spectravideo SV-318/328.
  
=== MSX 2 ===
+
Shared Components with MSX1:
 +
* ColecoVision, Sega SG-1000 and SC-3000 feature the same CPU (Zilog Z80A) and Video Display Processor (Texas Instruments TMS-9918 series) as MSX1 machines.
 +
* These systems use the Texas Instruments SN76489 sound chip, which is closely related to the General Instruments AY-3-8910 Programmable Sound Generator (PSG) found in MSX1.
 +
* The SV-318/328 computers use identical CPU, VDP, and PSG hardware to MSX1, with the SVI-BASIC by Microsoft being very similar to MSX-BASIC.
  
Standard features Obligatory:
+
ASCII's president Kazuhiko Nishi saw the potential in the Spectravideo computer system. He wanted to make a world standard for home computers out of the SV-328 design, called the MSX standard. Spectravideo agreed with this, and ASCII started to make some small changes of the design. [https://www.samdal.com/svhistory.htm Source]
  
*CPU Zilog Z80A compatible at 3.579 MHz (8-bit)
+
<gallery>
*32kB BASIC/BIOS ROM and 16kB Sub-ROM (MSX-BASIC version 2.0 or 2.1, the latter has the possibility of a RAMdisk bigger than 32kB in BASIC).
+
File:Spectravideo SV-328.jpg|Spectravideo SV-328
*RAM: Minimum of 64kB
+
File:Spectravideo basic.jpg|SVI-BASIC
*Video Display Processor: Yamaha V9938 (backward compatible with TMS-9918 and TMS-9928).
+
File:Kazuhiko Nishi with Bill Gates.jpg|Kazuhiko Nishi with Bill Gates
**Video RAM at least 64kB (usually 128kB in almost all machines, expandable to 192kB but the standard only provides for a maximum of 128kB, this extra VRAM can not be displayed and is only accessible via the VDP commands).
+
</gallery>
*At least 70 keys (including five programmable function keys, Graph, Code/Hangul/Kana/РУС, Select, Stop and four arrow keys. Caps and Accents/Dead keys are optional), QWERTY with JIS or 50 Onjun key layout for Japanese keyboards.
+
*General Instrument AY-3-8910 Programmable Sound Generator. 8 octaves and 3 sound channels.
+
*RTC compatible with RP5C01
+
*Connectivity
+
**One connector for tape/data recorder. Transfer speed: 1200 or 2400 baud in MSX-BASIC (FSK format). The speed can be altered though, with some POKEing or easily in Machine Language programs.
+
**At least one expansion BUS or cartridge slot. Usually it is the cartridge slot. An expansion BUS must have the standard 50 pin. The pins -/+12V and Sound IN may not connected on expansion bus.
+
**Two General Purpose ports. The connector is a normal 9-pin D-connector, male. (Game controllers, graphic tablet, mice, paddle controllers are optional)
+
**One Printer interface
+
  
Standard features Optional:
+
=== Generation 1: MSX1 ===
  
*Memory Mapper, makers have to use it for computers and memory expansions more than 64kB RAM.
+
The MSX1 represents the first official generation of the MSX standard, introduced in 1983.
*Kanji Display
+
**16kB Kanji Driver ROM
+
**16kB Single Kanji Conversion or MSX-JE ROM
+
**Kanji-ROM JIS Level 1 or 2
+
*Floppy disk drive interface
+
**16kB Disk ROM including the Disk-BASIC and MSX-DOS1 kernel
+
**One or two 3.5 inch 1DD/2DD/2HD floppy disk drive, many MSX2 computers have a 1DD or 2DD 3.5" floppy drive built in (2HD is supported by the MX-2021 only)
+
*MSX-MUSIC
+
**OPLL YM2413, 9-channel FM synthesizer)
+
**16kB FM-BASIC ROM
+
*MSX-AUDIO with up to 256kB of sample RAM
+
*RS-232C
+
*Light pen
+
*MSX-Interface (J3125 chip)
+
  
 +
* '''CPU:''' Zilog Z80A @ 3.579 MHz (8-bit)
 +
* '''RAM:''' 8 KB to 64 KB
 +
* '''Operating System:''' MSX BASIC v1.0
 +
* '''Video Display Processor (VDP):''' Texas Instruments TMS-9918, TMS-9928, or TMS-9929
 +
* '''Video RAM (VRAM):''' 16 KB
 +
* '''Sound:''' General Instruments AY-3-8910 Programmable Sound Generator (PSG)
  
=== MSX 2+ ===
+
Note: MSX1 machines were produced by various manufacturers (e.g., Sharp, Toshiba, Yamaha), leading to minor hardware variations in CPU, VDP, and PSG components.
  
Standard features Obligatory:
+
=== Generation 2: MSX2 ===
  
*CPU Zilog Z80A compatible at 3.579 MHz (8-bit)
+
Introduced in 1985, the MSX2 brought significant upgrades over its predecessor, enhancing graphics and memory capabilities.
*At least 64kB RAM with Memory Mapper.
+
*32kB Main-ROM and 16kB Sub-ROM containing BIOS/MSX-BASIC version 3.0, with the instructions adding screen scrolling, three new screen modes (see below) and the display of Kanji modes
+
*Yamaha V9958 Video Display Processor: backward compatible with the TMS9918/TMS9928 and V9938 (for more info: V9958 MSX Video Technical Data Book). The V9938's light pen and mouse support circuitry was removed in the V9958. (It was never used except by a few machines - see here)
+
**VRAM 128kB (expandable to 192kB but the standard only provides for a maximum of 128kB, this extra VRAM can not be displayed and is only accessible via the VDP commands)
+
*At least 70 keys (including five programmable function keys, Graph, Code/Hangul/Kana/РУС, Select, Stop and four arrow keys. Caps and Accents/Dead keys are optional), QWERTY with JIS key layout for Japanese keyboards.
+
*Kanji Display (Japanese computers only)
+
**Kanji-ROM JIS Level 1
+
**16kB Kanji Driver ROM
+
**16kB Single Kanji Conversion or MSX-JE ROM
+
*General Instrument AY-3-8910 Programmable Sound Generator. 8 octaves and 3 sound channels.
+
*RTC compatible with RP5C01
+
*Soft/Hard reset
+
*Connectivity
+
**One tape/data recorder connector. Transfer speed: 1200 or 2400 baud in MSX-BASIC (FSK format). The speed can be altered though, with some POKEing or easily in Machine Language programs.
+
**At least one expansion BUS or cartridge slot. Usually it is the cartridge slot. An expansion BUS must have the standard 50 pin. The pins -/+12V and Sound IN may not connected on expansion bus. (In fact, all produced MSX2+ have only MSX cartridge slots)
+
**Two General Purpose ports. The connector is a normal 9-pin D-connector, male. (Game controllers, graphic tablet, mice, paddle controllers are optional)
+
**One Printer interface (The printer is optional)
+
  
Standard features Optional:
+
* '''CPU:''' Zilog Z80A @ 3.579 MHz (8-bit)
 +
* '''RAM:''' 64 KB to 256 KB (expandable)
 +
* '''Memory:''' Memory Mapper system
 +
* '''Operating System:''' MSX BASIC v2.0 or v2.1
 +
* '''Video Display Processor (VDP):''' Yamaha V9938
 +
* '''Video RAM (VRAM):''' 64 KB or 128 KB
 +
* '''Sound:''' General Instruments AY-3-8910 PSG or compatible (e.g., Yamaha YM2149)
  
*Kanji-ROM JIS Level 2
+
=== Generation 3: MSX2+ ===
*Floppy disk drive interface
+
**16kB Disk-ROM including the Disk-BASIC and MSX-DOS1 kernel
+
**One or two 3.5 inch 1DD/2DD/2HD floppy disk drive, almost all produced MSX2+ machines have a 2DD 3.5" floppy drive built in (2HD is supported by the MX-2021 only)
+
*MSX-MUSIC
+
**OPLL YM2413, 9-channel FM synthesizer)
+
**16kB FM-BASIC ROM
+
*MSX-AUDIO with up to 256kB of SampleRAM
+
*RS-232C
+
*Light pen
+
*MSX-Interface (J3125 chip)
+
  
 +
The MSX2+, released in 1988, offered further refinements, primarily in graphics and sound, and was marketed mainly in Japan.
  
=== MSX Turbo R ===
+
* '''CPU:''' Zilog Z80A @ 3.579 MHz (8-bit), switchable to 5.369 MHz on some models
 +
* '''RAM:''' 64 KB (expandable)
 +
* '''Memory:''' Memory Mapper system
 +
* '''Operating System:''' MSX BASIC v3.0
 +
* '''Video Display Processor (VDP):''' Yamaha V9958
 +
* '''Video RAM (VRAM):''' 128 KB
 +
* '''Sound:''' General Instruments AY-3-8910 PSG or compatible (e.g., Yamaha YM2149)
 +
* '''Additional Sound:''' Most machines include built-in MSX-MUSIC (Yamaha OPLL YM-2413)
  
Standard Features Obligatory:
+
=== Generation 4: MSX turboR ===
  
*CPU Zilog Z80A compatible at 3.579 MHz (8-bit) and R800 at 7.159MHz
+
The MSX turboR, launched in 1990, was the final and most advanced iteration of the MSX standard, featuring a new 16-bit processor alongside the traditional Z80.
*At least 256kB RAM with Memory Mapper.
+
*32kB Main-ROM and 16kB Sub-ROM containing BIOS and MSX-BASIC version 4.0
+
*Yamaha V9958 Video Display Processor: backward compatible with the TMS9918/TMS9928 and V9938 (for more info: V9958 MSX Video Technical Data Book).
+
**VRAM 128kB (expandable to 192kB but the standard only provides for a maximum of 128kB, this extra VRAM can not be displayed and is only accessible via the VDP commands)
+
*At least 70 keys (including five programmable function keys, Graph, Code/Hangul/Kana/РУС, Select, Stop and four arrow keys. Caps, Accents/Dead and, 実行/Execute, 取消/Cancel keys are optional), QWERTY with JIS key layout for Japanese keyboards.
+
*Kanji Display (Japanese computers only)
+
**Kanji-ROM JIS Level 1 & 2
+
**16kB Kanji Driver ROM
+
**16kB Single Kanji Conversion or MSX-JE ROM
+
*Sound
+
**General Instrument AY-3-8910 Programmable Sound Generator. 8 octaves and 3 sound channels.
+
**MSX-MUSIC built in: OPLL YM2413, 9-channel FM synthesizer), 16kB FM-BASIC ROM.
+
**PCM
+
*RTC compatible with RP5C01
+
*System Timer (E6h~E7h I/O ports)
+
*Soft/Hard reset
+
*Device disabler/enabler (F5h I/O port)
+
*Connectivity
+
**At least one cartridge slot. (In fact, all MSX turbo R have two MSX cartridge slots)
+
**Two General Purpose ports. The connector is a normal 9-pin D-connector, male. (Game controllers, graphic tablet, mice are optional)
+
**One Printer interface
+
**Mic IN (used for PCM sound recording)
+
  
Standard Features Optional:
+
* '''CPU:''' ASCII R800 @ 7.159 MHz (16-bit)
 +
* '''Secondary CPU:''' Zilog Z80A @ 3.579 MHz (8-bit, for backward compatibility)
 +
* '''RAM:''' 256 KB or 512 KB (expandable)
 +
* '''Memory:''' Memory Mapper system
 +
* '''Operating System:''' MSX BASIC v4.0 or v4.1
 +
* '''Video Display Processor (VDP):''' Yamaha V9958
 +
* '''Video RAM (VRAM):''' 128 KB
 +
* '''Sound:''' Yamaha YM2149 PSG
 +
* '''Additional Sound:''' Built-in MSX-MUSIC (Yamaha OPLL YM-2413)
 +
* '''PCM Synthesizer:''' 8-bit, 16 kHz sample rate
 +
* '''Special Features:''' The MSX turboR GT model includes a built-in MSX-MIDI interface.
  
*Floppy disk drive interface (all produced MSX turbo R computers except NIA-2001 have one)
+
<br>
**64kB Disk-ROM including the Disk BASIC, MSX-DOS 1 and MSX-DOS 2 kernels
+
**One or two 1DD/2DD/2HD floppy disk drive, all Panasonic MSX turbo R computers have a 2DD 3.5" floppy drive built in. 2HD is supported only by the MX-2021, that is not MSX tR.
+
*Extended Kanji: Level 3 with 24 bit font in option
+
*MSX-MIDI
+
*RS-232C
+
*MSX View
+
  
 
== CPC connections ==
 
== CPC connections ==
  
* Some games did probably benefit from some sort of cross-dev or ports, having some common assets (music, graphics ?).
+
* Some games did probably benefit from some sort of cross-dev or ports, having some common assets (music, graphics ?)
{{#ev:youtube|azZgvlyojek|384}} {{#ev:youtube|WLkzobK52R0|384}}
+
* [[Overflow]] from [[Logon System]] released a [https://youtu.be/jSS08co8zvA Demo for MSX1]
 +
* [[SymbOS]] by [[Prodatron]] can run on MSX
 +
* [[AMSDAP]] makes it possible to use MSX hardware expansions on CPC
  
 
+
<br>
* [[Overflow]] from [[Logon System]] released a Demo on those MSX1.
+
{{#ev:youtube|jSS08co8zvA|768}}
+
  
 
== MSX-Engine (aka MSX-System) ==
 
== MSX-Engine (aka MSX-System) ==
Line 179: Line 139:
 
* [[Media:MSX - Yamaha S3527 datasheet.pdf|MSX - Yamaha S3527 datasheet]]
 
* [[Media:MSX - Yamaha S3527 datasheet.pdf|MSX - Yamaha S3527 datasheet]]
 
* [[Media:MSX2 - Yamaha s1985 datasheet.pdf|MSX2 - Yamaha S1985 datasheet]]
 
* [[Media:MSX2 - Yamaha s1985 datasheet.pdf|MSX2 - Yamaha S1985 datasheet]]
 +
* [[Media:Yamahacx5myis503ts.pdf|Yamaha MSX Series - Technical Summary]]
 +
 +
<br>
  
 
== Other datasheets ==
 
== Other datasheets ==
  
*[[Media:TMS9918 datasheet.pdf|MSX GPU - Texas Instruments TMS9918]]
+
*[[Media:TMS9918 datasheet.pdf|MSX GPU - Texas Instruments TMS9918]] [[Media:Ti-vdp-programmers-guide.pdf|VDP programmer's guide]]
 +
*[http://spatula-city.org/~im14u2c/vdp-99xx/ TMS9918 internals] [https://youtu.be/2ApafTCylus Hardware sprites internals (TMS9918 and NES PPU)]
 
*[[Media:Yamaha V9938 MSX-Video Technical Data Book Aug85.pdf|MSX2 GPU - Yamaha V9938]]
 
*[[Media:Yamaha V9938 MSX-Video Technical Data Book Aug85.pdf|MSX2 GPU - Yamaha V9938]]
 
*[[Media:Yamaha v9958 ocr.pdf|MSX2+ GPU - Yamaha V9958]]
 
*[[Media:Yamaha v9958 ocr.pdf|MSX2+ GPU - Yamaha V9958]]
*[[Media:Y8950 MSX Audio 198608.pdf|MSX-AUDIO OPL - Yamaha Y8950]]
+
*MSX-AUDIO OPL - Yamaha Y8950 [[Media:Y8950 MSX Audio 198608.pdf|Datasheet]] [[Media:Y8950am.pdf|Application manual]]
*[[Media:Yamaha ym2413 frs.pdf|MSX-MUSIC OPLL - Yamaha YM2413]]
+
*MSX-MUSIC OPLL - Yamaha YM2413 [[Media:YM2413B(-F).pdf|Datasheet]] [[Media:Yamaha ym2413 frs.pdf|Application manual]]
*[https://download.file-hunter.com/Manuals/R800%20User%20Manual.pdf ASCII R800 CPU User Manual (japanese)]
+
*[https://download.file-hunter.com/Manuals/R800%20User%20Manual.pdf ASCII R800 CPU User Manual (japanese)] [https://www.angelfire.com/art2/unicorndreams/msx/Z80R800A.html Z80 and R800 opcode tables]
 +
*[[Media:Ricoh rp5c01.pdf|Ricoh RP5C01 Real Time Clock]]
 +
 
 +
<br>
  
 
== Links ==
 
== Links ==
  
 
* [https://en.wikipedia.org/wiki/MSX MSX Wikipedia page]
 
* [https://en.wikipedia.org/wiki/MSX MSX Wikipedia page]
*[https://youtu.be/vAl7CeUqhNo MSX Japanese Commercials]
+
* [https://youtu.be/vAl7CeUqhNo MSX Japanese Commercials] [https://youtu.be/wjfJl4LQKG8 All MSX machines released in Japan]
*[https://youtu.be/ZXJa-BhusKM MSX Cartridge games] [https://youtu.be/TBzTIw_YseY Over 100 MSX cartridge games in under 1 hour] [https://youtu.be/guy5g2kszuI Over 100 MSX disk & tape games in under 1 hour] [https://youtu.be/m0EwpffAHdY Over 100 MSX2 games in under 1 hour] [https://youtu.be/msPGlRqtfjY Over 50 MSX Turbo-R games in under 30 minutes]
+
* [https://youtu.be/ZXJa-BhusKM 600 MSX cartridge game clips]  
* https://www.msx.org/wiki/ MSX Wiki
+
* [https://youtu.be/TBzTIw_YseY 100 MSX cartridge games] [https://youtu.be/guy5g2kszuI 100 MSX disk & tape games] [https://youtu.be/m0EwpffAHdY 100 MSX2 games] [https://youtu.be/msPGlRqtfjY 50 MSX Turbo-R games] in under 1 hour
* https://map.grauw.nl MSX Assembly Page
+
* [https://www.msx.org/wiki/ MSX Wiki] [https://www.msx.org/wiki/MegaROM_Mappers MegaROM mappers]
* [https://map.grauw.nl/resources/system/msxtech.pdf MSX Technical Data Book]
+
* [https://hansotten.file-hunter.com/ MSX Info Pages]
* [https://konamiman.github.io/MSX2-Technical-Handbook/ MSX2 Technical Handbook]
+
* [https://map.grauw.nl MSX Assembly Page]
* [https://youtu.be/tyV_Lze0PB0 Histoire du MSX : de sa création en 1983 jusqu'aux dernières versions en 1994]
+
* [https://problemkaputt.de/portar.htm Noca$h's Portar Doc]
 +
* [https://map.grauw.nl/resources/system/msxtech.pdf MSX Technical Data Book] [https://konamiman.github.io/MSX2-Technical-Handbook/ MSX2 Technical Handbook] [https://archive.org/details/MsxTurboRTechnicalHandBookOCR MSX Turbo-R Technical Handbook (japanese)]
 +
* [https://www.samdal.com/spectravideo.htm Roger's Spectravideo page]
 +
* [https://youtu.be/AFRf87SqWrw MSX Computers - Scrolling, Sprites, and Stereotypes] by [[Displaced Gamers]]
 +
* [https://youtu.be/xYr0Gsezx0U Sega Genesis & MSX Hybrid Console] by [[Lady Decade]]
 +
* [https://youtu.be/9GrryZdhe3I Casio PV-7 computer: the worst MSX ?] by [[Olipix Retrotech]]
 +
* [https://youtu.be/y49rWWlyBxs Le MSX, une machine 8 bits formidable (1983 - 1991)] by [[Rodrik Studio]]
  
 
[[Category:Non CPC Computers]]
 
[[Category:Non CPC Computers]]
 +
[[Category:CP/M]]

Latest revision as of 22:24, 17 May 2025

MSX Sony HitBit HB-10P
MSX2 Sony HitBit HB-F1
MSX2+ Sony HitBit HB-F1XDJ
MSX Turbo-R Panasonic FS-A1ST
MSX BASIC
MSX-DOS

MSX was a standardized range of Z80 based 8 bit computers developed by Microsoft and various (mostly) Japanese producers to exploit... Microsoft Software.

MSX stands for "Machines with Software eXchangeability".

MSX-DOS was binary compatible with CP/M, allowing access to its vast library of available software.

4 generations of MSX were produced, each with it's own system specs upgrades and retro compatible with past specifications.

Although it was using off-the-shelf components at the very beginning, the design quickly became very Yamaha-centric.


History

It was a serious technical concurrent to the Amstrad CPC range, later specifications being closer to 16bit computers than other 8bit systems. Yet a lot of similarities and differences between the 2 systems.

Despite having the colour attributes logic (MSX1 mostly, the other through retro compatibility), it wasn't as bad as on the Speccy.

  • the MSX1 attributes are 8×1 pixels instead of 8×8 pixels (Speccy).
  • the machine includes proper 1bpp Hardware Sprites, which enable to have no attribute clashes compared to software sprites.
  • The machine has a proper VRAM, sort of proper graphical card as comparable to IBM PC.

As a Z80 based computer, many European Software developers did those awful scrappy Speccy Ports, which Japanese couldn't understand ("why do they have such sloppy graphics ?")

Later MSX standards (MSX2, MSX2+ and turboR) included a large panel of extra video modes without the colours clashes.

The MSX 2 introduced hardware vertical scrolling but it wasn't until the MSX2+ that the MSX could do proper hardware horizontal scrolling; the video card makes software scrolling very difficult, so only as of the MSX2+ and later is smooth scrolling available.

According to Kazuhiko Nishi, the creator of the MSX standard, the MSX sold about 3 million units in Japan and 1 million units overseas. Source (JP)

The MSX was perhaps to Japan what the CPC was to France (keeping to the proportions of course). Or what the ZX Speccy was to England or eastern Europe (Speccy clones mostly...)

A "serious" computer mostly used as home computer for gaming purpose by kids.


Specifications

Unlike the Commodore 64 and Atari 8-bit computers, the MSX standard mandates the same Z80 CPU clock speed (3.579545 MHz, exactly the NTSC color subcarrier frequency) for both PAL and NTSC machines.

However, PAL and NTSC still have to be taken into consideration when developing a game, as there is less time to do updates at 60 Hz than it does at 50 Hz:

  • In games made for 60 Hz, the CPU sits idle for 20% of the time when running at 50Hz.
  • Games made for 50 Hz and which utilise the full CPU can not run properly at 60 Hz.

This is why when developing a game, it’s best to make it targeted for 60 Hz. Then it will be much easier to get it to work at both frequencies.

Generation 0: Precursors to MSX

The machines in Generation 0 are considered the foundational steps toward the creation of the MSX standard. While not officially part of the MSX family, they share significant hardware similarities with MSX1 systems.

Systems: ColecoVision, Sega SG-1000, Sega SC-3000, Spectravideo SV-318/328.

Shared Components with MSX1:

  • ColecoVision, Sega SG-1000 and SC-3000 feature the same CPU (Zilog Z80A) and Video Display Processor (Texas Instruments TMS-9918 series) as MSX1 machines.
  • These systems use the Texas Instruments SN76489 sound chip, which is closely related to the General Instruments AY-3-8910 Programmable Sound Generator (PSG) found in MSX1.
  • The SV-318/328 computers use identical CPU, VDP, and PSG hardware to MSX1, with the SVI-BASIC by Microsoft being very similar to MSX-BASIC.

ASCII's president Kazuhiko Nishi saw the potential in the Spectravideo computer system. He wanted to make a world standard for home computers out of the SV-328 design, called the MSX standard. Spectravideo agreed with this, and ASCII started to make some small changes of the design. Source

Generation 1: MSX1

The MSX1 represents the first official generation of the MSX standard, introduced in 1983.

  • CPU: Zilog Z80A @ 3.579 MHz (8-bit)
  • RAM: 8 KB to 64 KB
  • Operating System: MSX BASIC v1.0
  • Video Display Processor (VDP): Texas Instruments TMS-9918, TMS-9928, or TMS-9929
  • Video RAM (VRAM): 16 KB
  • Sound: General Instruments AY-3-8910 Programmable Sound Generator (PSG)

Note: MSX1 machines were produced by various manufacturers (e.g., Sharp, Toshiba, Yamaha), leading to minor hardware variations in CPU, VDP, and PSG components.

Generation 2: MSX2

Introduced in 1985, the MSX2 brought significant upgrades over its predecessor, enhancing graphics and memory capabilities.

  • CPU: Zilog Z80A @ 3.579 MHz (8-bit)
  • RAM: 64 KB to 256 KB (expandable)
  • Memory: Memory Mapper system
  • Operating System: MSX BASIC v2.0 or v2.1
  • Video Display Processor (VDP): Yamaha V9938
  • Video RAM (VRAM): 64 KB or 128 KB
  • Sound: General Instruments AY-3-8910 PSG or compatible (e.g., Yamaha YM2149)

Generation 3: MSX2+

The MSX2+, released in 1988, offered further refinements, primarily in graphics and sound, and was marketed mainly in Japan.

  • CPU: Zilog Z80A @ 3.579 MHz (8-bit), switchable to 5.369 MHz on some models
  • RAM: 64 KB (expandable)
  • Memory: Memory Mapper system
  • Operating System: MSX BASIC v3.0
  • Video Display Processor (VDP): Yamaha V9958
  • Video RAM (VRAM): 128 KB
  • Sound: General Instruments AY-3-8910 PSG or compatible (e.g., Yamaha YM2149)
  • Additional Sound: Most machines include built-in MSX-MUSIC (Yamaha OPLL YM-2413)

Generation 4: MSX turboR

The MSX turboR, launched in 1990, was the final and most advanced iteration of the MSX standard, featuring a new 16-bit processor alongside the traditional Z80.

  • CPU: ASCII R800 @ 7.159 MHz (16-bit)
  • Secondary CPU: Zilog Z80A @ 3.579 MHz (8-bit, for backward compatibility)
  • RAM: 256 KB or 512 KB (expandable)
  • Memory: Memory Mapper system
  • Operating System: MSX BASIC v4.0 or v4.1
  • Video Display Processor (VDP): Yamaha V9958
  • Video RAM (VRAM): 128 KB
  • Sound: Yamaha YM2149 PSG
  • Additional Sound: Built-in MSX-MUSIC (Yamaha OPLL YM-2413)
  • PCM Synthesizer: 8-bit, 16 kHz sample rate
  • Special Features: The MSX turboR GT model includes a built-in MSX-MIDI interface.


CPC connections


MSX-Engine (aka MSX-System)


Other datasheets


Links