ajxs

ajxs.me · Personal blog · on HN since 2021

ajxs writes detailed technical posts on vintage synthesizer firmware, Yamaha DX7 internals, Ada, and unusual architectures.

What HN saysCommenters cite the DX7 reverse-engineering and technical analysis posts as sources, including for DAC and FM synthesis discussion.
15HN people shared it
5linked it in comments
10stories submitted
991story points
2 months agolast shared
2021people per year2026

Most-shared posts

  1. 1
    Yamaha DX7 Technical Analysis
    3 people · 287 points · first shared 2021 · 125 comments on HN
  2. 2
    Introduction to reverse-engineering vintage synth firmware
    3 people · 196 points · first shared 2024 · 27 comments on HN
  3. 3
    Giving Ada a Chance
    2 people · 180 points · first shared 2021 · 254 comments on HN
  4. 4
    How does Ada's memory safety compare against Rust?
    2 people · 166 points · first shared 2025 · 158 comments on HN
  5. 5
    Hacking the Yamaha DX9 to Turn It into a DX7 (2023)
    2 people · 100 points · first shared 2023 · 27 comments on HN
  6. 6
    How the Yamaha FM synth cassette interface works
    2 people · 54 points · first shared 2022 · 20 comments on HN
  7. 7
  8. 8
    Giving Ada a Chance (2021)
    1 people · 5 points · first shared 2024 · 1 comments on HN
  9. 9
    How Far Back in Time Can I Take My Website's Design?
    1 people · 2 points · first shared 2023 · discussion on HN
  10. 10
    Homepage
    1 people · first shared 2021
  11. 11
    DX7
    1 people · first shared 2024
  12. 12
    How Does Adas Memory Safety Compare Against Rust
    1 people · first shared 2025
  13. 13
    Frequency modulation.jpg
    1 people · first shared 2021
  14. 14
    The Identity of The Sanctimonious Kid
    1 people · first shared 2024

What HN people wrote when they linked it

ajxs · 2022-01-13
It would be really great for me if any of these CSS preprocessors offered a standalone command line version that didn't need npm to install. My developer blog (https://ajxs.me) is built by a homegrown static-site-generator built in Python, which reads data from a simple SQLite database. I've been looking for a suitable CSS preprocessor for a while, however the ones I can find are all totally overcooked for my needs, and nearly exclusively designed to be integrated with Node.js.
Ygg2 · 2025-08-24
> The goal of ANY software engineer worth their salt should be minimizing errors and defects in their end product. > > ...to the extent possible within their project budget. Sure, but when other engineers discover that shit caused us many defects (e.g., asbestos as a fire insulator), they don't turn around and say, "Well, asbestos sure did cause a lot of cancer, but Cellulose Fibre doesn't shield us from neutron radiation. So it won't be preventing all cancers. Ergo, we are going back to asbestos." And then you have team Asbestos and team Lead paint quarrelling who has more uses. That's my biggest problem. The cyclic, Fad Driven Development that permeates software engineering. > Pretty sure it could (at least) equally well be reached by learning to write Ada. Not really. Ada isn't that memory safe. It mostly relies on runtime checking [1]. You need to use formal proofs with Ada SPARK to actually get memory safety on par with Rust. > Pretty sure it could (at least) equally well be reached by learning to write Ada. See above. You need Ada with Spark. At that point you get two files for each method like .c/.h, one with method definition and one with proof. For example: // increment.ads - the proof procedure Increment (X : in out Integer) with Global => null, Depends => (X => X), Pre => X < Integer'Last, Post => X = X'Old + 1; // increment.adb - the program procedure Increment (X : in out Integer) is …
tweetle_beetle · 2025-10-20
Did you read the section about what made the DX7 hardware a good target for this project? https://ajxs.me/blog/Introduction_to_Reverse-Engineering_Vintage_Synth… The ARQ96 is an incredibly niche product all things considered, but especially compared to the DX7. It's also ~10 years old rather than ~40 years old. It's a completely different beast. Zoom released few firmware updates, but v1.x to v2.x was a very significant change. Are you using the latest version?
fuhsnn · 2024-10-21
For "any size" I was kind of expecting arbitrary sized mantissa/exponent, can be useful for emulating weird DACs, for example, 12-bit mantissa and 3-bit exponent[1]. [1] https://ajxs.me/blog/Yamaha_DX7_Technical_Analysis.html
metaphor · 2021-10-21
> In mathematical terms, FM synthesis is achieved by using the instantaneous amplitude of a sound wave (the modulator) to adjust the rate of change in the phase angle of another wave (the carrier). > As convoluted as this sounds, it makes more sense when visualised: [1] ...but does it?? [1] https://ajxs.me/static/img/articles/dx7_technical_analysis/frequency_m…

Keyboard shortcuts

/Search
j kNext / previous blog
EnterOpen selected blog
vVisit the blog site
fFollow / unfollow
lSwitch grid / list view
dSwitch dark mode
g hHome
g pTop posts
g tTopics
g fFollowing
g lLiked
g yHistory
g qFAQ
EscBack / close