Page 1 of 1

X16 Midi Player

Posted: Tue Jun 13, 2023 1:30 am
by Joshua Bair
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.

Re: X16 Midi Player

Posted: Tue Jun 13, 2023 1:54 am
by ahenry3068
I haven't even executed it yet....... What programming
language... ???

Re: X16 Midi Player

Posted: Tue Jun 13, 2023 3:14 am
by Joshua Bair
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.