mirror of
https://github.com/UzixLS/zx-midiplayer.git
synced 2025-07-19 07:11:26 +03:00
869e63f66d8ef4bc868cc07e1c6e4f77e8ae6ea5
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);
- Support for SD card interfaces: DivMMC (and derivatives), ZXMMC, Z-Controller;
- Support for IDE disk interfaces: DivIDE, NemoIDE, SMUC;
- Support for FAT32 filesystem;
- 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
- Support for >64Kb files
- Add scrollbars or entries counter to menus
- Restore previous menu position when going into parent directory ".."
Languages
Assembly
97.3%
Lua
2.3%
Makefile
0.2%
C++
0.1%