-
Notifications
You must be signed in to change notification settings - Fork 177
Platform
BALLOON | FU-SEN edited this page Mar 12, 2025
·
240 revisions
The following table shows the machines supported by the classic library.
Many features can be tested programmatically using <features.h>
which is generated from the spreadsheet: features.csv
Not all columns are visible. Horizontal scroll to see them.
Machine | Native Console I/O | Portable Console | "Monochrome" Graphics | File I/O | Sound | Other features / notes |
---|---|---|---|---|---|---|
ABC80 | Yes | 40x24 | 78x72 | No | No | |
ABC800 | Yes | No | No | No | No | Untested |
Agon Light | Yes | Yes | Yes | No | No | |
MITS Altair 8800 | Yes | No | No | No | No | |
Alphatronic PC | No | 40x24 80x24 | 80x72 160x72 | No | No | |
Amstrad CPC | Yes | Yes | 640x200+graylib | Yes | PSG | CPCRSlib partially imported (no tiles) |
Amstrad NC100/NC150 | Yes | No | 480x64 | No | No | |
Amstrad NC200 | Yes | No | 480x128 | No | No | |
Amstrad PCW | Yes | No | 720x256 | CP/M | No | Extension library to the CP/M base |
Mattel Aquarius | Yes | 40x24 | 80x72 | No | 1 bit +PSG | |
Bandai RX-78 | Yes | 24x23 | 192x184 | No | PSG | |
Bandai Supervision 8000 | No | 32x16, 32x12 | 32x16,256x96 | No | PSG | |
Bondwell 12/14 | Yes | 80x25 | 160x75 | CP/M | 1 bit, 4 bit | Extension library to the CP/M base |
Bondwell 2 | Yes | No | 640x200 | CP/M | No | Extension library to the CP/M base |
Knight 2000 (Aussie Byte) | Yes | 80x25 | not yet | CP/M | 1 bit | Untested and incomplete graphics lib |
Canon X-07 | Yes | No | No | No | No | Initial stage |
Casio FP-1100 | No | 40x25,80x25 | 640x200,320x200 | No | No | |
Casio PV-1000 | No | 28x24 | 56x48 | No | No | |
Casio PV-2000 | No | 32x24 | 256x192 | No | PSG | |
Cambridge Z88 | Yes | Yes | 256x64 | Yes | 1 bit | Far memory support, ZSock + many other features |
Camputers Lynx | Yes | 32x32 | 64x64 | No | 1 bit, 4 bit | Support is at an initial stage |
Colecovision | No | 32x24 | 256x192 | No | PSG | |
Colecovision Adam | No | 32x24 | 256x192 | CP/M only | PSG | CP/M extension |
Commodore 128 (z80) | No | 40x25 | 80x50, 80x75, 640x200, 640x480 | CP/M only | SID + PSG + 1 bit + 4 bit | Steve Goldsmith tools are supported |
CCE MC-1000 | Yes | 24..85x24, (hires)/32x16 | 256×192 | No | 1 bit | |
CP/M | OS calls | ADM-3a + Target specific | Target specific | Yes | No | |
Corvette | CP/M | 64x16 | 512x256 | CP/M | No | |
DAI | Yes | No | No | No | No | |
Dick Smith Super-80 | No | 32x16 / 80x25 | 64x48 / 160x50 | No | Yes | Both TTL and 6845 video supported |
EACA EG2000 | 40x24..25 | 40x24 - default | 160x96..102 | No | 1 bit +PSG | Sound output via cassette port |
Epson PX-4/HC-40 | 40x8 | 30..80x8 | 240x64 | No | No | |
Epson PX-8/HC-80/HC-88 | 80x8 (80x9*) | 60x10 | 480x64 | No | No | *use the "LCD_7LINES;" macro |
Enterprise 64/128 | 40x25 | No | 336x243*, 672x243* | No | Yes | *GFX via EXOS |
Excalibur 64 | No | 40x25, 80x25 | No | No | No | |
Galaksija | 32x16 (B&W) | 32x16 + 32x26 (Gal+) | 64x48 + 256x208 (Gal+) | No | 1 bit* + PSG (Gal+) | *via tape output |
Gemini Galaxy | Yes | 80x25, 40x25, 32x24 | 160x75 | CP/M | No | Extension library to the CP/M base |
Genius Leader | No | 20x2,20x4,30x12 | 240x100 (6000SL) | No | Yes (2000/4000) | |
Hanimex Pencil II | No | 32x24 | 256x192 | No | PSG | |
Homelab 2 | No | 40x25 | 80x50 | No | No | |
Homelab 4 | No | 64x32 | 128x64 | No | No | |
Hübler/Evert-MC | 64x24 | 64x24 | 64x24 | No | No | |
Hübler Grafik-MC | 32x24 | 32x32 | 256x256 | No | No | |
Jupiter Ace | 32x24 | 32x24 - default | 64x48, 64x72 | No | 1 bit | |
Kaypro | 80x25 (ADM3) | No | 160x100('84) 80x50('83) | CP/M | No | Extension library to the CP/M base |
Kramer-MC | 64x16 | 64x16 | 64x16 | No | No | |
Krokha (tiny) | No | 48x32 | 96x64 | No | No | |
Lambda 8300 | 32x24 (TXT) | No | 64x48 | No | 1 bit* | (via tape output) |
LM-80C | 32x24 | 32x24 | 256x192 | No | PSG | |
Lviv/Lvov PK-01 | Yes | 32x32 | 256x256 | No | No | |
Micro 8085 | - | - | - | No | No | |
MicroBee | Yes | 40x25,64x16,80x24 | 80x50,128x32,160x48 and optional 640x275, 512x256, 320x275, 160x75 | CP/M | 1 bit | Native console: 64x16 when in RUNM mode, 80x24 when used as an extension library to the CP/M base |
Mikro 80 | 64x32 | 64x32 | 128x64 | No | No | |
Micronique Hector | Yes | 28x9 or 30x28 | 112x77 or 240xx226 | No | No | |
Mitsubishi Multi8 | Yes | 40x25, 80x25 | 640x200 | No | PSG | |
MSX | 40x24 | 24..85x24 (Colour) | 256x192 | No | 1 bit, 4 bit, PSG | GFXLIB by Rafael de Oliveira Jannone |
Nabu PC | 32x24 | 32x24 | 256x192 | No | PSG | |
Nascom | 48x16 | 48x16 - default | 96x48 | (CP/M) | No | |
Grundy Newbrain | Yes | No | No* | (CP/M) | No | * could work on expanded systems in non-standard mode, via stream functions |
NEC PC-6001 | 32x16, 32x24 | 32x16 | 64x48, 128x192, 256x192 | No | PSG only | |
NEC PC-8801 | 40x25, 80x25 | 40x25, 80x25 | 160x100, 600x200 | No | 1 bit + PSG | Sound supported only on MKII or later models, higher pitch is expected with higher CPU clocks |
Nichibutsu My Vision | No | 32x24 | 256x192 | No | PSG | |
Nintendo Gameboy | 20x18 | 20x18 | 40x36 | No | No | Uses GBDK library |
Osborne 1 | 52x24 | No | 104x48 | CP/M | No | Extension library to the CP/M base (* an official HW mod permitted higher resolutions) |
v6z80p (OSCA) | 40x24 | 40x24 | 320x200 | Yes | No | 2 different file access libraries |
Otrona Attachè | 80x25 (ADM3) | No | 320x240 | CP/M | No | Extension library to the CP/M base |
Memotech MTX | 40x24 | 24..85x24 (Colour) | 256x192 | CP/M | PSG | Most of GFXLIB by Rafael de Oliveira Jannone |
Pac Man HW | 28x36 | No | 84x72* | No | No lib | * the special font provided in support/pacman must be used |
Philips P2000 | 40x24 | Monochrome 40x24 | 78×72 | No | 1 bit | |
Philips C7420 | 39x20 | No | Not Yet | No | No | |
Philips VG-5000 | 40x24 | 40x24 | 80×72 | No | 1 bit | |
PMD85 | - | 48x32 | 288x256 | No | No | |
Primo | - | 32x24 | 256x192 | No | 1 bit | |
Radio-86 | 64x25 | 64x25 | 64x25 | No | No | |
Rabbit Control Module | ||||||
Regnecentralen RC700 | 80x25 | 80x25 | 80x25 | CP/M | No | CP/M base libraries |
Robotron Z1013 | 32x32 | 32x32 - default | 64x64,256x256 | No | No | |
Robotron Z9001, KC85/1, KC87 | 40x24 | 40x24 | 80x48, 320x192 | No | 1 bit | Model variants: KC85/1, KC87 |
(Robotron) VEB Mikroelektronik HC-900, KC85/2..KC85/5 | 40x32 | 40x32 | 320x256 | No | No | Model variants: HC-900 KC85/2..KC85/5 |
SAM Coupé | 32x24 | 24..85x24 (Colour) | 256x192 512x192 | No | PSG (SA1099 eTracker)+1 bit | Sprite Pack. Music might play at a higher pitch due to CPU frequency. |
Samsung SPC-1000 | 32x16 | 32x16 + 32x24 | 64x32 + 256x192 | No | Yes | VDP extension is supported |
Sanyo MBC-200/1200 | 80x33 | 80x33, 80x40 | 640x400 | CP/M | 1 bit | Extension library to the CP/M base |
Sega Master System / (Game Gear) | 32x24 (20x16) | 32x24 | 256x192 | PSG (+ 1 bit) | ||
Sega SC-3000/Sega SG-1000 | 40x24 | 24..85x24 (Colour) | 256x192 | No | PSG (+ 1 bit) | Most of GFXLIB by Rafael de Oliveira Jannone |
Sharp PC-G8xx, PC-E2xx | No | 24x4 *(24x6 / 36x8) | 120x28, 144x32, 144x48 | No | 1 bit** | *(-clib=g850b / -clib=g850) **HW required |
Sharp MZ (80,700,800) | 40x25 | 40x25 | 80x50 | No | PSG | Many appmake extras |
Sharp OZ | Yes | No | 239x80 | No | No | Experimental |
Sharp MZ2500 | 40(80)x25 | 40x24, 80x24 | No | No | No | Initial support, max 24kb |
Sharp X1 | No | 40(80)x25 | 320(640)x200 | No | PSG only | |
S1MP3 | No | Yes | No | No | No | |
Sinclair ZX80 | 32x24 | 32x24 (TXT) | 32x24 - default | 64x48+graylib | as for ZX81 | Good compatibility with ZX81, tricks to try keeping the display stable |
Sinclair ZX81 | 32x24 | 32x24 (TXT), 24..85x24 (HRG) | 64x48, 64x72, +HRG Sinclair ZX Spectrum | 32x24 and 64x24 | 24..85x24 (Colour) | 256x192 |
Sinclair ZX Spectrum Next | [32x24,64x24] | 24..85x24 (Colour) | 256x192 | Yes | 1 bit + PSG | |
Exidy Sorcerer | 64x30 | 64x30 | 128x60 | No | No | '--300bps' extra mode in appmake |
Sol20 | No | 64x16 | 64x16 | No | No | |
Sony SMC-70/SMC-777 | 80x24 | 40x25 + 80x25 | 80x50, 160x50, 320x200, 640x200 | CP/M | PSG | Extension library to CP/M. |
SORD M5 | 32x24 | 24..85x24 (Colour) | 256x192 | No | PSG (+ 1 bit) | Most of GFXLIB by Rafael de Oliveira Jannone |
S-OS (The Sentinel) | OS calls | No | No | Yes | No | Multi platform OS published in a Japanese PC magazine |
Специалист/Specialist | 48x32 | 48x32 | 384x256 | No | No | |
Spectravideo SVI | 40x24 | 24..85x24 (Colour), 80x24 (SV-806) | 256x192 | No | 1 bit, 4 bit, PSG | GFXLIB by Rafael de Oliveira Jannone |
Sprinter | 80x35 | 80x35 (Colour) | 80x35 -default | Yes | No | Experimental port. Developed under the SPRINT emulator |
Tatung Einstein | 40x24 | 24..85x24 (Colour), 80x25 (TK-02) | 256x192 | Yes | No | Extension library to CP/M.Most of GFXLIB by Rafael de Oliveira Jannone |
Tesla Ondra | 40x32 | 40x32 | 320x256 | No | No | |
TI82 | 16x8 | 32x8 (B&W) | 96x64+graylib | No | 1 bit | Grey graphics run on the VTI emulator but problems have been reported with the real hardware |
TI83 | 16x8 | 32x8 (B&W) | 96x64+graylib | No | 1 bit | Sound output via infrared port |
TI83+ | 16x8 | 32x8 (B&W) | 128x64 +graylib | No | 1 bit | Sound output via infrared port |
TI85 | 21x8 | 32x8 (B&W) | 128x64 | No | 1 bit | Sound output via infrared port |
TI86 | 21x8 | 32x8 (B&W) | 128x64 | No | 1 bit | Sound output via infrared port |
TIM-011 | 80x24 | 64x32 | 512x256 | CP/M | No | CP/M base libraries |
TIKI-100 | Yes | 128x32,64x32,32x32 | 1024x256 | CP/M | 4 bit, PSG | Extension library to the CP/M base |
Toshiba Pasopia 7 | No | 40x25 | 80x25 | No | No | |
TRS-80 | 64x16 (80x72) | 64x16 - default | 128x48 384x192 512x192 640x240 | No | 1 bit | Sound output via cassette port, 80x72 on Model II |
TRS80 M100, & Kyotronic compatibles | 40x8 | No | 240X64 | No | No | |
TS2068 | 32x24, 64x24, 128x24 | 24..85x24 (Colour) | 256x192 512x192 | No | 1 bit | Sprite Pack |
Вектор-06Ц/Vector06c | No | 32x32 | 256x256 | No | PSG | |
Visual 1050 | 80x25 | 80x25 | 640x300 | CP/M | No | Extension library to the CP/M base |
Videoton TV Computer | 16x24, 32x24 - default, 64x24 | No | No | No | No | graphics.h partially supported |
VTech Laser 350/500/700 | 40x24 | 40x24 and 80x24 | 80x48,160x48,320x192 | No | 1 bit | |
VZ/Laser 200 | 32x16 | 32x12 (B&W) | 128x64 + 64x32 | No | 1 bit | |
Xerox 820 / Ferguson BigBoard | 80x24 | 80x24 | 80x24 | CP/M | 1bit (820ii only) | CP/M base libraries |
Xircom Rex 6000 | No | No | No | No | No | Graham Cobb's stdio library was due to be integrated into z88dk v1.6. The Rex supplies has its own library mostly divergent from the standard z88dk library |
Z80 TV Game | No | 21x26 | 168x208 | no | 1bit | |
modes +graylib | No | 1 bit + PSG | Sprite Pack, 1bit sound blanks the screen | |||
ZXVGS | - | No | - | Yes | - | Not entirely integrated since we're not sure how to classify it! |
- Overview
- Platform List
- Unsupported Platforms
- i8080/5 Support
- Homebrew hardware quickstart
- Retargetting
- Building the libraries
- Clang support
- Pragmas
- Adding to Classic
- Introduction
- Library Configuration
- CRT
- Header Files
- Assembly Language
- Library in Depth
- Embedded Platform
- Adding to NewLib
- Benchmarks
- Datatypes
- Debugging
- Decompression
- More than 64k
- Deficiencies
- Compiling Larger Applications
- Importing routines written in 8080 assembly mnemonics
- Using CP/M libraries in REL format with z88dk
- Writing optimal code
- Speeding up Compilation
- CMake usage