Commander X16 Midi Player v4.0
Usage: LOAD "x16player.prg"
RUN
ENTER MIDI FILENAME:
[MIDI Filename].MID
Midi file must be located in the same folder as the x16emu.exe emulator.
Keys:
1 Channel Volumes
2 Midi Notes
3 6 String Guitar Fretboard
4 4 String Bass Fretboard
5 5 String Bass Fretboard
7 Vocals
+) Next Channel (Guitar/Bass/Vocals Only)
-) Previous Channel (Guitar/Bass/Vocals Only)
Ctrl-C RUN/STOP) Exit Player
Known Issues:
Not all MIDI events are supported.
Pitch Bend not 100% accurate.
X16 Midi Player
-
- Posts: 3
- Joined: Sun Jun 07, 2020 3:31 am
X16 Midi Player
- Attachments
-
- x16Player5.png (4.36 KiB) Viewed 4266 times
-
- x16Player4.png (4.55 KiB) Viewed 4266 times
-
- x16player2.png (5.15 KiB) Viewed 4266 times
-
- x16player.png (4.43 KiB) Viewed 4266 times
-
- x16player.prg
- Version 4.0
- (15.52 KiB) Downloaded 357 times
Last edited by Joshua Bair on Wed Jun 14, 2023 2:07 am, edited 1 time in total.
- ahenry3068
- Posts: 1136
- Joined: Tue Apr 04, 2023 9:57 pm
Re: X16 Midi Player
I haven't even executed it yet....... What programming
language... ???
language... ???
-
- Posts: 3
- Joined: Sun Jun 07, 2020 3:31 am
Re: X16 Midi Player
The programming language is one that I created myself. It's similar to 6502 assembly language, but it uses XML documents.
You can see the code for the midi player here: https://github.com/SpyderTL/OZone/blob/ ... Player.xml
It's fairly easy to read, and to convert to actual ASM if you wanted to. However, I find the XML to be more explicit, and easier to use when working on multiple projects for different platforms. That repository has similar projects for other platforms, like the NES, SNES, N64, Game Boy, MS-DOS, Windows, Linux, ARM, RISC-V, etc.
The XML documents allow me to add tooltips with documentation, create transform XSLT documents to insert inline functions, and I get autocomplete and intellisense for free.
You can see the code for the midi player here: https://github.com/SpyderTL/OZone/blob/ ... Player.xml
It's fairly easy to read, and to convert to actual ASM if you wanted to. However, I find the XML to be more explicit, and easier to use when working on multiple projects for different platforms. That repository has similar projects for other platforms, like the NES, SNES, N64, Game Boy, MS-DOS, Windows, Linux, ARM, RISC-V, etc.
The XML documents allow me to add tooltips with documentation, create transform XSLT documents to insert inline functions, and I get autocomplete and intellisense for free.