mirror of
https://github.com/UzixLS/zx-midiplayer.git
synced 2025-07-19 07:11:26 +03:00
bea6a1e0beb4882fd45935c52c121c248c6d2fe4
ZX MIDI player
Quick demo video: https://www.youtube.com/watch?v=X_hX_dGmGeg
- Support for any ZX Spectrum-compatible computer with 128Kb RAM, e.g.:
- ZX Spectrum 128/+2/+3 with MAYK addon;
- Sizif-512 with extension board;
- ZX-Uno.1010 or ZX-Uno with MIDI addon;
- ZX Evolution with Multisound addon.
- Support for MID(SMF) type 0, type 1 and RMI file formats;
- Support files up to 64Kb;
- Support for up to 60 tracks in file (for heavier files, turbo CPU frequency is desirable);
- Support for various CPU frequencies - 3.5MHz, 3.54MHz, 7MHz, 14MHz, 28MHz (no-waitstates required for turbo modes);
- Support for BetaDisk/TR-DOS floppy interface (compatible with ESXDOS);
- Hardware MIDI synthesizer required.
MIDI synthesizer wiring
MIDI synthesizer data input should be connected to AY port A2. This is standard MIDI wiring method defined by ZX Spectrum 128.
You may use addon with builtin MIDI synthesizer or connect an external one to your Spectrum - see link for howto.
TODO
- Add scrollbars or entries counter to menus
- Handle last entry in playlist
- Implement FAT32 support
- Implement DivMMC, ZXMMC and Z-Controller support
- Support for >64Kb files
- Correctly handle TRDOS-less environment
Languages
Assembly
97.3%
Lua
2.3%
Makefile
0.2%
C++
0.1%