MyGo 云音乐
用 Go 与 MyGo 写成的第三方网易云音乐桌面客户端。原生界面,没有 WebView;边下边播,无损与 Hi-Res,逐字歌词与「律动」,刘海播放器。
Translation pending
Generative tracker grooves for the FM-1, razor sharp.
MediaC · PythonGitHub @deliriouxOnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
Owners of public repositories under a personal GitHub account can sign in to verify ownership and manage the introduction themselves. No administrator approval is needed.
Sign in, generate a verification file, and commit it to this repository’s default branch within 30 minutes. Files on other branches or forks do not count. Then check the file below to manage the project without administrator approval. Keep the file to retain your access.
If needed, you will go to sign-in. After signing in, return here and press your chosen verification button again.
Run /nomorevibe verify in your project folder to verify ownership and manage the introduction yourself.
Verify in one minuteAsk about other verification options
The maker's introduction consists of the line above. Read the repository README for more details. Repository README ↗
Loading the full README.
Read the full README ↗A generative groovebox for the M-VAVE FM-1, in the style of early-90s PC tracker music.
Makohai is Finnish for the longfin mako shark. It was called Espada before 1.0.
Six lanes (lead, arp, pad, bass, drums and sfx) play parts that are composed live in one of eighteen styles: chords, bass lines, melodies, drum patterns and noise in the manner of the S3M scene, played as a tracker musician plays them, with glides, swells and an echo channel. You do not program steps; you mix styles. Queue the next style, blend it in lane by lane from the bottom up, or launch it at once with its own tempo. Shape each lane with a filter, a tempo-synced wobble, FM brightness and drive, or with tracker effects: slide, porta, vibrato, tremolo, tremor, gate, swing, retrigger, a bit crusher, echo, and an equal-power pan per lane with an autopan that sends each note to the other side or sweeps the lane in time. An arc builds the piece up from the drums to a drop, and DROP lets you call the break yourself. SETUP's free knobs show pictures: a scope, level meters, a goniometer, a spectrum landscape, and demo-style pictures (a turning crystal, a tunnel, dots, plasma, fire and more). SEL + HOME shows them full screen, cut on the beat; SETUP's BACK puts one behind the whole screen, cycling every few bars if you like.
Status: 1.3. It runs on the FM-1. A voice budget keeps the sound in time however much plays (SETUP, VOICES); if the sound ever turns to crackles, SETUP's AUDIO and VOICES rows show what the FM-1 was doing. Install it over the official firmware and keep the USB rescue in mind (below).
One screen, laid out as a mixing desk: the setting in large letters on top, all six lanes in the middle, and at the bottom the four knobs in a row, four lanes side by side, each with its value for that setting; ALGORITHM slides the window over the six lanes. A group button picks the kind of setting, PRESETS steps through them.
| Control | Does |
|---|---|
| HOME / FX / ARP / GLO | the groups PLAY, SOUND, TRACKER, SONG; again: the next setting. Hold HOME: SETUP (colours, screen, lights, MIDI channels and sync, defaults) |
| PRESETS | the setting in the group |
| KNOB 1-4 | that setting for the four lanes in the window, LEAD ARP PAD BASS to PAD BASS DRUMS SFX (SONG: the four shown) |
| ALGORITHM | the lane the buttons and keys act on (turning its knob picks it too) |
| SELECT | tempo |
| PLAY / SEQ / REC | INTRO and END, launch the next style (EDIT: copy a lane), INTER (tap) or DROP (hold) |
| ENV / LFO / EDIT | fade the lane out and in (SEL+ENV: lock), a new idea, its steps |
| SAVE, OCT- / OCT+ | save; the keys' octave |
| Keys | play the lane live; on EDIT they enter steps |
The full guide to the panel is in docs/MANUAL.md. Where Makohai is going, how it is built and why: docs/DEVELOPMENT.md.
Makohai in the browser: the same code the FM-1 runs, compiled to WebAssembly, on Felucca's browser FM-1 (knobs, buttons, keys; your computer's keyboard plays it too, a MIDI controller turns the knobs). Chrome, Edge, Firefox or Safari.
Makohai's web installer in Chrome or Edge on a computer (it also takes a test
build, and brings back the official V15), the FM-1 Firmware Hub, or from the command
line (once: pip3 install mido python-rtmidi):
python3 tools/fm1_install.py makohai-1.3.fwsc
Install over M-VAVE's official firmware. If anything goes wrong: hold OCT- while switching on for the USB rescue, where the installers still reach the FM-1. Installing firmware is at your own risk.
You need Linux on x86-64 (or macOS / Windows with Docker or WSL), Python 3 with Pillow, JieLi's toolchain and three files of the JieLi AC79 SDK:
pip3 install Pillow
tools/get_toolchain.sh
git clone --depth 1 --branch AC79NN_SDK_V1.2.1_2023-12-13 \
https://gitee.com/Jieli-Tech/fw-AC79_AIoT_SDK.git ~/fw-AC79_AIoT_SDK
./build.sh # -> build/makohai.fwsc
./build.sh --release 1.3 # -> build/makohai-1.3.fwsc, identity FM-1_47625642
GitHub Actions builds the package on every push (the run's artifact makohai-firmware).
In the browser: web/emu/makohai_build.sh (clang with wasm-ld, or Emscripten) writes build/makohai_emu/;
serve that folder and open it. node web/emu/makohai_emu_test.mjs build/makohai_emu/makohai.wasm checks it without
a browser.
Host mode runs the same code on a computer: tests/run_host.sh writes the screens as PNG and the sound as a WAV.
build/host/makohai OUT tests/demo.txt plays a scripted tour (buttons, encoders, keys over time). The screenshots
above come from host mode, pixel for pixel what the FM-1 draws, at twice the size.
firmware/src/makohai.c the app: shared state, includes the parts below
firmware/src/makohai_synth.c the audio interrupt: FM, drum and sfx voices, lane effects, the step clock
firmware/src/makohai_music.c harmony, the eighteen styles, generators, density, the arc, your patterns, the bar cache
firmware/src/makohai_ui.c the screen, the views and pages, the panel, saving
firmware/src/platform.c Dinghy's wiring of the FM-1 platform (boot, USB, updates, panel, screen, settings)
The chip's rules (docs/RULES.md): integers only, no 64-bit division, the audio interrupt well under 5.8 ms. SEL + SAVE shows the interrupt's worst time in the header.
GPL-3.0-only. Makohai is built on Dinghy (zvenson), which carries the platform of Felucca (Leo Kuroshita, Hügelton Instruments) as SLOOP (isod89) has it. Details in LICENSING.md.
"M-VAVE" and "FM-1" belong to their owners. Makohai is not made or endorsed by them.